static void sync() { int i; if(nes->cart->wram.size) mem_setwram4(7,0); mem_setprg8(0x8,prg[0]); mem_setprg8(0xA,prg[1]); mem_setprg16(0xC,0xFF); for(i=0;i<8;i++) mem_setchr1(i,chr[i] >> map[4]); switch(mirror) { case 0: mem_setmirroring(MIRROR_V); break; case 1: mem_setmirroring(MIRROR_H); break; case 2: mem_setmirroring(MIRROR_1L); break; case 3: mem_setmirroring(MIRROR_1H); break; } }
static void reset(int hard) { mem_setwramsize(8); //initialize all bank pointers mem_setprg4(6,8); mem_setwram4(7,0); mem_setprg32(8,0); mem_setchr8(0,0); //get pointers to the data prg6 = mem_getreadptr(6); sram7 = mem_getreadptr(7); //remove pointers to memory mem_setreadptr(6,0); mem_setreadptr(7,0); mem_setwriteptr(7,0); //insert the function pointers from here mem_setreadfunc(6,read6); mem_setreadfunc(7,read7); mem_setwritefunc(7,write7); }