Z80-MBC(改)でPSGを鳴らしてみる

さて先日作ったPSGボードだが、Z80-MBC(改)で動くのではないかと思い早速試してみることにする。
Z80-MBCに82C55ボードつないだ時に作ったI/F基板なのだが、これはサンハヤトのポケコン基板に合わせたピンアサインになっている。
どういうことかというと奇数番号と偶数番号のピンが通常とは逆になっている。
一方PSGボードは通常のピンアサインにしている。
よって普通のフラットケーブルのコネクタは使えないため、奇数と偶数で逆転したケーブルをこさえた。
ケーブル作るのに2回ぐらい失敗して3回目で何とかできた。

写真ではケーブルが斜めってるように見えるが、ケーブルが曲がっている関係でそう見えるだけで、実際はそこまで斜めってはいない。

さてつないで実際鳴らすためには、プログラムの準備が必要。
BASICでのテストプログラムが動くことを確認。
実際に曲も鳴らしてみる。
PC-E200/PC-G8xxシリーズでは、マシン語は0x0100から利用できることになっている。
CP/MやMSX-DOSのCOMファイルは0x0100にロードされこの番地から実行されることになっている。
すなわち0x0100から始まっているものなら何ら手を加えることなく実行できる。
あとはどうやってプログラムを転送するかである。

CP/MのEDコマンドでテキストエディタを起動。
TeraTermでHEXファイルを転送してHEXファイルを作る。
次にLOADコマンドでHEXファイルからCOMファイルに変換。
最後に生成したCOMファイルを実行。

1A>dir
2A: ASM      COM : D        COM : DDT      COM : DUMP     COM
3A: ED       COM : HELLO    COM : LOAD     COM : MAC      COM
4A: MBASIC   COM : PEG      COM : PIP      COM : STAT     COM
5A: SUBMIT   COM : XSUB     COM : HELLO    ASM : GPIO     BAS
6A: AUTOEXEC SUB : IOTEST   BAS
7A>
8A>ed psgtest.hex
9 
10NEW FILE
11     : *i
12    1:  :10010000CD1501CD8801C9F5D5ED5B01781B7BB21A
13    2:  :1001100020FBD1F1C921350106100E0079D3247ED0
14    3:  :10012000D325230C10F63E603204783E0332067865
15    4:  :10013000AF320A78C900010001000200F810101067
16    5:  :100140000800600100D5F57AD3247BD325F1D1C90D
17 :
18 :
19 中略
20 :
21 :
22   61:  :1004C0001B323B128F313A0622323B128F313A06F1
23   62:  :1004D00027323B18258F8F1824344012892B380679
24   63:  :1004E0002430391821218F1822323B128F293606E9
25   64:  :0B04F000172B371827278F1A8C02FFEC
26   65:  :00000001FF
27   66:  ←[Ctrl]+[Z]押す
28     : *e
29 
30CP/M WARM BOOT...
31 
32CP/M 2.2 Copyright 1979 (c) by Digital Research
33 
34A>dir
35A: ASM      COM : D        COM : DDT      COM : DUMP     COM
36A: ED       COM : HELLO    COM : LOAD     COM : MAC      COM
37A: MBASIC   COM : PEG      COM : PIP      COM : STAT     COM
38A: SUBMIT   COM : XSUB     COM : HELLO    ASM : GPIO     BAS
39A: AUTOEXEC SUB : IOTEST   BAS : PSGTEST  BAK : PSGTEST  HEX
40A>
41A>load psgtest.hex
42 
43FIRST ADDRESS 0100
44LAST  ADDRESS 04FA
45BYTES READ    03FB
46RECORDS WRITTEN 08
47 
48A>dir
49A: ASM      COM : D        COM : DDT      COM : DUMP     COM
50A: ED       COM : HELLO    COM : LOAD     COM : MAC      COM
51A: MBASIC   COM : PEG      COM : PIP      COM : STAT     COM
52A: SUBMIT   COM : XSUB     COM : HELLO    ASM : GPIO     BAS
53A: AUTOEXEC SUB : IOTEST   BAS : PSGTEST  BAK : PSGTEST  HEX
54A: PSGTEST  COM
55A>
56A>psgtest
57 
58A>

さて実際に試したらすんなり音楽が鳴ってくれた。
さてとこの後どうするかな。

あと、COMファイルをHEXファイルに変換するプログラムはないものか。
FabGLのCP/MエミュレータのファイルをZ80-MBCで実行してみたい。
BASICで簡単に作れそうだけど面倒だ。

カテゴリー: CP/M, Z80-MBC, 電子工作 タグ: , パーマリンク

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください