notaz.gp2x.de
/
picodrive.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
svp..
[picodrive.git]
/
Pico
/
Cart.c
diff --git
a/Pico/Cart.c
b/Pico/Cart.c
index
749d461
..
9a24d03
100644
(file)
--- a/
Pico/Cart.c
+++ b/
Pico/Cart.c
@@
-481,7
+481,7
@@
int PicoCartLoad(pm_file *f,unsigned char **prom,unsigned int *psize)
return 0;
\r
}
\r
\r
return 0;
\r
}
\r
\r
-// Insert
/remove
a cartridge:
\r
+// Insert a cartridge:
\r
int PicoCartInsert(unsigned char *rom,unsigned int romsize)
\r
{
\r
// notaz: add a 68k "jump one op back" opcode to the end of ROM.
\r
int PicoCartInsert(unsigned char *rom,unsigned int romsize)
\r
{
\r
// notaz: add a 68k "jump one op back" opcode to the end of ROM.
\r
@@
-493,15
+493,20
@@
int PicoCartInsert(unsigned char *rom,unsigned int romsize)
Pico.rom=rom;
\r
Pico.romsize=romsize;
\r
\r
Pico.rom=rom;
\r
Pico.romsize=romsize;
\r
\r
+ PicoMemResetHooks();
\r
+ PicoDmaHook = NULL;
\r
+ PicoResetHook = NULL;
\r
+ PicoLineHook = NULL;
\r
+
\r
+ if (!(PicoMCD & 1))
\r
+ PicoCartDetect();
\r
+
\r
// setup correct memory map for loaded ROM
\r
if (PicoMCD & 1)
\r
PicoMemSetupCD();
\r
else PicoMemSetup();
\r
PicoMemReset();
\r
\r
// setup correct memory map for loaded ROM
\r
if (PicoMCD & 1)
\r
PicoMemSetupCD();
\r
else PicoMemSetup();
\r
PicoMemReset();
\r
\r
- if (!(PicoMCD & 1))
\r
- PicoCartDetect();
\r
-
\r
return PicoReset(1);
\r
}
\r
\r
return PicoReset(1);
\r
}
\r
\r
@@
-632,5
+637,11
@@
void PicoCartDetect(void)
// Unusual region 'code'
\r
if (rom_strcmp(0x1f0, "EUROPE") == 0)
\r
*(int *) (Pico.rom+0x1f0) = 0x20204520;
\r
// Unusual region 'code'
\r
if (rom_strcmp(0x1f0, "EUROPE") == 0)
\r
*(int *) (Pico.rom+0x1f0) = 0x20204520;
\r
+
\r
+ // SVP detection
\r
+ if (name_cmp("Virtua Racing") == 0)
\r
+ {
\r
+ PicoSVPInit();
\r
+ }
\r
}
\r
\r
}
\r
\r