summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Angelo Salese <angelosa@users.noreply.github.com>2020-02-10 21:51:04 +0100
committer GitHub <noreply@github.com>2020-02-10 21:51:04 +0100
commitd9dc069219ed56deb2fecc856d4658f0cfec3efd (patch)
tree85671b3cd2c26ce5fc6b693a48e3dec2b1d9a4f7
parent44cf0a31600e35dc73d4f5dd0130be32f1430e20 (diff)
goodejan.cpp: OKI pin 7 is high from PCB readme, fix voice pitches [Angelo Salese]
-rw-r--r--src/mame/drivers/goodejan.cpp16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/mame/drivers/goodejan.cpp b/src/mame/drivers/goodejan.cpp
index b37a6c0223d..62d2072fb1d 100644
--- a/src/mame/drivers/goodejan.cpp
+++ b/src/mame/drivers/goodejan.cpp
@@ -66,7 +66,7 @@ Secret menu hack [totmejan only] (I couldn't find official way to enter, so it's
Keys: Z
PC=ECC72; 'HMODE' screen
-
+ TODO: find an actual way to access above, at worst find a suitable entry point -AS;
*******************************************************************************************/
@@ -573,18 +573,18 @@ static INPUT_PORTS_START( goodejan )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_DIPUNKNOWN_DIPLOC( 0x0080, 0x0080, "DSWA:8" )
- PORT_DIPNAME( 0x0300, 0x0100, "Starting Points" ) PORT_DIPLOCATION("DSWB:1,2")
+ PORT_DIPNAME( 0x0300, 0x0300, "Starting Points" ) PORT_DIPLOCATION("DSWB:1,2")
PORT_DIPSETTING( 0x0300, "1500" )
PORT_DIPSETTING( 0x0200, "2000" )
PORT_DIPSETTING( 0x0100, "1000" )
PORT_DIPSETTING( 0x0000, "3000" )
- PORT_DIPUNKNOWN_DIPLOC( 0x0400, 0x0400, "DSWB:3" )
- PORT_DIPUNKNOWN_DIPLOC( 0x0800, 0x0800, "DSWB:4" )
/* [totmejan] Game definitely uses these, reads these 2 bits and stores at address 01A28h as 0-1st bit;
Sub-routine at E7C19h does some arithmetic operations depending on these.
I cound't understand whats going on. Call performs just before dealing tiles. */
-
+ // TODO: difficulty dips ofc
+ PORT_DIPUNKNOWN_DIPLOC( 0x0400, 0x0400, "DSWB:3" )
+ PORT_DIPUNKNOWN_DIPLOC( 0x0800, 0x0800, "DSWB:4" )
PORT_DIPNAME( 0x1000, 0x1000, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("DSWB:5")
PORT_DIPSETTING( 0x1000, DEF_STR( On ) )
PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
@@ -595,8 +595,8 @@ static INPUT_PORTS_START( goodejan )
PORT_DIPUNKNOWN_DIPLOC( 0x8000, 0x8000, "DSWB:8" )
PORT_START("DSW2")
- PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_SERVICE1 )
- PORT_BIT( 0xfffe, IP_ACTIVE_LOW, IPT_UNKNOWN ) // 0x0002 must be kept low to work as service coin
+ PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_SERVICE1 )
+ PORT_BIT( 0xfffe, IP_ACTIVE_LOW, IPT_UNKNOWN ) // 0x0002 must be kept low to work as service coin
INPUT_PORTS_END
@@ -690,7 +690,7 @@ void goodejan_state::goodejan(machine_config &config)
ymsnd.irq_handler().set("seibu_sound", FUNC(seibu_sound_device::fm_irqhandler));
ymsnd.add_route(ALL_OUTPUTS, "mono", 1.0);
- okim6295_device &oki(OKIM6295(config, "oki", GOODEJAN_MHZ2/16, okim6295_device::PIN7_LOW));
+ okim6295_device &oki(OKIM6295(config, "oki", GOODEJAN_MHZ2/16, okim6295_device::PIN7_HIGH));
oki.add_route(ALL_OUTPUTS, "mono", 0.40);
seibu_sound_device &seibu_sound(SEIBU_SOUND(config, "seibu_sound", 0));