FCG-2 は Bandai 製造のカートリッジ内部に使われたメモリコントローラ。キャラクタとIRQの複雑な制御を可能としたが、セーブデータのインタフェースがないのでゲームの再開に長いパスワードを入力させられるものが多い。
[label] BANDAI 88 FCG-2 S 8849 3T [pinout] Shrink PDIP-42pin 1 ? ? |42 s +5V 2 i CPU PHI2 |41 ? ? 3 i CPU A13 |40 o Program ROM A17? 4 i CPU A14 |39 o Program ROM A15 5 i CPU A3 |38 o Program ROM A14 6 i CPU A2 |37 o Program ROM A16 7 i CPU A1 |36 i CPU D7 8 i CPU A0 |35 i CPU D6 9 i CPU ROMSEL# |34 i CPU D5 10 i CPU D0 |33 i CPU D4 11 i CPU D1 |32 i CPU D3 12 i CPU D2 |31 o CPU IRQ# 13 i CPU R/W |30 o VRAM A10 14 i PPU RD# |29 o Charcter ROM A17? 15 o Charcter ROM A15 |28 o Charcter ROM A14 16 o Charcter ROM A12 |27 o Charcter ROM A13 17 i PPU A10 |26 o Charcter ROM A11 18 i PPU A11 |25 o Charcter ROM A16 19 i PPU A12 |24 o Charcter ROM A10 20 i PPU A13 |23 o Charcter ROM EN# 21 s GND |22 ? ?
[label] NEC JAPAN D23C1010AC T23 8849KX778 [logical assignments] A16:14 = Program ROM A16:14 A13:0 = CPU A13:0 D7:0 = CPU D7:0 EN# = CPU ROMSEL#
- crc32: 0x7fb799fd
- pinout は 28pin 128KB の標準的な配線
[label] NEC JAPAN D23C1010AC T22 8849KX777 [logical assignments] A16:10 = Charcter ROM A16:10 A9:0 = PPU A9:0 D7:0 = PPU D7:0 EN# = Charcter ROM EN#
- crc32: 0x5fe39059
- pinout は 28pin 128KB の標準的な配線
主要な配線のみ記載
CPU IRQ# = CPU IRQ# VRAM A10 = VRAM A10 VRAM CS = PPU A13# Sound out = Sound in
[CPU - read] $8000-$bfff Program ROM bank #0 (switchable) $c000-$ffff Program ROM bank #1 (fixed) [CPU - write] $6000 Charcter ROM bank #0 register $6001 Charcter ROM bank #1 register $6002 Charcter ROM bank #2 register $6003 Charcter ROM bank #3 register $6004 Charcter ROM bank #4 register $6005 Charcter ROM bank #5 register $6006 Charcter ROM bank #6 register $6007 Charcter ROM bank #7 register bit7:0 Charcter ROM A17:0 (#0-#7 で同じ) $6008 Program ROM bank #0 register bit4:0 Program ROM A17:14 $6009 Nametable register bit1:0 VRAM A10 connection (0:PPU A10, 1:PPU A11, 2:0, 3:1) $600a IRQ control register bit0 PHI2 counter control (0:stop, 1:increment) $600b IRQ countner register #0 bit7:0 PHI2 counter value bit7:0 $600c IRQ countner register #1 bit7:0 PHI2 counter value bit15:8 $600d-$600f unknown $6010-$7fff mirror area, same as $6000-$600f $8000-$ffff Program ROM data (デコード不備, バス衝突)
古い解析文書では $6000-$ffff まで register と書かれているが、都合良くひとまとめにするための誤った解釈。 FCG-1 と FCG-2 では $6000-$7fff に register を持つ。
write map $8000-$ffff は ROM からデータが出てきて CPU との出力に衝突する。この領域に register がないので問題にならない。
各 register の write strobe に関与する信号は CPU A15:13 と CPU R/W で φ2 は見ていない。φ2 は IRQ 向けカウンタのみに使用する。
[PPU - read] 0x0000-0x03ff Charcter ROM bank #0 0x0400-0x07ff Charcter ROM bank #1 0x0800-0x0bff Charcter ROM bank #2 0x0c00-0x0fff Charcter ROM bank #3 0x1000-0x13ff Charcter ROM bank #4 0x1400-0x17ff Charcter ROM bank #5 0x1800-0x1bff Charcter ROM bank #6 0x1c00-0x1fff Charcter ROM bank #7 0x2000-0x23ff system VRAM (nametable register) 0:0x000-0x3ff, 1:0x000-0x3ff, 2:0x000-0x3ff, 3:0x400-0x7ff 0x2400-0x27ff system VRAM (nametable register) 0:0x400-0x7ff, 1:0x000-0x3ff, 2:0x000-0x3ff, 3:0x400-0x7ff 0x2800-0x2bff system VRAM (nametable register) 0:0x000-0x3ff, 1:0x400-0x7ff, 2:0x000-0x3ff, 3:0x400-0x7ff 0x2c00-0x2fff system VRAM (nametable register) 0:0x400-0x7ff, 1:0x400-0x7ff, 2:0x000-0x3ff, 3:0x400-0x7ff [PPU - write] 0x2000-0x2fff system VRAM bank (read と同じ)