Added diplocations to finalizr.c, gradius3.c, pandoras.c, rollerg.c and ultraman.c based on Guru's notes (thanks to AJG, who fwded them to me)

This commit is contained in:
Fabio Priuli 2009-04-03 08:28:28 +00:00
parent 10f7d87f23
commit 1b36368651
5 changed files with 73 additions and 71 deletions

View File

@ -4,6 +4,10 @@ Finalizer (GX523) (c) 1985 Konami
driver by Nicola Salmoria driver by Nicola Salmoria
2009-03:
Added dsw locations and verified factory setting based on Guru's notes
(actualy for finalizr only, finalizb locations assumed to be the same)
***************************************************************************/ ***************************************************************************/
#include "driver.h" #include "driver.h"
@ -155,45 +159,41 @@ static INPUT_PORTS_START( finalizr )
KONAMI8_COCKTAIL_B12_UNK KONAMI8_COCKTAIL_B12_UNK
PORT_START("DSW1") PORT_START("DSW1")
KONAMI_COINAGE(DEF_STR( Free_Play ), "No Coin B") KONAMI_COINAGE_LOC(DEF_STR( Free_Play ), "No Coin B", SW1)
/* "No Coin B" = coins produce sound, but no effect on coin counter */ /* "No Coin B" = coins produce sound, but no effect on coin counter */
PORT_START("DSW2") PORT_START("DSW2")
PORT_DIPNAME( 0x03, 0x02, DEF_STR( Lives ) ) PORT_DIPNAME( 0x03, 0x02, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1,2")
PORT_DIPSETTING( 0x03, "2" ) PORT_DIPSETTING( 0x03, "2" )
PORT_DIPSETTING( 0x02, "3" ) PORT_DIPSETTING( 0x02, "3" )
PORT_DIPSETTING( 0x01, "4" ) PORT_DIPSETTING( 0x01, "4" )
PORT_DIPSETTING( 0x00, "7" ) PORT_DIPSETTING( 0x00, "7" )
PORT_DIPNAME( 0x04, 0x00, DEF_STR( Cabinet ) ) PORT_DIPNAME( 0x04, 0x00, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW2:3")
PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) PORT_DIPSETTING( 0x00, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x04, DEF_STR( Cocktail ) ) PORT_DIPSETTING( 0x04, DEF_STR( Cocktail ) )
PORT_DIPNAME( 0x18, 0x18, DEF_STR( Bonus_Life ) ) PORT_DIPNAME( 0x18, 0x18, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:4,5")
PORT_DIPSETTING( 0x18, "30000 150000" ) PORT_DIPSETTING( 0x18, "30000 150000" )
PORT_DIPSETTING( 0x10, "50000 300000" ) PORT_DIPSETTING( 0x10, "50000 300000" )
PORT_DIPSETTING( 0x08, "30000" ) PORT_DIPSETTING( 0x08, "30000" )
PORT_DIPSETTING( 0x00, "50000" ) PORT_DIPSETTING( 0x00, "50000" )
PORT_DIPNAME( 0x60, 0x40, DEF_STR( Difficulty ) ) PORT_DIPNAME( 0x60, 0x40, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:6,7")
PORT_DIPSETTING( 0x60, DEF_STR( Easy ) ) PORT_DIPSETTING( 0x60, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x40, DEF_STR( Normal ) ) PORT_DIPSETTING( 0x40, DEF_STR( Normal ) )
PORT_DIPSETTING( 0x20, DEF_STR( Hard ) ) PORT_DIPSETTING( 0x20, DEF_STR( Hard ) )
PORT_DIPSETTING( 0x00, DEF_STR( Very_Hard ) ) PORT_DIPSETTING( 0x00, DEF_STR( Very_Hard ) )
PORT_DIPNAME( 0x80, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPNAME( 0x80, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:8")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START("DSW3") PORT_START("DSW3")
PORT_DIPNAME( 0x01, 0x00, DEF_STR( Flip_Screen ) ) PORT_DIPNAME( 0x01, 0x00, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW3:1")
PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x01, DEF_STR( On ) ) PORT_DIPSETTING( 0x01, DEF_STR( On ) )
PORT_DIPNAME( 0x02, 0x02, DEF_STR( Controls ) ) PORT_DIPNAME( 0x02, 0x02, DEF_STR( Controls ) ) PORT_DIPLOCATION("SW3:2")
PORT_DIPSETTING( 0x02, DEF_STR( Single ) ) PORT_DIPSETTING( 0x02, DEF_STR( Single ) )
PORT_DIPSETTING( 0x00, DEF_STR( Dual ) ) PORT_DIPSETTING( 0x00, DEF_STR( Dual ) )
PORT_DIPNAME( 0x04, 0x04, DEF_STR( Service_Mode ) ) PORT_SERVICE_DIPLOC( 0x04, IP_ACTIVE_LOW, "SW3:3" )
PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) PORT_DIPUNUSED_DIPLOC( 0x08, 0x08, "SW3:4" )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unused ) )
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNKNOWN )
INPUT_PORTS_END INPUT_PORTS_END
@ -201,16 +201,16 @@ static INPUT_PORTS_START( finalizb )
PORT_INCLUDE( finalizr ) PORT_INCLUDE( finalizr )
PORT_MODIFY("DSW2") PORT_MODIFY("DSW2")
PORT_DIPNAME( 0x18, 0x18, DEF_STR( Bonus_Life ) ) PORT_DIPNAME( 0x18, 0x18, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:4,5")
PORT_DIPSETTING( 0x18, "20000 100000" ) PORT_DIPSETTING( 0x18, "20000 100000" )
PORT_DIPSETTING( 0x10, "30000 150000" ) PORT_DIPSETTING( 0x10, "30000 150000" )
PORT_DIPSETTING( 0x08, "20000" ) PORT_DIPSETTING( 0x08, "20000" )
PORT_DIPSETTING( 0x00, "30000" ) PORT_DIPSETTING( 0x00, "30000" )
PORT_DIPUNKNOWN( 0x20, 0x20 ) PORT_DIPUNKNOWN_DIPLOC( 0x20, 0x20, "SW2:6" )
PORT_DIPUNKNOWN( 0x40, 0x40 ) PORT_DIPUNKNOWN_DIPLOC( 0x40, 0x40, "SW2:7" )
PORT_MODIFY("DSW3") PORT_MODIFY("DSW3")
PORT_DIPUNKNOWN( 0x08, 0x08 ) PORT_DIPUNKNOWN_DIPLOC( 0x08, 0x08, "SW3:4" )
INPUT_PORTS_END INPUT_PORTS_END

View File

@ -13,6 +13,9 @@ my way in.
There's also something wrong in the way tile banks are implemented in There's also something wrong in the way tile banks are implemented in
konamiic.c. They don't seem to be used by this game. konamiic.c. They don't seem to be used by this game.
2009-03:
Added dsw locations and verified factory setting based on Guru's notes
***************************************************************************/ ***************************************************************************/
#include "driver.h" #include "driver.h"
@ -232,43 +235,41 @@ static INPUT_PORTS_START( gradius3 )
KONAMI8_COCKTAIL_B123_UNK KONAMI8_COCKTAIL_B123_UNK
PORT_START("DSW1") PORT_START("DSW1")
KONAMI_COINAGE(DEF_STR( Free_Play ), "Invalid") KONAMI_COINAGE_LOC(DEF_STR( Free_Play ), "Invalid", SW1)
/* "Invalid" = both coin slots disabled */ /* "Invalid" = both coin slots disabled */
PORT_START("DSW2") PORT_START("DSW2")
PORT_DIPNAME( 0x03, 0x02, DEF_STR( Lives ) ) PORT_DIPNAME( 0x03, 0x02, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1,2")
PORT_DIPSETTING( 0x03, "2" ) PORT_DIPSETTING( 0x03, "2" )
PORT_DIPSETTING( 0x02, "3" ) PORT_DIPSETTING( 0x02, "3" )
PORT_DIPSETTING( 0x01, "5" ) PORT_DIPSETTING( 0x01, "5" )
PORT_DIPSETTING( 0x00, "7" ) PORT_DIPSETTING( 0x00, "7" )
PORT_DIPNAME( 0x04, 0x00, DEF_STR( Cabinet ) ) PORT_DIPNAME( 0x04, 0x00, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW2:3")
PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) PORT_DIPSETTING( 0x00, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x04, DEF_STR( Cocktail ) ) PORT_DIPSETTING( 0x04, DEF_STR( Cocktail ) )
PORT_DIPNAME( 0x18, 0x18, DEF_STR( Bonus_Life ) ) PORT_DIPNAME( 0x18, 0x18, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:4,5")
PORT_DIPSETTING( 0x18, "20000 and every 70000" ) PORT_DIPSETTING( 0x18, "20k and every 70k" )
PORT_DIPSETTING( 0x10, "100000 and every 100000" ) PORT_DIPSETTING( 0x10, "100k and every 100k" )
PORT_DIPSETTING( 0x08, "50000" ) PORT_DIPSETTING( 0x08, "50k only" )
PORT_DIPSETTING( 0x00, "100000" ) PORT_DIPSETTING( 0x00, "100k only" )
PORT_DIPNAME( 0x60, 0x40, DEF_STR( Difficulty ) ) PORT_DIPNAME( 0x60, 0x40, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:6,7")
PORT_DIPSETTING( 0x60, DEF_STR( Easy ) ) PORT_DIPSETTING( 0x60, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x40, DEF_STR( Normal ) ) PORT_DIPSETTING( 0x40, DEF_STR( Normal ) )
PORT_DIPSETTING( 0x20, DEF_STR( Hard ) ) PORT_DIPSETTING( 0x20, DEF_STR( Hard ) )
PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) )
PORT_DIPNAME( 0x80, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPNAME( 0x80, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:8")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START("DSW3") PORT_START("DSW3")
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) ) PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW3:1")
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x02, 0x02, "Upright Controls" ) PORT_DIPNAME( 0x02, 0x02, "Upright Controls" ) PORT_DIPLOCATION("SW3:2")
PORT_DIPSETTING( 0x02, DEF_STR( Single ) ) PORT_DIPSETTING( 0x02, DEF_STR( Single ) )
PORT_DIPSETTING( 0x00, DEF_STR( Dual ) ) PORT_DIPSETTING( 0x00, DEF_STR( Dual ) )
PORT_SERVICE( 0x04, IP_ACTIVE_LOW ) PORT_SERVICE_DIPLOC( 0x04, IP_ACTIVE_LOW, "SW3:3" )
PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) PORT_DIPUNKNOWN_DIPLOC( 0x08, 0x08, "SW3:4" ) /* Manual says it's unused */
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED )
INPUT_PORTS_END INPUT_PORTS_END

