SEGA SG-1000
VDP(TMS9918)へ SEGA SG-1000 のスペック
| CPU | D780C-1(Z80A) 3.579MHz |
| VDP | TMS9918A |
| PSG | SN76489 |
| ROM | スロットにより供給 |
| RAM | 1KB(拡張可) |
| V-RAM | 16KB |
VDP
VDPはTI製TMS9918Aを使用、CPUCLOCKをシステムクロックに使用
PSG
SN76489を使用、クロックは3.759MHzで、MSBはD0、LSBはD7に繋がっています
またREADYがCPUの/WAITに繋がっているのはSN76489がコマンドを受け取るのに
32クロック掛かる為、CPUを止める必要があります。
ラッチを設ける方法もありますがSG−1000はコストの為に
WAITを掛ける方法を行っているようです。
ROM
ROMは本体には内蔵されておらず、カートリッジ又はカードで供給する形となる
メガROMのような大容量はカートリッジのチップで制御されます(ロレッタの肖像)
RAM
本体RAMは1Kバイト内蔵されている(0C000H−0C3FFH)
SG−1000IIは2Kバイト内蔵(0C000H−0C7FFH)
カートリッジ(B3を常に1)から本体内のRAMを使用禁止にし
本体ワーク内と重なるRAMが追加できるように設計されています
海外では拡張RAMエクスパンダで本体とROMカードリッジの間に挿し
出来るハードウェアがあります
B4を/CSとして08000H−0BFFFHをRAMまたはROMとして増設出来ます
I/Oポート
SG−1000ではA7とA6だけで、ポートを制御しているので040Hごとに区切られています
000H−03FH:未使用
040H−07FH:PSG SN76489 ポート07FHを使用
080H−0BFH:VDP TMS9918A ポート0BE−BFHを使用
0C0H−0FFH:ジョイパッド、SK−1100 ポート0DC−DFを使用
デコードの回路図
ポート07FH
PSGのポートです
アクセスすると約32クロック分のWAITが掛かります
ポート0BEH−0BFH
VDPのポートです
ポート0DCH
ジョイパッドと本体の識別に使用 SK−1100と共用
SG−1000のみの場合
Bit7:JOY2 2ピン(DOWN ) 1=オフ、0=オン
Bit6:JOY2 1ピン(UP ) 1=オフ、0=オン
Bit5:JOY1 9ピン(2ボタン ) 1=オフ、0=オン
Bit4:JOY1 6ピン(1ボタン ) 1=オフ、0=オン
Bit3:JOY1 4ピン(RIGHT) 1=オフ、0=オン
Bit2:JOY1 3ピン(LEFT ) 1=オフ、0=オン
Bit1:JOY1 2ピン(DOWN ) 1=オフ、0=オン
Bit0:JOY1 1ピン(UP ) 1=オフ、0=オン
ポート0DDH
SG−1000のみの場合
Bit7:IC21 74LS257の13ピン 1で固定(未使用)
Bit6:IC21 74LS257の10ピン 1で固定(未使用)
Bit5:IC21 74LS257の 6ピン 1で固定(未使用)
Bit4:CON端子 1=オフ、0=オン
Bit3:JOY2 9ピン(2ボタン ) 1=オフ、0=オン
Bit2:JOY2 6ピン(1ボタン ) 1=オフ、0=オン
Bit1:JOY2 4ピン(RIGHT) 1=オフ、0=オン
Bit0:JOY2 3ピン(LEFT ) 1=オフ、0=オン
ポート0DCH−0DFH:SK−1100用
8255を使用しており、0DCH−0DFHを使用。
PAは0DCH、PBは0DDH、PCは0DEH、CWは0DFH
0DEHの下位3Bitがキーセレクトになり
No.0〜6の場合、ポート0DDH、ポート0DCHがキーボードデータとなりPBとPAとしてデータを読みます
No. 7の場合、ポート0DDH、ポート0DCHが本体のJOY端子としてデータを読みます
アーケード基板の場合
ポート0DCH
Bit7:2P START
Bit6:1P START
Bit5:JOY1 2ボタン
Bit4:JOY1 1ボタン
Bit3:JOY1 右
Bit2:JOY1 左
Bit1:JOY1 下
Bit0:JOY1 上
ポート0DDH
Bit7:コイン
Bit6:サービス SW
Bit5:JOY2 2ボタン
Bit4:JOY2 1ボタン
Bit3:JOY2 右
Bit2:JOY2 左
Bit1:JOY2 下
Bit0:JOY2 上
ポート0DEH
DIP SWに使用します。
ポート0DFH
8255(基板によってはカスタムチップ)のCW
JOY端子周りの回路図
拡張端子の3ピンを1にする事で使用禁止にする事ができます。
1PのJOYSTICKは本体に直接ついています。(オプションでコネクタ化が可能)
コネクタ等の回路図
B3端子の/OSRAMはこの端子をオープンにすることで本体内のRAMを選択するという意味のようです
SG−1000にはB20に/M1が出ています
/EXM2=1は08000H以降のアクセスなので
LS138の/Y1と/Y2は/RD、/WR、A14=0で
SRAM 2KBは08000H−087FFHの/RD、/WR
LS138の/Y5と/Y6は/RD、/WR、A14=1、A10=0で
SRAM 1KBは0C000H−0C3FFHの/RD、/WR
本体のRAMはミラーで0C400H−0C7FFHとして使用
少なくともソフトでは08000H−087FFHと0C000Hと0C7FFHの
テストメモリは行っています。
/OSRAMがN.CのFG−2000ではIC2は使用しないようになっているみたいです。
オセロの回路図 (ROM32KB RAM2KB)
カートリッジの2KバイトRAMはワークエリアとして使われています。(08000H−087FFH)
BOARD 171-5044
ROM D23256AC 040 8529K7
RAM D4016C-2
ザ・キャッスルの回路図 (ROM32KB RAM8KB)
カートリッジの8KバイトRAMはワークエリアとして使われています。(08000H−09FFFH)
ホーム麻雀の回路図 (ROM32KB+ROM16KB)
ROM容量は計48KB(00000H−0BFFFH)になります
ジャンパーは3と4がショートでA14に繋がるようになっています。(JP4の128KBitの方は意味がありません)
8KBROM*2のカセット(40KBマップ)
UVEP−ROM2764を2つ使用したものがあります。
/EXM1(08000H−0BFFFH)の領域に1つ
/EXM2(00000H−07FFFH)の領域に1つ
アドレスデコーダは無くROMが2つだけ搭載されています。
この為、00000H−01FFFHの内容が02000H−07FFFHがミラーイメージに、
08000H−09FFFHの内容が0A000H−0BFFFHがミラーイメージになります。
エミュレータでこのタイプのソフトを使用するにはイメージ部分も一緒に入れた方が良いかもしれませんが
最低限ROM0のイメージ部分を何かしらのデータで埋めないといけません
ROM1のデータが08000Hに配置されない為です。
コンゴ・ボンゴ、チャンオン・ベースボール、チャレンジ・ダービの旧バージョン
モナコグランプリはROM0が16KB+ROM1が8KBのタイプ
セガ パチンコはROM0が8KB+ROM1が2KBのタイプ