樫樹の広場



1行掲示板です。情報提供などありましたらよろしくお願いします。

特に、記事の誤り訂正などは「ほかの方も読める記録が残る」ので、掲示板を推奨します。


長い内容など、メールで連絡を取りたい方は以下のアドレスへ。


各ページの下にも1行掲示板がついていますが、このページではそれら全てを集めて表示しています。

特定ページへの内容への意見は、そちらのページで書いていただけるとありがたいです。


また、日付にリンクがある場合は、そのリンクを辿ることで元ページを見ることが出来ます。

(日付にリンクがないものは、このページで書き込まれた意見です)


作者が怠惰なので、反応は遅いかもしれません。


申し訳ありませんが、現在意見投稿をできない状態にしています

あきよし】 LD Cの件、ありがとうございます。修正しました。言い訳がましいですが、LD C してるのに、すぐ後で LD C,A してましたね。「こうやって縮められないか」と試行錯誤して「あ、その命令ない」と気づいたりした跡が残っていたのでした。そのため、修正しましたがクロック数は変わっていません。 (2014-08-13 05:15:47)

あきよし】 パッド入力、なるほど。実はファミリーベーシックで6502を使っていただけだったので、ここら辺詳しくなかったのです。2コンは$4017でしたが、1コンと外部は同時に読めたのですね。 (2014-08-12 20:20:13)

あきよし】 PAD_NEW -> PAD_OLD ご指摘の通りです。修正いたしました。ありがとうございます。 (2014-08-12 20:15:26)

【名無し】 本筋には無関係ですが、大抵のファミコンソフトは外部パッド入力(bit1)にも対応していたので、読出しは軽量化も含めるとこんな感じでしょうか。前処理で1クロック増。LDA #$01 ;2 STA >0 ;3 STA $4016 ;4 LSR A ;2 STA $4016 ;4 LOOP: LDA $4016 ;4 AND #$03 ;2 CMP #$01 ;2 ROL >0 ;5 BCC LOOP ;3/2 (2014-08-11 22:10:43)

【名無し】 TRGA:以下はBITを使うと少し軽くできますね。TRGA: BIT PAD_NEW ;4 BPL TRGB ;3/2 INC TR ;6 TRGB: BVC END ;3/2 LDA #0 ;2 STA TR ;3 END: (2014-08-11 21:57:03)

【名無し】 LD C,(nn) という操作が2箇所ありますが、Z80にこの命令はありません。 (2014-08-11 19:05:31)

【名無し】 LD (PAD_NEW),HL は LD (PAD_OLD),HL では? (2014-08-11 13:52:54)

あきよし】 ご指摘通り、特に意味はないです。ここに書いてある比較全部、プログラムとしての意味よりも「Z80 と 6502の比較」をしたいだけですし、このプログラムは次の例題の一部だったのを、長くなりすぎるから分離したものなので。一応、意図としては「ポインタ操作の比較」です。 (2014-08-11 11:19:09)

【名無し】 ファミコンでもMSXでも、1/60秒に1回しかやらない処理の速い/遅いはあんま意味あるもんではないですね。 (2014-08-11 02:14:43)

あきよし】 改良ありがとうございます。内容更新しました。 (2014-08-10 16:07:51)

←最近 26 27 28 29 30 31 32 33 34 35 36 過去→

戻る
トップページへ

-- share --

0000

-- follow --




- Reverse Link -