Option to enable/disable auto patching. [ipher, Nach]

This commit is contained in:
n-a-c-h
2005-01-05 10:23:05 +00:00
parent bda386a219
commit ea3dabb7ee
5 changed files with 115 additions and 97 deletions

View File

@@ -639,7 +639,7 @@ NEWSYM FEOEZPath, times 1024 db 0
NEWSYM SJNSPath, times 1024 db 0 NEWSYM SJNSPath, times 1024 db 0
NEWSYM MDHPath, times 1024 db 0 NEWSYM MDHPath, times 1024 db 0
NEWSYM SPL4Path, times 1024 db 0 NEWSYM SPL4Path, times 1024 db 0
NEWSYM AutoPatch, db 1
GUIsave equ $-GUIRAdd GUIsave equ $-GUIRAdd
@@ -669,9 +669,9 @@ ModemOKStat resb 1 ; OK is detected on modem status
SECTION .data SECTION .data
; LOAD STAT INPT OPT VID SND CHT NET GMKEY GUIOP ABT RSET SRC STCN MOVE CMBO ADDO CHIP PATH ; LOAD STAT INPT OPT VID SND CHT NET GMKEY GUIOP ABT RSET SRC STCN MOVE CMBO ADDO CHIP PATH
GUIwinposxo dd 0,5 ,60 ,30 ,55 ,50 ,35 ,5 ,30 ,10 ,10 ,50 ,65 ,20 ,70 ,50 ,3 ,50 ,50 ,5 GUIwinposxo dd 0,5 ,60 ,30 ,55 ,50 ,35 ,5 ,30 ,10 ,10 ,50 ,65 ,20 ,70 ,50 ,3 ,50 ,50 ,5
GUIwinposyo dd 0,20 ,70 ,30 ,20 ,20 ,20 ,20 ,30 ,20 ,20 ,20 ,60 ,30 ,65 ,50 ,22 ,60 ,60 ,20 GUIwinposyo dd 0,20 ,70 ,30 ,19 ,20 ,20 ,20 ,30 ,20 ,20 ,20 ,60 ,30 ,65 ,50 ,22 ,60 ,60 ,20
GUIwinsizex dd 0,244 ,126 ,189 ,167 ,180 ,188 ,244 ,8*16,235 ,240 ,190 ,9*16,8*16,9*16,140 ,250 ,160 ,160 ,244 GUIwinsizex dd 0,244 ,126 ,189 ,167 ,180 ,188 ,244 ,8*16,235 ,240 ,190 ,9*16,8*16,9*16,140 ,250 ,160 ,160 ,244
GUIwinsizey dd 0,190 ,3*16,166 ,190 ,192 ,188 ,191 ,40 ,189 ,150 ,190 ,42 ,40 ,42 ,70 ,190 ,100 ,100 ,190 GUIwinsizey dd 0,190 ,3*16,166 ,191 ,192 ,188 ,191 ,40 ,189 ,150 ,190 ,42 ,40 ,42 ,70 ,190 ,100 ,100 ,190
GUIwinptr db 0 GUIwinptr db 0
section .bss section .bss

View File

@@ -910,6 +910,10 @@ GUIOptionKeys:
jne .nosmallmsgtext jne .nosmallmsgtext
xor byte[SmallMsgText],1 xor byte[SmallMsgText],1
.nosmallmsgtext .nosmallmsgtext
cmp dh,'P'
jne .noautopatch
xor byte[AutoPatch],1
.noautopatch
%ifdef __WIN32__ %ifdef __WIN32__
cmp dh,'I' cmp dh,'I'
jne .noscreensaver jne .noscreensaver

View File

