Previous 199869 Revisions Next

r29528 Friday 11th April, 2014 at 06:59:18 UTC by Alex Jackson
bladestl.c: simplify rom loading, reduce tagmap lookups [Alex Jackson]
[src/mame/drivers]battlnts.c bladestl.c rockrage.c
[src/mame/includes]battlnts.h bladestl.h rockrage.h

trunk/src/mame/includes/bladestl.h
r29527r29528
1313public:
1414   bladestl_state(const machine_config &mconfig, device_type type, const char *tag)
1515      : driver_device(mconfig, type, tag),
16      m_paletteram(*this, "paletteram"),
16
17      m_maincpu(*this, "maincpu"),
1718      m_audiocpu(*this, "audiocpu"),
1819      m_k007342(*this, "k007342"),
1920      m_k007420(*this, "k007420"),
20      m_maincpu(*this, "maincpu"),
2121      m_upd7759(*this, "upd"),
2222      m_gfxdecode(*this, "gfxdecode"),
23      m_palette(*this, "palette") { }
23      m_palette(*this, "palette"),
24      m_rombank(*this, "rombank"),
25      m_paletteram(*this, "paletteram") { }
2426
27   required_device<cpu_device> m_maincpu;
28   required_device<cpu_device> m_audiocpu;
29   required_device<k007342_device> m_k007342;
30   required_device<k007420_device> m_k007420;
31   required_device<upd7759_device> m_upd7759;
32   required_device<gfxdecode_device> m_gfxdecode;
33   required_device<palette_device> m_palette;
34
2535   /* memory pointers */
36   required_memory_bank m_rombank;
2637   required_shared_ptr<UINT8> m_paletteram;
2738
2839   /* video-related */
r29527r29528
3344   int        m_last_track[4];
3445
3546   /* devices */
36   required_device<cpu_device> m_audiocpu;
37   required_device<k007342_device> m_k007342;
38   required_device<k007420_device> m_k007420;
3947   DECLARE_READ8_MEMBER(trackball_r);
4048   DECLARE_WRITE8_MEMBER(bladestl_bankswitch_w);
4149   DECLARE_WRITE8_MEMBER(bladestl_sh_irqtrigger_w);
r29527r29528
4755   DECLARE_PALETTE_INIT(bladestl);
4856   UINT32 screen_update_bladestl(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
4957   TIMER_DEVICE_CALLBACK_MEMBER(bladestl_scanline);
50   required_device<cpu_device> m_maincpu;
51   required_device<upd7759_device> m_upd7759;
52   required_device<gfxdecode_device> m_gfxdecode;
53   required_device<palette_device> m_palette;
5458   void set_pens();
5559   K007342_CALLBACK_MEMBER(bladestl_tile_callback);
5660   K007420_CALLBACK_MEMBER(bladestl_sprite_callback);
trunk/src/mame/includes/rockrage.h
r29527r29528
1313public:
1414   rockrage_state(const machine_config &mconfig, device_type type, const char *tag)
1515      : driver_device(mconfig, type, tag),
16      m_paletteram(*this, "paletteram"),
1716      m_maincpu(*this, "maincpu"),
1817      m_audiocpu(*this, "audiocpu"),
1918      m_k007342(*this, "k007342"),
2019      m_k007420(*this, "k007420"),
2120      m_vlm(*this, "vlm"),
2221      m_gfxdecode(*this, "gfxdecode"),
23      m_palette(*this, "palette") { }
22      m_palette(*this, "palette"),
23      m_rombank(*this, "rombank"),
24      m_paletteram(*this, "paletteram") { }
2425
25   /* memory pointers */
26   required_shared_ptr<UINT8> m_paletteram;
27
28   /* video-related */
29   int        m_layer_colorbase[2];
30   int        m_vreg;
31
3226   /* devices */
3327   required_device<cpu_device> m_maincpu;
3428   required_device<cpu_device> m_audiocpu;
r29527r29528
3832   required_device<gfxdecode_device> m_gfxdecode;
3933   required_device<palette_device> m_palette;
4034
35   /* memory pointers */
36   required_memory_bank m_rombank;
37   required_shared_ptr<UINT8> m_paletteram;
38
39   /* video-related */
40   int        m_layer_colorbase[2];
41   int        m_vreg;
42
4143   DECLARE_WRITE8_MEMBER(rockrage_bankswitch_w);
4244   DECLARE_WRITE8_MEMBER(rockrage_sh_irqtrigger_w);
4345   DECLARE_WRITE8_MEMBER(rockrage_vreg_w);
trunk/src/mame/includes/battlnts.h
r29527r29528
1212public:
1313   battlnts_state(const machine_config &mconfig, device_type type, const char *tag)
1414      : driver_device(mconfig, type, tag),
15      m_maincpu(*this, "maincpu"),
1516      m_audiocpu(*this, "audiocpu"),
1617      m_k007342(*this, "k007342"),
1718      m_k007420(*this, "k007420"),
18      m_maincpu(*this, "maincpu"),
19      m_gfxdecode(*this, "gfxdecode") { }
19      m_gfxdecode(*this, "gfxdecode"),
20      m_rombank(*this, "rombank") { }
2021
21   /* memory pointers */
22//  UINT8 *      paletteram;    // this currently uses generic palette handling
23
2422   /* video-related */
2523   int m_spritebank;
2624   int m_layer_colorbase[2];
2725
28
2926   /* devices */
27   required_device<cpu_device> m_maincpu;
3028   required_device<cpu_device> m_audiocpu;
3129   required_device<k007342_device> m_k007342;
3230   required_device<k007420_device> m_k007420;
31   required_device<gfxdecode_device> m_gfxdecode;
32   required_memory_bank m_rombank;
33
3334   DECLARE_WRITE8_MEMBER(battlnts_sh_irqtrigger_w);
3435   DECLARE_WRITE8_MEMBER(battlnts_bankswitch_w);
3536   DECLARE_WRITE8_MEMBER(battlnts_spritebank_w);
r29527r29528
3839   virtual void machine_reset();
3940   UINT32 screen_update_battlnts(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
4041   INTERRUPT_GEN_MEMBER(battlnts_interrupt);
41   required_device<cpu_device> m_maincpu;
42   required_device<gfxdecode_device> m_gfxdecode;
4342   K007342_CALLBACK_MEMBER(battlnts_tile_callback);
4443   K007420_CALLBACK_MEMBER(battlnts_sprite_callback);
4544};
trunk/src/mame/drivers/battlnts.c
r29527r29528
3838WRITE8_MEMBER(battlnts_state::battlnts_bankswitch_w)
3939{
4040   /* bits 6 & 7 = bank number */
41   membank("bank1")->set_entry((data & 0xc0) >> 6);
41   m_rombank->set_entry((data & 0xc0) >> 6);
4242
4343   /* bits 4 & 5 = coin counters */
4444   coin_counter_w(machine(), 0, data & 0x10);
r29527r29528
7070   AM_RANGE(0x2e10, 0x2e10) AM_WRITE(watchdog_reset_w)         /* watchdog reset */
7171   AM_RANGE(0x2e14, 0x2e14) AM_WRITE(soundlatch_byte_w)                /* sound code # */
7272   AM_RANGE(0x2e18, 0x2e18) AM_WRITE(battlnts_sh_irqtrigger_w) /* cause interrupt on audio CPU */
73   AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")                        /* banked ROM */
73   AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("rombank")              /* banked ROM */
7474   AM_RANGE(0x8000, 0xffff) AM_ROM                             /* ROM 777e02.bin */
7575ADDRESS_MAP_END
7676
r29527r29528
212212{
213213   UINT8 *ROM = memregion("maincpu")->base();
214214
215   membank("bank1")->configure_entries(0, 4, &ROM[0x10000], 0x4000);
215   m_rombank->configure_entries(0, 4, &ROM[0x10000], 0x4000);
216216
217217   save_item(NAME(m_spritebank));
218218   save_item(NAME(m_layer_colorbase));
trunk/src/mame/drivers/bladestl.c
r29527r29528
7676   /* bit 4 = relay (???) */
7777
7878   /* bits 5-6 = bank number */
79   membank("bank1")->set_entry((data & 0x60) >> 5);
79   m_rombank->set_entry((data & 0x60) >> 5);
8080
8181   /* bit 7 = select sprite bank */
8282   m_spritebank = (data & 0x80) << 3;
r29527r29528
131131   AM_RANGE(0x2f80, 0x2f9f) AM_DEVREADWRITE("k051733", k051733_device, read, write)    /* Protection: 051733 */
132132   AM_RANGE(0x2fc0, 0x2fc0) AM_WRITENOP                        /* ??? */
133133   AM_RANGE(0x4000, 0x5fff) AM_RAM                             /* Work RAM */
134   AM_RANGE(0x6000, 0x7fff) AM_ROMBANK("bank1")                        /* banked ROM */
134   AM_RANGE(0x6000, 0x7fff) AM_ROMBANK("rombank")              /* banked ROM */
135135   AM_RANGE(0x8000, 0xffff) AM_ROM
136136ADDRESS_MAP_END
137137
r29527r29528
282282
283283void bladestl_state::machine_start()
284284{
285   UINT8 *ROM = memregion("maincpu")->base();
285   m_rombank->configure_entries(0, 4, memregion("maincpu")->base(), 0x2000);
286286
287   membank("bank1")->configure_entries(0, 4, &ROM[0x10000], 0x2000);
288
289287   save_item(NAME(m_spritebank));
290288   save_item(NAME(m_layer_colorbase));
291289   save_item(NAME(m_last_track));
r29527r29528
363361 *************************************/
364362
365363ROM_START( bladestl )
366   ROM_REGION( 0x18000, "maincpu", 0 ) /* code + banked roms */
367   ROM_LOAD( "797-t01.19c", 0x10000, 0x08000, CRC(89d7185d) SHA1(0d2f346d9515cab0389106c0e227fb0bd84a2c9c) )   /* fixed ROM */
368   ROM_CONTINUE(            0x08000, 0x08000 )             /* banked ROM */
364   ROM_REGION( 0x10000, "maincpu", 0 ) /* code + banked roms */
365   ROM_LOAD( "797-t01.19c", 0x00000, 0x10000, CRC(89d7185d) SHA1(0d2f346d9515cab0389106c0e227fb0bd84a2c9c) )
369366
370367   ROM_REGION( 0x10000, "audiocpu", 0 ) /* 64k for the sound CPU */
371368   ROM_LOAD( "797-c02.12d", 0x08000, 0x08000, CRC(65a331ea) SHA1(f206f6c5f0474542a5b7686b2f4d2cc7077dd5b9) )
r29527r29528
385382ROM_END
386383
387384ROM_START( bladestll )
388   ROM_REGION( 0x18000, "maincpu", 0 ) /* code + banked roms */
389   ROM_LOAD( "797-l01.19c", 0x10000, 0x08000, CRC(1ab14c40) SHA1(c566e31a666b467d75f5fc9fa427986c3ebc705c) )   /* fixed ROM */
390   ROM_CONTINUE(            0x08000, 0x08000 )             /* banked ROM */
385   ROM_REGION( 0x10000, "maincpu", 0 ) /* code + banked roms */
386   ROM_LOAD( "797-l01.19c", 0x00000, 0x10000, CRC(1ab14c40) SHA1(c566e31a666b467d75f5fc9fa427986c3ebc705c) )
391387
392388   ROM_REGION( 0x10000, "audiocpu", 0 ) /* 64k for the sound CPU */
393389   ROM_LOAD( "797-c02.12d", 0x08000, 0x08000, CRC(65a331ea) SHA1(f206f6c5f0474542a5b7686b2f4d2cc7077dd5b9) )
r29527r29528
407403ROM_END
408404
409405ROM_START( bladestle )
410   ROM_REGION( 0x18000, "maincpu", 0 ) /* code + banked roms */
411   ROM_LOAD( "797-e01.19c", 0x10000, 0x08000, CRC(f8472e95) SHA1(8b6caa905fb1642300dd9da508871b00429872c3) )   /* fixed ROM */
412   ROM_CONTINUE(            0x08000, 0x08000 )             /* banked ROM */
406   ROM_REGION( 0x10000, "maincpu", 0 ) /* code + banked roms */
407   ROM_LOAD( "797-e01.19c", 0x00000, 0x10000, CRC(f8472e95) SHA1(8b6caa905fb1642300dd9da508871b00429872c3) )
413408
414409   ROM_REGION( 0x10000, "audiocpu", 0 ) /* 64k for the sound CPU */
415410   ROM_LOAD( "797-c02.12d", 0x08000, 0x08000, CRC(65a331ea) SHA1(f206f6c5f0474542a5b7686b2f4d2cc7077dd5b9) )
trunk/src/mame/drivers/rockrage.c
r29527r29528
6464WRITE8_MEMBER(rockrage_state::rockrage_bankswitch_w)
6565{
6666   /* bits 4-6 = bank number */
67   membank("bank1")->set_entry((data & 0x70) >> 4);
67   m_rombank->set_entry((data & 0x70) >> 4);
6868
6969   /* bits 0 & 1 = coin counters */
7070   coin_counter_w(machine(), 0,data & 0x01);
r29527r29528
107107   AM_RANGE(0x2f00, 0x2f00) AM_WRITE(rockrage_vreg_w)                          /* ??? */
108108   AM_RANGE(0x2f40, 0x2f40) AM_WRITE(rockrage_bankswitch_w)                    /* bankswitch control */
109109   AM_RANGE(0x4000, 0x5fff) AM_RAM                                             /* RAM */
110   AM_RANGE(0x6000, 0x7fff) AM_ROMBANK("bank1")                                        /* banked ROM */
110   AM_RANGE(0x6000, 0x7fff) AM_ROMBANK("rombank")                              /* banked ROM */
111111   AM_RANGE(0x8000, 0xffff) AM_ROM                                             /* ROM */
112112ADDRESS_MAP_END
113113
r29527r29528
224224{
225225   UINT8 *ROM = memregion("maincpu")->base();
226226
227   membank("bank1")->configure_entries(0, 8, &ROM[0x10000], 0x2000);
227   m_rombank->configure_entries(0, 8, &ROM[0x10000], 0x2000);
228228
229229   save_item(NAME(m_vreg));
230230   save_item(NAME(m_layer_colorbase));

Previous 199869 Revisions Next


© 1997-2024 The MAME Team