V20-MBCエミュレータ進捗
ちょっとずつですが、動き始めてます、V20-MBCエミュレータ!
ムダにスタートアップのテキストまでマネして表示させてしまったら、実機で動いてるのかエミュレータで動いてるのか区別が付かなくなってしまったw
↑の画面は、私がプログラムで出力しているハリボテ表示。
RTC(時計)の表示が変になってる辺りが手抜き感を感じさせる!!
そして、そんな遊びをしつつも気合いを入れて作ってる!
まだまだ機能は足りてないけど、V20-MBC付属のautoboot.binが動くようになった。
上の写真がデバッグ表示付きの実行、下の写真が表示なし。
「Hello, World!」って出力されてるのに注目!
構造的なお話
現状の進捗としては2%程度かなーって気がしてる。
手抜き出来るところはトコトン手を抜いてるw
Atmega32Aのエミュレーションは、ほぼ何もしていない。
ハードウェアエミュレーションというよりは、機能をマネしている程度。
Atmega32Aに書き込まれているであろうプログラムのソースコードを見ながら、似たような動きをさせてる。
V20側は割とマジメに実装してる。
必要最低限の命令だけをエミュレーションすればいいやって感じで作ってある。
今はautoboot.binで使われている命令の12個のみを実装。
V20のメモリは1024KBを用意。
そこにautoboot.binを読み込み、実行させてる。
それで表示されたのが「Hello, World!」という事。
実際には表示されるというよりは、シリアル経由で送られる…という事だけど。
さあ、次はCP/M-86を起動させるべく頑張ってみる!
この先は長いぞー!(TT)/
ではまた次回!(^-^)ノ