ディスクシステム拡張ポート

 ファミコン本体にRAMアダプタを差し込むと、通常カセットがROMの拡張などに使われる$4000台にディスクシステムの拡張ポートがマッピングされます。

$4023〜$408Aの範囲に、ディスクシステムを低レベルで操作できるポートが用意されます。これらのポートは通常、ユーザプログラムから呼ばれることはありません。


 自前でディスクアクセスを行いたい場合や、DISK-BIOSを使いたくない場合(バックアップツールを開発する場合などでしょうか?)は、
直接この辺りのポートを叩くことになります。
通常のゲームを作る上では、安全性からも、道徳的にもDISK-BIOSを使うことが推奨されます。


 また、このポートは低レベルでディスクシステムを扱えるポートなので非常に危険で、十分に検証を行って操作する必要があります。
とても有用なポートではありますが使い方を誤るとディスクカードを破損させる恐れがあるので注意が必要です。


以下にディスクシステム(RAMアダプタ)使用時において拡張されるポートについて明記します。

メイン
メモリ側

番地
サイズ R/W 機能名称 機能詳細
$4022 1 - 不明 システムリセット時にDISK-BIOS内ルーチンで00がセットされる

$4023 1 - 不明 システムリセット時にDISK-BIOS内ルーチンで83がセットされる
■最下位ビットに0をセットするとディスクI/Oがロックされる。
■その他のビットも0をセットすると転送に失敗する。

$4024 1 W 書き込みデータ ディスクカードへファイルを書き込む際のデータポート

$4025 1 R/W 書き込み指示
8 7 6 5
割込
転送時=1
読書
開始時=1
(*1) CRC時=1
4 3 2 1
(*2) 書込時=0
読込時=1
初期化時=1 モータ
回転時=1
 (*1)...不明。常に1がセットされている。0にすると転送エラーになる
 (*2)...不明。画面スクロールに関する項目? 0=縦 1=横

$4026 1 W 不明 最上位ビットが1でなければならない(初期化時にFFをセットすること)

$4030 1 - 読み込み
ステータス
8 7 6 5
データ
有り=1
オーバー
ラン=1
不明 CRC時=1
4 3 2 1
不明
不明
不明
不明


$4031 1 R 読み込みデータ $4030のビット8が1の場合、データが格納される
$4032
$4033
$4080 1 - 不明 システムリセット時にDISK-BIOS内ルーチンで80がセットされる
$408A 1 - 不明 システムリセット時にDISK-BIOS内ルーチンでE8がセットされる



任天堂株式会社の登録商標です。本webサイト中のゲーム画像の著作権は全て開発ゲームメーカーへ帰属します。
Copyright(C) 2004 by Fantasy.