AKI-80でBASICを動かす

SBC8080のGrant’s BASICはオリジナルに含まれるZ80の独自命令を見付けては8080の命令へ巻き戻すという方法で移植した。こんな力わざが一発で成功するはずがないから、オリジナルをいったん秋月電子通商のAKI-80で動かし、随時、まだ動くことを確認しながら作業を進めた。そんなわけでいま手もとにGrant’s BASICが動くSBC8080と、あともうひとつAKI-80がある。以降、まだ紹介していなかったAKI-80のほうを紹介する。

AKI-80_base_top

AKI-80のZ80は東芝TMPZ84C015BF-15。Z80と一緒にSIO、PIO、CTCなどファミリー一式が集積されている。そのうちSIOのAに端末を接続し、CTCの2で通信用クロックを生成する。SIOは割り込みの設定をBのほうで受け付けるため、いっそのことBに端末を接続するべきだというのが『古典電脳物語』(絶版)の見解。だが、Aを使っておけば単体のSIOで構成されたコンピュータへ流用したときボンディングオプションの影響を避けられる。

AKI-80_sch

部品点数が少ないのでプリント基板を作るまでもない。秋月電子通商のタイプBユニバーサル基板に組み立てた。端末を接続するピンヘッダは一般的なUSB-シリアル変換アダプタが直結できるように配線してある。電源もここからとる。リセットスイッチはなくてもいいが、基板単体から組み立てた人がリセットICを入手できなかったとき(入手困難とされている)、マニュアルリセットできるように取り付けておいた。

AKI-80_base_bottom

AKI-80_base_top_fig

Grant’s BASICは、CPUがZ80なら、スタートアップルーチンを書き起こすだけで移植が完了する。スタートアップルーチンの勘どころは割り込みのやりかた。第1版はSBC8080のかわりだから最終調整のしやすさを考えて8080互換のモード1を採用。第2版はZ80とSIOが本領を発揮するモード2に変更した。どちらの版もGrant’s BASICのオリジナルにしたがい端末からの入力だけが割り込みで出力はポーリング。

・AKI-80用Grant’s BASIC第1版-OneDriveのmbakia.zip
・AKI-80用Grant’s BASIC第2版-OneDriveのmbakiai.zip

スタートアップルーチンを送受信とも割り込みでやれば、よくベンチマークテストに使われるASCIIARTが劇的に高速化すると思う。挑戦中だが、なかなかうまくいかない。参考になる前例が皆無に近いのも困っている。SIOを採用したコンピュータが少なくてモード2の割り込みなんか見たことがない。ネットを検索するとZ80が8080に対してこんなに凄いって話は見付かるが、現実にその凄いところはほとんど使われなかったんだよね。

カテゴリー: 8080, Z80 パーマリンク

AKI-80でBASICを動かす への1件のフィードバック

  1. ピンバック: AKI80 Plus CF Rev02を作った | レトロな雰囲気

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Google フォト

Google アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中