なかなか綺麗にまとまったコードと思いきや・・・キャリーフラグの監視が必要だ・・・
あと自己書換を利用したプロテクトに遭遇。量産型6502で動かすと、特定箇所が未公開命令に化けてワークを破壊するという素敵仕様。
なかなか綺麗にまとまったコードと思いきや・・・キャリーフラグの監視が必要だ・・・
あと自己書換を利用したプロテクトに遭遇。量産型6502で動かすと、特定箇所が未公開命令に化けてワークを破壊するという素敵仕様。
11/1 は東京の日本橋の綿商会館でゲームレジェンド11が開催されます。
内容的にはレトロゲーム系の同人イベントで、まあその筋の人たちが沢山集まるわけです。
私はサークル参加するわけではないのですが、OFF会の話のネタにと急遽新作仕込み中。果たして間に合うか?
http://www.geocities.jp/zed_gamelegend/
6502 の BIT 命令について誤解を招く情報が見受けられるので、メモ
ソースの bit7 の内容が Nフラグに、bit6 の内容が V フラグにコピーされる。そして、ソースとアキュムレータの and をテストし、結果が Zフラグに反映される。アキュムレータ(ディスティネーション)やソースの内容に影響は出ない
ゼロページの $6c.b の bit7の内容が Nフラグにコピーされ、bit6の内容が Vフラグにコピーされる。そして、アキュムレータと $6c.b の and を取り、結果が0なら Zフラグが立ち、非0ならZフラグがクリアされる。アキュムレータや$6c.bに影響は出ない
(例1)BIT $6c
(例2)label:
BIT $e300
BVC label
$e300.b のbit6 が1になるまでループする
巨大ピエロ用のマクロを作っておくと変換作業がスムーズに行きそうな予感。おそらく、オリジナルソースもマクロで組まれていたんだろうと思われる箇所が多々ある。
ただ気になるのが、
SEC
ADC #$40
みたいな表記を見かけるが、前後関係を見ても、SEC の意味がない気がするのだが、これは意図してやっているのだろうか?まあ、完全移植が主旨なので
addi.b #$41,d0
としておけばいいだけだが・・
おそらく永い間、店舗で皆を楽しませてきたんだと思う。ゆっくり休んでください。お疲れさまでした。
やばい・・・・テープデッキから異音が・・・