|
|
@@ -2609,7 +2609,7 @@ static INPUT_PORTS_START( tsonic ) |
|
|
PORT_BIT( 0x0d, IP_ACTIVE_HIGH, IPT_UNUSED ) |
|
|
|
|
|
PORT_START("IN.3") // S5 |
|
|
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr) PORT_NAME("Super Sonic Spin") |
|
|
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr) // Super Sonic Spin |
|
|
PORT_BIT( 0x0e, IP_ACTIVE_HIGH, IPT_UNUSED ) |
|
|
|
|
|
PORT_START("IN.4") // S6 |
|
|
@@ -2662,6 +2662,185 @@ MACHINE_CONFIG_END |
|
|
|
|
|
|
|
|
|
|
|
/*************************************************************************** |
|
|
|
|
|
Tiger Street Fighter II (model 78-522) |
|
|
* Sharp SM510 under epoxy (die label ME1) |
|
|
* lcd screen with custom segments, 1-bit sound |
|
|
|
|
|
***************************************************************************/ |
|
|
|
|
|
class tsfight2_state : public hh_sm510_state |
|
|
{ |
|
|
public: |
|
|
tsfight2_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( tsfight2 ) |
|
|
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) // Jump |
|
|
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) |
|
|
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) // Down |
|
|
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("Kick 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("Punch/Special Move") |
|
|
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr) PORT_NAME("Kick 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("Game") |
|
|
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( tsfight2 ) |
|
|
|
|
|
/* 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(1444, 1080) |
|
|
MCFG_SCREEN_VISIBLE_AREA(0, 1444-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 Nightmare Before Christmas (model 78-537) |
|
|
* Sharp SM510 under epoxy (die label MG0) |
|
|
* lcd screen with custom segments, 1-bit sound |
|
|
|
|
|
***************************************************************************/ |
|
|
|
|
|
class tnmarebc_state : public hh_sm510_state |
|
|
{ |
|
|
public: |
|
|
tnmarebc_state(const machine_config &mconfig, device_type type, const char *tag) |
|
|
: hh_sm510_state(mconfig, type, tag) |
|
|
{ |
|
|
m_inp_lines = 5; |
|
|
m_inp_fixed = 5; |
|
|
} |
|
|
}; |
|
|
|
|
|
// config |
|
|
|
|
|
static INPUT_PORTS_START( tnmarebc ) |
|
|
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) // Jump |
|
|
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) |
|
|
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( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_sm510_state, input_changed, nullptr) // Action |
|
|
PORT_BIT( 0x0e, IP_ACTIVE_HIGH, IPT_UNUSED ) |
|
|
|
|
|
PORT_START("IN.4") // S5 |
|
|
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.5") // 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( tnmarebc ) |
|
|
|
|
|
/* 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(1456, 1080) |
|
|
MCFG_SCREEN_VISIBLE_AREA(0, 1456-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 Mortal Kombat (model 78-553) |
|
|
@@ -3555,6 +3734,24 @@ ROM_START( tsonic ) |
|
|
ROM_END |
|
|
|
|
|
|
|
|
ROM_START( tsfight2 ) |
|
|
ROM_REGION( 0x1000, "maincpu", 0 ) |
|
|
ROM_LOAD( "me1", 0x0000, 0x1000, CRC(73384e94) SHA1(350417d101ce034b3974b4a1d2e04bcb3bf70605) ) |
|
|
|
|
|
ROM_REGION( 630403, "svg", 0) |
|
|
ROM_LOAD( "tsfight2.svg", 0, 630403, CRC(eadc2c81) SHA1(20b2a797f6b9a008c1994eaee7b87e3fe828e837) ) |
|
|
ROM_END |
|
|
|
|
|
|
|
|
ROM_START( tnmarebc ) |
|
|
ROM_REGION( 0x1000, "maincpu", 0 ) |
|
|
ROM_LOAD( "mg0", 0x0000, 0x1000, CRC(5ef21421) SHA1(8fd458575111b89d7c33c969e76703bde5ad2c36) ) |
|
|
|
|
|
ROM_REGION( 631310, "svg", 0) |
|
|
ROM_LOAD( "tnmarebc.svg", 0, 631310, CRC(f9c96205) SHA1(1947d358efd94ae3257ed959172a819798d2c9a1) ) |
|
|
ROM_END |
|
|
|
|
|
|
|
|
ROM_START( tmkombat ) |
|
|
ROM_REGION( 0x1000, "maincpu", 0 ) |
|
|
ROM_LOAD( "mg6", 0x0000, 0x1000, CRC(f6375dc7) SHA1(a711199c2623979f19c11067ebfff9355256c2c3) ) |
|
|
@@ -3649,6 +3846,8 @@ CONS( 1990, taltbeast, 0, 0, taltbeast, taltbeast, taltbeast_state, 0, "T |
|
|
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 ) |
|
|
CONS( 1992, tsonic, 0, 0, tsonic, tsonic, tsonic_state, 0, "Tiger Electronics (licensed from Sega)", "Sonic The Hedgehog (handheld)", MACHINE_SUPPORTS_SAVE ) |
|
|
CONS( 1993, tsfight2, 0, 0, tsfight2, tsfight2, tsfight2_state, 0, "Tiger Electronics (licensed from Capcom)", "Street Fighter II (handheld)", MACHINE_SUPPORTS_SAVE ) |
|
|
CONS( 1993, tnmarebc, 0, 0, tnmarebc, tnmarebc, tnmarebc_state, 0, "Tiger Electronics", "Nightmare Before Christmas (handheld)", MACHINE_SUPPORTS_SAVE ) // note: title has no "The" |
|
|
CONS( 1993, tmkombat, 0, 0, tmkombat, tmkombat, tmkombat_state, 0, "Tiger Electronics (licensed from Midway)", "Mortal Kombat (handheld)", MACHINE_SUPPORTS_SAVE ) |
|
|
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 (handheld)", MACHINE_SUPPORTS_SAVE ) |
|
|
|