Previous 199869 Revisions Next

r23611 Monday 10th June, 2013 at 22:40:20 UTC by hap
attackfc is playable now, the dump turned out to be fine
[src/mame]mame.lst
[src/mame/drivers]8080bw.c
[src/mame/includes]8080bw.h

trunk/src/mame/includes/8080bw.h
r23610r23611
104104   DECLARE_DRIVER_INIT(invmulti);
105105   DECLARE_DRIVER_INIT(spacecom);
106106   DECLARE_DRIVER_INIT(vortex);
107   DECLARE_DRIVER_INIT(attackfc);
107108
108109   DECLARE_MACHINE_START(extra_8080bw);
109110   DECLARE_MACHINE_START(schaser);
trunk/src/mame/drivers/8080bw.c
r23610r23611
30163016   INVADERS_CAB_TYPE_PORT
30173017INPUT_PORTS_END
30183018
3019
3020
30193021/*****************************************************
3020  Attack Force
3021*****************************************************/
30223022
3023  Attack Force, by E.G.S., Italy
3024  Not much information is available for this game.
3025  It may have had an amber monitor?
3026 
3027  XTAL 20MHz
3028 
3029  TODO: sound
30233030
3031*****************************************************/
30243032
30253033static ADDRESS_MAP_START( attackfc_io_map, AS_IO, 8, _8080bw_state )
3026   //AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
3034   AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
3035   AM_RANGE(0x02, 0x02) AM_WRITENOP
3036   AM_RANGE(0x03, 0x03) AM_DEVREADWRITE("mb14241", mb14241_device, shift_result_r, shift_data_w)
3037   AM_RANGE(0x04, 0x04) AM_WRITENOP
3038   AM_RANGE(0x05, 0x05) AM_WRITENOP
3039   AM_RANGE(0x06, 0x06) AM_WRITENOP
3040   AM_RANGE(0x07, 0x07) AM_DEVWRITE("mb14241", mb14241_device, shift_count_w)
30273041ADDRESS_MAP_END
30283042
3029static ADDRESS_MAP_START( attackfc_map, AS_PROGRAM, 8, _8080bw_state )
3030   AM_RANGE(0x0000, 0x1fff) AM_ROM
3031   AM_RANGE(0x2000, 0x3fff) AM_RAM AM_SHARE("main_ram")
30323043
3033//   AM_RANGE(0xf000, 0xffff) AM_RAM
3034ADDRESS_MAP_END
3044static INPUT_PORTS_START( attackfc )
3045   PORT_START("IN0")
3046   PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_2WAY
3047   PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_2WAY
3048   PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON1 )
3049   PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
3050   PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
3051   PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
3052   PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3053   PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 )
3054INPUT_PORTS_END
30353055
30363056
30373057static MACHINE_CONFIG_DERIVED_CLASS( attackfc, mw8080bw_root, _8080bw_state )
30383058
30393059   /* basic machine hardware */
30403060   MCFG_CPU_MODIFY("maincpu")
3041   MCFG_CPU_PROGRAM_MAP(attackfc_map)
30423061   MCFG_CPU_IO_MAP(attackfc_io_map)
3043   MCFG_MACHINE_START_OVERRIDE(_8080bw_state,extra_8080bw)
30443062
3045//   /* add shifter */
3046//   MCFG_MB14241_ADD("mb14241")
3063   /* add shifter */
3064   MCFG_MB14241_ADD("mb14241")
30473065
3048//   /* sound hardware */
3049//   MCFG_FRAGMENT_ADD(invaders_samples_audio)
3050//   MCFG_DISCRETE_ADD("discrete", 0, galactic)
3051//   MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
3052
3053   /* video hardware */
3054   MCFG_SCREEN_MODIFY("screen")
3055   MCFG_SCREEN_UPDATE_DRIVER(_8080bw_state, screen_update_invaders)
3066   /* sound hardware */
3067   // TODO: custom discrete
30563068MACHINE_CONFIG_END
30573069
30583070
3059static INPUT_PORTS_START( attackfc )
3060   PORT_START("IN0")
3061   PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNKNOWN )
3071DRIVER_INIT_MEMBER(_8080bw_state,attackfc)
3072{
3073   UINT8 *rom = memregion("maincpu")->base();
3074   UINT32 len = memregion("maincpu")->bytes();
3075   UINT8 *buffer = auto_alloc_array(machine(), UINT8, len);
3076   
3077   // swap a8/a9
3078   for (int i = 0; i < len; i++)
3079      buffer[BITSWAP16(i, 15,14,13,12,11,10,8,9, 7,6,5,4,3,2,1,0)] = rom[i];
30623080
3063   PORT_START("IN1")
3064   PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNKNOWN )
3081   memcpy(rom, buffer, len);
3082   auto_free(machine(), buffer);
3083}
30653084
3066   PORT_START("IN2")
3067   PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNKNOWN )
30683085
3069   /* Dummy controls port, P1 */
3070   INVADERS_CONTROL_PORT_P1
30713086
3072   /* Dummy controls port, P2 */
3073   INVADERS_CONTROL_PORT_P2
3074
3075   /* Dummy port for cocktail mode */
3076   INVADERS_CAB_TYPE_PORT
3077INPUT_PORTS_END
3078
3079
3080
30813087/*****************************************************
30823088
30833089 Space Invaders Multigame kit, Braze Technologies,
r23610r23611
45514557   ROM_LOAD( "31a.bin",      0x0800, 0x0400, CRC(787a4658) SHA1(5be3143bdba6a32256603be94400034a8ea1fda6) )
45524558   ROM_LOAD( "37a.bin",       0x0c00, 0x0400, CRC(ad6bfbbe) SHA1(5f5437b6c8e7dfe9649b25040862f8a51d8c43ed) )
45534559   ROM_LOAD( "32a.bin",       0x1000, 0x0400, CRC(cbe0a711) SHA1(6e5f4214a4b48b70464005f4263c9b1ec3cbbeb1) )
4554   ROM_LOAD( "33a.bin",       0x1800, 0x0400, BAD_DUMP CRC(53147393) SHA1(57e078f1734e382e8a46be09c133daab30c75681) )
4560   ROM_LOAD( "33a.bin",       0x1800, 0x0400, CRC(53147393) SHA1(57e078f1734e382e8a46be09c133daab30c75681) )
45554561   ROM_LOAD( "39a.bin",       0x1c00, 0x0400, CRC(f538cf08) SHA1(4a375a41ab5d9f0d9f9a2ebef4c448038c139204) )
45564562ROM_END
45574563
r23610r23611
46544660GAME (1978, claybust,   0,        claybust,  claybust,  driver_device, 0, ROT0,   "Model Racing", "Claybuster", GAME_SUPPORTS_SAVE | GAME_NO_SOUND ) // no titlescreen, Claybuster according to flyers
46554661GAME (1980, gunchamp,   0,        claybust,  gunchamp,  driver_device, 0, ROT0,   "Model Racing", "Gun Champ", GAME_SUPPORTS_SAVE | GAME_NO_SOUND ) // no titlescreen, Gun Champ according to original cab
46564662GAME( 19??, astropal,   0,        astropal,  astropal,  driver_device, 0, ROT0,   "Sidam?", "Astropal", GAME_SUPPORTS_SAVE | GAME_IMPERFECT_SOUND )
4657GAME( 1979, attackfc,   0,        attackfc,  attackfc,  driver_device, 0, ROT270, "Electronic Games Systems", "Attack Force", GAME_NOT_WORKING | GAME_NO_SOUND ) // not sure how close this is to invaders hw
4663GAME( 1979?,attackfc,   0,        attackfc,  attackfc,  _8080bw_state, attackfc, ROT0, "Electronic Games Systems", "Attack Force", GAME_SUPPORTS_SAVE | GAME_NO_SOUND )
46584664
46594665GAME( 2002, invmulti,   0,        invmulti,  invmulti,  _8080bw_state, invmulti, ROT270, "hack (Braze Technologies)", "Space Invaders Multigame (M8.03D)", GAME_IMPERFECT_SOUND | GAME_SUPPORTS_SAVE )
46604666GAME( 2002, invmultim3a,invmulti, invmulti,  invmulti,  _8080bw_state, invmulti, ROT270, "hack (Braze Technologies)", "Space Invaders Multigame (M8.03A)", GAME_IMPERFECT_SOUND | GAME_SUPPORTS_SAVE )
trunk/src/mame/mame.lst
r23610r23611
14921492spceking        // (c) 1978 Leijac Corporation (Konami)
14931493spcewars        // (c) 1978 Sanritsu
14941494astropal        // (c) 19?? Sidam
1495attackfc      //
1495attackfc      // (c) 1979? E.G.S.
14961496cosmo           // TDS & Mints
14971497darthvdr        // bootleg
14981498ultrainv

Previous 199869 Revisions Next


© 1997-2024 The MAME Team