summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/video/x68k.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/video/x68k.cpp')
-rw-r--r--src/mame/video/x68k.cpp78
1 files changed, 38 insertions, 40 deletions
diff --git a/src/mame/video/x68k.cpp b/src/mame/video/x68k.cpp
index 170ba8f38da..661a16c55a5 100644
--- a/src/mame/video/x68k.cpp
+++ b/src/mame/video/x68k.cpp
@@ -51,7 +51,7 @@ rgb_t x68k_state::GGGGGRRRRRBBBBBI(uint32_t raw)
inline void x68k_state::plot_pixel(bitmap_rgb32 &bitmap, int x, int y, uint32_t color)
{
- bitmap.pix32(y, x) = (uint16_t)color;
+ bitmap.pix(y, x) = (uint16_t)color;
}
/*
bitmap_rgb32* ::x68k_get_gfx_page(int pri,int type)
@@ -219,7 +219,7 @@ void x68k_state::draw_text(bitmap_rgb32 &bitmap, int xscr, int yscr, rectangle r
+ (((m_tvram[loc+0x30000] >> bit) & 0x01) ? 8 : 0);
// Colour 0 is displayable if the text layer is at the priority level 2
if((m_pcgpalette->pen(colour) & 0xffffff) || ((m_video.reg[1] & 0x0c00) == 0x0800))
- bitmap.pix32(line, pixel) = m_pcgpalette->pen(colour);
+ bitmap.pix(line, pixel) = m_pcgpalette->pen(colour);
bit--;
if(bit < 0)
{
@@ -234,17 +234,15 @@ void x68k_state::draw_text(bitmap_rgb32 &bitmap, int xscr, int yscr, rectangle r
bool x68k_state::draw_gfx_scanline( bitmap_ind16 &bitmap, rectangle cliprect, uint8_t priority)
{
int pixel;
- int page;
uint32_t loc; // location in GVRAM
uint32_t lineoffset;
uint16_t xscr,yscr;
uint16_t colour = 0;
int shift;
- int scanline;
bool blend, ret = false;
uint16_t *pal = (uint16_t *)m_gfxpalette->basemem().base();
- for(scanline=cliprect.min_y;scanline<=cliprect.max_y;scanline++) // per scanline
+ for(int scanline=cliprect.min_y;scanline<=cliprect.max_y;scanline++) // per scanline
{
if(m_crtc->is_1024x1024()) // 1024x1024 "real" screen size - use 1024x1024 16-colour gfx layer
{
@@ -275,11 +273,11 @@ bool x68k_state::draw_gfx_scanline( bitmap_ind16 &bitmap, rectangle cliprect, ui
if(colour || (priority == 3))
{
if(((m_video.reg[2] & 0x1800) == 0x1000) && (colour & 1))
- m_special.pix16(scanline, pixel) = colour;
+ m_special.pix(scanline, pixel) = colour;
else
{
- bitmap.pix16(scanline, pixel) = colour;
- m_special.pix16(scanline, pixel) = 0;
+ bitmap.pix(scanline, pixel) = colour;
+ m_special.pix(scanline, pixel) = 0;
}
}
loc++;
@@ -291,7 +289,7 @@ bool x68k_state::draw_gfx_scanline( bitmap_ind16 &bitmap, rectangle cliprect, ui
{
if(m_video.reg[2] & (1 << priority))
{
- page = m_video.gfxlayer_pri[priority];
+ int page = m_video.gfxlayer_pri[priority];
// adjust for scroll registers
switch(m_video.reg[0] & 0x03)
{
@@ -317,23 +315,23 @@ bool x68k_state::draw_gfx_scanline( bitmap_ind16 &bitmap, rectangle cliprect, ui
{
if(ret)
{
- if(blend && bitmap.pix16(scanline, pixel))
- bitmap.pix16(scanline, pixel) = ((bitmap.pix16(scanline, pixel) >> 1) & 0x7bde) + ((pal[colour] >> 1) & 0x7bde) + 1;
+ if(blend && bitmap.pix(scanline, pixel))
+ bitmap.pix(scanline, pixel) = ((bitmap.pix(scanline, pixel) >> 1) & 0x7bde) + ((pal[colour] >> 1) & 0x7bde) + 1;
else
- bitmap.pix16(scanline, pixel) = (pal[colour] & 0xfffe) + blend;
+ bitmap.pix(scanline, pixel) = (pal[colour] & 0xfffe) + blend;
}
else if(((m_video.reg[2] & 0x1800) == 0x1000) && (colour & 1))
- m_special.pix16(scanline, pixel) = colour;
+ m_special.pix(scanline, pixel) = colour;
else
{
- m_special.pix16(scanline, pixel) = 0;
- bitmap.pix16(scanline, pixel) = colour;
+ m_special.pix(scanline, pixel) = 0;
+ bitmap.pix(scanline, pixel) = colour;
}
}
- else if(((m_video.reg[2] & 0x1800) == 0x1000) && m_special.pix16(scanline, pixel))
+ else if(((m_video.reg[2] & 0x1800) == 0x1000) && m_special.pix(scanline, pixel))
{
- bitmap.pix16(scanline, pixel) = m_special.pix16(scanline, pixel);
- m_special.pix16(scanline, pixel) = 0;
+ bitmap.pix(scanline, pixel) = m_special.pix(scanline, pixel);
+ m_special.pix(scanline, pixel) = 0;
}
loc++;
loc &= 0x1ff;
@@ -363,23 +361,23 @@ bool x68k_state::draw_gfx_scanline( bitmap_ind16 &bitmap, rectangle cliprect, ui
{
if(ret)
{
- if(blend && bitmap.pix16(scanline, pixel))
- bitmap.pix16(scanline, pixel) = ((bitmap.pix16(scanline, pixel) >> 1) & 0x7bde) + ((pal[colour] >> 1) & 0x7bde) + 1;
+ if(blend && bitmap.pix(scanline, pixel))
+ bitmap.pix(scanline, pixel) = ((bitmap.pix(scanline, pixel) >> 1) & 0x7bde) + ((pal[colour] >> 1) & 0x7bde) + 1;
else
- bitmap.pix16(scanline, pixel) = (pal[colour] & 0xfffe) + blend;
+ bitmap.pix(scanline, pixel) = (pal[colour] & 0xfffe) + blend;
}
else if(((m_video.reg[2] & 0x1800) == 0x1000) && (colour & 1))
- m_special.pix16(scanline, pixel) = colour;
+ m_special.pix(scanline, pixel) = colour;
else
{
- bitmap.pix16(scanline, pixel) = colour;
- m_special.pix16(scanline, pixel) = 0;
+ bitmap.pix(scanline, pixel) = colour;
+ m_special.pix(scanline, pixel) = 0;
}
}
- else if(((m_video.reg[2] & 0x1800) == 0x1000) && m_special.pix16(scanline, pixel))
+ else if(((m_video.reg[2] & 0x1800) == 0x1000) && m_special.pix(scanline, pixel))
{
- bitmap.pix16(scanline, pixel) = m_special.pix16(scanline, pixel);
- m_special.pix16(scanline, pixel) = 0;
+ bitmap.pix(scanline, pixel) = m_special.pix(scanline, pixel);
+ m_special.pix(scanline, pixel) = 0;
}
loc++;
loc &= 0x1ff;
@@ -395,7 +393,7 @@ bool x68k_state::draw_gfx_scanline( bitmap_ind16 &bitmap, rectangle cliprect, ui
{
colour = m_gvram[lineoffset + loc];
if(colour || (priority == 3))
- bitmap.pix16(scanline, pixel) = colour;
+ bitmap.pix(scanline, pixel) = colour;
loc++;
loc &= 0x1ff;
}
@@ -435,13 +433,13 @@ void x68k_state::draw_gfx(bitmap_rgb32 &bitmap,rectangle cliprect)
{
if((m_video.reg[0] & 0x03) == 3)
{
- colour = m_gfxbitmap.pix16(scanline, pixel);
+ colour = m_gfxbitmap.pix(scanline, pixel);
if(colour || (m_video.gfx_pri == 2))
- bitmap.pix32(scanline, pixel) = GGGGGRRRRRBBBBBI(colour);
+ bitmap.pix(scanline, pixel) = GGGGGRRRRRBBBBBI(colour);
}
else if(gfxblend)
{
- colour = m_gfxbitmap.pix16(scanline, pixel);
+ colour = m_gfxbitmap.pix(scanline, pixel);
if(((m_video.reg[2] & 0x1900) == 0x1900) && (m_video.gfx_pri != 2) && (colour & 1))
blend = true;
else
@@ -449,14 +447,14 @@ void x68k_state::draw_gfx(bitmap_rgb32 &bitmap,rectangle cliprect)
if(colour || (m_video.gfx_pri == 2))
{
if(blend)
- bitmap.pix32(scanline, pixel) = ((bitmap.pix32(scanline, pixel) >> 1) & 0xff7f7f7f) + ((pal555(colour, 6, 11, 1) >> 1) & 0x7f7f7f);
+ bitmap.pix(scanline, pixel) = ((bitmap.pix(scanline, pixel) >> 1) & 0xff7f7f7f) + ((pal555(colour, 6, 11, 1) >> 1) & 0x7f7f7f);
else
- bitmap.pix32(scanline, pixel) = pal555(colour, 6, 11, 1);
+ bitmap.pix(scanline, pixel) = pal555(colour, 6, 11, 1);
}
}
else
{
- colour = m_gfxbitmap.pix16(scanline, pixel) & 0xff;
+ colour = m_gfxbitmap.pix(scanline, pixel) & 0xff;
if(((m_video.reg[2] & 0x1900) == 0x1900) && (m_video.gfx_pri != 2) && (colour & 1))
{
blend = true;
@@ -467,9 +465,9 @@ void x68k_state::draw_gfx(bitmap_rgb32 &bitmap,rectangle cliprect)
if((colour && (m_gfxpalette->pen(colour) & 0xffffff)) || (m_video.gfx_pri == 2))
{
if(blend)
- bitmap.pix32(scanline, pixel) = ((bitmap.pix32(scanline, pixel) >> 1) & 0xff7f7f7f) + ((m_gfxpalette->pen(colour) >> 1) & 0x7f7f7f);
+ bitmap.pix(scanline, pixel) = ((bitmap.pix(scanline, pixel) >> 1) & 0xff7f7f7f) + ((m_gfxpalette->pen(colour) >> 1) & 0x7f7f7f);
else
- bitmap.pix32(scanline, pixel) = m_gfxpalette->pen(colour);
+ bitmap.pix(scanline, pixel) = m_gfxpalette->pen(colour);
}
}
}
@@ -733,9 +731,9 @@ uint32_t x68k_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap,
{
for(pixel=m_crtc->hbegin();pixel<=m_crtc->hend();pixel++)
{
- uint8_t colour = m_pcgbitmap.pix16(scanline, pixel) & 0xff;
+ uint8_t colour = m_pcgbitmap.pix(scanline, pixel) & 0xff;
if((colour && (m_pcgpalette->pen(colour) & 0xffffff)) || ((m_video.reg[1] & 0x3000) == 0x2000))
- bitmap.pix32(scanline, pixel) = m_pcgpalette->pen(colour);
+ bitmap.pix(scanline, pixel) = m_pcgpalette->pen(colour);
}
}
}
@@ -757,9 +755,9 @@ uint32_t x68k_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap,
{
for(pixel=m_crtc->hbegin();pixel<=m_crtc->hend();pixel++)
{
- colour = m_special.pix16(scanline, pixel) & 0xff;
+ colour = m_special.pix(scanline, pixel) & 0xff;
if(colour)
- bitmap.pix32(scanline, pixel) = m_gfxpalette->pen(colour & ~1);
+ bitmap.pix(scanline, pixel) = m_gfxpalette->pen(colour & ~1);
}
}
}