View File

@ -11,6 +11,10 @@ TODO:
- CPU B continuously reads from 1e00. It seems to be important, could be a - CPU B continuously reads from 1e00. It seems to be important, could be a
scanline counter or something like that. scanline counter or something like that.
2009-03:
Added dsw locations and verified factory setting based on Guru's notes
(DSW3 not mentioned)
***************************************************************************/ ***************************************************************************/
#include "driver.h" #include "driver.h"
@ -202,29 +206,29 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( pandoras ) static INPUT_PORTS_START( pandoras )
PORT_START("DSW1") PORT_START("DSW1")
KONAMI_COINAGE(DEF_STR( Free_Play ), "No Coin B") KONAMI_COINAGE_LOC(DEF_STR( Free_Play ), "No Coin B", SW1)
/* "No Coin B" = coins produce sound, but no effect on coin counter */ /* "No Coin B" = coins produce sound, but no effect on coin counter */
PORT_START("DSW2") PORT_START("DSW2")
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1,2")
PORT_DIPSETTING( 0x03, "3" ) PORT_DIPSETTING( 0x03, "3" )
PORT_DIPSETTING( 0x02, "4" ) PORT_DIPSETTING( 0x02, "4" )
PORT_DIPSETTING( 0x01, "5" ) PORT_DIPSETTING( 0x01, "5" )
PORT_DIPSETTING( 0x00, "7" ) PORT_DIPSETTING( 0x00, "7" )
PORT_DIPNAME( 0x04, 0x00, DEF_STR( Cabinet ) ) PORT_DIPNAME( 0x04, 0x00, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW2:3")
PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) PORT_DIPSETTING( 0x00, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x04, DEF_STR( Cocktail ) ) PORT_DIPSETTING( 0x04, DEF_STR( Cocktail ) )
PORT_DIPNAME( 0x18, 0x18, DEF_STR( Bonus_Life ) ) PORT_DIPNAME( 0x18, 0x18, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:4,5")
PORT_DIPSETTING( 0x18, "20k and every 60k" ) PORT_DIPSETTING( 0x18, "20k and every 60k" )
PORT_DIPSETTING( 0x10, "30k and every 70k" ) PORT_DIPSETTING( 0x10, "30k and every 70k" )
PORT_DIPSETTING( 0x08, "20k" ) PORT_DIPSETTING( 0x08, "20k" )
PORT_DIPSETTING( 0x00, "30k" ) PORT_DIPSETTING( 0x00, "30k" )
PORT_DIPNAME( 0x60, 0x40, DEF_STR( Difficulty ) ) PORT_DIPNAME( 0x60, 0x40, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:6,7")
PORT_DIPSETTING( 0x60, DEF_STR( Easy ) ) PORT_DIPSETTING( 0x60, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x40, DEF_STR( Normal ) ) PORT_DIPSETTING( 0x40, DEF_STR( Normal ) )
PORT_DIPSETTING( 0x20, "Difficult" ) PORT_DIPSETTING( 0x20, "Difficult" )
PORT_DIPSETTING( 0x00, "Very Difficult" ) PORT_DIPSETTING( 0x00, "Very Difficult" )
PORT_DIPNAME( 0x80, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPNAME( 0x80, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:8")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )

View File

@ -4,6 +4,10 @@ Rollergames (GX999) (c) 1991 Konami
driver by Nicola Salmoria driver by Nicola Salmoria
2009-03:
Added dsw locations and verified factory settings based on Guru's notes
***************************************************************************/ ***************************************************************************/
#include "driver.h" #include "driver.h"
@ -153,7 +157,7 @@ static INPUT_PORTS_START( rollerg )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
PORT_START("DSW1") PORT_START("DSW1")
PORT_DIPNAME( 0x0f, 0x0f, DEF_STR( Coin_A ) ) PORT_DIPNAME( 0x0f, 0x0f, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW1:1,2,3,4")
PORT_DIPSETTING( 0x02, DEF_STR( 4C_1C ) ) PORT_DIPSETTING( 0x02, DEF_STR( 4C_1C ) )
PORT_DIPSETTING( 0x05, DEF_STR( 3C_1C ) ) PORT_DIPSETTING( 0x05, DEF_STR( 3C_1C ) )
PORT_DIPSETTING( 0x08, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x08, DEF_STR( 2C_1C ) )
@ -170,7 +174,7 @@ static INPUT_PORTS_START( rollerg )
PORT_DIPSETTING( 0x0a, DEF_STR( 1C_6C ) ) PORT_DIPSETTING( 0x0a, DEF_STR( 1C_6C ) )
PORT_DIPSETTING( 0x09, DEF_STR( 1C_7C ) ) PORT_DIPSETTING( 0x09, DEF_STR( 1C_7C ) )
PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) ) PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) )
PORT_DIPNAME( 0xf0, 0xf0, DEF_STR( Coin_B ) ) PORT_DIPNAME( 0xf0, 0xf0, DEF_STR( Coin_B ) ) PORT_DIPLOCATION("SW1:5,6,7,8")
PORT_DIPSETTING( 0x20, DEF_STR( 4C_1C ) ) PORT_DIPSETTING( 0x20, DEF_STR( 4C_1C ) )
PORT_DIPSETTING( 0x50, DEF_STR( 3C_1C ) ) PORT_DIPSETTING( 0x50, DEF_STR( 3C_1C ) )
PORT_DIPSETTING( 0x80, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x80, DEF_STR( 2C_1C ) )
@ -190,39 +194,33 @@ static INPUT_PORTS_START( rollerg )
/* No Credits = both coin slots open, but no effect on coin counters */ /* No Credits = both coin slots open, but no effect on coin counters */
PORT_START("DSW2") PORT_START("DSW2")
PORT_DIPNAME( 0x03, 0x02, DEF_STR( Lives ) ) PORT_DIPNAME( 0x03, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1,2")
PORT_DIPSETTING( 0x03, "1" ) PORT_DIPSETTING( 0x03, "1" )
PORT_DIPSETTING( 0x02, "2" ) PORT_DIPSETTING( 0x02, "2" )
PORT_DIPSETTING( 0x01, "3" ) PORT_DIPSETTING( 0x01, "3" )
PORT_DIPSETTING( 0x00, "5" ) PORT_DIPSETTING( 0x00, "5" )
PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) PORT_DIPUNKNOWN_DIPLOC( 0x04, 0x04, "SW2:3" ) /* Manual says it's unused */
PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) PORT_DIPNAME( 0x18, 0x10, "Bonus Energy" ) PORT_DIPLOCATION("SW2:4,5")
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x18, 0x10, "Bonus Energy" )
PORT_DIPSETTING( 0x00, "1/2 for Stage Winner" ) PORT_DIPSETTING( 0x00, "1/2 for Stage Winner" )
PORT_DIPSETTING( 0x08, "1/4 for Stage Winner" ) PORT_DIPSETTING( 0x08, "1/4 for Stage Winner" )
PORT_DIPSETTING( 0x10, "1/4 for Cycle Winner" ) PORT_DIPSETTING( 0x10, "1/4 for Cycle Winner" )
PORT_DIPSETTING( 0x18, DEF_STR( None ) ) PORT_DIPSETTING( 0x18, DEF_STR( None ) )
PORT_DIPNAME( 0x60, 0x40, DEF_STR( Difficulty ) ) PORT_DIPNAME( 0x60, 0x40, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:6,7")
PORT_DIPSETTING( 0x60, DEF_STR( Easy ) ) PORT_DIPSETTING( 0x60, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x40, DEF_STR( Normal ) ) PORT_DIPSETTING( 0x40, DEF_STR( Normal ) )
PORT_DIPSETTING( 0x20, DEF_STR( Hard ) ) PORT_DIPSETTING( 0x20, DEF_STR( Hard ) )
PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) )
PORT_DIPNAME( 0x80, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPNAME( 0x80, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:8")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START("DSW3") PORT_START("DSW3")
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) ) PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW3:1")
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SW3:2" ) /* Manual says it's unused */
PORT_DIPSETTING( 0x02, DEF_STR( Off ) ) PORT_SERVICE_DIPLOC( 0x04, IP_ACTIVE_LOW, "SW3:3" )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPUNKNOWN_DIPLOC( 0x08, 0x08, "SW3:4" ) /* Manual says it's unused */
PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )

