Super System support
This commit is contained in:
@@ -327,6 +327,8 @@ NEWSYM initregr
|
|||||||
setreg 4016h*4,reg4016r
|
setreg 4016h*4,reg4016r
|
||||||
setreg 4017h*4,reg4017r
|
setreg 4017h*4,reg4017r
|
||||||
|
|
||||||
|
setreg 4100h*4,reg4100r
|
||||||
|
|
||||||
setreg 420Ah*4,reg420Ar
|
setreg 420Ah*4,reg420Ar
|
||||||
setreg 420Bh*4,reg420Br
|
setreg 420Bh*4,reg420Br
|
||||||
setreg 420Ch*4,reg420Cr
|
setreg 420Ch*4,reg420Cr
|
||||||
@@ -703,6 +705,13 @@ NEWSYM SPC700write, dd 0
|
|||||||
|
|
||||||
NEWSYM JoyCRead, db 0
|
NEWSYM JoyCRead, db 0
|
||||||
|
|
||||||
|
NEWSYM nssdip1, db 0
|
||||||
|
NEWSYM nssdip2, db 0
|
||||||
|
NEWSYM nssdip3, db 0
|
||||||
|
NEWSYM nssdip4, db 0
|
||||||
|
NEWSYM nssdip5, db 0
|
||||||
|
NEWSYM nssdip6, db 0
|
||||||
|
|
||||||
NEWSYM ClearRegs
|
NEWSYM ClearRegs
|
||||||
mov word[VIRQLoc],0
|
mov word[VIRQLoc],0
|
||||||
mov word[bg1ptr],0
|
mov word[bg1ptr],0
|
||||||
@@ -1170,6 +1179,33 @@ reg4017r:
|
|||||||
rol dword[JoyENow],1
|
rol dword[JoyENow],1
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
reg4100r:
|
||||||
|
cmp byte[nssdip1],1
|
||||||
|
je .nodip1
|
||||||
|
mov al,1
|
||||||
|
.nodip1
|
||||||
|
cmp byte[nssdip1],1
|
||||||
|
je .nodip2
|
||||||
|
or al,02h
|
||||||
|
.nodip2
|
||||||
|
cmp byte[nssdip3],1
|
||||||
|
je .nodip3
|
||||||
|
or al,04h
|
||||||
|
.nodip3
|
||||||
|
cmp byte[nssdip4],1
|
||||||
|
je .nodip4
|
||||||
|
or al,08h
|
||||||
|
.nodip4
|
||||||
|
cmp byte[nssdip5],1
|
||||||
|
je .nodip5
|
||||||
|
or al,10h
|
||||||
|
.nodip5
|
||||||
|
cmp byte[nssdip6],1
|
||||||
|
je .nodip6
|
||||||
|
or al,20h
|
||||||
|
.nodip6
|
||||||
|
ret
|
||||||
|
|
||||||
reg420Ar:
|
reg420Ar:
|
||||||
reg420Br:
|
reg420Br:
|
||||||
reg420Cr:
|
reg420Cr:
|
||||||
|
|||||||
@@ -171,6 +171,7 @@ EXTSYM ipxgetchar,ipxsendchar,TCPIPStoreByte
|
|||||||
EXTSYM TCPIPGetByte,GUIBIFIL
|
EXTSYM TCPIPGetByte,GUIBIFIL
|
||||||
EXTSYM ModemSendChar
|
EXTSYM ModemSendChar
|
||||||
EXTSYM firstsaveinc
|
EXTSYM firstsaveinc
|
||||||
|
EXTSYM nssdip1,nssdip2,nssdip3,nssdip4,nssdip5,nssdip6
|
||||||
%ifdef __LINUX__
|
%ifdef __LINUX__
|
||||||
EXTSYM numlockptr
|
EXTSYM numlockptr
|
||||||
%endif
|
%endif
|
||||||
@@ -620,7 +621,7 @@ ModemOKStat db 0 ; OK is detected on modem status
|
|||||||
GUIwinposxo dd 0,5 ,60 ,30 ,55 ,50 ,35 ,5 ,30 ,10 ,10 ,50 ,65 ,20 ,70 ,50 ,3 ,50
|
GUIwinposxo dd 0,5 ,60 ,30 ,55 ,50 ,35 ,5 ,30 ,10 ,10 ,50 ,65 ,20 ,70 ,50 ,3 ,50
|
||||||
GUIwinposyo dd 0,20 ,70 ,30 ,20 ,20 ,20 ,20 ,30 ,20 ,20 ,20 ,60 ,30 ,65 ,50 ,22 ,60
|
GUIwinposyo dd 0,20 ,70 ,30 ,20 ,20 ,20 ,20 ,30 ,20 ,20 ,20 ,60 ,30 ,65 ,50 ,22 ,60
|
||||||
GUIwinsizex dd 0,244 ,126 ,189 ,167 ,170 ,188 ,244 ,8*16,235 ,240 ,190 ,9*16,8*16,9*16,140 ,250 ,160
|
GUIwinsizex dd 0,244 ,126 ,189 ,167 ,170 ,188 ,244 ,8*16,235 ,240 ,190 ,9*16,8*16,9*16,140 ,250 ,160
|
||||||
GUIwinsizey dd 0,190 ,3*16,166 ,190 ,192 ,188 ,191 ,40 ,189 ,150 ,190 ,42 ,40 ,42 ,70 ,190 ,60
|
GUIwinsizey dd 0,190 ,3*16,166 ,190 ,192 ,188 ,191 ,40 ,189 ,150 ,190 ,42 ,40 ,42 ,70 ,190 ,100
|
||||||
GUIwinptr db 0
|
GUIwinptr db 0
|
||||||
|
|
||||||
GUItextcolor db 0,0,0,0,0
|
GUItextcolor db 0,0,0,0,0
|
||||||
|
|||||||
@@ -3113,6 +3113,12 @@ DisplayGUIAddOnClick:
|
|||||||
GUIPButtonHole 9,35,byte[snesmouse],2
|
GUIPButtonHole 9,35,byte[snesmouse],2
|
||||||
GUIPButtonHole 9,45,byte[snesmouse],3
|
GUIPButtonHole 9,45,byte[snesmouse],3
|
||||||
GUIPButtonHole 9,55,byte[snesmouse],4
|
GUIPButtonHole 9,55,byte[snesmouse],4
|
||||||
|
GUIClickCButton 9,83,byte[nssdip1]
|
||||||
|
GUIClickCButton 59,83,byte[nssdip2]
|
||||||
|
GUIClickCButton 109,83,byte[nssdip3]
|
||||||
|
GUIClickCButton 9,93,byte[nssdip4]
|
||||||
|
GUIClickCButton 59,93,byte[nssdip5]
|
||||||
|
GUIClickCButton 109,93,byte[nssdip6]
|
||||||
ret
|
ret
|
||||||
|
|
||||||
DrawMouse:
|
DrawMouse:
|
||||||
|
|||||||
@@ -6023,17 +6023,67 @@ DisplayGUIAddOns:
|
|||||||
GUIOuttextwin2 17,21,38,GUIAddOnText3
|
GUIOuttextwin2 17,21,38,GUIAddOnText3
|
||||||
GUIOuttextwin2 17,21,48,GUIAddOnText4
|
GUIOuttextwin2 17,21,48,GUIAddOnText4
|
||||||
GUIOuttextwin2 17,21,58,GUIAddOnText5
|
GUIOuttextwin2 17,21,58,GUIAddOnText5
|
||||||
|
GUIOuttextwin2 17,10,78,GUIAddOnText6
|
||||||
|
GUIOuttextwin2 17,21,88,GUIAddOnText7
|
||||||
|
GUIOuttextwin2 17,71,88,GUIAddOnText8
|
||||||
|
GUIOuttextwin2 17,121,88,GUIAddOnText9
|
||||||
|
GUIOuttextwin2 17,21,98,GUIAddOnTextA
|
||||||
|
GUIOuttextwin2 17,71,98,GUIAddOnTextB
|
||||||
|
GUIOuttextwin2 17,121,98,GUIAddOnTextC
|
||||||
add byte[GUItextcolor],15
|
add byte[GUItextcolor],15
|
||||||
GUIOuttextwin2 17,20,17,GUIAddOnText1
|
GUIOuttextwin2 17,20,17,GUIAddOnText1
|
||||||
GUIOuttextwin2 17,20,27,GUIAddOnText2
|
GUIOuttextwin2 17,20,27,GUIAddOnText2
|
||||||
GUIOuttextwin2 17,20,37,GUIAddOnText3
|
GUIOuttextwin2 17,20,37,GUIAddOnText3
|
||||||
GUIOuttextwin2 17,20,47,GUIAddOnText4
|
GUIOuttextwin2 17,20,47,GUIAddOnText4
|
||||||
GUIOuttextwin2 17,20,57,GUIAddOnText5
|
GUIOuttextwin2 17,20,57,GUIAddOnText5
|
||||||
|
GUIOuttextwin2 17,9,77,GUIAddOnText6
|
||||||
|
GUIOuttextwin2 17,20,87,GUIAddOnText7
|
||||||
|
GUIOuttextwin2 17,70,87,GUIAddOnText8
|
||||||
|
GUIOuttextwin2 17,120,87,GUIAddOnText9
|
||||||
|
GUIOuttextwin2 17,20,97,GUIAddOnTextA
|
||||||
|
GUIOuttextwin2 17,70,97,GUIAddOnTextB
|
||||||
|
GUIOuttextwin2 17,120,97,GUIAddOnTextC
|
||||||
GUIDisplayButtonHole 17,9,15,byte[snesmouse],0
|
GUIDisplayButtonHole 17,9,15,byte[snesmouse],0
|
||||||
GUIDisplayButtonHole 17,9,25,byte[snesmouse],1
|
GUIDisplayButtonHole 17,9,25,byte[snesmouse],1
|
||||||
GUIDisplayButtonHole 17,9,35,byte[snesmouse],2
|
GUIDisplayButtonHole 17,9,35,byte[snesmouse],2
|
||||||
GUIDisplayButtonHole 17,9,45,byte[snesmouse],3
|
GUIDisplayButtonHole 17,9,45,byte[snesmouse],3
|
||||||
GUIDisplayButtonHole 17,9,55,byte[snesmouse],4
|
GUIDisplayButtonHole 17,9,55,byte[snesmouse],4
|
||||||
|
mov dword[GUITemp],GUIIconDataCheckBoxUC
|
||||||
|
cmp byte[nssdip1],0
|
||||||
|
je .nodip1
|
||||||
|
mov dword[GUITemp],GUIIconDataCheckBoxC
|
||||||
|
.nodip1
|
||||||
|
GUIDisplayIconWin 17,9,83,[GUITemp]
|
||||||
|
mov dword[GUITemp],GUIIconDataCheckBoxUC
|
||||||
|
cmp byte[nssdip2],0
|
||||||
|
je .nodip2
|
||||||
|
mov dword[GUITemp],GUIIconDataCheckBoxC
|
||||||
|
.nodip2
|
||||||
|
GUIDisplayIconWin 17,59,83,[GUITemp]
|
||||||
|
mov dword[GUITemp],GUIIconDataCheckBoxUC
|
||||||
|
cmp byte[nssdip3],0
|
||||||
|
je .nodip3
|
||||||
|
mov dword[GUITemp],GUIIconDataCheckBoxC
|
||||||
|
.nodip3
|
||||||
|
GUIDisplayIconWin 17,109,83,[GUITemp]
|
||||||
|
mov dword[GUITemp],GUIIconDataCheckBoxUC
|
||||||
|
cmp byte[nssdip4],0
|
||||||
|
je .nodip4
|
||||||
|
mov dword[GUITemp],GUIIconDataCheckBoxC
|
||||||
|
.nodip4
|
||||||
|
GUIDisplayIconWin 17,9,93,[GUITemp]
|
||||||
|
mov dword[GUITemp],GUIIconDataCheckBoxUC
|
||||||
|
cmp byte[nssdip5],0
|
||||||
|
je .nodip5
|
||||||
|
mov dword[GUITemp],GUIIconDataCheckBoxC
|
||||||
|
.nodip5
|
||||||
|
GUIDisplayIconWin 17,59,93,[GUITemp]
|
||||||
|
mov dword[GUITemp],GUIIconDataCheckBoxUC
|
||||||
|
cmp byte[nssdip6],0
|
||||||
|
je .nodip6
|
||||||
|
mov dword[GUITemp],GUIIconDataCheckBoxC
|
||||||
|
.nodip6
|
||||||
|
GUIDisplayIconWin 17,109,93,[GUITemp]
|
||||||
ret
|
ret
|
||||||
|
|
||||||
GUIAddOnText1 db 'NONE',0
|
GUIAddOnText1 db 'NONE',0
|
||||||
@@ -6041,6 +6091,13 @@ GUIAddOnText2 db 'SNES MOUSE AT PORT #1',0
|
|||||||
GUIAddOnText3 db 'SNES MOUSE AT PORT #2',0
|
GUIAddOnText3 db 'SNES MOUSE AT PORT #2',0
|
||||||
GUIAddOnText4 db 'SUPER SCOPE',0
|
GUIAddOnText4 db 'SUPER SCOPE',0
|
||||||
GUIAddOnText5 db 'LETHAL ENFORCER GUN',0
|
GUIAddOnText5 db 'LETHAL ENFORCER GUN',0
|
||||||
|
GUIAddOnText6 db 'SUPER SYSTEM',0
|
||||||
|
GUIAddOnText7 db 'DIP 1',0
|
||||||
|
GUIAddOnText8 db 'DIP 2',0
|
||||||
|
GUIAddOnText9 db 'DIP 3',0
|
||||||
|
GUIAddOnTextA db 'DIP 4',0
|
||||||
|
GUIAddOnTextB db 'DIP 5',0
|
||||||
|
GUIAddOnTextC db 'DIP 6',0
|
||||||
|
|
||||||
GUILoadDisp db 'LOAD GAME',0
|
GUILoadDisp db 'LOAD GAME',0
|
||||||
GUIResetDisp db 'RESET GAME',0
|
GUIResetDisp db 'RESET GAME',0
|
||||||
|
|||||||
@@ -3981,6 +3981,13 @@ UnZipFile:
|
|||||||
UnZipSearch GUIfindBIN
|
UnZipSearch GUIfindBIN
|
||||||
UnZipSearch GUIfindZIP
|
UnZipSearch GUIfindZIP
|
||||||
UnZipSearch GUIfind1
|
UnZipSearch GUIfind1
|
||||||
|
UnZipSearch GUIfindIC7
|
||||||
|
UnZipSearch GUIfindIC6
|
||||||
|
UnZipSearch GUIfindIC5
|
||||||
|
UnZipSearch GUIfindIC4
|
||||||
|
UnZipSearch GUIfindIC3
|
||||||
|
UnZipSearch GUIfindIC2
|
||||||
|
UnZipSearch GUIfindIC1
|
||||||
UnZipSearch GUIfindBlank
|
UnZipSearch GUIfindBlank
|
||||||
.failed
|
.failed
|
||||||
call ZipDelete
|
call ZipDelete
|
||||||
@@ -4007,6 +4014,14 @@ UnZipFile:
|
|||||||
mov byte[ZipSupport],2
|
mov byte[ZipSupport],2
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
GUIfindIC7 db '*.IC7',0
|
||||||
|
GUIfindIC6 db '*.IC6',0
|
||||||
|
GUIfindIC5 db '*.IC5',0
|
||||||
|
GUIfindIC4 db '*.IC4',0
|
||||||
|
GUIfindIC3 db '*.IC3',0
|
||||||
|
GUIfindIC2 db '*.IC2',0
|
||||||
|
GUIfindIC1 db '*.IC1',0
|
||||||
|
|
||||||
ZipDelete:
|
ZipDelete:
|
||||||
mov esi,mode7tab
|
mov esi,mode7tab
|
||||||
call ZipDeleteRecurse
|
call ZipDeleteRecurse
|
||||||
@@ -4625,6 +4640,24 @@ NEWSYM loadfileGUI
|
|||||||
jnc near .nextfile
|
jnc near .nextfile
|
||||||
dec byte[edi+1]
|
dec byte[edi+1]
|
||||||
.nonumer
|
.nonumer
|
||||||
|
mov edi,[.dotpos]
|
||||||
|
; search for ICx files
|
||||||
|
cmp byte[edi],'.'
|
||||||
|
jne .noicfile
|
||||||
|
cmp byte[edi+3],'1'
|
||||||
|
jb .noicfile
|
||||||
|
cmp byte[edi+3],'7'
|
||||||
|
ja .noicfile
|
||||||
|
cmp byte[edi+4],0
|
||||||
|
jne .noicfile
|
||||||
|
dec byte[edi+3]
|
||||||
|
xor ecx,ecx
|
||||||
|
mov byte[.first],2
|
||||||
|
mov edx,fname+1
|
||||||
|
call Open_File
|
||||||
|
jnc near .nextfile
|
||||||
|
inc byte[edi+3]
|
||||||
|
.noicfile
|
||||||
; search for A,B,C, etc.
|
; search for A,B,C, etc.
|
||||||
cmp byte[.first],0
|
cmp byte[.first],0
|
||||||
je .yesgd
|
je .yesgd
|
||||||
|
|||||||
Reference in New Issue
Block a user