notaz.gp2x.de
/
picodrive.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
hint-less mode updated for SVP, state load callback, etc
[picodrive.git]
/
Pico
/
carthw
/
svp
/
compiler.c
diff --git
a/Pico/carthw/svp/compiler.c
b/Pico/carthw/svp/compiler.c
index
63bc9ab
..
f89ad95
100644
(file)
--- a/
Pico/carthw/svp/compiler.c
+++ b/
Pico/carthw/svp/compiler.c
@@
-1629,6
+1629,12
@@
void *ssp_translate_block(int pc)
// -----------------------------------------------------
// -----------------------------------------------------
+static void ssp1601_state_load(void)
+{
+ ssp->drc.iram_dirty = 1;
+ ssp->drc.iram_context = 0;
+}
+
int ssp1601_dyn_startup(void)
{
memset(tcache, 0, TCACHE_SIZE);
int ssp1601_dyn_startup(void)
{
memset(tcache, 0, TCACHE_SIZE);
@@
-1637,6
+1643,8
@@
int ssp1601_dyn_startup(void)
tcache_ptr = tcache;
*tcache_ptr++ = 0xffffffff;
tcache_ptr = tcache;
*tcache_ptr++ = 0xffffffff;
+ PicoLoadStateHook = ssp1601_state_load;
+
#ifdef ARM
// hle'd blocks
block_table[0x400] = (void *) ssp_hle_800;
#ifdef ARM
// hle'd blocks
block_table[0x400] = (void *) ssp_hle_800;
@@
-1664,6
+1672,11
@@
void ssp1601_dyn_run(int cycles)
{
if (ssp->emu_status & SSP_WAIT_MASK) return;
{
if (ssp->emu_status & SSP_WAIT_MASK) return;
+#ifdef DUMP_BLOCK
+ ssp_translate_block(DUMP_BLOCK >> 1);
+#endif
+#ifdef ARM
ssp_drc_entry(cycles);
ssp_drc_entry(cycles);
+#endif
}
}