mirror of
https://github.com/holub/mame
synced 2025-04-29 03:20:50 +03:00
New working machines
----------- Apollo 13 (Tiger handheld) [hap, Sean Riddle] Robocop 2 (Tiger handheld) [hap, Sean Riddle]
This commit is contained in:
parent
3fbce8e55b
commit
f9ab8085e5
@ -2175,6 +2175,98 @@ MACHINE_CONFIG_END
|
||||
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
|
||||
Tiger Robocop 2 (model 7-830)
|
||||
* Sharp SM510 under epoxy (die label M96)
|
||||
* lcd screen with custom segments, 1-bit sound
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
class trobocop2_state : public hh_sm510_state
|
||||
{
|
||||
public:
|
||||
trobocop2_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: hh_sm510_state(mconfig, type, tag)
|
||||
{
|
||||
m_inp_lines = 6;
|
||||
m_inp_fixed = 6;
|
||||
}
|
||||
};
|
||||
|
||||
// config
|
||||
|
||||
static INPUT_PORTS_START( trobocop2 )
|
||||
PORT_START("IN.0") // S1
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr)
|
||||
PORT_BIT( 0x0b, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
|
||||
PORT_START("IN.1") // S2
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr)
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr) // Rescue
|
||||
PORT_BIT( 0x09, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
|
||||
PORT_START("IN.2") // S3
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr) // /Pick
|
||||
PORT_BIT( 0x0d, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
|
||||
PORT_START("IN.3") // S4
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr) PORT_NAME("Shoot Right")
|
||||
PORT_BIT( 0x0d, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
|
||||
PORT_START("IN.4") // S5
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr) PORT_NAME("Shoot Up")
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr) PORT_NAME("Shoot Left")
|
||||
PORT_BIT( 0x0c, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
|
||||
PORT_START("IN.5") // S6
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SELECT ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr) PORT_NAME("Pause")
|
||||
PORT_BIT( 0x0e, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
|
||||
PORT_START("IN.6") // GND!
|
||||
PORT_BIT( 0x07, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_START ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr) PORT_NAME("Power On/Start")
|
||||
|
||||
PORT_START("BA")
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_VOLUME_DOWN ) PORT_NAME("Sound")
|
||||
|
||||
PORT_START("B")
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_POWER_OFF )
|
||||
|
||||
PORT_START("ACL")
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SERVICE1 ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, acl_button, nullptr) PORT_NAME("ACL")
|
||||
INPUT_PORTS_END
|
||||
|
||||
static MACHINE_CONFIG_START( trobocop2 )
|
||||
|
||||
/* basic machine hardware */
|
||||
MCFG_CPU_ADD("maincpu", SM510, XTAL_32_768kHz)
|
||||
MCFG_SM510_WRITE_SEGS_CB(WRITE16(hh_sm510_state, sm510_lcd_segment_w))
|
||||
MCFG_SM510_READ_K_CB(READ8(hh_sm510_state, input_r))
|
||||
MCFG_SM510_WRITE_S_CB(WRITE8(hh_sm510_state, input_w))
|
||||
MCFG_SM510_WRITE_R_CB(WRITE8(hh_sm510_state, piezo_r1_w))
|
||||
MCFG_SM510_READ_BA_CB(IOPORT("BA"))
|
||||
MCFG_SM510_READ_B_CB(IOPORT("B"))
|
||||
|
||||
/* video hardware */
|
||||
MCFG_SCREEN_SVG_ADD("screen", "svg")
|
||||
MCFG_SCREEN_REFRESH_RATE(50)
|
||||
MCFG_SCREEN_SIZE(1487, 1080)
|
||||
MCFG_SCREEN_VISIBLE_AREA(0, 1487-1, 0, 1080-1)
|
||||
|
||||
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
|
||||
MCFG_DEFAULT_LAYOUT(layout_svg)
|
||||
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
MCFG_SOUND_ADD("speaker", SPEAKER_SOUND, 0)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
|
||||
Tiger Altered Beast (model 7-831)
|
||||
@ -2503,7 +2595,7 @@ WRITE8_MEMBER(tsonic_state::write_s)
|
||||
|
||||
static INPUT_PORTS_START( tsonic )
|
||||
PORT_START("IN.0") // S2
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr) // Jump
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr) // Jump Up
|
||||
PORT_BIT( 0x0b, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
|
||||
PORT_START("IN.1") // S3
|
||||
@ -2512,7 +2604,7 @@ static INPUT_PORTS_START( tsonic )
|
||||
PORT_BIT( 0x09, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
|
||||
PORT_START("IN.2") // S4
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr)
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr) // Down
|
||||
PORT_BIT( 0x0d, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
|
||||
PORT_START("IN.3") // S5
|
||||
@ -2847,6 +2939,99 @@ MACHINE_CONFIG_END
|
||||
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
|
||||
Tiger Apollo 13 (model 78-591)
|
||||
* Sharp SM510 under epoxy (die label 10 07)
|
||||
* lcd screen with custom segments, 1-bit sound
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
class tapollo13_state : public hh_sm510_state
|
||||
{
|
||||
public:
|
||||
tapollo13_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: hh_sm510_state(mconfig, type, tag)
|
||||
{
|
||||
m_inp_lines = 6;
|
||||
m_inp_fixed = 6;
|
||||
}
|
||||
};
|
||||
|
||||
// config
|
||||
|
||||
static INPUT_PORTS_START( tapollo13 )
|
||||
PORT_START("IN.0") // S1
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr) PORT_NAME("Thruster Left")
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr)
|
||||
PORT_BIT( 0x0a, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
|
||||
PORT_START("IN.1") // S2
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr)
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr)
|
||||
PORT_BIT( 0x09, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
|
||||
PORT_START("IN.2") // S3
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr)
|
||||
PORT_BIT( 0x0d, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
|
||||
PORT_START("IN.3") // S4
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr) PORT_NAME("Parachute")
|
||||
PORT_BIT( 0x0d, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
|
||||
PORT_START("IN.4") // S5
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr) PORT_NAME("Thruster Right")
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON4 ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr) PORT_NAME("Capture")
|
||||
PORT_BIT( 0x0c, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
|
||||
PORT_START("IN.5") // S6
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SELECT ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr) PORT_NAME("Pause")
|
||||
PORT_BIT( 0x0e, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
|
||||
PORT_START("IN.6") // GND!
|
||||
PORT_BIT( 0x07, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_START ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr) PORT_NAME("Power On/Start")
|
||||
|
||||
PORT_START("BA")
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_VOLUME_DOWN ) PORT_NAME("Sound")
|
||||
|
||||
PORT_START("B")
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_POWER_OFF )
|
||||
|
||||
PORT_START("ACL")
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SERVICE1 ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, acl_button, nullptr) PORT_NAME("ACL")
|
||||
INPUT_PORTS_END
|
||||
|
||||
static MACHINE_CONFIG_START( tapollo13 )
|
||||
|
||||
/* basic machine hardware */
|
||||
MCFG_CPU_ADD("maincpu", SM510, XTAL_32_768kHz)
|
||||
MCFG_SM510_WRITE_SEGS_CB(WRITE16(hh_sm510_state, sm510_lcd_segment_w))
|
||||
MCFG_SM510_READ_K_CB(READ8(hh_sm510_state, input_r))
|
||||
MCFG_SM510_WRITE_S_CB(WRITE8(hh_sm510_state, input_w))
|
||||
MCFG_SM510_WRITE_R_CB(WRITE8(hh_sm510_state, piezo_r1_w))
|
||||
MCFG_SM510_READ_BA_CB(IOPORT("BA"))
|
||||
MCFG_SM510_READ_B_CB(IOPORT("B"))
|
||||
|
||||
/* video hardware */
|
||||
MCFG_SCREEN_SVG_ADD("screen", "svg")
|
||||
MCFG_SCREEN_REFRESH_RATE(50)
|
||||
MCFG_SCREEN_SIZE(1467, 1080)
|
||||
MCFG_SCREEN_VISIBLE_AREA(0, 1467-1, 0, 1080-1)
|
||||
|
||||
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
|
||||
MCFG_DEFAULT_LAYOUT(layout_svg)
|
||||
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
MCFG_SOUND_ADD("speaker", SPEAKER_SOUND, 0)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
|
||||
Tiger Space Jam (model 78-621)
|
||||
@ -3228,6 +3413,15 @@ ROM_START( tsharr2 )
|
||||
ROM_END
|
||||
|
||||
|
||||
ROM_START( trobocop2 )
|
||||
ROM_REGION( 0x1000, "maincpu", 0 )
|
||||
ROM_LOAD( "m96", 0x0000, 0x1000, CRC(3704b60c) SHA1(04275833e1a79fd33226faf060890b66ae54e1d3) )
|
||||
|
||||
ROM_REGION( 463532, "svg", 0)
|
||||
ROM_LOAD( "trobocop2.svg", 0, 463532, CRC(c2b92868) SHA1(87912f02bea967c10ba1d8f7c810e3c44b0e3cff) )
|
||||
ROM_END
|
||||
|
||||
|
||||
ROM_START( taltbeast )
|
||||
ROM_REGION( 0x1000, "maincpu", 0 )
|
||||
ROM_LOAD( "m88", 0x0000, 0x1000, CRC(1b3d15e7) SHA1(78371230dff872d6c07eefdbc4856c2a3336eb61) )
|
||||
@ -3294,6 +3488,15 @@ ROM_START( tjdredd )
|
||||
ROM_END
|
||||
|
||||
|
||||
ROM_START( tapollo13 )
|
||||
ROM_REGION( 0x1000, "maincpu", 0 )
|
||||
ROM_LOAD( "10_07", 0x0000, 0x1000, CRC(63d0deaa) SHA1(d5de99d5e0ee08ec2ebeef7189ebac1c008d2e7d) )
|
||||
|
||||
ROM_REGION( 643176, "svg", 0)
|
||||
ROM_LOAD( "tapollo13.svg", 0, 643176, CRC(e2dac162) SHA1(4089fa485579d2b87ac49b1cf33d6c2c085ea4c5) )
|
||||
ROM_END
|
||||
|
||||
|
||||
ROM_START( tsjam )
|
||||
ROM_REGION( 0x1000, "maincpu", 0 )
|
||||
ROM_LOAD( "10_23", 0x0000, 0x1000, CRC(6eaabfbd) SHA1(f0ecbd6f65fe72ce2d8a452685be2e77a63fc9f0) )
|
||||
@ -3338,6 +3541,7 @@ CONS( 1989, tkarnov, 0, 0, tkarnov, tkarnov, tkarnov_state, 0, "T
|
||||
CONS( 1989, tgaiden, 0, 0, tgaiden, tgaiden, tgaiden_state, 0, "Tiger Electronics (licensed from Tecmo)", "Ninja Gaiden (handheld)", MACHINE_SUPPORTS_SAVE | MACHINE_NOT_WORKING )
|
||||
CONS( 1989, tbatman, 0, 0, tbatman, tbatman, tbatman_state, 0, "Tiger Electronics", "Batman (handheld)", MACHINE_SUPPORTS_SAVE )
|
||||
CONS( 1990, tsharr2, 0, 0, tsharr2, tsharr2, tsharr2_state, 0, "Tiger Electronics (licensed from Sega)", "Space Harrier II (handheld)", MACHINE_SUPPORTS_SAVE )
|
||||
CONS( 1990, trobocop2, 0, 0, trobocop2, trobocop2, trobocop2_state, 0, "Tiger Electronics", "Robocop 2 (handheld)", MACHINE_SUPPORTS_SAVE )
|
||||
CONS( 1990, taltbeast, 0, 0, taltbeast, taltbeast, taltbeast_state, 0, "Tiger Electronics (licensed from Sega)", "Altered Beast (handheld)", MACHINE_SUPPORTS_SAVE )
|
||||
CONS( 1991, tswampt, 0, 0, tswampt, tswampt, tswampt_state, 0, "Tiger Electronics", "Swamp Thing (handheld)", MACHINE_SUPPORTS_SAVE )
|
||||
CONS( 1991, tbtoads, 0, 0, tbtoads, tbtoads, tbtoads_state, 0, "Tiger Electronics (licensed from Rare/Tradewest)", "Battletoads (handheld)", MACHINE_SUPPORTS_SAVE )
|
||||
@ -3345,4 +3549,5 @@ CONS( 1992, tsonic, 0, 0, tsonic, tsonic, tsonic_state, 0, "T
|
||||
CONS( 1994, tshadow, 0, 0, tshadow, tshadow, tshadow_state, 0, "Tiger Electronics", "The Shadow (handheld)", MACHINE_SUPPORTS_SAVE )
|
||||
CONS( 1995, tbatfor, 0, 0, tbatfor, tbatfor, tbatfor_state, 0, "Tiger Electronics", "Batman Forever - Double Dose of Doom", MACHINE_SUPPORTS_SAVE )
|
||||
CONS( 1995, tjdredd, 0, 0, tjdredd, tjdredd, tjdredd_state, 0, "Tiger Electronics", "Judge Dredd (handheld)", MACHINE_SUPPORTS_SAVE )
|
||||
CONS( 1995, tapollo13, 0, 0, tapollo13, tapollo13, tapollo13_state, 0, "Tiger Electronics", "Apollo 13 (handheld)", MACHINE_SUPPORTS_SAVE )
|
||||
CONS( 1996, tsjam, 0, 0, tsjam, tsjam, tsjam_state, 0, "Tiger Electronics", "Space Jam (handheld)", MACHINE_SUPPORTS_SAVE )
|
||||
|
@ -5,9 +5,10 @@
|
||||
This driver is a collection of simple dedicated handheld and tabletop
|
||||
toys based around the TMS1000 MCU series. Anything more complex or clearly
|
||||
part of a series is (or will be) in its own driver, see:
|
||||
- hh_tms1k: here
|
||||
- eva: Chrysler EVA-11 (and EVA-24)
|
||||
- microvsn: Milton Bradley MicroVision
|
||||
|
||||
(contd.) hh_tms1k child drivers:
|
||||
- ticalc1x: TI TMS1K-based calculators
|
||||
- tispellb: TI Spelling B series gen. 1
|
||||
- tispeak: TI Speak & Spell series gen. 1
|
||||
|
@ -14718,6 +14718,7 @@ ktmnt // Konami
|
||||
ktopgun // Konami
|
||||
nupogodi // Elektronika
|
||||
taltbeast // Tiger
|
||||
tapollo13 // Tiger
|
||||
tbatfor // Tiger
|
||||
tbatman // Tiger
|
||||
tbtoads // Tiger
|
||||
@ -14727,6 +14728,7 @@ tgaunt // Tiger
|
||||
tjdredd // Tiger
|
||||
tkarnov // Tiger
|
||||
trobhood // Tiger
|
||||
trobocop2 // Tiger
|
||||
tshadow // Tiger
|
||||
tsharr2 // Tiger
|
||||
tsjam // Tiger
|
||||
|
Loading…
Reference in New Issue
Block a user