trunk/src/mame/drivers/wink.c
| r243332 | r243333 | |
| 22 | 22 | public: |
| 23 | 23 | wink_state(const machine_config &mconfig, device_type type, const char *tag) |
| 24 | 24 | : driver_device(mconfig, type, tag), |
| 25 | | m_videoram(*this, "videoram"), |
| 26 | 25 | m_maincpu(*this, "maincpu"), |
| 27 | 26 | m_audiocpu(*this, "audiocpu"), |
| 28 | | m_gfxdecode(*this, "gfxdecode") { } |
| 27 | m_gfxdecode(*this, "gfxdecode"), |
| 28 | m_videoram(*this, "videoram") { } |
| 29 | 29 | |
| 30 | required_device<cpu_device> m_maincpu; |
| 31 | required_device<cpu_device> m_audiocpu; |
| 32 | required_device<gfxdecode_device> m_gfxdecode; |
| 33 | |
| 30 | 34 | required_shared_ptr<UINT8> m_videoram; |
| 35 | |
| 31 | 36 | tilemap_t *m_bg_tilemap; |
| 32 | 37 | UINT8 m_sound_flag; |
| 33 | 38 | UINT8 m_tile_bank; |
| 39 | |
| 34 | 40 | DECLARE_WRITE8_MEMBER(bgram_w); |
| 35 | 41 | DECLARE_WRITE8_MEMBER(player_mux_w); |
| 36 | 42 | DECLARE_WRITE8_MEMBER(tile_banking_w); |
| r243332 | r243333 | |
| 41 | 47 | DECLARE_READ8_MEMBER(prot_r); |
| 42 | 48 | DECLARE_WRITE8_MEMBER(prot_w); |
| 43 | 49 | DECLARE_READ8_MEMBER(sound_r); |
| 50 | |
| 51 | TILE_GET_INFO_MEMBER(get_bg_tile_info); |
| 52 | |
| 44 | 53 | DECLARE_DRIVER_INIT(wink); |
| 45 | | TILE_GET_INFO_MEMBER(get_bg_tile_info); |
| 54 | virtual void machine_start(); |
| 46 | 55 | virtual void machine_reset(); |
| 47 | 56 | virtual void video_start(); |
| 57 | |
| 48 | 58 | UINT32 screen_update_wink(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); |
| 59 | |
| 49 | 60 | INTERRUPT_GEN_MEMBER(wink_sound); |
| 50 | | required_device<cpu_device> m_maincpu; |
| 51 | | required_device<cpu_device> m_audiocpu; |
| 52 | | required_device<gfxdecode_device> m_gfxdecode; |
| 53 | 61 | }; |
| 54 | 62 | |
| 55 | 63 | |
| r243332 | r243333 | |
| 331 | 339 | m_sound_flag ^= 0x80; |
| 332 | 340 | } |
| 333 | 341 | |
| 342 | void wink_state::machine_start() |
| 343 | { |
| 344 | save_item(NAME(m_sound_flag)); |
| 345 | save_item(NAME(m_tile_bank)); |
| 346 | } |
| 347 | |
| 334 | 348 | void wink_state::machine_reset() |
| 335 | 349 | { |
| 336 | 350 | m_sound_flag = 0; |
| r243332 | r243333 | |
| 431 | 445 | ROM[i] += BITSWAP8(i & 0xff, 7,5,3,1,6,4,2,0); |
| 432 | 446 | } |
| 433 | 447 | |
| 434 | | GAME( 1985, wink, 0, wink, wink, wink_state, wink, ROT0, "Midcoin", "Wink (set 1)", GAME_IMPERFECT_SOUND | GAME_UNEMULATED_PROTECTION ) |
| 435 | | GAME( 1985, winka, wink, wink, wink, wink_state, wink, ROT0, "Midcoin", "Wink (set 2)", GAME_IMPERFECT_SOUND | GAME_UNEMULATED_PROTECTION ) |
| 448 | GAME( 1985, wink, 0, wink, wink, wink_state, wink, ROT0, "Midcoin", "Wink (set 1)", GAME_IMPERFECT_SOUND | GAME_UNEMULATED_PROTECTION | GAME_SUPPORTS_SAVE ) |
| 449 | GAME( 1985, winka, wink, wink, wink, wink_state, wink, ROT0, "Midcoin", "Wink (set 2)", GAME_IMPERFECT_SOUND | GAME_UNEMULATED_PROTECTION | GAME_SUPPORTS_SAVE ) |