MegaRam

MegaRAMとは

主にブラジル市場で流通したMSX用拡張RAMカートリッジらしい

標準のメモリマッパーとは互換性が無くリセット時に書き込み禁止モードになるため標準のRAMとしては認識されない

バッテリーバックアップされないので電源オフで書き込まれた内容は消える

自作8Kマッパーソフトの動作確認くらいしか使い道が思いつかない

MegaRAMの共通仕様

I/O ポート 8Eh からの IN で RAM モード

I/O ポート 8Eh への OUT で ROM モード

8K バンク x4

ROMモード時にバンク範囲のアドレスへ書き込むとバンク切り替え

電源ON時は書込み不可のモード

MegaRAMの種類

MegaRAM DDX

256KB

page1 と page2 のみ

MegaRAM Disk DDX

256KB/512KB/768KB/2048KB(改造版)

page1 と page2 のみ

DDX-DOS(modified DOS1 with disk emulation) 搭載

I/O ポート 8Fh への IN/OUT で DDX-DOSモード(4000-BFFFh:32KB)

電源ON時は DDX-DOSモード

ACVS(CIEL) MegaRAM

256KB

page3 は page1 のミラー

page0 は page2 のミラー

SD Mapper/MegaRAM 512K

https://github.com/fbelavenuto/msxsdmapper

128KBのパラレルフラッシュメモリを搭載しNextorを搭載可能

MMCカードドライブを2台まで搭載可能

512KBのSRAMを搭載し標準のメモリマッパーかMegaRAMか無効化かをスイッチで切り替え可能

SRAM無効化時は内部スロット拡張も無効化され拡張スロットでもMMCカードドライブの使用が可能

BEEP にあった Fractal2000 SD Mapper/MegaRAM 512kb はこれの互換品

MegaRAM 機能は a15 を解釈しないため ACVS(CIEL) 版と同様にページ0とページ3はミラー動作するはず

I/O ポート 8Fh は 8Eh と同じ動作

slot #n(ram disabled) or #n-1(ram enabled) : flash(nextor)
 6000h bit2-0:select flash read bank
 6001h bit0:1=SPI enabled 0=ROM mode
 4000-47FFh SPI data transfer window
 4800h      SPI status and card select registe

io 5Fh w bit7:1=flash write enabled bit2-0:select flash write bank 
slot #n-3(ram enabled) : sram(mapper or MegaRAM)
0000-1FFFh,8000-9FFFh bank0(0000-1FFFh,8000-9FFFh) select 
2000-3FFFh,A000-BFFFh bank1(2000-3FFFh,A000-BFFFh) select  
4000-5FFFh,C000-EFFFh bank2(4000-5FFFh,C000-EFFFh) select  
6000-7FFFh,E000-FFFFh bank3(6000-7FFFh,E000-FFFFh) select  

io 8E-8Fh r/w MegaRAM control
io FC-FFh r/w mapper control

version2ではMegaRam機能は削除されアドレスマップも大幅に変更されている スイッチは容量が2倍になったフラッシュROMの切替機能

その他

Zemina Black Box / Deluxe IV / Deluxe Box / Golden Box や Carnivore 2 の疑似 MegaRAM 機能 とはハードウェア上の互換性はない模様

出典

MegaRAMの仕様などについて

https://github.com/fbelavenuto/msxsdmapper

https://github.com/lutris/openmsx/blob/master/src/memory/MSXMegaRam.cc

DDX版とその他の挙動の違いについて

https://github.com/marioaugustorama/uzix-kernel/blob/master/KERNEL/DEVSWAP.MSX

Zeminaの拡張メモリーの動作について

http://map.grauw.nl/resources/msx_io_ports.php

Carnivore 2の疑似MegaRAM機能について

https://github.com/RBSC/Carnivore2

Nextor

https://github.com/Konamiman/Nextor

NextorはMSX-DOS2の改造版

非商用限定での公開と条件付きでの搭載製品の販売が可能になりライセンス問題は解決

ただし派生物は個別に許可が必要