mirror of
https://github.com/holub/mame
synced 2025-04-25 09:50:04 +03:00
firebeat: temporary hack to switch display lists correctly for the ParaParaParadise games (nw)
This commit is contained in:
parent
d0282eec2a
commit
004b5f52fa
@ -126,7 +126,7 @@
|
|||||||
at any point during the frame. It's mainly used to call display lists, which is where
|
at any point during the frame. It's mainly used to call display lists, which is where
|
||||||
the display list addresses come from. Some games use it to send other commands, so
|
the display list addresses come from. Some games use it to send other commands, so
|
||||||
it appears to be a 4-dword FIFO or something along those lines.
|
it appears to be a 4-dword FIFO or something along those lines.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "emu.h"
|
#include "emu.h"
|
||||||
#include "cpu/m68000/m68000.h"
|
#include "cpu/m68000/m68000.h"
|
||||||
@ -729,7 +729,29 @@ static void GCU_w(running_machine &machine, int chip, UINT32 offset, UINT32 data
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
case 0x40: /* ??? */
|
case 0x40: /* framebuffer config */
|
||||||
|
// HACK: switch display lists at the right times for the ParaParaParadise games until we
|
||||||
|
// do the video emulation properly
|
||||||
|
if (mame_strnicmp(machine.system().name, "pp", 2) == 0)
|
||||||
|
{
|
||||||
|
switch (data)
|
||||||
|
{
|
||||||
|
case 0x00080000: // post
|
||||||
|
state->m_layer = 0;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 0x00008400: // startup tests
|
||||||
|
if (state->m_layer != 2)
|
||||||
|
{
|
||||||
|
state->m_layer = 1;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 0x00068400: // game & svc menu
|
||||||
|
state->m_layer = 2;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
//case 0x44: /* ??? */
|
//case 0x44: /* ??? */
|
||||||
@ -2014,6 +2036,8 @@ MACHINE_RESET_MEMBER(firebeat_state,firebeat)
|
|||||||
sound[i] = m_flash[1]->read(i);
|
sound[i] = m_flash[1]->read(i);
|
||||||
sound[i+0x200000] = m_flash[2]->read(i);
|
sound[i+0x200000] = m_flash[2]->read(i);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
m_layer = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
const rtc65271_interface firebeat_rtc =
|
const rtc65271_interface firebeat_rtc =
|
||||||
|
Loading…
Reference in New Issue
Block a user