SEGA MASTER SYSTEM


SEGA MASTER SYSTEM のスペック
CPU D780C-1(Z80A) 3.579MHz
VDP 315-5124
PSG SN76489(コンパチでVDPに内蔵)
ROM 8K(IPL ROM)
RAM 8KB(拡張可)
V-RAM 16KB
日本で発売されたMARK III、海外では形状も変りMASTER SYSTEMとして発売 そのMASTER SYSTEMとほぼ近い形で、名前もそのまま発売されたのが日本のマスターシステムである。 MARK IIIのオプションであったFMユニット、3Dアダプタ、ラピッドファイアーを内蔵しており 海外のMASTER SYSTEMのソフトウェアによるメモリ制御を行っておりハード構成が少し違う。 またMASTER SYSTEMと同様に50ピンエッジの拡張インターフェースも装備していますが、 リセットスイッチは無く、ラピッドファイアのSWとなっています。   CPU PD780−1 NECのPD780−1を使用 クロックは10.7386MHzを3分周して約3.579MHz 割り込みはモード1でNMI割り込みはポーズキー、INT割り込みはVDP(主にVSYNC)に割り当てられている   VDP 315−5124 VDPはヤマハ製でアドレスデコード、PSG等もこのチップが担当 ハードウェアスクロール、画面のマスク、64色32パレット 全機種といわれるSC−3000・SG−1000に使用されているTMS−9918を 大幅に画面のモードを拡張する(TMS−9918とほぼ同じ機能も持つが発色が若干違う)   PSG(315−5124に内蔵) SG−1000シリーズに使われたSN76489とコンパチでVDPのチップに内蔵 クロックは同じく3.759MHz   ROM IPL ROM MPR−11124( 8KB)を内蔵 起動するとワークRAMにスロットチェックプログラムを転送 実行して各スロットにプログラムがなければスペースハリアーのDEMOに飛びます   V2.1となっていますがキャラクタデータに0の文字が定義されています V2.0が存在するのかは不明   RAM RAMは本体に8KBが内蔵されていますがI/Oポートかカートリッジ(B3を常に1)で 本体内蔵のRAMを使用禁止にすることが出来きます   カートリッジ端子図 他機種の違いでB7 /RESET、B9 /MREQ B10 /MREQの代わりにB10 /CSR3になっています   コントロールチップ 315−5297 マスターシステムでJOY端子やスロット、本体内蔵メモリの切り換え、3Dグラスの制御、FM音源のスイッチの制御を行います 制御するポートとして03EH、03FH、0DCH,0DDH,0F0−0F2H メモリマップ・ド・I/O 0FFFBHを使用 海外のMASTER SYSTEMも似たコントロールチップをもっており 動作の違いでMARK III、日本のマスターシステム、海外のMASTER SYSTEMの区別がつきます   I/Oポート VDPとコントロールチップがポートの制御を行っています。 000H−03FH:I/Oコントロール 040H−07FH:PSG、VDP 080H−0BFH:VDP 0C0H−0FFH:JOY/FM音源   03EH:315−5297用 ポート  マスターシステムではこのポートを使用してカートリッジや本体内RAMの切り換え等を行います  IPLでスロットチェックを行うのでワークRAMの0C000Hがポート03EHの内容としててスロット切り換えを行います  市販のソフトではその内容をみてどのスロットが切り換わったのかを判断しています  これはJOY端子とFMスイッチのポートが重なっており0C000Hを読んで  JOY端子を禁止にする事でFMスイッチをアクセスする事になります  これはポート03EHのデータは保持されないのと、どのスロットで起動しているのかを判断する為です    Bit7:/EXT   拡張コネクタ スロット 1=禁止、0=選択    Bit6:/CATR  カートリッジ スロット 1=禁止、0=選択    Bit5:/CARD  カード    スロット 1=禁止、0=選択    Bit4:/IRAM  本体内ワーク RAM  1=禁止、0=選択    Bit3:/OSROM IPLROM      1=禁止、0=選択    Bit2:/JOY   JOY/FM      1=FM、0=JOY    Bit1:不明     通常は1にセットしている    Bit0:不明     通常は1にセットしている   03FH:315−5297用 ポート  マスターシステムでJOY端子のI/Oポートのトリガーの制御に使用します  ポートのデータは保持はされないので読むと0FFHになります  ただし入出力セレクトの内容はポート0DDHもBit7−4で調べる事が出来ます    Bit7:JOY2 7ピン       出力データ    Bit6:JOY2 9ピン(2ボタン) 出力データ    Bit5:JOY1 7ピン       出力データ    Bit4:JOY1 9ピン(2ボタン) 出力データ    Bit3:JOY2 7ピン       入出力セレクト 1=入力、0=出力    Bit2:JOY2 9ピン(2ボタン) 入出力セレクト 1=入力、0=出力    Bit1:JOY1 7ピン       入出力セレクト 1=入力、0=出力    Bit0:JOY1 9ピン(2ボタン) 入出力セレクト 1=入力、0=出力   07EH:現在のVカウンター(リード) 07FH:現在のHカウンター(リード)/PSG(ライト)   0BEH−0BFH:VDP 315−5124   0C0H−0C1H:JOY端子(ミラー)  ココはデコードされていないのでポート0DCH−0DDHとして使われているソフトもあります。  ただし、ハードの条件によって他のポートと競合してしまう可能性があるので使用しない方が良いです。  ここを利用しているソフトはFM−70を繋いだMARK IIIやメガアダプタで誤動作するようです。   0DCH:JOY端子    Bit7:JOY2 2ピン(下   ) 1=オフ、0=オン    Bit6:JOY2 1ピン(上   ) 1=オフ、0=オン    Bit5:JOY1 9ピン(2ボタン) 1=オフ、0=オン    Bit4:JOY1 6ピン(1ボタン) 1=オフ、0=オン    Bit3:JOY1 4ピン(右   ) 1=オフ、0=オン    Bit2:JOY1 3ピン(左   ) 1=オフ、0=オン    Bit1:JOY1 2ピン(下   ) 1=オフ、0=オン    Bit0:JOY1 1ピン(上   ) 1=オフ、0=オン   0DDH:JOY端子+その他(日本のマスターシステムの場合)    Bit7:ポート03FHのBit3の内容    Bit6:ポート03FHのBit1の内容    Bit5:ポート03FHのBit2の内容    Bit4:ポート03FHのBit0の内容    Bit3:JOY2 9ピン(2ボタン) 1=オフ、0=オン    Bit2:JOY2 6ピン(1ボタン) 1=オフ、0=オン    Bit1:JOY2 4ピン(右   ) 1=オフ、0=オン    Bit0:JOY2 3ピン(左   ) 1=オフ、0=オン     *ポート03FHを直接読んでも0FFHが返ってくるのでココのBit7−4を使用して調べます   0DDH:JOY端子+その他(海外のMASTER SYSTEMの場合)    Bit7:JOY2の7ピン端子の内容    Bit6:JOY1の7ピン端子の内容    Bit5:不明 (未使用?)    Bit4:リセット スイッチ(海外のマスターシステムのみ?)    Bit3:JOY2 9ピン(2ボタン) 1=オフ、0=オン    Bit2:JOY2 6ピン(1ボタン) 1=オフ、0=オン    Bit1:JOY2 4ピン(右   ) 1=オフ、0=オン    Bit0:JOY2 3ピン(左   ) 1=オフ、0=オン    *ポート0DDHをみて日本のハードか海外のハードが判断出来ます   ポート03FHに0F5Hを出力してポート0DDHを見る   ポート03FHに055Hを出力してポート0DDHを見る事で判断出来ます。    MARK IIIの場合     ポート03FHは使用していないので     ポート0DDHのBit7−6は11で固定になっています。      日本のマスターシステムの場合     ポート03FHのBit3−1の内容は0なので     ポート0DDHのBit7−6は2回とも00になります。      海外のマスターシステムの場合     JOY端子の7ピンの設定の値が入るので     ポート0DDHのBit7−6は11と00になります。      11から11ならMARK III    00から00なら日本のマスターシステム    11から00に変化するなら海外のマスターシステムになります   0F0H−0F2H:FM音源 YM2143 0F0H:YM2413レジスタ  (出力) 0F1H:YM2413データ   (出力) 0F2H:スイッチ コントロール(入出力)   Bit7:−   Bit6:−   Bit5:−   Bit4:−   Bit3:−   Bit2:−   Bit1:1 不明(内蔵ROMのデモでは1にしている)   Bit0:1=FMスイッチ オン、0=FMスイッチ オフ    マスターシステムでは最初にポート03EHのBit2を1にしてJOY端子を禁止にして接続チェックを行います  これはポート0F2HとJOY端子ポートが重なる為です  
IPLからゲームカセット等に移行したときの注意 マスターシステムは電源を入れるとハードリセットでIPLを起動します そして本体内のワークRAMにスロットチェックプログラムを転送、実行 どこかのスロットにプログラムがあればそのスロットに切り換えて実行 切り換えるポート03EHはラッチされないので何処を切り換えたのかわかりません そこでIPLは0C000Hにポート03EHの内容を渡して切り替えます 実際にはどのスロットを切り換えたというよりJOY端子の内容を残してFM音源のチェックルーチンで使用されています 市販のゲームではFM音源対応ソフトから0C000Hの内容を壊さないようにしています   カード、カードリッジの起動が遅い VDPが動作する為に最初にウェイト(約2秒)をかけます マスターシムテムではIPLでウェイト(約2秒)がかけられています そこにカード、カードリッジでもウェイト(約2秒)をかけると 計約4秒ほど待たされることになります カード、カードリッジのウェイト(約2秒)をなくすと マスターシステムでは動作するがMARKIIIでは動作しなくなります 市販のソフトではポート03FHと0DDHのアクセスで MARKIIIとマスターシステム(国内/海外)の判断をして MARKIIIならVDP用のウェイト(約2秒) マスターシステムならウェイトルーチンをスキップするようになっています ただし全機種ではポート03FHと0DDHのアクセスで判断出来ないので マスターシステムでは起動するのに約4秒かかります   ゲーム(外部ROM)の有無の判断 IPL内ではカード、カードリッジ、拡張端子の順にプログラムがあれば プログラムのあったスロット(ポート03EH)を0C000Hにストアして0000Hを実行します   判断は00000H−000FFHの256バイトでデータの変化の有無がプログラムの有無になります 海外のMASTER SYSTEMの様に07FF0H−07FFFHのIDをみてチェックサムを行いません チェックサムを行わないのは全機種、一部のMARK IIIソフトにIDが無い為です   海外のMASTER SYSTEMのソフト リセット ソフトリセットは実際にはリセットではなく、ただのボタンでポートを読んでリセットが押されたか判断します ただのボタンなので隠しコマンドでリセットボタンを使用する事も可能です。(例 ブラックベルト) 主なプログラムはINT(VSYNC)内で日本か海外の判断をして 海外のMASTER SYSTEMならソフト リセットが押されているかみて、押されていればハイスコアを消さずに タイトル等に戻るようにしています 日本のMASTER SYSTEM、MARKIIIならこの処理は行われません   ゲーム内蔵の海外のMASTER SYSTEM 基本的に以前の海外のMASTER SYSTEMと変りません ただIPL ROMがバンク切り換え可能なROMとなっているようです 最初にスロットチェックプログラムをワークRAMに転送して実行 外部からのプログラムがあればチェックサムを参照、合えばスロットのプログラムを実行 無ければIPL ROM内のゲームを実行するようになっています   ゲームギアのMASTER SYSTEMモードとゲームギアモード ゲームギアのカードリッジは41ピンと42ピンがショートになっているのが大半です このショート部分がモード切り換えになり  繋がっていなければ SMSモード  繋がっていれば    GGモード モードの違いはカラーパレット、STARTボタンがSTARTかポーズになり GGモードのみ通信端子が使用できるようになるようです この通信部分が使用できるかアクセスして使用出来ればGGモード、出来なければSMSモードと判断します   SMSモード使用のゲームはカセットを繋げればMARK III・SMSで動作可能です(チェイスHQで確認)   マスターシステムにMARK III用3Dアダプタを繋げるとどうなるか? MARK IIIではB2端子をオープンにすればカードスロットの使用が許可されましたが マスターシステムではB2端子はVCCとなりハードでのカードスロットの切り換えは出来ません IPLはスロットチェックでプログラムをロック(/CS=1)されるので使用出来ません  
Home へ戻る