

ESE2RAM Cartridge
Implementation of ESE-RAM using only general-purpose logic ICs (naming: ESE-ESE-RAM/ESE2-RAM).
- Size
- 100 × 63.5 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 29
- Nets
- 74
- Pads
- 250
- Tracks, vias
- 907, 66
- Pours
- 2
- Routed
- Yes
- KiCad
- KiCad 7 (file 20221018)
- Created
- 24 Mar 2024
- Updated
- 6 Jun 2026
Overview
ESE2RAM Cartridge is an open-source printed circuit board by goriponsoft, from the goriponsoft/ESE2RAM-Cartridge repository on GitHub. It is a 2-layer board of 100 × 63.5 mm with 29 parts on 74 nets, routed with 907 tracks and 66 vias.
It is built around the 74HC670P-E, 74AHC00D and 74AHC138D, with the 74AHC32D, BAT43 and CR2032 among its other parts. Its parts include 11 capacitors, 7 ICs, 3 resistors, 3 diodes and 2 connectors. It belongs with the retro computing and games boards of this library.
Main components
674HC670P-E
DIP-16-40℃~+125℃ 16 21ns@4.5V,50pF 2V~6V 35mA 35mA 74HC Output enable Tri-State DIP-16 Shift Registers ROHSRenesas ElectronicsShift Registers74AHC00D
SOIC-14-40℃~+125℃ 1.5V~3.85V 2V~5.5V 2uA 4 500mV~1.65V 7.5ns@5V,50pF 74AHC Series 8mA 8mA NAND Gate SOIC-14 Logic Gates ROHSNexperiaLogic Gates74AHC138D
SO-16-40℃~+125℃ 2V~5.5V 4uA 6.3ns@5V,50pF 74AHC 8mA 8mA Decoder Single Supply SO-16 Signal Switches, Multiplexers, Decoders ROHSNexperiaSignal Switches / Encoders & Decoders / Multiplexers74AHC32D
SOIC-14-40℃~+125℃ 1.5V~3.85V 1.9V、2.58V、2.9V、3.94V、4.4V 100mV、360mV 2 2V~5.5V 2uA 4 500mV~1.65V 7.5ns@5V,50pF 74AHC Series 8mA 8mA OR Gate Overvoltage-tolerant input Schmitt trigger SOIC-14 Logic Gates ROHSNexperiaLogic GatesBAT43
DO-204AH-65℃~+125℃ 1 Independent 1V@0.2A 200mA 30V 4A 500nA@25V DO-204AH Schottky Diodes ROHSSTMicroelectronicsSchottky DiodesCR2032
-- Unclassified goods ROHSMaxellUncategorised
README
README.md似非²RAMカートリッジ(1Mbyte版)

