diff --git a/zsnes/src/cpu/execute.asm b/zsnes/src/cpu/execute.asm index ab762e4c..bafcff34 100644 --- a/zsnes/src/cpu/execute.asm +++ b/zsnes/src/cpu/execute.asm @@ -111,7 +111,7 @@ EXTSYM sfx128lineloc,sfx160lineloc,sfx192lineloc,sfxobjlineloc,sfxclineloc EXTSYM PLOTJmpa,PLOTJmpb,FxTable,FxTableb,FxTablec,FxTabled EXTSYM SfxPBR,SCBRrel,SfxSCBR,SfxCOLR,hdmaearlstart,SFXCounter EXTSYM fxbit01,fxbit01pcal,fxbit23,fxbit23pcal,fxbit45,fxbit45pcal,fxbit67,fxbit67pcal -EXTSYM SfxSFR +EXTSYM SfxSFR,nosprincr EXTSYM cpucycle,debstop,switchtovirqdeb,debstop3,switchtonmideb EXTSYM ReadSPC7110log,WriteSPC7110log @@ -1679,6 +1679,8 @@ NEWSYM savestate .fname2 db 9,'image.dat',0 +cycpblblah dd 0,0 + ; Load State NEWSYM stateloader mov byte[MovieProcessing],0 @@ -3608,6 +3610,7 @@ NEWSYM cpuover .novirqz mov ax,[oamaddrs] mov [oamaddr],ax + mov byte[nosprincr],0 call showvideo ; call dsp1teststuff xor ebx,ebx diff --git a/zsnes/src/cpu/regs.inc b/zsnes/src/cpu/regs.inc index faa2586b..f1019208 100644 --- a/zsnes/src/cpu/regs.inc +++ b/zsnes/src/cpu/regs.inc @@ -392,8 +392,10 @@ NEWSYM SDD1BankB, db 1 NEWSYM SDD1BankC, db 2 NEWSYM SDD1BankD, db 3 NEWSYM vramread2, db 0 ; previous character for vram read +NEWSYM nosprincr, db 0 -NEWSYM tempdat, times 483 db 0 ; expandable area + +NEWSYM tempdat, times 482 db 0 ; expandable area num2writeppureg equ $-sndrot ; pharos equ hack *sigh* diff --git a/zsnes/src/cpu/regsw.inc b/zsnes/src/cpu/regsw.inc index bbbfc5de..336cf81f 100644 --- a/zsnes/src/cpu/regsw.inc +++ b/zsnes/src/cpu/regsw.inc @@ -528,8 +528,8 @@ reg2103w: cmp word[oamaddr],200h jne .notinvptr mov bx,[oamaddrs] - dec bx mov [oamaddr],bx + mov byte[nosprincr],1 .notinvptr mov bx,[oamaddr] mov [oamaddrs],bx @@ -547,9 +547,12 @@ reg2104w: mov byte[debstop3],1 mov byte[NextLineCache],1 mov ebx,[oamaddr] + cmp byte[nosprincr],1 + je .noinc inc dword[oamaddr] cmp ebx,544 je .overflow +.noinc mov [oamram+ebx],al ret .overflow