主な機能は、以下のようになった
・128KB (64KB x 2) RAM PAC2
・SDカード (FAT対応)
・Joystickアダプタ
・漢字ROM PAC2
特徴は、不揮発メモリ(MRAM)を使ったので、純正RAM PAC2と異なり電池不要。
また、PAC拡張ユニットなしで1スロットに集約できたのも特徴
スロットの切り替えは、PAC拡張ユニットの命令がそのまま利用可能
スロット番号 | 機能 | 備考 | 初代パソピアでの利用 |
---|---|---|---|
1 | Joystickアダプタ | MSXタイプジョイスティック | OUT &H1B,1 |
2 | 漢字ROM PAC2 | OUT &H1B,2 | |
3 | 64KB RAM PAC2 #2 (ドライブ6) | MRAM (不揮発メモリ) | OUT &H1B,3 |
4 | 64KB RAM PAC2 #1 (ドライブ5) | MRAM (不揮発メモリ) | OUT &H1B,4 (デフォルト) |
7 | 4KB RAM PAC2 #3 ※ | SRAM | OUT &H1B,7 |
※スロット7は、SRAMのため電源OFF時にクリアされる
・SDカードアクセス時に、バッファとして使うため、メモリ内容は変更される
・フォーマットすると、4KBのRAM PAC2として利用可能
・T-BASIC7の場合、SLOT命令でドライブ切替え可能
「SLOT 7」:ドライブ5は、4KB RAM PAC2 #3
「SLOT 4」:ドライブ5は、64KB RAM PAC2 #1
T-BASIC7で利用する場合、特別な変更は必要ないが、
初代パソピアで利用する場合は、SLOT命令が使えないので、OUT命令で切替えが必要
SDカードの読み書きは、SLOT7のバッファを通してコマンドで制御する
戻り値もSLOT7のバッファに書き込まれる
機能 | コマンド | パラメータ | 戻り値 | 備考 |
---|---|---|---|---|
MRAMのメモリ内容を SDカードのファイルへセーブ | sv [slot] [file name] | [slot] : セーブ元 5 : RAMPAC1: SLOT4: デフォルト装置番号5 6 : RAMPAC2: SLOT3: デフォルト装置番号6 7 : BUFFER: SLOT7 [file name] : SDカードセーブ先ファイル名 "/"から始まった場合、絶対パス | Ok : セーブが成功した場合 (エラー文字列) : エラーが発生した場合 | 事前に、SDカードにファイルが存在する必要がある ファイル名は、半角英数8.3形式 書き込み後も、タイムスタンプは更新されない |
SDカードのファイルをロード | ld [slot] [file name] | [slot] : ロード先 0 : SDカードの漢字ROMファイルをAVRに保存 5 : RAMPAC1: SLOT4: デフォルト装置番号5 6 : RAMPAC2: SLOT3: デフォルト装置番号6 7 : BUFFER: SLOT7 [file name] : SDカードロード元ファイル名 "/"から始まった場合、絶対パス | Ok : セーブが成功した場合 (エラー文字列) : エラーが発生した場合 | 漢字ROMは、ファイル読み込み後にフラッシュと EEPROMに保存する |
フォルダとファイルの リストを表示 | ls [path] | [path] : 読込元のSDカードのパスとファイル名 | (ファイル名 or フォルダ名)の一覧 (エラー文字列) : エラーが発生した場合 | フォルダの場合は名称の最後に"/"が付く |
カレントディレクトリの変更 | cd [path] | [path] : パス名 | (フォルダ名) : カレントフォルダ (エラー文字列) : エラーが発生した場合 | 電源OFFされるまで、パスは保持される |
64KBのRAM PAC2は、純正のフォーマッタでは対応できていない様子。
純正フォーマッタを使わずに、フォーマット済みイメージのバイナリファイルを用意して、ld命令で各ドライブにマウントすれば64KBフルに使えるようになる。
Eagleで回路図を作ってみた。
結局、基板は2枚に。
この配線をもう一度作るのは、かなり厳しい。。
プリント基板が作れるとよいのだが。
これは…欲しい…
返信削除コメントどもです。ニーズはあるのですね。。
削除