trunk/src/mame/drivers/galaxold.c
| r244899 | r244900 | |
| 463 | 463 | ADDRESS_MAP_END |
| 464 | 464 | |
| 465 | 465 | |
| 466 | static ADDRESS_MAP_START( hustlerb3_map, AS_PROGRAM, 8, galaxold_state ) |
| 467 | ADDRESS_MAP_UNMAP_HIGH |
| 468 | AM_RANGE(0x0000, 0x7fff) AM_ROM |
| 469 | AM_RANGE(0x8000, 0x87ff) AM_RAM |
| 470 | AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_SHARE("videoram") |
| 471 | AM_RANGE(0x9800, 0x983f) AM_RAM_WRITE(galaxold_attributesram_w) AM_SHARE("attributesram") |
| 472 | AM_RANGE(0x9840, 0x985f) AM_RAM AM_SHARE("spriteram") |
| 473 | AM_RANGE(0x9860, 0x987f) AM_RAM AM_SHARE("bulletsram") |
| 474 | AM_RANGE(0x9880, 0x98ff) AM_RAM |
| 475 | AM_RANGE(0xb001, 0xb001) AM_WRITE(galaxold_nmi_enable_w) |
| 476 | AM_RANGE(0xb006, 0xb006) AM_WRITE(galaxold_flip_screen_y_w) |
| 477 | AM_RANGE(0xb007, 0xb007) AM_WRITE(galaxold_flip_screen_x_w) |
| 478 | AM_RANGE(0xa000, 0xa000) AM_READ_PORT("IN0") |
| 479 | AM_RANGE(0xa800, 0xa800) AM_READ_PORT("IN1") |
| 480 | AM_RANGE(0xb000, 0xb000) AM_READ_PORT("DSW0") |
| 481 | AM_RANGE(0xb800, 0xb800) AM_READ(watchdog_reset_r) |
| 482 | |
| 483 | AM_RANGE(0xa004, 0xa007) AM_DEVWRITE("cust", galaxian_sound_device, lfo_freq_w) |
| 484 | AM_RANGE(0xa800, 0xa802) AM_DEVWRITE("cust", galaxian_sound_device, background_enable_w) |
| 485 | AM_RANGE(0xa803, 0xa803) AM_DEVWRITE("cust", galaxian_sound_device, noise_enable_w) |
| 486 | AM_RANGE(0xa805, 0xa805) AM_DEVWRITE("cust", galaxian_sound_device, fire_enable_w) |
| 487 | AM_RANGE(0xa806, 0xa807) AM_DEVWRITE("cust", galaxian_sound_device, vol_w) |
| 488 | AM_RANGE(0xb800, 0xb800) AM_DEVWRITE("cust", galaxian_sound_device, pitch_w) |
| 489 | |
| 490 | ADDRESS_MAP_END |
| 491 | |
| 466 | 492 | static ADDRESS_MAP_START( rockclim_map, AS_PROGRAM, 8, galaxold_state ) |
| 467 | 493 | AM_RANGE(0x0000, 0x3fff) AM_ROM |
| 468 | 494 | AM_RANGE(0x4000, 0x47ff) AM_READWRITE(rockclim_videoram_r, rockclim_videoram_w) AM_SHARE("rockclim_vram")//4800 - 4803 = bg scroll ? |
| r244899 | r244900 | |
| 1046 | 1072 | INPUT_PORTS_END |
| 1047 | 1073 | |
| 1048 | 1074 | |
| 1075 | static INPUT_PORTS_START( hustlerb3 ) |
| 1076 | PORT_START("IN0") |
| 1077 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 ) |
| 1078 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_COIN2 ) |
| 1079 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) |
| 1080 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) |
| 1081 | PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) |
| 1082 | PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 1083 | PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 1084 | PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 1085 | |
| 1086 | PORT_START("IN1") |
| 1087 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_START1 ) |
| 1088 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START2 ) |
| 1089 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_COCKTAIL |
| 1090 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_COCKTAIL |
| 1091 | PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL |
| 1092 | PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 1093 | |
| 1094 | // 6-pos dipswitch on mainboard K4 |
| 1095 | PORT_DIPNAME( 0x40, 0x00, "Half Coinage" ) |
| 1096 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 1097 | PORT_DIPSETTING( 0x40, DEF_STR( On ) ) |
| 1098 | PORT_DIPNAME( 0x80, 0x00, DEF_STR( Cabinet ) ) |
| 1099 | PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) |
| 1100 | PORT_DIPSETTING( 0x80, DEF_STR( Cocktail ) ) |
| 1101 | |
| 1102 | PORT_START("DSW0") |
| 1103 | PORT_DIPNAME( 0x01, 0x00, DEF_STR( Coin_A ) ) |
| 1104 | PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) PORT_CONDITION("IN1", 0x40, EQUALS, 0x40) |
| 1105 | PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) PORT_CONDITION("IN1", 0x40, EQUALS, 0x00) |
| 1106 | PORT_DIPSETTING( 0x01, DEF_STR( 1C_3C ) ) PORT_CONDITION("IN1", 0x40, EQUALS, 0x40) |
| 1107 | PORT_DIPSETTING( 0x01, DEF_STR( 1C_6C ) ) PORT_CONDITION("IN1", 0x40, EQUALS, 0x00) |
| 1108 | PORT_DIPNAME( 0x02, 0x00, DEF_STR( Coin_B ) ) |
| 1109 | PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) PORT_CONDITION("IN1", 0x40, EQUALS, 0x40) |
| 1110 | PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) PORT_CONDITION("IN1", 0x40, EQUALS, 0x00) |
| 1111 | PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) ) PORT_CONDITION("IN1", 0x40, EQUALS, 0x40) |
| 1112 | PORT_DIPSETTING( 0x02, DEF_STR( 1C_6C ) ) PORT_CONDITION("IN1", 0x40, EQUALS, 0x00) |
| 1113 | PORT_DIPNAME( 0x0c, 0x08, DEF_STR( Lives ) ) |
| 1114 | PORT_DIPSETTING( 0x00, "1" ) |
| 1115 | PORT_DIPSETTING( 0x04, "2" ) |
| 1116 | PORT_DIPSETTING( 0x08, "3" ) |
| 1117 | PORT_DIPSETTING( 0x0c, "Infinite (Cheat)" ) |
| 1118 | PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 1119 | PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 1120 | PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 1121 | PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 1122 | INPUT_PORTS_END |
| 1123 | |
| 1124 | |
| 1125 | |
| 1126 | static INPUT_PORTS_START( froggerv ) |
| 1127 | PORT_START("IN0") |
| 1128 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 ) |
| 1129 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_COIN2 ) |
| 1130 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) |
| 1131 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) |
| 1132 | PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) |
| 1133 | PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 1134 | PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_COCKTAIL |
| 1135 | PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) |
| 1136 | |
| 1137 | PORT_START("IN1") |
| 1138 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_START1 ) |
| 1139 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START2 ) |
| 1140 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_COCKTAIL |
| 1141 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_COCKTAIL |
| 1142 | PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_COCKTAIL |
| 1143 | PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 1144 | |
| 1145 | // 6-pos dipswitch on mainboard K4 |
| 1146 | PORT_DIPNAME( 0x40, 0x00, "Half Coinage" ) |
| 1147 | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 1148 | PORT_DIPSETTING( 0x40, DEF_STR( On ) ) |
| 1149 | PORT_DIPNAME( 0x80, 0x00, DEF_STR( Cabinet ) ) |
| 1150 | PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) |
| 1151 | PORT_DIPSETTING( 0x80, DEF_STR( Cocktail ) ) |
| 1152 | |
| 1153 | PORT_START("DSW0") |
| 1154 | PORT_DIPNAME( 0x01, 0x00, DEF_STR( Coin_A ) ) |
| 1155 | PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) PORT_CONDITION("IN1", 0x40, EQUALS, 0x40) |
| 1156 | PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) PORT_CONDITION("IN1", 0x40, EQUALS, 0x00) |
| 1157 | PORT_DIPSETTING( 0x01, DEF_STR( 1C_3C ) ) PORT_CONDITION("IN1", 0x40, EQUALS, 0x40) |
| 1158 | PORT_DIPSETTING( 0x01, DEF_STR( 1C_6C ) ) PORT_CONDITION("IN1", 0x40, EQUALS, 0x00) |
| 1159 | PORT_DIPNAME( 0x02, 0x00, DEF_STR( Coin_B ) ) |
| 1160 | PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) PORT_CONDITION("IN1", 0x40, EQUALS, 0x40) |
| 1161 | PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) PORT_CONDITION("IN1", 0x40, EQUALS, 0x00) |
| 1162 | PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) ) PORT_CONDITION("IN1", 0x40, EQUALS, 0x40) |
| 1163 | PORT_DIPSETTING( 0x02, DEF_STR( 1C_6C ) ) PORT_CONDITION("IN1", 0x40, EQUALS, 0x00) |
| 1164 | PORT_DIPNAME( 0x0c, 0x08, DEF_STR( Lives ) ) |
| 1165 | PORT_DIPSETTING( 0x00, "1" ) |
| 1166 | PORT_DIPSETTING( 0x04, "2" ) |
| 1167 | PORT_DIPSETTING( 0x08, "3" ) |
| 1168 | PORT_DIPSETTING( 0x0c, "Infinite (Cheat)" ) |
| 1169 | PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 1170 | PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 1171 | PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 1172 | PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 1173 | INPUT_PORTS_END |
| 1174 | |
| 1175 | |
| 1049 | 1176 | /* verified from Z80 code */ |
| 1050 | 1177 | static INPUT_PORTS_START( rockclim ) |
| 1051 | 1178 | PORT_START("IN0") |
| r244899 | r244900 | |
| 2379 | 2506 | MCFG_VIDEO_START_OVERRIDE(galaxold_state,mooncrst) |
| 2380 | 2507 | MACHINE_CONFIG_END |
| 2381 | 2508 | |
| 2509 | // 'Videotron' |
| 2510 | // this is a 'cartridge' based system, taking plug-in game boards. |
| 2511 | // a large sub-PCB actually contains an additional Z80 and AY8910 (with a socket for another AY8910) |
| 2512 | // but neither of the games we have (froggerv and hustlerb3) make use of either. There are a number |
| 2513 | // of unpopulated positions on the game board which presumably can be populated with code for the |
| 2514 | // 2nd Z80. |
| 2515 | static MACHINE_CONFIG_DERIVED( videotron, galaxian ) |
| 2382 | 2516 | |
| 2517 | /* basic machine hardware */ |
| 2518 | MCFG_CPU_MODIFY("maincpu") |
| 2519 | MCFG_CPU_PROGRAM_MAP(hustlerb3_map) |
| 2520 | |
| 2521 | /* video hardware */ |
| 2522 | MCFG_VIDEO_START_OVERRIDE(galaxold_state,mooncrst) |
| 2523 | MACHINE_CONFIG_END |
| 2524 | |
| 2525 | |
| 2383 | 2526 | static MACHINE_CONFIG_DERIVED( porter, mooncrst ) |
| 2384 | 2527 | |
| 2385 | 2528 | /* video hardware */ |
| r244899 | r244900 | |
| 2710 | 2853 | ROM_LOAD( "hustler.clr", 0x0000, 0x0020, CRC(aa1f7f5e) SHA1(311dd17aa11490a1173c76223e4ccccf8ea29850) ) |
| 2711 | 2854 | ROM_END |
| 2712 | 2855 | |
| 2856 | |
| 2857 | ROM_START( hustlerb3 ) |
| 2858 | ROM_REGION( 0x10000, "maincpu", 0 ) |
| 2859 | ROM_LOAD( "billiard_ic4.a4", 0x0000, 0x2000, CRC(545a27fd) SHA1(8b064dd6a9a82248301e0f53dc1c4fd91e506025) ) |
| 2860 | ROM_LOAD( "billiard_ic3.a3", 0x2000, 0x2000, CRC(bec503b1) SHA1(cdbe650b829cd4424141058467cd64cfffe1b1e1) ) |
| 2861 | |
| 2862 | ROM_REGION( 0x1000, "gfx1", 0 ) |
| 2863 | ROM_LOAD( "billiard_ic11.d1", 0x0000, 0x0800, CRC(0bdfad0e) SHA1(8e6f1737604f3801c03fa2e9a5e6a2778b54bae8) ) |
| 2864 | ROM_LOAD( "billiard_ic12.d2", 0x0800, 0x0800, CRC(8e062177) SHA1(7e52a1669804b6c2f694cfc64b04abc8246bb0c2) ) |
| 2865 | |
| 2866 | ROM_REGION( 0x0020, "proms", 0 ) |
| 2867 | ROM_LOAD( "ic10.c3", 0x0000, 0x0020, CRC(aa1f7f5e) SHA1(311dd17aa11490a1173c76223e4ccccf8ea29850) ) |
| 2868 | |
| 2869 | ROM_REGION( 0x0020, "user1", 0 ) /* decode PROMs */ |
| 2870 | ROM_LOAD( "ic7.b3", 0x0000, 0x0020, CRC(4ac17114) SHA1(1fa34a556fe445a6bdabfe75b4b679cab6553c8b) ) |
| 2871 | ROM_END |
| 2872 | |
| 2873 | // https://www.youtube.com/watch?v=r7di0_Yt1l8 |
| 2874 | ROM_START( froggerv ) |
| 2875 | ROM_REGION( 0x10000, "maincpu", 0 ) |
| 2876 | ROM_LOAD( "rana_ic4.ic4", 0x0000, 0x2000, CRC(ed39f6d8) SHA1(8ca60be30dfc5c54fbc129fa0024987d853aad39) ) |
| 2877 | ROM_LOAD( "rana_ic3.ic3", 0x2000, 0x2000, CRC(f8313d5d) SHA1(76f8e382d5cfad4eafbcd8d42bc9a9f03a5eb5f8) ) |
| 2878 | |
| 2879 | ROM_REGION( 0x1000, "gfx1", 0 ) |
| 2880 | ROM_LOAD( "rana_ic11.ic11", 0x0000, 0x0800, CRC(a1199087) SHA1(4492b021a6b5ae9a9e2ab97914ce1a5e5e5b64ab) ) |
| 2881 | ROM_LOAD( "rana_ic12.ic12", 0x0800, 0x0800, CRC(c1690dfc) SHA1(c6fdb1b9ec4fb7da2566b0c71e3e2f931cdece68) ) |
| 2882 | |
| 2883 | ROM_REGION( 0x0020, "proms", 0 ) |
| 2884 | ROM_LOAD( "ic10", 0x0000, 0x0020, CRC(4e3caeab) SHA1(a25083c3e36d28afdefe4af6e6d4f3155e303625) ) |
| 2885 | |
| 2886 | ROM_REGION( 0x0020, "user1", 0 ) /* decode PROMs */ |
| 2887 | ROM_LOAD( "ic7", 0x0000, 0x0020, CRC(4ac17114) SHA1(1fa34a556fe445a6bdabfe75b4b679cab6553c8b) ) |
| 2888 | ROM_END |
| 2889 | |
| 2890 | |
| 2713 | 2891 | ROM_START( rockclim ) |
| 2714 | 2892 | ROM_REGION( 0x10000, "maincpu", 0 ) |
| 2715 | 2893 | ROM_LOAD( "lc01.a1", 0x0000, 0x1000, CRC(8601ae8d) SHA1(6e0c3b34ce5e6879ce7a116c5c2660889a68320d) ) |
| r244899 | r244900 | |
| 3542 | 3720 | GAME( 1983, ladybugg, ladybug, batman2, ladybugg, galaxold_state, ladybugg, ROT270, "bootleg", "Lady Bug (bootleg on Galaxian hardware)", GAME_NO_COCKTAIL | GAME_SUPPORTS_SAVE ) |
| 3543 | 3721 | GAME( 1982, guttangt, locomotn, guttang, guttangt, galaxold_state, guttangt, ROT270, "bootleg (Recreativos Franco?)", "Guttang Gottong (bootleg on Galaxian type hardware)", GAME_NOT_WORKING | GAME_NO_COCKTAIL | GAME_SUPPORTS_SAVE ) // or by 'Tren' ? |
| 3544 | 3722 | |
| 3723 | // Videotron cartridge system |
| 3724 | GAME( 1981, hustlerb3, hustler, videotron, hustlerb3, driver_device, 0, ROT90, "bootleg (Videotron)", "Video Pool (Video Hustler bootleg)", GAME_SUPPORTS_SAVE ) |
| 3725 | GAME( 1981, froggerv, frogger, videotron, froggerv, driver_device, 0, ROT90, "bootleg (Videotron / Gamepack)", "Frogger (Videotron bootleg)", GAME_SUPPORTS_SAVE ) |
| 3726 | |
| 3545 | 3727 | /* S2650 games */ |
| 3546 | 3728 | // YEAR NAME PARENT MACHINE INPUT INIT ROT COMPANY, FULLNAME, FLAGS, LAYOUT |
| 3547 | 3729 | GAME( 1983, hunchbkg, hunchbak, hunchbkg, hunchbkg, driver_device, 0, ROT90, "Century Electronics", "Hunchback (Galaxian hardware)", GAME_SUPPORTS_SAVE ) |
trunk/src/mame/drivers/scobra.c
| r244899 | r244900 | |
| 177 | 177 | AM_RANGE(0xc200, 0xc203) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write) |
| 178 | 178 | ADDRESS_MAP_END |
| 179 | 179 | |
| 180 | | static ADDRESS_MAP_START( hustlerb3_map, AS_PROGRAM, 8, scobra_state ) |
| 181 | | ADDRESS_MAP_UNMAP_HIGH |
| 182 | | AM_RANGE(0x0000, 0x7fff) AM_ROM |
| 183 | | AM_RANGE(0x8000, 0x87ff) AM_RAM |
| 184 | | AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_SHARE("videoram") |
| 185 | | AM_RANGE(0x9800, 0x983f) AM_RAM_WRITE(galaxold_attributesram_w) AM_SHARE("attributesram") |
| 186 | | AM_RANGE(0x9840, 0x985f) AM_RAM AM_SHARE("spriteram") |
| 187 | | AM_RANGE(0x9860, 0x987f) AM_RAM AM_SHARE("bulletsram") |
| 188 | | AM_RANGE(0x9880, 0x98ff) AM_RAM |
| 189 | | AM_RANGE(0xb001, 0xb001) AM_WRITE(galaxold_nmi_enable_w) |
| 190 | | AM_RANGE(0xb006, 0xb006) AM_WRITE(galaxold_flip_screen_y_w) |
| 191 | | AM_RANGE(0xb007, 0xb007) AM_WRITE(galaxold_flip_screen_x_w) |
| 192 | | AM_RANGE(0xa000, 0xa000) AM_READ_PORT("IN0") |
| 193 | | AM_RANGE(0xa800, 0xa800) AM_READ_PORT("IN1") |
| 194 | | AM_RANGE(0xb000, 0xb000) AM_READ_PORT("IN2") |
| 195 | | AM_RANGE(0xb800, 0xb800) AM_READ(watchdog_reset_r) |
| 196 | 180 | |
| 197 | | // NOTE: hardware does not have any 8255 chip. Is this handled through TTL, or a leftover? |
| 198 | | // Is b800 the actual sound comms? The soundroms are not dumped, so we can't know... |
| 199 | | // AM_RANGE(0xb800, 0xb800) AM_WRITENOP |
| 200 | | AM_RANGE(0xc200, 0xc203) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write) |
| 201 | | ADDRESS_MAP_END |
| 202 | | |
| 203 | 181 | static ADDRESS_MAP_START( mimonkey_map, AS_PROGRAM, 8, scobra_state ) |
| 204 | 182 | AM_RANGE(0x0000, 0x3fff) AM_ROM |
| 205 | 183 | AM_RANGE(0x8000, 0x87ff) AM_RAM |
| r244899 | r244900 | |
| 596 | 574 | INPUT_PORTS_END |
| 597 | 575 | |
| 598 | 576 | |
| 599 | | static INPUT_PORTS_START( hustlerb3 ) |
| 600 | | PORT_START("IN0") |
| 601 | | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 ) |
| 602 | | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_COIN2 ) |
| 603 | | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) |
| 604 | | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) |
| 605 | | PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) |
| 606 | | PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 607 | | PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 608 | | PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 609 | 577 | |
| 610 | | PORT_START("IN1") |
| 611 | | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_START1 ) |
| 612 | | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START2 ) |
| 613 | | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_COCKTAIL |
| 614 | | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_COCKTAIL |
| 615 | | PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL |
| 616 | | PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 617 | 578 | |
| 618 | | // 6-pos dipswitch on mainboard K4 |
| 619 | | PORT_DIPNAME( 0x40, 0x00, "Half Coinage" ) |
| 620 | | PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) |
| 621 | | PORT_DIPSETTING( 0x40, DEF_STR( On ) ) |
| 622 | | PORT_DIPNAME( 0x80, 0x00, DEF_STR( Cabinet ) ) |
| 623 | | PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) |
| 624 | | PORT_DIPSETTING( 0x80, DEF_STR( Cocktail ) ) |
| 625 | | |
| 626 | | PORT_START("IN2") |
| 627 | | PORT_DIPNAME( 0x01, 0x00, DEF_STR( Coin_A ) ) |
| 628 | | PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) PORT_CONDITION("IN1", 0x40, EQUALS, 0x40) |
| 629 | | PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) PORT_CONDITION("IN1", 0x40, EQUALS, 0x00) |
| 630 | | PORT_DIPSETTING( 0x01, DEF_STR( 1C_3C ) ) PORT_CONDITION("IN1", 0x40, EQUALS, 0x40) |
| 631 | | PORT_DIPSETTING( 0x01, DEF_STR( 1C_6C ) ) PORT_CONDITION("IN1", 0x40, EQUALS, 0x00) |
| 632 | | PORT_DIPNAME( 0x02, 0x00, DEF_STR( Coin_B ) ) |
| 633 | | PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) PORT_CONDITION("IN1", 0x40, EQUALS, 0x40) |
| 634 | | PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) PORT_CONDITION("IN1", 0x40, EQUALS, 0x00) |
| 635 | | PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) ) PORT_CONDITION("IN1", 0x40, EQUALS, 0x40) |
| 636 | | PORT_DIPSETTING( 0x02, DEF_STR( 1C_6C ) ) PORT_CONDITION("IN1", 0x40, EQUALS, 0x00) |
| 637 | | PORT_DIPNAME( 0x0c, 0x08, DEF_STR( Lives ) ) |
| 638 | | PORT_DIPSETTING( 0x00, "1" ) |
| 639 | | PORT_DIPSETTING( 0x04, "2" ) |
| 640 | | PORT_DIPSETTING( 0x08, "3" ) |
| 641 | | PORT_DIPSETTING( 0x0c, "Infinite (Cheat)" ) |
| 642 | | PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 643 | | PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 644 | | PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 645 | | PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN ) |
| 646 | | INPUT_PORTS_END |
| 647 | | |
| 648 | | |
| 649 | 579 | static INPUT_PORTS_START( mimonkey ) |
| 650 | 580 | PORT_START("IN0") |
| 651 | 581 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2) |
| r244899 | r244900 | |
| 919 | 849 | MCFG_CPU_PROGRAM_MAP(hustlerb_map) |
| 920 | 850 | MACHINE_CONFIG_END |
| 921 | 851 | |
| 922 | | static MACHINE_CONFIG_DERIVED( hustlerb3, hustler ) |
| 923 | 852 | |
| 924 | | /* basic machine hardware */ |
| 925 | | MCFG_CPU_MODIFY("maincpu") |
| 926 | | MCFG_CPU_PROGRAM_MAP(hustlerb3_map) |
| 927 | | MACHINE_CONFIG_END |
| 928 | 853 | |
| 929 | | |
| 930 | 854 | /*************************************************************************** |
| 931 | 855 | |
| 932 | 856 | Game driver(s) |
| r244899 | r244900 | |
| 1231 | 1155 | ROM_LOAD( "27s19.bin", 0x0000, 0x0020, CRC(aa1f7f5e) SHA1(311dd17aa11490a1173c76223e4ccccf8ea29850) ) |
| 1232 | 1156 | ROM_END |
| 1233 | 1157 | |
| 1234 | | ROM_START( hustlerb3 ) |
| 1235 | | ROM_REGION( 0x10000, "maincpu", 0 ) |
| 1236 | | ROM_LOAD( "billiard_ic4.a4", 0x0000, 0x2000, CRC(545a27fd) SHA1(8b064dd6a9a82248301e0f53dc1c4fd91e506025) ) |
| 1237 | | ROM_LOAD( "billiard_ic3.a3", 0x2000, 0x2000, CRC(bec503b1) SHA1(cdbe650b829cd4424141058467cd64cfffe1b1e1) ) |
| 1238 | 1158 | |
| 1239 | | ROM_REGION( 0x10000, "audiocpu", 0 ) |
| 1240 | | // the frogger below which appears to be the same hw had no sound roms either.. I suspect something else is going on here |
| 1241 | | ROM_LOAD( "hustler.6", 0x0000, 0x0800, BAD_DUMP CRC(7a946544) SHA1(7ee2ad3fdf996f08534fb87fc02b619c168f420c) ) // not found on board - taken from parent |
| 1242 | | ROM_LOAD( "hustler.7", 0x0800, 0x0800, BAD_DUMP CRC(3db57351) SHA1(e5075a7130a80d2bf24f0556c2589dff0625ee60) ) // not found on board - taken from parent |
| 1243 | 1159 | |
| 1244 | | ROM_REGION( 0x1000, "gfx1", 0 ) |
| 1245 | | ROM_LOAD( "billiard_ic11.d1", 0x0000, 0x0800, CRC(0bdfad0e) SHA1(8e6f1737604f3801c03fa2e9a5e6a2778b54bae8) ) |
| 1246 | | ROM_LOAD( "billiard_ic12.d2", 0x0800, 0x0800, CRC(8e062177) SHA1(7e52a1669804b6c2f694cfc64b04abc8246bb0c2) ) |
| 1247 | | |
| 1248 | | ROM_REGION( 0x0020, "proms", 0 ) |
| 1249 | | ROM_LOAD( "ic10.c3", 0x0000, 0x0020, CRC(aa1f7f5e) SHA1(311dd17aa11490a1173c76223e4ccccf8ea29850) ) |
| 1250 | | |
| 1251 | | ROM_REGION( 0x0020, "user1", 0 ) /* decode PROMs */ |
| 1252 | | ROM_LOAD( "ic7.b3", 0x0000, 0x0020, CRC(4ac17114) SHA1(1fa34a556fe445a6bdabfe75b4b679cab6553c8b) ) |
| 1253 | | ROM_END |
| 1254 | | |
| 1255 | | // https://www.youtube.com/watch?v=r7di0_Yt1l8 |
| 1256 | | ROM_START( froggerv ) |
| 1257 | | ROM_REGION( 0x10000, "maincpu", 0 ) |
| 1258 | | ROM_LOAD( "rana_ic4.ic4", 0x0000, 0x2000, CRC(ed39f6d8) SHA1(8ca60be30dfc5c54fbc129fa0024987d853aad39) ) |
| 1259 | | ROM_LOAD( "rana_ic3.ic3", 0x2000, 0x2000, CRC(f8313d5d) SHA1(76f8e382d5cfad4eafbcd8d42bc9a9f03a5eb5f8) ) |
| 1260 | | |
| 1261 | | ROM_REGION( 0x10000, "audiocpu", ROMREGION_ERASE00 ) |
| 1262 | | // no roms for 2nd z80 present, has very different sound to original.. |
| 1263 | | |
| 1264 | | ROM_REGION( 0x1000, "gfx1", 0 ) |
| 1265 | | ROM_LOAD( "rana_ic11.ic11", 0x0000, 0x0800, CRC(a1199087) SHA1(4492b021a6b5ae9a9e2ab97914ce1a5e5e5b64ab) ) |
| 1266 | | ROM_LOAD( "rana_ic12.ic12", 0x0800, 0x0800, CRC(c1690dfc) SHA1(c6fdb1b9ec4fb7da2566b0c71e3e2f931cdece68) ) |
| 1267 | | |
| 1268 | | ROM_REGION( 0x0020, "proms", 0 ) |
| 1269 | | ROM_LOAD( "ic10", 0x0000, 0x0020, CRC(4e3caeab) SHA1(a25083c3e36d28afdefe4af6e6d4f3155e303625) ) |
| 1270 | | |
| 1271 | | ROM_REGION( 0x0020, "user1", 0 ) /* decode PROMs */ |
| 1272 | | ROM_LOAD( "ic7", 0x0000, 0x0020, CRC(4ac17114) SHA1(1fa34a556fe445a6bdabfe75b4b679cab6553c8b) ) |
| 1273 | | ROM_END |
| 1274 | | |
| 1275 | | |
| 1276 | | |
| 1277 | 1160 | ROM_START( hustlerb4 ) |
| 1278 | 1161 | ROM_REGION( 0x10000, "maincpu", 0 ) // identical to hustlerb but in 6 roms instead of 3 |
| 1279 | 1162 | ROM_LOAD( "1.d2", 0x0000, 0x0800, CRC(f87d75c7) SHA1(48f0f5289366a3c4dec86f5bb48d16a33745844d) ) |
| r244899 | r244900 | |
| 1297 | 1180 | ROM_REGION( 0x0800, "unk", 0 ) |
| 1298 | 1181 | ROM_LOAD( "top.c5", 0x0000, 0x0800, CRC(88226086) SHA1(fe2da172313063e5b056fc8c8d8b2a5c64db5179) ) |
| 1299 | 1182 | ROM_END |
| 1183 | |
| 1300 | 1184 | ROM_START( mimonkey ) |
| 1301 | 1185 | ROM_REGION( 0x10000, "maincpu", 0 ) |
| 1302 | 1186 | ROM_LOAD( "mm1.2e", 0x0000, 0x1000, CRC(9019f1b1) SHA1(0c45f64e39b9a182f6162ab520ced6ef0686466c) ) |
| r244899 | r244900 | |
| 1365 | 1249 | GAME( 1981, billiard, hustler, hustler, hustler, scramble_state, billiard, ROT90, "bootleg", "The Billiards (Video Hustler bootleg)", GAME_SUPPORTS_SAVE ) |
| 1366 | 1250 | GAME( 1981, hustlerb, hustler, hustlerb, hustler, driver_device, 0, ROT90, "bootleg (Digimatic)", "Video Hustler (bootleg, set 1)", GAME_SUPPORTS_SAVE ) |
| 1367 | 1251 | GAME( 1981, hustlerb2, hustler, hustler, hustler, scramble_state, hustlerd, ROT90, "bootleg", "Fatsy Gambler (Video Hustler bootleg)", GAME_SUPPORTS_SAVE ) |
| 1368 | | GAME( 1981, hustlerb3, hustler, hustlerb3, hustlerb3, scramble_state, hustlerd, ROT90, "bootleg (Videotron)", "Video Pool (Video Hustler bootleg)", GAME_SUPPORTS_SAVE ) |
| 1369 | 1252 | GAME( 1981, hustlerb4, hustler, hustlerb4, hustler, driver_device, 0, ROT90, "bootleg", "Video Hustler (bootleg, set 2)", GAME_SUPPORTS_SAVE ) |
| 1370 | 1253 | |
| 1371 | 1254 | GAME( 1982, mimonkey, 0, mimonkey, mimonkey, scramble_state, mimonkey, ROT90, "Universal Video Games", "Mighty Monkey", GAME_SUPPORTS_SAVE ) |
| 1372 | 1255 | GAME( 1982, mimonsco, mimonkey, mimonkey, mimonsco, scramble_state, mimonsco, ROT90, "bootleg", "Mighty Monkey (bootleg on Super Cobra hardware)", GAME_SUPPORTS_SAVE ) |
| 1373 | 1256 | |
| 1374 | | GAME( 1981, froggerv, frogger, hustlerb3, hustlerb3, scramble_state, hustlerd, ROT90, "bootleg (Videotron / Gamepack)", "Frogger (Videotron bootleg)", GAME_NOT_WORKING ) |