@@ -2274,44 +2274,45 @@ DisplayGUIInputClick:
ret ret
DisplayGUIOptionClick: DisplayGUIOptionClick:
GUIClickCButtonfr 11,26,byte[frameskip] GUIClickCButtonfr 11,20,byte[frameskip]
xor ebx,ebx xor ebx,ebx
mov bl,[cvidmode] mov bl,[cvidmode]
cmp byte[GUINGVID+ebx],1 cmp byte[GUINGVID+ebx],1
jne near .invalidng jne near .invalidng
GUIClickCButton2 11,36,byte[newengen],byte[cfgnewgfx],1 GUIClickCButton2 11,30,byte[newengen],byte[cfgnewgfx],1
.invalidng .invalidng
GUIClickCButtonAS 11,46,byte[AutoIncSaveSlot] GUIClickCButtonAS 11,40,byte[AutoIncSaveSlot]
GUIClickCButtonMMX 11,56,byte[MMXSupport] GUIClickCButtonMMX 11,50,byte[MMXSupport]
GUIClickCButtonM 11,66,byte[pl12s34] GUIClickCButtonM 11,60,byte[pl12s34]
%ifdef __MSDOS__ %ifdef __MSDOS__
GUIClickCButton 11,76,byte[SidewinderFix] GUIClickCButton 11,70,byte[SidewinderFix]
%endif %endif
%ifdef __WIN32__ %ifdef __WIN32__
GUIClickCButtonW 11,76,byte[HighPriority] GUIClickCButtonW 11,70,byte[HighPriority]
%endif %endif
GUIClickCButton 11,86,byte[FPSAtStart] GUIClickCButton 11,80,byte[FPSAtStart]
GUIClickCButton 11,96,byte[Turbo30hz] GUIClickCButton 11,90,byte[Turbo30hz]
GUIClickCButton 11,106,byte[TimerEnable] GUIClickCButton 11,100,byte[TimerEnable]
GUIClickCButton 11,116,byte[FastFwdToggle] GUIClickCButton 11,110,byte[FastFwdToggle]
GUIClickCButton 11,126,byte[SRAMSave5Sec] GUIClickCButton 11,120,byte[SRAMSave5Sec]
GUIClickCButtonO 11,136,byte[OldGfxMode2] GUIClickCButtonO 11,130,byte[OldGfxMode2]
GUIClickCButton 11,146,byte[LatestSave] GUIClickCButton 11,140,byte[LatestSave]
GUIClickCButton 11,156,byte[AutoState] GUIClickCButton 11,150,byte[AutoState]
GUIClickCButton 11,166,byte[DontSavePath] GUIClickCButton 11,160,byte[DontSavePath]
GUIClickCButton 11,176,byte[SmallMsgText] GUIClickCButton 11,170,byte[SmallMsgText]
GUIClickCButton 11,180,byte[AutoPatch]
%ifdef __WIN32__ %ifdef __WIN32__
GUIClickCButtonW 11,186,byte[DisableScreenSaver] GUIClickCButtonW 11,190,byte[DisableScreenSaver]
%endif %endif
; Frameskip = 0 ; Frameskip = 0
cmp byte[frameskip],0 cmp byte[frameskip],0
je near .autopress je near .autopress
GUIPHoldbutton2 97,12,105,22,12,byte[frameskip],1,10 GUIPHoldbutton2 97,12,105,20,12,byte[frameskip],1,10
GUIPHoldbutton2 108,12,116,22,13,byte[frameskip],-1,1 GUIPHoldbutton2 108,12,116,20,13,byte[frameskip],-1,1
ret ret
.autopress .autopress
GUIPHoldbutton2 118,12,126,22,12,byte[maxskip],1,9 GUIPHoldbutton2 118,12,126,20,12,byte[maxskip],1,9
GUIPHoldbutton2 129,12,137,22,13,byte[maxskip],-1,0 GUIPHoldbutton2 129,12,137,20,13,byte[maxskip],-1,0
ret ret
DisplayGUIVideoClick2: DisplayGUIVideoClick2:

View File

