Previous 199869 Revisions Next

r32285 Monday 22nd September, 2014 at 15:13:19 UTC by David Haywood
use CRTC
[src/mame/drivers]legionna.c
[src/mame/includes]legionna.h
[src/mame/machine]seicop.c seicop.h
[src/mame/video]legionna.c

trunk/src/mame/machine/seicop.c
r32284r32285
16301630   m_cop_sprite_dma_param(0),
16311631   m_raiden2cop(*this, ":raiden2cop")
16321632{
1633   memset(m_seibu_vregs, 0, sizeof(UINT16)*0x50/2);
16341633
16351634   for (int i = 0; i < 8; i++)
16361635   {
r32284r32285
16841683   save_item(NAME(m_cop_sprite_dma_abs_y));
16851684   save_item(NAME(m_cop_sprite_dma_size));
16861685   save_item(NAME(m_cop_sprite_dma_param));
1687   save_item(NAME(m_seibu_vregs));
16881686}
16891687
16901688//-------------------------------------------------
r32284r32285
16951693{
16961694}
16971695
1698WRITE16_MEMBER( seibu_cop_legacy_device::seibu_common_video_regs_w )
1699{
1700   legionna_state *state = space.machine().driver_data<legionna_state>();
1701   COMBINE_DATA(&m_seibu_vregs[offset]);
17021696
1703   switch(offset)
1704   {
1705      case (0x01a/2): { state->flip_screen_set(m_seibu_vregs[offset] & 0x01); break; }
1706      case (0x01c/2): { state->m_layer_disable =  m_seibu_vregs[offset]; break; }
1707      case (0x020/2): { state->m_scrollram16[0] = m_seibu_vregs[offset]; break; }
1708      case (0x022/2): { state->m_scrollram16[1] = m_seibu_vregs[offset]; break; }
1709      case (0x024/2): { state->m_scrollram16[2] = m_seibu_vregs[offset]; break; }
1710      case (0x026/2): { state->m_scrollram16[3] = m_seibu_vregs[offset]; break; }
1711      case (0x028/2): { state->m_scrollram16[4] = m_seibu_vregs[offset]; break; }
1712      case (0x02a/2): { state->m_scrollram16[5] = m_seibu_vregs[offset]; break; }
1713      default: { logerror("seibu_common_video_regs_w unhandled offset %02x %04x\n",offset*2,data); break; }
1714   }
1715}
17161697
1717
17181698/*
17191699"The area of ASM snippets"
17201700
r32284r32285
29492929   if(offset == 0x200/2) //irq ack / sprite buffering?
29502930      return;
29512931
2952   if(offset >= 0x240/2 && offset <= 0x28f/2)
2953   {
2954      seibu_common_video_regs_w(space,offset-0x240/2,m_cop_mcu_ram[offset],mem_mask);
2955      return;
2956   }
29572932
2933
29582934   if(offset >= 0x3c0/2 && offset <= 0x3df/2)
29592935   {
29602936      space.machine().device<seibu_sound_device>("seibu_sound")->main_word_w(space,(offset >> 1) & 7,m_cop_mcu_ram[offset],0x00ff);
r32284r32285
29972973   if(offset == 0x280/2) //irq ack / sprite buffering?
29982974      return;
29992975
3000   if(offset >= 0x200/2 && offset <= 0x24f/2)
3001   {
3002      seibu_common_video_regs_w(space,offset-0x200/2,m_cop_mcu_ram[offset],mem_mask);
3003      return;
3004   }
3005
30062976   if(offset >= 0x300/2 && offset <= 0x31f/2)
30072977   {
30082978      space.machine().device<seibu_sound_device>("seibu_sound")->main_word_w(space,(offset >> 1) & 7,m_cop_mcu_ram[offset],0x00ff);
r32284r32285
30393009   if(offset == 0x280/2) //irq ack / sprite buffering?
30403010      return;
30413011
3042   if(offset >= 0x240/2 && offset <= 0x27f/2)
3043   {
3044      seibu_common_video_regs_w(space,offset-0x240/2,m_cop_mcu_ram[offset],mem_mask);
3045      return;
3046   }
30473012
3048   if(offset >= 0x200/2 && offset <= 0x20f/2)
3049   {
3050      seibu_common_video_regs_w(space,(offset-0x200/2)+(0x40/2),m_cop_mcu_ram[offset],mem_mask);
3051      return;
3052   }
30533013
30543014   if(offset >= 0x340/2 && offset <= 0x35f/2)
30553015   {
r32284r32285
30923052   if(offset == 0x280/2) //irq ack / sprite buffering?
30933053      return;
30943054
3095   if(offset >= 0x200/2 && offset <= 0x24f/2)
3096   {
3097      seibu_common_video_regs_w(space,offset-0x200/2,m_cop_mcu_ram[offset],mem_mask);
3098      return;
3099   }
31003055
31013056   if(offset >= 0x300/2 && offset <= 0x31f/2)
31023057   {
r32284r32285
31443099      return;
31453100   }
31463101
3147   if(offset >= 0x200/2 && offset <= 0x24f/2)
3148   {
3149      seibu_common_video_regs_w(space,offset-0x200/2,m_cop_mcu_ram[offset],mem_mask);
3150      return;
3151   }
31523102
31533103   if(offset >= 0x300/2 && offset <= 0x31f/2)
31543104   {
r32284r32285
31913141   if(offset == 0x280/2) //irq ack / sprite buffering?
31923142      return;
31933143
3194   if(offset >= 0x200/2 && offset <= 0x24f/2)
3195   {
3196      seibu_common_video_regs_w(space,offset-0x200/2,m_cop_mcu_ram[offset],mem_mask);
3197      return;
3198   }
31993144
32003145   if(offset >= 0x300/2 && offset <= 0x31f/2)
32013146   {
r32284r32285
32363181   if(offset == 0x280/2) //irq ack / sprite buffering?
32373182      return;
32383183
3239   if(offset >= 0x200/2 && offset <= 0x24f/2)
3240   {
3241      seibu_common_video_regs_w(space,offset-0x200/2,m_cop_mcu_ram[offset],mem_mask);
3242      return;
3243   }
32443184
32453185   if(offset >= 0x300/2 && offset <= 0x31f/2)
32463186   {
trunk/src/mame/machine/seicop.h
r32284r32285
5858   UINT8 m_cop_rng_max_value;
5959   UINT16 m_copd2_offs;
6060   UINT32 m_cop_register[8];
61   UINT16 m_seibu_vregs[0x50/2];
6261   UINT16 m_cop_status,m_cop_dist,m_cop_angle;
6362   UINT16 m_cop_hit_status;
6463   INT16 m_cop_hit_val_x,m_cop_hit_val_y,m_cop_hit_val_z,m_cop_hit_val_unk;
r32284r32285
7574
7675   void copd2_set_tableoffset(UINT16 data);
7776   void copd2_set_tabledata(UINT16 data);
78   DECLARE_WRITE16_MEMBER( seibu_common_video_regs_w );
7977   void cop_take_hit_box_params(UINT8 offs);
8078   UINT8 cop_calculate_collsion_detection();
8179   DECLARE_READ16_MEMBER( generic_cop_r );
trunk/src/mame/includes/legionna.h
r32284r32285
11#include "sound/okim6295.h"
22#include "machine/raiden2cop.h"
3#include "video/seibu_crtc.h"
34
4
55class legionna_state : public driver_device
66{
77public:
r32284r32285
1818      m_gfxdecode(*this, "gfxdecode"),
1919      m_palette(*this, "palette"),
2020      m_wordswapram(*this, "wordswapram")
21   { }
21   {
22      memset(scrollvals, 0, sizeof(UINT16)*6);
23   }
2224
2325   required_shared_ptr<UINT16> m_spriteram;
2426   UINT16* m_back_data;
r32284r32285
3840   UINT16 m_back_gfx_bank;
3941   UINT16 m_fore_gfx_bank;
4042   UINT16 m_mid_gfx_bank;
41
43   UINT16 scrollvals[6];
44   DECLARE_WRITE16_MEMBER(tilemap_enable_w);
45   DECLARE_WRITE16_MEMBER(tile_scroll_w);
4246   DECLARE_WRITE16_MEMBER(videowrite_cb_w);
4347   DECLARE_WRITE16_MEMBER(wordswapram_w);
4448   DECLARE_WRITE16_MEMBER(legionna_background_w);
trunk/src/mame/video/legionna.c
r32284r32285
2020
2121/******************************************************************************/
2222
23
24WRITE16_MEMBER(legionna_state::tilemap_enable_w)
25{
26   COMBINE_DATA(&m_layer_disable);
27}
28
29WRITE16_MEMBER(legionna_state::tile_scroll_w)
30{
31   COMBINE_DATA(scrollvals + offset);
32   data = scrollvals[offset];
33
34   tilemap_t *tm = 0;
35   switch(offset/2) {
36   case 0: tm = m_background_layer; break;
37   case 1: tm = m_midground_layer; break;
38   case 2: tm = m_foreground_layer; break;
39   }
40   if(offset & 1)
41      tm->set_scrolly(0, data);
42   else
43      tm->set_scrollx(0, data);
44}
45
2346void heatbrl_setgfxbank(running_machine &machine, UINT16 data)
2447{
2548   legionna_state *state = machine.driver_data<legionna_state>();
r32284r32285
457480UINT32 legionna_state::screen_update_legionna(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
458481{
459482   /* Setup the tilemaps */
460   m_background_layer->set_scrollx(0, m_scrollram16[0] );
461   m_background_layer->set_scrolly(0, m_scrollram16[1] );
462   m_midground_layer->set_scrollx(0, m_scrollram16[2] );
463   m_midground_layer->set_scrolly(0, m_scrollram16[3] );
464   m_foreground_layer->set_scrollx(0, m_scrollram16[4] );
465   m_foreground_layer->set_scrolly(0, m_scrollram16[5] );
466   m_text_layer->set_scrollx(0,  0/*m_scrollram16[6]*/ );
467   m_text_layer->set_scrolly(0,  0/*m_scrollram16[7]*/ );
468
469483   screen.priority().fill(0, cliprect);
470484   bitmap.fill(m_palette->black_pen(), cliprect);    /* wrong color? */
471485
r32284r32285
485499
486500UINT32 legionna_state::screen_update_godzilla(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
487501{
488//  m_text_layer->set_scrollx(0, 0 );
489//  m_text_layer->set_scrolly(0, 112 );
490   /* Setup the tilemaps */
491   m_background_layer->set_scrollx(0, m_scrollram16[0] );
492   m_background_layer->set_scrolly(0, m_scrollram16[1] );
493   m_midground_layer->set_scrollx(0, m_scrollram16[2] );
494   m_midground_layer->set_scrolly(0, m_scrollram16[3] );
495   m_foreground_layer->set_scrollx(0, m_scrollram16[4] );
496   m_foreground_layer->set_scrolly(0, m_scrollram16[5] );
497   m_text_layer->set_scrollx(0,  0/*m_scrollram16[6]*/ );
498   m_text_layer->set_scrolly(0,  0/*m_scrollram16[7]*/ );
499502
500503
504
501505   bitmap.fill(0x0200, cliprect);
502506   screen.priority().fill(0, cliprect);
503507
r32284r32285
513517
514518UINT32 legionna_state::screen_update_grainbow(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
515519{
516   /* Setup the tilemaps */
517   m_background_layer->set_scrollx(0, m_scrollram16[0] );
518   m_background_layer->set_scrolly(0, m_scrollram16[1] );
519   m_midground_layer->set_scrollx(0, m_scrollram16[2] );
520   m_midground_layer->set_scrolly(0, m_scrollram16[3] );
521   m_foreground_layer->set_scrollx(0, m_scrollram16[4] );
522   m_foreground_layer->set_scrolly(0, m_scrollram16[5] );
523   m_text_layer->set_scrollx(0,  0/*m_scrollram16[6]*/ );
524   m_text_layer->set_scrolly(0,  0/*m_scrollram16[7]*/ );
525520
521
526522   bitmap.fill(m_palette->black_pen(), cliprect);
527523   screen.priority().fill(0, cliprect);
528524
trunk/src/mame/drivers/legionna.c
r32284r32285
8484static ADDRESS_MAP_START( legionna_map, AS_PROGRAM, 16, legionna_state )
8585   AM_RANGE(0x000000, 0x07ffff) AM_ROM
8686   AM_RANGE(0x100000, 0x1003ff) AM_RAM
87   AM_RANGE(0x100600, 0x10063f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)
8788   AM_RANGE(0x100400, 0x1007ff) AM_DEVREADWRITE("seibucop", seibu_cop_legacy_device, legionna_mcu_r, legionna_mcu_w) AM_SHARE("cop_mcu_ram")    /* COP mcu */
8889   AM_RANGE(0x101000, 0x1017ff) AM_RAM // _WRITE(legionna_background_w) AM_SHARE("back_data")
8990   AM_RANGE(0x101800, 0x101fff) AM_RAM // _WRITE(legionna_foreground_w) AM_SHARE("fore_data")
r32284r32285
99100static ADDRESS_MAP_START( heatbrl_map, AS_PROGRAM, 16, legionna_state )
100101   AM_RANGE(0x000000, 0x07ffff) AM_ROM
101102   AM_RANGE(0x100000, 0x1003ff) AM_RAM
103   AM_RANGE(0x100640, 0x10068f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)
102104   AM_RANGE(0x100400, 0x1007ff) AM_DEVREADWRITE("seibucop", seibu_cop_legacy_device, heatbrl_mcu_r, heatbrl_mcu_w) AM_SHARE("cop_mcu_ram")  /* COP mcu */
103105   AM_RANGE(0x100800, 0x100fff) AM_RAM // _WRITE(legionna_background_w) AM_SHARE("back_data")
104106   AM_RANGE(0x101000, 0x1017ff) AM_RAM // _WRITE(legionna_foreground_w) AM_SHARE("fore_data")
r32284r32285
112114static ADDRESS_MAP_START( godzilla_map, AS_PROGRAM, 16, legionna_state )
113115   AM_RANGE(0x000000, 0x07ffff) AM_ROM
114116   AM_RANGE(0x100000, 0x1003ff) AM_RAM
117   AM_RANGE(0x100600, 0x10063f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)
115118   AM_RANGE(0x100400, 0x1007ff) AM_DEVREADWRITE("seibucop", seibu_cop_legacy_device, godzilla_mcu_r, godzilla_mcu_w) AM_SHARE("cop_mcu_ram")    /* COP mcu */
116119   AM_RANGE(0x100800, 0x100fff) AM_RAM
117120   AM_RANGE(0x101000, 0x1017ff) AM_RAM // _WRITE(legionna_background_w) AM_SHARE("back_data")
r32284r32285
139142static ADDRESS_MAP_START( denjinmk_map, AS_PROGRAM, 16, legionna_state )
140143   AM_RANGE(0x000000, 0x0fffff) AM_ROM
141144   AM_RANGE(0x100000, 0x1003ff) AM_RAM
145   AM_RANGE(0x100600, 0x10063f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)
142146   AM_RANGE(0x100400, 0x1007ff) AM_DEVREADWRITE("seibucop", seibu_cop_legacy_device, denjinmk_mcu_r, denjinmk_mcu_w) AM_SHARE("cop_mcu_ram")    /* COP mcu */
143147   AM_RANGE(0x100800, 0x100fff) AM_RAM
144148   AM_RANGE(0x101000, 0x1017ff) AM_RAM // _WRITE(legionna_background_w) AM_SHARE("back_data")
r32284r32285
156160static ADDRESS_MAP_START( grainbow_map, AS_PROGRAM, 16, legionna_state )
157161   AM_RANGE(0x000000, 0x0fffff) AM_ROM
158162   AM_RANGE(0x100000, 0x1003ff) AM_RAM
163   AM_RANGE(0x100600, 0x10063f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)
159164   AM_RANGE(0x100400, 0x1007ff) AM_DEVREADWRITE("seibucop", seibu_cop_legacy_device, grainbow_mcu_r, grainbow_mcu_w) AM_SHARE("cop_mcu_ram")    /* COP mcu */
160165   AM_RANGE(0x100800, 0x100fff) AM_RAM // _WRITE(legionna_background_w) AM_SHARE("back_data")
161166   AM_RANGE(0x101000, 0x1017ff) AM_RAM // _WRITE(legionna_foreground_w) AM_SHARE("fore_data")
r32284r32285
172177static ADDRESS_MAP_START( cupsoc_mem, AS_PROGRAM, 16, legionna_state )
173178   AM_RANGE(0x000000, 0x0fffff) AM_ROM
174179   AM_RANGE(0x100000, 0x1003ff) AM_RAM
180   AM_RANGE(0x100600, 0x10063f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)
175181   AM_RANGE(0x100400, 0x1007ff) AM_DEVREADWRITE("seibucop", seibu_cop_legacy_device, cupsoc_mcu_r,cupsoc_mcu_w) AM_SHARE("cop_mcu_ram")
176182   AM_RANGE(0x100800, 0x100fff) AM_RAM // _WRITE(legionna_background_w) AM_SHARE("back_data")
177183   AM_RANGE(0x101000, 0x1017ff) AM_RAM // _WRITE(legionna_foreground_w) AM_SHARE("fore_data")
r32284r32285
191197static ADDRESS_MAP_START( cupsocs_mem, AS_PROGRAM, 16, legionna_state )
192198   AM_RANGE(0x000000, 0x0fffff) AM_ROM
193199   AM_RANGE(0x100000, 0x1003ff) AM_RAM
200   AM_RANGE(0x100600, 0x10060f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)//?
201   AM_RANGE(0x100640, 0x10067f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)
194202   AM_RANGE(0x100400, 0x1007ff) AM_DEVREADWRITE("seibucop", seibu_cop_legacy_device, cupsocs_mcu_r,cupsocs_mcu_w) AM_SHARE("cop_mcu_ram")
195203   AM_RANGE(0x100800, 0x100fff) AM_RAM // _WRITE(legionna_background_w) AM_SHARE("back_data")
196204   AM_RANGE(0x101000, 0x1017ff) AM_RAM // _WRITE(legionna_foreground_w) AM_SHARE("fore_data")
r32284r32285
210218static ADDRESS_MAP_START( cupsocbl_mem, AS_PROGRAM, 16, legionna_state )
211219   AM_RANGE(0x000000, 0x0fffff) AM_ROM
212220   //AM_RANGE(0x100000, 0x1003ff) AM_RAM
221   AM_RANGE(0x100600, 0x10060f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)//?
222   AM_RANGE(0x100640, 0x10067f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)
213223   AM_RANGE(0x100000, 0x1007ff) AM_DEVREADWRITE("seibucop", seibu_cop_legacy_device, copdxbl_0_r,copdxbl_0_w) AM_SHARE("cop_mcu_ram")
214224   AM_RANGE(0x100800, 0x100fff) AM_RAM // _WRITE(legionna_background_w) AM_SHARE("back_data")
215225   AM_RANGE(0x101000, 0x1017ff) AM_RAM // _WRITE(legionna_foreground_w) AM_SHARE("fore_data")
r32284r32285
10801090   MCFG_SCREEN_UPDATE_DRIVER(legionna_state, screen_update_legionna)
10811091   MCFG_SCREEN_PALETTE("palette")
10821092
1093   MCFG_DEVICE_ADD("crtc", SEIBU_CRTC, 0)
1094   MCFG_SEIBU_CRTC_LAYER_EN_CB(WRITE16(legionna_state, tilemap_enable_w))
1095   MCFG_SEIBU_CRTC_LAYER_SCROLL_CB(WRITE16(legionna_state, tile_scroll_w))
1096
10831097   MCFG_GFXDECODE_ADD("gfxdecode", "palette", legionna)
10841098   MCFG_PALETTE_ADD_INIT_BLACK("palette", 128*16)
10851099   //MCFG_PALETTE_FORMAT(xBBBBBGGGGGRRRRR)
r32284r32285
11131127   MCFG_SCREEN_UPDATE_DRIVER(legionna_state, screen_update_legionna)
11141128   MCFG_SCREEN_PALETTE("palette")
11151129
1130   MCFG_DEVICE_ADD("crtc", SEIBU_CRTC, 0)
1131   MCFG_SEIBU_CRTC_LAYER_EN_CB(WRITE16(legionna_state, tilemap_enable_w))
1132   MCFG_SEIBU_CRTC_LAYER_SCROLL_CB(WRITE16(legionna_state, tile_scroll_w))
1133
1134
11161135   MCFG_GFXDECODE_ADD("gfxdecode", "palette", heatbrl)
11171136
11181137   MCFG_PALETTE_ADD_INIT_BLACK("palette", 128*16)
r32284r32285
11471166   MCFG_SCREEN_UPDATE_DRIVER(legionna_state, screen_update_godzilla)
11481167   MCFG_SCREEN_PALETTE("palette")
11491168
1169   MCFG_DEVICE_ADD("crtc", SEIBU_CRTC, 0)
1170   MCFG_SEIBU_CRTC_LAYER_EN_CB(WRITE16(legionna_state, tilemap_enable_w))
1171   MCFG_SEIBU_CRTC_LAYER_SCROLL_CB(WRITE16(legionna_state, tile_scroll_w))
1172
1173
11501174   MCFG_GFXDECODE_ADD("gfxdecode", "palette", heatbrl)
11511175
11521176   MCFG_PALETTE_ADD_INIT_BLACK("palette", 128*16)
r32284r32285
11821206
11831207   MCFG_GFXDECODE_ADD("gfxdecode", "palette", heatbrl)
11841208
1209   MCFG_DEVICE_ADD("crtc", SEIBU_CRTC, 0)
1210   MCFG_SEIBU_CRTC_LAYER_EN_CB(WRITE16(legionna_state, tilemap_enable_w))
1211   MCFG_SEIBU_CRTC_LAYER_SCROLL_CB(WRITE16(legionna_state, tile_scroll_w))
1212
1213
11851214   MCFG_PALETTE_ADD_INIT_BLACK("palette", 128*16)
11861215   //MCFG_PALETTE_FORMAT(xBBBBBGGGGGRRRRR)
11871216
r32284r32285
12131242   MCFG_SCREEN_UPDATE_DRIVER(legionna_state, screen_update_grainbow)
12141243   MCFG_SCREEN_PALETTE("palette")
12151244
1245   MCFG_DEVICE_ADD("crtc", SEIBU_CRTC, 0)
1246   MCFG_SEIBU_CRTC_LAYER_EN_CB(WRITE16(legionna_state, tilemap_enable_w))
1247   MCFG_SEIBU_CRTC_LAYER_SCROLL_CB(WRITE16(legionna_state, tile_scroll_w))
1248
1249
12161250   MCFG_GFXDECODE_ADD("gfxdecode", "palette", grainbow)
12171251
12181252   MCFG_PALETTE_ADD_INIT_BLACK("palette", 128*16)
r32284r32285
12471281   MCFG_SCREEN_UPDATE_DRIVER(legionna_state, screen_update_grainbow)
12481282   MCFG_SCREEN_PALETTE("palette")
12491283
1284   MCFG_DEVICE_ADD("crtc", SEIBU_CRTC, 0)
1285   MCFG_SEIBU_CRTC_LAYER_EN_CB(WRITE16(legionna_state, tilemap_enable_w))
1286   MCFG_SEIBU_CRTC_LAYER_SCROLL_CB(WRITE16(legionna_state, tile_scroll_w))
1287
1288
12501289   MCFG_GFXDECODE_ADD("gfxdecode", "palette", cupsoc)
12511290
12521291   MCFG_PALETTE_ADD_INIT_BLACK("palette", 128*16)
r32284r32285
12901329   MCFG_SCREEN_UPDATE_DRIVER(legionna_state, screen_update_grainbow)
12911330   MCFG_SCREEN_PALETTE("palette")
12921331
1332   MCFG_DEVICE_ADD("crtc", SEIBU_CRTC, 0)
1333   MCFG_SEIBU_CRTC_LAYER_EN_CB(WRITE16(legionna_state, tilemap_enable_w))
1334   MCFG_SEIBU_CRTC_LAYER_SCROLL_CB(WRITE16(legionna_state, tile_scroll_w))
1335
1336
12931337   MCFG_GFXDECODE_ADD("gfxdecode", "palette", heatbrl_csb)
12941338
12951339   MCFG_PALETTE_ADD_INIT_BLACK("palette", 128*16)

Previous 199869 Revisions Next


© 1997-2024 The MAME Team