これは、汎用ロジックICによりメガROMコントローラと同等の動作を実現し、それを利用して似非RAMを構築したMSX用カートリッジ(命名:似非・似非RAMまたは似非²RAM)です。 ごりぽんハードウェア(同人サークル・ごりぽんソフトウェアのハードウェア部門)により作成されました。
KiCAD7用の回路図データ・基板データ・ガーバーデータを、クリエイティブ・コモンズライセンス(CC-BY-NC)で公開しています。 MGINST215.zipおよびKSAVER105.zipはCCライセンスの対象ではなく、元のライセンスと条件が適用されます。
X(旧Twitter): @goriponsoft
似非RAMディスク(似非RAM)とは?
同人サークル・似非職人工房のつじかわ氏が考案した、ストレージなどとして使えるMSX用の汎用バックアップRAMカートリッジです。
通常は、ゲームのメガROMカートリッジを改造し、ROMをRAMに置き換えることで制作します。MGINSTコマンドによりDOSカーネルをインストールしてSSDのようなストレージとして利用したり(似非RAMディスク)、メガROMのイメージを書き込んで動作させたりすることができます。
もともとストレージとしての使用を前提に考案されたため、カートリッジ自体も「似非RAMディスク」と呼ぶほうが一般的です。
なお、所有していないゲームのイメージを書き込んで動作させることは違法行為です。通常は似非RAMディスクの他、似非RAMに改造することで使用できなくなる改造元ゲームカートリッジのイメージ(改造前にファイルに書き出しておく必要あり)、フリーウェア、自作ROMゲーム、などを動作させるのに使用します。
似非RAMディスクについての詳細は、似非職人工房の似非RAMディスクのページを参照してください。
似非²RAM(似非・似非RAM)とは?
近年MSXゲームの入手自体が難しくなり、貴重になってしまったメガROMカートリッジを潰して似非RAMにするのはかなり躊躇われる状況でした。そこで、普通に入手できる汎用ロジックICを使い、メガROMコントローラーと同等の回路を実現し、それを利用して似非RAMとして組み上げたのがこのカートリッジです。
似非RAMでありながら、メガROMコントローラを使用していない「似て非なる似非RAM」ということで「似非・似非RAM」、転じて「似非の2乗」で「似非²RAM」と命名しました。「次世代(第2世代)の似非RAM」という意味も込めています。上付き文字の使用に問題がある場合は「似非2RAM」や「似非似非RAM」でも構いません。英語表記は「ESE-ESE-RAM」または「ESE2-RAM」です。
部品表
注意: 基板Rev.6以降U3~U5が74HCシリーズから74AHCシリーズに変更、Rev.7以降はそれに加え抵抗・コンデンサ・ダイオードが変更されています
| 部品番号 | 内容 | 数量 |
|---|---|---|
| BT1 | CR2032電池ホルダ "CH29-2032LF"/"CH28-2032LF(TR)"/"CH004-2032LF"/"CH004-2032LF"のいずれか | 1 |
| C1-C8 | 積層セラミックコンデンサ 0.1μF・50V・2.5mmピッチ | 8 |
| C9 | 積層セラミックコンデンサ 100pF・50V・5mmピッチ | 1 |
| C10-C11 | 電解コンデンサ 47μF・6.3V以上・2mmピッチ | 2 |
| D1-D3 | ショットキーバリアダイオード "BAT43" ※順方向電圧の低いダイオード | 3 |
| IC1-IC2 | 4Mbit SRAM(628512タイプ・512K×8bit) DIP-32 "AS6C4008"など | 2 |
| R1-R2 | 抵抗 10KΩ・1/4W | 2 |
| R3 | 抵抗 3.3KΩ・1/4W | 1 |
| RN1 | 集合抵抗 8素子・10KΩ SIP-9 | 1 |
| S1 | 6×6mm タクトスイッチ "TVDP01-095BB1" | 1 |
| U1-U2 | 汎用ロジックIC "74HC670" | 2 |
| U3 | 汎用ロジックIC "74AHC138" | 1 |
| U4 | 汎用ロジックIC "74AHC00" | 1 |
| U5 | 汎用ロジックIC "74AHC32" | 1 |
| - | CR2032電池 | 1 |
組み立て方
基板の実装面積の関係で、抵抗、コンデンサ、ダイオードなどの部品が裏面(ハンダ面)に配置されているため、組み立てには注意が必要です。
- 基板を裏返して(コネクタの傍に「Front」と書かれている側が表面です)、シルク印刷を参考に、ダイオード、抵抗、セラミックコンデンサ、電解コンデンサ、集合抵抗、の順で部品を配置して表側(部品面)からハンダ付けします。電解コンデンサはシルク印刷の方向に横倒しにして実装してください(縦に実装するとカートリッジシェルに収まりません)。ハンダを盛りすぎると、ICと基板の間に隙間ができるので、ハンダの量は控えめにしてハンダ付けしてください。
- ハンダ付けしたら、表面に余ったリードを切断します。リードが余分に残っていると、やはりICと基板の間に隙間ができるので、こちらもできるだけ短くなるように切断してください。
- 基板を表に戻し、ICを配置し、通常通り裏面(ハンダ面)からハンダ付けしていきます。ICのリードの処理は通常通りで構いません。
- タクトスイッチと電池ホルダをハンダ付けします。
- ショートや部品の付け間違いがないことを念入りに確認したうえで、MSX実機に挿して動作を確認します。似非RAMディスクとして使わない場合でも、動作確認にはMGINSTを使うのが簡単です。
準備 (似非RAMディスクとして使う場合)
- 似非インストーラー(MGINST.COM)とカーネルセーバー(KSAVER.COM)を入手します。
※似非職人工房・非公認出張所(似非なページ)よりLHA形式のアーカイブをダウンロードすることができます。また、ZIP形式にアーカイブしなおしたMGINST215.zipとKSAVER105.zipも、こちらで用意してあります。 - 何らかのMSXで起動可能なストレージ(通常はフロッピーディスク)に上記ツールを展開したものと、MSX-DOSのシステムファイル(MSXDOS.SYS/COMMAND.COM)をコピーします。MSX-DOS2カーネル利用の場合は、加えてMSX-DOS2のシステムファイル(MSXDOS2.SYS/COMMAND2.COM)をコピーしておくと、似非RAMインストール時に自動的にコピーされ、MSX-DOS2で起動することができるようになります。
- MSX実機に似非²RAMカートリッジを挿し、タクトスイッチを押したまま電源を入れ、手順2で作成したストレージからMSX-DOS(またはMSX-DOS2)を起動します。
- KSAVER.COMを使用し、MSX本体からMSX-DOSまたはMSX-DOS2のカーネルをファイルに保存します(詳細はKSAVERの付属ドキュメントを参照)。
- MGINST.COMを使用し、手順4で保存したカーネルのファイルを指定して似非RAMカーネルをインストールします(詳細はMGINSTの付属ドキュメントを参照)。
- リセットし似非RAMディスクから起動することを確認します。
手順4で保存したカーネルファイルは不要ですので、削除してしまっても構いません。残しておくと、似非RAMディスクの再インストール時に手順を省略できます。
手順5でエラーが出る場合は、部品のハンダ付け不良の可能性が高いので、基板をチェックしてみてください。
使い方 (メガROMソフトウェアを動かす場合)
使用した部品の機能の関係で、当カートリッジでは、セグメント番号の初期値がASCIIマッパーと異なっているため、プログラムによるレジスタの初期化が必須となっています。似非RAMディスクやゲームを含む、ほとんどのメガROMソフトウェアでは適切に初期化が行われているので問題ありませんが、初期化を怠っていたり、セグメント初期値が特定の値であることを期待しているソフトウェアは動作しない場合があります。
当カートリッジの起動直後もしくはリセット直後のバンクは以下のようになっています。
| バンクアドレス | レジスタアドレス | セグメント番号 |
|---|---|---|
| 4000h-5FFFh | 6000h-67FFh | 0 |
| 6000h-7FFFh | 6800h-6FFFh | 0 |
| 8000h-9FFFh | 7000h-77FFh | 0 |
| A000h-BFFFh | 7800h-7FFFh | 0 |
当カートリッジでセグメント番号レジスタに採用しているICの74HC670には値をリセットする機能がなく、起動直後は全てのセグメント番号が不定値(リセットの場合はリセット直前の値)となってしまうため、4000h-5FFFhに正しくセグメント番号0のROMヘッダが現れるよう「起動後にレジスタアドレスに初回の書き込みが行われるまでは全てのバンクをセグメント番号0に固定する」という仕組みになっています。
この状態からレジスタアドレスに値を書き込むと、セグメント番号の固定が解除され、書き込んだレジスタは書き込んだセグメント番号に、書き込まれていないレジスタは本来のセグメント番号不定の状態に戻ります。
例えば6000hに0を書き込んだ場合は以下のようになります。
| バンクアドレス | セグメント番号 |
|---|---|
| 4000h-5FFFh | 0 |
| 6000h-7FFFh | 不定 |
| 8000h-9FFFh | 不定 |
| A000h-BFFFh | 不定 |
このため、当カートリッジで自作メガROMソフトウェアを動作させる場合は、INITエントリのできるだけ早い段階で、実行中のアドレスを含むバンクのレジスタに0を書き込んで初期化する必要があります。実行中のアドレスを含まないバンクのレジスタに先に書き込んでしまうと、実行中のプログラムが不定のバンクに切り替わり、ほとんどの場合は暴走します。また、書き込まれなかったレジスタの値は不定ですので、必要であれば初期化を行ってください。
通常はセグメント#0に以下のコードを配置し、ROMヘッダのINITエントリより4000h~5FFFhバンクの該当アドレスを呼び出せば、問題なく初期化できます。
xor a
ld (6000h),a
ld (6800h),a
ld (7000h),a
ld (7800h),a互換性情報
動作確認済のハードウェア(順不同)について
ご報告いただいたものは順次追加・変更していきます
注意:作者所有の個体で動作した、もしくは動作報告者所有の個体で動作した、機種名を記載していますが、同一機種であっても全ての個体での動作を保証するものではありません。経年劣化や個体差により、動作しないことも、またその逆も有り得ます。
動作不良が確認されている機種と症状
- ビクター HC-90 および HC-95: 当カートリッジに書き込まれたデータが壊れるため正常動作しない
- 東芝 HX-E601(拡張スロット) : 認識されず起動しない
- 8086YES! OneChipBook および MSXBOOK: 当カートリッジに書き込まれたデータが壊れるため正常動作しない
正常動作が確認されている機種
- パナソニック FS-A1ST
- パナソニック FS-A1WX and FS-A1FX, FS-A1WSX
- パナソニック FS-A1, FS-A1F
- ナショナル FS-4700
- ナショナル CF-2000, CF-2700, CF-3000 および CF-3300
- ソニー HB-F1XV および HB-F1XDJ
- ソニー HB-201
- ヤマハ YIS503 および CX5F
- ヤマハ YIS604/128 および CX7M/128
- 三洋 MPC-2(WAVY2)
- 三洋 PHC-23J(WAVY23)
- 三洋 PHC-70FD(WAVY70FD) および PHC-70FD2(WAVY70FD2)
- 東芝 HX-31
- 東芝 HX-10D および HX-10S
- パイオニア PX-V7、PX-V60
- 三菱 ML-8000
- 三菱 ML-G30 model1 および ML-G30 model2
- ビクター HC-7
- ビクター HC-80
- キヤノン V-20
- カシオ PV-7, PV-16, MX-10
- カシオ KB-7(expansion slot)
- ゼネラル PCT-50 および PCT-55
- ソニー HB-F500 ※ただし似非RAMディスクとしての使用には難あり
- アスキーソリューションズ 1chipMSX ※ただし似非RAMディスクとしての使用には難あり
調査中の機種
- フロンロライン エキスパンションスロット(拡張スロット)
- パナソニック FS-A1FM
- カシオ MX-101
- 東芝 HX-20
- 東芝 HX-30
Parts
29| Qty | Value | Footprint | References |
|---|---|---|---|
| 8 | 0.1u | Capacitor_THT:C_Disc_D3.0mm_W1.6mm_P2.50mm | C1, C2, C3, C4, C5, C6, C7, C8 |
| 3 | BAT43 | Diode_THT:D_DO-35_SOD27_P7.62mm_Horizontal | D1, D2, D3 |
| 2 | 10K | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal | R1, R2 |
| 2 | 47u | ProjectLibrary:CP_Radial_D5.0mm_P2.00mm_Horizontal | C10, C11 |
| 2 | 4M SRAM | ProjectLibrary:DIP32_600mil_FineLongPad | IC1, IC2 |
| 2 | 74HC670 | ProjectLibrary:DIP16_300mil_FineLongPad | U1, U2 |
| 1 | 100p | Capacitor_THT:C_Disc_D4.3mm_W1.9mm_P5.00mm | C9 |
| 1 | 10k | Resistor_THT:R_Array_SIP9 | RN1 |
| 1 | 3.3K | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal | R3 |
| 1 | 74AHC00 | ProjectLibrary:DIP14_300mil_FineLongPad | U4 |
| 1 | 74AHC138 | ProjectLibrary:DIP16_300mil_FineLongPad | U3 |
| 1 | 74AHC32 | ProjectLibrary:DIP14_300mil_FineLongPad | U5 |
| 1 | 8M | Connector_PinHeader_2.00mm:PinHeader_1x02_P2.00mm_Vertical | J1 |
| 1 | BUS_MSX | ProjectLibrary:CARD_MSX_AK_DUAL | CN1 |
| 1 | CR2032 | ProjectLibrary:BatteryHolder_CH2x-2032LF | BT1 |
| 1 | TVDP01-095BB1 | _GoriponsoftLibrary:TVDP01-095BB1 | S1 |
Similar boards
- 4 layers406.4 × 254 mm

