mirror of
https://github.com/holub/mame
synced 2025-07-02 00:29:37 +03:00
sorcerer: fixed bugs with SNP handling.
This commit is contained in:
parent
c54f6940d5
commit
10a40a4c2d
@ -605,11 +605,12 @@ QUICKLOAD_LOAD_MEMBER(sorcerer_state::quickload_cb)
|
|||||||
return image_init_result::FAIL;
|
return image_init_result::FAIL;
|
||||||
}
|
}
|
||||||
|
|
||||||
u8 header[28];
|
|
||||||
|
|
||||||
/* get the header */
|
/* get the header */
|
||||||
|
u8 header[28];
|
||||||
image.fread( &header, sizeof(header));
|
image.fread( &header, sizeof(header));
|
||||||
|
|
||||||
|
logerror("SNP PC register = 0x%04x\n", header[26] | (header[27] << 8));
|
||||||
|
|
||||||
// write it to ram, and skip roms
|
// write it to ram, and skip roms
|
||||||
unsigned char s_byte;
|
unsigned char s_byte;
|
||||||
for (int i = 0; i < 0xe000; i++)
|
for (int i = 0; i < 0xe000; i++)
|
||||||
@ -658,6 +659,8 @@ QUICKLOAD_LOAD_MEMBER(sorcerer_state::quickload_cb)
|
|||||||
m_maincpu->set_state_int(Z80_IM, header[25]);
|
m_maincpu->set_state_int(Z80_IM, header[25]);
|
||||||
m_maincpu->set_pc(header[26] | (header[27] << 8));
|
m_maincpu->set_pc(header[26] | (header[27] << 8));
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
m_maincpu->set_pc(0xe000); // SNP destroys workspace, so do cold start.
|
||||||
}
|
}
|
||||||
|
|
||||||
return image_init_result::PASS;
|
return image_init_result::PASS;
|
||||||
|
Loading…
Reference in New Issue
Block a user