Previous 199869 Revisions Next

r18520 Sunday 14th October, 2012 at 16:15:06 UTC by hap
made video hustler bootlegs working
[src/mame/drivers]scobra.c

trunk/src/mame/drivers/scobra.c
r18519r18520
193193   AM_RANGE(0x0000, 0x7fff) AM_ROM
194194   AM_RANGE(0x8000, 0x87ff) AM_RAM
195195   AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_SHARE("videoram")
196
197196   AM_RANGE(0x9800, 0x983f) AM_RAM_WRITE(galaxold_attributesram_w) AM_SHARE("attributesram")
198197   AM_RANGE(0x9840, 0x985f) AM_RAM AM_SHARE("spriteram")
199198   AM_RANGE(0x9860, 0x987f) AM_RAM AM_SHARE("bulletsram")
200199   AM_RANGE(0x9880, 0x98ff) AM_RAM
201
202200   AM_RANGE(0xb001, 0xb001) AM_WRITE(galaxold_nmi_enable_w)
203
204//a000
205//a800
206//b000
207
208
209   AM_RANGE(0xa000, 0xa000) AM_READ_PORT("IN0") // coin
210//   AM_RANGE(0xa800, 0xa800) AM_READ_PORT("IN0")
211   AM_RANGE(0xb000, 0xb000) AM_READ_PORT("IN2") // dips
212
213
201   AM_RANGE(0xb006, 0xb006) AM_WRITE(galaxold_flip_screen_y_w)
202   AM_RANGE(0xb007, 0xb007) AM_WRITE(galaxold_flip_screen_x_w)
203   AM_RANGE(0xa000, 0xa000) AM_READ_PORT("IN0")
204   AM_RANGE(0xa800, 0xa800) AM_READ_PORT("IN1")
205   AM_RANGE(0xb000, 0xb000) AM_READ_PORT("IN2")
214206   AM_RANGE(0xb800, 0xb800) AM_READ(watchdog_reset_r)
215207
216//   AM_RANGE(0xc100, 0xc103) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
217//   AM_RANGE(0xc200, 0xc203) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write)
208   // NOTE: hardware does not have any 8255 chip. Is this handled through TTL, or a leftover?
209   // Is b800 the actual sound comms? The soundroms are not dumped, so we can't know...
210//   AM_RANGE(0xb800, 0xb800) AM_WRITENOP
211   AM_RANGE(0xc200, 0xc203) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write)
218212ADDRESS_MAP_END
219213
220static ADDRESS_MAP_START( hustlerb3_sound_map, AS_PROGRAM, 8, scobra_state )
221   AM_RANGE(0x0000, 0xffff) AM_NOP
222ADDRESS_MAP_END
223
224
225214static ADDRESS_MAP_START( mimonkey_map, AS_PROGRAM, 8, scobra_state )
226215   AM_RANGE(0x0000, 0x3fff) AM_ROM
227216   AM_RANGE(0x8000, 0x87ff) AM_RAM
r18519r18520
260249ADDRESS_MAP_END
261250
262251
263static ADDRESS_MAP_START( hustlerb_sound_map, AS_PROGRAM, 8, scobra_state )
264   AM_RANGE(0x0000, 0x2fff) AM_ROM
265   AM_RANGE(0x6000, 0x6fff) AM_WRITE(frogger_filter_w)
266   AM_RANGE(0x8000, 0x8fff) AM_RAM_READ(scobra_soundram_r) AM_SHARE("soundram")  /* only here to initialize pointer */
267ADDRESS_MAP_END
268
269
270252static ADDRESS_MAP_START( scobra_sound_io_map, AS_IO, 8, scobra_state )
271253   ADDRESS_MAP_GLOBAL_MASK(0xff)
272254   AM_RANGE(0x10, 0x10) AM_DEVWRITE_LEGACY("ay1", ay8910_address_w)
r18519r18520
288270ADDRESS_MAP_END
289271
290272
273static ADDRESS_MAP_START( hustlerb_sound_map, AS_PROGRAM, 8, scobra_state )
274   AM_RANGE(0x0000, 0x2fff) AM_ROM
275   AM_RANGE(0x6000, 0x6fff) AM_WRITE(frogger_filter_w)
276   AM_RANGE(0x8000, 0x8fff) AM_RAM_READ(scobra_soundram_r) AM_SHARE("soundram")  /* only here to initialize pointer */
277ADDRESS_MAP_END
278
291279static ADDRESS_MAP_START( hustlerb_sound_io_map, AS_IO, 8, scobra_state )
292280   ADDRESS_MAP_GLOBAL_MASK(0xff)
293281   AM_RANGE(0x40, 0x40) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w)
294282   AM_RANGE(0x80, 0x80) AM_DEVREADWRITE_LEGACY("aysnd", ay8910_r, ay8910_data_w)
295283ADDRESS_MAP_END
296284
285
297286/* stratgyx coinage DIPs are spread across two input ports */
298287CUSTOM_INPUT_MEMBER(scobra_state::stratgyx_coinage_r)
299288{
r18519r18520
593582   PORT_DIPSETTING(    0x00, "1" )
594583   PORT_DIPSETTING(    0x01, "2" )
595584   PORT_DIPSETTING(    0x02, "3" )
596   PORT_DIPSETTING(    0x03, "Infinite (Test)" )
585   PORT_DIPSETTING(    0x03, "Infinite (Cheat)" )
597586   PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
598587   PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
599588   PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL
r18519r18520
617606   PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
618607INPUT_PORTS_END
619608
609
610static INPUT_PORTS_START( hustlerb3 )
611   PORT_START("IN0")
612   PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 )
613   PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_COIN2 )
614   PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT )
615   PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT )
616   PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 )
617   PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN )
618   PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN )
619   PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
620
621   PORT_START("IN1")
622   PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_START1 )
623   PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START2 )
624   PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_COCKTAIL
625   PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_COCKTAIL
626   PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL
627   PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN )
628   
629   // 6-pos dipswitch on mainboard K4
630   PORT_DIPNAME( 0x40, 0x00, "Half Coinage" )
631   PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
632   PORT_DIPSETTING(    0x40, DEF_STR( On ) )
633   PORT_DIPNAME( 0x80, 0x00, DEF_STR( Cabinet ) )
634   PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
635   PORT_DIPSETTING(    0x80, DEF_STR( Cocktail ) )
636
637   PORT_START("IN2")
638   PORT_DIPNAME( 0x01, 0x00, DEF_STR( Coin_A ) )
639   PORT_DIPSETTING(    0x00, DEF_STR( 2C_1C ) )   PORT_CONDITION("IN1", 0x40, EQUALS, 0x40)
640   PORT_DIPSETTING(    0x00, DEF_STR( 1C_1C ) )   PORT_CONDITION("IN1", 0x40, EQUALS, 0x00)
641   PORT_DIPSETTING(    0x01, DEF_STR( 1C_3C ) )   PORT_CONDITION("IN1", 0x40, EQUALS, 0x40)
642   PORT_DIPSETTING(    0x01, DEF_STR( 1C_6C ) )   PORT_CONDITION("IN1", 0x40, EQUALS, 0x00)
643   PORT_DIPNAME( 0x02, 0x00, DEF_STR( Coin_B ) )
644   PORT_DIPSETTING(    0x00, DEF_STR( 2C_1C ) )   PORT_CONDITION("IN1", 0x40, EQUALS, 0x40)
645   PORT_DIPSETTING(    0x00, DEF_STR( 1C_1C ) )   PORT_CONDITION("IN1", 0x40, EQUALS, 0x00)
646   PORT_DIPSETTING(    0x02, DEF_STR( 1C_3C ) )   PORT_CONDITION("IN1", 0x40, EQUALS, 0x40)
647   PORT_DIPSETTING(    0x02, DEF_STR( 1C_6C ) )   PORT_CONDITION("IN1", 0x40, EQUALS, 0x00)
648   PORT_DIPNAME( 0x0c, 0x08, DEF_STR( Lives ) )
649   PORT_DIPSETTING(    0x00, "1" )
650   PORT_DIPSETTING(    0x04, "2" )
651   PORT_DIPSETTING(    0x08, "3" )
652   PORT_DIPSETTING(    0x0c, "Infinite (Cheat)" )
653   PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNKNOWN )
654   PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN )
655   PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN )
656   PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
657INPUT_PORTS_END
658
659
620660static INPUT_PORTS_START( mimonkey )
621661   PORT_START("IN0")
622662   PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)
r18519r18520
867907   /* basic machine hardware */
868908   MCFG_CPU_MODIFY("maincpu")
869909   MCFG_CPU_PROGRAM_MAP(hustlerb3_map)
870
871   MCFG_CPU_MODIFY("audiocpu")
872   MCFG_CPU_PROGRAM_MAP(hustlerb3_sound_map)
873910MACHINE_CONFIG_END
874911
875912
r18519r18520
12461283ROM_END
12471284
12481285
1249GAME( 1981, stratgyx,  0,        stratgyx,  stratgyx, scramble_state,  stratgyx,     ROT0,   "Konami", "Strategy X", GAME_SUPPORTS_SAVE )
1250GAME( 1981, stratgys,  stratgyx, stratgyx,  stratgyx, scramble_state,  stratgyx,     ROT0,   "Konami (Stern Electronics license)", "Strategy X (Stern Electronics)", GAME_SUPPORTS_SAVE )
1251GAME( 1982, strongx,   stratgyx, stratgyx,  stratgyx, scramble_state,  stratgyx,     ROT0,   "bootleg", "Strong X", GAME_SUPPORTS_SAVE )
1252GAME( 1982, darkplnt,  0,        darkplnt,  darkplnt, scramble_state,  darkplnt,     ROT180, "Stern Electronics", "Dark Planet", GAME_SUPPORTS_SAVE )
1253GAME( 1982, tazmani2,  tazmania, type2,     tazmania, scramble_state,  tazmani2,     ROT90,  "Stern Electronics", "Tazz-Mania (set 2)", GAME_SUPPORTS_SAVE )
1254GAME( 1982, rescue,    0,        rescue,    rescue, scramble_state,    rescue,       ROT90,  "Stern Electronics", "Rescue", GAME_SUPPORTS_SAVE )
1255GAME( 1982, rescueb,   rescue,   rescue,    rescue, scramble_state,    rescue,       ROT90,  "bootleg (Videl Games)", "Rescue (bootleg)", GAME_NOT_WORKING | GAME_SUPPORTS_SAVE )
1256GAME( 1982, aponow,    rescue,   rescue,    rescue, scramble_state,    rescue,       ROT90,  "bootleg", "Apocaljpse Now", GAME_SUPPORTS_SAVE )
1257GAME( 1983, minefld,   0,        minefld,   minefld, scramble_state,   minefld,      ROT90,  "Stern Electronics", "Minefield", GAME_SUPPORTS_SAVE )
1258GAME( 1981, hustler,   0,        hustler,   hustler, scramble_state,   hustler,      ROT90,  "Konami", "Video Hustler", GAME_SUPPORTS_SAVE )
1259GAME( 1981, hustlerd,  hustler,  hustler,   hustler, scramble_state,   hustlerd,     ROT90,  "Konami (Dynamo Games license)", "Video Hustler (Dynamo Games)", GAME_SUPPORTS_SAVE )
1260GAME( 1981, billiard,  hustler,  hustler,   hustler, scramble_state,   billiard,     ROT90,  "bootleg", "The Billiards (Video Hustler bootleg)", GAME_SUPPORTS_SAVE )
1261GAME( 1981, hustlerb,  hustler,  hustlerb,  hustler, scramble_state,   scramble_ppi, ROT90,  "bootleg (Digimatic)", "Video Hustler (bootleg)", GAME_SUPPORTS_SAVE )
1262GAME( 1981, hustlerb2, hustler,  hustler,   hustler, scramble_state,   scramble_ppi, ROT90,  "bootleg", "Fatsy Gambler (Video Hustler bootleg)", GAME_NO_SOUND | GAME_SUPPORTS_SAVE )
1263GAME( 1981, hustlerb3, hustler,  hustlerb3, hustler, scramble_state,   scramble_ppi, ROT90,  "bootleg (Videotron)", "Video Pool (Video Hustler bootleg)", GAME_SUPPORTS_SAVE | GAME_NOT_WORKING )
1264GAME( 1982, mimonkey,  0,        mimonkey,  mimonkey, scramble_state,  mimonkey,     ROT90,  "Universal Video Games", "Mighty Monkey", GAME_SUPPORTS_SAVE )
1265GAME( 1982, mimonsco,  mimonkey, mimonkey,  mimonsco, scramble_state,  mimonsco,     ROT90,  "bootleg", "Mighty Monkey (bootleg on Super Cobra hardware)", GAME_SUPPORTS_SAVE )
1286GAME( 1981, stratgyx,  0,        stratgyx,  stratgyx,  scramble_state,  stratgyx,     ROT0,   "Konami", "Strategy X", GAME_SUPPORTS_SAVE )
1287GAME( 1981, stratgys,  stratgyx, stratgyx,  stratgyx,  scramble_state,  stratgyx,     ROT0,   "Konami (Stern Electronics license)", "Strategy X (Stern Electronics)", GAME_SUPPORTS_SAVE )
1288GAME( 1982, strongx,   stratgyx, stratgyx,  stratgyx,  scramble_state,  stratgyx,     ROT0,   "bootleg", "Strong X", GAME_SUPPORTS_SAVE )
1289GAME( 1982, darkplnt,  0,        darkplnt,  darkplnt,  scramble_state,  darkplnt,     ROT180, "Stern Electronics", "Dark Planet", GAME_SUPPORTS_SAVE )
1290GAME( 1982, tazmani2,  tazmania, type2,     tazmania,  scramble_state,  tazmani2,     ROT90,  "Stern Electronics", "Tazz-Mania (set 2)", GAME_SUPPORTS_SAVE )
1291GAME( 1982, rescue,    0,        rescue,    rescue,    scramble_state,  rescue,       ROT90,  "Stern Electronics", "Rescue", GAME_SUPPORTS_SAVE )
1292GAME( 1982, rescueb,   rescue,   rescue,    rescue,    scramble_state,  rescue,       ROT90,  "bootleg (Videl Games)", "Rescue (bootleg)", GAME_NOT_WORKING | GAME_SUPPORTS_SAVE )
1293GAME( 1982, aponow,    rescue,   rescue,    rescue,    scramble_state,  rescue,       ROT90,  "bootleg", "Apocaljpse Now", GAME_SUPPORTS_SAVE )
1294GAME( 1983, minefld,   0,        minefld,   minefld,   scramble_state,  minefld,      ROT90,  "Stern Electronics", "Minefield", GAME_SUPPORTS_SAVE )
1295GAME( 1981, hustler,   0,        hustler,   hustler,   scramble_state,  hustler,      ROT90,  "Konami", "Video Hustler", GAME_SUPPORTS_SAVE )
1296GAME( 1981, hustlerd,  hustler,  hustler,   hustler,   scramble_state,  hustlerd,     ROT90,  "Konami (Dynamo Games license)", "Video Hustler (Dynamo Games)", GAME_SUPPORTS_SAVE )
1297GAME( 1981, billiard,  hustler,  hustler,   hustler,   scramble_state,  billiard,     ROT90,  "bootleg", "The Billiards (Video Hustler bootleg)", GAME_SUPPORTS_SAVE )
1298GAME( 1981, hustlerb,  hustler,  hustlerb,  hustler,   driver_device,   0,            ROT90,  "bootleg (Digimatic)", "Video Hustler (bootleg)", GAME_SUPPORTS_SAVE )
1299GAME( 1981, hustlerb2, hustler,  hustler,   hustler,   scramble_state,  hustlerd,     ROT90,  "bootleg", "Fatsy Gambler (Video Hustler bootleg)", GAME_SUPPORTS_SAVE )
1300GAME( 1981, hustlerb3, hustler,  hustlerb3, hustlerb3, scramble_state,  hustlerd,     ROT90,  "bootleg (Videotron)", "Video Pool (Video Hustler bootleg)", GAME_SUPPORTS_SAVE )
1301GAME( 1982, mimonkey,  0,        mimonkey,  mimonkey,  scramble_state,  mimonkey,     ROT90,  "Universal Video Games", "Mighty Monkey", GAME_SUPPORTS_SAVE )
1302GAME( 1982, mimonsco,  mimonkey, mimonkey,  mimonsco,  scramble_state,  mimonsco,     ROT90,  "bootleg", "Mighty Monkey (bootleg on Super Cobra hardware)", GAME_SUPPORTS_SAVE )
12661303

Previous 199869 Revisions Next


© 1997-2024 The MAME Team