- 4 layers152.4 × 64.8 mm

Breakout
adrienkohlbecker/BB816
A homebrew 16 bit breadboard computer based on WDC's 65C816 processor
83 parts52 - 4 layers145.5 × 89.6 mm

- 2 layers100 × 100 mm

- 2 layers99.9 × 99.9 mm

- 2 layers208 × 110 mm

- 4 layers306 × 244 mm

- 2 layers172.7 × 63.5 mm

Pdsp1881 4x4
74hc595/kicad-intelligent-displays
KiCad symbols and footprints for HP/Litronix/Siemens/Osram/Avago/Broadcom intelligent alphanumeric LED displays
31 parts6
Questions
How big is the ESE2RAM Cartridge PCB?
It measures 100 × 63.5 mm and has 2 copper layers, 1.6 mm thick.
What parts does the ESE2RAM Cartridge use?
29 parts, built around the 74HC670P-E, 74AHC00D, 74AHC138D and 74AHC32D. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
Where can I download the ESE2RAM Cartridge KiCad files?
From the goriponsoft/ESE2RAM-Cartridge repository on GitHub, at the commit this page was made from: the board is ESE2RAM-Cartridge.kicad_pcb and its schematic ESE2RAM-Cartridge.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the ESE2RAM Cartridge design in my own project?
Its repository states no licence, so its author keeps all rights: ask goriponsoft before reusing the design.