プログラミング 6802アセンブラで逆アセンブラ形式の出力に対応 6802アセンブラで逆アセンブラ形式の出力に対応した。こんな感じで出力する。とりあえず相対分岐命令の時にラベル名を出すようにした。理想的にはアドレッシングモードがdirectとextendedのときもラベル名を出すべきな気もするけどまだでき... 2017.04.22 プログラミングレトロPC
プログラミング 6802用アセンブラを作る(5) 一応完成 ひとまず仕様をfixさせ、ユーザーズガイドを作成しました。結局構文解析部分は命令毎に規則を書き下す方式にしました。状態遷移表の状態数は740状態、遷移数は3445個です。これくらいなら許容範囲かな? 規則部はこんな感じ。各命令に対応するシン... 2017.03.25 プログラミングレトロPC
プログラミング 6802用アセンブラを作る(4) JR-100でのテスト 作成したアセンブラのプロトを使って、JR-100の実機試してみました。最終的な目的はJR-100に搭載されているVIA(6522)のテストのためなので、マシン語から直接VIAのレジスタを叩いてJR-100のスピーカーから音階を鳴らしてみまし... 2017.03.18 プログラミングレトロPC
プログラミング 6802用アセンブラを作る(3) プロトタイプ完成 構文解析部分で少し悩みましたが、ひとまずプロトタイプはできました。パーサーを自分で作るのとは異なり、ジェネレータを使うとエラー処理をうまく書くのが難しいです。いまのところ最低限の処理しか実装していません。またたまに例外を発生しますのでお気を... 2017.03.17 プログラミングレトロPC
プログラミング 6802用アセンブラを作る(2) JFlexとCUPの導入 6802用アセンブラの構文解析部分を、将来の拡張性を見据えて、自前で作成するのではなく字句解析にJFlex、構文解析にCUPを使って作成することにしました。この記事ではそれぞれの導入と、それらを使った構文解析部分のプロトタイプを紹介します。... 2017.03.05 プログラミングレトロPC
プログラミング 6802用アセンブラを作る(1) はじめに VIA(6522)の動作をJR-100上で試すために、マシン語をハードコーディングする必要があります。中学生の頃は16進数のマシン語コードのまま平気でハードコーディングできましたが、この歳になるとさすがにつらい。 web上ではMS-DOS用... 2017.02.26 プログラミングレトロPC