MB8861

雑記

文献を国立国会図書館から入手する

MB8861の情報を調べているがなかなか決定打がありません。もしかすると雑誌の記事か何かで紹介されていたり何か文献としてどこかに蔵書されていないか調べているうちに国会図書館に辿り着きました。調べてみるものです。ということで国会図書館から入手...
プログラミング

6802アセンブラで逆アセンブラ形式の出力に対応

6802アセンブラで逆アセンブラ形式の出力に対応した。こんな感じで出力する。とりあえず相対分岐命令の時にラベル名を出すようにした。理想的にはアドレッシングモードがdirectとextendedのときもラベル名を出すべきな気もするけどまだでき...
プログラミング

6802用アセンブラを作る(5) 一応完成

ひとまず仕様をfixさせ、ユーザーズガイドを作成しました。結局構文解析部分は命令毎に規則を書き下す方式にしました。状態遷移表の状態数は740状態、遷移数は3445個です。これくらいなら許容範囲かな? 規則部はこんな感じ。各命令に対応するシン...
プログラミング

6802用アセンブラを作る(4) JR-100でのテスト

作成したアセンブラのプロトを使って、JR-100の実機試してみました。最終的な目的はJR-100に搭載されているVIA(6522)のテストのためなので、マシン語から直接VIAのレジスタを叩いてJR-100のスピーカーから音階を鳴らしてみまし...
プログラミング

6802用アセンブラを作る(3) プロトタイプ完成

構文解析部分で少し悩みましたが、ひとまずプロトタイプはできました。パーサーを自分で作るのとは異なり、ジェネレータを使うとエラー処理をうまく書くのが難しいです。いまのところ最低限の処理しか実装していません。またたまに例外を発生しますのでお気を...
プログラミング

6802用アセンブラを作る(2) JFlexとCUPの導入

6802用アセンブラの構文解析部分を、将来の拡張性を見据えて、自前で作成するのではなく字句解析にJFlex、構文解析にCUPを使って作成することにしました。この記事ではそれぞれの導入と、それらを使った構文解析部分のプロトタイプを紹介します。...
プログラミング

6802用アセンブラを作る(1) はじめに

VIA(6522)の動作をJR-100上で試すために、マシン語をハードコーディングする必要があります。中学生の頃は16進数のマシン語コードのまま平気でハードコーディングできましたが、この歳になるとさすがにつらい。 web上ではMS-DOS用...