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  CPUは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にスロットチェックプログラムを転送、実行して  カード、カードリッジ、拡張コネクタの順にチェックしてプログラムがなければ  IPL ROMのスペースハリアーのDEMOに飛ぶようになっています。  なお画面にV2.1となっており、キャラクタデータに0の文字が定義されています  V2.0が存在するのかは不明 RAM  RAMは本体に8KBが内蔵されていますがI/Oポートかカートリッジ(B3を常に1)で  本体内蔵のRAMを使用禁止にすることが出来きます コントロールチップ 315−5297  マスターシステムでJOY端子やスロット、本体内蔵メモリの切り換えを行います。  ここの制御するポートととして03EH、03FHが追加されています。  海外のMASTER SYSTEMも似たコントロールチップをもっており  そこの違いでMARK III,日本のマスターシステム、海外のMASTER SYSTEMの区別がつきます。 I/Oポート VDPとコントロールチップがポートの制御を行っています。  000H-03FH:I/O Port  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:JOY−2の7ピン端子       出力データ    Bit6:JOY−2の9ピン端子(2ボタン) 出力データ    Bit5:JOY−1の7ピン端子       出力データ    Bit4:JOY−1の9ピン端子(2ボタン) 出力データ    Bit3:JOY−2の7ピン端子       入出力セレクト 1=入力、0=出力    Bit2:JOY−2の9ピン端子(2ボタン) 入出力セレクト 1=入力、0=出力    Bit1:JOY−1の7ピン端子       入出力セレクト 1=入力、0=出力    Bit0:JOY−1の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:JOY−2 DOWN  (1=押されていない、0=押されている)    Bit6:JOY−2 UP    (1=押されていない、0=押されている)    Bit5:JOY−1 2ボタン  (1=押されていない、0=押されている)    Bit4:JOY−1 1ボタン  (1=押されていない、0=押されている)    Bit3:JOY−1 RIGHT (1=押されていない、0=押されている)    Bit2:JOY−1 LEFT  (1=押されていない、0=押されている)    Bit1:JOY−1 DOWN  (1=押されていない、0=押されている)    Bit0:JOY−1 UP    (1=押されていない、0=押されている) 0DDH:JOY端子+その他(日本のマスターシステムの場合)    Bit7:ポート03FHのBit3の内容    Bit6:ポート03FHのBit1の内容    Bit5:ポート03FHのBit2の内容    Bit4:ポート03FHのBit0の内容    Bit3:JOY−2 2ボタン  (1=押されていない、0=押されている)    Bit2:JOY−2 1ボタン  (1=押されていない、0=押されている)    Bit1:JOY−2 RIGHT (1=押されていない、0=押されている)    Bit0:JOY−2 LEFT  (1=押されていない、0=押されている)     *ポート03FHを直接読んでも0FFHが返ってくるので、ココのBit7−4を使用して調べます。 0DDH:JOY端子+その他(海外のマスターシステムの場合)    Bit7:JOY2の7ピン端子の内容    Bit6:JOY1の7ピン端子の内容    Bit5:不明 (未使用?)    Bit4:リセット スイッチ(海外のマスターシステムのみ?)    Bit3:JOY−2 2ボタン  (1=押されていない、0=押されている)    Bit2:JOY−2 1ボタン  (1=押されていない、0=押されている)    Bit1:JOY−2 RIGHT (1=押されていない、0=押されている)    Bit0:JOY−2 LEFT  (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に値が変るなら海外のマスターシステムという事になります。 0DFH:  どうやら別な役割があるかもしれません。  データの出力されいますがSK−1100と同じく最初に092Hを書きこんでそのままのようです。 0F0H−0F2H:FM音源 YM2143  元々、I/Oポートがフルデーコードされていないので、JOY端子と重複しています。  その為にデータを読む場合にJOY端子の使用を禁止する必要があります。  マスターシステムでは最初にポート03EHのBit2を1にしてJOY端子を禁止にして接続チェックを行います。
IPLからゲームカセット等に移行したときの注意  マスターシステムは電源を入れるとハードリセットでIPLを起動します。  そして、本体内のワークRAMにスロットチェックプログラムを転送、実行。  どこかのスロットにプログラムがあればそのスロットに切り換えて実行。  切り換えるポート03EHはラッチされないので何処を切り換えたのかわかりません。  そこでIPLは0C000Hにポート03EHの内容を渡してきりかえています。  実際にはどのスロットを切り換えたというよりJOY端子の内容を残してFM音源のルーチンで使われているようです。  その為、市販のゲームではFM音源対応ソフトから0C000Hの内容を壊さないようにしています。 海外のMASTER SYSTEMのソフトリセット  ソフトリセットは実際にはリセットではなく、ただのボタンでポートを読んでリセットが押されたか判断します。  ただのボタンなので隠しコマンドでリセットボタンを使用する事も可能です。(例 ブラックベルト)  主なプログラムはINT(V−SYNC)内で日本か海外のチェックをして海外のMASTER SYSTEMなら  ソフト リセットが押されているかみて、押されていればハイスコアを消さずに  タイトル等に戻るようにしています。 ゲーム内蔵の海外のMASTER SYSTEM  基本的に以前の海外のMASTER SYSTEMと変りません。  ただ、IPL ROMがバンク切り換え可能なROMとなっているようです。  最初にスロットチェックプログラムをワークRAMに転送して実行。  外部からのプログラムがあればチェックサムを参照、合えばスロットのプログラムを実行。  無ければIPL ROM内のゲームを実行するようになっています。 ゲームギアのMASTER SYSTEMモードとゲームギアモード  ゲームギアのカードリッジは41ピンと42ピンがショートになっているのが大半です。  このショート部分がモード切り換えになり  繋がっていなければSMSモード  繋がっていればGGモードになります。  モードの違いはカラーパレット、STARTボタンがSTARTかポーズになり  GGモードのみ通信端子が使用できるようになるようです。  この通信部分が使用できるかアクセスして使用出来ればGGモード、  出来なければSMSモードと判断出来るようです。  ちなみにSMSモード使用のゲームはカセットを繋げれば  MARKIII・SMSで動作可能です(チェイスHQで確認) マスターシステムにMARK III用3Dアダプタを繋げるとどうなるか?  MARK IIIではB2端子をオープンにすればカードスロットの使用が許可されましたが  マスターシステムではB2端子はVCCとなりハードでのカードスロットの切り換えは出来ません。  IPLはスロットの同時使用をしていないので実質動作しないと思われます。(未確認)
Home へ戻る