Previous 199869 Revisions Next

r17489 Sunday 26th August, 2012 at 21:52:49 UTC by Angelo Salese
Update info and re-instate the URL for noca$h
[src/mame/drivers]nss.c

trunk/src/mame/drivers/nss.c
r17488r17489
11/***************************************************************************
22
3 nss.c
3   Nintendo Super System
44
5  Driver file to handle emulation of the Nintendo Super System.
5   driver by Angelo Salese, based off info from Nocash
66
7  R. Belmont
8  Anthony Kruize
9  Based on the original MESS driver by Lee Hammerton (aka Savoury Snax)
7   TODO:
8   - EEPROM
9   - Various M50458 bits
10   - Still dies at a cart check, why?
11   - OSD should actually super-impose with the SNES video somehow;
1012
11  Driver is preliminary right now.
12
13  The memory map included below is setup in a way to make it easier to handle
14  Mode 20 and Mode 21 ROMs.
15
16  Todo (in no particular order):
17    - Fix additional sound bugs
18    - Emulate extra chips - superfx, dsp2, sa-1 etc.
19    - Add horizontal mosaic, hi-res. interlaced etc to video emulation.
20    - Fix support for Mode 7. (In Progress)
21    - Handle interleaved roms (maybe even multi-part roms, but how?)
22    - Add support for running at 3.58Mhz at the appropriate time.
23    - I'm sure there's lots more ...
24
25    Nintendo Super System
26
27  There is a second processor and Menu system for selecting the games
28  controlling timer etc.? which still needs emulating there are dipswitches too
29
3013***************************************************************************
3114
3215Nintendo Super System Hardware Overview
r17488r17489
403386
404387*/
405388/*
389noca$h info @ nocash.emubase.de/fullsnes.htm
406390map
4073910x0000 - 0x7fff BIOS
4083920x8000 - 0x8fff RAM
r17488r17489
784768static MACHINE_CONFIG_START( snes, nss_state )
785769
786770   /* basic machine hardware */
787   MCFG_CPU_ADD("maincpu", _5A22, 3580000*6)   /* 2.68Mhz, also 3.58Mhz */
771   MCFG_CPU_ADD("maincpu", _5A22, MCLK_NTSC)   /* 2.68Mhz, also 3.58Mhz */
788772   MCFG_CPU_PROGRAM_MAP(snes_map)
789773
790774   MCFG_CPU_ADD("soundcpu", SPC700, 2048000/2)   /* 2.048 Mhz, but internal divider */
r17488r17489
10411025{
10421026   UINT8 *PROM = memregion("rp5h01")->base();
10431027   int i;
1044   UINT8 tmp;
10451028
10461029   DRIVER_INIT_CALL(snes);
10471030
10481031   for(i=0;i<0x10;i++)
1049   {
1050      tmp = BITSWAP8(PROM[i],0,1,2,3,4,5,6,7);
1051      PROM[i] = tmp ^ 0xff;
1052   }
1032      PROM[i] = BITSWAP8(PROM[i],0,1,2,3,4,5,6,7) ^ 0xff;
1033
10531034}
10541035
10551036GAME( 199?, nss,       0,     nss,      snes, snes_state,    snes,    ROT0, "Nintendo",                    "Nintendo Super System BIOS", GAME_IS_BIOS_ROOT )
1056GAME( 1992, nss_actr,  nss,   nss,      snes, nss_state,    nss,    ROT0, "Enix",                        "Act Raiser (Nintendo Super System)", GAME_NOT_WORKING | GAME_IMPERFECT_SOUND ) // sound sometimes dies, timing issues
1037GAME( 1992, nss_actr,  nss,   nss,      snes, nss_state,    nss,    ROT0, "Enix",                        "Act Raiser (Nintendo Super System)", GAME_NOT_WORKING | GAME_IMPERFECT_SOUND )
10571038GAME( 1992, nss_adam,  nss,   nss,      snes, nss_state,    nss,    ROT0, "Ocean",                       "The Addams Family (Nintendo Super System)", GAME_NOT_WORKING | GAME_IMPERFECT_SOUND )
10581039GAME( 1992, nss_aten,  nss,   nss,      snes, nss_state,    nss,    ROT0, "Absolute Entertainment Inc.", "David Crane's Amazing Tennis (Nintendo Super System)", GAME_IMPERFECT_SOUND | GAME_NOT_WORKING )
10591040GAME( 1992, nss_con3,  nss,   nss,      snes, nss_state,    nss,    ROT0, "Konami",                      "Contra 3: The Alien Wars (Nintendo Super System)", GAME_IMPERFECT_SOUND | GAME_NOT_WORKING )
10601041GAME( 1992, nss_lwep,  nss,   nss,      snes, nss_state,    nss,    ROT0, "Ocean",                       "Lethal Weapon (Nintendo Super System)", GAME_IMPERFECT_SOUND | GAME_NOT_WORKING )
10611042GAME( 1992, nss_ncaa,  nss,   nss,      snes, nss_state,    nss,    ROT0, "Sculptured Software Inc.",    "NCAA Basketball (Nintendo Super System)", GAME_IMPERFECT_SOUND | GAME_NOT_WORKING )
1062GAME( 1992, nss_rob3,  nss,   nss,      snes, nss_state,    nss,    ROT0, "Ocean",                       "Robocop 3 (Nintendo Super System)", GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) // any sprite minus Robocop is missing
1063GAME( 1992, nss_skin,  nss,   nss,      snes, nss_state,    nss,    ROT0, "Irem",                        "Skins Game (Nintendo Super System)", GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) // gfx issue caused by timing at start-up
1043GAME( 1992, nss_rob3,  nss,   nss,      snes, nss_state,    nss,    ROT0, "Ocean",                       "Robocop 3 (Nintendo Super System)", GAME_IMPERFECT_SOUND | GAME_NOT_WORKING )
1044GAME( 1992, nss_skin,  nss,   nss,      snes, nss_state,    nss,    ROT0, "Irem",                        "Skins Game (Nintendo Super System)", GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) // can't start
10641045GAME( 1992, nss_ssoc,  nss,   nss,      snes, nss_state,    nss,    ROT0, "Human Inc.",                  "Super Soccer (Nintendo Super System)", GAME_IMPERFECT_SOUND | GAME_NOT_WORKING )
10651046GAME( 1991, nss_smw,   nss,   nss,      snes, nss_state,    nss,    ROT0, "Nintendo",                    "Super Mario World (Nintendo Super System)", GAME_IMPERFECT_SOUND | GAME_NOT_WORKING )
10661047GAME( 1991, nss_fzer,  nss,   nss,      snes, nss_state,    nss,    ROT0, "Nintendo",                    "F-Zero (Nintendo Super System)", GAME_IMPERFECT_SOUND | GAME_NOT_WORKING )

Previous 199869 Revisions Next


© 1997-2024 The MAME Team