BASIC、ときどき機械語
PaloAlto のTINY BASIC が出て、はや30年。
NEC の PC-8001 も、そろそろ30年になろうとしています。
カードや紙テープから脱却し、キーボードと画面でインタラクティブにプログラムするようになったのは、
この頃のパソコンのおかげではないでしょうか?
多くの人が、いまだに BASIC で書け…といわれると、何かしらのものを書くことができるのではないでしょうか。
それだけ、BASIC は私たちの心に深く影響を与えてしまったのです。
一方、TINY BASIC を移植するということは、機械語の勉強にもなりました。
少ないメモリという環境が、我々の創造性をふるいたたせてくれたのです。
おかげで、今でも16進でプログラムを読み書きできます。
こういったことは、今の時世ではなかなか経験できないことです。
できれば、今、計算機の勉強を始めた人には、少資源という逆境のなかで、創造性をのばしてもらいたいと思います。
- ●報告書原稿(PDF)
- ●発表資料(ppt:3.5MB)
- (sound:4MB)
- ●プログラム・リスト
- モニタ(PRN)(HEX)
- インタプリタ(PRN)(HEX) ※http://www.cpm.z80.de/roche/PCWPATB.ASM を元に変更。
- StarTrek(HEX) ※http://www.dunnington.u-net.com/public/startrek/startrek.asc より
- インタプリタ(PRN)(HEX) ※http://www.cpm.z80.de/roche/PCWPATB.ASM を元に変更。
- ●使用部品
- CPUボード(AKI-80)(秋月電子)
- ROM(27C256)(秋月電子)
- USB-232C 変換IC(FT232RL)(秋月電子)
- ↑用変換基板(ダイセン)
- USB コネクタ&変換基板(ダイセン※基板のピン番号が異なっている)
- ROM(27C256)(秋月電子)
- ●開発環境
- CP/M エミュレータcpm32_02.lzh
- マクロアセンブラmac-b.zip
- ROMライター(秋月電子)
- マクロアセンブラmac-b.zip
●配線- USB コネクタ〜FT232RL
コネクタ:FT232RL ------─:─----- D+:3←─→15:USBDP D-:2←─→16:USBDM Vbus:1───20:Vcc GND:4─┬─ 7:GND ├─18:GND ├─21:GND └─25:AGND
- FT232RL〜AKI-80
FT232RL : AKI-80 -------─:─-------- TXD: 1──→CN2-4 :RXDA RTS#: 3──→CN2-10:/CTSA RXD: 5←──CN2-5 :TXDA CTS#:11←──CN2-7 :/RTSA Vcc:20─┬─CN1-1 :Vcc └─CN1-2 :Vcc GND: 7─┬─CN1-3 :GND GND:18─┼─CN1-4 :GND GND:21─┤ AGND:25─┘
- AKI-80
AKI-80 : AKI-80 -------------─:─------------- ZC/TO0:CN3-20─┬→CN2-3:RXCA └→CN2-6:TXCA RESET:CN1-7 ─(SW)─GND:リセット
オプション(高輝度LED使用、R=22KΩ:0.15mA弱で点灯)共通 Vcc ─ R ─(▶|)─ GND:電源 FT232 CBUS0:22 ─ R ─(|◀)─ Vcc:USB-TX CBUS1:23 ─ R ─(|◀)─ Vcc:USB-RX AKI-80 A0:CN4-11 ─ R ─(▶|)─ GND A1:CN4-13 ─ R ─(▶|)─ GND A2:CN4-15 ─ R ─(▶|)─ GND A3:CN4-17 ─ R ─(▶|)─ GND A4:CN4-19 ─ R ─(▶|)─ GND A5:CN4-21 ─ R ─(▶|)─ GND A6:CN4-23 ─ R ─(▶|)─ GND A7:CN4-25 ─ R ─(▶|)─ GND A8:CN4-24 ─ R ─(▶|)─ GND A9:CN4-22 ─ R ─(▶|)─ GND A10:CN4-16 ─ R ─(▶|)─ GND A11:CN4-20 ─ R ─(▶|)─ GND A12:CN4-18 ─ R ─(▶|)─ GND A13:CN4-26 ─ R ─(▶|)─ GND A14:CN4-12 ─ R ─(▶|)─ GND A15:CN4-14 ─ R ─(▶|)─ GND D0:CN4-4 ─ R ─(▶|)─ GND D1:CN4-3 ─ R ─(▶|)─ GND D2:CN4-6 ─ R ─(▶|)─ GND D3:CN4-5 ─ R ─(▶|)─ GND D4:CN4-8 ─ R ─(▶|)─ GND D5:CN4-7 ─ R ─(▶|)─ GND D6:CN4-10 ─ R ─(▶|)─ GND D7:CN4-9 ─ R ─(▶|)─ GND /RFSH:CN1-5 ─ R ─(|◀)─ Vcc /M1:CN1-6 ─ R ─(|◀)─ Vcc /BUSAK:CN1-10 ─ R ─(|◀)─ Vcc /HALT:CN1-15 ─ R ─(|◀)─ Vcc /WR:CN1-11 ─ R ─(|◀)─ Vcc /RD:CN1-12 ─ R ─(|◀)─ Vcc /IORQ:CN1-13 ─ R ─(|◀)─ Vcc /MREQ:CN1-14 ─ R ─(|◀)─ Vcc
- FT232RL〜AKI-80