CAESAR Logo

Catalogue of Arcade Emulation Software - the Absolute Reference

Valid XHTML 1.0! Valid CSS!

X-Arcade

X-Arcade

Large CAESAR Logo

nss.c

0.100u2 [R. Belmont, Anthony Kruize]

0.71u2 [MESS, Pierpaolo Prazzoli, David Haywood]


TODO:

- 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.

- There is a second processor and Menu system for selecting the games controlling timer etc.? which still needs emulating there are dipswitches too.

- I'm sure there's lots more...


NOTES:

- Hardware: 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. 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).

- Driver based on the original MESS driver by Lee Hammerton (aka Savoury Snax).


WIP:

- 0.111u5: Nathan Woods updated the Nintendo 2C03B PPU video driver to use the new BITMAP_ADDR* macros instead of using the line[] array.

- 0.110u4: R. Belmont reworked the SNES raster timing to use MDRV_SCREEN_RAW_PARAMS() and friends. All but one of the "electronics tests" in the SNES diagnostics cart now pass with flying colors. Changed visible area to 256x224.

- 0.105u1: Aaron Giles modified a number of drivers that were using empty RAM regions for RAM or which had extraneous memory regions. Most significant changes were to the arcadia, nss and stv drivers. Changed user3 roms to 'flags dispose'.

- 0.102u3: NSS/SNES updates from latest MESS [R. Belmont]: Improved memory mapping, improved raster timing, added HIRQ support and better VIRQ support, improved joypad support, DSP-1 support (including all subtypes), counter latching support, fixed OAM read/write and fixed stereo sound. Changed G65C816 CPU1 clock speed to 3580000 Hz and added dsp1data.bin (DSP add-on chip ROM) to the BIOS set.

- 6th December 2005: R. Belmont - Finally found the typo in MESS that prevented the SNES sound from being in full stereo. Updated MAME's NSS/SNES code to the latest MESS.

- 10th October 2005: R. Belmont - I added DSP1 support to the MESS SNES emulation, only to discover most of those games required more advanced timing than was currently supported. With some tips from Aaron Giles, I reworked the main raster timing and it's greatly improved those games (and broken several others, but I'll deal with that next).

- 0.100u4: More NSS updates [R. Belmont]: This is mostly for MESS's benefit but nss_ncaa improves from it too. SPC700: Fixed operand order for SBC to memory. SNESHW: Implemented unknown DMA & HDMA modes. SNESHW: Fixed SRAM sizing (used as protection in some games). SNESHW: Boosted interleave. Fixed scroll registers to work like real hardware. Fixed timing of OAM address reset and range/time over reset to better match real hardware. Fixed missing "break" for HDMA mode 5. Fixed behavior of OLDJOYx registers when auto-read is enabled. Changed BIOS SPC700 cpu2 rom to user5 and changed visible area to 512x480 in all games.

- 30th September 2005: R. Belmont - Made some additional fixes to the SNES emulation in MAME/MESS that didn't make it into u3 (curse Aaron and his unpredictableness). Sound now works in more games, including the Earthworm Jim series and NCAA Basketball. Also corrected the save RAM size so games like Super Mario All-Stars and Donkey Kong Country don't think you have a copier connected.

- 0.100u3: Nintendo Super System sound update [R. Belmont]: Fixed bugs in SPC700 ADC, SBC, ADDW, SUBW, MUL, DIV and CLRV opcodes. Fixed several APU hardware/timer issues. Added accurate sound DSP emulation from the latest OpenSPC. Result: Generally accurate sound in the working NSS games and in many SNES games over in MESS as well. Added new SPC700 cpu2 BIOS rom. Changed SPC700 CPU2 clock speed to 1024000 Hz.

- 29th September 2005: R. Belmont - I've submitted working SNES hardware sound to MAME and MESS. In MAME this impacts the nss_* games, and in MESS it should be obvious. There are some remaining SPC700 bugs left but many games play perfectly or nearly so. The DSP emulation is used by kind permission of the author of OpenSPC, which gives the closest output possible to a real SNES.

- 0.100u2: R. Belmont fixed disassembly of 2 SPC700 instructions, fixed behavior of the APU port clear flag to not clobber the output ports - games now can boot and run without the "APU skipper" and fixed SPC700 CMP instruction flags.

- 0.98u2: Aaron Giles replaced direct access to Machine->scrbitmap in the following drivers with the use of force_partial_update(): m92.c, m107.c, astrocde.c, battlera.c and snes.c.

- 24th February 2005: Guru - Nintendo Super System & 3 carts arrived, purchased by Randy on eBay. Thanks to all that chipped-in for donations.

- 22nd February 2005: Guru - Nintendo Super System motherboard and carts (Super Mario World, Super Tennis, Amazing Tennis, Lethal Weapon, Super Soccer, Act Raiser, F-Zero, Robocop 3, Contra 3, Addams Family, NCAA Basketball and Irem Skins Game) just arrived.

- 0.88u2: Aaron Giles moved gamename prefixes to end in DECO Cassette, Mega Play, Mega-Tech, Nintendo Super System and PlayChoice-10 games.

- 0.79u3: Nathan Woods removed a duplicate global variable definition in src/sndhrdw/snes.c

- 0.79u2: Nathan Woods refactored to remove MESS specific code in src/machine/snes.c

- 9th February 2004: Nathan Woods sent in miscellaneous fixes to the NSS driver.

- 0.77u3: Added stereo sound.

- 12th December 2003: Nathan Woods sent an update to the Nintendo Super System driver with miscellaneous changes and improvements.

- 0.72: Pierpaolo Prazzoli fixes the Nintendo Super System (G65C816 CPU, driver and machine).

- 12th July 2003: Phil Stroffolino sent in a major improvement to the Namco Super System 22 driver.

- 8th July 2003: David Haywood re-added the Nintendo Super System driver based on the MESS SNES driver, but it's still not working very well.

- 14th February 2003: Pierpaolo Prazzoli ported the SNES driver from MESS and modified it to run some Nintendo Super System games.