trunk/src/mame/drivers/limenko.c
| r243228 | r243229 | |
| 34 | 34 | public: |
| 35 | 35 | limenko_state(const machine_config &mconfig, device_type type, const char *tag) |
| 36 | 36 | : driver_device(mconfig, type, tag), |
| 37 | m_maincpu(*this, "maincpu"), |
| 38 | m_oki(*this, "oki"), |
| 39 | m_qs1000(*this, "qs1000"), |
| 40 | m_gfxdecode(*this, "gfxdecode"), |
| 41 | m_palette(*this, "palette"), |
| 37 | 42 | m_mainram(*this, "mainram"), |
| 38 | 43 | m_fg_videoram(*this, "fg_videoram"), |
| 39 | 44 | m_md_videoram(*this, "md_videoram"), |
| 40 | 45 | m_bg_videoram(*this, "bg_videoram"), |
| 41 | 46 | m_spriteram(*this, "spriteram"), |
| 42 | 47 | m_spriteram2(*this, "spriteram2"), |
| 43 | | m_videoreg(*this, "videoreg"), |
| 44 | | m_maincpu(*this, "maincpu"), |
| 45 | | m_oki(*this, "oki"), |
| 46 | | m_gfxdecode(*this, "gfxdecode"), |
| 47 | | m_palette(*this, "palette") { } |
| 48 | m_videoreg(*this, "videoreg") { } |
| 48 | 49 | |
| 50 | required_device<cpu_device> m_maincpu; |
| 51 | optional_device<okim6295_device> m_oki; |
| 52 | optional_device<qs1000_device> m_qs1000; |
| 53 | required_device<gfxdecode_device> m_gfxdecode; |
| 54 | required_device<palette_device> m_palette; |
| 55 | |
| 49 | 56 | required_shared_ptr<UINT32> m_mainram; |
| 50 | 57 | required_shared_ptr<UINT32> m_fg_videoram; |
| 51 | 58 | required_shared_ptr<UINT32> m_md_videoram; |
| r243228 | r243229 | |
| 53 | 60 | required_shared_ptr<UINT32> m_spriteram; |
| 54 | 61 | required_shared_ptr<UINT32> m_spriteram2; |
| 55 | 62 | required_shared_ptr<UINT32> m_videoreg; |
| 63 | |
| 56 | 64 | tilemap_t *m_bg_tilemap; |
| 57 | 65 | tilemap_t *m_md_tilemap; |
| 58 | 66 | tilemap_t *m_fg_tilemap; |
| 67 | |
| 59 | 68 | int m_spriteram_bit; |
| 60 | 69 | bitmap_ind16 m_sprites_bitmap; |
| 61 | 70 | bitmap_ind8 m_sprites_bitmap_pri; |
| 62 | 71 | int m_prev_sprites_count; |
| 63 | 72 | UINT8 m_spotty_sound_cmd; |
| 73 | |
| 64 | 74 | DECLARE_WRITE32_MEMBER(limenko_coincounter_w); |
| 65 | 75 | DECLARE_WRITE32_MEMBER(bg_videoram_w); |
| 66 | 76 | DECLARE_WRITE32_MEMBER(md_videoram_w); |
| r243228 | r243229 | |
| 75 | 85 | DECLARE_READ32_MEMBER(legendoh_speedup_r); |
| 76 | 86 | DECLARE_READ32_MEMBER(sb2003_speedup_r); |
| 77 | 87 | DECLARE_READ32_MEMBER(spotty_speedup_r); |
| 78 | | DECLARE_CUSTOM_INPUT_MEMBER(spriteram_bit_r); |
| 79 | | |
| 80 | 88 | DECLARE_READ8_MEMBER(qs1000_p1_r); |
| 81 | 89 | DECLARE_WRITE8_MEMBER(qs1000_p1_w); |
| 82 | 90 | DECLARE_WRITE8_MEMBER(qs1000_p2_w); |
| 83 | 91 | DECLARE_WRITE8_MEMBER(qs1000_p3_w); |
| 92 | |
| 93 | DECLARE_CUSTOM_INPUT_MEMBER(spriteram_bit_r); |
| 94 | |
| 84 | 95 | DECLARE_DRIVER_INIT(common); |
| 85 | 96 | DECLARE_DRIVER_INIT(sb2003); |
| 86 | 97 | DECLARE_DRIVER_INIT(dynabomb); |
| 87 | 98 | DECLARE_DRIVER_INIT(legendoh); |
| 88 | 99 | DECLARE_DRIVER_INIT(spotty); |
| 100 | |
| 89 | 101 | TILE_GET_INFO_MEMBER(get_bg_tile_info); |
| 90 | 102 | TILE_GET_INFO_MEMBER(get_md_tile_info); |
| 91 | 103 | TILE_GET_INFO_MEMBER(get_fg_tile_info); |
| 104 | |
| 92 | 105 | virtual void video_start(); |
| 93 | 106 | UINT32 screen_update_limenko(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); |
| 94 | 107 | void draw_single_sprite(bitmap_ind16 &dest_bmp,const rectangle &clip,gfx_element *gfx,UINT32 code,UINT32 color,int flipx,int flipy,int sx,int sy,int priority); |
| 95 | 108 | void draw_sprites(UINT32 *sprites, const rectangle &cliprect, int count); |
| 96 | 109 | void copy_sprites(bitmap_ind16 &bitmap, bitmap_ind16 &sprites_bitmap, bitmap_ind8 &priority_bitmap, const rectangle &cliprect); |
| 97 | | required_device<cpu_device> m_maincpu; |
| 98 | | optional_device<okim6295_device> m_oki; |
| 99 | | required_device<gfxdecode_device> m_gfxdecode; |
| 100 | | required_device<palette_device> m_palette; |
| 101 | 110 | }; |
| 102 | 111 | |
| 103 | 112 | /***************************************************************************************************** |
| r243228 | r243229 | |
| 165 | 174 | |
| 166 | 175 | WRITE32_MEMBER(limenko_state::limenko_soundlatch_w) |
| 167 | 176 | { |
| 168 | | qs1000_device *qs1000 = machine().device<qs1000_device>("qs1000"); |
| 169 | | |
| 170 | 177 | soundlatch_byte_w(space, 0, data >> 16); |
| 171 | | qs1000->set_irq(ASSERT_LINE); |
| 178 | m_qs1000->set_irq(ASSERT_LINE); |
| 172 | 179 | |
| 173 | 180 | machine().scheduler().boost_interleave(attotime::zero, attotime::from_usec(100)); |
| 174 | 181 | } |
| r243228 | r243229 | |
| 198 | 205 | // ...x .... - ? |
| 199 | 206 | // ..x. .... - /IRQ clear |
| 200 | 207 | |
| 201 | | qs1000_device *qs1000 = machine().device<qs1000_device>("qs1000"); |
| 202 | | |
| 203 | 208 | membank("qs1000:bank")->set_entry(data & 0x07); |
| 204 | 209 | |
| 205 | 210 | if (!BIT(data, 5)) |
| 206 | | qs1000->set_irq(CLEAR_LINE); |
| 211 | m_qs1000->set_irq(CLEAR_LINE); |
| 207 | 212 | } |
| 208 | 213 | |
| 209 | 214 | /***************************************************************************************************** |
| r243228 | r243229 | |
| 500 | 505 | |
| 501 | 506 | m_sprites_bitmap.allocate(384,240); |
| 502 | 507 | m_sprites_bitmap_pri.allocate(384,240); |
| 508 | |
| 509 | save_item(NAME(m_spriteram_bit)); |
| 510 | save_item(NAME(m_prev_sprites_count)); |
| 503 | 511 | } |
| 504 | 512 | |
| 505 | 513 | UINT32 limenko_state::screen_update_limenko(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) |
| r243228 | r243229 | |
| 1138 | 1146 | m_maincpu->space(AS_PROGRAM).install_read_handler(0x6626c, 0x6626f, read32_delegate(FUNC(limenko_state::spotty_speedup_r), this)); |
| 1139 | 1147 | |
| 1140 | 1148 | m_spriteram_bit = 1; |
| 1149 | |
| 1150 | save_item(NAME(m_spotty_sound_cmd)); |
| 1141 | 1151 | } |
| 1142 | 1152 | |
| 1143 | | GAME( 2000, dynabomb, 0, limenko, sb2003, limenko_state, dynabomb, ROT0, "Limenko", "Dynamite Bomber (Korea, Rev 1.5)", GAME_IMPERFECT_SOUND ) |
| 1144 | | GAME( 2000, legendoh, 0, limenko, legendoh, limenko_state, legendoh, ROT0, "Limenko", "Legend of Heroes", GAME_IMPERFECT_SOUND ) |
| 1145 | | GAME( 2003, sb2003, 0, limenko, sb2003, limenko_state, sb2003, ROT0, "Limenko", "Super Bubble 2003 (World, Ver 1.0)", GAME_IMPERFECT_SOUND ) |
| 1146 | | GAME( 2003, sb2003a, sb2003, limenko, sb2003, limenko_state, sb2003, ROT0, "Limenko", "Super Bubble 2003 (Asia, Ver 1.0)", GAME_IMPERFECT_SOUND ) |
| 1153 | GAME( 2000, dynabomb, 0, limenko, sb2003, limenko_state, dynabomb, ROT0, "Limenko", "Dynamite Bomber (Korea, Rev 1.5)", GAME_IMPERFECT_SOUND | GAME_SUPPORTS_SAVE ) |
| 1154 | GAME( 2000, legendoh, 0, limenko, legendoh, limenko_state, legendoh, ROT0, "Limenko", "Legend of Heroes", GAME_IMPERFECT_SOUND | GAME_SUPPORTS_SAVE ) |
| 1155 | GAME( 2003, sb2003, 0, limenko, sb2003, limenko_state, sb2003, ROT0, "Limenko", "Super Bubble 2003 (World, Ver 1.0)", GAME_IMPERFECT_SOUND | GAME_SUPPORTS_SAVE ) |
| 1156 | GAME( 2003, sb2003a, sb2003, limenko, sb2003, limenko_state, sb2003, ROT0, "Limenko", "Super Bubble 2003 (Asia, Ver 1.0)", GAME_IMPERFECT_SOUND | GAME_SUPPORTS_SAVE ) |
| 1147 | 1157 | |
| 1148 | | // this game only use the same graphics chip used in limenko's system |
| 1149 | | GAME( 2001, spotty, 0, spotty, spotty, limenko_state, spotty, ROT0, "Prince Co.", "Spotty (Ver. 2.0.2)", GAME_NO_SOUND ) |
| 1158 | // this game only uses the same graphics chip used in Limenko's system |
| 1159 | GAME( 2001, spotty, 0, spotty, spotty, limenko_state, spotty, ROT0, "Prince Co.", "Spotty (Ver. 2.0.2)", GAME_NO_SOUND | GAME_SUPPORTS_SAVE ) |
trunk/src/mame/drivers/lordgun.c
| r243228 | r243229 | |
| 47 | 47 | #include "sound/ymf278b.h" |
| 48 | 48 | #include "includes/lordgun.h" |
| 49 | 49 | |
| 50 | |
| 50 | 51 | /*************************************************************************** |
| 51 | 52 | |
| 52 | 53 | Memory Maps - Main |
| r243228 | r243229 | |
| 59 | 60 | { |
| 60 | 61 | case 0x00/2: // increment counter |
| 61 | 62 | { |
| 62 | | m_lordgun_protection_data++; |
| 63 | | m_lordgun_protection_data &= 0x1f; |
| 63 | m_protection_data++; |
| 64 | m_protection_data &= 0x1f; |
| 64 | 65 | |
| 65 | 66 | return; |
| 66 | 67 | } |
| 67 | 68 | |
| 68 | 69 | case 0xc0/2: // reset protection device |
| 69 | 70 | { |
| 70 | | m_lordgun_protection_data = 0; |
| 71 | m_protection_data = 0; |
| 71 | 72 | |
| 72 | 73 | return; |
| 73 | 74 | } |
| r243228 | r243229 | |
| 80 | 81 | { |
| 81 | 82 | case 0x40/2: // bitswap and xor counter |
| 82 | 83 | { |
| 83 | | UINT8 x = m_lordgun_protection_data; |
| 84 | UINT8 x = m_protection_data; |
| 84 | 85 | |
| 85 | | m_lordgun_protection_data = ((( x >> 0) | ( x >> 1)) & 1) << 4; |
| 86 | | m_lordgun_protection_data |= ((~x >> 2) & 1) << 3; |
| 87 | | m_lordgun_protection_data |= (((~x >> 4) | ( x >> 0)) & 1) << 2; |
| 88 | | m_lordgun_protection_data |= (( x >> 3) & 1) << 1; |
| 89 | | m_lordgun_protection_data |= (((~x >> 0) | ( x >> 2)) & 1) << 0; |
| 86 | m_protection_data = ((( x >> 0) | ( x >> 1)) & 1) << 4; |
| 87 | m_protection_data |= ((~x >> 2) & 1) << 3; |
| 88 | m_protection_data |= (((~x >> 4) | ( x >> 0)) & 1) << 2; |
| 89 | m_protection_data |= (( x >> 3) & 1) << 1; |
| 90 | m_protection_data |= (((~x >> 0) | ( x >> 2)) & 1) << 0; |
| 90 | 91 | |
| 91 | 92 | return 0; |
| 92 | 93 | } |
| 93 | 94 | |
| 94 | 95 | case 0x80/2: // return value if conditions are met |
| 95 | 96 | { |
| 96 | | if ((m_lordgun_protection_data & 0x11) == 0x01) return 0x10; |
| 97 | | if ((m_lordgun_protection_data & 0x06) == 0x02) return 0x10; |
| 98 | | if ((m_lordgun_protection_data & 0x09) == 0x08) return 0x10; |
| 97 | if ((m_protection_data & 0x11) == 0x01) return 0x10; |
| 98 | if ((m_protection_data & 0x06) == 0x02) return 0x10; |
| 99 | if ((m_protection_data & 0x09) == 0x08) return 0x10; |
| 99 | 100 | |
| 100 | 101 | return 0; |
| 101 | 102 | } |
| r243228 | r243229 | |
| 110 | 111 | { |
| 111 | 112 | case 0xc0/2: // reset protection device |
| 112 | 113 | { |
| 113 | | m_lordgun_protection_data = 0; |
| 114 | m_protection_data = 0; |
| 114 | 115 | |
| 115 | 116 | return; |
| 116 | 117 | } |
| r243228 | r243229 | |
| 123 | 124 | { |
| 124 | 125 | case 0x00/2: // de-increment counter |
| 125 | 126 | { |
| 126 | | m_lordgun_protection_data--; |
| 127 | | m_lordgun_protection_data &= 0x1f; |
| 127 | m_protection_data--; |
| 128 | m_protection_data &= 0x1f; |
| 128 | 129 | |
| 129 | 130 | return 0; |
| 130 | 131 | } |
| 131 | 132 | |
| 132 | 133 | case 0x40/2: // bitswap and xor counter |
| 133 | 134 | { |
| 134 | | UINT8 x = m_lordgun_protection_data; |
| 135 | UINT8 x = m_protection_data; |
| 135 | 136 | |
| 136 | | m_lordgun_protection_data = (((x >> 3) ^ (x >> 2)) & 1) << 4; |
| 137 | | m_lordgun_protection_data |= (((x >> 2) ^ (x >> 1)) & 1) << 3; |
| 138 | | m_lordgun_protection_data |= (((x >> 1) ^ (x >> 0)) & 1) << 2; |
| 139 | | m_lordgun_protection_data |= (((x >> 4) ^ (x >> 0)) & 1) << 1; |
| 140 | | m_lordgun_protection_data |= (((x >> 4) ^ (x >> 3)) & 1) << 0; |
| 137 | m_protection_data = (((x >> 3) ^ (x >> 2)) & 1) << 4; |
| 138 | m_protection_data |= (((x >> 2) ^ (x >> 1)) & 1) << 3; |
| 139 | m_protection_data |= (((x >> 1) ^ (x >> 0)) & 1) << 2; |
| 140 | m_protection_data |= (((x >> 4) ^ (x >> 0)) & 1) << 1; |
| 141 | m_protection_data |= (((x >> 4) ^ (x >> 3)) & 1) << 0; |
| 141 | 142 | |
| 142 | 143 | return 0; |
| 143 | 144 | } |
| 144 | 145 | |
| 145 | 146 | case 0x80/2: // return value if conditions are met |
| 146 | 147 | { |
| 147 | | if ((m_lordgun_protection_data & 0x11) == 0x00) return 0x20; |
| 148 | | if ((m_lordgun_protection_data & 0x06) != 0x06) return 0x20; |
| 149 | | if ((m_lordgun_protection_data & 0x18) == 0x00) return 0x20; |
| 148 | if ((m_protection_data & 0x11) == 0x00) return 0x20; |
| 149 | if ((m_protection_data & 0x06) != 0x06) return 0x20; |
| 150 | if ((m_protection_data & 0x18) == 0x00) return 0x20; |
| 150 | 151 | |
| 151 | 152 | return 0; |
| 152 | 153 | } |
| r243228 | r243229 | |
| 622 | 623 | |
| 623 | 624 | ***************************************************************************/ |
| 624 | 625 | |
| 626 | void lordgun_state::machine_start() |
| 627 | { |
| 628 | save_item(NAME(m_protection_data)); |
| 629 | save_item(NAME(m_priority)); |
| 630 | save_item(NAME(m_whitescreen)); |
| 631 | } |
| 632 | |
| 625 | 633 | static MACHINE_CONFIG_START( lordgun, lordgun_state ) |
| 626 | 634 | MCFG_CPU_ADD("maincpu", M68000, XTAL_20MHz / 2) |
| 627 | 635 | MCFG_CPU_PROGRAM_MAP(lordgun_map) |
| r243228 | r243229 | |
| 1027 | 1035 | |
| 1028 | 1036 | ***************************************************************************/ |
| 1029 | 1037 | |
| 1030 | | DRIVER_INIT_MEMBER(lordgun_state,lordgun) |
| 1038 | DRIVER_INIT_MEMBER(lordgun_state, lordgun) |
| 1031 | 1039 | { |
| 1032 | | int i; |
| 1033 | 1040 | UINT16 *rom = (UINT16 *)memregion("maincpu")->base(); |
| 1034 | 1041 | int rom_size = 0x100000; |
| 1035 | 1042 | |
| 1036 | | for(i = 0; i < rom_size/2; i++) |
| 1043 | for(int i = 0; i < rom_size/2; i++) |
| 1037 | 1044 | { |
| 1038 | 1045 | UINT16 x = rom[i]; |
| 1039 | 1046 | |
| r243228 | r243229 | |
| 1042 | 1049 | |
| 1043 | 1050 | rom[i] = x; |
| 1044 | 1051 | } |
| 1052 | |
| 1053 | save_item(NAME(m_old)); |
| 1054 | |
| 1055 | for (int i = 0; i < 2; i++) |
| 1056 | { |
| 1057 | save_item(NAME(m_gun[i].scr_x), i); |
| 1058 | save_item(NAME(m_gun[i].scr_y), i); |
| 1059 | save_item(NAME(m_gun[i].hw_x), i); |
| 1060 | save_item(NAME(m_gun[i].hw_y), i); |
| 1061 | } |
| 1045 | 1062 | } |
| 1046 | 1063 | |
| 1064 | DRIVER_INIT_MEMBER(lordgun_state, aliencha) |
| 1065 | { |
| 1066 | save_item(NAME(m_aliencha_dip_sel)); |
| 1067 | } |
| 1068 | |
| 1047 | 1069 | /*************************************************************************** |
| 1048 | 1070 | |
| 1049 | 1071 | Game Drivers |
| 1050 | 1072 | |
| 1051 | 1073 | ***************************************************************************/ |
| 1052 | 1074 | |
| 1053 | | GAME( 1994, lordgun, 0, lordgun, lordgun, lordgun_state, lordgun, ROT0, "IGS", "Lord of Gun (USA)", GAME_IMPERFECT_GRAPHICS ) |
| 1054 | | GAME( 1994, aliencha, 0, aliencha, aliencha, driver_device, 0, ROT0, "IGS", "Alien Challenge (World)", 0 ) |
| 1055 | | GAME( 1994, alienchac, aliencha, aliencha, aliencha, driver_device, 0, ROT0, "IGS", "Alien Challenge (China)", 0 ) |
| 1075 | GAME( 1994, lordgun, 0, lordgun, lordgun, lordgun_state, lordgun, ROT0, "IGS", "Lord of Gun (USA)", GAME_IMPERFECT_GRAPHICS | GAME_SUPPORTS_SAVE ) |
| 1076 | GAME( 1994, aliencha, 0, aliencha, aliencha, driver_device, 0, ROT0, "IGS", "Alien Challenge (World)", GAME_SUPPORTS_SAVE ) |
| 1077 | GAME( 1994, alienchac, aliencha, aliencha, aliencha, driver_device, 0, ROT0, "IGS", "Alien Challenge (China)", GAME_SUPPORTS_SAVE ) |
trunk/src/mame/includes/lordgun.h
| r243228 | r243229 | |
| 17 | 17 | public: |
| 18 | 18 | lordgun_state(const machine_config &mconfig, device_type type, const char *tag) |
| 19 | 19 | : driver_device(mconfig, type, tag), |
| 20 | | m_priority_ram(*this, "priority_ram"), |
| 21 | | m_scrollram(*this, "scrollram"), |
| 22 | | m_spriteram(*this, "spriteram"), |
| 23 | | m_vram(*this, "vram"), |
| 24 | | m_scroll_x(*this, "scroll_x"), |
| 25 | | m_scroll_y(*this, "scroll_y") , |
| 26 | 20 | m_maincpu(*this, "maincpu"), |
| 27 | 21 | m_soundcpu(*this, "soundcpu"), |
| 28 | 22 | m_oki(*this, "oki"), |
| r243228 | r243229 | |
| 30 | 24 | m_gfxdecode(*this, "gfxdecode"), |
| 31 | 25 | m_screen(*this, "screen"), |
| 32 | 26 | m_palette(*this, "palette"), |
| 33 | | m_generic_paletteram_16(*this, "paletteram") { } |
| 27 | m_generic_paletteram_16(*this, "paletteram"), |
| 28 | m_priority_ram(*this, "priority_ram"), |
| 29 | m_scrollram(*this, "scrollram"), |
| 30 | m_spriteram(*this, "spriteram"), |
| 31 | m_vram(*this, "vram"), |
| 32 | m_scroll_x(*this, "scroll_x"), |
| 33 | m_scroll_y(*this, "scroll_y") { } |
| 34 | 34 | |
| 35 | required_device<cpu_device> m_maincpu; |
| 36 | required_device<cpu_device> m_soundcpu; |
| 37 | required_device<okim6295_device> m_oki; |
| 38 | required_device<eeprom_serial_93cxx_device> m_eeprom; |
| 39 | required_device<gfxdecode_device> m_gfxdecode; |
| 40 | required_device<screen_device> m_screen; |
| 41 | required_device<palette_device> m_palette; |
| 42 | |
| 43 | required_shared_ptr<UINT16> m_generic_paletteram_16; |
| 35 | 44 | required_shared_ptr<UINT16> m_priority_ram; |
| 36 | 45 | required_shared_ptr<UINT16> m_scrollram; |
| 37 | 46 | required_shared_ptr<UINT16> m_spriteram; |
| 47 | required_shared_ptr_array<UINT16, 4> m_vram; |
| 48 | required_shared_ptr_array<UINT16, 4> m_scroll_x; |
| 49 | required_shared_ptr_array<UINT16, 4> m_scroll_y; |
| 38 | 50 | |
| 39 | 51 | UINT8 m_old; |
| 40 | 52 | UINT8 m_aliencha_dip_sel; |
| 41 | 53 | UINT16 m_priority; |
| 42 | | required_shared_ptr_array<UINT16, 4> m_vram; |
| 43 | | required_shared_ptr_array<UINT16, 4> m_scroll_x; |
| 44 | | required_shared_ptr_array<UINT16, 4> m_scroll_y; |
| 45 | 54 | int m_whitescreen; |
| 46 | 55 | lordgun_gun_data m_gun[2]; |
| 47 | 56 | tilemap_t *m_tilemap[4]; |
| 48 | 57 | bitmap_ind16 *m_bitmaps[5]; |
| 49 | 58 | |
| 50 | | UINT16 m_lordgun_protection_data; |
| 59 | UINT16 m_protection_data; |
| 51 | 60 | DECLARE_WRITE16_MEMBER(lordgun_protection_w); |
| 52 | 61 | DECLARE_READ16_MEMBER(lordgun_protection_r); |
| 53 | 62 | DECLARE_WRITE16_MEMBER(aliencha_protection_w); |
| r243228 | r243229 | |
| 71 | 80 | DECLARE_READ8_MEMBER(aliencha_dip_r); |
| 72 | 81 | DECLARE_WRITE8_MEMBER(aliencha_dip_w); |
| 73 | 82 | DECLARE_WRITE8_MEMBER(lordgun_okibank_w); |
| 83 | |
| 84 | DECLARE_DRIVER_INIT(aliencha); |
| 74 | 85 | DECLARE_DRIVER_INIT(lordgun); |
| 86 | |
| 75 | 87 | TILE_GET_INFO_MEMBER(get_tile_info_0); |
| 76 | 88 | TILE_GET_INFO_MEMBER(get_tile_info_1); |
| 77 | 89 | TILE_GET_INFO_MEMBER(get_tile_info_2); |
| 78 | 90 | TILE_GET_INFO_MEMBER(get_tile_info_3); |
| 91 | |
| 92 | virtual void machine_start(); |
| 79 | 93 | virtual void video_start(); |
| 94 | |
| 80 | 95 | UINT32 screen_update_lordgun(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); |
| 81 | 96 | inline void get_tile_info(tile_data &tileinfo, tilemap_memory_index tile_index, int _N_); |
| 82 | 97 | inline void lordgun_vram_w(offs_t offset, UINT16 data, UINT16 mem_mask, int _N_); |
| 83 | 98 | void lorddgun_calc_gun_scr(int i); |
| 84 | 99 | void lordgun_update_gun(int i); |
| 85 | 100 | void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect); |
| 86 | | required_device<cpu_device> m_maincpu; |
| 87 | | required_device<cpu_device> m_soundcpu; |
| 88 | | required_device<okim6295_device> m_oki; |
| 89 | | required_device<eeprom_serial_93cxx_device> m_eeprom; |
| 90 | | required_device<gfxdecode_device> m_gfxdecode; |
| 91 | | required_device<screen_device> m_screen; |
| 92 | | required_device<palette_device> m_palette; |
| 93 | | required_shared_ptr<UINT16> m_generic_paletteram_16; |
| 94 | 101 | }; |
| 95 | 102 | |
| 96 | 103 | /*----------- defined in video/lordgun.c -----------*/ |