[表示 : 全て 最新50 1-99 101- 201- 301- 401- 2chのread.cgiへ]
Update time : 06/19 22:43 / Filesize : 104 KB / Number-of Response : 490
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

ファミコンってC言語でプログラムされてるの?



1 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 23:24:30 ]
プレステ2もC言語でつくれる?

445 名前:デフォルトの名無しさん mailto:sage [2008/08/20(水) 10:40:23 ]
>>443
ビッグエンディアンの利点は人間にとって直感的で自然な配置であること。
あとはTCP/IPのネットワークバイトオーダはビッグエンディアンだったと思うんで、
そっち方面では有利。UTF-16も標準ではビッグエンディアン。68000にはほぼ関係なさそう
だけど。

> ビット幅が違う値同士の演算とかこんがらがりそう。
簡単なやつは簡単。適当に書いたから動かないかも知れない。
;例)メモリ上の128bit値と8bit値の加算(知らない人でも読めるしつこいコメント付き)
.text
LEA V128,A0 ;V128の実効アドレスをロード
MOVEQ #0,D0 ;ADDXで使うために0をセットしておく
MOVEQ #0,D5 ;ゴミ消し
MOVE.B V8,D5 ;V8から8bit値を取得
MOVEM.L (A0),D1-D4 ;A0が指すメモリから128bit値をD1-D4に読込む
ADD.L D5,D4 ;最下位から順に
ADDX.L D0,D3 ;条件分岐して加算しない場合を作るよりも
ADDX.L D0,D2 ;素直に加算しちゃった方が早いので
ADDX.L D0,D1 :最上位まで0+Xフラグを加算していく
MOVEM.L D1-D4,(A0) ;計算結果をA0が指すメモリに書き戻す
;未完 あるいは NEVER END
.data
V128: DC.L $12345678 ;最上位
DC.L $9ABCDEF0
DC.L $FFFFFFFF
DC.L $FFFFFFFF ;最下位
V8: DC.B $88

446 名前:デフォルトの名無しさん mailto:sage [2008/08/20(水) 11:00:01 ]
ゼロクリアされた領域に1オクテット単位で1を書き込んだのに
同じアドレスで2オクテット単位で読み出すと256が得られるのは
直感的な配置とは考えられない

447 名前:デフォルトの名無しさん mailto:sage [2008/08/20(水) 11:09:44 ]
> 人間にとって直感的で自然な配置であること

www

つーか大文字で書くなよ気持ち悪い…

448 名前:デフォルトの名無しさん mailto:sage [2008/08/20(水) 13:39:52 ]
…まあ、お前だけだ。

449 名前:デフォルトの名無しさん mailto:sage [2008/08/20(水) 14:29:54 ]
ビッグエンディアンだからネットワークに強いって何時の話?
68000の頃?

450 名前:デフォルトの名無しさん mailto:sage [2008/08/20(水) 15:11:36 ]
今のCPUはメモリよりCPUのクロックの方が数倍速いから
リトル点ディアンであってもtcp/ipに不利にはなってないよwww

451 名前:デフォルトの名無しさん mailto:sage [2008/08/20(水) 15:22:24 ]
ネットワーク機器に使われてるCPUを知っての発言か?

452 名前:デフォルトの名無しさん mailto:sage [2008/08/20(水) 16:06:45 ]
PowerPCかARMでも使ってりゃいいよ組み込みは

453 名前:デフォルトの名無しさん mailto:sage [2008/08/20(水) 16:17:37 ]
ネットワーク機器だとMIPSとかPPCあたりが多い気がする。あとARMとかColdfireか?
PCIとか(S)ATAみたいなPC由来のやつらがリトルエンディアンなのはデメリットにならないの?

最近は変換load/storeを持ってるのとか、ページ単位とかでエンディアンを
切り替えられたりするから、あんまり関係ないんじゃないかね。



454 名前:デフォルトの名無しさん mailto:sage [2008/08/20(水) 19:38:40 ]
>>445
丁寧に説明してくれたのにケチつけるようで言いにくいけど、
やっぱり最下位の値がD4で最上位がD1とか直感的じゃない気がするよ。

っていうか大概の演算でも何でもMSBよりLSBが重要な場合がほとんどなのに
ビッグエンディアンだとラベルはMSB指すんでしょ?
慣れればなんでもないのかも知れんがバグの温床になりそう。

455 名前:デフォルトの名無しさん mailto:sage [2008/08/20(水) 23:43:39 ]
>>454
ならないよ。両方やってきたけど、人間はどちらにも馴れることができると判っただけ。

456 名前:デフォルトの名無しさん mailto:sage [2008/08/20(水) 23:56:29 ]
ビッグエンディアンは使いにくいね
大体、ビッグエンディアンが見やすいとかっていうのも、人間が
「上位桁から書く」という習慣があるってだけで、
本来なら低いアドレスに低い桁が書かれているリトルエンディアンの方が合理的なんだけどな。


