k057714: add double height characters (nw)
This commit is contained in:
parent
99353dc95f
commit
210a006833
@ -230,7 +230,8 @@ WRITE32_MEMBER(k057714_device::write)
|
|||||||
// execute when filled
|
// execute when filled
|
||||||
if (m_command_fifo1_ptr >= 4)
|
if (m_command_fifo1_ptr >= 4)
|
||||||
{
|
{
|
||||||
printf("GCU FIFO1 exec: %08X %08X %08X %08X\n", m_command_fifo1[0], m_command_fifo1[1], m_command_fifo1[2], m_command_fifo1[3]);
|
//printf("GCU FIFO1 exec: %08X %08X %08X %08X\n", m_command_fifo1[0], m_command_fifo1[1], m_command_fifo1[2], m_command_fifo1[3]);
|
||||||
|
execute_command(m_command_fifo1);
|
||||||
m_command_fifo1_ptr = 0;
|
m_command_fifo1_ptr = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -504,6 +505,7 @@ void k057714_device::draw_character(UINT32 *cmd)
|
|||||||
|
|
||||||
// 0x01: -------- -------- ------xx xxxxxxxx character x
|
// 0x01: -------- -------- ------xx xxxxxxxx character x
|
||||||
// 0x01: -------- ----xxxx xxxxxx-- -------- character y
|
// 0x01: -------- ----xxxx xxxxxx-- -------- character y
|
||||||
|
// 0x01: -------x -------- -------- -------- double height
|
||||||
|
|
||||||
// 0x02: xxxxxxxx xxxxxxxx -------- -------- color 0
|
// 0x02: xxxxxxxx xxxxxxxx -------- -------- color 0
|
||||||
// 0x02: -------- -------- xxxxxxxx xxxxxxxx color 1
|
// 0x02: -------- -------- xxxxxxxx xxxxxxxx color 1
|
||||||
@ -516,6 +518,7 @@ void k057714_device::draw_character(UINT32 *cmd)
|
|||||||
UINT32 address = cmd[0] & 0xffffff;
|
UINT32 address = cmd[0] & 0xffffff;
|
||||||
UINT16 color[4];
|
UINT16 color[4];
|
||||||
bool relative_coords = (cmd[0] & 0x10000000) ? true : false;
|
bool relative_coords = (cmd[0] & 0x10000000) ? true : false;
|
||||||
|
bool double_height = (cmd[1] & 0x01000000) ? true : false;
|
||||||
|
|
||||||
if (relative_coords)
|
if (relative_coords)
|
||||||
{
|
{
|
||||||
@ -534,8 +537,9 @@ void k057714_device::draw_character(UINT32 *cmd)
|
|||||||
|
|
||||||
UINT16 *vram16 = (UINT16*)m_vram;
|
UINT16 *vram16 = (UINT16*)m_vram;
|
||||||
int fb_pitch = 1024;
|
int fb_pitch = 1024;
|
||||||
|
int height = double_height ? 16 : 8;
|
||||||
|
|
||||||
for (int j=0; j < 8; j++)
|
for (int j=0; j < height; j++)
|
||||||
{
|
{
|
||||||
UINT32 fbaddr = (y+j) * fb_pitch;
|
UINT32 fbaddr = (y+j) * fb_pitch;
|
||||||
UINT16 line = vram16[address ^ NATIVE_ENDIAN_VALUE_LE_BE(1,0)];
|
UINT16 line = vram16[address ^ NATIVE_ENDIAN_VALUE_LE_BE(1,0)];
|
||||||
|
Loading…
Reference in New Issue
Block a user