/*************************************************************************** nss.c Driver file to handle emulation of the Nintendo Super System. R. Belmont Anthony Kruize Based on the original MESS driver by Lee Hammerton (aka Savoury Snax) Driver is preliminary right now. The memory map included below is setup in a way to make it easier to handle Mode 20 and Mode 21 ROMs. Todo (in no particular order): - Fix additional sound bugs - Emulate extra chips - superfx, dsp2, sa-1 etc. - Add horizontal mosaic, hi-res. interlaced etc to video emulation. - Fix support for Mode 7. (In Progress) - Handle interleaved roms (maybe even multi-part roms, but how?) - Add support for running at 3.58Mhz at the appropriate time. - I'm sure there's lots more ... Nintendo Super System There is a second processor and Menu system for selecting the games controlling timer etc.? which still needs emulating there are dipswitches too *************************************************************************** Nintendo Super System Hardware Overview Nintendo, 1992 This system is basically a Super Nintendo with a timer. The main board has 3 slots on it and can accept up to 3 plug-in carts. The player can choose to play any of the available games, although I'm not sure why anyone would have wanted to pay money to play these games when the home SNES was selling as well ;-) The control panel was also just some SNES pads mounted into the arcade machine control panel.... not very usable as-is and very cheaply presented. PCB Layouts ----------- NSS-01-CPU MADE IN JAPAN (C) 1991 Nintendo |----------------------------------------------------| | HA13001 AN5836 | | SL4 SL2 CL2 SL3 | |-| CL1 SL1 | | |--------------| | |-| 14.31818MHz | SL5 | | | | | | IR3P32A | M50458 |-| |-| |-| | |J | VC1 21.47724MHz | | | | | | | |A | | | | | | | | | |M | CN6 | | | | | | | | |M |--------------| | | | | | | | |A |-------| |-------| | | | | | | | | 84256 |S-PPU1 | |S-CPU | | | | | | | | | |5C77-01| |5A22-02| | | | | | | | |-| |-------| |-------| | | | | | | | | | | | | | | | |-| |-------| |-------| | | | | | | | | 84256 |S-PPU2 | |S-WRAM | | | | | | | | |CN4 |5C78-01| |LH68120| | | | | | | | | |-------| |-------| | | | | | | | | | | | | | | | | | | | | | | | |CN3 | | | | | | | | 4MHz | | | | | | | | |-| |-| |-| | | CN11 CN12 CN13 | | Z84C0006 | |CN5 LH5168 | | | | M6M80011 | | | | S-3520 | |CN2 32.678kHz *MM1026 | | 5.5V NSS-C_IC14_02| |----------------------------------------------------| Notes: (The main board has many surface mounted logic chips and transistors on the lower side of the PCB which are not documented here. There's also a lot of custom Nintendo parts) IR3P32A - Sharp IR3P32A Special Function TV Interface Circuit, Conversion of color diff sig. & lumin. to RGB (NDIP30) M50458 - Mitsubishi M50458-001SP On-Screen Display (OSD) Chip (NDIP32) HA13001 - Hitachi Dual 5.5W Power Amplifier IC AN5836 - Matsushita AN5836 DC Volume and Tone Control IC (SIL12) 84256 - Fujitsu MB84256-10L 32k x8 SRAM (SOP28) LH5168 - Sharp LH5168N-10L 8k x8 SRAM (SOP28) Z84C0006- Zilog Z84C0006FEC Z80 CPU, clock input 4.000MHz (QFP44) M6M80011- Mitsubishi M6M80011 64 x16 Serial EEPROM (DIP8). Pinout..... 1 CS, 2 CLK, 3 DATA IN, 4 DATA OUT, 5 VSS, 6 RESET, 7 RDY, 8 VCC S-3520 - Seiko Epson S-3520 Real Time Clock (SOIC14) 5.5V - 5.5 volt supercap MM1026 - Mitsumi Monolithic IC MM1026BF System Reset with Battery Backup (SOIC8) VSync - 60Hz HSync - 15.57kHz * - This IC located underneath PCB NSS-C_IC14_02 - 27C256 EPROM (DIP28) CN11/12/13 - 50 pin connectors for game carts CN2 - 10 pin connector CN3 - 13 pin connector CN4 - 8 pin connector CN5 - 7 pin connector CN6 - 24 pin connector for plug in custom sound module Custom IC's - S-CPU (QFP100) S-PPU1 (QFP100) S-PPU2 (QFP100) S-WRAM (SOP64) Custom Sound Module (plugs in CN6) ---------------------------------- Note - This board is encased in a metal shield which is soldered together. MITSUMI ELEC CO. LTD. (C) 1990 Nintendo Co. Ltd. |-----------------------| | CN1 | | JRC2904 |---| | |-------| | | |S-SMP | | | | | D6376 | | |-------| 51832 | | | | |-------| | | |S-DSP | | | | | 51832 | | |-------| | |---| | | | |-----------------------| Notes: JRC2904 - Japan Radio Co. JRC2904 Dual Low Power Op Amp (SOIC8) D6376 - NEC D6376 Audio 2-Channel 16-Bit D/A Converter (SOIC16) 51832 - Toshiba TC51832FL-12 32k x8 SRAM (SOP28) CN1 - 24 pin connector to plug in custom sound module to main board S-SMP - Stamped 'Nintendo S-SMP (M) SONY (C) Nintendo '89' custom sound chip (QFP80) S-DSP - Stamped 'Nintendo S-DSP (M) (C) SONY '89' custom sound DSP (QFP80) Note - Without this PCB, the board will boot up and work, displaying the game selection menu, but once the game tries to load attract mode, the PCB resets. Game Carts ---------- There are 3 types of carts. The carts have only a few components on them, including some ROMs/sockets, a few logic chips/resistors/caps, a DIPSW8 block, one unknown DIP8 chip (with it's surface scratched) and some solder-jumper pads to config the ROM types. The unknown DIP8 chip is different per game also. There is a sticker on top with a 2-digit game code (I.E. MW/AT/L3 etc) NSS-01-ROM-A |-------------------------------------------------------| | SL3 CL1 | | CL3 SL1 IC1_PRG_ROM IC3_INST_ROM IC4 | |CL4 SL2 SL5 | |SL4 CL2 CL5 | |--| |--| |-------------------------------------------------| Notes: IC1 - Program ROM IC2 - Instruction ROM IC4 - Unknown DIP8 chip Game Name IC1 IC1 Type IC3 IC3 Type Jumpers ------------------------------------------------------------------------------------------------------- Super Mario World NSS-MW-0_PRG LH534J NSS-R_IC3_MW 27C256 CL1 CL2 CL3 CL4 CL5 - Short SL1 SL2 SL3 SL4 SL5 - Open Super Tennis NSS-ST-0 LH534J NSS-R_IC3_ST 27C256 CL1 CL2 CL3 CL4 CL5 - Short SL1 SL2 SL3 SL4 SL5 - Open Super Soccer NSS-R_IC1_FS TC574000 NSS-R_IC3_FS 27C256 CL1 CL2 CL3 CL4 CL5 - Open SL1 SL2 SL3 SL4 SL5 - Short ------------------------------------------------------------------------------------------------------- Note - By setting the jumpers to 'Super Soccer', the other 2 games can use standard EPROMs if required. LH534J is a 4MBit x8 MaskROM with non-standard pinout. An adapter can be made easily to read them. Sharp LH534J Common 27C040 +--\/--+ +--\/--+ A17 |1 32| +5V VPP |1 32| +5V A18 |2 31| /OE A16 |2 31| A18 A15 |3 30| NC A15 |3 30| A17 A12 |4 29| A14 A12 |4 29| A14 A7 |5 28| A13 A7 |5 28| A13 A6 |6 27| A8 A6 |6 27| A8 A5 |7 26| A9 A5 |7 26| A9 A4 |8 25| A11 A4 |8 25| A11 A3 |9 24| A16 A3 |9 24| OE/ A2 |10 23| A10 A2 |10 23| A10 A1 |11 22| /CE A1 |11 22| CE/,PGM/ A0 |12 21| D7 A0 |12 21| D7 D0 |13 20| D6 D0 |13 20| D6 D1 |14 19| D5 D1 |14 19| D5 D2 |15 18| D4 D2 |15 18| D4 GND |16 17| D3 GND |16 17| D3 +------+ +------+ NSS-01-ROM-B |-------------------------------------------------------| | BAT1 SL3 CL1 CL2 SL5 CL6 CL7 | | CL3 SL1 SL2 CL5 SL6 SL7 | | CL4 SL4 | | IC1 | | | | | | IC2_PRG_ROM IC7_INST_ROM IC9 | | | | | |--| |--| |-------------------------------------------------| Notes: Battery is populated on this board, type CR2032 3V coin battery IC1 - LH5168 8k x8 SRAM (DIP28) IC2 - Program ROM IC7 - Instruction ROM IC9 - Unknown DIP8 chip Game Name IC2 IC2 Type IC7 IC7 Type Jumpers --------------------------------------------------------------------------------------------------------------- F-Zero NSS-FZ-0 LH534J NSS-R_IC3_FZ 27C256 CL1 CL2 CL3 CL4 CL5 CL6 CL7 - Short SL1 SL2 SL3 SL4 SL5 SL6 SL7 - Open --------------------------------------------------------------------------------------------------------------- NSS-01-ROM-C |-------------------------------------------------------| | BAT1 CL19 SL22 IC1_SRAM DIPSW8 | | CL18 SL21 | | CL17 SL20 | | CL15 SL16 IC2_PRG_ROM-1 | | SL12 | | CL13 SL14 | | CL5 SL11 | | CL6 SL10 IC3_PRG_ROM-0 IC8_INST_ROM IC10 | | CL3 SL9 | | CL4 SL8 | | SL1 CL2 SL7 | |--| |--| |-------------------------------------------------| Notes: Battery is not populated on this board for any games IC1 - 6116 2k x8 SRAM, not populated (DIP24) IC2/3 - Program ROM IC8 - Instruction ROM IC10 - Unknown DIP8 chip Game Name IC2 IC2 Type IC3 IC3 Type IC8 IC8 Type Jumpers --------------------------------------------------------------------------------------------------------------------------------------------------------- Actraiser NSS-R_IC2_AR TC574000 NSS-R_IC3_AR TC574000 NSS-R_IC8_AR 27C256 CL2 CL3 CL4 CL5 CL6 CL12 CL13 CL15 CL17 CL18 CL19 - Short SL1 SL7 SL8 SL9 SL10 SL11 SL12 SL14 SL16 SL20 SL21 SL22 - Open Addams Family NSS-R_IC2_AF TC574000 NSS-R_IC3_AF TC574000 NSS-R_IC8_AF 27C256 All games use the above jumper configuration. Amazing Tennis NSS-R_IC2_AT TC574000 NSS-R_IC3_AT TC574000 NSS-R_IC8_AT 27C256 Irem Skins Game NSS-R_IC2_MT TC574000 NSS-R_IC3_MT TC574000 NSS-R_IC8_MT 27C256 Lethal Weapon NSS-R_IC2_L3 TC574000 NSS-R_IC3_L3 TC574000 NSS-R_IC8_L3 27C256 NCAA Basketball NSS-R_IC2_DU TC574000 NSS-R_IC3_DU TC574000 NSS-R_IC8_DU 27C256 Robocop 3 NSS-R_IC2_R3 TC574000 NSS-R_IC3_R3 TC574000 NSS-R_IC8_R3 27C256 --------------------------------------------------------------------------------------------------------------------------------------------------------- NSS-01-ROM-C Sticker - NSS-X1-ROM-C (this is just a ROM-C board with a sticker over the top) (the differences being the SRAM and battery are populated) |-------------------------------------------------------| | BAT1 CL19 SL22 IC1_SRAM DIPSW8 | | CL18 SL21 | | CL17 SL20 | | CL15 SL16 IC2_PRG_ROM-1 | | SL12 | | CL13 SL14 | | CL5 SL11 | | CL6 SL10 IC3_PRG_ROM-0 IC8_INST_ROM IC10 | | CL3 SL9 | | CL4 SL8 | | SL1 CL2 SL7 | |--| |--| |-------------------------------------------------| Notes: Battery is populated on this board, type CR2032 3V coin battery IC1 - 6116 2k x8 SRAM, populated (DIP24) IC2/3 - Program ROM IC8 - Instruction ROM IC10 - Unknown DIP8 chip Game Name IC2 IC2 Type IC3 IC3 Type IC8 IC8 Type Jumpers ----------------------------------------------------------------------------------------------------------------------------------------------------- Contra III CONTRA_III_1 TC574000 CONTRA_III_0 TC574000 GAME1_NSSU 27C256 CL2 CL3 CL4 CL5 CL6 CL12 CL13 CL15 CL17 CL18 CL19 - Short SL1 SL7 SL8 SL9 SL10 SL11 SL12 SL14 SL16 SL20 SL21 SL22 - Open ----------------------------------------------------------------------------------------------------------------------------------------------------- ***************************************************************************/ #include "emu.h" #include "cpu/z80/z80.h" #include "includes/snes.h" class nss_state : public snes_state { public: nss_state(const machine_config &mconfig, device_type type, const char *tag) : snes_state(mconfig, type, tag) { } UINT8 m_m50458_rom_bank; UINT8 m_vblank_bit; DECLARE_READ8_MEMBER(nss_eeprom_r); DECLARE_WRITE8_MEMBER(nss_eeprom_w); DECLARE_READ8_MEMBER(m50458_r); DECLARE_WRITE8_MEMBER(m50458_w); DECLARE_READ8_MEMBER(port00_r); DECLARE_READ8_MEMBER(port01_r); DECLARE_READ8_MEMBER(port02_r); DECLARE_READ8_MEMBER(port03_r); DECLARE_WRITE8_MEMBER(port80_w); DECLARE_WRITE8_MEMBER(port82_w); DECLARE_READ8_MEMBER(spc_ram_100_r); DECLARE_WRITE8_MEMBER(spc_ram_100_w); }; static ADDRESS_MAP_START( snes_map, AS_PROGRAM, 8, nss_state ) AM_RANGE(0x000000, 0x2fffff) AM_READWRITE_LEGACY(snes_r_bank1, snes_w_bank1) /* I/O and ROM (repeats for each bank) */ AM_RANGE(0x300000, 0x3fffff) AM_READWRITE_LEGACY(snes_r_bank2, snes_w_bank2) /* I/O and ROM (repeats for each bank) */ AM_RANGE(0x400000, 0x5fffff) AM_READ_LEGACY(snes_r_bank3) /* ROM (and reserved in Mode 20) */ AM_RANGE(0x600000, 0x6fffff) AM_READWRITE_LEGACY(snes_r_bank4, snes_w_bank4) /* used by Mode 20 DSP-1 */ AM_RANGE(0x700000, 0x7dffff) AM_READWRITE_LEGACY(snes_r_bank5, snes_w_bank5) AM_RANGE(0x7e0000, 0x7fffff) AM_RAM /* 8KB Low RAM, 24KB High RAM, 96KB Expanded RAM */ AM_RANGE(0x800000, 0xbfffff) AM_READWRITE_LEGACY(snes_r_bank6, snes_w_bank6) /* Mirror and ROM */ AM_RANGE(0xc00000, 0xffffff) AM_READWRITE_LEGACY(snes_r_bank7, snes_w_bank7) /* Mirror and ROM */ ADDRESS_MAP_END READ8_MEMBER(nss_state::spc_ram_100_r) { device_t *device = machine().device("spc700"); return spc_ram_r(device, offset + 0x100); }
static READ8_DEVICE_HANDLER( spc_ram_100_r ) { return spc_ram_r(device, offset + 0x100); }
/*************************************************************************** nss.c Driver file to handle emulation of the Nintendo Super System. R. Belmont Anthony Kruize Based on the original MESS driver by Lee Hammerton (aka Savoury Snax) Driver is preliminary right now. The memory map included below is setup in a way to make it easier to handle Mode 20 and Mode 21 ROMs. Todo (in no particular order): - Fix additional sound bugs - Emulate extra chips - superfx, dsp2, sa-1 etc. - Add horizontal mosaic, hi-res. interlaced etc to video emulation. - Fix support for Mode 7. (In Progress) - Handle interleaved roms (maybe even multi-part roms, but how?) - Add support for running at 3.58Mhz at the appropriate time. - I'm sure there's lots more ... Nintendo Super System There is a second processor and Menu system for selecting the games controlling timer etc.? which still needs emulating there are dipswitches too *************************************************************************** Nintendo Super System Hardware Overview Nintendo, 1992 This system is basically a Super Nintendo with a timer. The main board has 3 slots on it and can accept up to 3 plug-in carts. The player can choose to play any of the available games, although I'm not sure why anyone would have wanted to pay money to play these games when the home SNES was selling as well ;-) The control panel was also just some SNES pads mounted into the arcade machine control panel.... not very usable as-is and very cheaply presented. PCB Layouts ----------- NSS-01-CPU MADE IN JAPAN (C) 1991 Nintendo |----------------------------------------------------| | HA13001 AN5836 | | SL4 SL2 CL2 SL3 | |-| CL1 SL1 | | |--------------| | |-| 14.31818MHz | SL5 | | | | | | IR3P32A | M50458 |-| |-| |-| | |J | VC1 21.47724MHz | | | | | | | |A | | | | | | | | | |M | CN6 | | | | | | | | |M |--------------| | | | | | | | |A |-------| |-------| | | | | | | | | 84256 |S-PPU1 | |S-CPU | | | | | | | | | |5C77-01| |5A22-02| | | | | | | | |-| |-------| |-------| | | | | | | | | | | | | | | | |-| |-------| |-------| | | | | | | | | 84256 |S-PPU2 | |S-WRAM | | | | | | | | |CN4 |5C78-01| |LH68120| | | | | | | | | |-------| |-------| | | | | | | | | | | | | | | | | | | | | | | | |CN3 | | | | | | | | 4MHz | | | | | | | | |-| |-| |-| | | CN11 CN12 CN13 | | Z84C0006 | |CN5 LH5168 | | | | M6M80011 | | | | S-3520 | |CN2 32.678kHz *MM1026 | | 5.5V NSS-C_IC14_02| |----------------------------------------------------| Notes: (The main board has many surface mounted logic chips and transistors on the lower side of the PCB which are not documented here. There's also a lot of custom Nintendo parts) IR3P32A - Sharp IR3P32A Special Function TV Interface Circuit, Conversion of color diff sig. & lumin. to RGB (NDIP30) M50458 - Mitsubishi M50458-001SP On-Screen Display (OSD) Chip (NDIP32) HA13001 - Hitachi Dual 5.5W Power Amplifier IC AN5836 - Matsushita AN5836 DC Volume and Tone Control IC (SIL12) 84256 - Fujitsu MB84256-10L 32k x8 SRAM (SOP28) LH5168 - Sharp LH5168N-10L 8k x8 SRAM (SOP28) Z84C0006- Zilog Z84C0006FEC Z80 CPU, clock input 4.000MHz (QFP44) M6M80011- Mitsubishi M6M80011 64 x16 Serial EEPROM (DIP8). Pinout..... 1 CS, 2 CLK, 3 DATA IN, 4 DATA OUT, 5 VSS, 6 RESET, 7 RDY, 8 VCC S-3520 - Seiko Epson S-3520 Real Time Clock (SOIC14) 5.5V - 5.5 volt supercap MM1026 - Mitsumi Monolithic IC MM1026BF System Reset with Battery Backup (SOIC8) VSync - 60Hz HSync - 15.57kHz * - This IC located underneath PCB NSS-C_IC14_02 - 27C256 EPROM (DIP28) CN11/12/13 - 50 pin connectors for game carts CN2 - 10 pin connector CN3 - 13 pin connector CN4 - 8 pin connector CN5 - 7 pin connector CN6 - 24 pin connector for plug in custom sound module Custom IC's - S-CPU (QFP100) S-PPU1 (QFP100) S-PPU2 (QFP100) S-WRAM (SOP64) Custom Sound Module (plugs in CN6) ---------------------------------- Note - This board is encased in a metal shield which is soldered together. MITSUMI ELEC CO. LTD. (C) 1990 Nintendo Co. Ltd. |-----------------------| | CN1 | | JRC2904 |---| | |-------| | | |S-SMP | | | | | D6376 | | |-------| 51832 | | | | |-------| | | |S-DSP | | | | | 51832 | | |-------| | |---| | | | |-----------------------| Notes: JRC2904 - Japan Radio Co. JRC2904 Dual Low Power Op Amp (SOIC8) D6376 - NEC D6376 Audio 2-Channel 16-Bit D/A Converter (SOIC16) 51832 - Toshiba TC51832FL-12 32k x8 SRAM (SOP28) CN1 - 24 pin connector to plug in custom sound module to main board S-SMP - Stamped 'Nintendo S-SMP (M) SONY (C) Nintendo '89' custom sound chip (QFP80) S-DSP - Stamped 'Nintendo S-DSP (M) (C) SONY '89' custom sound DSP (QFP80) Note - Without this PCB, the board will boot up and work, displaying the game selection menu, but once the game tries to load attract mode, the PCB resets. Game Carts ---------- There are 3 types of carts. The carts have only a few components on them, including some ROMs/sockets, a few logic chips/resistors/caps, a DIPSW8 block, one unknown DIP8 chip (with it's surface scratched) and some solder-jumper pads to config the ROM types. The unknown DIP8 chip is different per game also. There is a sticker on top with a 2-digit game code (I.E. MW/AT/L3 etc) NSS-01-ROM-A |-------------------------------------------------------| | SL3 CL1 | | CL3 SL1 IC1_PRG_ROM IC3_INST_ROM IC4 | |CL4 SL2 SL5 | |SL4 CL2 CL5 | |--| |--| |-------------------------------------------------| Notes: IC1 - Program ROM IC2 - Instruction ROM IC4 - Unknown DIP8 chip Game Name IC1 IC1 Type IC3 IC3 Type Jumpers ------------------------------------------------------------------------------------------------------- Super Mario World NSS-MW-0_PRG LH534J NSS-R_IC3_MW 27C256 CL1 CL2 CL3 CL4 CL5 - Short SL1 SL2 SL3 SL4 SL5 - Open Super Tennis NSS-ST-0 LH534J NSS-R_IC3_ST 27C256 CL1 CL2 CL3 CL4 CL5 - Short SL1 SL2 SL3 SL4 SL5 - Open Super Soccer NSS-R_IC1_FS TC574000 NSS-R_IC3_FS 27C256 CL1 CL2 CL3 CL4 CL5 - Open SL1 SL2 SL3 SL4 SL5 - Short ------------------------------------------------------------------------------------------------------- Note - By setting the jumpers to 'Super Soccer', the other 2 games can use standard EPROMs if required. LH534J is a 4MBit x8 MaskROM with non-standard pinout. An adapter can be made easily to read them. Sharp LH534J Common 27C040 +--\/--+ +--\/--+ A17 |1 32| +5V VPP |1 32| +5V A18 |2 31| /OE A16 |2 31| A18 A15 |3 30| NC A15 |3 30| A17 A12 |4 29| A14 A12 |4 29| A14 A7 |5 28| A13 A7 |5 28| A13 A6 |6 27| A8 A6 |6 27| A8 A5 |7 26| A9 A5 |7 26| A9 A4 |8 25| A11 A4 |8 25| A11 A3 |9 24| A16 A3 |9 24| OE/ A2 |10 23| A10 A2 |10 23| A10 A1 |11 22| /CE A1 |11 22| CE/,PGM/ A0 |12 21| D7 A0 |12 21| D7 D0 |13 20| D6 D0 |13 20| D6 D1 |14 19| D5 D1 |14 19| D5 D2 |15 18| D4 D2 |15 18| D4 GND |16 17| D3 GND |16 17| D3 +------+ +------+ NSS-01-ROM-B |-------------------------------------------------------| | BAT1 SL3 CL1 CL2 SL5 CL6 CL7 | | CL3 SL1 SL2 CL5 SL6 SL7 | | CL4 SL4 | | IC1 | | | | | | IC2_PRG_ROM IC7_INST_ROM IC9 | | | | | |--| |--| |-------------------------------------------------| Notes: Battery is populated on this board, type CR2032 3V coin battery IC1 - LH5168 8k x8 SRAM (DIP28) IC2 - Program ROM IC7 - Instruction ROM IC9 - Unknown DIP8 chip Game Name IC2 IC2 Type IC7 IC7 Type Jumpers --------------------------------------------------------------------------------------------------------------- F-Zero NSS-FZ-0 LH534J NSS-R_IC3_FZ 27C256 CL1 CL2 CL3 CL4 CL5 CL6 CL7 - Short SL1 SL2 SL3 SL4 SL5 SL6 SL7 - Open --------------------------------------------------------------------------------------------------------------- NSS-01-ROM-C |-------------------------------------------------------| | BAT1 CL19 SL22 IC1_SRAM DIPSW8 | | CL18 SL21 | | CL17 SL20 | | CL15 SL16 IC2_PRG_ROM-1 | | SL12 | | CL13 SL14 | | CL5 SL11 | | CL6 SL10 IC3_PRG_ROM-0 IC8_INST_ROM IC10 | | CL3 SL9 | | CL4 SL8 | | SL1 CL2 SL7 | |--| |--| |-------------------------------------------------| Notes: Battery is not populated on this board for any games IC1 - 6116 2k x8 SRAM, not populated (DIP24) IC2/3 - Program ROM IC8 - Instruction ROM IC10 - Unknown DIP8 chip Game Name IC2 IC2 Type IC3 IC3 Type IC8 IC8 Type Jumpers --------------------------------------------------------------------------------------------------------------------------------------------------------- Actraiser NSS-R_IC2_AR TC574000 NSS-R_IC3_AR TC574000 NSS-R_IC8_AR 27C256 CL2 CL3 CL4 CL5 CL6 CL12 CL13 CL15 CL17 CL18 CL19 - Short SL1 SL7 SL8 SL9 SL10 SL11 SL12 SL14 SL16 SL20 SL21 SL22 - Open Addams Family NSS-R_IC2_AF TC574000 NSS-R_IC3_AF TC574000 NSS-R_IC8_AF 27C256 All games use the above jumper configuration. Amazing Tennis NSS-R_IC2_AT TC574000 NSS-R_IC3_AT TC574000 NSS-R_IC8_AT 27C256 Irem Skins Game NSS-R_IC2_MT TC574000 NSS-R_IC3_MT TC574000 NSS-R_IC8_MT 27C256 Lethal Weapon NSS-R_IC2_L3 TC574000 NSS-R_IC3_L3 TC574000 NSS-R_IC8_L3 27C256 NCAA Basketball NSS-R_IC2_DU TC574000 NSS-R_IC3_DU TC574000 NSS-R_IC8_DU 27C256 Robocop 3 NSS-R_IC2_R3 TC574000 NSS-R_IC3_R3 TC574000 NSS-R_IC8_R3 27C256 --------------------------------------------------------------------------------------------------------------------------------------------------------- NSS-01-ROM-C Sticker - NSS-X1-ROM-C (this is just a ROM-C board with a sticker over the top) (the differences being the SRAM and battery are populated) |-------------------------------------------------------| | BAT1 CL19 SL22 IC1_SRAM DIPSW8 | | CL18 SL21 | | CL17 SL20 | | CL15 SL16 IC2_PRG_ROM-1 | | SL12 | | CL13 SL14 | | CL5 SL11 | | CL6 SL10 IC3_PRG_ROM-0 IC8_INST_ROM IC10 | | CL3 SL9 | | CL4 SL8 | | SL1 CL2 SL7 | |--| |--| |-------------------------------------------------| Notes: Battery is populated on this board, type CR2032 3V coin battery IC1 - 6116 2k x8 SRAM, populated (DIP24) IC2/3 - Program ROM IC8 - Instruction ROM IC10 - Unknown DIP8 chip Game Name IC2 IC2 Type IC3 IC3 Type IC8 IC8 Type Jumpers ----------------------------------------------------------------------------------------------------------------------------------------------------- Contra III CONTRA_III_1 TC574000 CONTRA_III_0 TC574000 GAME1_NSSU 27C256 CL2 CL3 CL4 CL5 CL6 CL12 CL13 CL15 CL17 CL18 CL19 - Short SL1 SL7 SL8 SL9 SL10 SL11 SL12 SL14 SL16 SL20 SL21 SL22 - Open ----------------------------------------------------------------------------------------------------------------------------------------------------- ***************************************************************************/ #include "driver.h" #include "cpu/spc700/spc700.h" #include "cpu/g65816/g65816.h" #include "includes/snes.h" static ADDRESS_MAP_START( snes_map, ADDRESS_SPACE_PROGRAM, 8) AM_RANGE(0x000000, 0x2fffff) AM_READWRITE(snes_r_bank1, snes_w_bank1) /* I/O and ROM (repeats for each bank) */ AM_RANGE(0x300000, 0x3fffff) AM_READWRITE(snes_r_bank2, snes_w_bank2) /* I/O and ROM (repeats for each bank) */ AM_RANGE(0x400000, 0x5fffff) AM_READWRITE(snes_r_bank3, SMH_ROM) /* ROM (and reserved in Mode 20) */ AM_RANGE(0x600000, 0x6fffff) AM_READWRITE(snes_r_bank4, snes_w_bank4) /* used by Mode 20 DSP-1 */ AM_RANGE(0x700000, 0x7dffff) AM_READWRITE(snes_r_bank5, snes_w_bank5) AM_RANGE(0x7e0000, 0x7fffff) AM_RAM /* 8KB Low RAM, 24KB High RAM, 96KB Expanded RAM */ AM_RANGE(0x800000, 0xbfffff) AM_READWRITE(snes_r_bank6, snes_w_bank6) /* Mirror and ROM */ AM_RANGE(0xc00000, 0xffffff) AM_READWRITE(snes_r_bank7, snes_w_bank7) /* Mirror and ROM */ ADDRESS_MAP_END static READ8_HANDLER( spc_ram_100_r ) { return spc_ram_r(space, offset + 0x100); }