From 9fa2a3791a243cbb9a6198867b5764d1f0fa1868 Mon Sep 17 00:00:00 2001 From: Robbbert Date: Mon, 17 Jan 2022 04:25:52 +1100 Subject: gts80,gts3: more multiball keycodes --- src/mame/drivers/gts3.cpp | 82 ++++++++++++++++++--------------------------- src/mame/drivers/gts80.cpp | 17 +++++----- src/mame/drivers/gts80a.cpp | 28 ++++++++-------- src/mame/drivers/gts80b.cpp | 59 ++++++++++++++++++-------------- 4 files changed, 88 insertions(+), 98 deletions(-) diff --git a/src/mame/drivers/gts3.cpp b/src/mame/drivers/gts3.cpp index acbca8462d0..e3901dd7c69 100644 --- a/src/mame/drivers/gts3.cpp +++ b/src/mame/drivers/gts3.cpp @@ -12,32 +12,41 @@ Setting up: - Press 1 (to load factory defaults) - Press 1 (to select English) - Press num-0 until the credit settings appear (settings #9,10,11) -- On each of the 3 coin slots, press num-1/num-2 to set to 1 credit. +- On each of the 3 coin slots, press num1/num2 to set to 1 credit. - Press F3 or 0 - Now you can play -Setting up for surfnsaf,opthund,tt_game,ccruise: -- Press 0 and follow instructions -- Use A and B to cycle up and down (instead of num-1/num-2) -- After that, still cannot insert a coin. +Quick setup for surfnsaf,opthund,tt_game,ccruise: +- Press 0 A num1 num1 to load factory defaults +- Press 0 until you get to Game Pricing, press A to get Universal. Press 0 a few times then F3 to save. +- Now press 7 to insert a coin. +Further setup if needed: +- Use A and B to cycle up and down (instead of num1/num2) +- num1 selects default setting +- 0 to choose another setting +- F3 to save and reboot + +Here are the key codes to enable play: Game NUM Start game End ball -------------------------------------------------------------------------------------------------- Lights Camera Action 720 1 then W V -Silver Slugger 722 unknown unknown +Silver Slugger 722 1 then jiggle ; and quote ; Vegas 723 1 then B A Deadly Weapon 724 1 then Q I then Q Car Hop 725 1 then P and ] P then ] -Title Fight 726 unknown unknown -Hoops 727 1 then Q and Z unknown -Cactus Jack 729 unknown unknown -Class of 1812 730 1 then ; and ' up -Surf'n Safari 731 unknown unknown -Operation: Thunder 732 unknown unknown -tt_game --- unknown unknown -Caribbean Cruise C102 unknown unknown -Nudge-it N102 1 then B and M unknown -Bell Ringer N103 1 then A unknown +Title Fight 726 1 then [ and left [ (wait for message) then left +Hoops 727 1 then Q and Z [ then Z (may have to jiggle ] and [, or try multiple times) +Cactus Jack 729 1 then ; and quote ; +Class of 1812 730 1 then ; and quote up +Nudge-it N102 1 then B and M unknown (Redemption machine) +Bell Ringer N103 1 then A unknown (Redemption machine) + +** From here, num1 = start button, 7 = coin, 0 = test/setup +Surf'n Safari 731 num1 then num2 then P num2 then P +Operation: Thunder 732 num1 then G and O G then hold O for a few seconds +tt_game 7** unknown unknown +Caribbean Cruise C102 1, enter, hold \ and right until message goes \ Status: @@ -203,44 +212,16 @@ static INPUT_PORTS_START( gts3 ) PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_CODE(KEYCODE_SLASH_PAD) PORT_NAME("INP77") PORT_START("X8") - PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INP80") - PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INP81") - PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INP82") - PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INP83") - PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INP84") - PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INP85") - PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INP86") - PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INP87") + PORT_BIT(0xff, IP_ACTIVE_LOW, IPT_UNUSED) PORT_START("X9") - PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INP90") - PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INP91") - PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INP92") - PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INP93") - PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INP94") - PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INP95") - PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INP96") - PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INP97") + PORT_BIT(0xff, IP_ACTIVE_LOW, IPT_UNUSED) PORT_START("X10") - PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INPA0") - PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INPA1") - PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INPA2") - PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INPA3") - PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INPA4") - PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INPA5") - PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INPA6") - PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INPA7") + PORT_BIT(0xff, IP_ACTIVE_LOW, IPT_UNUSED) PORT_START("X11") - PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INPB0") - PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INPB1") - PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INPB2") - PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INPB3") - PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INPB4") - PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INPB5") - PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INPB6") - PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_KEYPAD) PORT_NAME("INPB7") + PORT_BIT(0xff, IP_ACTIVE_LOW, IPT_UNUSED) INPUT_PORTS_END INPUT_CHANGED_MEMBER( gts3_state::test_inp ) @@ -371,7 +352,7 @@ void gts3_state::gts3(machine_config &config) } /*------------------------------------------------------------------- -/ Bell Ringer (N103) +/ Bell Ringer (N103) Redemption Machine /-------------------------------------------------------------------*/ ROM_START(bellring) ROM_REGION(0x10000, "maincpu", 0) @@ -424,6 +405,7 @@ ROM_END /*------------------------------------------------------------------- / Caribbean Cruise (#C102) +/ One-sided cocktail designed and built by Gottlieb for International Concepts /-------------------------------------------------------------------*/ ROM_START(ccruise) ROM_REGION(0x10000, "maincpu", 0) @@ -518,7 +500,7 @@ ROM_START(lca2) ROM_END /*------------------------------------------------------------------- -/ Nudge-It (N102) +/ Nudge-It (N102) Redemption Machine /-------------------------------------------------------------------*/ ROM_START(nudgeit) ROM_REGION(0x10000, "maincpu", 0) diff --git a/src/mame/drivers/gts80.cpp b/src/mame/drivers/gts80.cpp index 7b43bc698d0..df13261d116 100644 --- a/src/mame/drivers/gts80.cpp +++ b/src/mame/drivers/gts80.cpp @@ -11,7 +11,7 @@ still there. Like most pinball machines, the leaky battery could destroy everyth stuck-on solenoid. If the machine was left on was a while, it could lock up, so a reset board (watchdog) was added. -Here are the key codes to enable play: +Here are the key codes to enable play: (may need to hit X to start a ball) Game NUM Start game End ball -------------------------------------------------------------------------------------------------- @@ -23,8 +23,8 @@ Counterforce 656 1 X Star Race 657 1 X James Bond 658 1 X Timeline 659 1 X -Force II 661 unknown unknown (PGDN and Down, but not working) -Pink Panther 664 unknown unknown (PGDN and Down, but not working) +Force II 661 1 then PgDn and Down Down then PgDn +Pink Panther 664 1 then PgDn and Down PgDn Mars God of War 666 1 them Home and \ Home then \ (wait for flash or match) Volcano 667 1 then M= M then = (wait for flash or match) Black Hole 668 1 then R (wait for score to flash) L then R (wait for flash or match) @@ -33,8 +33,6 @@ Eclipse 671 1 then RW X Status: - Machines boot up, coins can be inserted, and a game begun. -- These work: Panthera, Grand8, Spiderman, Circus, Counterforce, Star Race, James Bond, Timeline, Marspf, - Haunted House. Notes: - Jamesb is a timed game and appears to be never-ending. @@ -43,10 +41,11 @@ Notes: ToDO: -- Sounds are not correct. The games only seem to use 2 or 3 sounds each. +- Sounds are mostly not correct. The games only seem to use 2 or 3 sounds each. - The Sound & Speech board has extra control lines (Sound16 and Sound32). Sound16 comes from a lamp output, while Sound32 hasn't been tracked down yet. -- Mars: Sound board crashes at first sound request +- Mars, Pink Panther: Sound board CPU runs into the weeds +- Grand8: Z80-based sound board - None of the "talking" machines talk. @@ -329,7 +328,7 @@ u8 gts80_state::port1a_r() if ((m_lamprow < 4) && BIT(m_segment, 7)) data = m_io_dips[m_lamprow]->read(); - for (u8 i = 0; i < 7; i++) + for (u8 i = 0; i < 8; i++) if (!BIT(m_swrow, i)) data &= m_io_keyboard[i]->read(); @@ -387,7 +386,7 @@ void gts80_state::port3a_w(u8 data) sndcmd = 0; sndcmd ^= 15; // inverted again by Z13 on the A3 board - if (m_r0_sound && (sndcmd & 15)) + if (m_r0_sound) m_r0_sound->write(sndcmd); else if (m_r1_sound) diff --git a/src/mame/drivers/gts80a.cpp b/src/mame/drivers/gts80a.cpp index c925e0f2000..69b9259d187 100644 --- a/src/mame/drivers/gts80a.cpp +++ b/src/mame/drivers/gts80a.cpp @@ -19,30 +19,30 @@ Sound is wrong in all games. Note: If DIP28 is set to Novelty, then Match doesn't work. -Here are the key codes to enable play: +Here are the key codes to enable play: (may need to hit X to start a ball) -Game NUM Start game End ball --------------------------------------------------------------------------------------------------- +Game NUM Start game End ball (X often works, even when not connected) +----------------------------------------------------------------------------------------------------------------- Devil's Dare 670 1, then hold .enter hit pad- .enter hit pad- Rocky 672 1 X -Spirit 673 unknown unknown -Punk! 674 unknown unknown -Striker 675 unknown unknown +Spirit 673 1, then Y and \ X then \ (wait for sound) +Punk! 674 1, then - and num* - then num* (wait for sound) +Striker 675 1, then S and num2 X Krull 676 1, then jiggle X and Y until you hear a sound X -Qbert's Quest 677 1 X +Qbert's Quest 677 1, then X (wait for sound), then Z X Super Orbit 680 1 X Royal Flush Deluxe 681 1 X -Going Nuts 682 unknown unknown +Going Nuts 682 1 then num- then num* num- then num* Amazon Hunt 684 1 X -Rack 'Em Up 685 unknown unknown (should be like Rocky, but doesn't work) +Rack 'Em Up 685 1 then hold num-enter, hit X X Ready Aim Fire 686 1 X Jacks to Open 687 1 X Touchdown 688 1 X -Alien Star 689 unknown unknown +Alien Star 689 1, then K and \ \ then K The Games 691 1 X El Dorado 692 1 X -Ice Fever 695 unknown unknown -Caveman 810 unknown unknown +Ice Fever 695 1 then unknown X +Caveman PV810 1 then unknown X *****************************************************************************************************************/ @@ -325,7 +325,7 @@ u8 gts80a_state::port1a_r() if ((m_lamprow < 4) && BIT(m_segment, 7)) data = m_io_dips[m_lamprow]->read(); - for (u8 i = 0; i < 7; i++) + for (u8 i = 0; i < 8; i++) if (!BIT(m_swrow, i)) data &= m_io_keyboard[i]->read(); @@ -383,7 +383,7 @@ void gts80a_state::port3a_w(u8 data) sndcmd = 0; sndcmd ^= 15; // inverted again by Z13 on the A3 board - if (m_r0_sound && (sndcmd & 15)) + if (m_r0_sound) m_r0_sound->write(sndcmd); else if (m_r1_sound) diff --git a/src/mame/drivers/gts80b.cpp b/src/mame/drivers/gts80b.cpp index 87f6f9fda85..53dddfcffdf 100644 --- a/src/mame/drivers/gts80b.cpp +++ b/src/mame/drivers/gts80b.cpp @@ -9,10 +9,6 @@ Same as system 80, except that the displays are 20-digit alphanumeric driven by Some games start up and will accept credits, and the test mode works. -Most games are multiball, and therefore may not respond further to inputs. - -Sound is missing/wrong in all games. Most sound boards need to be emulated. - The test rom says U4 is faulty. Using MOS6532_NEW fixes this error, but the games ramdomly slam-tilt instead. 'Master' has a different memory map, and there's jumps to apparently unused parts of the rom. (See @ 2020). @@ -22,7 +18,7 @@ PinMAME used for the display character generator. When asked to enter your initials, use the Advance buttons to select a letter, and the Start button to enter it. -Here are the key codes to enable play: +Here are the key codes to enable play: (may need to hit X to start a ball) Game NUM Start game End ball -------------------------------------------------------------------------------------------------- @@ -31,28 +27,40 @@ Amazon Hunt III 684D 1 X Bounty Hunter 694 1 X Chicago Cubs 696 1 X Rock 697 1 X -Tag Team Wrestling 698 unknown unknown +Tag Team Wrestling 698 1 then End and F1 X Raven 702 1 X -Hollywood Heat 703 unknown unknown (should be Del F4, but not working) +Hollywood Heat 703 1 then jiggle F4 and Del until sound is heard X (wait for score to count up) then Del Rock Encore 704 1 X -Genesis 705 unknown unknown -Spring Break 706 unknown unknown -Gold Wings 707 1 then ' del pad+ del quote pad+ -Monte Carlo 708 unknown unknown -Arena 709 unknown unknown -Victory 710 1 then del (wait for sound) then pad+ del (wait for sound) then pad+ -Diamond Lady 711 unknown unknown -TX-Sector 712 1 then del and pad+ del and pad+ -Big House 713 unknown unknown -Robo-War 714 unknown unknown -Excalibur 715 unknown unknown -Bad Girls 717 unknown unknown (should be End F2, but not working) -Hot Shots 718 unknown unknown -Bone Busters Inc 719 unknown unknown -Night Moves C103 unknown unknown +Genesis 705 1 then jiggle F1 and num- X then num- +Spring Break 706 1 then F2 and num- and End and Del X then Del +Gold Wings 707 1 then quote and del and pad+ Del and quote and num+ +Monte Carlo 708 1 then jiggle [ and End End +Arena 709 1 then jiggle M and Del Del +Victory 710 1 then Del (wait for sound) then num+ Del (wait for sound) then num+ +Diamond Lady 711 1 then Del and Quote Del then Quote +TX-Sector 712 1 then Del and num+ Del and num+ +Big House 713 1 then jiggle Del and minus Del +Robo-War 714 1 then Del and mun+ Del +Excalibur 715 1 then hold F4 and hit Del Del +Bad Girls 717 1 then hold F2 and X, hit End, get a message End +Hot Shots 718 1 then hold F4 and hit Del Del +Bone Busters Inc 719 1 then num- and num+ num+ +Night Moves C101 unknown unknown Master --- mnw Top Sound --- no inputs +ManilaMatic Games: +- Defender (not dumped) +- Master (not working) +- Out Law (not dumped) +- Pinball Shop (not dumped, unknown hw) +- Star King (not dumped, gts80a) +- Top Sound (not working) + +ToDo: +- Electronic sounds +- Most sound boards to be emulated + *****************************************************************************************************************/ #include "emu.h" @@ -364,7 +372,7 @@ u8 gts80b_state::port1a_r() if ((m_lamprow < 4) && BIT(m_segment, 7)) data = m_io_dips[m_lamprow]->read(); - for (u8 i = 0; i < 7; i++) + for (u8 i = 0; i < 8; i++) if (!BIT(m_swrow, i)) data &= m_io_keyboard[i]->read(); @@ -436,7 +444,7 @@ void gts80b_state::port3a_w(u8 data) sndcmd = 0; sndcmd ^= 15; // inverted again by Z13 on the A3 board - if (m_r0_sound && (sndcmd & 15)) + if (m_r0_sound) m_r0_sound->write(sndcmd); else if (m_r1_sound) @@ -1658,7 +1666,8 @@ ROM_START(mntecrlo2) ROM_END /*------------------------------------------------------------------- -/ Night Moves C-103 +/ Night Moves (#C101) +/ One-sided cocktail designed and built by Gottlieb for International Concepts /-------------------------------------------------------------------*/ ROM_START(nmoves) ROM_REGION(0x10000, "maincpu", 0) -- cgit v1.2.3