LoginSignup
1
0

PC-8001にCH376をつないでみた。

Last updated at Posted at 2021-07-15

CH376というUSBメモリをSPIなどで読めるようにするモジュールを以前購入して部品箱に死蔵していました。

CH376.jpg

USBメモリのフォーマットはFATでFAT16やFAT32が読めます。

このチップはSPIのほかにシリアルや8Bit パラレルIOでもデータの処理ができます。

CH376はCH372の後継で、CH372はUSBデバイスになれるチップだったようです。CH376はホストとデバイスになれます。CH375という製品もあり、こちらはCH376同様にホストにもデバイスにもなれますが、FATの処理が無いようです。

これをPC-8001にパラレルIOで接続する事を思いつきました。

手元のモジュールはパラレルで使うときのジャンパーの設定はこうしました。

JP.png

TTLのストックが無く秋葉にも行けないので、GALでアドレスデコードします。

title    CH376S IO UNIT 
pattern  CHIO 
revision A 
author   yamori813 
date     07/13/21 
chip chio gal6001 

; The following pin list order mustly be followed strictly: 
; 1. device pins 1 to 24 
; 2. slmc 7 to slmc 0 
; 3. buried feedback (OLMC 14) to buried feedback (OLMC 23) 

; pins 1  2  3  4  5  6  7  8  9  10  11  12 
       i1 i2 i3 i4 i5 i6 i7 i8 i9 i10 i11 gnd 

; pins 13   14  15  16  17  18  19  20  21  22  23  24 
       oclk o14 o15 o16 o17 o18 o19 o20 o21 o22 o23 vcc 

; slmc7 slmc6 slmc5 slmc4 slmc3 slmc2 slmc1 slmc0 
  nc    nc    nc    nc    nc    nc    nc    nc 

; buried feedback to AND array from OLMCs. 
; bur14 bur15 bur16 bur17 bur18 bur19 bur20 bur21 bur22 bur23 
  nc    nc    nc    nc    nc    nc    nc    nc    nc    nc 

; specify the User Electronic Signature (UES) 

@ues chio
  ; 8 ues bits are used per character. 

equations 

; ILMC         : asynchronous inputs. 
; IOLMC        : asynchronous feedback to AND array. 
; SLMC         : not used. 
; OLMC 14-18   : asynchronous outputs (output always enabled). 
; OLMC 19-23   : D-type registered outputs (output always enabled). 
;      buried feedback of OLMCs not used. 
; asynch reset : not used (default is registers cannot be reset).  

; RESET
;o14  = /i1 

; RD =  RD | IORQ
o14  =  i2 | i3
; WR =  IORQ | WR
o15  =  i3 | i4

; CE ADDRESS A1-A7 FC(252),FD(253) 11111100 11111101

/o16 = /i5 & i6 & i7 & i8 & i9 & i10 & i11

; end of example 5 

ispLEVERが使えなくなったのでVerilogではなくて古式ゆかしいEQNファイルです。

そもそもアドレスデコードごときにVerilogは大げさすぎます。

i14の接続を間違えていてチップが見えなかったのですが、確認して誤配線に気づきEQNファイルを修正しました。

以下をDumpListEditorでwavにしてPC-8001でCLOADします。

10 C=&HFD
20 D=&HFC
30 OUT C, 1
40 PRINT INP(D)

IMG_20210715_182308.jpg

SD-DOSをポートできないか調べてみるつもりです。

アセンブラめんどくさいなと思って調べていたら、なんとすでにアセンブラのコードを書いている人がいましたが、初期化の部分しかないようです。

MSXにつなげてる人もいました。

Atariで使えるようにした人もいました。

おそらくCH376には8051系のCPUが入っているような気がします。PC-8001の純正のFDDにもZ80が入ったので8Bit CPU間でのデータ処理という事では同じ手法とも思えます。

PC-8001のBASICでUSBメモリのファイルを読み書きできるようになりました。

CHOS_ORIGINAL.png

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0