Previous 199869 Revisions Next

r30754 Sunday 1st June, 2014 at 09:45:32 UTC by Alex Jackson
gradius3: remove KONAMI_ROM_DEINTERLEAVE and some no longer needed code (nw)

k051960, k052109: remove m_dx and m_dy, already nonfunctional since devicefication.
These chips don't have variable offsets like the later Konami customs do
(Gradius 3 title screen being offset 2 pixels to the left is a BTANB, see MT #4118)
[src/mame/drivers]gradius3.c
[src/mame/video]gradius3.c k051960.c k051960.h k052109.c k052109.h

trunk/src/mame/drivers/gradius3.c
r30753r30754
77    This board uses the well known 052109 051962 custom gfx chips, however unlike
88    all other games they fetch gfx data from RAM. The gfx ROMs are memory mapped
99    on cpu B and the needed parts are copied to RAM at run time.
10    To handle this efficiently in MAME, some changes would be required to the
11    tilemap system and to video/konamiic.c. For the time being, I'm kludging
12    my way in.
10
1311    There's also something wrong in the way tile banks are implemented in
14    konamiic.c. They don't seem to be used by this game.
12    k052109.c. They don't seem to be used by this game.
1513
1614    2009-03:
1715    Added dsw locations and verified factory setting based on Guru's notes
r30753r30754
260258{
261259   "gfx2", 1,
262260   GRADIUS3_PLANE_ORDER,
263   KONAMI_ROM_DEINTERLEAVE_2,
261   KONAMI_ROM_DEINTERLEAVE_NONE,
264262   gradius3_sprite_callback
265263};
266264
r30753r30754
366364   /* gfx data is dynamically generated in RAM */
367365
368366   ROM_REGION( 0x200000, "gfx2", 0 )   /* graphics (addressable by the main CPU) */
369   ROM_LOAD( "945_a02.l3",         0x000000, 0x80000, CRC(4dfffd74) SHA1(588210bac27448240ef08961f70b714b69cb3ffd) )
370   ROM_LOAD16_BYTE( "945_l04a.k6", 0x080000, 0x20000, CRC(884e21ee) SHA1(ce86dd3a06775e5b1aa09db010dcb674e67828e7) )
371   ROM_LOAD16_BYTE( "945_l04c.m6", 0x080001, 0x20000, CRC(45bcd921) SHA1(e51a8a71362a6fb55124aa1dce74519c0a3c6e3f) )
372   ROM_LOAD16_BYTE( "945_l04b.k8", 0x0c0000, 0x20000, CRC(843bc67d) SHA1(cdf8421083f24ab27867ed5d08d8949da192b2b9) )
373   ROM_LOAD16_BYTE( "945_l04d.m8", 0x0c0001, 0x20000, CRC(0a98d08e) SHA1(1e0ca51a2d45c01fa3f11950ddd387f41ddae691) )
374   ROM_LOAD( "945_a01.h3",         0x100000, 0x80000, CRC(339d6dd2) SHA1(6a52b826aba92c75fc6a5926184948735dc20812) )
375   ROM_LOAD16_BYTE( "945_l03a.e6", 0x180000, 0x20000, CRC(a67ef087) SHA1(fd63474f3bbde5dfc53ed4c1db25d6411a8b54d2) )
376   ROM_LOAD16_BYTE( "945_l03c.h6", 0x180001, 0x20000, CRC(a56be17a) SHA1(1d387736144c30fcb5de54235331ab1ff70c356e) )
377   ROM_LOAD16_BYTE( "945_l03b.e8", 0x1c0000, 0x20000, CRC(933e68b9) SHA1(f3a39446ca77d17fdbd938bd5f718ae9d5570879) )
378   ROM_LOAD16_BYTE( "945_l03d.h8", 0x1c0001, 0x20000, CRC(f375e87b) SHA1(6427b966795c907c8e516244872fe52217da62c4) )
367   ROM_LOAD32_WORD( "945_a02.l3",  0x000000, 0x80000, CRC(4dfffd74) SHA1(588210bac27448240ef08961f70b714b69cb3ffd) )
368   ROM_LOAD32_WORD( "945_a01.h3",  0x000002, 0x80000, CRC(339d6dd2) SHA1(6a52b826aba92c75fc6a5926184948735dc20812) )
369   ROM_LOAD32_BYTE( "945_l04a.k6", 0x100000, 0x20000, CRC(884e21ee) SHA1(ce86dd3a06775e5b1aa09db010dcb674e67828e7) )
370   ROM_LOAD32_BYTE( "945_l04c.m6", 0x100001, 0x20000, CRC(45bcd921) SHA1(e51a8a71362a6fb55124aa1dce74519c0a3c6e3f) )
371   ROM_LOAD32_BYTE( "945_l03a.e6", 0x100002, 0x20000, CRC(a67ef087) SHA1(fd63474f3bbde5dfc53ed4c1db25d6411a8b54d2) )
372   ROM_LOAD32_BYTE( "945_l03c.h6", 0x100003, 0x20000, CRC(a56be17a) SHA1(1d387736144c30fcb5de54235331ab1ff70c356e) )
373   ROM_LOAD32_BYTE( "945_l04b.k8", 0x180000, 0x20000, CRC(843bc67d) SHA1(cdf8421083f24ab27867ed5d08d8949da192b2b9) )
374   ROM_LOAD32_BYTE( "945_l04d.m8", 0x180001, 0x20000, CRC(0a98d08e) SHA1(1e0ca51a2d45c01fa3f11950ddd387f41ddae691) )
375   ROM_LOAD32_BYTE( "945_l03b.e8", 0x180002, 0x20000, CRC(933e68b9) SHA1(f3a39446ca77d17fdbd938bd5f718ae9d5570879) )
376   ROM_LOAD32_BYTE( "945_l03d.h8", 0x180003, 0x20000, CRC(f375e87b) SHA1(6427b966795c907c8e516244872fe52217da62c4) )
379377
380378   ROM_REGION( 0x0100, "proms", 0 )
381379   ROM_LOAD( "945l14.j28", 0x0000, 0x0100, CRC(c778c189) SHA1(847eaf379ba075c25911c6f83dd63ff390534f60) )  /* priority encoder (not used) */
r30753r30754
408406   /* gfx data is dynamically generated in RAM */
409407
410408   ROM_REGION( 0x200000, "gfx2", 0 )   /* graphics (addressable by the main CPU) */
411   ROM_LOAD( "945_a02.l3",         0x000000, 0x80000, CRC(4dfffd74) SHA1(588210bac27448240ef08961f70b714b69cb3ffd) )
412   ROM_LOAD16_BYTE( "945_l04a.k6", 0x080000, 0x20000, CRC(884e21ee) SHA1(ce86dd3a06775e5b1aa09db010dcb674e67828e7) )
413   ROM_LOAD16_BYTE( "945_l04c.m6", 0x080001, 0x20000, CRC(45bcd921) SHA1(e51a8a71362a6fb55124aa1dce74519c0a3c6e3f) )
414   ROM_LOAD16_BYTE( "945_l04b.k8", 0x0c0000, 0x20000, CRC(843bc67d) SHA1(cdf8421083f24ab27867ed5d08d8949da192b2b9) )
415   ROM_LOAD16_BYTE( "945_l04d.m8", 0x0c0001, 0x20000, CRC(0a98d08e) SHA1(1e0ca51a2d45c01fa3f11950ddd387f41ddae691) )
416   ROM_LOAD( "945_a01.h3",         0x100000, 0x80000, CRC(339d6dd2) SHA1(6a52b826aba92c75fc6a5926184948735dc20812) )
417   ROM_LOAD16_BYTE( "945_l03a.e6", 0x180000, 0x20000, CRC(a67ef087) SHA1(fd63474f3bbde5dfc53ed4c1db25d6411a8b54d2) )
418   ROM_LOAD16_BYTE( "945_l03c.h6", 0x180001, 0x20000, CRC(a56be17a) SHA1(1d387736144c30fcb5de54235331ab1ff70c356e) )
419   ROM_LOAD16_BYTE( "945_l03b.e8", 0x1c0000, 0x20000, CRC(933e68b9) SHA1(f3a39446ca77d17fdbd938bd5f718ae9d5570879) )
420   ROM_LOAD16_BYTE( "945_l03d.h8", 0x1c0001, 0x20000, CRC(f375e87b) SHA1(6427b966795c907c8e516244872fe52217da62c4) )
409   ROM_LOAD32_WORD( "945_a02.l3",  0x000000, 0x80000, CRC(4dfffd74) SHA1(588210bac27448240ef08961f70b714b69cb3ffd) )
410   ROM_LOAD32_WORD( "945_a01.h3",  0x000002, 0x80000, CRC(339d6dd2) SHA1(6a52b826aba92c75fc6a5926184948735dc20812) )
411   ROM_LOAD32_BYTE( "945_l04a.k6", 0x100000, 0x20000, CRC(884e21ee) SHA1(ce86dd3a06775e5b1aa09db010dcb674e67828e7) )
412   ROM_LOAD32_BYTE( "945_l04c.m6", 0x100001, 0x20000, CRC(45bcd921) SHA1(e51a8a71362a6fb55124aa1dce74519c0a3c6e3f) )
413   ROM_LOAD32_BYTE( "945_l03a.e6", 0x100002, 0x20000, CRC(a67ef087) SHA1(fd63474f3bbde5dfc53ed4c1db25d6411a8b54d2) )
414   ROM_LOAD32_BYTE( "945_l03c.h6", 0x100003, 0x20000, CRC(a56be17a) SHA1(1d387736144c30fcb5de54235331ab1ff70c356e) )
415   ROM_LOAD32_BYTE( "945_l04b.k8", 0x180000, 0x20000, CRC(843bc67d) SHA1(cdf8421083f24ab27867ed5d08d8949da192b2b9) )
416   ROM_LOAD32_BYTE( "945_l04d.m8", 0x180001, 0x20000, CRC(0a98d08e) SHA1(1e0ca51a2d45c01fa3f11950ddd387f41ddae691) )
417   ROM_LOAD32_BYTE( "945_l03b.e8", 0x180002, 0x20000, CRC(933e68b9) SHA1(f3a39446ca77d17fdbd938bd5f718ae9d5570879) )
418   ROM_LOAD32_BYTE( "945_l03d.h8", 0x180003, 0x20000, CRC(f375e87b) SHA1(6427b966795c907c8e516244872fe52217da62c4) )
421419
422420   ROM_REGION( 0x0100, "proms", 0 )
423421   ROM_LOAD( "945l14.j28", 0x0000, 0x0100, CRC(c778c189) SHA1(847eaf379ba075c25911c6f83dd63ff390534f60) )  /* priority encoder (not used) */
r30753r30754
450448   /* gfx data is dynamically generated in RAM */
451449
452450   ROM_REGION( 0x200000, "gfx2", 0 )   /* graphics (addressable by the main CPU) */
453   ROM_LOAD( "945_a02.l3",         0x000000, 0x80000, CRC(4dfffd74) SHA1(588210bac27448240ef08961f70b714b69cb3ffd) )
454   ROM_LOAD16_BYTE( "945_l04a.k6", 0x080000, 0x20000, CRC(884e21ee) SHA1(ce86dd3a06775e5b1aa09db010dcb674e67828e7) )
455   ROM_LOAD16_BYTE( "945_l04c.m6", 0x080001, 0x20000, CRC(45bcd921) SHA1(e51a8a71362a6fb55124aa1dce74519c0a3c6e3f) )
456   ROM_LOAD16_BYTE( "945_l04b.k8", 0x0c0000, 0x20000, CRC(843bc67d) SHA1(cdf8421083f24ab27867ed5d08d8949da192b2b9) )
457   ROM_LOAD16_BYTE( "945_l04d.m8", 0x0c0001, 0x20000, CRC(0a98d08e) SHA1(1e0ca51a2d45c01fa3f11950ddd387f41ddae691) )
458   ROM_LOAD( "945_a01.h3",         0x100000, 0x80000, CRC(339d6dd2) SHA1(6a52b826aba92c75fc6a5926184948735dc20812) )
459   ROM_LOAD16_BYTE( "945_l03a.e6", 0x180000, 0x20000, CRC(a67ef087) SHA1(fd63474f3bbde5dfc53ed4c1db25d6411a8b54d2) )
460   ROM_LOAD16_BYTE( "945_l03c.h6", 0x180001, 0x20000, CRC(a56be17a) SHA1(1d387736144c30fcb5de54235331ab1ff70c356e) )
461   ROM_LOAD16_BYTE( "945_l03b.e8", 0x1c0000, 0x20000, CRC(933e68b9) SHA1(f3a39446ca77d17fdbd938bd5f718ae9d5570879) )
462   ROM_LOAD16_BYTE( "945_l03d.h8", 0x1c0001, 0x20000, CRC(f375e87b) SHA1(6427b966795c907c8e516244872fe52217da62c4) )
451   ROM_LOAD32_WORD( "945_a02.l3",  0x000000, 0x80000, CRC(4dfffd74) SHA1(588210bac27448240ef08961f70b714b69cb3ffd) )
452   ROM_LOAD32_WORD( "945_a01.h3",  0x000002, 0x80000, CRC(339d6dd2) SHA1(6a52b826aba92c75fc6a5926184948735dc20812) )
453   ROM_LOAD32_BYTE( "945_l04a.k6", 0x100000, 0x20000, CRC(884e21ee) SHA1(ce86dd3a06775e5b1aa09db010dcb674e67828e7) )
454   ROM_LOAD32_BYTE( "945_l04c.m6", 0x100001, 0x20000, CRC(45bcd921) SHA1(e51a8a71362a6fb55124aa1dce74519c0a3c6e3f) )
455   ROM_LOAD32_BYTE( "945_l03a.e6", 0x100002, 0x20000, CRC(a67ef087) SHA1(fd63474f3bbde5dfc53ed4c1db25d6411a8b54d2) )
456   ROM_LOAD32_BYTE( "945_l03c.h6", 0x100003, 0x20000, CRC(a56be17a) SHA1(1d387736144c30fcb5de54235331ab1ff70c356e) )
457   ROM_LOAD32_BYTE( "945_l04b.k8", 0x180000, 0x20000, CRC(843bc67d) SHA1(cdf8421083f24ab27867ed5d08d8949da192b2b9) )
458   ROM_LOAD32_BYTE( "945_l04d.m8", 0x180001, 0x20000, CRC(0a98d08e) SHA1(1e0ca51a2d45c01fa3f11950ddd387f41ddae691) )
459   ROM_LOAD32_BYTE( "945_l03b.e8", 0x180002, 0x20000, CRC(933e68b9) SHA1(f3a39446ca77d17fdbd938bd5f718ae9d5570879) )
460   ROM_LOAD32_BYTE( "945_l03d.h8", 0x180003, 0x20000, CRC(f375e87b) SHA1(6427b966795c907c8e516244872fe52217da62c4) )
463461
464462   ROM_REGION( 0x0100, "proms", 0 )
465463   ROM_LOAD( "945l14.j28", 0x0000, 0x0100, CRC(c778c189) SHA1(847eaf379ba075c25911c6f83dd63ff390534f60) )  /* priority encoder (not used) */
trunk/src/mame/video/k051960.c
r30753r30754
6868   m_ram(NULL),
6969   m_gfx(NULL),
7070   //m_spriterombank[3],
71   m_dx(0),
72   m_dy(0),
7371   m_romoffset(0),
7472   m_spriteflip(0),
7573   m_readroms(0),
r30753r30754
208206   save_pointer(NAME(m_ram), 0x400);
209207   save_item(NAME(m_irq_enabled));
210208   save_item(NAME(m_nmi_enabled));
211   save_item(NAME(m_dx));
212   save_item(NAME(m_dy));
213209
214210   save_item(NAME(m_k051937_counter));
215211}
r30753r30754
220216
221217void k051960_device::device_reset()
222218{
223   m_dx = m_dy = 0;
224219   m_k051937_counter = 0;
225220
226221   m_romoffset = 0;
r30753r30754
358353   return m_nmi_enabled;
359354}
360355
361void k051960_device::k051960_set_sprite_offsets( int dx, int dy )
362{
363   m_dx = dx;
364   m_dy = dy;
365}
366356
367
368357READ16_MEMBER( k051960_device::k051937_word_r )
369358{
370359   return k051937_r(space, offset * 2 + 1) | (k051937_r(space, offset * 2) << 8);
r30753r30754
480469
481470      ox = (256 * m_ram[offs + 6] + m_ram[offs + 7]) & 0x01ff;
482471      oy = 256 - ((256 * m_ram[offs + 4] + m_ram[offs + 5]) & 0x01ff);
483      ox += m_dx;
484      oy += m_dy;
485472      flipx = m_ram[offs + 6] & 0x02;
486473      flipy = m_ram[offs + 4] & 0x02;
487474      zoomx = (m_ram[offs + 6] & 0xfc) >> 2;
trunk/src/mame/video/k051960.h
r30753r30754
5151   void k051960_sprites_draw(bitmap_ind16 &bitmap, const rectangle &cliprect, bitmap_ind8 &priority_bitmap, int min_priority, int max_priority);
5252   int k051960_is_irq_enabled();
5353   int k051960_is_nmi_enabled();
54   void k051960_set_sprite_offsets(int dx, int dy);
5554
5655protected:
5756   // device-level overrides
r30753r30754
6564   gfx_element *m_gfx;
6665
6766   UINT8    m_spriterombank[3];
68   int      m_dx, m_dy;
6967   int      m_romoffset;
7068   int      m_spriteflip, m_readroms;
7169   int      m_irq_enabled, m_nmi_enabled;
trunk/src/mame/video/k052109.c
r30753r30754
149149   m_has_extra_video_ram(0),
150150   m_rmrd_line(0),
151151   m_irq_enabled(0),
152   //m_dx[3], m_dy[3],
153152   m_romsubbank(0),
154153   m_scrollctrl(0),
155154   m_gfxdecode(*this),
r30753r30754
280279   save_item(NAME(m_irq_enabled));
281280   save_item(NAME(m_charrombank));
282281   save_item(NAME(m_charrombank_2));
283   save_item(NAME(m_dx));
284   save_item(NAME(m_dy));
285282   save_item(NAME(m_has_extra_video_ram));
286283   machine().save().register_postload(save_prepost_delegate(FUNC(k052109_device::tileflip_reset), this));
287284}
r30753r30754
301298
302299   m_has_extra_video_ram = 0;
303300
304   for (i = 0; i < 3; i++)
305      m_dx[i] = m_dy[i] = 0;
306
307301   for (i = 0; i < 4; i++)
308302   {
309303      m_charrombank[i] = 0;
r30753r30754
550544      m_tilemap[1]->set_scroll_rows(256);
551545      m_tilemap[1]->set_scroll_cols(1);
552546      yscroll = m_ram[0x180c];
553      m_tilemap[1]->set_scrolly(0, yscroll + m_dy[1]);
547      m_tilemap[1]->set_scrolly(0, yscroll);
554548      for (offs = 0; offs < 256; offs++)
555549      {
556550         xscroll = scrollram[2 * (offs & 0xfff8) + 0] + 256 * scrollram[2 * (offs & 0xfff8) + 1];
557551         xscroll -= 6;
558         m_tilemap[1]->set_scrollx((offs + yscroll) & 0xff, xscroll + m_dx[1]);
552         m_tilemap[1]->set_scrollx((offs + yscroll) & 0xff, xscroll);
559553      }
560554   }
561555   else if ((m_scrollctrl & 0x03) == 0x03)
r30753r30754
565559      m_tilemap[1]->set_scroll_rows(256);
566560      m_tilemap[1]->set_scroll_cols(1);
567561      yscroll = m_ram[0x180c];
568      m_tilemap[1]->set_scrolly(0, yscroll + m_dy[1]);
562      m_tilemap[1]->set_scrolly(0, yscroll);
569563      for (offs = 0; offs < 256; offs++)
570564      {
571565         xscroll = scrollram[2 * offs + 0] + 256 * scrollram[2 * offs + 1];
572566         xscroll -= 6;
573         m_tilemap[1]->set_scrollx((offs + yscroll) & 0xff, xscroll + m_dx[1]);
567         m_tilemap[1]->set_scrollx((offs + yscroll) & 0xff, xscroll);
574568      }
575569   }
576570   else if ((m_scrollctrl & 0x04) == 0x04)
r30753r30754
581575      m_tilemap[1]->set_scroll_cols(512);
582576      xscroll = m_ram[0x1a00] + 256 * m_ram[0x1a01];
583577      xscroll -= 6;
584      m_tilemap[1]->set_scrollx(0, xscroll + m_dx[1]);
578      m_tilemap[1]->set_scrollx(0, xscroll);
585579      for (offs = 0; offs < 512; offs++)
586580      {
587581         yscroll = scrollram[offs / 8];
588         m_tilemap[1]->set_scrolly((offs + xscroll) & 0x1ff, yscroll + m_dy[1]);
582         m_tilemap[1]->set_scrolly((offs + xscroll) & 0x1ff, yscroll);
589583      }
590584   }
591585   else
r30753r30754
597591      xscroll = scrollram[0] + 256 * scrollram[1];
598592      xscroll -= 6;
599593      yscroll = m_ram[0x180c];
600      m_tilemap[1]->set_scrollx(0, xscroll + m_dx[1]);
601      m_tilemap[1]->set_scrolly(0, yscroll + m_dy[1]);
594      m_tilemap[1]->set_scrollx(0, xscroll);
595      m_tilemap[1]->set_scrolly(0, yscroll);
602596   }
603597
604598   if ((m_scrollctrl & 0x18) == 0x10)
r30753r30754
608602      m_tilemap[2]->set_scroll_rows(256);
609603      m_tilemap[2]->set_scroll_cols(1);
610604      yscroll = m_ram[0x380c];
611      m_tilemap[2]->set_scrolly(0, yscroll + m_dy[2]);
605      m_tilemap[2]->set_scrolly(0, yscroll);
612606      for (offs = 0; offs < 256; offs++)
613607      {
614608         xscroll = scrollram[2 * (offs & 0xfff8) + 0] + 256 * scrollram[2 * (offs & 0xfff8) + 1];
615609         xscroll -= 6;
616         m_tilemap[2]->set_scrollx((offs + yscroll) & 0xff, xscroll + m_dx[2]);
610         m_tilemap[2]->set_scrollx((offs + yscroll) & 0xff, xscroll);
617611      }
618612   }
619613   else if ((m_scrollctrl & 0x18) == 0x18)
r30753r30754
623617      m_tilemap[2]->set_scroll_rows(256);
624618      m_tilemap[2]->set_scroll_cols(1);
625619      yscroll = m_ram[0x380c];
626      m_tilemap[2]->set_scrolly(0, yscroll + m_dy[2]);
620      m_tilemap[2]->set_scrolly(0, yscroll);
627621      for (offs = 0; offs < 256; offs++)
628622      {
629623         xscroll = scrollram[2 * offs + 0] + 256 * scrollram[2 * offs + 1];
630624         xscroll -= 6;
631         m_tilemap[2]->set_scrollx((offs + yscroll) & 0xff, xscroll + m_dx[2]);
625         m_tilemap[2]->set_scrollx((offs + yscroll) & 0xff, xscroll);
632626      }
633627   }
634628   else if ((m_scrollctrl & 0x20) == 0x20)
r30753r30754
639633      m_tilemap[2]->set_scroll_cols(512);
640634      xscroll = m_ram[0x3a00] + 256 * m_ram[0x3a01];
641635      xscroll -= 6;
642      m_tilemap[2]->set_scrollx(0, xscroll + m_dx[2]);
636      m_tilemap[2]->set_scrollx(0, xscroll);
643637      for (offs = 0; offs < 512; offs++)
644638      {
645639         yscroll = scrollram[offs / 8];
646         m_tilemap[2]->set_scrolly((offs + xscroll) & 0x1ff, yscroll + m_dy[2]);
640         m_tilemap[2]->set_scrolly((offs + xscroll) & 0x1ff, yscroll);
647641      }
648642   }
649643   else
r30753r30754
655649      xscroll = scrollram[0] + 256 * scrollram[1];
656650      xscroll -= 6;
657651      yscroll = m_ram[0x380c];
658      m_tilemap[2]->set_scrollx(0, xscroll + m_dx[2]);
659      m_tilemap[2]->set_scrolly(0, yscroll + m_dy[2]);
652      m_tilemap[2]->set_scrollx(0, xscroll);
653      m_tilemap[2]->set_scrolly(0, yscroll);
660654   }
661655
662656#if 0
r30753r30754
691685   return m_irq_enabled;
692686}
693687
694void k052109_device::set_layer_offsets( int layer, int dx, int dy )
695{
696   m_dx[layer] = dx;
697   m_dy[layer] = dy;
698}
699688
700
701689/***************************************************************************
702690
703691  Callbacks for the TileMap code
trunk/src/mame/video/k052109.h
r30753r30754
5959   int get_rmrd_line();
6060   void tilemap_update();
6161   int is_irq_enabled();
62   void set_layer_offsets(int layer, int dx, int dy);
6362   void tilemap_mark_dirty(int tmap_num);
6463   void tilemap_draw(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, int tmap_num, UINT32 flags, UINT8 priority);
6564
trunk/src/mame/video/gradius3.c
r30753r30754
7777   m_layer_colorbase[2] = 48;
7878   m_sprite_colorbase = 16;
7979
80   m_k052109->set_layer_offsets(2, -2, 0);
81   m_k051960->k051960_set_sprite_offsets(2, 0);
82
83   /* re-decode the sprites because the ROMs are connected to the custom IC differently
84      from how they are connected to the CPU. */
85   for (i = 0; i < TOTAL_SPRITES; i++)
86      m_gfxdecode->gfx(1)->mark_dirty(i);
87
8880   m_gfxdecode->gfx(0)->set_source((UINT8 *)m_gfxram.target());
8981
9082   machine().save().register_postload(save_prepost_delegate(FUNC(gradius3_state::gradius3_postload), this));

Previous 199869 Revisions Next


© 1997-2024 The MAME Team