2026.9.14
前へ
次へ
ホームページトップへ戻る


[新連載開始]W65C02マイコンボードの製作

〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
私としてはW65C02をさわるのは全く初めてです。何から何まで未経験です。さてどうなりますでしょうか。
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

[第72回]



●82C55が動きました!(3)

前回はW65C02テストボードに82C55増設基板を接続して簡単な出力のテストを行ないました。
今回は入力のテストです。
下がテストプログラム(ソースプログラム)65C02TEST50.LSTです。
;w65c02test50 26/9/11
;
;DMA test
;
        org $8000
;
        lda #$80
        sta $0283
        lda #$55
        sta $0280
        lda #$aa
        sta $0281
        lda #$a5
        sta $0282
;
        lda $0280
        sta $00
        lda $0281
        sta $01
        lda $0282
        sta $02
        stp
;end

W65C02アセンブラでアセンブルしました。

下はアセンブルした結果作成されたアセンブルリストです。
0000        ;w65c02test50 26/9/11
0000        ;
0000        ;DMA test
0000        ;
8000            org $8000
8000        ;
8000 A980       lda #$80
8002 8D8302     sta $0283
8005 A955       lda #$55
8007 8D8002     sta $0280
800A A9AA       lda #$aa
800C 8D8102     sta $0281
800F A9A5       lda #$a5
8011 8D8202     sta $0282
8014        ;
8014 AD8002     lda $0280
8017 8500       sta $00
8019 AD8102     lda $0281
801C 8501       sta $01
801E AD8202     lda $0282
8021 8502       sta $02
8023 DB         stp
8024        ;end

前回のプログラムの後ろにポート入力を追加しました。
プログラムの前半では全ポートを出力に設定しAポートに#$55をBポートに#$AAをCポートに#$A5を出力します。
82C55は出力に設定したポートに対して入力命令を実行すると現在出力されている値がそのまま読み込まれます。
プログラムの後半ではAポートから読み込んだ値を$00に、Bポートから読み込んだ値を$01に、Cポートから読み込んだ値を$02に書き込みます。

65C02TEST50.BINをロードして実行しました。

実行後に/DMコマンドでゼロページの内容を確認しました。
$00に#$55が書き込まれています。
$01には#$AAが書き込まれていて$02には#$A5が書き込まれていることが確認できました。
今回のテストで82C55にWRITEとREADが両方とも正しく実行されることが確認できました。

W65C02マイコンボードの製作[第72回]
2026.9.14 upload

前へ
次へ
ホームページトップへ戻る