457 名前:デフォルトの名無しさん mailto:sage [2008/08/21(木) 00:03:06 ]
しばらく68000使ってたけど別に慣れればリトルエンディアンでも
ビッグエンディアンでもどっちでもいいや

458 名前:デフォルトの名無しさん mailto:sage [2008/08/21(木) 03:15:32 ]
Interface9月号にColdFire基盤が付属してるから、使いにくいかどうか確かめてみれば?
フリースケールが第二回コンテストやってるし。

459 名前:デフォルトの名無しさん [2008/08/25(月) 12:11:27 ]
>>454
慣れたら一緒。
機械語やアセンブリ言語のレベルなら、直前の命令を見れば、数字の桁は把握できるわけで。
それなら、単にどっちから文字の塊を読み始めるかの違いしか無いんだから。

リトルはよくてビッグはダメって言い張ってる奴は、お寺の門の上に掛かってる看板見たいに、右から左に文字が書いてあったら読めないのか?
「昔は、右から左に文字を書いていた」って予備知識があったら普通に読めるだろ。なんでコンピュータの数字は読めないんだよ。
リトルは読めるけどビッグだと本当にダメってなら、脳の障害を疑ったほうが良いぞ。
実際に、脳の障害で、左右のどちらか一方側から読んだ時しか、文字の塊を単語として認識できないって人は居るから。

確かに、リトルエンディアンの方が、CPUの回路の実装は、ちょっとシンプルになるが、結局は、それ以外の点は、単なる慣れの問題だよ。

460 名前:デフォルトの名無しさん mailto:sage [2008/08/25(月) 12:53:23 ]
>リトルはよくてビッグはダメって言い張ってる奴は、お寺の門の上に掛かってる看板見たいに、右から左に文字が書いてあったら読めないのか?

>リトルは読めるけどビッグだと本当にダメってなら、脳の障害を疑ったほうが良いぞ。

なにこの馬鹿丸出しの飛躍っぷり

461 名前:デフォルトの名無しさん mailto:sage [2008/08/25(月) 13:34:34 ]
ていうか仮定が馬鹿丸出し。

「リトルはよくてビッグはダメって言い張ってる奴は」「右から左に文字が書いてあったら読めないのか?」
なんでそうなるの?意味ワカリマセーン(笑)


462 名前:デフォルトの名無しさん mailto:sage [2008/08/25(月) 16:55:19 ]
>>459
ご高説に茶々を入れるようで申し訳ないが
「昔は、右から左に文字を書いていた」んじゃなくて、
あれは一行一文字の縦書きなんだよ・・・

予備知識がなくてもちゃんと辻褄はあっているのさ

463 名前:デフォルトの名無しさん mailto:sage [2008/08/25(月) 17:14:50 ]
敢えて茶々を入れるが、「一行一文字の縦書き」なんて知識なしにそう認識する奴はいないと思うよ。



464 名前:デフォルトの名無しさん mailto:sage [2008/08/25(月) 17:25:11 ]
ああ
日本語は縦書きが基本という予備知識は必要だな
横書きという概念自体輸入物だ

465 名前:デフォルトの名無しさん mailto:sage [2008/08/26(火) 11:37:40 ]
言語学板でやれ

466 名前:デフォルトの名無しさん [2008/08/29(金) 06:11:11 ]
PCエンジン版のツインビーなら仕事で作った事あるぜ

467 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 07:01:44 ]
ツインビーで最も良いのは出たな!!とヤッホー!。
X68000版の出たな!!の移植度は賞賛に値する。

だがPCエンジン版は音も絵もよろしくない。絵はまあ仕方ないものと我慢しよう。
だが音はROM2にしとけば劣化回避できたはずなのに。
ローディング時間なんて飾りです。偉い人にはそれがわからんのです。

PCエンジン用のゲームとしてはよく遊べる部類だが、移植として見た時にはつらいクオリティ。
よくもやりやがったなコノヤロウ!という出来だった。


468 名前:デフォルトの名無しさん mailto:sage [2008/08/31(日) 21:37:23 ]
すぐ俺が俺が!になるから
ちょっと頭冷やして過疎ればいいよ

469 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 21:19:24 ]
プログラムに触れていると
昔昔、ファミコンやスーファミ時代の記憶が蘇ってしまう。
ああ、今になってあの頃を思い出す事になるとはなぁ…

470 名前:デフォルトの名無しさん [2008/12/03(水) 09:45:11 ]
おにゃん子タウンとか
ファンキーモンキー西遊記とかあれ高度なプログラマーなの?




471 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 10:08:27 ]
>>470
高度かどうかは兎も角、少なくとも“プログラマー”ではありません。

472 名前:デフォルトの名無しさん mailto:sage [2008/12/17(水) 17:59:29 ]
今来た。こんなスレあんだね。
元FCPGだけど覚えてる範囲で書き込んでみる。

