From d5d248147807cd0fc04904c00193966247de2347 Mon Sep 17 00:00:00 2001 From: cam900 Date: Sat, 2 Nov 2024 22:43:20 +0900 Subject: [PATCH] namco/namcos22.cpp: Move C71 internal ROM and device defines into namco_dsp.cpp, Cleanups: (#12924) - Make some variables constant - Fix typename value for some bools - use BIT helper for bitfields - Reduce literal tag usages - Suppress side effects for debugger reads - Simplify gfx decode layouts - Fix some notes --- .../namco/{namco_c67.cpp => namco_dsp.cpp} | 28 +- src/mame/namco/{namco_c67.h => namco_dsp.h} | 17 +- src/mame/namco/namcos21_c67.cpp | 2 +- src/mame/namco/namcos21_dsp_c67.h | 2 +- src/mame/namco/namcos22.cpp | 393 +++--------------- src/mame/namco/namcos22.h | 6 +- src/mame/namco/namcos22_v.cpp | 384 ++++++++--------- 7 files changed, 296 insertions(+), 536 deletions(-) rename src/mame/namco/{namco_c67.cpp => namco_dsp.cpp} (52%) rename src/mame/namco/{namco_c67.h => namco_dsp.h} (51%) diff --git a/src/mame/namco/namco_c67.cpp b/src/mame/namco/namco_dsp.cpp similarity index 52% rename from src/mame/namco/namco_c67.cpp rename to src/mame/namco/namco_dsp.cpp index 509fd21dc00..f71ea75f8cc 100644 --- a/src/mame/namco/namco_c67.cpp +++ b/src/mame/namco/namco_dsp.cpp @@ -2,18 +2,22 @@ // copyright-holders:David Haywood /****************************************************************************** - This is simply a TMS320C25 with internal ROM and Namco code '67' + This is simply a TMS320C25 with internal ROM and Namco code '67', '71' - used by Namco System 21 for both the master and slave DSPs (configuration - is decided based on a port read) + C67 was used by Namco System 21 for both the master and slave DSPs + (configuration is decided based on a port read) + + C71 was used by Namco System (Super) 22 for both master and slave DSPs ******************************************************************************/ #include "emu.h" -#include "namco_c67.h" +#include "namco_dsp.h" DEFINE_DEVICE_TYPE(NAMCO_C67, namco_c67_device, "namcoc67", "Namco C67 (TMS320C25)") +DEFINE_DEVICE_TYPE(NAMCO_C71, namco_c71_device, "namcoc71", "Namco C71 (TMS320C25)") + namco_c67_device::namco_c67_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : tms32025_device(mconfig, NAMCO_C67, tag, owner, clock) @@ -21,12 +25,28 @@ namco_c67_device::namco_c67_device(const machine_config &mconfig, const char *ta set_mp_mc(false); } +namco_c71_device::namco_c71_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : + tms32025_device(mconfig, NAMCO_C71, tag, owner, clock) +{ + set_mp_mc(false); +} + ROM_START( c67 ) ROM_REGION16_BE( 0x2000, "internal", 0 ) ROM_LOAD( "c67.bin", 0, 0x2000, CRC(6bd8988e) SHA1(c9ec18d5f88d53976b94444eedc64d5568155958) ) ROM_END +ROM_START( c71 ) + ROM_REGION16_BE( 0x2000, "internal", 0 ) + ROM_LOAD( "c71.bin", 0,0x2000, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) +ROM_END + const tiny_rom_entry *namco_c67_device::device_rom_region() const { return ROM_NAME(c67); } + +const tiny_rom_entry *namco_c71_device::device_rom_region() const +{ + return ROM_NAME(c71); +} diff --git a/src/mame/namco/namco_c67.h b/src/mame/namco/namco_dsp.h similarity index 51% rename from src/mame/namco/namco_c67.h rename to src/mame/namco/namco_dsp.h index d89789fa784..2129639c9f2 100644 --- a/src/mame/namco/namco_c67.h +++ b/src/mame/namco/namco_dsp.h @@ -1,7 +1,7 @@ // license:BSD-3-Clause // copyright-holders:David Haywood -#ifndef MAME_NAMCO_NAMCO_C67_H -#define MAME_NAMCO_NAMCO_C67_H +#ifndef MAME_NAMCO_NAMCO_DSP_H +#define MAME_NAMCO_NAMCO_DSP_H #pragma once @@ -18,8 +18,19 @@ protected: }; +class namco_c71_device : public tms32025_device +{ +public: + namco_c71_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + +protected: + virtual const tiny_rom_entry *device_rom_region() const override ATTR_COLD; + +}; + DECLARE_DEVICE_TYPE(NAMCO_C67, namco_c67_device) +DECLARE_DEVICE_TYPE(NAMCO_C71, namco_c71_device) -#endif // MAME_NAMCO_NAMCO_C67_H +#endif // MAME_NAMCO_NAMCO_DSP_H diff --git a/src/mame/namco/namcos21_c67.cpp b/src/mame/namco/namcos21_c67.cpp index 2bf73329107..927cb1fef69 100644 --- a/src/mame/namco/namcos21_c67.cpp +++ b/src/mame/namco/namcos21_c67.cpp @@ -263,7 +263,7 @@ Namco System 21 Video Hardware #include "namco_c139.h" #include "namco_c148.h" #include "namco68.h" -#include "namco_c67.h" +#include "namco_dsp.h" #include "namcos21_dsp_c67.h" #include "namco_c355spr.h" #include "namcos21_3d.h" diff --git a/src/mame/namco/namcos21_dsp_c67.h b/src/mame/namco/namcos21_dsp_c67.h index 95ac4c5ebb6..b52a78c0560 100644 --- a/src/mame/namco/namcos21_dsp_c67.h +++ b/src/mame/namco/namcos21_dsp_c67.h @@ -5,7 +5,7 @@ #pragma once -#include "namco_c67.h" +#include "namco_dsp.h" #include "namcos21_3d.h" #include diff --git a/src/mame/namco/namcos22.cpp b/src/mame/namco/namcos22.cpp index 93415deb180..0d88e8e50b4 100644 --- a/src/mame/namco/namcos22.cpp +++ b/src/mame/namco/namcos22.cpp @@ -1091,6 +1091,8 @@ Notes: #include "emu.h" #include "namcos22.h" +#include "namco_dsp.h" + #include "cpu/m68000/m68020.h" #include "cpu/tms32025/tms32025.h" #include "speaker.h" @@ -1166,15 +1168,15 @@ void namcos22_state::namcos22_sci_w(offs_t offset, u16 data) void namcos22_state::syscon_irqlevel(offs_t offset, u8 data) { - int line = 1 << offset; - int oldlevel = m_syscontrol[offset] & 7; - int newlevel = data & 7; + const int line = 1 << offset; + const int oldlevel = m_syscontrol[offset] & 7; + const int newlevel = data & 7; m_irq_enabled &= ~line; if (m_is_ss22) m_irq_enabled |= (newlevel != 0) ? line : 0; else - m_irq_enabled |= (data & 0x10) ? line : 0; // always sets 0x30 to enable + m_irq_enabled |= (BIT(data, 4)) ? line : 0; // always sets 0x30 to enable // change active state if (m_irq_state & line) @@ -1193,8 +1195,8 @@ void namcos22_state::syscon_irqlevel(offs_t offset, u8 data) void namcos22_state::syscon_irqack(offs_t offset, u8 data) { - int line = 1 << offset; - int level = m_syscontrol[offset] & 7; + const int line = 1 << offset; + const int level = m_syscontrol[offset] & 7; m_irq_state &= ~line; m_maincpu->set_input_line(level, CLEAR_LINE); @@ -1335,7 +1337,7 @@ void namcos22_state::ss22_syscon_w(offs_t offset, u8 data) INTERRUPT_GEN_MEMBER(namcos22s_state::namcos22s_interrupt) { // vblank irq - int line = 1 << 0; + const int line = 1 << 0; if (m_irq_enabled & line) { m_irq_state |= line; @@ -1490,7 +1492,7 @@ INTERRUPT_GEN_MEMBER(namcos22_state::namcos22_interrupt) } // vblank irq - int line = 1 << 4; + const int line = 1 << 4; if (m_irq_enabled & line) { m_irq_state |= line; @@ -1587,7 +1589,7 @@ u16 namcos22_state::namcos22_keycus_r(offs_t offset) return 0; // pick a random number, but don't pick the same twice in a row - u16 old_rng = m_keycus_rng; + const u16 old_rng = m_keycus_rng; do { m_keycus_rng = machine().rand() & 0xffff; @@ -1610,7 +1612,7 @@ void namcos22_state::namcos22_keycus_w(offs_t offset, u16 data, u16 mem_mask) */ u16 namcos22_state::namcos22_portbit_r(offs_t offset) { - u16 ret = m_portbits[offset] & 1; + const u16 ret = m_portbits[offset] & 1; if (!machine().side_effects_disabled()) m_portbits[offset] = m_portbits[offset] >> 1 | 0x8000; @@ -1801,7 +1803,7 @@ void namcos22_state::namcos22_am(address_map &map) * Known chip type: TC55328P-25, N341256P-15 * Notes: connected bits = 0x00ffffff (24bit) */ - map(0x70000000, 0x7001ffff).rw(FUNC(namcos22_state::namcos22_dspram_r), FUNC(namcos22_state::namcos22_dspram_w)).share("polygonram"); + map(0x70000000, 0x7001ffff).rw(FUNC(namcos22_state::namcos22_dspram_r), FUNC(namcos22_state::namcos22_dspram_w)).share(m_polygonram); /** * LED on PCB(?) @@ -1813,20 +1815,20 @@ void namcos22_state::namcos22_am(address_map &map) * Mounted position: VIDEO 8P * Known chip type: TC55328P-25 */ - map(0x90010000, 0x90017fff).ram().share("czram"); + map(0x90010000, 0x90017fff).ram().share(m_czram); /** * C305 (Display Controller) * Mounted position: VIDEO 7D (C305) * Notes: Boot time check: 0x90020100 - 0x9002027f */ - map(0x90020000, 0x90027fff).ram().share("video_mixer"); + map(0x90020000, 0x90027fff).ram().share(m_mixer); /** * Mounted position: VIDEO 6B, 7B, 8B (near C305) * Note: 0xff00-0xffff are for Tilemap (16 x 16) */ - map(0x90028000, 0x9003ffff).ram().w(FUNC(namcos22_state::namcos22_paletteram_w)).share("paletteram"); + map(0x90028000, 0x9003ffff).ram().w(FUNC(namcos22_state::namcos22_paletteram_w)).share(m_paletteram); /** * unknown (option) @@ -1837,7 +1839,7 @@ void namcos22_state::namcos22_am(address_map &map) /** * Tilemap PCG Memory */ - map(0x90080000, 0x9009ffff).ram().w(FUNC(namcos22_state::namcos22_cgram_w)).share("cgram"); + map(0x90080000, 0x9009ffff).ram().w(FUNC(namcos22_state::namcos22_cgram_w)).share(m_cgram); /** * Tilemap Memory (64 x 64) @@ -1845,7 +1847,7 @@ void namcos22_state::namcos22_am(address_map &map) * Known chip type: HM511664 (64k x 16bit SRAM) * Note: Self test: 90084000 - 9009ffff */ - map(0x9009e000, 0x9009ffff).ram().w(FUNC(namcos22_state::namcos22_textram_w)).share("textram"); + map(0x9009e000, 0x9009ffff).ram().w(FUNC(namcos22_state::namcos22_textram_w)).share(m_textram); /** * Tilemap Register @@ -1872,17 +1874,17 @@ void namcos22s_state::namcos22s_am(address_map &map) map(0x810000, 0x81000f).rw(FUNC(namcos22s_state::namcos22s_czattr_r), FUNC(namcos22s_state::namcos22s_czattr_w)); map(0x810200, 0x8103ff).rw(FUNC(namcos22s_state::namcos22s_czram_r), FUNC(namcos22s_state::namcos22s_czram_w)); map(0x820000, 0x8202ff).nopw(); // leftover of old (non-super) video mixer device - map(0x824000, 0x8243ff).ram().share("video_mixer"); - map(0x828000, 0x83ffff).ram().w(FUNC(namcos22s_state::namcos22_paletteram_w)).share("paletteram"); + map(0x824000, 0x8243ff).ram().share(m_mixer); + map(0x828000, 0x83ffff).ram().w(FUNC(namcos22s_state::namcos22_paletteram_w)).share(m_paletteram); map(0x860000, 0x860007).rw(FUNC(namcos22s_state::spotram_r), FUNC(namcos22s_state::spotram_w)); - map(0x880000, 0x89ffff).ram().w(FUNC(namcos22s_state::namcos22_cgram_w)).share("cgram"); - map(0x89e000, 0x89ffff).ram().w(FUNC(namcos22s_state::namcos22_textram_w)).share("textram"); + map(0x880000, 0x89ffff).ram().w(FUNC(namcos22s_state::namcos22_cgram_w)).share(m_cgram); + map(0x89e000, 0x89ffff).ram().w(FUNC(namcos22s_state::namcos22_textram_w)).share(m_textram); map(0x8a0000, 0x8a000f).rw(FUNC(namcos22s_state::namcos22_tilemapattr_r), FUNC(namcos22s_state::namcos22_tilemapattr_w)); - map(0x900000, 0x90ffff).ram().share("vics_data"); - map(0x940000, 0x94007f).rw(FUNC(namcos22s_state::namcos22s_vics_control_r), FUNC(namcos22s_state::namcos22s_vics_control_w)).share("vics_control"); - map(0x980000, 0x9affff).ram().share("spriteram"); // C374 + map(0x900000, 0x90ffff).ram().share(m_vics_data); + map(0x940000, 0x94007f).rw(FUNC(namcos22s_state::namcos22s_vics_control_r), FUNC(namcos22s_state::namcos22s_vics_control_w)).share(m_vics_control); + map(0x980000, 0x9affff).ram().share(m_spriteram); // C374 map(0xa04000, 0xa0bfff).rw(FUNC(namcos22s_state::namcos22_shared_r), FUNC(namcos22s_state::namcos22_shared_w)); // COM RAM - map(0xc00000, 0xc1ffff).rw(FUNC(namcos22s_state::namcos22_dspram_r), FUNC(namcos22s_state::namcos22_dspram_w)).share("polygonram"); + map(0xc00000, 0xc1ffff).rw(FUNC(namcos22s_state::namcos22_dspram_r), FUNC(namcos22s_state::namcos22_dspram_w)).share(m_polygonram); map(0xe00000, 0xe3ffff).ram(); // workram } @@ -1935,7 +1937,7 @@ void alpines_state::rombank_w(u32 data) void alpines_state::alpines_am(address_map &map) { namcos22s_am(map); - map(0x200000, 0x3fffff).bankr("rombank"); + map(0x200000, 0x3fffff).bankr(m_rombank); map(0x300000, 0x300003).w(FUNC(alpines_state::rombank_w)); } @@ -1987,7 +1989,7 @@ u16 namcos22_state::namcos22_dspram16_r(offs_t offset) void namcos22_state::namcos22_dspram16_w(offs_t offset, u16 data, u16 mem_mask) { - u32 value = m_polygonram[offset]; + const u32 value = m_polygonram[offset]; u16 lo = value & 0xffff; u16 hi = value >> 16; @@ -2078,7 +2080,11 @@ u16 namcos22_state::point_loword_r() u16 namcos22_state::point_hiword_ir() { // high bit is unknown busy signal (ridgerac, ridgera2, raverace, cybrcomm) - return 0x8000 | (point_read(m_point_address++) >> 16 & 0x00ff); + const u16 ret = 0x8000 | ((point_read(m_point_address) >> 16) & 0x00ff); + if (!machine().side_effects_disabled()) + m_point_address++; + + return ret; } @@ -2117,8 +2123,8 @@ void namcos22_state::pdp_handle_commands(u16 offs) for (;;) { offs &= 0x7fff; - u16 start = offs; - u16 cmd = pdp_polygonram_read(offs++); + const u16 start = offs; + const u16 cmd = pdp_polygonram_read(offs++); u32 srcAddr; u32 dstAddr; u16 numWords; @@ -2438,14 +2444,13 @@ void namcos22_state::master_render_device_w(u16 data) void namcos22_state::master_dsp_program(address_map &map) { - map(0x0000, 0x0fff).rom(); /* internal ROM (4k words) */ - map(0x4000, 0x7fff).ram().share("masterextram").nopw(); + map(0x4000, 0x7fff).ram().share(m_master_extram).nopw(); } void namcos22_state::master_dsp_data(address_map &map) { map(0x1000, 0x3fff).ram(); - map(0x4000, 0x7fff).ram().share("masterextram"); + map(0x4000, 0x7fff).ram().share(m_master_extram); map(0x8000, 0xffff).rw(FUNC(namcos22_state::namcos22_dspram16_r), FUNC(namcos22_state::namcos22_dspram16_w)); } @@ -2527,13 +2532,12 @@ void namcos22_state::dsp_slave_portb_w(u16 data) void namcos22_state::slave_dsp_program(address_map &map) { - map(0x0000, 0x0fff).rom(); /* internal ROM */ - map(0x8000, 0x9fff).ram().share("slaveextram").nopw(); + map(0x8000, 0x9fff).ram().share(m_slave_extram).nopw(); } void namcos22_state::slave_dsp_data(address_map &map) { - map(0x8000, 0x9fff).ram().share("slaveextram"); + map(0x8000, 0x9fff).ram().share(m_slave_extram); } void namcos22_state::slave_dsp_io(address_map &map) @@ -2599,7 +2603,7 @@ u8 namcos22_state::iomcu_port4_s22_r() void namcos22_state::mcu_s22_program(address_map &map) { map(0x002000, 0x002fff).rw("c352", FUNC(c352_device::read), FUNC(c352_device::write)); - map(0x004000, 0x00bfff).ram().share("shareram"); + map(0x004000, 0x00bfff).ram().share(m_shareram); map(0x200000, 0x27ffff).rom().region("mcu", 0); } @@ -2613,7 +2617,7 @@ void namcos22_state::iomcu_s22_program(address_map &map) TIMER_DEVICE_CALLBACK_MEMBER(namcos22s_state::mcu_irq) { - int scanline = param; + const int scanline = param; /* TODO: real sources of these */ if (scanline == 480) @@ -2696,7 +2700,7 @@ void namcos22s_state::mcu_port4_w(u8 data) for (int i = 0; i < 8; i++) m_mcu_out[i] = BIT(m_mcu_outdata, i); - machine().bookkeeping().coin_counter_w(0, m_mcu_outdata & 1); + machine().bookkeeping().coin_counter_w(0, BIT(m_mcu_outdata, 0)); } if (~m_mcu_iocontrol & data & 0x40) { @@ -2720,7 +2724,7 @@ void namcos22s_state::mcu_port5_w(u8 data) u8 namcos22s_state::mcu_port5_r() { u16 inputs = m_inputs->read(); - return (m_mcu_iocontrol & 8) ? inputs & 0xff : inputs >> 8; + return BIT(m_mcu_iocontrol, 3) ? (inputs & 0xff) : (inputs >> 8); } void namcos22s_state::mcu_port6_w(u8 data) @@ -2743,12 +2747,12 @@ u16 namcos22s_state::mcu_adc_r() void namcos22s_state::mcu_program(address_map &map) { map(0x002000, 0x002fff).rw("c352", FUNC(c352_device::read), FUNC(c352_device::write)); - map(0x004000, 0x00bfff).ram().share("shareram"); + map(0x004000, 0x00bfff).ram().share(m_shareram); map(0x00c000, 0x00ffff).rom().region("mcu", 0xc000); map(0x200000, 0x27ffff).rom().region("mcu", 0); map(0x300000, 0x300001).nopr(); // ? (cybrcycc, alpines - writes data to RAM, but then never reads from there) map(0x301000, 0x301001).nopw(); // watchdog? LEDs? - map(0x308000, 0x308003).w("mb87078", FUNC(mb87078_device::data_w)).umask16(0x00ff); + map(0x308000, 0x308003).w(m_mb87078, FUNC(mb87078_device::data_w)).umask16(0x00ff); } @@ -2759,12 +2763,12 @@ void namcos22s_state::mcu_program(address_map &map) /* TODO: REMOVE (THIS IS HANDLED BY "IOMCU") */ void namcos22_state::handle_coinage(u16 flags) { - int coin_state = (flags & 0x1000) >> 12 | (flags & 0x0200) >> 8; + const int coin_state = (flags & 0x1000) >> 12 | (flags & 0x0200) >> 8; - if (!(coin_state & 1) && (m_old_coin_state & 1)) + if (BIT(~coin_state, 0) && BIT(m_old_coin_state, 0)) m_credits1++; - if (!(coin_state & 2) && (m_old_coin_state & 2)) + if (BIT(~coin_state, 1) && BIT(m_old_coin_state, 1)) m_credits2++; m_old_coin_state = coin_state; @@ -2776,7 +2780,7 @@ void namcos22_state::handle_driving_io() { if (m_syscontrol[0x18] != 0) { - u16 flags = m_inputs->read(); + const u16 flags = m_inputs->read(); u16 steer = m_adc_ports[0]->read(); u16 gas = m_adc_ports[1]->read(); u16 brake = m_adc_ports[2]->read(); @@ -2820,7 +2824,7 @@ void namcos22_state::handle_cybrcomm_io() { if (m_syscontrol[0x18] != 0) { - u16 flags = m_inputs->read(); + const u16 flags = m_inputs->read(); m_shareram[0x030/2] = flags; m_shareram[0x032/2] = m_adc_ports[0]->read() * 0x10; m_shareram[0x034/2] = m_adc_ports[1]->read() * 0x10; @@ -2852,7 +2856,7 @@ void alpine_state::alpine_mcu_port4_w(u8 data) m_motor_timer->adjust(attotime::from_msec(500), 1); } } - else if (m_mcu_outdata & 4) + else if (BIT(m_mcu_outdata, 2)) { if (m_motor_status == 1) { @@ -2878,7 +2882,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(propcycl_state::pedal_interrupt) TIMER_DEVICE_CALLBACK_MEMBER(propcycl_state::pedal_update) { // arbitrary timer for reading optical pedal - int pedal = m_opt[0]->read() - 0x80; + const int pedal = m_opt[0]->read() - 0x80; if (pedal != 0) { @@ -3575,44 +3579,9 @@ INPUT_PORTS_END * Sprites are rendered as part of the polygon draw list, based on a per-sprite Z attribute. * Each sprite has explicit placement/color/zoom controls. */ -static const gfx_layout sprite_layout = -{ - 32,32, - RGN_FRAC(1,1), - 8, - { 0,1,2,3,4,5,6,7 }, - { - 0*8,1*8,2*8,3*8,4*8,5*8,6*8,7*8, - 8*8,9*8,10*8,11*8,12*8,13*8,14*8,15*8, - 16*8,17*8,18*8,19*8,20*8,21*8,22*8,23*8, - 24*8,25*8,26*8,27*8,28*8,29*8,30*8,31*8 - }, - { - 0*32*8,1*32*8,2*32*8,3*32*8,4*32*8,5*32*8,6*32*8,7*32*8, - 8*32*8,9*32*8,10*32*8,11*32*8,12*32*8,13*32*8,14*32*8,15*32*8, - 16*32*8,17*32*8,18*32*8,19*32*8,20*32*8,21*32*8,22*32*8,23*32*8, - 24*32*8,25*32*8,26*32*8,27*32*8,28*32*8,29*32*8,30*32*8,31*32*8 - }, - 32*32*8 -}; +static GFXLAYOUT_RAW(sprite_layout, 32, 32, 32*8, 32*32*8) -static const gfx_layout texture_tile_layout = -{ - 16,16, - RGN_FRAC(1,1), - 8, - { 0,1,2,3,4,5,6,7 }, - { - 0*8,1*8,2*8,3*8,4*8,5*8,6*8,7*8,8*8,9*8,10*8,11*8,12*8,13*8,14*8,15*8 - }, - { - 0*16*8,1*16*8,2*16*8,3*16*8,4*16*8,5*16*8,6*16*8,7*16*8, - 8*16*8,9*16*8,10*16*8,11*16*8,12*16*8,13*16*8,14*16*8,15*16*8 - }, - 16*16*8 -}; - -/* text layer uses a set of 16x16x8bpp tiles defined in RAM */ +/* text layer uses a set of 16x16x4bpp tiles defined in RAM */ #define XOR(a) WORD2_XOR_BE(a) static const gfx_layout namcos22_cg_layout = { @@ -3629,14 +3598,14 @@ static const gfx_layout namcos22_cg_layout = #undef XOR static GFXDECODE_START( gfx_namcos22 ) - GFXDECODE_ENTRY( nullptr, 0, namcos22_cg_layout, 0, 0x800 ) - GFXDECODE_ENTRY( "textile", 0, texture_tile_layout, 0, 0x80 ) + GFXDECODE_ENTRY( nullptr, 0, namcos22_cg_layout, 0, 0x800 ) + GFXDECODE_ENTRY( "textile", 0, gfx_16x16x8_raw, 0, 0x80 ) GFXDECODE_END static GFXDECODE_START( gfx_super ) - GFXDECODE_ENTRY( nullptr, 0, namcos22_cg_layout, 0, 0x800 ) - GFXDECODE_ENTRY( "textile", 0, texture_tile_layout, 0, 0x80 ) - GFXDECODE_ENTRY( "sprite", 0, sprite_layout, 0, 0x80 ) + GFXDECODE_ENTRY( nullptr, 0, namcos22_cg_layout, 0, 0x800 ) + GFXDECODE_ENTRY( "textile", 0, gfx_16x16x8_raw, 0, 0x80 ) + GFXDECODE_ENTRY( "sprite", 0, sprite_layout, 0, 0x80 ) GFXDECODE_END @@ -3780,7 +3749,7 @@ void namcos22_state::namcos22(machine_config &config) m_maincpu->set_addrmap(AS_PROGRAM, &namcos22_state::namcos22_am); m_maincpu->set_vblank_int("screen", FUNC(namcos22_state::namcos22_interrupt)); - tms32025_device& master(TMS32025(config, m_master, 40_MHz_XTAL)); + namco_c71_device& master(NAMCO_C71(config, m_master, 40_MHz_XTAL)); master.set_addrmap(AS_PROGRAM, &namcos22_state::master_dsp_program); master.set_addrmap(AS_DATA, &namcos22_state::master_dsp_data); master.set_addrmap(AS_IO, &namcos22_state::master_dsp_io); @@ -3792,7 +3761,7 @@ void namcos22_state::namcos22(machine_config &config) master.set_vblank_int("screen", FUNC(namcos22_state::dsp_vblank_irq)); TIMER(config, "dsp_serial").configure_periodic(FUNC(namcos22_state::dsp_serial_pulse), attotime::from_hz(SERIAL_IO_PERIOD)); - tms32025_device& slave(TMS32025(config, m_slave, 40_MHz_XTAL)); + namco_c71_device& slave(NAMCO_C71(config, m_slave, 40_MHz_XTAL)); slave.set_addrmap(AS_PROGRAM, &namcos22_state::slave_dsp_program); slave.set_addrmap(AS_DATA, &namcos22_state::slave_dsp_data); slave.set_addrmap(AS_IO, &namcos22_state::slave_dsp_io); @@ -3964,12 +3933,6 @@ ROM_START( ridgerac ) ROM_LOAD32_BYTE( "rr2_prgumb.8d", 0x00001, 0x80000, CRC(64c3aff1) SHA1(46b30ee0601a0a7887d29bc94d595f50a5a812d6) ) ROM_LOAD32_BYTE( "rr2_prguub.6d", 0x00000, 0x80000, CRC(e6ff0b8d) SHA1(a02ffd2d3dc0a2c4a5665303c8021fd99a50eb8e) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x80000, "mcu", 0 ) /* sound data */ ROM_LOAD( "rr1data.6r", 0, 0x080000, CRC(18f5f748) SHA1(e0d149a66de36156edd9b55f604c9a9801aaefa8) ) @@ -4010,12 +3973,6 @@ ROM_START( ridgeraca ) ROM_LOAD32_BYTE( "rr2_prgum.8d", 0x00001, 0x80000, CRC(705ef78a) SHA1(881903413e66d6fd83d46eb18c4e1230531832ae) ) ROM_LOAD32_BYTE( "rr2_prguu.6d", 0x00000, 0x80000, CRC(a79e456f) SHA1(049c596e01e53e3a401c5c4260517f170688d387) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x80000, "mcu", 0 ) /* sound data */ ROM_LOAD( "rr1data.6r", 0, 0x080000, CRC(18f5f748) SHA1(e0d149a66de36156edd9b55f604c9a9801aaefa8) ) @@ -4056,12 +4013,6 @@ ROM_START( ridgeracb ) ROM_LOAD32_BYTE( "rr3_prgumb.8d", 0x00001, 0x80000, CRC(e160f63f) SHA1(9b4b7a13eb4bc19fcb53daedb87e4945c20a1b8e) ) ROM_LOAD32_BYTE( "rr3_prguub.6d", 0x00000, 0x80000, CRC(f07c78c0) SHA1(dbed76d868b761711faf5b6e11f2c9affb91db5d) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x80000, "mcu", 0 ) /* sound data */ ROM_LOAD( "rr1data.6r", 0, 0x080000, CRC(18f5f748) SHA1(e0d149a66de36156edd9b55f604c9a9801aaefa8) ) @@ -4109,12 +4060,6 @@ ROM_START( ridgeracc ) ROM_LOAD32_BYTE( "rr3_prgum-3s.8d", 0x000001, 0x080000, CRC(8fda06ac) SHA1(7e9adba198eb0941100cda64ecedac504f6ac696) ) ROM_LOAD32_BYTE( "rr3_prguu-3s.6d", 0x000000, 0x080000, CRC(868398df) SHA1(422e0f9884904b0df93fcacd1468b8da0458eb8e) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x80000, "mcu", 0 ) /* sound data */ ROM_LOAD( "rr1data.6r", 0, 0x080000, CRC(18f5f748) SHA1(e0d149a66de36156edd9b55f604c9a9801aaefa8) ) @@ -4155,12 +4100,6 @@ ROM_START( ridgeracj ) ROM_LOAD32_BYTE( "rr1_prgum.8d", 0x00001, 0x80000, CRC(705ef78a) SHA1(881903413e66d6fd83d46eb18c4e1230531832ae) ) ROM_LOAD32_BYTE( "rr1_prguu.6d", 0x00000, 0x80000, CRC(c1371f96) SHA1(a78e0bf6c147c034487a85efa0a8470f4e8f4bf0) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x80000, "mcu", 0 ) /* sound data */ ROM_LOAD( "rr1data.6r", 0, 0x080000, CRC(18f5f748) SHA1(e0d149a66de36156edd9b55f604c9a9801aaefa8) ) @@ -4201,12 +4140,6 @@ ROM_START( ridgeracf ) ROM_LOAD32_BYTE( "rrf2_prgum.8d", 0x00001, 0x80000, CRC(d7e0aa16) SHA1(cab4578cdd3af84b865114be4105cfdc2e7abf36) ) ROM_LOAD32_BYTE( "rrf2_prguu.6d", 0x00000, 0x80000, CRC(12c808bb) SHA1(64e84686d4ceb8145b9a59b75d0dced830884c9d) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x80000, "mcu", 0 ) /* sound data */ ROM_LOAD( "rrf1data.6r", 0, 0x080000, CRC(ce3c6ed6) SHA1(23e033364bc967c10c49fd1d5413dda837670633) ) @@ -4249,12 +4182,6 @@ ROM_START( ridgera2 ) ROM_LOAD32_BYTE( "rrs2_prgum.8d", 0x00001, 0x80000, CRC(78c360b6) SHA1(8ee502291359cbc8aef39145c8fe7538311cc58f) ) // The "World" set's ROMs are NOT marked as Rev.B even though ROM_LOAD32_BYTE( "rrs2_prguu.6d", 0x00000, 0x80000, CRC(60d6d4a4) SHA1(759762a9b7d7aee7ee1b44b1721e5356898aa7ea) ) // they are clearly based off of the Japanese Rev.B ROM set. - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x80000, "mcu", 0 ) /* sound data */ ROM_LOAD( "rrs1data.6r", 0, 0x080000, CRC(b7063aa8) SHA1(08ff689e8dd529b91eee423c93f084945c6de417) ) @@ -4295,12 +4222,6 @@ ROM_START( ridgera2j ) ROM_LOAD32_BYTE( "rrs1_prgumb.8d", 0x00001, 0x80000, CRC(78c360b6) SHA1(8ee502291359cbc8aef39145c8fe7538311cc58f) ) ROM_LOAD32_BYTE( "rrs1_prguub.6d", 0x00000, 0x80000, CRC(60d6d4a4) SHA1(759762a9b7d7aee7ee1b44b1721e5356898aa7ea) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x80000, "mcu", 0 ) /* sound data */ ROM_LOAD( "rrs1data.6r", 0, 0x080000, CRC(b7063aa8) SHA1(08ff689e8dd529b91eee423c93f084945c6de417) ) @@ -4341,12 +4262,6 @@ ROM_START( ridgera2ja ) ROM_LOAD32_BYTE( "rrs1_prgum.8d", 0x00001, 0x80000, CRC(93259fb0) SHA1(c29787e873797a003db27adbd20d7b852e26d8c6) ) ROM_LOAD32_BYTE( "rrs1_prguu.6d", 0x00000, 0x80000, CRC(31cdefe8) SHA1(ae836d389bed43dd156eb4cf3e97b6f1ad68181e) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x80000, "mcu", 0 ) /* sound data */ ROM_LOAD( "rrs1data.6r", 0, 0x080000, CRC(b7063aa8) SHA1(08ff689e8dd529b91eee423c93f084945c6de417) ) @@ -4387,12 +4302,6 @@ ROM_START( ridgera28 ) ROM_LOAD32_BYTE( "rrs_8_prgum.8d", 0x00001, 0x80000, CRC(720c854d) SHA1(9c8e2868dd7ef425fdc6f701968b9713bb12b56c) ) // Has extra PCG TEST in service menu ROM_LOAD32_BYTE( "rrs_8_prguu.6d", 0x00000, 0x80000, CRC(fb4b7e8f) SHA1(1919803dbe35a88bbb6b608d0c3ab8daea31f580) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x80000, "mcu", 0 ) /* sound data */ ROM_LOAD( "rrs_8_data.6r", 0, 0x080000, CRC(8bf75a96) SHA1(987d24f2195eb5a84c10c68584404556ef1dfe88) ) // this DATA rom unique to this set @@ -4434,12 +4343,6 @@ ROM_START( raverace ) ROM_LOAD32_BYTE( "rv2_prgumb.8d", 0x00001, 0x80000, CRC(6414a800) SHA1(c278ff644909d12a43ba6fc2bf8d2092e469c3e6) ) ROM_LOAD32_BYTE( "rv2_prguub.6d", 0x00000, 0x80000, CRC(a9f18714) SHA1(8e7b17749d151f92020f68d1ac06003cf1f5c573) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x80000, "mcu", 0 ) /* sound data */ ROM_LOAD( "rv1data.6r", 0, 0x080000, CRC(d358ec20) SHA1(140c513349240417bb546dd2d151f3666b818e91) ) @@ -4493,12 +4396,6 @@ ROM_START( raveracej ) ROM_LOAD32_BYTE( "rv1_prgumb.8d", 0x00001, 0x80000, CRC(375fabcf) SHA1(448e3db3e3fab8c7c27e214ab5a5fa84e5f84366) ) ROM_LOAD32_BYTE( "rv1_prguub.6d", 0x00000, 0x80000, CRC(92f834d6) SHA1(028368790f0293fcfea5c7b12f7f315e27a62f77) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x80000, "mcu", 0 ) /* sound data */ ROM_LOAD( "rv1data.6r", 0, 0x080000, CRC(d358ec20) SHA1(140c513349240417bb546dd2d151f3666b818e91) ) @@ -4552,12 +4449,6 @@ ROM_START( raveraceja ) ROM_LOAD32_BYTE( "rv1_prgum.8d", 0x00001, 0x80000, CRC(28e503e3) SHA1(a3071461f840f28c65c660de215c73f812f356b3) ) ROM_LOAD32_BYTE( "rv1_prguu.6d", 0x00000, 0x80000, CRC(c47d9ff4) SHA1(4d7c4ac4151a3b306e7277937add8eee26e561a6) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x80000, "mcu", 0 ) /* sound data */ ROM_LOAD( "rv1data.6r", 0, 0x080000, CRC(d358ec20) SHA1(140c513349240417bb546dd2d151f3666b818e91) ) @@ -4612,12 +4503,6 @@ ROM_START( cybrcomm ) ROM_LOAD32_BYTE( "cy1prgum.8d", 0x00001, 0x80000, CRC(c9c4a921) SHA1(76a52461165a8bd8d984a34063fbeb4cb73624af) ) ROM_LOAD32_BYTE( "cy1prguu.6d", 0x00000, 0x80000, CRC(5f22975b) SHA1(a1a5cb66358d64a3c564b912f2eeafa182786b1e) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x80000, "mcu", 0 ) /* sound data */ ROM_LOAD( "cy1data.6r", 0x00000, 0x20000, CRC(10d0005b) SHA1(10508eeaf74d24a611b44cd3bb12417ceb78904f) ) ROM_RELOAD( 0x20000, 0x20000) @@ -4670,12 +4555,6 @@ ROM_START( acedrive ) ROM_LOAD32_BYTE( "ad2_prgum.8d", 0x00001, 0x80000, CRC(d5042d6e) SHA1(9ae93e7ea7126302831a879ba0aadcb6e5b842f5) ) ROM_LOAD32_BYTE( "ad2_prguu.6d", 0x00000, 0x80000, CRC(86d4661d) SHA1(2a1529a51ca5466994a2d0d84c7aab13cef95a11) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x80000, "mcu", 0 ) /* sound data */ ROM_LOAD( "ad1data.6r", 0, 0x080000, CRC(82024f74) SHA1(711ab0c4f027716aeab18e3a5d3d06fa82af8007) ) @@ -4717,12 +4596,6 @@ ROM_START( victlap ) ROM_LOAD32_BYTE( "adv2_prgumb.8d", 0x00001, 0x80000, CRC(ccad3e90) SHA1(16ccddf5114f1847808b0c5655aadd8ac040ff4e) ) ROM_LOAD32_BYTE( "adv2_prguub.6d", 0x00000, 0x80000, CRC(f3fffc41) SHA1(277cc5b24a094e4adff41d6d35ffc111bc8fef27) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x80000, "mcu", 0 ) /* sound data */ ROM_LOAD( "adv1data.6r", 0, 0x080000, CRC(10eecdb4) SHA1(aaedeed166614e6670e765e0d7e4e9eb5f38ad10) ) @@ -4770,12 +4643,6 @@ ROM_START( victlapa ) ROM_LOAD32_BYTE( "adv2_prgum.8d", 0x00001, 0x80000, CRC(af67f2fb) SHA1(f391843ee0d053e33660c60e3718871142d932f2) ) ROM_LOAD32_BYTE( "adv2_prguu.6d", 0x00000, 0x80000, CRC(b60e5d2b) SHA1(f5740615c2864c5c6433275cf4388bda5122b7a7) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x80000, "mcu", 0 ) /* sound data */ ROM_LOAD( "adv1data.6r", 0, 0x080000, CRC(10eecdb4) SHA1(aaedeed166614e6670e765e0d7e4e9eb5f38ad10) ) @@ -4823,12 +4690,6 @@ ROM_START( victlapj ) ROM_LOAD32_BYTE( "adv1_prgumc.8d", 0x00001, 0x80000, CRC(464388d9) SHA1(afad780532aff175b0a547392e80c9f01efbf9d9) ) ROM_LOAD32_BYTE( "adv1_prguuc.6d", 0x00000, 0x80000, CRC(ad3cb5f9) SHA1(9a62043f60de4d4c82c5bec169ec975add271367) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x80000, "mcu", 0 ) /* sound data */ ROM_LOAD( "adv1data.6r", 0, 0x080000, CRC(10eecdb4) SHA1(aaedeed166614e6670e765e0d7e4e9eb5f38ad10) ) @@ -4877,12 +4738,6 @@ ROM_START( propcycl ) ROM_LOAD32_BYTE( "pr2ver-a.3", 0x00001, 0x100000, CRC(74bf4b74) SHA1(02713aa07238cc9e30163ae24d12c034aa972ff3) ) ROM_LOAD32_BYTE( "pr2ver-a.4", 0x00000, 0x100000, CRC(cf4d5638) SHA1(2ddd00d6ec3b85c234820507650d201e176c94a2) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x080000, "mcu", 0 ) /* SS22-BIOS ver1.41 */ ROM_LOAD( "pr1data.8k", 0, 0x080000, CRC(2e5767a4) SHA1(390bf05c90044d841fe2dd4a427177fa1570b9a6) ) @@ -4938,12 +4793,6 @@ ROM_START( propcyclj ) ROM_LOAD32_BYTE( "pr1ver-a.3", 0x00001, 0x100000, CRC(77f957d2) SHA1(c8a62464f427cc858d9ea33446a8648e9171ead9) ) /* Fujitsu MBM29F080 flash ROMs at ROM3 & ROM4 on the upperside */ ROM_LOAD32_BYTE( "pr1ver-a.4", 0x00000, 0x100000, CRC(7b6844e4) SHA1(1b1c03d258c4a6d95ae227de7741f29b7d9e28d8) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x080000, "mcu", 0 ) /* SS22-BIOS ver1.41 */ ROM_LOAD( "pr1data.8k", 0, 0x080000, CRC(2e5767a4) SHA1(390bf05c90044d841fe2dd4a427177fa1570b9a6) ) @@ -4989,12 +4838,6 @@ ROM_START( airco22b ) ROM_LOAD32_BYTE( "acs1verb.3", 0x00001, 0x100000, CRC(71738e67) SHA1(eb8c66dedbeff911b6166ebbda466fb9656ef0fb) ) ROM_LOAD32_BYTE( "acs1verb.4", 0x00000, 0x100000, CRC(3b193add) SHA1(5e3bca13905bfa3a2947f4f16ca01878b0a14a3a) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x080000, "mcu", 0 ) /* S22-BIOS ver1.20 */ ROM_LOAD( "acs1data.8k", 0, 0x080000, CRC(33824bc9) SHA1(80ec63883770e5eec1f5f1ddc16a85ef8f22a48b) ) @@ -5043,12 +4886,6 @@ ROM_START( cybrcycc ) ROM_LOAD32_BYTE( "cb2ver-c.3", 0x00001, 0x100000, CRC(47e6306c) SHA1(39d6fc2c3cb9b4c9d3569cedb79b916a90537115) ) ROM_LOAD32_BYTE( "cb2ver-c.4", 0x00000, 0x100000, CRC(398426e4) SHA1(f20cd4892420e7b978baa51c9129b362422a3895) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x080000, "mcu", 0 ) /* S22-BIOS ver1.30 */ ROM_LOAD( "cb1datab.8k", 0, 0x080000, CRC(e2404221) SHA1(b88810dd45aee8a5475c30806cdfded25fa14e0e) ) @@ -5097,12 +4934,6 @@ ROM_START( cybrcyccj ) ROM_LOAD32_BYTE( "cb1ver-c.3", 0x00001, 0x100000, CRC(97fa2f39) SHA1(865e016553f733430aac70809b21a3b2914bb638) ) ROM_LOAD32_BYTE( "cb1ver-c.4", 0x00000, 0x100000, CRC(529bd227) SHA1(6d7979643d015ae388a4a93b9dccc7f43f93baff) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x080000, "mcu", 0 ) /* S22-BIOS ver1.30 */ ROM_LOAD( "cb1datab.8k", 0, 0x080000, CRC(e2404221) SHA1(b88810dd45aee8a5475c30806cdfded25fa14e0e) ) @@ -5152,12 +4983,6 @@ ROM_START( alpinerd ) ROM_LOAD32_BYTE( "ar2ver-d.3", 0x00001, 0x100000, CRC(9beffe6a) SHA1(d8efd1e3829d32bb06537d7cecb59f8df9b6d663) ) ROM_LOAD32_BYTE( "ar2ver-d.4", 0x00000, 0x100000, CRC(1f3f1134) SHA1(0afa78444d1463d214f1afd7ec500af76d567489) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x080000, "mcu", 0 ) /* S22-BIOS ver1.30 */ ROM_LOAD( "ar1datab.8k", 0, 0x080000, CRC(c26306f8) SHA1(6d8d993c076d5ced523143a86bd0938b3794478d) ) @@ -5207,12 +5032,6 @@ ROM_START( alpinerc ) ROM_LOAD32_BYTE( "ar2ver-c.3", 0x00001, 0x100000, CRC(acb3003b) SHA1(ea0cbf3a1607b06b108df051f38fec1f214f42d2) ) ROM_LOAD32_BYTE( "ar2ver-c.4", 0x00000, 0x100000, CRC(800acc21) SHA1(41d26766da2db46954a2351bbc50aea94bc1d564) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x080000, "mcu", 0 ) /* S22-BIOS ver1.30 */ ROM_LOAD( "ar1datab.8k", 0, 0x080000, CRC(c26306f8) SHA1(6d8d993c076d5ced523143a86bd0938b3794478d) ) @@ -5260,12 +5079,6 @@ ROM_START( alpinerjc ) ROM_LOAD32_WORD_SWAP( "ar1ver-c.1", 0x00002, 0x200000, CRC(8a87dc27) SHA1(ea3675667dce4c184da61dbb204e39da7ae93e82) ) /* SYSTEM SUPER22 MPM(F16) PCB stickered AR1 VER.C */ ROM_LOAD32_WORD_SWAP( "ar1ver-c.2", 0x00000, 0x200000, CRC(5f4f5615) SHA1(ff8f818a4017ee8546037a10522f2cf1de6dc7cd) ) /* intel E28F016SA flash ROMs at ROM1 & ROM2 */ - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x080000, "mcu", 0 ) /* S22-BIOS ver1.30 */ ROM_LOAD( "ar1datab.8k", 0, 0x080000, CRC(c26306f8) SHA1(6d8d993c076d5ced523143a86bd0938b3794478d) ) @@ -5316,12 +5129,6 @@ ROM_START( alpinr2b ) ROM_LOAD32_BYTE( "ars2ver-b.4", 0x000002, 0x200000, CRC(610e49c2) SHA1(433c6d2216551bac31584306f748af1c912c3b07) ) // " ROM_LOAD32_BYTE( "ars2ver-b.5", 0x000000, 0x200000, CRC(7f3517b0) SHA1(3e6ba1a51bf235f40f933aae1f00638b88bba522) ) // " - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x080000, "mcu", 0 ) /* S22-BIOS ver1.30 */ ROM_LOAD( "ars2data.8k", 0x000000, 0x080000, CRC(29b36dcb) SHA1(70fde130c11789c822829493a70ecefb077c0c15) ) @@ -5369,12 +5176,6 @@ ROM_START( alpinr2a ) ROM_LOAD32_BYTE( "ars2ver-a.4", 0x000001, 0x200000, CRC(9e9d771d) SHA1(6fb983e3f4f8233544667b1bbf87864e4fb8698c) ) // " ROM_LOAD32_BYTE( "ars2ver-a.5", 0x000000, 0x200000, CRC(e93c7771) SHA1(305f35488a55be1b845702df972bba8334c0726c) ) // " - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x080000, "mcu", 0 ) /* S22-BIOS ver1.30 */ ROM_LOAD( "ars2data.8k", 0x000000, 0x080000, CRC(29b36dcb) SHA1(70fde130c11789c822829493a70ecefb077c0c15) ) @@ -5423,12 +5224,6 @@ ROM_START( alpines ) ROM_LOAD32_BYTE( "af2ver-a_um.ic4", 0x000001, 0x200000, CRC(c9095af3) SHA1(4981c8c84057373ef678e51fe72ebac40d1a0cf4) ) ROM_LOAD32_BYTE( "af2ver-a_uu.ic5", 0x000000, 0x200000, CRC(54ee33a1) SHA1(0eaa8707ab13a0a66551f61a08986c98f5c9e446) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x080000, "mcu", 0 ) /* S22-BIOS ver1.41 */ ROM_LOAD( "af1data.8k", 0x000000, 0x080000, CRC(ef13ebe8) SHA1(5d3f697994d4b5b19ee7fea1e2aef8e39449b68e) ) @@ -5465,12 +5260,6 @@ ROM_START( alpinesa ) // only 4 different DWORDs at 0x700, it's either a serial ROM_LOAD32_BYTE( "af2ver-a_um.ic4", 0x000001, 0x200000, CRC(e7e057e3) SHA1(436e4645ba0e8734c0e25c7c22489bf97066944d) ) ROM_LOAD32_BYTE( "af2ver-a_uu.ic5", 0x000000, 0x200000, CRC(3eee10a2) SHA1(6e52c5132581e7fe69a257195af5bc9f3a3efe25) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x080000, "mcu", 0 ) /* S22-BIOS ver1.41 */ ROM_LOAD( "af1data.8k", 0x000000, 0x080000, CRC(ef13ebe8) SHA1(5d3f697994d4b5b19ee7fea1e2aef8e39449b68e) ) @@ -5508,12 +5297,6 @@ ROM_START( timecris ) ROM_LOAD32_BYTE( "ts2ver-b.3", 0x00001, 0x100000, CRC(9f4ced33) SHA1(32768b5ff263a9e3d11b7b36f6b2d7e951e07419) ) ROM_LOAD32_BYTE( "ts2ver-b.4", 0x00000, 0x100000, CRC(3e0cfb38) SHA1(3c56342bd73b1617ea579a0d53e19d59bb04fd99) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x080000, "mcu", 0 ) /* S22-BIOS ver1.30 */ ROM_LOAD( "ts1data.8k", 0, 0x080000, CRC(e68aa973) SHA1(663e80d249be5d5841139d98a9d72e2396851272) ) @@ -5559,12 +5342,6 @@ ROM_START( timecrisa ) ROM_LOAD32_WORD_SWAP( "ts2ver-a.1", 0x00002, 0x200000, CRC(d57eb74b) SHA1(536dd9305d0ac44110c575776333310cc57b5242) ) ROM_LOAD32_WORD_SWAP( "ts2ver-a.2", 0x00000, 0x200000, CRC(671588af) SHA1(63f992c6795521fd263a0ebf230f8dc88cbfc443) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x080000, "mcu", 0 ) /* S22-BIOS ver1.30 */ ROM_LOAD( "ts1data.8k", 0, 0x080000, CRC(e68aa973) SHA1(663e80d249be5d5841139d98a9d72e2396851272) ) @@ -5613,12 +5390,6 @@ ROM_START( tokyowar ) ROM_LOAD32_BYTE( "tw2ver-a.3", 0x000001, 0x100000, CRC(7d42c516) SHA1(28c1596dd55c15207bbb41a8b9a5abc97abc2bc8) ) ROM_LOAD32_BYTE( "tw2ver-a.4", 0x000000, 0x100000, CRC(b904ed16) SHA1(773e11536e1b3fe4971608a63a8e6eca702f8667) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x080000, "mcu", 0 ) /* S22-BIOS ver1.41 */ ROM_LOAD( "tw1data.8k", 0x000000, 0x080000, CRC(bd046e4b) SHA1(162bc4ab69959ccab49fd69de291d34d472fb1c8) ) @@ -5670,12 +5441,6 @@ ROM_START( tokyowarj ) ROM_LOAD32_BYTE( "tw1ver-a.3", 0x000001, 0x100000, CRC(17146e7f) SHA1(0fd270152eef1966e0960531554cbe115668205f) ) ROM_LOAD32_BYTE( "tw1ver-a.4", 0x000000, 0x100000, CRC(12698e2a) SHA1(51761ea96cb458f56d832cd233afbc374ded7f20) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x080000, "mcu", 0 ) /* S22-BIOS ver1.41 */ ROM_LOAD( "tw1data.8k", 0x000000, 0x080000, CRC(bd046e4b) SHA1(162bc4ab69959ccab49fd69de291d34d472fb1c8) ) @@ -5728,12 +5493,6 @@ ROM_START( dirtdash ) ROM_LOAD32_BYTE( "dt2verb.rom3", 0x000001, 0x100000, NO_DUMP ) // has failed internally, reads always 0x00 filled ROM_LOAD32_BYTE( "dt2verb.rom4", 0x000000, 0x100000, CRC(9a80fc82) SHA1(81a14749a39d213db58527f7a98d48dbfca1c153) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x080000, "mcu", 0 ) /* S22-BIOS ver1.41 */ ROM_LOAD( "dt1dataa.8k", 0x000000, 0x080000, CRC(9bcdea21) SHA1(26ae025cf746d3a703a82495eb2bb515b828a650) ) @@ -5776,12 +5535,6 @@ ROM_START( dirtdasha ) ROM_LOAD32_WORD_SWAP( "dt2vera.1", 0x000002, 0x200000, CRC(402a3d73) SHA1(009b57ed0ea228ccedb139d945b9eaf2a36e2502) ) ROM_LOAD32_WORD_SWAP( "dt2vera.2", 0x000000, 0x200000, CRC(66ed140d) SHA1(a472fdc7b6aaeb4b3643ecdafd32fa665e7c7aa2) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x080000, "mcu", 0 ) /* S22-BIOS ver1.41 */ ROM_LOAD( "dt1dataa.8k", 0x000000, 0x080000, CRC(9bcdea21) SHA1(26ae025cf746d3a703a82495eb2bb515b828a650) ) @@ -5824,12 +5577,6 @@ ROM_START( dirtdashj ) ROM_LOAD32_WORD_SWAP( "dt1vera.1", 0x000002, 0x200000, CRC(057b280b) SHA1(e7f038c1b3c7520d32c9962cc00104bcf65d60f6) ) ROM_LOAD32_WORD_SWAP( "dt1vera.2", 0x000000, 0x200000, CRC(82f822d2) SHA1(170cf326903fe7b4e203b181124de609826b8e1f) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x080000, "mcu", 0 ) /* S22-BIOS ver1.41 */ ROM_LOAD( "dt1dataa.8k", 0x000000, 0x080000, CRC(9bcdea21) SHA1(26ae025cf746d3a703a82495eb2bb515b828a650) ) @@ -5875,12 +5622,6 @@ ROM_START( aquajet ) ROM_LOAD32_BYTE( "aj2ver-b.3", 0x000001, 0x100000, CRC(ef6ebcf7) SHA1(358973b678b9a3065e945fb589af16e8102d437b) ) ROM_LOAD32_BYTE( "aj2ver-b.4", 0x000000, 0x100000, CRC(7799b909) SHA1(e40005f96f51742b2778605926b8184c9b2c1ad2) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x080000, "mcu", 0 ) /* S22-BIOS ver1.41 */ ROM_LOAD( "aj1data.8k", 0x000000, 0x080000, CRC(52bcc6d5) SHA1(25319ea6db35cc9bdcb39cc83d597a2a9f1690f3) ) @@ -5933,12 +5674,6 @@ ROM_START( adillor ) ROM_LOAD32_BYTE( "am2vera.rom3", 0x000001, 0x100000, CRC(80e9435a) SHA1(d92f6ec607e628270ceb3e09c1980d6e13bd88a7) ) ROM_LOAD32_BYTE( "am2vera.rom4", 0x000000, 0x100000, CRC(1e3a6032) SHA1(f4c6539a78f94ae2c240aeb8f85712a612933e8c) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x080000, "mcu", 0 ) /* S22-BIOS ver1.41 */ ROM_LOAD( "am1data.8k", 0x000000, 0x080000, CRC(3c176589) SHA1(fabf8debfa118893449f6086986fd1aa012daf27) ) @@ -5998,12 +5733,6 @@ ROM_START( adillorj ) ROM_LOAD32_BYTE( "am1vera.rom3", 0x000001, 0x100000, CRC(af0983bc) SHA1(136d2e14485864e20d7a6947d640577b8a85243c) ) ROM_LOAD32_BYTE( "am1vera.rom4", 0x000000, 0x100000, CRC(4424047f) SHA1(d0ca736c085db58d33b603813b7a54c8ce995bac) ) - ROM_REGION( 0x10000*2, "master", 0 ) /* Master DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - - ROM_REGION( 0x10000*2, "slave", 0 ) /* Slave DSP */ - ROM_LOAD16_WORD( "c71.bin", 0,0x1000*2, CRC(47c623ab) SHA1(e363ac50f5556f83308d4cc191b455e9b62bcfc8) ) - ROM_REGION16_LE( 0x080000, "mcu", 0 ) /* S22-BIOS ver1.41 */ ROM_LOAD( "am1data.8k", 0x000000, 0x080000, CRC(3c176589) SHA1(fabf8debfa118893449f6086986fd1aa012daf27) ) diff --git a/src/mame/namco/namcos22.h b/src/mame/namco/namcos22.h index 873df77a2ea..ed55756d944 100644 --- a/src/mame/namco/namcos22.h +++ b/src/mame/namco/namcos22.h @@ -90,7 +90,7 @@ struct namcos22_scenenode int cz_type; int cz_adjust; int objectflags; - int direct; + bool direct; namcos22_polyvertex v[4]; } quad; @@ -389,7 +389,7 @@ protected: void draw_direct_poly(const u16 *src); void draw_polygons(); void draw_sprites(); - void draw_sprite_group(const u32 *src, const u32 *attr, int num_sprites, int deltax, int deltay, int y_lowres); + void draw_sprite_group(const u32 *src, const u32 *attr, int num_sprites, int deltax, int deltay, bool y_lowres); void namcos22_mix_text_layer(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); void install_c74_speedup(); @@ -483,7 +483,7 @@ protected: std::unique_ptr m_dirtypal; std::unique_ptr m_mix_bitmap; - tilemap_t *m_bgtilemap; + tilemap_t *m_text_tilemap; u16 m_tilemapattr[8] = { }; u16 m_rowscroll[480] = { }; u16 m_lastrow = 0; diff --git a/src/mame/namco/namcos22_v.cpp b/src/mame/namco/namcos22_v.cpp index 73da369b58a..2f98b767c97 100644 --- a/src/mame/namco/namcos22_v.cpp +++ b/src/mame/namco/namcos22_v.cpp @@ -42,13 +42,13 @@ void namcos22_renderer::renderscanline_poly(int32_t scanline, const extent_t &ex float du = extent.param[1].dpdx; float dv = extent.param[2].dpdx; float di = extent.param[3].dpdx; - int bn = extra.bn * 0x1000; + const int bn = extra.bn * 0x1000; const pen_t *pens = extra.pens; - int fogfactor = 0xff - extra.fogfactor; - bool shade_enabled = extra.shade_enabled; - bool texture_enabled = extra.texture_enabled; + const int fogfactor = 0xff - extra.fogfactor; + const bool shade_enabled = extra.shade_enabled; + const bool texture_enabled = extra.texture_enabled; rgbaint_t fogcolor = extra.fogcolor; - int prioverchar = extra.prioverchar; + const int prioverchar = extra.prioverchar; int penmask = 0xff; int penshift = 0; int pen = 0; @@ -76,16 +76,16 @@ void namcos22_renderer::renderscanline_poly(int32_t scanline, const extent_t &ex for (int x = extent.startx; x < extent.stopx; x++) { - float ooz = 1.0f / z; + const float ooz = 1.0f / z; // texture mapping if (texture_enabled) { - int tx = int(u * ooz) & 0xfff; - int ty = (int(v * ooz) & 0xfff) | bn; - int to = (ty << 4 & 0xfff00) | (tx >> 4); - pen = ttdata[(ttmap[to] << 8) | tt_ayx_to_pixel[ttattr[to] << 8 | (ty << 4 & 0xf0) | (tx & 0xf)]]; - rgb.set(pens[pen >> penshift & penmask]); + const int tx = int(u * ooz) & 0xfff; + const int ty = (int(v * ooz) & 0xfff) | bn; + const int to = ((ty << 4) & 0xfff00) | (tx >> 4); + pen = ttdata[(ttmap[to] << 8) | tt_ayx_to_pixel[(ttattr[to] << 8) | ((ty << 4) & 0xf0) | (tx & 0xf)]]; + rgb.set(pens[(pen >> penshift) & penmask]); } else rgb.set(0, 0xff, 0xff, 0xff); @@ -99,7 +99,7 @@ void namcos22_renderer::renderscanline_poly(int32_t scanline, const extent_t &ex // shading after fog if (shade_enabled) { - int shade = i * ooz; + const int shade = i * ooz; rgb.scale_imm_and_clamp(shade << 2); } @@ -124,26 +124,26 @@ void namcos22_renderer::renderscanline_poly_ss22(int32_t scanline, const extent_ float du = extent.param[1].dpdx; float dv = extent.param[2].dpdx; float di = extent.param[3].dpdx; - int bn = extra.bn * 0x1000; + const int bn = extra.bn * 0x1000; const pen_t *pens = extra.pens; int fogfactor = 0xff - extra.fogfactor; - bool shade_enabled = extra.shade_enabled; - bool texture_enabled = extra.texture_enabled; + const bool shade_enabled = extra.shade_enabled; + const bool texture_enabled = extra.texture_enabled; rgbaint_t fogcolor = extra.fogcolor; - int prioverchar = extra.prioverchar; + const int prioverchar = extra.prioverchar; int penmask = 0xff; int penshift = 0; int pen = 0; rgbaint_t rgb; const u8 *czram = extra.czram; - int cz_sdelta = extra.cz_sdelta; - bool zfog_enabled = extra.zfog_enabled; - int fadefactor = 0xff - extra.fadefactor; - int alphafactor = 0xff - extra.alpha; - bool alpha_enabled = extra.alpha_enabled; - u8 alpha_pen = m_state.m_poly_alpha_pen; - bool polyfade_enabled = extra.pfade_enabled; + const int cz_sdelta = extra.cz_sdelta; + const bool zfog_enabled = extra.zfog_enabled; + const int fadefactor = 0xff - extra.fadefactor; + const int alphafactor = 0xff - extra.alpha; + const bool alpha_enabled = extra.alpha_enabled; + const u8 alpha_pen = m_state.m_poly_alpha_pen; + const bool polyfade_enabled = extra.pfade_enabled; rgbaint_t fadecolor = extra.fadecolor; rgbaint_t polycolor = extra.polycolor; @@ -169,16 +169,16 @@ void namcos22_renderer::renderscanline_poly_ss22(int32_t scanline, const extent_ for (int x = extent.startx; x < extent.stopx; x++) { - float ooz = 1.0f / z; + const float ooz = 1.0f / z; // texture mapping if (texture_enabled) { - int tx = int(u * ooz) & 0xfff; - int ty = (int(v * ooz) & 0xfff) | bn; - int to = (ty << 4 & 0xfff00) | (tx >> 4); - pen = ttdata[(ttmap[to] << 8) | tt_ayx_to_pixel[ttattr[to] << 8 | (ty << 4 & 0xf0) | (tx & 0xf)]]; - rgb.set(pens[pen >> penshift & penmask]); + const int tx = int(u * ooz) & 0xfff; + const int ty = (int(v * ooz) & 0xfff) | bn; + const int to = ((ty << 4) & 0xfff00) | (tx >> 4); + pen = ttdata[(ttmap[to] << 8) | tt_ayx_to_pixel[(ttattr[to] << 8) | ((ty << 4) & 0xf0) | (tx & 0xf)]]; + rgb.set(pens[(pen >> penshift) & penmask]); } else rgb.set(0, 0xff, 0xff, 0xff); @@ -186,7 +186,7 @@ void namcos22_renderer::renderscanline_poly_ss22(int32_t scanline, const extent_ // shading before fog if (shade_enabled) { - int shade = i * ooz; + const int shade = i * ooz; rgb.scale_imm_and_clamp(shade << 2); } @@ -237,16 +237,16 @@ void namcos22_renderer::renderscanline_poly_ss22(int32_t scanline, const extent_ void namcos22_renderer::renderscanline_sprite(int32_t scanline, const extent_t &extent, const namcos22_object_data &extra, int threadid) { - int y_index = extent.param[1].start - extra.flipy; + const int y_index = extent.param[1].start - extra.flipy; float x_index = extent.param[0].start - extra.flipx; - float dx = extent.param[0].dpdx; + const float dx = extent.param[0].dpdx; const pen_t *pal = extra.pens; - int prioverchar = extra.prioverchar; - int alphafactor = extra.alpha; - bool alpha_enabled = extra.alpha_enabled; - u8 alpha_pen = m_state.m_poly_alpha_pen; - int fogfactor = 0xff - extra.fogfactor; - int fadefactor = 0xff - extra.fadefactor; + const int prioverchar = extra.prioverchar; + const int alphafactor = extra.alpha; + const bool alpha_enabled = extra.alpha_enabled; + const u8 alpha_pen = m_state.m_poly_alpha_pen; + const int fogfactor = 0xff - extra.fogfactor; + const int fadefactor = 0xff - extra.fadefactor; rgbaint_t fogcolor(extra.fogcolor); rgbaint_t fadecolor(extra.fadecolor); u8 *const source = (u8 *)extra.source + y_index * extra.line_modulo; @@ -292,11 +292,11 @@ void namcos22_renderer::poly3d_drawquad(screen_device &screen, bitmap_rgb32 &bit vertex_t clipv[6]; int clipverts; int vertnum; - int direct = node->data.quad.direct; + const bool direct = node->data.quad.direct; // scene clip - int cx = 320 + node->data.quad.vx; - int cy = 240 + node->data.quad.vy; + const int cx = 320 + node->data.quad.vx; + const int cy = 240 + node->data.quad.vy; m_cliprect.set(cx + node->data.quad.vl, cx - node->data.quad.vr - 1, cy + node->data.quad.vu, cy - node->data.quad.vd - 1); m_cliprect &= screen.visible_area(); @@ -320,7 +320,7 @@ void namcos22_renderer::poly3d_drawquad(screen_device &screen, bitmap_rgb32 &bit for (vertnum = 0; vertnum < clipverts; vertnum++) { - poly3d_t ooz = 1.0 / clipv[vertnum].p[0]; + const poly3d_t ooz = 1.0 / clipv[vertnum].p[0]; clipv[vertnum].x = cx + clipv[vertnum].x * ooz; clipv[vertnum].y = cy - clipv[vertnum].y * ooz; clipv[vertnum].p[0] = ooz; @@ -336,7 +336,7 @@ void namcos22_renderer::poly3d_drawquad(screen_device &screen, bitmap_rgb32 &bit clipverts = 4; for (vertnum = 0; vertnum < 4; vertnum++) { - poly3d_t ooz = node->data.quad.v[vertnum].z; + const poly3d_t ooz = node->data.quad.v[vertnum].z; clipv[vertnum].x = cx + node->data.quad.v[vertnum].x; clipv[vertnum].y = cy - node->data.quad.v[vertnum].y; clipv[vertnum].p[0] = ooz; @@ -346,11 +346,11 @@ void namcos22_renderer::poly3d_drawquad(screen_device &screen, bitmap_rgb32 &bit } } - int color = node->data.quad.color; - int cz_value = node->data.quad.cz_value; - int cz_type = node->data.quad.cz_type; - int cz_adjust = node->data.quad.cz_adjust; - int objectflags = node->data.quad.objectflags; + const int color = node->data.quad.color; + const int cz_value = node->data.quad.cz_value; + const int cz_type = node->data.quad.cz_type; + const int cz_adjust = node->data.quad.cz_adjust; + const int objectflags = node->data.quad.objectflags; namcos22_object_data &extra = object_data().next(); @@ -373,7 +373,7 @@ void namcos22_renderer::poly3d_drawquad(screen_device &screen, bitmap_rgb32 &bit if (m_state.m_is_ss22) { // global fade - if (m_state.m_mixer_flags & 1) + if (BIT(m_state.m_mixer_flags, 0)) { extra.fadefactor = m_state.m_screen_fade_factor; extra.fadecolor.set(0, m_state.m_screen_fade_r, m_state.m_screen_fade_g, m_state.m_screen_fade_b); @@ -388,10 +388,10 @@ void namcos22_renderer::poly3d_drawquad(screen_device &screen, bitmap_rgb32 &bit extra.alpha_enabled = (color & 0x7f) != m_state.m_poly_alpha_color; // poly fog - if (~color & 0x80) + if (BIT(~color, 7)) { - int bank = m_state.m_czattr[6] >> (cz_type * 2) & 3; - int bank_enabled = m_state.m_czattr[4] >> (bank * 4) & 4; + const int bank = m_state.m_czattr[6] >> (cz_type * 2) & 3; + const bool bank_enabled = m_state.m_czattr[4] >> (bank * 4) & 4; if (bank_enabled) { @@ -405,7 +405,7 @@ void namcos22_renderer::poly3d_drawquad(screen_device &screen, bitmap_rgb32 &bit if (direct) { - int fogfactor = m_state.m_recalc_czram[bank][cz_value] + delta; + const int fogfactor = m_state.m_recalc_czram[bank][cz_value] + delta; extra.fogfactor = std::clamp(fogfactor, 0, 0xff); } else @@ -420,9 +420,9 @@ void namcos22_renderer::poly3d_drawquad(screen_device &screen, bitmap_rgb32 &bit else { // poly fog - if (~color & 0x80) + if (BIT(~color, 7)) { - int cz_color = cz_type & nthbyte(&m_state.m_fog_colormask, cz_type); + const int cz_color = cz_type & nthbyte(&m_state.m_fog_colormask, cz_type); extra.fogcolor.set(0, m_state.m_fog_r_per_cztype[cz_color], m_state.m_fog_g_per_cztype[cz_color], m_state.m_fog_b_per_cztype[cz_color]); extra.fogfactor = nthbyte(m_state.m_czram, cz_type << 13 | cz_value); } @@ -435,7 +435,7 @@ void namcos22_renderer::poly3d_drawquad(screen_device &screen, bitmap_rgb32 &bit extra.texture_enabled = false; } - if (objectflags & 0x200000) + if (BIT(objectflags, 21)) { // disable textures? if ((cz_adjust & 0x7f0000) == 0x3a0000) @@ -443,7 +443,7 @@ void namcos22_renderer::poly3d_drawquad(screen_device &screen, bitmap_rgb32 &bit } // disable poly fog - if (cz_adjust & 0x800000) + if (BIT(cz_adjust, 23)) { extra.zfog_enabled = false; extra.fogfactor = 0; @@ -471,16 +471,16 @@ void namcos22_renderer::poly3d_drawsprite( ) { gfx_element *gfx = m_state.m_gfxdecode->gfx(2); - int sprite_screen_height = (scaley * gfx->height() + 0x8000) >> 16; - int sprite_screen_width = (scalex * gfx->width() + 0x8000) >> 16; + const int sprite_screen_height = (scaley * gfx->height() + 0x8000) >> 16; + const int sprite_screen_width = (scalex * gfx->width() + 0x8000) >> 16; if (sprite_screen_width && sprite_screen_height) { - poly3d_t fsx = sx; - poly3d_t fsy = sy; - poly3d_t fwidth = gfx->width(); - poly3d_t fheight = gfx->height(); - poly3d_t fsw = sprite_screen_width; - poly3d_t fsh = sprite_screen_height; + const poly3d_t fsx = sx; + const poly3d_t fsy = sy; + const poly3d_t fwidth = gfx->width(); + const poly3d_t fheight = gfx->height(); + const poly3d_t fsw = sprite_screen_width; + const poly3d_t fsh = sprite_screen_height; namcos22_object_data &extra = object_data().next(); vertex_t vert[4]; @@ -514,14 +514,14 @@ void namcos22_renderer::poly3d_drawsprite( vert[3].p[1] = fheight; // global fade - if (m_state.m_mixer_flags & 2 || fade_enabled) + if (BIT(m_state.m_mixer_flags, 1) || fade_enabled) { extra.fadefactor = m_state.m_screen_fade_factor; extra.fadecolor.set(0, m_state.m_screen_fade_r, m_state.m_screen_fade_g, m_state.m_screen_fade_b); } // sprite fog - if (~color & 0x80 && cz_factor > 0) + if (BIT(~color, 7) && cz_factor > 0) { extra.fogfactor = cz_factor; extra.fogcolor.set(0, m_state.m_fog_r, m_state.m_fog_g, m_state.m_fog_b); @@ -695,7 +695,7 @@ void namcos22_renderer::render_scene(screen_device &screen, bitmap_rgb32 &bitmap float namcos22_state::dspfloat_to_nativefloat(u32 val) { - s16 mantissa = (s16)val; + const s16 mantissa = (s16)val; float result = (float)mantissa; int exponent = (val >> 16) & 0x3f; while (exponent < 0x2e) @@ -746,9 +746,9 @@ void namcos22_state::matrix3d_apply_reflection(float m[4][4]) float r[4][4]; matrix3d_identity(r); - if (m_reflection & 0x10) + if (BIT(m_reflection, 4)) r[0][0] = -1.0f; - if (m_reflection & 0x20) + if (BIT(m_reflection, 5)) r[1][1] = -1.0f; matrix3d_multiply(m, r); @@ -823,7 +823,7 @@ void namcos22_state::draw_direct_poly(const u16 *src) if (machine().video().skip_this_frame()) return; - int polys_enabled = m_is_ss22 ? nthbyte(m_mixer, 0x1f) & 1 : 1; + const bool polys_enabled = m_is_ss22 ? BIT(nthbyte(m_mixer, 0x1f), 0) : true; if (!polys_enabled) return; /** * word#0: @@ -850,7 +850,7 @@ void namcos22_state::draw_direct_poly(const u16 *src) * xx-- ---- // BRI * --xx xxxx // zpos */ - u32 zsort = ((src[1] & 0xfff) << 12) | (src[0] & 0xfff); + const u32 zsort = ((src[1] & 0xfff) << 12) | (src[0] & 0xfff); struct namcos22_scenenode *node = m_poly->new_scenenode(machine(), zsort, NAMCOS22_SCENENODE_QUAD); if (m_is_ss22) @@ -864,7 +864,7 @@ void namcos22_state::draw_direct_poly(const u16 *src) node->data.quad.texturebank = (src[1 + 4] & 0xf000) >> 12; } node->data.quad.color = (src[2] & 0xff00) >> 8; - node->data.quad.cz_value = src[3] >> 2 & 0x1fff; + node->data.quad.cz_value = (src[3] >> 2) & 0x1fff; node->data.quad.cz_type = src[3] & 3; node->data.quad.cz_adjust = 0; node->data.quad.objectflags = 0; @@ -884,7 +884,7 @@ void namcos22_state::draw_direct_poly(const u16 *src) p->v = src[1] & 0x0fff; } - int mantissa = src[5]; + const int mantissa = src[5]; int exponent = src[4] & 0x3f; if (mantissa) @@ -905,7 +905,7 @@ void namcos22_state::draw_direct_poly(const u16 *src) src += 6; } - node->data.quad.direct = 1; + node->data.quad.direct = true; node->data.quad.vx = 0; node->data.quad.vy = 0; node->data.quad.vu = -240; @@ -983,7 +983,7 @@ void namcos22_state::blit_single_quad(u32 color, u32 addr, float m[4][4], int po return; // backface cull one-sided polygons - if (flags & 0x0020) + if (BIT(flags, 5)) { float c1 = (v[2].x*((v[0].z*v[1].y)-(v[0].y*v[1].z)))+ @@ -1073,7 +1073,7 @@ void namcos22_state::blit_single_quad(u32 color, u32 addr, float m[4][4], int po else { // flat shading - bri = color >> 16 & 0xff; + bri = (color >> 16) & 0xff; } v[i].bri = bri; @@ -1085,7 +1085,7 @@ void namcos22_state::blit_single_quad(u32 color, u32 addr, float m[4][4], int po node->data.quad.texturebank = (v[0].v >> 12) & 0xf; node->data.quad.color = (color >> 8) & 0xff; node->data.quad.cz_value = cz_value >> 8; - node->data.quad.cz_type = flags >> 10 & 3; + node->data.quad.cz_type = (flags >> 10) & 3; node->data.quad.cz_adjust = m_cz_adjust; node->data.quad.objectflags = m_objectflags; @@ -1100,7 +1100,7 @@ void namcos22_state::blit_single_quad(u32 color, u32 addr, float m[4][4], int po p->bri = v[i].bri; } - node->data.quad.direct = 0; + node->data.quad.direct = false; node->data.quad.vx = m_camera_vx; node->data.quad.vy = m_camera_vy; node->data.quad.vu = m_camera_vu; @@ -1112,12 +1112,12 @@ void namcos22_state::blit_single_quad(u32 color, u32 addr, float m[4][4], int po void namcos22_state::blit_quads(int addr, int len, float m[4][4]) { - int finish = addr + len; + const int finish = addr + len; while (addr < finish) { - int packetlength = point_read(addr++); - int packetformat = point_read(addr + 0); + const int packetlength = point_read(addr++); + const int packetformat = point_read(addr + 0); int flags, color, bias; /** @@ -1217,7 +1217,7 @@ void namcos22_state::blit_polyobject(int code, float m[4][4]) { // list start address, code 5 is special case for pointram int list_addr; - bool pointram = (code == 0x5); + const bool pointram = (code == 0x5); if (pointram) list_addr = (m_is_ss22) ? 0xf80000 : 0xf00000; else @@ -1245,7 +1245,7 @@ void namcos22_state::blit_polyobject(int code, float m[4][4]) object_addr &= 0x00ffffff; } - u32 chunklength = point_read(object_addr++); + const u32 chunklength = point_read(object_addr++); if (chunklength > 0x100) { logerror("blit_polyobject bad chunk length: addr=0x%06x len=0x%x\n", object_addr-1, chunklength); @@ -1282,14 +1282,14 @@ void namcos22_state::slavesim_handle_bb0003(const s32 *src) 0000 7ffe 0000 0000 0000 7ffe */ - m_camera_ambient = src[0x1] >> 16 & 0xffff; + m_camera_ambient = (src[0x1] >> 16) & 0xffff; m_camera_power = src[0x1] & 0xffff; m_camera_lx = dspfixed_to_nativefloat(src[0x2]); m_camera_ly = dspfixed_to_nativefloat(src[0x3]); m_camera_lz = dspfixed_to_nativefloat(src[0x4]); - m_absolute_priority = src[0x3] >> 16 & 0xffff; + m_absolute_priority = (src[0x3] >> 16) & 0xffff; m_camera_vx = signed12(src[0x5] >> 16); m_camera_vy = signed12(src[0x5] & 0xffff); m_camera_zoom = dspfloat_to_nativefloat(src[0x6]); @@ -1298,18 +1298,18 @@ void namcos22_state::slavesim_handle_bb0003(const s32 *src) m_camera_vu = dspfloat_to_nativefloat(src[0x9]) * m_camera_zoom - 0.5f; m_camera_vd = dspfloat_to_nativefloat(src[0xa]) * m_camera_zoom - 0.5f; - m_reflection = src[0x2] >> 16 & 0x30; // z too? + m_reflection = (src[0x2] >> 16) & 0x30; // z too? m_cullflip = (m_reflection == 0x10 || m_reflection == 0x20); - if (m_reflection & 0x10) + if (BIT(m_reflection, 4)) { - int vl = m_camera_vl; + const int vl = m_camera_vl; m_camera_vl = m_camera_vr; m_camera_vr = vl; } - if (m_reflection & 0x20) + if (BIT(m_reflection, 5)) { - int vu = m_camera_vu; + const int vu = m_camera_vu; m_camera_vu = m_camera_vd; m_camera_vd = vu; } @@ -1451,9 +1451,9 @@ void namcos22_state::simulate_slavedsp() for (;;) { // hackery! commands should be streamed, not parsed here - u16 code = *src++; - u16 len = *src++; - s32 index = src - (s32 *)m_polygonram.target(); + const u16 code = *src++; + const u16 len = *src++; + const s32 index = src - (s32 *)m_polygonram.target(); // alpinr2b titlescreen includes commands to modify pointram on the fly if (m_gametype == NAMCOS22_ALPINE_RACER_2 && code == 0xfff8) @@ -1505,7 +1505,7 @@ void namcos22_state::simulate_slavedsp() src += len; src++; // should be 0xffff (GOTO command) - u16 next = *src++ & 0x7fff; // link to next command + const u16 next = *src++ & 0x7fff; // link to next command if (next != (index + len + 1 + 1)) { // end of list, normally with a "goto self" @@ -1562,7 +1562,7 @@ void namcos22_state::screen_vblank(int state) /*********************************************************************************************/ -void namcos22_state::draw_sprite_group(const u32 *src, const u32 *attr, int num_sprites, int deltax, int deltay, int y_lowres) +void namcos22_state::draw_sprite_group(const u32 *src, const u32 *attr, int num_sprites, int deltax, int deltay, bool y_lowres) { for (int i = 0; i < num_sprites; i++) { @@ -1607,42 +1607,42 @@ void namcos22_state::draw_sprite_group(const u32 *src, const u32 *attr, int num_ int ypos = (src[0] & 0xffff) - deltay; int sizex = src[1] >> 16; int sizey = src[1] & 0xffff; - int flipy = src[2] >> 3 & 0x1; + const int flipy = (src[2] >> 3) & 0x1; int rows = src[2] & 0x7; - int linktype = (src[2] & 0x00ff0000) >> 16; - int flipx = (src[2] >> 7) & 0x1; + const int linktype = (src[2] & 0x00ff0000) >> 16; + const int flipx = (src[2] >> 7) & 0x1; int cols = (src[2] >> 4) & 0x7; - u32 code = src[3]; - int tile = code >> 16; - int alpha = (code & 0xff00) >> 8; + const u32 code = src[3]; + const int tile = code >> 16; + const int alpha = (code & 0xff00) >> 8; - u32 zcoord = attr[0] & 0x00ffffff; - int color = attr[1] >> 16 & 0xff; - int cz = attr[1] & 0xff; + const u32 zcoord = attr[0] & 0x00ffffff; + const int color = (attr[1] >> 16) & 0xff; + const int cz = attr[1] & 0xff; // one of these is to override global fade setting? // eg. propcycl time over, where global fade affects score hinge, but not "TIME UP" - bool fade_enabled = bool(attr[1] & 0x8000); + const bool fade_enabled = BIT(attr[1], 15); // priority over textlayer, trusted by testmode and timecris - int prioverchar = (cz == 0xfe) ? 1 : 0; + const int prioverchar = (cz == 0xfe) ? 1 : 0; // set window clipping - int clip = src[2] >> 23 & 0xe; - int cx_min = -deltax + (s16)(m_spriteram[0x80|clip] >> 16); - int cx_max = -deltax + (s16)(m_spriteram[0x80|clip] & 0xffff); - int cy_min = -deltay + (s16)(m_spriteram[0x81|clip] >> 16); - int cy_max = -deltay + (s16)(m_spriteram[0x81|clip] & 0xffff); + const int clip = (src[2] >> 23) & 0xe; + const int cx_min = -deltax + (s16)(m_spriteram[0x80|clip] >> 16); + const int cx_max = -deltax + (s16)(m_spriteram[0x80|clip] & 0xffff); + const int cy_min = -deltay + (s16)(m_spriteram[0x81|clip] >> 16); + const int cy_max = -deltay + (s16)(m_spriteram[0x81|clip] & 0xffff); if (rows == 0) rows = 8; if (cols == 0) cols = 8; // right justify - if (src[2] & 0x0200) + if (BIT(src[2], 9)) xpos -= sizex * cols - 1; // bottom justify - if (src[2] & 0x0100) + if (BIT(src[2], 8)) ypos -= sizey * rows - 1; if (flipy) @@ -1747,13 +1747,13 @@ void namcos22_state::draw_sprites() bit 1: ??? (always set, except in alpinr2b. it's not x-resolution) bit 2: y-resolution? (always set, except in cybrcycc) */ - int sprites_on = (m_spriteram[0] >> 16 & 1) ? 0 : 1; - int y_lowres = (m_spriteram[0] >> 16 & 4) ? 0 : 1; + bool sprites_on = BIT(~m_spriteram[0], 16); + bool y_lowres = BIT(~m_spriteram[0], 18); - int deltax = (m_spriteram[1] & 0xffff) + (m_spriteram[2] & 0xffff) + 0x2d; - int deltay = (m_spriteram[3] >> 16) + (0x2a >> y_lowres); + const int deltax = (m_spriteram[1] & 0xffff) + (m_spriteram[2] & 0xffff) + 0x2d; + const int deltay = (m_spriteram[3] >> 16) + (0x2a >> y_lowres); - int base = m_spriteram[0] & 0xffff; // alpines/alpinr2b + const int base = m_spriteram[0] & 0xffff; // alpines/alpinr2b int num_sprites = ((m_spriteram[1] >> 16) - base) + 1; // airco22b doesn't use spriteset #1 @@ -1783,12 +1783,12 @@ void namcos22_state::draw_sprites() 0x940060..0x94007c set#2 */ - sprites_on = (m_vics_control[0x30/4] >> 24 & 1) ? 0 : 1; - y_lowres = (m_vics_control[0x30/4] >> 24 & 4) ? 0 : 1; + sprites_on = BIT(~m_vics_control[0x30/4], 24); + y_lowres = BIT(~m_vics_control[0x30/4], 26); // where do the games store the number of sprites to be processed by vics??? // the current default implementation (using spritelist size) is clearly wrong and causes problems in dirtdash and airco22b - num_sprites = m_vics_control[0x40/4] >> 4 & 0x1ff; // no +1 + num_sprites = (m_vics_control[0x40/4] >> 4) & 0x1ff; // no +1 // dirtdash sprite list starts at xxx4, number of sprites is stored in xxx0, it doesn't use set#2 if (m_gametype == NAMCOS22_DIRT_DASH) @@ -1801,12 +1801,12 @@ void namcos22_state::draw_sprites() draw_sprite_group(src, attr, num_sprites, deltax, deltay, y_lowres); } - num_sprites = m_vics_control[0x60/4] >> 4 & 0x1ff; // no +1 + num_sprites = (m_vics_control[0x60/4] >> 4) & 0x1ff; // no +1 // airco22b number of sprites for set#2 is stored in set#1 - it does not use set 1, or main set for sprites if (m_gametype == NAMCOS22_AIR_COMBAT22) { - sprites_on = (m_vics_data[(m_vics_control[0x48/4] & 0xffff)/4] >> 16 & 1) ? 0 : 1; + sprites_on = BIT(~m_vics_data[(m_vics_control[0x48/4] & 0xffff)/4], 16); num_sprites = (m_vics_data[(m_vics_control[0x48/4] & 0xffff)/4+1] >> 16) + 1; } @@ -1853,7 +1853,7 @@ void namcos22s_state::namcos22s_vics_control_w(offs_t offset, u32 data, u32 mem_ TILE_GET_INFO_MEMBER(namcos22_state::get_text_tile_info) { - u16 data = nthword(m_textram, tile_index); + const u16 data = nthword(m_textram, tile_index); /** * xxxx.----.----.---- palette select * ----.xx--.----.---- flip @@ -1864,19 +1864,19 @@ TILE_GET_INFO_MEMBER(namcos22_state::get_text_tile_info) void namcos22_state::namcos22_textram_w(offs_t offset, u32 data, u32 mem_mask) { - u32 prev = m_textram[offset]; + const u32 prev = m_textram[offset]; COMBINE_DATA(&m_textram[offset]); if (prev != m_textram[offset]) { - m_bgtilemap->mark_tile_dirty(offset * 2); - m_bgtilemap->mark_tile_dirty(offset * 2 + 1); + m_text_tilemap->mark_tile_dirty(offset * 2); + m_text_tilemap->mark_tile_dirty(offset * 2 + 1); } namcos22_cgram_w(offset + 0x1e000/4, data, mem_mask); } void namcos22_state::namcos22_cgram_w(offs_t offset, u32 data, u32 mem_mask) { - u32 prev = m_cgram[offset]; + const u32 prev = m_cgram[offset]; COMBINE_DATA(&m_cgram[offset]); if (prev != m_cgram[offset]) m_gfxdecode->gfx(0)->mark_dirty(offset/32); @@ -1899,9 +1899,9 @@ void namcos22_state::posirq_update() TIMER_CALLBACK_MEMBER(namcos22_state::posirq_callback) { // hblank irq line differs between s22/ss22 (see syscon) - int line = (m_is_ss22) ? 1 : 0; + const int line = (m_is_ss22) ? 1 : 0; - if (m_irq_enabled & (1 << line)) + if (BIT(m_irq_enabled, line)) { m_irq_state |= (1 << line); m_maincpu->set_input_line(m_syscontrol[line] & 7, ASSERT_LINE); @@ -1987,7 +1987,7 @@ u16 namcos22s_state::spotram_r(offs_t offset) if (offset == 2) { // read - u16 ret = m_spotram[m_spotram_address >> 1 & 0x7ff]; + const u16 ret = m_spotram[(m_spotram_address >> 1) & 0x7ff]; if (!machine().side_effects_disabled()) m_spotram_address += 2; @@ -2009,7 +2009,7 @@ void namcos22s_state::spotram_w(offs_t offset, u16 data, u16 mem_mask) case 1: // write - COMBINE_DATA(&m_spotram[m_spotram_address >> 1 & 0x7ff]); + COMBINE_DATA(&m_spotram[(m_spotram_address >> 1) & 0x7ff]); m_spotram_address += 2; break; @@ -2031,19 +2031,19 @@ void namcos22s_state::namcos22s_mix_text_layer(screen_device &screen, bitmap_rgb rgbaint_t rgb; // prepare alpha - u8 alpha_check12 = nthbyte(m_mixer, 0x12); - u8 alpha_check13 = nthbyte(m_mixer, 0x13); - u8 alpha_mask = nthbyte(m_mixer, 0x14) & 0xf; - u8 alpha_factor = nthbyte(m_mixer, 0x15); + const u8 alpha_check12 = nthbyte(m_mixer, 0x12); + const u8 alpha_check13 = nthbyte(m_mixer, 0x13); + const u8 alpha_mask = nthbyte(m_mixer, 0x14) & 0xf; + const u8 alpha_factor = nthbyte(m_mixer, 0x15); // prepare spot - bool spot_enabled = (m_spotram_enable & 1) && (m_chipselect & 0xc000); - int spot_factor = (m_spot_factor < 0x100) ? 0 : m_spot_factor & 0xff; - int spot_palbase = m_text_palbase >> 8 & 3; // src[x] >> 8 & 3 + const bool spot_enabled = BIT(m_spotram_enable, 0) && (m_chipselect & 0xc000); + const int spot_factor = (m_spot_factor < 0x100) ? 0 : m_spot_factor & 0xff; + const int spot_palbase = (m_text_palbase >> 8) & 3; // (src[x] >> 8) & 3 // prepare fader - bool fade_enabled = (m_mixer_flags & 2) && m_screen_fade_factor; - int fade_factor = 0xff - m_screen_fade_factor; + const bool fade_enabled = BIT(m_mixer_flags, 1) && m_screen_fade_factor; + const int fade_factor = 0xff - m_screen_fade_factor; rgbaint_t fade_color(0, m_screen_fade_r, m_screen_fade_g, m_screen_fade_b); // mix textlayer with poly/sprites @@ -2104,13 +2104,13 @@ void namcos22_state::namcos22_mix_text_layer(screen_device &screen, bitmap_rgb32 const u8 *blut = &m_gamma_proms[0x200]; // prepare fader and shadow factor - bool fade_enabled = (m_screen_fade_r != 0x100 || m_screen_fade_g != 0x100 || m_screen_fade_b != 0x100); - u32 fade_r_add = (m_screen_fade_r > 0x100) ? (1 << 16) : 0; - u32 fade_g_add = (m_screen_fade_g > 0x100) ? (1 << 8) : 0; - u32 fade_b_add = (m_screen_fade_b > 0x100) ? 1 : 0; - bool fade_white = fade_r_add || fade_g_add || fade_b_add; + const bool fade_enabled = (m_screen_fade_r != 0x100 || m_screen_fade_g != 0x100 || m_screen_fade_b != 0x100); + const u32 fade_r_add = (m_screen_fade_r > 0x100) ? (1 << 16) : 0; + const u32 fade_g_add = (m_screen_fade_g > 0x100) ? (1 << 8) : 0; + const u32 fade_b_add = (m_screen_fade_b > 0x100) ? 1 : 0; + const bool fade_white = fade_r_add || fade_g_add || fade_b_add; - bool shadow_enabled = (m_mixer_flags & 0x100) != 0; // ? (ridgerac is the only game not using shadow) + const bool shadow_enabled = BIT(m_mixer_flags, 8); // ? (ridgerac is the only game not using shadow) rgbaint_t fade_color(0, m_screen_fade_r, m_screen_fade_g, m_screen_fade_b); rgbaint_t rgb_mix[3] = { @@ -2167,15 +2167,15 @@ void namcos22_state::namcos22_mix_text_layer(screen_device &screen, bitmap_rgb32 void namcos22_state::update_text_rowscroll() { - u64 frame = m_screen->frame_number(); + const u64 frame = m_screen->frame_number(); if (frame != m_rs_frame) { m_rs_frame = frame; m_lastrow = 0; } - int scroll_x = (m_tilemapattr[0] - 0x35c) & 0x3ff; - int y = std::min(m_screen->vpos(), 480); + const int scroll_x = (m_tilemapattr[0] - 0x35c) & 0x3ff; + const int y = std::min(m_screen->vpos(), 480); // save x scroll value until current scanline for (int i = m_lastrow; i < y; i++) @@ -2186,32 +2186,32 @@ void namcos22_state::update_text_rowscroll() void namcos22_state::apply_text_scroll() { update_text_rowscroll(); - int scroll_y = m_tilemapattr[1] & 0x3ff; + const int scroll_y = m_tilemapattr[1] & 0x3ff; - m_bgtilemap->set_scrolly(0, scroll_y); + m_text_tilemap->set_scrolly(0, scroll_y); for (int i = 0; i < 0x400; i++) - m_bgtilemap->set_scrollx(i, m_rowscroll[0]); + m_text_tilemap->set_scrollx(i, m_rowscroll[0]); // apply current frame x scroll updates to tilemap for (int i = 0; i < 480; i++) - m_bgtilemap->set_scrollx((i + scroll_y + 4) & 0x3ff, m_rowscroll[i]); + m_text_tilemap->set_scrollx((i + scroll_y + 4) & 0x3ff, m_rowscroll[i]); } void namcos22_state::draw_text_layer(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect) { apply_text_scroll(); - m_bgtilemap->set_palette_offset(m_text_palbase); + m_text_tilemap->set_palette_offset(m_text_palbase); - m_bgtilemap->draw(screen, *m_mix_bitmap, cliprect, 0, 2, 3); + m_text_tilemap->draw(screen, *m_mix_bitmap, cliprect, 0, 2, 3); namcos22_mix_text_layer(screen, bitmap, cliprect); } void namcos22s_state::draw_text_layer(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect) { apply_text_scroll(); - m_bgtilemap->set_palette_offset(m_text_palbase); + m_text_tilemap->set_palette_offset(m_text_palbase); - m_bgtilemap->draw(screen, *m_mix_bitmap, cliprect, 0, 4, 4); + m_text_tilemap->draw(screen, *m_mix_bitmap, cliprect, 0, 4, 4); namcos22s_mix_text_layer(screen, bitmap, cliprect, 4); } @@ -2221,7 +2221,7 @@ void namcos22s_state::draw_text_layer(screen_device &screen, bitmap_rgb32 &bitma void namcos22_state::namcos22_paletteram_w(offs_t offset, u32 data, u32 mem_mask) { - u32 prev = m_paletteram[offset]; + const u32 prev = m_paletteram[offset]; COMBINE_DATA(&m_paletteram[offset]); if (prev != m_paletteram[offset]) m_dirtypal[offset & (0x7fff/4)] = 1; @@ -2235,10 +2235,10 @@ void namcos22_state::update_palette() { for (int j = 0; j < 4; j++) { - int which = i * 4 + j; - int r = nthbyte(m_paletteram, which + 0x00000); - int g = nthbyte(m_paletteram, which + 0x08000); - int b = nthbyte(m_paletteram, which + 0x10000); + const int which = i * 4 + j; + const int r = nthbyte(m_paletteram, which + 0x00000); + const int g = nthbyte(m_paletteram, which + 0x08000); + const int b = nthbyte(m_paletteram, which + 0x10000); m_palette->set_pen_color(which, rgb_t(r, g, b)); } m_dirtypal[i] = 0; @@ -2264,13 +2264,13 @@ void namcos22s_state::namcos22s_czattr_w(offs_t offset, u16 data, u16 mem_mask) 00a4 00a4 00a4 00a4 4444 0000 0000 0000 // propcycl in pool ff80 ff80 ff80 ff80 4444 0000 0000 0000 // propcycl ending */ - u16 prev = m_czattr[offset]; + const u16 prev = m_czattr[offset]; COMBINE_DATA(&m_czattr[offset]); if (offset == 4) { // invalidate if compare function changed - u16 changed = prev ^ m_czattr[offset]; + const u16 changed = prev ^ m_czattr[offset]; for (int bank = 0; bank < 4; bank++) m_cz_was_written[bank] |= changed >> (bank * 4) & 2; } @@ -2298,7 +2298,7 @@ void namcos22s_state::namcos22s_czram_w(offs_t offset, u32 data, u32 mem_mask) // write enable bit if (~m_czattr[4] >> (bank * 4) & 1) { - u32 prev = (m_banked_czram[bank][offset * 2] << 16) | m_banked_czram[bank][offset * 2 + 1]; + const u32 prev = (m_banked_czram[bank][offset * 2] << 16) | m_banked_czram[bank][offset * 2 + 1]; u32 temp = prev; COMBINE_DATA(&temp); m_banked_czram[bank][offset * 2] = temp >> 16; @@ -2310,7 +2310,7 @@ void namcos22s_state::namcos22s_czram_w(offs_t offset, u32 data, u32 mem_mask) u32 namcos22s_state::namcos22s_czram_r(offs_t offset) { - int bank = m_czattr[5] & 3; + const int bank = m_czattr[5] & 3; return (m_banked_czram[bank][offset * 2] << 16) | m_banked_czram[bank][offset * 2 + 1]; } @@ -2322,7 +2322,7 @@ void namcos22s_state::recalc_czram() // this is very slow when emulating, so let's recalculate it to a simpler lookup table if (m_cz_was_written[bank]) { - int reverse = (m_czattr[4] >> (bank * 4) & 2) ? 0xff : 0; + const int reverse = (m_czattr[4] >> (bank * 4) & 2) ? 0xff : 0; int small_val = 0x2000; int small_offset = reverse; int large_val = 0; @@ -2331,10 +2331,10 @@ void namcos22s_state::recalc_czram() for (int i = 0; i < 0x100; i++) { - int factor = i ^ reverse; - int val = std::min(m_banked_czram[bank][factor], 0x2000); - int start = prev; - int end = val; + const int factor = i ^ reverse; + const int val = std::min(m_banked_czram[bank][factor], 0x2000); + const int start = prev; + const int end = val; if (i > 0) { @@ -2515,7 +2515,7 @@ u32 namcos22s_state::screen_update_namcos22s(screen_device &screen, bitmap_rgb32 // background color rgbaint_t bg_color(0, nthbyte(m_mixer, 0x08), nthbyte(m_mixer, 0x09), nthbyte(m_mixer, 0x0a)); - if (m_mixer_flags & 1 && m_screen_fade_factor) + if (BIT(m_mixer_flags, 0) && m_screen_fade_factor) { rgbaint_t fade_color(0, m_screen_fade_r, m_screen_fade_g, m_screen_fade_b); bg_color.blend(fade_color, 0xff - m_screen_fade_factor); @@ -2523,12 +2523,12 @@ u32 namcos22s_state::screen_update_namcos22s(screen_device &screen, bitmap_rgb32 bitmap.fill(bg_color.to_rgba(), cliprect); // layers - u8 layer = nthbyte(m_mixer, 0x1f); - if (layer & 4) draw_text_layer(screen, bitmap, cliprect); - if (layer & 2) draw_sprites(); - if (layer & 1) draw_polygons(); + const u8 layer = nthbyte(m_mixer, 0x1f); + if (BIT(layer, 2)) draw_text_layer(screen, bitmap, cliprect); + if (BIT(layer, 1)) draw_sprites(); + if (BIT(layer, 0)) draw_polygons(); m_poly->render_scene(screen, bitmap); - if (layer & 4) namcos22s_mix_text_layer(screen, bitmap, cliprect, 6); + if (BIT(layer, 2)) namcos22s_mix_text_layer(screen, bitmap, cliprect, 6); // apply gamma const u8 *rlut = (const u8 *)&m_mixer[0x100/4]; @@ -2539,10 +2539,10 @@ u32 namcos22s_state::screen_update_namcos22s(screen_device &screen, bitmap_rgb32 u32 *const dest = &bitmap.pix(y); for (int x = cliprect.left(); x <= cliprect.right(); x++) { - int rgb = dest[x]; - int r = rlut[NATIVE_ENDIAN_VALUE_LE_BE(3, 0) ^ ((rgb >> 16) & 0xff)]; - int g = glut[NATIVE_ENDIAN_VALUE_LE_BE(3, 0) ^ ((rgb >> 8) & 0xff)]; - int b = blut[NATIVE_ENDIAN_VALUE_LE_BE(3, 0) ^ (rgb & 0xff)]; + const u32 rgb = dest[x]; + const u8 r = rlut[NATIVE_ENDIAN_VALUE_LE_BE(3, 0) ^ ((rgb >> 16) & 0xff)]; + const u8 g = glut[NATIVE_ENDIAN_VALUE_LE_BE(3, 0) ^ ((rgb >> 8) & 0xff)]; + const u8 b = blut[NATIVE_ENDIAN_VALUE_LE_BE(3, 0) ^ (rgb & 0xff)]; dest[x] = (r << 16) | (g << 8) | b; } } @@ -2558,7 +2558,7 @@ u32 namcos22_state::screen_update_namcos22(screen_device &screen, bitmap_rgb32 & screen.priority().fill(0, cliprect); // background color - int bg_color = m_bg_palbase | 0xff; + const int bg_color = m_bg_palbase | 0xff; bitmap.fill(m_palette->pen(bg_color), cliprect); // layers @@ -2632,13 +2632,13 @@ void namcos22_state::init_tables() { int ix = x, iy = y; - if (attr & 4) + if (BIT(attr, 2)) ix = 15 - ix; - if (attr & 2) + if (BIT(attr, 1)) iy = 15 - iy; - if (attr & 8) + if (BIT(attr, 3)) { int temp = ix; ix = iy; @@ -2661,8 +2661,8 @@ void namcos22_state::init_tables() for (int i = 0; i < 0x100000; i++) { int tile = m_texture_tilemap[i]; - int attr = m_texture_tileattr[i]; - if ((attr & 0x1) == 0) + const int attr = m_texture_tileattr[i]; + if (BIT(~attr, 0)) { tile = (tile & 0x3fff) | 0x8000; m_texture_tilemap[i] = tile; @@ -2707,9 +2707,9 @@ void namcos22_state::video_start() m_posirq_timer = timer_alloc(FUNC(namcos22_state::posirq_callback), this); m_mix_bitmap = std::make_unique(640, 480); - m_bgtilemap = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(*this, FUNC(namcos22_state::get_text_tile_info)), TILEMAP_SCAN_ROWS, 16, 16, 64, 64); - m_bgtilemap->set_scroll_rows(64 * 16); // fake - m_bgtilemap->set_transparent_pen(0xf); + m_text_tilemap = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(*this, FUNC(namcos22_state::get_text_tile_info)), TILEMAP_SCAN_ROWS, 16, 16, 64, 64); + m_text_tilemap->set_scroll_rows(64 * 16); // fake + m_text_tilemap->set_transparent_pen(0xf); m_gfxdecode->gfx(0)->set_source((u8 *)m_cgram.target());