diff options
author | cam900 <dbtlrchl@naver.com> | 2018-08-18 13:28:35 +0900 |
---|---|---|
committer | Vas Crabb <cuavas@users.noreply.github.com> | 2018-09-01 16:53:24 +1000 |
commit | 24790c95ce735247f2ef78c059cc0e9f8eb7d46a (patch) | |
tree | 58751ce6fc5a44168ad99f2b030fe4ede7e77251 | |
parent | 6e50dd8831f4bc9edcb27d5d213de2033784aca5 (diff) |
artmagic.cpp : Reduce runtime tag lookups, Cleanup naming etc...
-rw-r--r-- | src/mame/drivers/artmagic.cpp | 19 | ||||
-rw-r--r-- | src/mame/includes/artmagic.h | 16 | ||||
-rw-r--r-- | src/mame/video/artmagic.cpp | 17 |
3 files changed, 22 insertions, 30 deletions
diff --git a/src/mame/drivers/artmagic.cpp b/src/mame/drivers/artmagic.cpp index ebcbe513bd7..2d89a570561 100644 --- a/src/mame/drivers/artmagic.cpp +++ b/src/mame/drivers/artmagic.cpp @@ -471,7 +471,7 @@ void artmagic_state::tms_map(address_map &map) { map(0x00000000, 0x001fffff).ram().share("vram0"); map(0x00400000, 0x005fffff).ram().share("vram1"); - map(0x00800000, 0x0080007f).rw(FUNC(artmagic_state::artmagic_blitter_r), FUNC(artmagic_state::artmagic_blitter_w)); + map(0x00800000, 0x0080007f).rw(FUNC(artmagic_state::blitter_r), FUNC(artmagic_state::blitter_w)); map(0x00c00000, 0x00c000ff).rw(m_tlc34076, FUNC(tlc34076_device::read), FUNC(tlc34076_device::write)).umask16(0x00ff); map(0xc0000000, 0xc00001ff).rw(m_tms, FUNC(tms34010_device::io_register_r), FUNC(tms34010_device::io_register_w)); map(0xffe00000, 0xffffffff).ram(); @@ -482,7 +482,7 @@ void artmagic_state::stonebal_tms_map(address_map &map) { map(0x00000000, 0x001fffff).ram().share("vram0"); map(0x00400000, 0x005fffff).ram().share("vram1"); - map(0x00800000, 0x0080007f).rw(FUNC(artmagic_state::artmagic_blitter_r), FUNC(artmagic_state::artmagic_blitter_w)); + map(0x00800000, 0x0080007f).rw(FUNC(artmagic_state::blitter_r), FUNC(artmagic_state::blitter_w)); map(0x00c00000, 0x00c000ff).rw(m_tlc34076, FUNC(tlc34076_device::read), FUNC(tlc34076_device::write)).umask16(0x00ff); map(0xc0000000, 0xc00001ff).rw(m_tms, FUNC(tms34010_device::io_register_r), FUNC(tms34010_device::io_register_w)); map(0xffc00000, 0xffffffff).ram(); @@ -829,7 +829,6 @@ MACHINE_CONFIG_START(artmagic_state::artmagic) /* video hardware */ MCFG_TLC34076_ADD("tlc34076", TLC34076_6_BIT) - MCFG_SCREEN_ADD("screen", RASTER) MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK_40MHz/6, 428, 0, 320, 313, 0, 256) MCFG_SCREEN_UPDATE_DEVICE("tms", tms34010_device, tms340x0_rgb32) @@ -902,7 +901,7 @@ ROM_START( cheesech ) ROM_LOAD16_BYTE( "u102", 0x00000, 0x40000, CRC(1d6e07c5) SHA1(8650868cce47f685d22131aa28aad45033cb0a52) ) ROM_LOAD16_BYTE( "u101", 0x00001, 0x40000, CRC(30ae9f95) SHA1(fede5d271aabb654c1efc077253d81ba23786f22) ) - ROM_REGION16_LE( 0x100000, "gfx1", 0 ) + ROM_REGION16_LE( 0x100000, "gfx", 0 ) ROM_LOAD16_BYTE( "u134", 0x00000, 0x80000, CRC(354ba4a6) SHA1(68e7df750efb21c716ba8b8ed4ca15a8cdc9141b) ) ROM_LOAD16_BYTE( "u135", 0x00001, 0x80000, CRC(97348681) SHA1(7e74685041cd5e8fbd45731284cf316dc3ffec60) ) @@ -916,7 +915,7 @@ ROM_START( ultennis ) ROM_LOAD16_BYTE( "a+m001b1093_13b_u102.u102", 0x00000, 0x40000, CRC(ec31385e) SHA1(244e78619c549712d5541fb252656afeba639bb7) ) /* labeled A&M001B1093 13B U102 */ ROM_LOAD16_BYTE( "a+m001b1093_12b_u101.u101", 0x00001, 0x40000, CRC(08a7f655) SHA1(b8a4265472360b68bed71d6c175fc54dff088c1d) ) /* labeled A&M001B1093 12B U101 */ - ROM_REGION16_LE( 0x200000, "gfx1", 0 ) + ROM_REGION16_LE( 0x200000, "gfx", 0 ) ROM_LOAD( "a+m-001-01-a.ic133", 0x000000, 0x200000, CRC(29d9204d) SHA1(0b2b77a55b8c2877c2e31b63156505584d4ee1f0) ) /* mask ROM labeled as A&M-001-01-A (C)1993 ART & MAGIC */ ROM_REGION( 0x40000, "oki", 0 ) @@ -929,7 +928,7 @@ ROM_START( ultennisj ) ROM_LOAD16_BYTE( "a+m001d0194-13c-u102-japan.u102", 0x00000, 0x40000, CRC(65cee452) SHA1(49259e8faf289d6d80769f6d44e9d61d15e431c6) ) /* labeled A&M001D0194 13C U102 */ ROM_LOAD16_BYTE( "a+m001d0194-12c-u101-japan.u101", 0x00001, 0x40000, CRC(5f4b0ca0) SHA1(57e9ed60cc0e53eeb4e08c4003138d3bdaec3de7) ) /* labeled A&M001D0194 12C U101 */ - ROM_REGION16_LE( 0x200000, "gfx1", 0 ) + ROM_REGION16_LE( 0x200000, "gfx", 0 ) ROM_LOAD( "a+m-001-01-a.ic133", 0x000000, 0x200000, CRC(29d9204d) SHA1(0b2b77a55b8c2877c2e31b63156505584d4ee1f0) ) /* mask ROM labeled as A&M-001-01-A (C)1993 ART & MAGIC */ ROM_REGION( 0x40000, "oki", 0 ) @@ -982,7 +981,7 @@ ROM_START( stonebal ) ROM_LOAD16_BYTE( "u102", 0x00000, 0x40000, CRC(712feda1) SHA1(c5b385f425786566fa274fe166a7116615a8ce86) ) /* 4 Players kit, v1-20 13/12/1994 */ ROM_LOAD16_BYTE( "u101", 0x00001, 0x40000, CRC(4f1656a9) SHA1(720717ae4166b3ec50bb572197a8c6c96b284648) ) - ROM_REGION16_LE( 0x400000, "gfx1", 0 ) + ROM_REGION16_LE( 0x400000, "gfx", 0 ) ROM_LOAD( "u1600.bin", 0x000000, 0x200000, CRC(d2ffe9ff) SHA1(1c5dcbd8208e45458da9db7621f6b8602bca0fae) ) ROM_LOAD( "u1601.bin", 0x200000, 0x200000, CRC(dbe893f0) SHA1(71a8a022decc0ff7d4c65f7e6e0cbba9e0b5582c) ) @@ -996,7 +995,7 @@ ROM_START( stonebal2 ) ROM_LOAD16_BYTE( "u102.bin", 0x00000, 0x40000, CRC(b3c4f64f) SHA1(6327e9f3cd9deb871a6910cf1f006c8ee143e859) ) /* 2 Players kit, v1-20 7/11/1994 */ ROM_LOAD16_BYTE( "u101.bin", 0x00001, 0x40000, CRC(fe373f74) SHA1(bafac4bbd1aae4ccc4ae16205309483f1bbdd464) ) - ROM_REGION16_LE( 0x400000, "gfx1", 0 ) + ROM_REGION16_LE( 0x400000, "gfx", 0 ) ROM_LOAD( "u1600.bin", 0x000000, 0x200000, CRC(d2ffe9ff) SHA1(1c5dcbd8208e45458da9db7621f6b8602bca0fae) ) ROM_LOAD( "u1601.bin", 0x200000, 0x200000, CRC(dbe893f0) SHA1(71a8a022decc0ff7d4c65f7e6e0cbba9e0b5582c) ) @@ -1010,7 +1009,7 @@ ROM_START( stonebal2o ) ROM_LOAD16_BYTE( "sb_o_2p_24-10.u102", 0x00000, 0x40000, CRC(ab58c6b2) SHA1(6e29646d4b0802733d04e722909c03b87761c759) ) /* 2 Players kit, v1-20 21/10/1994 */ ROM_LOAD16_BYTE( "sb_e_2p_24-10.u101", 0x00001, 0x40000, CRC(ea967835) SHA1(12655f0dc44981f4a49ed45f271d5eb24f2cc5c6) ) /* Yes the Odd / Even labels are backwards & chips dated 24/10 */ - ROM_REGION16_LE( 0x400000, "gfx1", 0 ) + ROM_REGION16_LE( 0x400000, "gfx", 0 ) ROM_LOAD( "u1600.bin", 0x000000, 0x200000, CRC(d2ffe9ff) SHA1(1c5dcbd8208e45458da9db7621f6b8602bca0fae) ) ROM_LOAD( "u1601.bin", 0x200000, 0x200000, CRC(dbe893f0) SHA1(71a8a022decc0ff7d4c65f7e6e0cbba9e0b5582c) ) @@ -1097,7 +1096,7 @@ ROM_START( shtstar ) ROM_REGION( 0x10000, "guncpu", 0 ) ROM_LOAD( "2207_7b42c5.u6", 0x00000, 0x8000, CRC(6dd4b4ed) SHA1(b37e9e5ddfb5d88c5412dc79643adfc4362fbb46) ) - ROM_REGION16_LE( 0x100000, "gfx1", 0 ) + ROM_REGION16_LE( 0x100000, "gfx", 0 ) ROM_LOAD( "a+m005c0494_13a.u134", 0x00000, 0x80000, CRC(f101136a) SHA1(9ff7275e0c1fc41f3d97ae0bd628581e2803910a) ) ROM_LOAD( "a+m005c0494_14a.u135", 0x80000, 0x80000, CRC(3e847f8f) SHA1(c99159951303b7f752305fa8e7e6d4bfb4fc54ba) ) diff --git a/src/mame/includes/artmagic.h b/src/mame/includes/artmagic.h index 06f7587773b..67aaf477b7d 100644 --- a/src/mame/includes/artmagic.h +++ b/src/mame/includes/artmagic.h @@ -21,23 +21,21 @@ public: : driver_device(mconfig, type, tag) , m_maincpu(*this, "maincpu") , m_oki(*this, "oki") - , m_oki_region(*this, "oki") , m_tms(*this, "tms") , m_tlc34076(*this, "tlc34076") , m_control(*this, "control") - , m_vram0(*this, "vram0") - , m_vram1(*this, "vram1") + , m_vram(*this, "vram%u", 0U) + , m_blitter_base(*this, "gfx") { } required_device<cpu_device> m_maincpu; required_device<okim6295_device> m_oki; - required_memory_region m_oki_region; required_device<tms34010_device> m_tms; required_device<tlc34076_device> m_tlc34076; required_shared_ptr<uint16_t> m_control; - required_shared_ptr<uint16_t> m_vram0; - required_shared_ptr<uint16_t> m_vram1; + required_shared_ptr_array<uint16_t, 2> m_vram; + required_region_ptr<uint16_t> m_blitter_base; uint8_t m_tms_irq; uint8_t m_hack_irq; @@ -56,8 +54,6 @@ public: int m_xor[16]; int m_is_stoneball; - uint16_t *m_blitter_base; - uint32_t m_blitter_mask; uint16_t m_blitter_data[8]; uint8_t m_blitter_page; attotime m_blitter_busy_until; @@ -65,8 +61,8 @@ public: DECLARE_WRITE16_MEMBER(control_w); DECLARE_READ16_MEMBER(ultennis_hack_r); DECLARE_WRITE16_MEMBER(protection_bit_w); - DECLARE_READ16_MEMBER(artmagic_blitter_r); - DECLARE_WRITE16_MEMBER(artmagic_blitter_w); + DECLARE_READ16_MEMBER(blitter_r); + DECLARE_WRITE16_MEMBER(blitter_w); DECLARE_WRITE_LINE_MEMBER(m68k_gen_int); TMS340X0_TO_SHIFTREG_CB_MEMBER(to_shiftreg); TMS340X0_FROM_SHIFTREG_CB_MEMBER(from_shiftreg); diff --git a/src/mame/video/artmagic.cpp b/src/mame/video/artmagic.cpp index 41752d82bf9..389ecc34091 100644 --- a/src/mame/video/artmagic.cpp +++ b/src/mame/video/artmagic.cpp @@ -26,9 +26,9 @@ inline uint16_t *artmagic_state::address_to_vram(offs_t *address) offs_t original = *address; *address = (original & 0x001fffff) >> 4; if (original < 0x001fffff) - return m_vram0; + return m_vram[0]; else if (original >= 0x00400000 && original < 0x005fffff) - return m_vram1; + return m_vram[1]; return nullptr; } @@ -42,9 +42,6 @@ inline uint16_t *artmagic_state::address_to_vram(offs_t *address) void artmagic_state::video_start() { - m_blitter_base = (uint16_t *)memregion("gfx1")->base(); - m_blitter_mask = memregion("gfx1")->bytes()/2 - 1; - save_item(NAME(m_xor)); save_item(NAME(m_is_stoneball)); save_item(NAME(m_blitter_data)); @@ -84,7 +81,7 @@ TMS340X0_FROM_SHIFTREG_CB_MEMBER(artmagic_state::from_shiftreg) void artmagic_state::execute_blit() { - uint16_t *dest = m_blitter_page ? m_vram0 : m_vram1; + uint16_t *dest = m_vram[m_blitter_page ^ 1]; int offset = ((m_blitter_data[1] & 0xff) << 16) | m_blitter_data[0]; int color = (m_blitter_data[1] >> 4) & 0xf0; int x = (int16_t)m_blitter_data[2]; @@ -222,7 +219,7 @@ void artmagic_state::execute_blit() } else /* following lines */ { - int val = m_blitter_base[offset & m_blitter_mask]; + int val = m_blitter_base[offset & m_blitter_base.mask()]; /* ultennis, stonebal */ last ^= 4; @@ -237,7 +234,7 @@ void artmagic_state::execute_blit() for (j = 0; j < w; j += 4) { - uint16_t val = m_blitter_base[(offset + j/4) & m_blitter_mask]; + uint16_t val = m_blitter_base[(offset + j/4) & m_blitter_base.mask()]; if (sx < 508) { if (h == 1 && m_is_stoneball) @@ -297,7 +294,7 @@ void artmagic_state::execute_blit() } -READ16_MEMBER(artmagic_state::artmagic_blitter_r) +READ16_MEMBER(artmagic_state::blitter_r) { /* bit 1 is a busy flag; loops tightly if clear @@ -313,7 +310,7 @@ READ16_MEMBER(artmagic_state::artmagic_blitter_r) } -WRITE16_MEMBER(artmagic_state::artmagic_blitter_w) +WRITE16_MEMBER(artmagic_state::blitter_w) { COMBINE_DATA(&m_blitter_data[offset]); |