アセンブラでつくられるのは容量もあるけど速度のため。
リアルタイムのアクションゲームには速度が必要。

>>265
そんな感じ。キャラエディタはもちHu(ry

>>270
そんな感じ。機材というかライセンス+公開資料。

>>309,310,313
プログラムエリアは16kだったと思う。8kだったかも?
マリオぐらいまでのゲームは最大32kバイト。16kのタイトルも沢山あった

>>314
ファミコンにいわゆる「グラフィック」は無い。なので塗ったり線を引いたりできない。
2bitカラー(3色+透明)の256個のキャラとそれを使った64枚のスプライトしかない(マリオのサイズは2x2=4枚)
葉っぱと雲はパレットを変えてるだけでパレットは全52色の中から指定。

長文スマソ


473 名前:デフォルトの名無しさん [2009/01/22(木) 01:38:36 ]
こんなスレがあるとは初めて知った。


昔、1回だけファミコンの仕事したことがあるが、

・PC-9801でソース書いてコンパイル
    ↓
・出来上がったバイナリをROMライタに焼く
    ↓
・ROMカセットの基板のソケットにROM挿してファミコンにセット
    ↓
・ICEのホストマシン(PC-9801)で制御ソフトを立ち上げてシンボルテーブルを読み込ませる
    ↓
・ICEのスイッチ(確か、ICEモードとCPUモードがあったような?)をICEモードに切り替えて走らせる
    ↓
・デバッグ

というような流れだった。

何でいちいちROMを焼かなければならないのかは、今となってはよくわからないや。
ROMエミュータが無かったか、あるいはICEにエミュレーションメモリが無かったせいかも?
(あるいは、その機能はあったけどその存在を知らなかったので使っていなかっただけ、という可能性もあるw)

あと、ICEモードにすると、音が出ないがシンボリックデバッグが可能になって、
CPUモードにすると音が出る代わりにデバッグが不可能になったような気がする。

多分、6502エミュレーションモードと、ファミコンから引っこ抜いたCPUで直接動かすモードの切り替えスイッチだったのだと思う。

あと、サウンドドライバは既に社内で用意されていたライブラリを使っただけなので、音源関係のデバッグはやったことが無い。

サウンドデータ(楽譜)はMMLで作ってパソコンのPSG音源であらかじめ確認してから、
そのデータをファミコンに持ってくるだけだったような気がする。



474 名前:デフォルトの名無しさん [2009/01/22(木) 01:43:19 ]
組み込みはだいたいLinuxじゃないか?
gccだと思うが。

475 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 02:24:17 ]
誰に対するレスだよw

476 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 03:06:43 ]
ファミコンの時代にLinuxは存在しないどころか、開発すら始まっていません。

gccはあったけど、ファミコン中期〜後期の頃に
最初の安定版がやっと出てきた頃じゃなかったかな?

正直、スレを間違えているとしかw

477 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 03:47:03 ]
なんで突然Linuxの話が出てくるのかが分からん

478 名前:デフォルトの名無しさん [2009/01/22(木) 06:02:57 ]
バンクの切り替えで死にそうになった



479 名前:デフォルトの名無しさん [2009/01/22(木) 06:28:00 ]
ゲーセンにある3Dのガンダムseed destinyってC++でしょ?
あんな早い動きC++でなきゃ無理でしょ?
ガンダムクラスからデスティニーとかフリーダムとかnewしてるんでしょうか?

480 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 07:51:27 ]
アホかい。

481 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 09:42:56 ]
PICのCとかも使えないというんだろうな。
目的次第でしょうが・・・。

482 名前:デフォルトの名無しさん [2009/01/23(金) 01:30:22 ]
ガセのアーケードは、Linux

まんまLinux。

Linux上でゲームが動いてる。

483 名前:デフォルトの名無しさん mailto:sage [2009/01/23(金) 02:39:27 ]
そりゃ、AT互換機ベースのハードだからな。



484 名前:デフォルトの名無しさん mailto:sage [2009/01/23(金) 05:00:04 ]
>>479
ワラタ

485 名前:デフォルトの名無しさん mailto:sage [2009/01/25(日) 08:24:55 ]
>>479
おい、νをそんながらくたと並べんな。

486 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 14:50:45 ]
昔はCでゲーム作るのは珍しかったって聞いたけど。
ドラッケンはその珍しいゲームのうちのひとつ。ファミコンじゃないけど。

487 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 10:26:10 ]
ハック、ハック、ドラッケン

488 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 04:26:26 ]
スーパーマリオの、残機を、たくさん増やすと、王冠がついて、その後ろに、
キャラクタがつきますが、可読性に、欠陥なので、せめて、16進数でよいので、誰か、
ハックしてください、ワールドも、同様です、、、

489 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 11:41:41 ]
句読点の使い方から覚えましょう。せめて中学生レベルまで。






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<104KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef