summaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
author Angelo Salese <angelosa@users.noreply.github.com>2013-01-07 17:22:04 +0000
committer Angelo Salese <angelosa@users.noreply.github.com>2013-01-07 17:22:04 +0000
commit32b4073ad924613d6cce4c6daf94b375453e6b6f (patch)
tree9594773d59dd9ad94df73e2d25a3997f3d0a8d89 /src
parentdfb8ddd385b3f32d66bf42163118d16d3c13c504 (diff)
Notes update
Diffstat (limited to 'src')
-rw-r--r--src/mess/machine/pce.c25
1 files changed, 4 insertions, 21 deletions
diff --git a/src/mess/machine/pce.c b/src/mess/machine/pce.c
index 2c3382ba1af..3c209f9cbb3 100644
--- a/src/mess/machine/pce.c
+++ b/src/mess/machine/pce.c
@@ -6,27 +6,10 @@ TODO:
- Dragon Ball Z: ADPCM dies after the first upload;
- Dragon Slayer - The Legend of Heroes: black screen;
- Mirai Shonen Conan: dies at new game selection;
-- Prince of Persia: black screen;
-Sequence in read_6 command is:
-00000bc1 00000002
-00000bc3 00000010
-00000cf4 00000020
-00001444 00000001
-...
-Ootake does:
-00000ca2 00000002
-00000ca4 00000010
-00000cf4 00000020
-00001444 00000001
-First two values are taken from get dir info command, that's why
-they don't match with our emulation. Program data from 0x1444
-is written to work RAM 0x104800 (so, wpset 0x104800,1,w or bp 4800 shows
-what's the data executed)
-
-- Snatcher: black screen after Konami logo;
+- Snatcher: black screen after Konami logo, tries set up CD-DA
+ while transferring data?
- Steam Heart's: needs transfer ready irq to get past the
- gameplay hang, don't know exactly where to
- put it;
+ gameplay hang, don't know exactly when it should fire
- Steam Heart's: bad ADPCM irq, dialogue is cutted due of it;
=============================================================
@@ -523,7 +506,7 @@ static void pce_cd_read_6( running_machine &machine )
{
pce_state *state = machine.driver_data<pce_state>();
pce_cd_t &pce_cd = state->m_cd;
- UINT32 frame = ( ( pce_cd.command_buffer[1] ) << 16 ) | ( pce_cd.command_buffer[2] << 8 ) | pce_cd.command_buffer[3];
+ UINT32 frame = ( ( pce_cd.command_buffer[1] & 0x1f ) << 16 ) | ( pce_cd.command_buffer[2] << 8 ) | pce_cd.command_buffer[3];
UINT32 frame_count = pce_cd.command_buffer[4];
printf("%08x %08x\n",frame,frame_count);