summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/panicr.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/panicr.cpp')
-rw-r--r--src/mame/drivers/panicr.cpp67
1 files changed, 26 insertions, 41 deletions
diff --git a/src/mame/drivers/panicr.cpp b/src/mame/drivers/panicr.cpp
index c4979335f9f..d0d0e9adc69 100644
--- a/src/mame/drivers/panicr.cpp
+++ b/src/mame/drivers/panicr.cpp
@@ -116,7 +116,7 @@ public:
TILE_GET_INFO_MEMBER(get_infotile_info_2);
TILE_GET_INFO_MEMBER(get_txttile_info);
- DECLARE_DRIVER_INIT(panicr);
+ void init_panicr();
virtual void video_start() override;
DECLARE_PALETTE_INIT(panicr);
@@ -719,23 +719,17 @@ ROM_START( panicrg ) /* Distributed by TV-Tuning Videospiele GMBH */
ROM_END
-DRIVER_INIT_MEMBER(panicr_state,panicr)
+void panicr_state::init_panicr()
{
std::vector<uint8_t> buf(0x80000);
- uint8_t *rom;
- int size;
- int i,j;
- rom = memregion("gfx1")->base();
- size = memregion("gfx1")->bytes();
+ uint8_t *rom = memregion("gfx1")->base();
+ int size = memregion("gfx1")->bytes();
// text data lines
- for (i = 0;i < size/2;i++)
+ for (int i = 0; i < size / 2; i++)
{
- int w1;
-
- w1 = (rom[i + 0*size/2] << 8) + rom[i + 1*size/2];
-
+ int w1 = (rom[i + 0*size/2] << 8) + rom[i + 1*size/2];
w1 = bitswap<16>(w1, 9,12,7,3, 8,13,6,2, 11,14,1,5, 10,15,4,0);
buf[i + 0*size/2] = w1 >> 8;
@@ -743,22 +737,19 @@ DRIVER_INIT_MEMBER(panicr_state,panicr)
}
// text address lines
- for (i = 0;i < size;i++)
+ for (int i = 0; i < size; i++)
{
rom[i] = buf[bitswap<24>(i,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,8,7,6, 2,3,1,0,5,4)];
}
-
rom = memregion("gfx2")->base();
size = memregion("gfx2")->bytes();
// tiles data lines
- for (i = 0;i < size/4;i++)
+ for (int i = 0; i < size / 4; i++)
{
- int w1,w2;
-
- w1 = (rom[i + 0*size/4] << 8) + rom[i + 3*size/4];
- w2 = (rom[i + 1*size/4] << 8) + rom[i + 2*size/4];
+ int w1 = (rom[i + 0*size/4] << 8) + rom[i + 3*size/4];
+ int w2 = (rom[i + 1*size/4] << 8) + rom[i + 2*size/4];
w1 = bitswap<16>(w1, 14,12,11,9, 3,2,1,0, 10,15,13,8, 7,6,5,4);
w2 = bitswap<16>(w2, 3,13,15,4, 12,2,5,11, 14,6,1,10, 8,7,9,0);
@@ -770,32 +761,26 @@ DRIVER_INIT_MEMBER(panicr_state,panicr)
}
// tiles address lines
- for (i = 0;i < size;i++)
+ for (int i = 0; i < size; i++)
{
rom[i] = buf[bitswap<24>(i,23,22,21,20,19,18,17,16,15,14,13,12, 5,4,3,2, 11,10,9,8,7,6, 0,1)];
}
-
rom = memregion("gfx3")->base();
size = memregion("gfx3")->bytes();
// sprites data lines
- for (i = 0;i < size/2;i++)
+ for (int i = 0; i < size / 2; i++)
{
- int w1;
-
- w1 = (rom[i + 0*size/2] << 8) + rom[i + 1*size/2];
-
-
+ int w1 = (rom[i + 0*size/2] << 8) + rom[i + 1*size/2];
w1 = bitswap<16>(w1, 11,5,7,12, 4,10,13,3, 6,14,9,2, 0,15,1,8);
-
buf[i + 0*size/2] = w1 >> 8;
buf[i + 1*size/2] = w1 & 0xff;
}
// sprites address lines
- for (i = 0;i < size;i++)
+ for (int i = 0; i < size; i++)
{
rom[i] = buf[i];
}
@@ -803,30 +788,30 @@ DRIVER_INIT_MEMBER(panicr_state,panicr)
//rearrange bg tilemaps a bit....
rom = memregion("user1")->base();
size = memregion("user1")->bytes();
- memcpy(&buf[0],rom, size);
+ memcpy(&buf[0], rom, size);
- for(j=0;j<16;j++)
+ for (int j = 0; j < 16; j++)
{
- for (i = 0;i < size/16;i+=8)
+ for (int i = 0; i < size / 16; i += 8)
{
- memcpy(&rom[i+(size/16)*j],&buf[i*16+8*j],8);
+ memcpy(&rom[i + (size / 16) * j], &buf[i * 16 + 8 * j], 8);
}
}
rom = memregion("user2")->base();
size = memregion("user2")->bytes();
- memcpy(&buf[0],rom, size);
+ memcpy(&buf[0], rom, size);
- for(j=0;j<16;j++)
+ for (int j = 0; j < 16; j++)
{
- for (i = 0;i < size/16;i+=8)
+ for (int i = 0; i < size / 16; i += 8)
{
- memcpy(&rom[i+(size/16)*j],&buf[i*16+8*j],8);
+ memcpy(&rom[i + (size / 16) * j], &buf[i * 16 + 8 * j], 8);
}
}
- m_tempbitmap_1 = std::make_unique<bitmap_ind16>(256,256);
- m_temprender = std::make_unique<bitmap_ind16>(256,256);
+ m_tempbitmap_1 = std::make_unique<bitmap_ind16>(256, 256);
+ m_temprender = std::make_unique<bitmap_ind16>(256, 256);
m_tempbitmap_clip.set(0, 256-1, 0, 256-1);
m_tempbitmap_1->fill(0, m_tempbitmap_clip);
@@ -834,5 +819,5 @@ DRIVER_INIT_MEMBER(panicr_state,panicr)
}
-GAME( 1986, panicr, 0, panicr, panicr, panicr_state, panicr, ROT270, "Seibu Kaihatsu (Taito license)", "Panic Road (Japan)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE | MACHINE_NOT_WORKING )
-GAME( 1986, panicrg, panicr, panicr, panicr, panicr_state, panicr, ROT270, "Seibu Kaihatsu (Tuning license)", "Panic Road (Germany)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE | MACHINE_NOT_WORKING )
+GAME( 1986, panicr, 0, panicr, panicr, panicr_state, init_panicr, ROT270, "Seibu Kaihatsu (Taito license)", "Panic Road (Japan)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE | MACHINE_NOT_WORKING )
+GAME( 1986, panicrg, panicr, panicr, panicr, panicr_state, init_panicr, ROT270, "Seibu Kaihatsu (Tuning license)", "Panic Road (Germany)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE | MACHINE_NOT_WORKING )