@@ -1375,94 +1375,96 @@ DisplayGUIOption:
jne .noauto jne .noauto
mov dword[GUITemp],GUIOptionText3 mov dword[GUITemp],GUIOptionText3
.noauto .noauto
GUIOuttextwin2 4,6,16,[GUITemp] GUIOuttextwin2 4,6,14,[GUITemp]
GUIOuttextwin2u 4,26,31,GUIOptionText2,0 GUIOuttextwin2u 4,26,24,GUIOptionText2,0
GUIOuttextwin2u 4,26,41,GUIOptionText4,0 GUIOuttextwin2u 4,26,34,GUIOptionText4,0
GUIOuttextwin2u 4,26,51,GUIOptionText5,2 GUIOuttextwin2u 4,26,44,GUIOptionText5,2
GUIOuttextwin2u 4,26,61,GUIOptionText6,0 GUIOuttextwin2u 4,26,54,GUIOptionText6,0
GUIOuttextwin2u 4,26,71,GUIOptionText7,0 GUIOuttextwin2u 4,26,64,GUIOptionText7,0
%ifdef __MSDOS__ %ifdef __MSDOS__
GUIOuttextwin2u 4,26,81,GUIOptionTextA,0 GUIOuttextwin2u 4,26,74,GUIOptionTextA,0
%endif %endif
%ifdef __WIN32__ %ifdef __WIN32__
GUIOuttextwin2u 4,26,81,GUIOptionTextAb,0 GUIOuttextwin2u 4,26,74,GUIOptionTextAb,0
%endif %endif
GUIOuttextwin2u 4,26,91,GUIOptionTextB,0 GUIOuttextwin2u 4,26,84,GUIOptionTextB,0
GUIOuttextwin2u 4,26,101,GUIOptionTextC,2 GUIOuttextwin2u 4,26,94,GUIOptionTextC,2
GUIOuttextwin2u 4,26,111,GUIOptionTextD,12 GUIOuttextwin2u 4,26,104,GUIOptionTextD,12
GUIOuttextwin2u 4,26,121,GUIOptionTextE,2 GUIOuttextwin2u 4,26,114,GUIOptionTextE,2
GUIOuttextwin2u 4,26,131,GUIOptionTextF,1 GUIOuttextwin2u 4,26,124,GUIOptionTextF,1
GUIOuttextwin2u 4,26,141,GUIOptionTextG,0 GUIOuttextwin2u 4,26,134,GUIOptionTextG,0
GUIOuttextwin2u 4,26,151,GUIOptionTextH,9 GUIOuttextwin2u 4,26,144,GUIOptionTextH,9
GUIOuttextwin2u 4,26,161,GUIOptionTextI,15 GUIOuttextwin2u 4,26,154,GUIOptionTextI,15
GUIOuttextwin2u 4,26,171,GUIOptionTextJ,0 GUIOuttextwin2u 4,26,164,GUIOptionTextJ,0
GUIOuttextwin2u 4,26,181,GUIOptionTextK,1 GUIOuttextwin2u 4,26,174,GUIOptionTextK,1
GUIOuttextwin2u 4,26,184,GUIOptionTextM,12
%ifdef __WIN32__ %ifdef __WIN32__
GUIOuttextwin2u 4,26,191,GUIOptionTextL,1 GUIOuttextwin2u 4,26,194,GUIOptionTextL,1
%endif %endif
add byte[GUItextcolor],15 add byte[GUItextcolor],15
GUIOuttextwin2 4,5,15,[GUITemp] GUIOuttextwin2 4,5,13,[GUITemp]
GUIOuttextwin2 4,25,30,GUIOptionText2 GUIOuttextwin2 4,25,23,GUIOptionText2
GUIOuttextwin2 4,25,40,GUIOptionText4 GUIOuttextwin2 4,25,33,GUIOptionText4
GUIOuttextwin2 4,25,50,GUIOptionText5 GUIOuttextwin2 4,25,43,GUIOptionText5
GUIOuttextwin2 4,25,60,GUIOptionText6 GUIOuttextwin2 4,25,53,GUIOptionText6
GUIOuttextwin2 4,25,70,GUIOptionText7 GUIOuttextwin2 4,25,63,GUIOptionText7
%ifdef __MSDOS__ %ifdef __MSDOS__
GUIOuttextwin2 4,25,80,GUIOptionTextA GUIOuttextwin2 4,25,73,GUIOptionTextA
%endif %endif
%ifdef __WIN32__ %ifdef __WIN32__
GUIOuttextwin2 4,25,80,GUIOptionTextAb GUIOuttextwin2 4,25,73,GUIOptionTextAb
%endif %endif
GUIOuttextwin2 4,25,90,GUIOptionTextB GUIOuttextwin2 4,25,83,GUIOptionTextB
GUIOuttextwin2 4,25,100,GUIOptionTextC GUIOuttextwin2 4,25,93,GUIOptionTextC
GUIOuttextwin2 4,25,120,GUIOptionTextE GUIOuttextwin2 4,25,113,GUIOptionTextE
GUIOuttextwin2 4,25,110,GUIOptionTextD GUIOuttextwin2 4,25,103,GUIOptionTextD
GUIOuttextwin2 4,25,130,GUIOptionTextF GUIOuttextwin2 4,25,123,GUIOptionTextF
GUIOuttextwin2 4,25,140,GUIOptionTextG GUIOuttextwin2 4,25,133,GUIOptionTextG
GUIOuttextwin2 4,25,150,GUIOptionTextH GUIOuttextwin2 4,25,143,GUIOptionTextH
GUIOuttextwin2 4,25,160,GUIOptionTextI GUIOuttextwin2 4,25,153,GUIOptionTextI
GUIOuttextwin2 4,25,170,GUIOptionTextJ GUIOuttextwin2 4,25,163,GUIOptionTextJ
GUIOuttextwin2 4,25,180,GUIOptionTextK GUIOuttextwin2 4,25,173,GUIOptionTextK
GUIOuttextwin2 4,25,183,GUIOptionTextM
%ifdef __WIN32__ %ifdef __WIN32__
GUIOuttextwin2 4,25,190,GUIOptionTextL GUIOuttextwin2 4,25,193,GUIOptionTextL
%endif %endif
mov dword[GUITemp],GUIIconDataCheckBoxUC mov dword[GUITemp],GUIIconDataCheckBoxUC
cmp byte[frameskip],0 cmp byte[frameskip],0
jne .nocheckbox jne .nocheckbox
mov dword[GUITemp],GUIIconDataCheckBoxC mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox .nocheckbox
GUIDisplayIconWin 4,11,26,[GUITemp] GUIDisplayIconWin 4,11,20,[GUITemp]
mov dword[GUITemp],GUIIconDataCheckBoxUC mov dword[GUITemp],GUIIconDataCheckBoxUC
cmp byte[newengen],0 cmp byte[newengen],0
je .nocheckbox1 je .nocheckbox1
mov dword[GUITemp],GUIIconDataCheckBoxC mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox1 .nocheckbox1
GUIDisplayIconWin 4,11,36,[GUITemp] GUIDisplayIconWin 4,11,30,[GUITemp]
mov dword[GUITemp],GUIIconDataCheckBoxUC mov dword[GUITemp],GUIIconDataCheckBoxUC
cmp byte[AutoIncSaveSlot],0 cmp byte[AutoIncSaveSlot],0
je .nocheckbox2 je .nocheckbox2
mov dword[GUITemp],GUIIconDataCheckBoxC mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox2 .nocheckbox2
GUIDisplayIconWin 4,11,46,[GUITemp] GUIDisplayIconWin 4,11,40,[GUITemp]
mov dword[GUITemp],GUIIconDataCheckBoxUC mov dword[GUITemp],GUIIconDataCheckBoxUC
cmp byte[MMXSupport],1 cmp byte[MMXSupport],1
jne .nocheckbox3 jne .nocheckbox3
mov dword[GUITemp],GUIIconDataCheckBoxC mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox3 .nocheckbox3
GUIDisplayIconWin 4,11,56,[GUITemp] GUIDisplayIconWin 4,11,50,[GUITemp]
mov dword[GUITemp],GUIIconDataCheckBoxUC mov dword[GUITemp],GUIIconDataCheckBoxUC
cmp byte[pl12s34],0 cmp byte[pl12s34],0
je .nocheckbox4 je .nocheckbox4
mov dword[GUITemp],GUIIconDataCheckBoxC mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox4 .nocheckbox4
GUIDisplayIconWin 4,11,66,[GUITemp] GUIDisplayIconWin 4,11,60,[GUITemp]
%ifdef __MSDOS__ %ifdef __MSDOS__
mov dword[GUITemp],GUIIconDataCheckBoxUC mov dword[GUITemp],GUIIconDataCheckBoxUC
cmp byte[SidewinderFix],0 cmp byte[SidewinderFix],0
je .nocheckbox5 je .nocheckbox5
mov dword[GUITemp],GUIIconDataCheckBoxC mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox5 .nocheckbox5
GUIDisplayIconWin 4,11,76,[GUITemp] GUIDisplayIconWin 4,11,70,[GUITemp]
%endif %endif
%ifdef __WIN32__ %ifdef __WIN32__
mov dword[GUITemp],GUIIconDataCheckBoxUC mov dword[GUITemp],GUIIconDataCheckBoxUC
@@ -1470,118 +1472,124 @@ DisplayGUIOption:
je .nocheckbox5 je .nocheckbox5
mov dword[GUITemp],GUIIconDataCheckBoxC mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox5 .nocheckbox5
GUIDisplayIconWin 4,11,76,[GUITemp] GUIDisplayIconWin 4,11,70,[GUITemp]
%endif %endif
mov dword[GUITemp],GUIIconDataCheckBoxUC mov dword[GUITemp],GUIIconDataCheckBoxUC
cmp byte[FPSAtStart],0 cmp byte[FPSAtStart],0
je .nocheckbox6 je .nocheckbox6
mov dword[GUITemp],GUIIconDataCheckBoxC mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox6 .nocheckbox6
GUIDisplayIconWin 4,11,86,[GUITemp] GUIDisplayIconWin 4,11,80,[GUITemp]
mov dword[GUITemp],GUIIconDataCheckBoxUC mov dword[GUITemp],GUIIconDataCheckBoxUC
cmp byte[Turbo30hz],0 cmp byte[Turbo30hz],0
je .nocheckbox7 je .nocheckbox7
mov dword[GUITemp],GUIIconDataCheckBoxC mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox7 .nocheckbox7
GUIDisplayIconWin 4,11,96,[GUITemp] GUIDisplayIconWin 4,11,90,[GUITemp]
mov dword[GUITemp],GUIIconDataCheckBoxUC mov dword[GUITemp],GUIIconDataCheckBoxUC
cmp byte[TimerEnable],0 cmp byte[TimerEnable],0
je .nocheckbox8 je .nocheckbox8
mov dword[GUITemp],GUIIconDataCheckBoxC mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox8 .nocheckbox8
GUIDisplayIconWin 4,11,106,[GUITemp] GUIDisplayIconWin 4,11,100,[GUITemp]
mov dword[GUITemp],GUIIconDataCheckBoxUC mov dword[GUITemp],GUIIconDataCheckBoxUC
cmp byte[FastFwdToggle],0 cmp byte[FastFwdToggle],0
je .nocheckbox9 je .nocheckbox9
mov dword[GUITemp],GUIIconDataCheckBoxC mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox9 .nocheckbox9
GUIDisplayIconWin 4,11,116,[GUITemp] GUIDisplayIconWin 4,11,110,[GUITemp]
mov dword[GUITemp],GUIIconDataCheckBoxUC mov dword[GUITemp],GUIIconDataCheckBoxUC
cmp byte[SRAMSave5Sec],0 cmp byte[SRAMSave5Sec],0
je .nocheckbox10 je .nocheckbox10
mov dword[GUITemp],GUIIconDataCheckBoxC mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox10 .nocheckbox10
GUIDisplayIconWin 4,11,126,[GUITemp] GUIDisplayIconWin 4,11,120,[GUITemp]
mov dword[GUITemp],GUIIconDataCheckBoxUC mov dword[GUITemp],GUIIconDataCheckBoxUC
cmp byte[OldGfxMode2],0 cmp byte[OldGfxMode2],0
je .nocheckbox11 je .nocheckbox11
mov dword[GUITemp],GUIIconDataCheckBoxC mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox11 .nocheckbox11
GUIDisplayIconWin 4,11,136,[GUITemp] GUIDisplayIconWin 4,11,130,[GUITemp]
mov dword[GUITemp],GUIIconDataCheckBoxUC mov dword[GUITemp],GUIIconDataCheckBoxUC
cmp byte[LatestSave],0 cmp byte[LatestSave],0
je .nocheckbox12 je .nocheckbox12
mov dword[GUITemp],GUIIconDataCheckBoxC mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox12 .nocheckbox12
GUIDisplayIconWin 4,11,146,[GUITemp] GUIDisplayIconWin 4,11,140,[GUITemp]
mov dword[GUITemp],GUIIconDataCheckBoxUC mov dword[GUITemp],GUIIconDataCheckBoxUC
cmp byte[AutoState],0 cmp byte[AutoState],0
je .nocheckbox13 je .nocheckbox13
mov dword[GUITemp],GUIIconDataCheckBoxC mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox13 .nocheckbox13
GUIDisplayIconWin 4,11,156,[GUITemp] GUIDisplayIconWin 4,11,150,[GUITemp]
mov dword[GUITemp],GUIIconDataCheckBoxUC mov dword[GUITemp],GUIIconDataCheckBoxUC
cmp byte[DontSavePath],0 cmp byte[DontSavePath],0
je .nocheckbox14 je .nocheckbox14
mov dword[GUITemp],GUIIconDataCheckBoxC mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox14 .nocheckbox14
GUIDisplayIconWin 4,11,166,[GUITemp] GUIDisplayIconWin 4,11,160,[GUITemp]
mov dword[GUITemp],GUIIconDataCheckBoxUC mov dword[GUITemp],GUIIconDataCheckBoxUC
cmp byte[SmallMsgText],0 cmp byte[SmallMsgText],0
je .nocheckbox15 je .nocheckbox15
mov dword[GUITemp],GUIIconDataCheckBoxC mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox15 .nocheckbox15
GUIDisplayIconWin 4,11,176,[GUITemp] GUIDisplayIconWin 4,11,170,[GUITemp]
%ifdef __WIN32__ mov dword[GUITemp],GUIIconDataCheckBoxUC ;Autopatch Checkbox
mov dword[GUITemp],GUIIconDataCheckBoxUC cmp byte[AutoPatch],0
cmp byte[DisableScreenSaver],0
je .nocheckbox16 je .nocheckbox16
mov dword[GUITemp],GUIIconDataCheckBoxC mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox16 .nocheckbox16
GUIDisplayIconWin 4,11,186,[GUITemp] GUIDisplayIconWin 4,11,180,[GUITemp]
%ifdef __WIN32__
mov dword[GUITemp],GUIIconDataCheckBoxUC
cmp byte[DisableScreenSaver],0
je .nocheckbox17
mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox17
GUIDisplayIconWin 4,11,190,[GUITemp]
%endif %endif
cmp byte[frameskip],0 cmp byte[frameskip],0
je near .auto je near .auto
DrawGUIWinBox 4,75,13,93,21,167 DrawGUIWinBox 4,75,12,93,19,167
mov al,[frameskip] mov al,[frameskip]
add al,47 add al,47
mov [GUIOptionText8],al mov [GUIOptionText8],al
mov byte[GUItextcolor],223 mov byte[GUItextcolor],223
GUIOuttextwin2 4,85,16,GUIOptionText8 GUIOuttextwin2 4,85,14,GUIOptionText8
mov byte[GUItextcolor],221 mov byte[GUItextcolor],221
cmp byte[GUIWincoladd],0 cmp byte[GUIWincoladd],0
je .zero4 je .zero4
mov byte[GUItextcolor],222 mov byte[GUItextcolor],222
.zero4 .zero4
GUIOuttextwin2 4,84,15,GUIOptionText8 GUIOuttextwin2 4,84,13,GUIOptionText8
mov byte[GUItextcolor],217 mov byte[GUItextcolor],217
cmp byte[GUIWincoladd],0 cmp byte[GUIWincoladd],0
je .zero6 je .zero6
mov byte[GUItextcolor],211 mov byte[GUItextcolor],211
.zero6 .zero6
DrawGUIButton 4,97,12,105,22,GUIOptionText9,12,-2,0 DrawGUIButton 4,97,12,105,20,GUIOptionText9,12,-2,-1
DrawGUIButton 4,108,12,116,22,GUIOptionText10,13,-2,0 DrawGUIButton 4,108,12,116,20,GUIOptionText10,13,-2,-1
ret ret
.auto .auto
DrawGUIWinBox 4,96,13,114,21,167 DrawGUIWinBox 4,96,12,114,19,167
mov al,[maxskip] mov al,[maxskip]
add al,48 add al,48
mov [GUIOptionText8],al mov [GUIOptionText8],al
mov byte[GUItextcolor],223 mov byte[GUItextcolor],223
GUIOuttextwin2 4,107,16,GUIOptionText8 GUIOuttextwin2 4,107,14,GUIOptionText8
mov byte[GUItextcolor],221 mov byte[GUItextcolor],221
cmp byte[GUIWincoladd],0 cmp byte[GUIWincoladd],0
je .zero5 je .zero5
mov byte[GUItextcolor],222 mov byte[GUItextcolor],222
.zero5 .zero5
GUIOuttextwin2 4,106,15,GUIOptionText8 GUIOuttextwin2 4,106,13,GUIOptionText8
mov byte[GUItextcolor],217 mov byte[GUItextcolor],217
cmp byte[GUIWincoladd],0 cmp byte[GUIWincoladd],0
je .zero7 je .zero7
mov byte[GUItextcolor],211 mov byte[GUItextcolor],211
.zero7 .zero7
DrawGUIButton 4,118,12,126,22,GUIOptionText9,12,-2,0 DrawGUIButton 4,118,12,126,20,GUIOptionText9,12,-2,-1
DrawGUIButton 4,129,12,137,22,GUIOptionText10,13,-2,0 DrawGUIButton 4,129,12,137,20,GUIOptionText10,13,-2,-1
ret ret
SECTION .data SECTION .data
@@ -1605,6 +1613,7 @@ GUIOptionTextI db 'AUTO STATE SAVE/LOAD',0
GUIOptionTextJ db 'DON',39,'T SAVE CUR PATH',0 GUIOptionTextJ db 'DON',39,'T SAVE CUR PATH',0
GUIOptionTextK db 'USE SMALL MESSAGE TEXT',0 GUIOptionTextK db 'USE SMALL MESSAGE TEXT',0
GUIOptionTextL db 'DISABLE SCREENSAVER',0 GUIOptionTextL db 'DISABLE SCREENSAVER',0
GUIOptionTextM db 'ENABLE AUTO-PATCH',0
GUIOptionText8 db '-',0 GUIOptionText8 db '-',0
GUIOptionText9 db '+',0 GUIOptionText9 db '+',0
GUIOptionText10 db '-',0 GUIOptionText10 db '-',0

View File

@@ -53,12 +53,10 @@ extern int NumofBanks;
extern unsigned int *romdata; extern unsigned int *romdata;
extern bool IPSPatched; extern bool IPSPatched;
extern unsigned char Header512; extern unsigned char Header512;
extern bool AutoPatch;
void *doMemAlloc(int); void *doMemAlloc(int);
char *patchfile; char *patchfile;
struct struct
{ {
unsigned int file_size; unsigned int file_size;
@@ -152,6 +150,12 @@ void PatchUsingIPS()
IPSPatched = false; IPSPatched = false;
if (!AutoPatch)
{
deinitPatch(); //Needed if the call to this function was done from findZipIPS()
return;
}
if (patchfile) //Regular file, not Zip if (patchfile) //Regular file, not Zip
{ {
if (!initPatch()) { goto IPSDone; } if (!initPatch()) { goto IPSDone; }