mirror of
https://github.com/FunKey-Project/picodrive-irixxxx.git
synced 2026-05-05 20:33:24 +02:00
new memory handling, but asm and mappers need update.
Some cleanup and magic bit removal as a bonus. git-svn-id: file:///home/notaz/opt/svn/PicoDrive@768 be3aeb3a-fb24-0410-a615-afba39da0efa
This commit is contained in:
@@ -273,11 +273,11 @@ readend:
|
||||
if (PicoAHW & PAHW_MCD)
|
||||
{
|
||||
/* after load events */
|
||||
if (Pico_mcd->s68k_regs[3]&4) // 1M mode?
|
||||
if (Pico_mcd->s68k_regs[3] & 4) // 1M mode?
|
||||
wram_2M_to_1M(Pico_mcd->word_ram2M);
|
||||
PicoMemResetCD(Pico_mcd->s68k_regs[3]);
|
||||
PicoMemRemapCD(Pico_mcd->s68k_regs[3]);
|
||||
#ifdef _ASM_CD_MEMORY_C
|
||||
if (Pico_mcd->s68k_regs[3]&4)
|
||||
if (Pico_mcd->s68k_regs[3] & 4)
|
||||
PicoMemResetCDdecode(Pico_mcd->s68k_regs[3]);
|
||||
#endif
|
||||
if (!(Pico_mcd->s68k_regs[0x36] & 1) && (Pico_mcd->scd.Status_CDC & 1))
|
||||
|
||||
1548
pico/cd/memory.c
1548
pico/cd/memory.c
File diff suppressed because it is too large
Load Diff
@@ -30,6 +30,7 @@ PICO_INTERNAL void PicoPowerMCD(void)
|
||||
memset(Pico_mcd->pcm_ram, 0, sizeof(Pico_mcd->pcm_ram));
|
||||
memset(Pico_mcd->bram, 0, sizeof(Pico_mcd->bram));
|
||||
memcpy(Pico_mcd->bram + sizeof(Pico_mcd->bram) - fmt_size, formatted_bram, fmt_size);
|
||||
PicoMemRemapCD(1);
|
||||
}
|
||||
|
||||
PICO_INTERNAL int PicoResetMCD(void)
|
||||
@@ -45,13 +46,12 @@ PICO_INTERNAL int PicoResetMCD(void)
|
||||
Reset_CD();
|
||||
LC89510_Reset();
|
||||
gfx_cd_reset();
|
||||
PicoMemResetCD(1);
|
||||
#ifdef _ASM_CD_MEMORY_C
|
||||
//PicoMemResetCDdecode(1); // don't have to call this in 2M mode
|
||||
#endif
|
||||
|
||||
// use SRam.data for RAM cart
|
||||
if (PicoOpt&POPT_EN_MCD_RAMCART) {
|
||||
if (PicoOpt & POPT_EN_MCD_RAMCART) {
|
||||
if (SRam.data == NULL)
|
||||
SRam.data = calloc(1, 0x12000);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user