trunk/src/mame/drivers/asteroid.c
| r242487 | r242488 | |
| 1013 | 1013 | m_maincpu->space(AS_PROGRAM).install_read_handler(0x2000, 0x2007, read8_delegate(FUNC(asteroid_state::asterock_IN0_r),this)); |
| 1014 | 1014 | } |
| 1015 | 1015 | |
| 1016 | DRIVER_INIT_MEMBER(asteroid_state,astdelux) |
| 1017 | { |
| 1018 | save_item(NAME(m_astdelux_bankswitch)); |
| 1019 | machine().save().register_postload(save_prepost_delegate(FUNC(asteroid_state::astdelux_bankswitch_restore), this)); |
| 1020 | } |
| 1016 | 1021 | |
| 1017 | | |
| 1018 | 1022 | /************************************* |
| 1019 | 1023 | * |
| 1020 | 1024 | * Game drivers |
| r242487 | r242488 | |
| 1032 | 1036 | GAME( 1979, meteorho, asteroid, asteroid, asteroid, driver_device, 0, ROT0, "bootleg (Hoei)", "Meteor (bootleg of Asteroids)", GAME_SUPPORTS_SAVE ) |
| 1033 | 1037 | GAME( 1979, hyperspc, asteroid, asteroid, asteroid, driver_device, 0, ROT0, "bootleg (Rumiano)", "Hyperspace (bootleg of Asteroids)", GAME_SUPPORTS_SAVE ) |
| 1034 | 1038 | |
| 1035 | | GAMEL(1980, astdelux, 0, astdelux, astdelux, driver_device, 0, ROT0, "Atari", "Asteroids Deluxe (rev 3)", GAME_SUPPORTS_SAVE, layout_astdelux ) |
| 1036 | | GAMEL(1980, astdelux2, astdelux, astdelux, astdelux, driver_device, 0, ROT0, "Atari", "Asteroids Deluxe (rev 2)", GAME_SUPPORTS_SAVE, layout_astdelux ) |
| 1037 | | GAMEL(1980, astdelux1, astdelux, astdelux, astdelux, driver_device, 0, ROT0, "Atari", "Asteroids Deluxe (rev 1)", GAME_SUPPORTS_SAVE, layout_astdelux ) |
| 1039 | GAMEL(1980, astdelux, 0, astdelux, astdelux, asteroid_state, astdelux, ROT0, "Atari", "Asteroids Deluxe (rev 3)", GAME_SUPPORTS_SAVE, layout_astdelux ) |
| 1040 | GAMEL(1980, astdelux2, astdelux, astdelux, astdelux, asteroid_state, astdelux, ROT0, "Atari", "Asteroids Deluxe (rev 2)", GAME_SUPPORTS_SAVE, layout_astdelux ) |
| 1041 | GAMEL(1980, astdelux1, astdelux, astdelux, astdelux, asteroid_state, astdelux, ROT0, "Atari", "Asteroids Deluxe (rev 1)", GAME_SUPPORTS_SAVE, layout_astdelux ) |
| 1038 | 1042 | |
| 1039 | 1043 | GAME( 1979, llander, 0, llander, llander, driver_device, 0, ROT0, "Atari", "Lunar Lander (rev 2)", GAME_SUPPORTS_SAVE ) |
| 1040 | 1044 | GAME( 1979, llander1, llander, llander, llander1, driver_device, 0, ROT0, "Atari", "Lunar Lander (rev 1)", GAME_SUPPORTS_SAVE ) |
trunk/src/mame/includes/asteroid.h
| r242487 | r242488 | |
| 12 | 12 | public: |
| 13 | 13 | asteroid_state(const machine_config &mconfig, device_type type, const char *tag) |
| 14 | 14 | : driver_device(mconfig, type, tag), |
| 15 | m_maincpu(*this, "maincpu"), |
| 16 | m_dvg(*this, "dvg"), |
| 17 | m_discrete(*this, "discrete"), |
| 15 | 18 | m_ram1(*this, "ram1"), |
| 16 | | m_ram2(*this, "ram2"), |
| 17 | | m_discrete(*this, "discrete") , |
| 18 | | m_maincpu(*this, "maincpu"), |
| 19 | | m_dvg(*this, "dvg") { } |
| 19 | m_ram2(*this, "ram2") { } |
| 20 | 20 | |
| 21 | /* devices */ |
| 22 | required_device<cpu_device> m_maincpu; |
| 23 | required_device<dvg_device> m_dvg; |
| 24 | required_device<discrete_device> m_discrete; |
| 25 | |
| 26 | /* memory pointers */ |
| 21 | 27 | optional_shared_ptr<UINT8> m_ram1; |
| 22 | 28 | optional_shared_ptr<UINT8> m_ram2; |
| 23 | | required_device<discrete_device> m_discrete; |
| 29 | |
| 30 | int m_astdelux_bankswitch; // for postload |
| 31 | |
| 32 | void astdelux_bankswitch_restore(); |
| 33 | |
| 24 | 34 | DECLARE_WRITE8_MEMBER(astdelux_coin_counter_w); |
| 25 | 35 | DECLARE_WRITE8_MEMBER(llander_led_w); |
| 26 | 36 | DECLARE_READ8_MEMBER(asteroid_IN0_r); |
| r242487 | r242488 | |
| 30 | 40 | DECLARE_WRITE8_MEMBER(asteroid_bank_switch_w); |
| 31 | 41 | DECLARE_WRITE8_MEMBER(astdelux_bank_switch_w); |
| 32 | 42 | DECLARE_WRITE8_MEMBER(astdelux_led_w); |
| 33 | | DECLARE_CUSTOM_INPUT_MEMBER(clock_r); |
| 34 | | DECLARE_DRIVER_INIT(asterock); |
| 35 | | DECLARE_DRIVER_INIT(asteroidb); |
| 36 | | virtual void machine_reset(); |
| 37 | | INTERRUPT_GEN_MEMBER(asteroid_interrupt); |
| 38 | | INTERRUPT_GEN_MEMBER(asterock_interrupt); |
| 39 | | INTERRUPT_GEN_MEMBER(llander_interrupt); |
| 40 | 43 | DECLARE_WRITE8_MEMBER(asteroid_explode_w); |
| 41 | 44 | DECLARE_WRITE8_MEMBER(asteroid_thump_w); |
| 42 | 45 | DECLARE_WRITE8_MEMBER(asteroid_sounds_w); |
| r242487 | r242488 | |
| 44 | 47 | DECLARE_WRITE8_MEMBER(asteroid_noise_reset_w); |
| 45 | 48 | DECLARE_WRITE8_MEMBER(llander_snd_reset_w); |
| 46 | 49 | DECLARE_WRITE8_MEMBER(llander_sounds_w); |
| 50 | |
| 51 | DECLARE_CUSTOM_INPUT_MEMBER(clock_r); |
| 52 | |
| 53 | INTERRUPT_GEN_MEMBER(asteroid_interrupt); |
| 54 | INTERRUPT_GEN_MEMBER(asterock_interrupt); |
| 55 | INTERRUPT_GEN_MEMBER(llander_interrupt); |
| 56 | |
| 57 | DECLARE_DRIVER_INIT(asterock); |
| 58 | DECLARE_DRIVER_INIT(asteroidb); |
| 59 | DECLARE_DRIVER_INIT(astdelux); |
| 60 | |
| 61 | virtual void machine_reset(); |
| 47 | 62 | DECLARE_MACHINE_RESET(llander); |
| 48 | | required_device<cpu_device> m_maincpu; |
| 49 | | required_device<dvg_device> m_dvg; |
| 50 | 63 | }; |
| 51 | 64 | |
| 52 | 65 | /*----------- defined in audio/asteroid.c -----------*/ |