summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/galpani3.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/galpani3.cpp')
-rw-r--r--src/mame/drivers/galpani3.cpp207
1 files changed, 102 insertions, 105 deletions
diff --git a/src/mame/drivers/galpani3.cpp b/src/mame/drivers/galpani3.cpp
index 0ffb68cd319..6e56e73c5db 100644
--- a/src/mame/drivers/galpani3.cpp
+++ b/src/mame/drivers/galpani3.cpp
@@ -190,7 +190,7 @@ void galpani3_state::video_start()
uint32_t galpani3_state::screen_update_galpani3(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{
- const pen_t *paldata = m_palette->pens();
+ pen_t const *const paldata = m_palette->pens();
bitmap.fill(0, cliprect);
@@ -198,137 +198,134 @@ uint32_t galpani3_state::screen_update_galpani3(screen_device &screen, bitmap_rg
// popmessage("%02x %02x", m_grap2[0]->m_framebuffer_bright2, m_grap2[1]->m_framebuffer_bright2);
+ for (int drawy=cliprect.min_y;drawy<=cliprect.max_y;drawy++)
{
- int drawy, drawx;
- for (drawy=cliprect.min_y;drawy<=cliprect.max_y;drawy++)
- {
- uint16_t* sprline = &m_sprite_bitmap.pix16(drawy);
- uint16_t* srcline1 = m_grap2[0]->m_framebuffer.get() + ((drawy+m_grap2[0]->m_framebuffer_scrolly+11)&0x1ff) * 0x200;
- uint16_t* srcline2 = m_grap2[1]->m_framebuffer.get() + ((drawy+m_grap2[1]->m_framebuffer_scrolly+11)&0x1ff) * 0x200;
- uint16_t* srcline3 = m_grap2[2]->m_framebuffer.get() + ((drawy+m_grap2[2]->m_framebuffer_scrolly+11)&0x1ff) * 0x200;
+ uint16_t const *const sprline = &m_sprite_bitmap.pix(drawy);
+ uint16_t const *const srcline1 = m_grap2[0]->m_framebuffer.get() + ((drawy+m_grap2[0]->m_framebuffer_scrolly+11)&0x1ff) * 0x200;
+ uint16_t const *const srcline2 = m_grap2[1]->m_framebuffer.get() + ((drawy+m_grap2[1]->m_framebuffer_scrolly+11)&0x1ff) * 0x200;
+ uint16_t const *const srcline3 = m_grap2[2]->m_framebuffer.get() + ((drawy+m_grap2[2]->m_framebuffer_scrolly+11)&0x1ff) * 0x200;
- uint16_t* priline = m_priority_buffer + ((drawy+m_priority_buffer_scrolly+11)&0x1ff) * 0x200;
+ uint16_t const *const priline = m_priority_buffer + ((drawy+m_priority_buffer_scrolly+11)&0x1ff) * 0x200;
- uint32_t* dst = &bitmap.pix32(drawy & 0x3ff);
+ uint32_t *const dst = &bitmap.pix(drawy & 0x3ff);
- for (drawx=cliprect.min_x;drawx<=cliprect.max_x;drawx++)
- {
- int sproffs = drawx & 0x3ff;
- int srcoffs1 = (drawx+m_grap2[0]->m_framebuffer_scrollx+67)&0x1ff;
- int srcoffs2 = (drawx+m_grap2[1]->m_framebuffer_scrollx+67)&0x1ff;
- int srcoffs3 = (drawx+m_grap2[2]->m_framebuffer_scrollx+67)&0x1ff;
+ for (int drawx=cliprect.min_x;drawx<=cliprect.max_x;drawx++)
+ {
+ int sproffs = drawx & 0x3ff;
+ int srcoffs1 = (drawx+m_grap2[0]->m_framebuffer_scrollx+67)&0x1ff;
+ int srcoffs2 = (drawx+m_grap2[1]->m_framebuffer_scrollx+67)&0x1ff;
+ int srcoffs3 = (drawx+m_grap2[2]->m_framebuffer_scrollx+67)&0x1ff;
- int prioffs = (drawx+m_priority_buffer_scrollx+66)&0x1ff;
+ int prioffs = (drawx+m_priority_buffer_scrollx+66)&0x1ff;
- uint16_t sprdat = sprline[sproffs];
- uint8_t dat1 = srcline1[srcoffs1];
- uint8_t dat2 = srcline2[srcoffs2];
- uint8_t dat3 = srcline3[srcoffs3];
+ uint16_t sprdat = sprline[sproffs];
+ uint8_t dat1 = srcline1[srcoffs1];
+ uint8_t dat2 = srcline2[srcoffs2];
+ uint8_t dat3 = srcline3[srcoffs3];
- uint8_t pridat = priline[prioffs];
+ uint8_t pridat = priline[prioffs];
- // TODO : Verify priorities, blendings from real PCB.
- if (pridat==0x0f) // relates to the area you've drawn over
+ // TODO : Verify priorities, blendings from real PCB.
+ if (pridat==0x0f) // relates to the area you've drawn over
+ {
+ SPRITE_DRAW_PIXEL(0x0000);
+ if (m_grap2[2]->m_framebuffer_enable)
{
- SPRITE_DRAW_PIXEL(0x0000);
- if (m_grap2[2]->m_framebuffer_enable)
- {
- FB_DRAW_PIXEL(2, dat3);
- }
- SPRITE_DRAW_PIXEL(0x4000);
- if (dat1 && m_grap2[0]->m_framebuffer_enable)
- {
- FB_DRAW_PIXEL(0, dat1);
- }
- SPRITE_DRAW_PIXEL(0x8000);
- if (dat2 && m_grap2[1]->m_framebuffer_enable)
- {
- FB_DRAW_PIXEL(1, dat2);
- }
- SPRITE_DRAW_PIXEL(0xc000);
+ FB_DRAW_PIXEL(2, dat3);
}
- else if (pridat==0xcf) // the girl
+ SPRITE_DRAW_PIXEL(0x4000);
+ if (dat1 && m_grap2[0]->m_framebuffer_enable)
{
- SPRITE_DRAW_PIXEL(0x0000);
- if (m_grap2[0]->m_framebuffer_enable)
- {
- FB_DRAW_PIXEL(0, 0x100);
- }
- SPRITE_DRAW_PIXEL(0x4000);
- if (m_grap2[1]->m_framebuffer_enable)
- {
- FB_DRAW_PIXEL(1, 0x100);
- }
- SPRITE_DRAW_PIXEL(0x8000);
- if (dat3 && m_grap2[2]->m_framebuffer_enable)
- {
- FB_DRAW_PIXEL(2, dat3);
- }
- SPRITE_DRAW_PIXEL(0xc000);
+ FB_DRAW_PIXEL(0, dat1);
}
- else if (pridat==0x30) // during the 'gals boxes' on the intro
+ SPRITE_DRAW_PIXEL(0x8000);
+ if (dat2 && m_grap2[1]->m_framebuffer_enable)
{
- SPRITE_DRAW_PIXEL(0x0000);
- if (m_grap2[1]->m_framebuffer_enable) // TODO : Opaqued and Swapped order?
- {
- FB_DRAW_PIXEL(1, dat2);
- }
- SPRITE_DRAW_PIXEL(0x4000);
- if (dat1 && m_grap2[0]->m_framebuffer_enable)
- {
- FB_DRAW_PIXEL(0, dat1);
- }
- SPRITE_DRAW_PIXEL(0x8000);
- if (dat3 && m_grap2[2]->m_framebuffer_enable)
- {
- FB_DRAW_PIXEL(2, dat3);
- }
- SPRITE_DRAW_PIXEL(0xc000);
+ FB_DRAW_PIXEL(1, dat2);
}
- else
+ SPRITE_DRAW_PIXEL(0xc000);
+ }
+ else if (pridat==0xcf) // the girl
+ {
+ SPRITE_DRAW_PIXEL(0x0000);
+ if (m_grap2[0]->m_framebuffer_enable)
{
- SPRITE_DRAW_PIXEL(0x0000);
- if (m_grap2[0]->m_framebuffer_enable) // TODO : Opaque drawing 1st framebuffer in real PCB?
- {
- FB_DRAW_PIXEL(0, dat1);
- }
- SPRITE_DRAW_PIXEL(0x4000);
- if (dat2 && m_grap2[1]->m_framebuffer_enable)
- {
- FB_DRAW_PIXEL(1, dat2);
- }
- SPRITE_DRAW_PIXEL(0x8000);
- if (dat3 && m_grap2[2]->m_framebuffer_enable)
- {
- FB_DRAW_PIXEL(2, dat3);
- }
- SPRITE_DRAW_PIXEL(0xc000);
+ FB_DRAW_PIXEL(0, 0x100);
}
-
- /*
- else if (pridat==0x2f) // area outside of the girl
+ SPRITE_DRAW_PIXEL(0x4000);
+ if (m_grap2[1]->m_framebuffer_enable)
{
- //dst[drawx] = machine().rand()&0x3fff;
+ FB_DRAW_PIXEL(1, 0x100);
}
-
- else if (pridat==0x00) // the initial line / box that gets drawn
+ SPRITE_DRAW_PIXEL(0x8000);
+ if (dat3 && m_grap2[2]->m_framebuffer_enable)
+ {
+ FB_DRAW_PIXEL(2, dat3);
+ }
+ SPRITE_DRAW_PIXEL(0xc000);
+ }
+ else if (pridat==0x30) // during the 'gals boxes' on the intro
+ {
+ SPRITE_DRAW_PIXEL(0x0000);
+ if (m_grap2[1]->m_framebuffer_enable) // TODO : Opaqued and Swapped order?
+ {
+ FB_DRAW_PIXEL(1, dat2);
+ }
+ SPRITE_DRAW_PIXEL(0x4000);
+ if (dat1 && m_grap2[0]->m_framebuffer_enable)
+ {
+ FB_DRAW_PIXEL(0, dat1);
+ }
+ SPRITE_DRAW_PIXEL(0x8000);
+ if (dat3 && m_grap2[2]->m_framebuffer_enable)
{
- //dst[drawx] = machine().rand()&0x3fff;
+ FB_DRAW_PIXEL(2, dat3);
}
- else if (pridat==0x30) // during the 'gals boxes' on the intro
+ SPRITE_DRAW_PIXEL(0xc000);
+ }
+ else
+ {
+ SPRITE_DRAW_PIXEL(0x0000);
+ if (m_grap2[0]->m_framebuffer_enable) // TODO : Opaque drawing 1st framebuffer in real PCB?
{
- //dst[drawx] = machine().rand()&0x3fff;
+ FB_DRAW_PIXEL(0, dat1);
}
- else if (pridat==0x0c) // 'nice' at end of level
+ SPRITE_DRAW_PIXEL(0x4000);
+ if (dat2 && m_grap2[1]->m_framebuffer_enable)
{
- //dst[drawx] = machine().rand()&0x3fff;
+ FB_DRAW_PIXEL(1, dat2);
}
- else
+ SPRITE_DRAW_PIXEL(0x8000);
+ if (dat3 && m_grap2[2]->m_framebuffer_enable)
{
- //printf("%02x, ",pridat);
+ FB_DRAW_PIXEL(2, dat3);
}
- */
+ SPRITE_DRAW_PIXEL(0xc000);
+ }
+
+ /*
+ else if (pridat==0x2f) // area outside of the girl
+ {
+ //dst[drawx] = machine().rand()&0x3fff;
+ }
+
+ else if (pridat==0x00) // the initial line / box that gets drawn
+ {
+ //dst[drawx] = machine().rand()&0x3fff;
+ }
+ else if (pridat==0x30) // during the 'gals boxes' on the intro
+ {
+ //dst[drawx] = machine().rand()&0x3fff;
+ }
+ else if (pridat==0x0c) // 'nice' at end of level
+ {
+ //dst[drawx] = machine().rand()&0x3fff;
+ }
+ else
+ {
+ //printf("%02x, ",pridat);
}
+ */
}
}
return 0;