mikecatのアイコン画像
mikecat 2023年05月05日作成 © CC BY 4+
製作品 製作品 閲覧数 1982
mikecat 2023年05月05日作成 © CC BY 4+ 製作品 製作品 閲覧数 1982

MSX向けROM基板を使って拡張用RAMカートリッジを作る

MSX向けROM基板を使って拡張用RAMカートリッジを作る

MSX向けのROMカートリッジ作成用の基板が売られていたので、これを使ってRAMの拡張ができるカートリッジを作ってみた。

用意したパーツ

もの 詳細 入手先
カートリッジケース - BOOTH (筆選び工房)
基板 MSX 64K Simple ROM Cartridge BOOTH (Illegal function call)
SRAM BS62LV256PIP70 256K (32Kx8bit) 若松通商
積層セラミックコンデンサー 0.1μF 100V X7R 5mmピッチ 秋月電子通商

用意したパーツ

作り方

ピン配置の確認

今回用いる基板は、Flash ROM の SST39SF010A を用いるように設計されている。
そこで、このICと、今回用いる SRAM の BS62LV256PI のピン配置を比較する。

+-------- BS62LV256PI --------+ | | | SST39SF010A | | (A18) NC v VDD | | A16 WE# | A14 A15 NC (A17) VCC A12 A12 A14 ~WE A7 A7 A13 A13 A6 A6 A8 A8 A5 A5 A9 A9 A4 A4 A11 A11 A3 A3 OE# ~OE A2 A2 A10 A10 A1 A1 CE# ~CE A0 A0 DQ7 DQ7 DQ0 DQ0 DQ6 DQ6 DQ1 DQ1 DQ5 DQ5 DQ2 DQ2 DQ4 DQ4 GND VSS DQ3 DQ3

すると、GND、~CE、~OE、DQ0~DQ7、A0~A13 の配置は同じであることがわかった。
一方、VCC、~WE、A14 の配置は異なるので、この違いをうまく吸収してやらないといけない。

ジャンパーの設定方法の確認

今回用いる基板は Rev:D であり、A14、A15、A17、A18 に接続する信号を以下のようにジャンパーを用いて設定できる。

基板のジャンパーの設定方法

MSXの信号とRAMの信号の接続は、以下のようにしたい。

基板の表示 RAMの信号 接続先 (MSXの信号)
A17 VCC +5V
A14 ~WE ~WR
A15 A14 A14
A18 なし (GND)

基板のジャンパーは、初期状態では以下のように接続されている。

基板の表示 接続先 (MSXの信号)
A17 GND
A14 A14
A15 A15
A18 GND

よって、以下のように接続を行えばよい。

  1. 基板の表示 A17、A14、A15 のジャンパーの接続を切る。
  2. 基板の表示 A17 の上のジャンパーの左右を接続する。
  3. 基板の表示 A14 の上のジャンパーの左側を、基板の表示 A15 のジャンパーの右側に接続する。
  4. 基板の表示 A14 のジャンパーの右側を、IC1のピン31 (上段の左から2番目) に接続する。

実装

ジャンパーの接続を切る

カッターナイフで切る対象のジャンパーの間の繋がっている部分を削る。
ある程度削ったら、テスターで切れていることを確認する。
まわりの余計な部分を削らないように注意する。

ジャンパーの接続を切った状態

ジャンパーを接続する

接続する対象のジャンパーを接続する。
隣あっていないジャンパーは、スズメッキ線を用いて接続した。
余計な所に繋がらないように注意する。

ジャンパーを接続した状態

残りの部品を実装する

SRAMとコンデンサーを実装する。
SRAMの向きを間違えないように注意する。

残りの部品を実装した状態

念のため、+5VとGNDがショートしていないか、テスターで確認するとよい。

+5V と GND の位置

ケースに入れる

ケース内の出っ張りに基板の穴を合わせ、基板をケースにセットする。

基板をケースにセットした状態

ケースのもう一方の部分を合わせ、付属のネジでとめる。

ケースをネジ止めした状態 (完成)
完成!

動作確認

MSXのPV-7で動作確認をする。

PV-7

カートリッジを挿していない状態では、RAMは8KiBであり、初期状態で約4KBの空き容量がある。

カートリッジなし 初期状態でのRAMの空き容量

TINY SLOT CHECKER (簡易版) でチェックすると、以下のようになった。

カートリッジなし TINY SLOT CHECKER (簡易版) の表示

次に、一旦電源を切り、今回作成したカートリッジを挿す。

PV-7 にカートリッジを挿した様子

初期状態での空き容量は約28KBになった。
8192 - 4239 = 3953
32768 - 28815 = 3953
となり、差が同じなので、RAMが32KiBに拡張され、同じ容量がワークエリアなどで消費されていることが読み取れる。

カートリッジあり 初期状態でのRAMの空き容量

TINY SLOT CHECKER も (RAM32KB以上を要求する) RAM版が動作し、以下の結果になった。

カートリッジあり TINY SLOT CHECKER (RAM版) の表示

なお、SLOT 1 の全ページがRAMとして認識されているが、今回使用したSRAMは32KiBのものであり、
PAGE 0 は PAGE 2 の、PAGE 1 は PAGE 3 のミラーになっている。
「裏RAMをRAMディスクとして用いる機能」がある機種でこの機能を用いるなど、使い方によっては不都合を起こす可能性があるので注意したい。

結論

ROMカートリッジ用の基板を用い、RAM拡張カートリッジを作成することができた。

カートリッジといえば「プルシュカ」…?
「プルシュカ」って「いのりん」…?
「いのりん」といえば小岩井吉乃ソマリなど…?

  • mikecat さんが 2023/05/05 に 編集 をしました。 (メッセージ: 初版)
ログインしてコメントを投稿する