View File

@ -4,6 +4,9 @@ Ultraman (c) 1991 Banpresto / Bandai
Driver by Manuel Abadia <manu@teleline.es> Driver by Manuel Abadia <manu@teleline.es>
2009-03:
Added dsw locations and verified factory setting based on Guru's notes
***************************************************************************/ ***************************************************************************/
#include "driver.h" #include "driver.h"
@ -176,7 +179,7 @@ static INPUT_PORTS_START( ultraman )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2)
PORT_START("DSW1") PORT_START("DSW1")
PORT_DIPNAME( 0x0f, 0x0f, DEF_STR( Coin_A ) ) PORT_DIPNAME( 0x0f, 0x0f, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW1:8,7,6,5")
PORT_DIPSETTING( 0x02, DEF_STR( 4C_1C ) ) PORT_DIPSETTING( 0x02, DEF_STR( 4C_1C ) )
PORT_DIPSETTING( 0x05, DEF_STR( 3C_1C ) ) PORT_DIPSETTING( 0x05, DEF_STR( 3C_1C ) )
PORT_DIPSETTING( 0x08, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x08, DEF_STR( 2C_1C ) )
@ -193,7 +196,7 @@ static INPUT_PORTS_START( ultraman )
PORT_DIPSETTING( 0x0a, DEF_STR( 1C_6C ) ) PORT_DIPSETTING( 0x0a, DEF_STR( 1C_6C ) )
PORT_DIPSETTING( 0x09, DEF_STR( 1C_7C ) ) PORT_DIPSETTING( 0x09, DEF_STR( 1C_7C ) )
PORT_DIPSETTING( 0x00, "No Coin A" ) PORT_DIPSETTING( 0x00, "No Coin A" )
PORT_DIPNAME( 0xf0, 0xf0, DEF_STR( Coin_B ) ) PORT_DIPNAME( 0xf0, 0xf0, DEF_STR( Coin_B ) ) PORT_DIPLOCATION("SW1:4,3,2,1")
PORT_DIPSETTING( 0x20, DEF_STR( 4C_1C ) ) PORT_DIPSETTING( 0x20, DEF_STR( 4C_1C ) )
PORT_DIPSETTING( 0x50, DEF_STR( 3C_1C ) ) PORT_DIPSETTING( 0x50, DEF_STR( 3C_1C ) )
PORT_DIPSETTING( 0x80, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x80, DEF_STR( 2C_1C ) )
@ -210,31 +213,27 @@ static INPUT_PORTS_START( ultraman )
PORT_DIPSETTING( 0xb0, DEF_STR( 1C_5C ) ) PORT_DIPSETTING( 0xb0, DEF_STR( 1C_5C ) )
PORT_DIPSETTING( 0xa0, DEF_STR( 1C_6C ) ) PORT_DIPSETTING( 0xa0, DEF_STR( 1C_6C ) )
PORT_DIPSETTING( 0x90, DEF_STR( 1C_7C ) ) PORT_DIPSETTING( 0x90, DEF_STR( 1C_7C ) )
PORT_DIPSETTING( 0x00, "No Coin B" ) PORT_DIPSETTING( 0x00, "No Coin B" ) /* 5C_3C according to manual, but it's not true */
/* No Coin X = coin slot X open (coins produce sound), but no effect on coin counter */ /* No Coin X = coin slot X open (coins produce sound), but no effect on coin counter */
PORT_START("DSW2") PORT_START("DSW2")
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) ) /* Manual states dips 1 & 2 are "Unused" */ PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SW2:8" ) /* Manual states it's "Unused" */
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SW2:7" ) /* Manual states it's "Unused" */
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPNAME( 0x04, 0x04, DEF_STR( Allow_Continue ) ) PORT_DIPLOCATION("SW2:6")
PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unused ) )
PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x04, 0x04, DEF_STR( Allow_Continue ) )
PORT_DIPSETTING( 0x00, DEF_STR( No ) ) PORT_DIPSETTING( 0x00, DEF_STR( No ) )
PORT_DIPSETTING( 0x04, DEF_STR( Yes ) ) PORT_DIPSETTING( 0x04, DEF_STR( Yes ) )
PORT_DIPNAME( 0x08, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPNAME( 0x08, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:5")
PORT_DIPSETTING( 0x08, DEF_STR( Off ) ) PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x30, 0x30, DEF_STR( Difficulty ) ) PORT_DIPNAME( 0x30, 0x30, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:4,3")
PORT_DIPSETTING( 0x10, DEF_STR( Easy ) ) PORT_DIPSETTING( 0x10, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x30, DEF_STR( Normal ) ) PORT_DIPSETTING( 0x30, DEF_STR( Normal ) )
PORT_DIPSETTING( 0x20, DEF_STR( Hard ) ) PORT_DIPSETTING( 0x20, DEF_STR( Hard ) )
PORT_DIPSETTING( 0x00, DEF_STR( Very_Hard ) ) PORT_DIPSETTING( 0x00, DEF_STR( Very_Hard ) )
PORT_DIPNAME( 0x40, 0x40, "Upright Controls" ) PORT_DIPNAME( 0x40, 0x40, "Upright Controls" ) PORT_DIPLOCATION("SW2:2")
PORT_DIPSETTING( 0x40, DEF_STR( Single ) ) PORT_DIPSETTING( 0x40, DEF_STR( Single ) )
PORT_DIPSETTING( 0x00, DEF_STR( Dual ) ) PORT_DIPSETTING( 0x00, DEF_STR( Dual ) )
PORT_DIPNAME( 0x80, 0x00, DEF_STR( Cabinet ) ) PORT_DIPNAME( 0x80, 0x00, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW2:1")
PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) PORT_DIPSETTING( 0x00, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x80, DEF_STR( Cocktail ) ) PORT_DIPSETTING( 0x80, DEF_STR( Cocktail ) )
INPUT_PORTS_END INPUT_PORTS_END