A lot of updates
This commit is contained in:
@@ -64,9 +64,9 @@
|
||||
|
||||
%include "macros.mac"
|
||||
|
||||
EXTSYM dssel, curblank, vidpastecopyscr, frameskip, newengen, vsyncon, cantinitmodem
|
||||
EXTSYM curblank, vidpastecopyscr, frameskip, newengen, vsyncon
|
||||
EXTSYM cvidmode, antienab, smallscreenon, smallscreence,NetQuit
|
||||
EXTSYM soundon, StereoSound, SoundCompD, SoundQuality, MusicRelVol,UartType
|
||||
EXTSYM soundon, StereoSound, SoundCompD, SoundQuality, MusicRelVol
|
||||
EXTSYM endprog, continueprog, spcBuffera, spcRamcmp, cbitmode, makepal
|
||||
EXTSYM t1cc, LoadDir, SRAMDir, LoadDrive,SRAMDrive, initsnes, romloadskip
|
||||
EXTSYM fname, makeextension, sram, clearmem2, loadfileGUI, GUIloadfailed
|
||||
@@ -89,14 +89,12 @@ EXTSYM cfgdontsave,videotroub,Open_File,Read_File,Close_File,Write_File,Create_F
|
||||
EXTSYM File_Seek,File_Seek_End,Open_File_Write,Get_Date,Check_Key,Get_Key
|
||||
EXTSYM Change_Drive,Change_Single_Dir,Change_Dir,Get_Dir,Get_First_Entry
|
||||
EXTSYM Get_Next_Entry,Set_DTA_Address,timer2upd,curexecstate,TripBufAvail
|
||||
EXTSYM nmiprevaddrl,nmiprevaddrh,nmirept,nmiprevline,nmistatus,spcnumread
|
||||
EXTSYM nmiprevaddrl,nmiprevaddrh,nmirept,nmiprevline,nmistatus,spcnumread,spchalted
|
||||
EXTSYM NextLineCache,VidStartDraw,ResetTripleBuf,GUINGVID
|
||||
EXTSYM ScanCodeListing,AdjustFrequency,GUISaveVars,Init_Mouse
|
||||
EXTSYM Get_MouseData,Set_MouseXMax,Set_MouseYMax,Set_MousePosition,Get_MousePositionDisplacement
|
||||
EXTSYM GUIInit,GUIDeInit,SpecialLine
|
||||
EXTSYM DrawWater,DrawSmoke,RemoteDisconnect,loadstate3
|
||||
EXTSYM ModemClearBuffer,IPXSearchval
|
||||
EXTSYM ipxlookforconnect
|
||||
EXTSYM DrawWater,DrawBurn,RemoteDisconnect,loadstate3
|
||||
EXTSYM SA1Enable,SA1RAMArea
|
||||
EXTSYM GUIFName,GUICName
|
||||
EXTSYM printnum
|
||||
@@ -108,7 +106,6 @@ EXTSYM showinfogui
|
||||
EXTSYM BackupCVFrame
|
||||
EXTSYM Wait1SecWin,ClearUDPStuff
|
||||
EXTSYM DisableSUDPPacket,EnableSUDPPacket
|
||||
EXTSYM ModemGetChar
|
||||
EXTSYM BackStateSize
|
||||
EXTSYM ResetExecStuff
|
||||
EXTSYM RestoreCVFrame
|
||||
@@ -141,11 +138,8 @@ EXTSYM Force8b,convertnum,converthex
|
||||
EXTSYM per2exec
|
||||
EXTSYM hostname
|
||||
EXTSYM UDPConfig
|
||||
EXTSYM DeInitModem
|
||||
EXTSYM snesmouse
|
||||
EXTSYM pl1upk,pl1downk,pl1leftk,pl1rightk,pl1Lk,pl1Rk,pl1Ak,pl1Bk
|
||||
EXTSYM deinitipx
|
||||
EXTSYM InitModem
|
||||
EXTSYM outofmemfix,yesoutofmemory
|
||||
EXTSYM CReadHead,ReadHead,CFWriteHead,CFWriteStart
|
||||
EXTSYM JoyX,JoyY,JoyMinX,JoyMinY,JoyMaxX,JoyMaxY,JoyMinX209,JoyMaxX209
|
||||
@@ -158,26 +152,29 @@ EXTSYM TCPIPWaitForConnection
|
||||
EXTSYM tcperr
|
||||
EXTSYM TCPIPConnectToServer
|
||||
EXTSYM TCPIPConnectToServerW
|
||||
EXTSYM initipx
|
||||
EXTSYM selc0040
|
||||
EXTSYM ModemCheckRing
|
||||
EXTSYM ModemCheckDCD
|
||||
EXTSYM PreparePacketIPX,TCPIPPreparePacket
|
||||
EXTSYM SendPacketIPX,TCPIPSendPacket,TCPIPSendPacketUDP
|
||||
EXTSYM TCPIPPreparePacket
|
||||
EXTSYM TCPIPSendPacket,TCPIPSendPacketUDP
|
||||
EXTSYM TCPIPDisconnect,TCPIPStatus
|
||||
EXTSYM DeInitModemC
|
||||
EXTSYM ipxgetchar,ipxsendchar,TCPIPStoreByte
|
||||
EXTSYM TCPIPStoreByte
|
||||
EXTSYM TCPIPGetByte,GUIBIFIL
|
||||
EXTSYM ModemSendChar
|
||||
EXTSYM firstsaveinc
|
||||
EXTSYM nssdip1,nssdip2,nssdip3,nssdip4,nssdip5,nssdip6
|
||||
%ifndef __MSDOS__
|
||||
EXTSYM GUIMBVID
|
||||
%endif
|
||||
|
||||
%ifdef __LINUX__
|
||||
EXTSYM numlockptr
|
||||
%endif
|
||||
%ifdef __WIN32__
|
||||
EXTSYM initDirectDraw
|
||||
EXTSYM reInitSound
|
||||
%endif
|
||||
|
||||
%ifdef __MSDOS__
|
||||
EXTSYM dssel, cantinitmodem, ModemClearBuffer, ModemGetChar
|
||||
EXTSYM InitModem, DeInitModem, ModemCheckRing, ModemCheckDCD
|
||||
EXTSYM DeInitModemC, ModemSendChar, UartType
|
||||
EXTSYM deinitipx, IPXSearchval, ipxlookforconnect, initipx
|
||||
EXTSYM PreparePacketIPX,SendPacketIPX,ipxgetchar,ipxsendchar
|
||||
%endif
|
||||
|
||||
NEWSYM GuiAsmStart
|
||||
|
||||
@@ -193,6 +190,7 @@ NEWSYM GuiAsmStart
|
||||
|
||||
|
||||
|
||||
SECTION .data
|
||||
|
||||
|
||||
; ProcessRemoteCommand
|
||||
@@ -597,33 +595,37 @@ NEWSYM KeyQuickClock, dd 0
|
||||
NEWSYM KeyQuickSaveSPC, dd 0
|
||||
NEWSYM AutoIncSaveSlot, db 0
|
||||
NEWSYM TCPIPAddress, times 29 db 0
|
||||
NEWSYM SoundInterpType, db 1
|
||||
NEWSYM SoundInterpType, db 2
|
||||
NEWSYM KeyDisplayFPS, dd 0
|
||||
NEWSYM KeyIncStateSlot, dd 0
|
||||
NEWSYM KeyDecStateSlot, dd 0
|
||||
NEWSYM MotionBlur, dd 0
|
||||
|
||||
GUIsave equ $-GUIRAdd
|
||||
|
||||
NEWSYM ForceROMTiming, db 0
|
||||
NEWSYM ForceHiLoROM, db 0
|
||||
section .bss
|
||||
|
||||
NEWSYM CombinDataGlob, times 3300 db 0 ; 20-name, 42-combo, 2-key#, 1-P#, 1-ff
|
||||
NEWSYM CombinDataLocl, times 3300 db 0
|
||||
NEWSYM ForceROMTiming, resb 1
|
||||
NEWSYM ForceHiLoROM, resb 1
|
||||
|
||||
NEWSYM CombinDataGlob, resb 3300 ; 20-name, 42-combo, 2-key#, 1-P#, 1-ff
|
||||
NEWSYM CombinDataLocl, resb 3300
|
||||
|
||||
section .data
|
||||
NEWSYM CmdLineNetPlay, db 0
|
||||
NEWSYM CmdLineTCPIPAddress, times 29 db 0
|
||||
section .bss
|
||||
|
||||
GUIwinorder times 18 db 0
|
||||
GUIwinpos times 18 db 0
|
||||
GUIwinactiv times 18 db 0
|
||||
DialNumber times 40 db 0
|
||||
ViewBuffer times 50*32 db 0
|
||||
NEWSYM ModemInitStat, db 0
|
||||
ModemProcess db 0 ; Shows current dial/answer process
|
||||
ModemPTimer dd 0 ; Timer for modem process
|
||||
ModemOKStat db 0 ; OK is detected on modem status
|
||||
GUIwinorder resb 18
|
||||
GUIwinpos resb 18
|
||||
GUIwinactiv resb 18
|
||||
DialNumber resb 40
|
||||
ViewBuffer resb 50*32
|
||||
NEWSYM ModemInitStat, resb 1
|
||||
ModemProcess resb 1 ; Shows current dial/answer process
|
||||
ModemPTimer resd 1 ; Timer for modem process
|
||||
ModemOKStat resb 1 ; OK is detected on modem status
|
||||
|
||||
SECTION .data
|
||||
; LOAD STAT INPT OPT VID SND CHT NET GMKEY GUIOP ABT RSET SRC STCN MOVE CMBO ADDO
|
||||
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
|
||||
@@ -631,125 +633,133 @@ GUIwinsizex dd 0,244 ,126 ,189 ,167 ,170 ,188 ,244 ,8*16,235 ,240 ,190 ,9*16,8
|
||||
GUIwinsizey dd 0,190 ,3*16,166 ,190 ,192 ,188 ,191 ,40 ,189 ,150 ,190 ,42 ,40 ,42 ,70 ,190 ,100
|
||||
GUIwinptr db 0
|
||||
|
||||
GUItextcolor db 0,0,0,0,0
|
||||
GUIcmenupos db 0
|
||||
GUIescpress db 0
|
||||
GUIcwinpress db 0
|
||||
GUIpmenupos db 0
|
||||
GUIcrowpos dd 0
|
||||
GUIpclicked db 0
|
||||
GUImouseposx dd 0
|
||||
GUImouseposy dd 0
|
||||
GUICYLocPtr dd 0
|
||||
GUIMenuL dd 0
|
||||
GUIMenuR dd 0
|
||||
GUIMenuD dd 0
|
||||
GUIOnMenuItm db 0
|
||||
NEWSYM GUIQuit, db 0
|
||||
GUIHold db 0
|
||||
GUIHoldx dd 0
|
||||
GUIHoldy dd 0
|
||||
GUIHoldxm dd 0
|
||||
GUIHoldym dd 0
|
||||
GUIcolscaleval dd 0
|
||||
cwindrawn db 0
|
||||
GUIWincol dd 0
|
||||
GUIWincoladd dd 0
|
||||
GUITemp dd 0
|
||||
GUIHoldXlimL dd 0
|
||||
GUIHoldXlimR dd 0
|
||||
GUIHoldYlim dd 0
|
||||
GUIHoldYlimR dd 0
|
||||
cloadnpos dd 0
|
||||
cloadnposb dd 0
|
||||
cloadmaxlen dd 0
|
||||
cloadnleft dd 0
|
||||
cplayernum db 0
|
||||
vbuflimtop dd 0
|
||||
vbuflimbot dd 0
|
||||
GUIScrolTim1 dd 0
|
||||
GUIScrolTim2 dd 0
|
||||
GUICHold dd 0
|
||||
GUICBHold dd 0
|
||||
GUICBHold2 dd 0
|
||||
GUIDClickTL dd 0
|
||||
GUIDClCWin dd 0
|
||||
GUIDClCEntry dd 0
|
||||
GUICResetPos dd 0
|
||||
GUICStatePos dd 0
|
||||
GUICCFlash db 0
|
||||
GUILDFlash db 0
|
||||
GUIPalConv dd 0
|
||||
PrevResoln dw 0
|
||||
SnowMover dd 0
|
||||
keycontrolval dd 0
|
||||
NEWSYM CheatBDoor, db 0
|
||||
NEWSYM ShowTimer, db 0
|
||||
NEWSYM MousePRClick, db 0
|
||||
NEWSYM MouseDis, db 0
|
||||
NEWSYM NetPlayNoMore, db 0
|
||||
RestoreValues db 0
|
||||
NEWSYM NetChatFirst, db 0
|
||||
NEWSYM NetServer, db 0
|
||||
NEWSYM NetQuitAfter, db 0
|
||||
NEWSYM NetNewNick, times 16 db 0
|
||||
NEWSYM NetFilename, times 512 db 0
|
||||
section .bss
|
||||
GUItextcolor resb 5
|
||||
GUIcmenupos resb 1
|
||||
GUIescpress resb 1
|
||||
GUIcwinpress resb 1
|
||||
GUIpmenupos resb 1
|
||||
GUIcrowpos resd 1
|
||||
GUIpclicked resb 1
|
||||
GUImouseposx resd 1
|
||||
GUImouseposy resd 1
|
||||
GUICYLocPtr resd 1
|
||||
GUIMenuL resd 1
|
||||
GUIMenuR resd 1
|
||||
GUIMenuD resd 1
|
||||
GUIOnMenuItm resb 1
|
||||
NEWSYM GUIQuit, resb 1
|
||||
GUIHold resb 1
|
||||
GUIHoldx resd 1
|
||||
GUIHoldy resd 1
|
||||
GUIHoldxm resd 1
|
||||
GUIHoldym resd 1
|
||||
GUIcolscaleval resd 1
|
||||
cwindrawn resb 1
|
||||
GUIWincol resd 1
|
||||
GUIWincoladd resd 1
|
||||
GUITemp resd 1
|
||||
GUIHoldXlimL resd 1
|
||||
GUIHoldXlimR resd 1
|
||||
GUIHoldYlim resd 1
|
||||
GUIHoldYlimR resd 1
|
||||
cloadnpos resd 1
|
||||
cloadnposb resd 1
|
||||
cloadmaxlen resd 1
|
||||
cloadnleft resd 1
|
||||
cplayernum resb 1
|
||||
vbuflimtop resd 1
|
||||
vbuflimbot resd 1
|
||||
GUIScrolTim1 resd 1
|
||||
GUIScrolTim2 resd 1
|
||||
GUICHold resd 1
|
||||
GUICBHold resd 1
|
||||
GUICBHold2 resd 1
|
||||
GUIDClickTL resd 1
|
||||
GUIDClCWin resd 1
|
||||
GUIDClCEntry resd 1
|
||||
GUICResetPos resd 1
|
||||
GUICStatePos resd 1
|
||||
GUICCFlash resb 1
|
||||
GUILDFlash resb 1
|
||||
GUIPalConv resd 1
|
||||
PrevResoln resw 1
|
||||
SnowMover resd 1
|
||||
keycontrolval resd 1
|
||||
NEWSYM CheatBDoor, resb 1
|
||||
NEWSYM ShowTimer, resb 1
|
||||
NEWSYM MousePRClick, resb 1
|
||||
NEWSYM MouseDis, resb 1
|
||||
NEWSYM NetPlayNoMore, resb 1
|
||||
RestoreValues resb 1
|
||||
NEWSYM NetChatFirst, resb 1
|
||||
NEWSYM NetServer, resb 1
|
||||
NEWSYM NetQuitAfter, resb 1
|
||||
NEWSYM NetNewNick, resb 16
|
||||
NEWSYM NetFilename, resb 512
|
||||
|
||||
NEWSYM CheatOn, dd 0
|
||||
NEWSYM NumCheats, dd 0
|
||||
NEWSYM cheatdataprev, times 28 db 0 ; leave contents blank
|
||||
NEWSYM cheatdata, times 28*255+56 db 0 ; toggle, value, address, pvalue, name(22)
|
||||
NEWSYM CheatOn, resd 1
|
||||
NEWSYM NumCheats, resd 1
|
||||
NEWSYM cheatdataprev, resb 28 ; leave contents blank
|
||||
NEWSYM cheatdata, resb 28*255+56 ; toggle, value, address, pvalue, name(22)
|
||||
|
||||
NEWSYM GUIcurrentdir, times 131 db 0
|
||||
NEWSYM GUIcurrentdir, resb 131
|
||||
|
||||
numdrives dd 26
|
||||
curgsval db 0
|
||||
curgsval resb 1
|
||||
|
||||
SECTION .data
|
||||
NEWSYM numdrives, dd 26
|
||||
SubPalTable times 256 db 1 ; Corresponding Gray Scale Color
|
||||
WhichRemote dd 0 ; Modem = 1, IPX = 2, TCP/IP = 4
|
||||
Connected dd 0
|
||||
IDCheckPos dd 0
|
||||
|
||||
NEWSYM pl1neten, db 0
|
||||
NEWSYM pl2neten, db 0
|
||||
NEWSYM pl3neten, db 0
|
||||
NEWSYM pl4neten, db 0
|
||||
NEWSYM pl5neten, db 0
|
||||
NEWSYM cnetplaybuf, times 512 db 0
|
||||
NEWSYM cnetptrhead, dd 0
|
||||
NEWSYM cnetptrtail, dd 0
|
||||
NEWSYM prevp1net, dd 0
|
||||
NEWSYM prevp2net, dd 0
|
||||
NEWSYM prevp3net, dd 0
|
||||
NEWSYM prevp4net, dd 0
|
||||
NEWSYM prevp5net, dd 0
|
||||
NEWSYM netdelayed, db 0
|
||||
NEWSYM ChatProgress,dd 0
|
||||
NEWSYM RecvProgress,dd 0
|
||||
NEWSYM IPXInfoStr, dw 0
|
||||
NEWSYM IPXInfoStrR, dw 0
|
||||
NEWSYM GUICMessage, dd 0
|
||||
NEWSYM GUICTimer, dd 0
|
||||
NEWSYM GUIOn, db 0
|
||||
NEWSYM GUIOn2, db 0
|
||||
NEWSYM GUIReset, db 0
|
||||
SECTION .bss
|
||||
WhichRemote resd 1 ; Modem = 1, IPX = 2, TCP/IP = 4
|
||||
Connected resd 1
|
||||
IDCheckPos resd 1
|
||||
|
||||
NEWSYM pl1neten, resb 1
|
||||
NEWSYM pl2neten, resb 1
|
||||
NEWSYM pl3neten, resb 1
|
||||
NEWSYM pl4neten, resb 1
|
||||
NEWSYM pl5neten, resb 1
|
||||
NEWSYM cnetplaybuf, resb 512
|
||||
NEWSYM cnetptrhead, resd 1
|
||||
NEWSYM cnetptrtail, resd 1
|
||||
NEWSYM prevp1net, resd 1
|
||||
NEWSYM prevp2net, resd 1
|
||||
NEWSYM prevp3net, resd 1
|
||||
NEWSYM prevp4net, resd 1
|
||||
NEWSYM prevp5net, resd 1
|
||||
NEWSYM netdelayed, resb 1
|
||||
NEWSYM ChatProgress,resd 1
|
||||
NEWSYM RecvProgress,resd 1
|
||||
NEWSYM IPXInfoStr, resw 1
|
||||
NEWSYM IPXInfoStrR, resw 1
|
||||
NEWSYM GUICMessage, resd 1
|
||||
NEWSYM GUICTimer, resd 1
|
||||
NEWSYM GUIOn, resb 1
|
||||
NEWSYM GUIOn2, resb 1
|
||||
NEWSYM GUIReset, resb 1
|
||||
;GOSPort db 0
|
||||
NEWSYM CurPalSelect, db 0
|
||||
NEWSYM CurPalSelect, resb 1
|
||||
NEWSYM MotionBlur, resb 1
|
||||
|
||||
NEWSYM StartLL, dd 0
|
||||
NEWSYM StartLR, dd 0
|
||||
NEWSYM LatencyVal, times 32 db 0
|
||||
NEWSYM StartLL, resd 1
|
||||
NEWSYM StartLR, resd 1
|
||||
NEWSYM LatencyVal, resb 32
|
||||
|
||||
NEWSYM NetLoadState, db 0
|
||||
NEWSYM NetLoadState, resb 1
|
||||
|
||||
NEWSYM TRVal, dw 0
|
||||
NEWSYM TGVal, dw 0
|
||||
NEWSYM TBVal, dw 0
|
||||
NEWSYM TRVali, dw 0
|
||||
NEWSYM TGVali, dw 0
|
||||
NEWSYM TBVali, dw 0
|
||||
NEWSYM TRVal2, dw 0
|
||||
NEWSYM TGVal2, dw 0
|
||||
NEWSYM TBVal2, dw 0
|
||||
NEWSYM TRVal, resw 1
|
||||
NEWSYM TGVal, resw 1
|
||||
NEWSYM TBVal, resw 1
|
||||
NEWSYM TRVali, resw 1
|
||||
NEWSYM TGVali, resw 1
|
||||
NEWSYM TBVali, resw 1
|
||||
NEWSYM TRVal2, resw 1
|
||||
NEWSYM TGVal2, resw 1
|
||||
NEWSYM TBVal2, resw 1
|
||||
|
||||
SECTION .text
|
||||
|
||||
%macro stim 0
|
||||
%ifdef __MSDOS__
|
||||
@@ -1032,14 +1042,14 @@ NEWSYM ExecGUISaveVars
|
||||
call GUIDeInit
|
||||
%endmacro
|
||||
|
||||
SECTION .data
|
||||
NEWSYM GUIoldhand9o, dd 0
|
||||
NEWSYM GUIoldhand9s, dw 0
|
||||
NEWSYM GUIoldhand8o, dd 0
|
||||
NEWSYM GUIoldhand8s, dw 0
|
||||
GUIt1cc dd 0
|
||||
GUIt1ccSwap db 0
|
||||
GUIskipnextkey42 db 0
|
||||
SECTION .bss
|
||||
NEWSYM GUIoldhand9o, resd 1
|
||||
NEWSYM GUIoldhand9s, resw 1
|
||||
NEWSYM GUIoldhand8o, resd 1
|
||||
NEWSYM GUIoldhand8s, resw 1
|
||||
GUIt1cc resd 1
|
||||
GUIt1ccSwap resb 1
|
||||
GUIskipnextkey42 resb 1
|
||||
|
||||
SECTION .text
|
||||
NEWSYM GUIinit18_2hz
|
||||
@@ -1099,6 +1109,7 @@ NEWSYM GUI36hzcall
|
||||
and byte[GUINetTextm2+2],0Fh
|
||||
ret
|
||||
|
||||
%ifdef __MSDOS__
|
||||
NEWSYM GUIhandler8h
|
||||
cli
|
||||
push ds
|
||||
@@ -1166,6 +1177,7 @@ NEWSYM GUIhandler9h
|
||||
pop ds
|
||||
sti
|
||||
iretd
|
||||
%endif
|
||||
|
||||
%macro loadmenuopen 1
|
||||
mov al,[GUIcmenupos]
|
||||
@@ -1211,7 +1223,9 @@ loadnetopen:
|
||||
loadmenuopen 8
|
||||
ret
|
||||
|
||||
MouseInitOkay db 0
|
||||
SECTION .bss
|
||||
MouseInitOkay resb 1
|
||||
SECTION .text
|
||||
|
||||
LoadDetermine:
|
||||
mov byte[GUIGameMenuData+14],1
|
||||
@@ -1333,7 +1347,9 @@ DrawSnow:
|
||||
.nomore
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
.giftmsg db 'A GIFT TO YOU IN THE OPTIONS!',0
|
||||
SECTION .text
|
||||
|
||||
ProcessSnowVelocity:
|
||||
cmp dword[MsgGiftLeft],0
|
||||
@@ -1388,8 +1404,11 @@ ProcessSnowVelocity:
|
||||
jnz .loop
|
||||
ret
|
||||
|
||||
OkaySC db 0
|
||||
SECTION .bss
|
||||
OkaySC resb 1
|
||||
SECTION .data
|
||||
cstempfname db 'tmpchtsr.___',0
|
||||
SECTION .text
|
||||
|
||||
|
||||
NEWSYM SaveSramData
|
||||
@@ -1465,7 +1484,9 @@ NEWSYM ProcRewind
|
||||
mov dword[eax+8],0
|
||||
.noteq
|
||||
ret
|
||||
.temp dd 0,0
|
||||
section .bss
|
||||
.temp resd 2
|
||||
section .text
|
||||
|
||||
%macro ProcessOneDigit 1
|
||||
cmp dl,9
|
||||
@@ -1500,7 +1521,9 @@ NEWSYM TestSent
|
||||
mov dword[GUICMessage],.message
|
||||
mov dword[GUICTimer],100000
|
||||
ret
|
||||
SECTION .data
|
||||
.message db 0,0,0,0,' ',0,0,0,0,0,0,0
|
||||
SECTION .text
|
||||
|
||||
NEWSYM StartGUI
|
||||
; cmp byte[OSPort],1
|
||||
@@ -1846,12 +1869,14 @@ NEWSYM StartGUI
|
||||
mov byte[GUIcmenupos],0
|
||||
mov byte[GUIcrowpos],0
|
||||
call loadnetopen
|
||||
%ifdef __MSDOS__
|
||||
cmp byte[WhichRemote],1
|
||||
jne .yesdcd
|
||||
call ModemCheckDCD
|
||||
cmp al,1
|
||||
jne near .nostat20
|
||||
.yesdcd
|
||||
%endif
|
||||
|
||||
mov byte[RestoreValues],1
|
||||
pushad
|
||||
@@ -2029,7 +2054,8 @@ NEWSYM StartGUI
|
||||
.nowater2
|
||||
cmp byte[GUIEffect],4
|
||||
jne .nosmoke
|
||||
call DrawSmoke
|
||||
; call DrawSmoke
|
||||
call DrawBurn
|
||||
.nosmoke
|
||||
; call TestSent
|
||||
cmp byte[CNetType],20
|
||||
@@ -2087,6 +2113,7 @@ NEWSYM StartGUI
|
||||
jne near .nomodem
|
||||
.modem
|
||||
call ProcessModem
|
||||
%ifdef __MSDOS__
|
||||
cmp byte[Connected],1
|
||||
je near .nomodem
|
||||
call ModemGetChar
|
||||
@@ -2121,6 +2148,7 @@ NEWSYM StartGUI
|
||||
.skipstat
|
||||
mov dh,0
|
||||
call NetAddChar
|
||||
%endif
|
||||
.nomodem
|
||||
|
||||
cmp dword[GUIEditStringcWin],0
|
||||
@@ -2249,7 +2277,8 @@ NEWSYM StartGUI
|
||||
mov dword[nmirept],0
|
||||
mov dword[nmiprevline],224
|
||||
mov dword[nmistatus],0
|
||||
mov byte[spcnumread],0
|
||||
mov dword[spcnumread],0
|
||||
mov dword[spchalted],-1
|
||||
mov byte[NextLineCache],0
|
||||
mov byte[DSPMem+08h],0
|
||||
mov byte[DSPMem+18h],0
|
||||
@@ -2474,8 +2503,12 @@ NEWSYM StartGUI
|
||||
call WinErrorB
|
||||
jmp continueprog
|
||||
|
||||
CheckSumVal dd 0
|
||||
SECTION .bss
|
||||
CheckSumVal resd 1
|
||||
SECTION .data
|
||||
WrongCheckSum db 10,13,'ROM Data Mismatch',10,13,10,13,0
|
||||
SECTION .text
|
||||
|
||||
|
||||
SRAMDirc:
|
||||
; get LoadDrive/LoadDir
|
||||
@@ -2550,6 +2583,7 @@ guifirsttimemsg:
|
||||
.mousedis2
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
guiftimemsg1 db 'ONE TIME USER REMINDER :',0
|
||||
guiftimemsg2 db 'PLEASE BE SURE TO READ',0
|
||||
guiftimemsg3 db 'GUINOTES.TXT FOR AN',0
|
||||
@@ -2558,6 +2592,7 @@ guiftimemsg5 db 'ALSO, WHENEVER YOU HAVE',0
|
||||
guiftimemsg6 db 'PROBLEMS, BE SURE TO READ',0
|
||||
guiftimemsg7 db 'ZSNES.FAQ AND README.TXT',0
|
||||
guiftimemsg8 db 'PRESS "Z" TO CONTINUE.',0
|
||||
SECTION .text
|
||||
|
||||
guimustrestartmsg:
|
||||
xor ebx,ebx
|
||||
@@ -2623,11 +2658,13 @@ guimustrestartmsg:
|
||||
mov byte[GUIQuit],1
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
guiqtimemsg1 db 'ZSNES MUST BE RESTARTED',0
|
||||
guiqtimemsg2 db 'TO USE THIS OPTION.',0
|
||||
guiqtimemsg3 db 'THIS PROGRAM WILL NOW',0
|
||||
guiqtimemsg4 db 'EXIT.',0
|
||||
guiqtimemsg8 db 'PRESS ANY KEY.',0
|
||||
SECTION .text
|
||||
|
||||
guiprevideo:
|
||||
xor ebx,ebx
|
||||
@@ -2695,6 +2732,7 @@ guiprevideo:
|
||||
.mousedis2
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
guiprevidmsg1 db 'ZSNES WILL NOW ATTEMPT',0
|
||||
guiprevidmsg2 db 'TO CHANGE YOUR VIDEO',0
|
||||
guiprevidmsg3 db 'MODE. IF THE CHANGE',0
|
||||
@@ -2702,6 +2740,7 @@ guiprevidmsg4 db 'IS UNSUCCESSFUL, WAIT',0
|
||||
guiprevidmsg5 db '10 SECONDS AND VIDEO',0
|
||||
guiprevidmsg6 db 'MODE WILL BE RESET',0
|
||||
guiprevidmsg7 db 'PRESS ANY KEY',0
|
||||
SECTION .text
|
||||
|
||||
guipostvideo:
|
||||
mov ecx,255*144
|
||||
@@ -2790,8 +2829,10 @@ guipostvideo:
|
||||
mov byte[GUIpclicked],1
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
guipostvidmsg1 db 'VIDEO MODE CHANGED.',0
|
||||
guipostvidmsg2 db 'PRESS ANY KEY',0
|
||||
SECTION .text
|
||||
|
||||
guipostvideofail:
|
||||
mov dword[guipostvidptr],guipostvidmsg3b
|
||||
@@ -2883,13 +2924,16 @@ guipostvideofail:
|
||||
%endif
|
||||
jmp guipostvideo.pressedfail
|
||||
|
||||
SECTION .data
|
||||
guipostvidmsg1b db 'VIDEO MODE CHANGE FAILED.',0
|
||||
guipostvidmsg2b db 'UNABLE TO INIT VESA2:',0
|
||||
guipostvidmsg3b db 'AAAAAAAAAAAAAAAAAAAAAAAAA',0
|
||||
guipostvidmsg4b db 'AAAAAAAAAAAAAAAAAAAAAAAAA',0
|
||||
guipostvidmsg5b db 'AAAAAAAAAAAAAAAAAAAAAAAAA',0
|
||||
guipostvidmsg8b db 'PRESS ANY KEY',0
|
||||
guipostvidptr dd 0
|
||||
SECTION .bss
|
||||
guipostvidptr resd 1
|
||||
SECTION .text
|
||||
|
||||
GUILoadManualDir
|
||||
mov ebx,GUILoadTextA
|
||||
@@ -2982,14 +3026,18 @@ GUILoadManualDir
|
||||
.norefresh
|
||||
ret
|
||||
|
||||
ManualCPtr dd 0
|
||||
ManualStatus db 0
|
||||
SECTION .bss
|
||||
ManualCPtr resd 1
|
||||
ManualStatus resb 1
|
||||
|
||||
NEWSYM MovieCounter, dd 0
|
||||
NEWSYM MovieCounter, resd 1
|
||||
|
||||
SECTION .data
|
||||
UnableMovie2 db 'MUST PLAY WITH SOUND OFF',0
|
||||
UnableMovie3 db 'MUST PLAY WITH SOUND ON',0
|
||||
|
||||
SECTION .text
|
||||
|
||||
MoviePlay:
|
||||
cmp byte[CNetType],20
|
||||
je near .dontplay
|
||||
@@ -3029,7 +3077,8 @@ MoviePlay:
|
||||
mov dword[nmirept],0
|
||||
mov dword[nmiprevline],224
|
||||
mov dword[nmistatus],0
|
||||
mov byte[spcnumread],0
|
||||
mov dword[spcnumread],0
|
||||
mov dword[spchalted],-1
|
||||
mov byte[NextLineCache],0
|
||||
.noextra
|
||||
mov al,[RecData]
|
||||
@@ -3077,12 +3126,15 @@ MoviePlay:
|
||||
pop eax
|
||||
ret
|
||||
|
||||
NEWSYM Totalbyteloaded, dd 0
|
||||
NEWSYM sramsavedis, db 0
|
||||
|
||||
SECTION .bss
|
||||
NEWSYM Totalbyteloaded, resd 1
|
||||
NEWSYM sramsavedis, resb 1
|
||||
|
||||
SECTION .data
|
||||
DevicePtr dd pl1selk,pl2selk,pl3selk,pl4selk,pl5selk
|
||||
|
||||
SECTION .text
|
||||
|
||||
CheckMenuItemHelp:
|
||||
mov al,[GUIcmenupos]
|
||||
mov [GUIpmenupos],al
|
||||
@@ -3370,7 +3422,9 @@ GUITryMenuItem:
|
||||
.nomisc
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
.message1 db 'CONFIGURATION FILES SAVED.',0
|
||||
SECTION .text
|
||||
|
||||
DisplayBoxes:
|
||||
xor esi,esi
|
||||
@@ -3585,8 +3639,9 @@ GUIProcReset:
|
||||
dec byte[GUIwinptr]
|
||||
ret
|
||||
|
||||
LoadDuplicFound db 0
|
||||
|
||||
SECTION .bss
|
||||
LoadDuplicFound resb 1
|
||||
SECTION .text
|
||||
|
||||
%macro GUIDMHelp 4
|
||||
mov byte[GUItextcolor],46
|
||||
@@ -4289,7 +4344,9 @@ GUISetPal:
|
||||
jnz .next
|
||||
ret
|
||||
|
||||
NEWSYM GUICPC, times 256 dw 0
|
||||
SECTION .bss ;ALIGN=32
|
||||
NEWSYM GUICPC, resw 256
|
||||
SECTION .text
|
||||
|
||||
%macro GUIPal16b 4
|
||||
mov ax,%2
|
||||
@@ -4746,9 +4803,11 @@ GUISetPal16:
|
||||
jnz .next
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
.multab db 1,1,1,2,2,3,4,4,5,6,6,7,8,8,9,10,10,11,12,12,13,14,14,15,16,16,
|
||||
db 17,18,18,19,20,20,21,22,22,23,24,24,25,26,26,27,28,28,29,30,30,
|
||||
db 31
|
||||
SECTION .text
|
||||
|
||||
GUIBufferData:
|
||||
mov ecx,16384
|
||||
@@ -4906,6 +4965,7 @@ GUIconvpal:
|
||||
mov [cgram],ax
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
GUIMousePtr db 50+88,47+88,45+88,43+88,42+88,00,00,00
|
||||
db 53+88,52+88,46+88,42+88,00,00,00,00
|
||||
db 55+88,54+88,54+88,44+88,00,00,00,00
|
||||
@@ -5505,4 +5565,6 @@ db 57,103,110,236,113,118,203,200,22,87,251,7,138,37,12,84,221,171,51,209
|
||||
db 242,37,89,73,151,162,139,189,131,209,221,96,107,144,175,79,199,123,98,138
|
||||
db 226,86,221,254,72,14,126,180,200,171,85,94,120,124,196,225,150,57,219,158
|
||||
|
||||
SECTION .text
|
||||
|
||||
NEWSYM GuiAsmEnd
|
||||
|
||||
@@ -222,8 +222,10 @@ CheatCodeSearchProcess:
|
||||
mov byte[CopyRamToggle],1
|
||||
ret
|
||||
|
||||
CopyRamToggle db 0
|
||||
FirstSearch db 0
|
||||
SECTION .bss
|
||||
CopyRamToggle resb 1
|
||||
FirstSearch resb 1
|
||||
SECTION .text
|
||||
|
||||
CheatCodeSearchInit:
|
||||
mov byte[CSInputDisplay],'_'
|
||||
@@ -1189,7 +1191,9 @@ decodegg:
|
||||
mov dword[GUIcurrentcheatviewloc],0
|
||||
.noview
|
||||
ret
|
||||
SECTION .data
|
||||
.GG2Norm db 04h,06h,0Dh,0Eh,02h,07h,08h,03h,0Bh,05h,0Ch,09h,0Ah,00h,0Fh,01h
|
||||
SECTION .text
|
||||
|
||||
decodepar:
|
||||
; convert code to number format
|
||||
@@ -1344,10 +1348,12 @@ guicheaterror:
|
||||
mov dword[GUIcurrentcheatwin],1
|
||||
mov byte[GUIpclicked],1
|
||||
ret
|
||||
SECTION .data
|
||||
guicheaterror1 db 'INVALID CODE! YOU',0
|
||||
guicheaterror2 db 'MUST ENTER A VALID',0
|
||||
guicheaterror3 db 'GAME GENIE,PAR, OR',0
|
||||
guicheaterror4 db 'GOLD FINGER CODE.',0
|
||||
guicheaterror5 db 'PRESS ANY KEY.',0
|
||||
guicheatvalrep db 0
|
||||
|
||||
SECTION .bss
|
||||
guicheatvalrep resb 1
|
||||
SECTION .text
|
||||
|
||||
@@ -122,14 +122,17 @@
|
||||
%%noclick
|
||||
%endmacro
|
||||
|
||||
GUIfirstkey dd 0
|
||||
GUIlastkey dd 0
|
||||
NEWSYM GUIkeydelay, dd 0
|
||||
NEWSYM GUIkeydelay2, dd 0
|
||||
GUInextkeydelay dd 0
|
||||
GUIJoyPadnk db 0,0,0,0,0,0,0,0
|
||||
NEWSYM GUIDelayB, db 0
|
||||
UseExtKey db 0
|
||||
SECTION .bss
|
||||
GUIfirstkey resd 1
|
||||
GUIlastkey resd 1
|
||||
NEWSYM GUIkeydelay, resd 1
|
||||
NEWSYM GUIkeydelay2, resd 1
|
||||
GUInextkeydelay resd 1
|
||||
GUIJoyPadnk resb 8
|
||||
NEWSYM GUIDelayB, resb 1
|
||||
UseExtKey resb 1
|
||||
|
||||
SECTION .text
|
||||
|
||||
GUIgetcurrentinput:
|
||||
cmp byte[HoldCommand],2
|
||||
@@ -331,8 +334,10 @@ GUIgetcurrentinput:
|
||||
cmp dh,32
|
||||
jb .noprocess7
|
||||
.ret
|
||||
%ifdef __MSDOS__
|
||||
mov al,dh
|
||||
call ModemSendChar
|
||||
%endif
|
||||
ret
|
||||
.noprocess7
|
||||
cmp dl,27
|
||||
@@ -352,17 +357,21 @@ GUIgetcurrentinput:
|
||||
jmp .nonetwin
|
||||
.yesnet15
|
||||
mov byte[CNetType],0
|
||||
%ifdef __MSDOS__
|
||||
; cmp byte[OSPort],1
|
||||
; je .nodeinitipx
|
||||
call deinitipx
|
||||
.nodeinitipx
|
||||
%endif
|
||||
jmp .closewin
|
||||
.yesnetwin
|
||||
%ifdef __MSDOS__
|
||||
cmp byte[ModemInitStat],0
|
||||
je .nodeinitmodem
|
||||
call DeInitModemC
|
||||
mov byte[ModemInitStat],0
|
||||
.nodeinitmodem
|
||||
%endif
|
||||
mov byte[CNetType],1
|
||||
ret
|
||||
.nonetwin
|
||||
@@ -795,7 +804,9 @@ GUITCPIPKeys:
|
||||
ret
|
||||
|
||||
|
||||
SECTION .data
|
||||
NEWSYM TCPIPPortNum, dd 7845
|
||||
SECTION .text
|
||||
|
||||
GUIOptionKeys:
|
||||
cmp dh,'a'
|
||||
@@ -1158,16 +1169,6 @@ GUIVideoKeys:
|
||||
je .nohiresmode7
|
||||
xor byte[Mode7HiRes16b],1
|
||||
.nohiresmode7
|
||||
%ifndef __MSDOS__
|
||||
cmp dh,'M'
|
||||
jne .nomotionblur
|
||||
xor ebx,ebx
|
||||
mov bl,[cvidmode]
|
||||
cmp byte[GUIMBVID+ebx],0
|
||||
je .nomotionblur
|
||||
xor byte[MotionBlur],1
|
||||
.nomotionblur
|
||||
%endif
|
||||
cmp dh,'B'
|
||||
jne .nobilinearfilter
|
||||
xor ebx,ebx
|
||||
@@ -1176,6 +1177,7 @@ GUIVideoKeys:
|
||||
je .nobilinearfilter
|
||||
xor byte[BilinearFilter],1
|
||||
.nobilinearfilter
|
||||
%ifdef __WIN32__
|
||||
cmp dh,'T'
|
||||
jne .notriplebufferwin
|
||||
xor eax,eax
|
||||
@@ -1183,9 +1185,12 @@ GUIVideoKeys:
|
||||
cmp byte[GUITBWVID+eax],0
|
||||
je near .notriplebufferwin
|
||||
xor byte[TripleBufferWin],1
|
||||
mov byte[vsyncon],0
|
||||
mov byte[cfgvsync],0
|
||||
; mov byte[vsyncon],0
|
||||
; mov byte[cfgvsync],0
|
||||
call initDirectDraw
|
||||
.notriplebufferwin
|
||||
%endif
|
||||
%ifdef __MSDOS__
|
||||
cmp dh,'T'
|
||||
jne .notriplebuffer
|
||||
xor ebx,ebx
|
||||
@@ -1193,9 +1198,10 @@ GUIVideoKeys:
|
||||
cmp byte[GUITBVID+ebx],0
|
||||
je .notriplebuffer
|
||||
xor byte[Triplebufen],1
|
||||
mov byte[vsyncon],0
|
||||
mov byte[cfgvsync],0
|
||||
; mov byte[vsyncon],0
|
||||
; mov byte[cfgvsync],0
|
||||
.notriplebuffer
|
||||
%endif
|
||||
cmp dh,'G'
|
||||
jne .nograyscale
|
||||
xor byte[GrayscaleMode],1
|
||||
@@ -1207,10 +1213,11 @@ GUIVideoKeys:
|
||||
mov al,[vsyncon]
|
||||
mov [cfgvsync],al
|
||||
%ifdef __WIN32__
|
||||
mov byte[TripleBufferWin],0
|
||||
; mov byte[TripleBufferWin],0
|
||||
call initDirectDraw
|
||||
%endif
|
||||
%ifdef __MSDOS__
|
||||
mov byte[Triplebufen],0
|
||||
; mov byte[Triplebufen],0
|
||||
%endif
|
||||
.novsync
|
||||
%endif
|
||||
@@ -1226,6 +1233,11 @@ GUISoundKeys:
|
||||
cmp dh,'E'
|
||||
jne .notenablesound
|
||||
xor byte[cfgsoundon],1
|
||||
%ifdef __WIN32__
|
||||
pushad
|
||||
call reInitSound
|
||||
popad
|
||||
%endif
|
||||
.notenablesound
|
||||
%ifdef __MSDOS__
|
||||
cmp dh,'F'
|
||||
@@ -1300,7 +1312,9 @@ GUISoundKeys:
|
||||
%endif
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
.sampratenext db 1,4,5,6,2,3,0,0,0,0
|
||||
SECTION .text
|
||||
|
||||
GUINetMenuKeys1:
|
||||
cmp dh,'a'
|
||||
@@ -1321,22 +1335,26 @@ GUINetMenuKeys1:
|
||||
jne .notmanual
|
||||
mov byte[CNetType],12
|
||||
mov byte[ModemProcess],0
|
||||
%ifdef __MSDOS__
|
||||
cmp byte[ModemInitStat],1
|
||||
je .noinit
|
||||
call InitModem
|
||||
mov byte[ModemInitStat],1
|
||||
.noinit
|
||||
%endif
|
||||
ret
|
||||
.notmanual
|
||||
cmp dh,'W'
|
||||
jne .notwait
|
||||
mov byte[CNetType],10
|
||||
mov byte[ModemProcess],0
|
||||
%ifdef __MSDOS__
|
||||
cmp byte[ModemInitStat],1
|
||||
je .noinit2
|
||||
call InitModem
|
||||
mov byte[ModemInitStat],1
|
||||
.noinit2
|
||||
%endif
|
||||
ret
|
||||
.notwait
|
||||
ret
|
||||
@@ -1357,10 +1375,12 @@ GUIGetInputLine:
|
||||
jne .nodial
|
||||
mov byte[CNetType],11
|
||||
mov byte[ModemProcess],0
|
||||
%ifdef __MSDOS__
|
||||
cmp byte[ModemInitStat],1
|
||||
je .noinit
|
||||
call InitModem
|
||||
mov byte[ModemInitStat],1
|
||||
%endif
|
||||
.noedit
|
||||
ret
|
||||
.noinit
|
||||
@@ -1409,12 +1429,14 @@ GUIGetInputLine:
|
||||
mov [GUIEditStringcLen],eax
|
||||
ret
|
||||
|
||||
GUIEditString dd 0 ; Pointer to string
|
||||
GUIEditStringcLen dd 0 ; Pointer to end of string (done in function)
|
||||
GUIEditStringmLen dd 0 ; Max length of string
|
||||
GUIEditStringLTxt dd 0 ; blink value, should be set to 0 when box selected
|
||||
GUIEditStringLstb dd 0 ; if cursor is placed (set in main function)
|
||||
GUIEditStringcWin dd 0 ; 0 = no text window selected
|
||||
SECTION .bss
|
||||
GUIEditString resd 1 ; Pointer to string
|
||||
GUIEditStringcLen resd 1 ; Pointer to end of string (done in function)
|
||||
GUIEditStringmLen resd 1 ; Max length of string
|
||||
GUIEditStringLTxt resd 1 ; blink value, should be set to 0 when box selected
|
||||
GUIEditStringLstb resd 1 ; if cursor is placed (set in main function)
|
||||
GUIEditStringcWin resd 1 ; 0 = no text window selected
|
||||
SECTION .text
|
||||
|
||||
GUIComboKeys:
|
||||
; Calculate Position
|
||||
@@ -1837,8 +1859,10 @@ InsertSearchCharacter:
|
||||
pop edx
|
||||
ret
|
||||
|
||||
CSOverValue db 0
|
||||
CSCurValue dd 0
|
||||
SECTION .bss
|
||||
CSOverValue resb 1
|
||||
CSCurValue resd 1
|
||||
SECTION .text
|
||||
|
||||
InsertSearchDescription:
|
||||
mov eax,CSDescDisplay
|
||||
@@ -2792,9 +2816,11 @@ GUILoadKeys:
|
||||
call GUILoadData
|
||||
.notdirectload
|
||||
ret
|
||||
.foundval dd 0
|
||||
.numfound dd 0
|
||||
.maxfound dd 0
|
||||
SECTION .bss
|
||||
.foundval resd 1
|
||||
.numfound resd 1
|
||||
.maxfound resd 1
|
||||
SECTION .text
|
||||
|
||||
.dirwin
|
||||
%ifdef __LINUX__
|
||||
|
||||
@@ -166,7 +166,9 @@
|
||||
|
||||
;LGUI
|
||||
|
||||
netlastloaded db 0
|
||||
SECTION .bss
|
||||
netlastloaded resb 1
|
||||
SECTION .text
|
||||
|
||||
GUIloadfilename:
|
||||
cmp byte[CNetType],15
|
||||
@@ -266,7 +268,8 @@ GUIloadfilename:
|
||||
mov dword[nmirept],0
|
||||
mov dword[nmiprevline],224
|
||||
mov dword[nmistatus],0
|
||||
mov byte[spcnumread],0
|
||||
mov dword[spcnumread],0
|
||||
mov dword[spchalted],-1
|
||||
mov byte[NextLineCache],0
|
||||
mov byte[curexecstate],1
|
||||
|
||||
@@ -339,14 +342,12 @@ GUIloadfilename:
|
||||
mov al,2
|
||||
.nopal2
|
||||
mov byte[romispal],0
|
||||
mov word[totlines],262
|
||||
mov word[totlines],263
|
||||
mov dword[MsgCount],120
|
||||
cmp al,1
|
||||
jbe .nopal
|
||||
cmp al,0Dh
|
||||
je .nopal
|
||||
mov byte[romispal],1
|
||||
mov word[totlines],314
|
||||
mov word[totlines],313
|
||||
mov dword[MsgCount],100
|
||||
.nopal
|
||||
call showinfogui
|
||||
@@ -565,7 +566,9 @@ GUILoadData:
|
||||
mov byte[GUIwinorder+eax],0
|
||||
dec byte[GUIwinptr]
|
||||
ret
|
||||
SECTION .data
|
||||
.drivefn db 'A:\temp.tmp',0
|
||||
SECTION .text
|
||||
|
||||
GetNormalEntries2:
|
||||
cmp byte[showallext],1
|
||||
@@ -781,8 +784,10 @@ GetLoadLfn:
|
||||
pop edi
|
||||
ret
|
||||
|
||||
LFNData times 400 db 0
|
||||
LFNHandle dw 0
|
||||
SECTION .bss
|
||||
LFNData resb 400
|
||||
LFNHandle resw 1
|
||||
SECTION .text
|
||||
|
||||
GetLoadNormal:
|
||||
call GetNormalEntries2
|
||||
@@ -1035,8 +1040,11 @@ GetLoadHeader:
|
||||
jnz .loop3
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
.invfile db ' ** INVALID FILE **',0
|
||||
fnameheadtemp times 22 db 0
|
||||
SECTION .bss
|
||||
fnameheadtemp resb 22
|
||||
SECTION .text
|
||||
|
||||
GetNormalDirEntries2:
|
||||
GUIGetDir2
|
||||
@@ -1090,7 +1098,9 @@ GetLoadDirNormallfn:
|
||||
pop edi
|
||||
ret
|
||||
|
||||
Win95Failed db 0
|
||||
SECTION .bss
|
||||
Win95Failed resb 1
|
||||
SECTION .text
|
||||
|
||||
NEWSYM GetCurDir
|
||||
; get Drive/Dir
|
||||
@@ -1400,16 +1410,19 @@ GUIGetDirs:
|
||||
%endif
|
||||
ret
|
||||
|
||||
BubbleSorted db 0
|
||||
GUIcurrentfilewin dd 0
|
||||
GUIcurrentviewloc dd 0
|
||||
GUIcurrentcursloc dd 0
|
||||
GUIcurrentdirviewloc dd 0
|
||||
GUIcurrentdircursloc dd 0
|
||||
GUIdirStartLoc dd 0
|
||||
GUInumentries dd 0
|
||||
GUIdirentries dd 0
|
||||
GUIfileentries dd 0
|
||||
SECTION .bss
|
||||
BubbleSorted resb 1
|
||||
GUIcurrentfilewin resd 1
|
||||
GUIcurrentviewloc resd 1
|
||||
GUIcurrentcursloc resd 1
|
||||
GUIcurrentdirviewloc resd 1
|
||||
GUIcurrentdircursloc resd 1
|
||||
GUIdirStartLoc resd 1
|
||||
GUInumentries resd 1
|
||||
GUIdirentries resd 1
|
||||
GUIfileentries resd 0
|
||||
|
||||
SECTION .data
|
||||
%ifdef __LINUX__
|
||||
NEWSYM GUIsmcfind, db '*.[sS][mM][cC]',0
|
||||
NEWSYM GUIsfcfind, db '*.[sS][fF][cC]',0
|
||||
@@ -1444,8 +1457,12 @@ NEWSYM GUIfindall, db '*',0
|
||||
GUIfindDIR db '*.*',0
|
||||
NEWSYM GUIfindall, db '*.*',0
|
||||
%endif
|
||||
|
||||
SECTION .data
|
||||
NEWSYM DTALoc, times 2048+32 db 0
|
||||
|
||||
SECTION .text
|
||||
|
||||
; Routines to load from the Quick Menu
|
||||
loadquickfname:
|
||||
pushad
|
||||
@@ -1622,4 +1639,7 @@ loadquickfname:
|
||||
.failed
|
||||
pop eax
|
||||
ret
|
||||
.temp times 256 dd 0
|
||||
|
||||
SECTION .bss
|
||||
.temp resd 256
|
||||
SECTION .text
|
||||
|
||||
@@ -90,7 +90,8 @@ MovieRecord:
|
||||
mov dword[nmirept],0
|
||||
mov dword[nmiprevline],224
|
||||
mov dword[nmistatus],0
|
||||
mov byte[spcnumread],0
|
||||
mov dword[spcnumread],0
|
||||
mov dword[spchalted],-1
|
||||
mov byte[NextLineCache],0
|
||||
mov dword[PJoyAOrig],0
|
||||
mov dword[PJoyBOrig],0
|
||||
@@ -114,12 +115,15 @@ MovieRecord:
|
||||
.dontrecord
|
||||
ret
|
||||
|
||||
MovieRecordWinVal db 0
|
||||
NEWSYM MovieProcessing, db 0
|
||||
NEWSYM MovieFileHand, dw 0
|
||||
NEWSYM RepeatFrame, db 0
|
||||
NEWSYM RecData, times 16 db 0
|
||||
NEWSYM NoPictureSave, db 0
|
||||
SECTION .bss
|
||||
MovieRecordWinVal resb 1
|
||||
NEWSYM MovieProcessing, resb 1
|
||||
NEWSYM MovieFileHand, resw 1
|
||||
NEWSYM RepeatFrame, resb 1
|
||||
NEWSYM RecData, resb 16
|
||||
NEWSYM NoPictureSave, resb 1
|
||||
|
||||
SECTION .text
|
||||
|
||||
SkipMovie:
|
||||
mov byte[MovieRecordWinVal],0
|
||||
@@ -190,6 +194,7 @@ CalibrateDispB:
|
||||
call WaitForKey
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
guicalberror1 db 'PRESS THE TOP LEFT',0
|
||||
guicalberror2 db 'CORNER AND PRESS A',0
|
||||
guicalberror3 db 'BUTTON OR KEY',0
|
||||
@@ -197,6 +202,7 @@ guicalberror4 db 'PRESS THE BOTTOM',0
|
||||
guicalberror5 db 'RIGHT CORNER AND',0
|
||||
guicalberror6 db 'PRESS A BUTTON OR',0
|
||||
guicalberror7 db 'KEY',0
|
||||
SECTION .text
|
||||
|
||||
|
||||
SetAllKeys:
|
||||
@@ -247,7 +253,9 @@ SetAllKeys:
|
||||
dec ecx
|
||||
jnz .loop
|
||||
ret
|
||||
SECTION .data
|
||||
.ordercalb dd 2,3,4,5,1,0,7,10,6,9,8,11
|
||||
SECTION .text
|
||||
|
||||
CalibrateDev1:
|
||||
xor eax,eax
|
||||
@@ -392,10 +400,12 @@ CalibrateDev1:
|
||||
mov [JoyMaxY209],eax
|
||||
mov [CalibYmax209],eax
|
||||
ret
|
||||
.joyblx dd 0
|
||||
.joybly dd 0
|
||||
.joybcx dd 0
|
||||
.joybcy dd 0
|
||||
SECTION .bss
|
||||
.joyblx resd 1
|
||||
.joybly resd 1
|
||||
.joybcx resd 1
|
||||
.joybcy resd 1
|
||||
SECTION .text
|
||||
|
||||
|
||||
SetDevice:
|
||||
|
||||
@@ -23,10 +23,12 @@ EXTSYM CheckScreenSaver
|
||||
EXTSYM MinimizeWindow
|
||||
%endif
|
||||
|
||||
lastmouseholded db 0
|
||||
mousebuttonstat dw 0
|
||||
MouseMoveOkay db 0
|
||||
LastHoldEnable db 0
|
||||
SECTION .bss
|
||||
lastmouseholded resb 1
|
||||
mousebuttonstat resw 1
|
||||
MouseMoveOkay resb 1
|
||||
LastHoldEnable resb 1
|
||||
SECTION .text
|
||||
|
||||
ProcessMouse:
|
||||
; Process holds
|
||||
@@ -832,6 +834,9 @@ GUIProcVideo:
|
||||
je .failed2
|
||||
mov dword[GUIkeydelay],0
|
||||
ret
|
||||
.fullsc
|
||||
mov [PrevFSMode],al
|
||||
ret
|
||||
.failed
|
||||
mov byte[videotroub],0
|
||||
mov al,[.prevvid]
|
||||
@@ -851,7 +856,9 @@ GUIProcVideo:
|
||||
call GUISetPal
|
||||
mov dword[GUIkeydelay],0
|
||||
ret
|
||||
.prevvid db 0
|
||||
SECTION .bss
|
||||
.prevvid resb 1
|
||||
SECTION .text
|
||||
|
||||
NEWSYM SwitchFullScreen
|
||||
pushad
|
||||
@@ -1007,6 +1014,43 @@ GUIWinClicked:
|
||||
%%noclick
|
||||
%endmacro
|
||||
|
||||
%macro GUIClickCButtonf 4
|
||||
cmp eax,%1+1
|
||||
jl %%noclick
|
||||
cmp edx,%2+3
|
||||
jl %%noclick
|
||||
cmp eax,%1+6
|
||||
jg %%noclick
|
||||
cmp edx,%2+8
|
||||
jg %%noclick
|
||||
xor %3,1
|
||||
%ifdef __WIN32__
|
||||
pushad
|
||||
call %4
|
||||
popad
|
||||
%endif
|
||||
%%noclick
|
||||
%endmacro
|
||||
|
||||
%macro GUIClickCButtonfT 5
|
||||
cmp eax,%1+1
|
||||
jl %%noclick
|
||||
cmp edx,%2+3
|
||||
jl %%noclick
|
||||
cmp eax,%1+6
|
||||
jg %%noclick
|
||||
cmp edx,%2+8
|
||||
jg %%noclick
|
||||
xor %3,1
|
||||
mov %4,0
|
||||
%ifdef __WIN32__
|
||||
pushad
|
||||
call %5
|
||||
popad
|
||||
%endif
|
||||
%%noclick
|
||||
%endmacro
|
||||
|
||||
%macro GUIClickCButtonC 3
|
||||
cmp eax,%1+1
|
||||
jl %%noclick
|
||||
@@ -1108,6 +1152,29 @@ GUIWinClicked:
|
||||
%%noclick
|
||||
%endmacro
|
||||
|
||||
%ifndef __LINUX__
|
||||
%macro GUIClickCButton2r 5
|
||||
cmp eax,%1+1
|
||||
jl %%noclick
|
||||
cmp edx,%2+3
|
||||
jl %%noclick
|
||||
cmp eax,%1+6
|
||||
jg %%noclick
|
||||
cmp edx,%2+8
|
||||
jg %%noclick
|
||||
xor %3,%5
|
||||
mov al,%3
|
||||
mov %4,al
|
||||
%ifdef __WIN32__
|
||||
pushad
|
||||
call initDirectDraw
|
||||
popad
|
||||
%endif
|
||||
ret
|
||||
%%noclick
|
||||
%endmacro
|
||||
%endif
|
||||
|
||||
%macro GUIClickCButton3 5
|
||||
cmp eax,%1+1
|
||||
jl %%noclick
|
||||
@@ -1443,11 +1510,13 @@ GUIWinClicked:
|
||||
%%nolower
|
||||
%endmacro
|
||||
|
||||
GUIlastdispval dd 0
|
||||
GUIdispmode dd 0
|
||||
GUIlastypos dd 0
|
||||
GUIlastcpos dd 0
|
||||
GUIlastvpos dd 0
|
||||
SECTION .bss
|
||||
GUIlastdispval resd 1
|
||||
GUIdispmode resd 1
|
||||
GUIlastypos resd 1
|
||||
GUIlastcpos resd 1
|
||||
GUIlastvpos resd 1
|
||||
SECTION .text
|
||||
|
||||
%macro GUISlidebarImpl 10 ; x1,y1,x2,y2,GUI?StA,ScrnSize,ViewLoc,CursLoc,Entries,win#
|
||||
mov dword[GUIdispmode],0
|
||||
@@ -2243,7 +2312,7 @@ DisplayGUIVideoClick:
|
||||
.nocheckboxttb
|
||||
GUIClickCButton 11,183,byte[GrayscaleMode]
|
||||
%ifdef __WIN32__
|
||||
GUIClickCButtonT 115,183,byte[vsyncon],byte[TripleBufferWin]
|
||||
GUIClickCButtonf 115,183,byte[vsyncon],initDirectDraw
|
||||
%endif
|
||||
%ifdef __MSDOS__
|
||||
GUIClickCButtonT 115,183,byte[vsyncon],byte[Triplebufen]
|
||||
@@ -2251,16 +2320,9 @@ DisplayGUIVideoClick:
|
||||
xor ebx,ebx
|
||||
mov bl,[cvidmode]
|
||||
cmp byte[GUIM7VID+ebx],0
|
||||
je .nocheckboxm7
|
||||
je .nocheckboxtm7
|
||||
GUIClickCButton5 11,173,byte[Mode7HiRes16b],1
|
||||
.nocheckboxm7
|
||||
%ifndef __MSDOS__
|
||||
mov bl,[cvidmode]
|
||||
cmp byte[GUIMBVID+ebx],0
|
||||
je .nocheckboxmb
|
||||
GUIClickCButton5 11,173,byte[MotionBlur],1
|
||||
.nocheckboxmb
|
||||
%endif
|
||||
.nocheckboxtm7
|
||||
xor ebx,ebx
|
||||
mov bl,[cvidmode]
|
||||
cmp byte[GUIHSVID+ebx],0
|
||||
@@ -2273,7 +2335,7 @@ DisplayGUIVideoClick:
|
||||
mov bl,[cvidmode]
|
||||
cmp byte[GUITBWVID+ebx],0
|
||||
je near .notriplebufferwin
|
||||
GUIClickCButtonT 11,123,byte[TripleBufferWin],byte[vsyncon]
|
||||
GUIClickCButtonf 11,123,byte[TripleBufferWin],initDirectDraw
|
||||
.notriplebufferwin
|
||||
%endif
|
||||
xor ebx,ebx
|
||||
@@ -2320,15 +2382,17 @@ DisplayGUIVideoClick:
|
||||
xor al,al
|
||||
ret
|
||||
|
||||
GUINumValue dd 0
|
||||
GUIBlankVar dd 0
|
||||
SECTION .bss
|
||||
GUINumValue resd 1
|
||||
GUIBlankVar resd 1
|
||||
SECTION .text
|
||||
|
||||
DisplayGUISoundClick:
|
||||
mov eax,[GUImouseposx]
|
||||
sub eax,[GUIwinposx+6*4]
|
||||
mov edx,[GUImouseposy]
|
||||
sub edx,[GUIwinposy+6*4]
|
||||
GUIClickCButton 11,21,byte[cfgsoundon]
|
||||
GUIClickCButtonf 11,21,byte[cfgsoundon],reInitSound
|
||||
%ifdef __MSDOS__
|
||||
GUIClickCButton 102,21,byte[cfgforce8b]
|
||||
%endif
|
||||
@@ -2404,7 +2468,9 @@ DisplayGUISoundClick:
|
||||
.nomovebar
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
sampratenext db 1,4,5,6,2,3,0,0,0,0
|
||||
SECTION .text
|
||||
|
||||
%macro GUIBoxVar 6
|
||||
cmp eax,%1
|
||||
@@ -2600,9 +2666,11 @@ guipresstest:
|
||||
; pop ebx
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
guipresstext1 db 'ENTER THE KEY',0
|
||||
guipresstext2 db 'OR BUTTON TO USE',0
|
||||
guipresstext3 db '(ESC TO CLEAR)',0
|
||||
SECTION .text
|
||||
|
||||
guipresstestb:
|
||||
call GUIUnBuffer
|
||||
@@ -2674,6 +2742,7 @@ guipresstestb:
|
||||
; pop ebx
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
guipresstext3b db '(ESC TO SKIP)',0
|
||||
guipresstext4b db 'FOR UP ',0
|
||||
db 'FOR DOWN ',0
|
||||
@@ -2687,8 +2756,10 @@ db 'FOR X (TOP BUTTON) ',0
|
||||
db 'FOR Y (LEFT BUTTON) ',0
|
||||
db 'FOR THE L BUTTON ',0
|
||||
db 'FOR THE R BUTTON ',0
|
||||
guipressptr dd 0
|
||||
guicpressptr dd 0
|
||||
SECTION .bss
|
||||
guipressptr resd 1
|
||||
guicpressptr resd 1
|
||||
SECTION .text
|
||||
|
||||
DisplayGameOptnsClick:
|
||||
; Process boxes
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
; GUI NetPlay Routines (Modem,IPX,UDP+TCP/IP)
|
||||
|
||||
ProcessModem:
|
||||
%ifdef __WIN32__
|
||||
cmp byte[ModemProcess],40
|
||||
jne near .noprocess40
|
||||
cmp byte[maxskip],3
|
||||
@@ -28,7 +29,7 @@ ProcessModem:
|
||||
mov byte[frameskip],0
|
||||
mov byte[Latencytochange],3
|
||||
mov byte[Latency],3
|
||||
mov byte[IPXSearchval],0
|
||||
; mov byte[IPXSearchval],0
|
||||
mov byte[RemoteDisconnect],0
|
||||
mov byte[HoldCommand],1
|
||||
mov byte[RemoteCommand],1
|
||||
@@ -63,6 +64,7 @@ ProcessModem:
|
||||
call .writestr
|
||||
mov byte[ModemProcess],42
|
||||
ret
|
||||
SECTION .data
|
||||
.tcpipdones db 'DONE',13,10,13,10,'WAITING FOR CLIENT...',0
|
||||
.tcpipdonec db 'DONE',13,10,13,10,'CONNECTING TO SERVER...',0
|
||||
.tcpipdones2 db 13,10,13,10,'FOUND CLIENT.',0
|
||||
@@ -77,6 +79,8 @@ ProcessModem:
|
||||
.errorinit db 'FAILED NET INIT',0
|
||||
.errorinit2 db 'CANNOT START SERVER',0
|
||||
.errorinit3 db 'CANNOT CONNECT',0
|
||||
SECTION .text
|
||||
|
||||
.noprocess40
|
||||
cmp byte[ModemProcess],41
|
||||
jne near .noprocess41
|
||||
@@ -87,7 +91,7 @@ ProcessModem:
|
||||
mov byte[frameskip],0
|
||||
mov byte[Latencytochange],3
|
||||
mov byte[Latency],3
|
||||
mov byte[IPXSearchval],0
|
||||
; mov byte[IPXSearchval],0
|
||||
mov byte[RemoteDisconnect],0
|
||||
mov byte[HoldCommand],1
|
||||
mov byte[RemoteCommand],1
|
||||
@@ -226,6 +230,8 @@ ProcessModem:
|
||||
mov byte[ModemProcess],66
|
||||
ret
|
||||
.noprocess47
|
||||
%endif
|
||||
%ifdef __MSDOS__
|
||||
cmp byte[ModemProcess],30
|
||||
jne near .noprocess30
|
||||
mov byte[Latencytochange],2
|
||||
@@ -477,6 +483,7 @@ ProcessModem:
|
||||
.nocdc7
|
||||
ret
|
||||
.noprocess7
|
||||
%endif
|
||||
|
||||
; Connect initialization
|
||||
cmp byte[ModemProcess],64
|
||||
@@ -746,7 +753,9 @@ ProcessModem:
|
||||
mov dl,[.hexval+edx]
|
||||
call NetAddChar
|
||||
ret
|
||||
SECTION .data
|
||||
.hexval db '0123456789ABCDEF'
|
||||
%ifdef __MSDOS__
|
||||
.unableinit db 'CANNOT INIT DRIVER!',13,10,0
|
||||
.init db 'ZSNES MODEM TERMINAL',13,10,0
|
||||
.initb db 13,10,'INITIALIZING MODEM :',13,10,13,10,0
|
||||
@@ -757,21 +766,28 @@ ProcessModem:
|
||||
.tout db 'MODEM RESPONSE TIMEOUT',13,10,0
|
||||
.ata db 'ATA',13,0
|
||||
.cdet db 'CARRIER DETECTED',13,10,0
|
||||
.invver db 13,10,'INCOMPATIBLE VERSION!',13,10,0
|
||||
.rdet db 'WAITING FOR RING...',13,10,0
|
||||
.invsnd db 'INVALID SOUND SETTING!',13,10,0
|
||||
.noipx db 13,10,13,10,'UNABLE TO INIT IPX!',13,10,0
|
||||
.yesipx db 13,10,13,10,'IPX INITIALIZED.',13,10,13,10,'WAITING FOR REMOTE',13,10,0
|
||||
.localid db 'LOCAL ID : ',0
|
||||
.remoteid db 'REMOTE ID : ',0
|
||||
.connectest db 'CONNECTION ESTABLISHED',13,10,0
|
||||
%endif
|
||||
.invver db 13,10,'INCOMPATIBLE VERSION!',13,10,0
|
||||
.invsnd db 'INVALID SOUND SETTING!',13,10,0
|
||||
%ifdef __WIN32__
|
||||
.tcpipinit db 'ZSNES NET INTERFACE',13,10,13,10,0
|
||||
.tcpipserv db 'INIT SERVER ... ',0
|
||||
.tcpipclie db 'INIT CLIENT ... ',0
|
||||
InitStr1Done db 0
|
||||
%endif
|
||||
SECTION .bss
|
||||
InitStr1Done resb 1
|
||||
SECTION .text
|
||||
|
||||
NEWSYM PreparePacket
|
||||
%ifdef __MSDOS__
|
||||
call PreparePacketIPX
|
||||
%endif
|
||||
cmp byte[WhichRemote],4
|
||||
jne .nottcpip
|
||||
call TCPIPPreparePacket
|
||||
@@ -779,7 +795,9 @@ NEWSYM PreparePacket
|
||||
ret
|
||||
|
||||
NEWSYM SendPacket
|
||||
%ifdef __MSDOS__
|
||||
call SendPacketIPX
|
||||
%endif
|
||||
cmp byte[WhichRemote],4
|
||||
jne .nottcpip
|
||||
call TCPIPSendPacket
|
||||
@@ -787,7 +805,9 @@ NEWSYM SendPacket
|
||||
ret
|
||||
|
||||
NEWSYM SendPacketUDP
|
||||
%ifdef __MSDOS__
|
||||
call SendPacketIPX
|
||||
%endif
|
||||
cmp byte[WhichRemote],4
|
||||
jne .nottcpip
|
||||
call TCPIPSendPacketUDP
|
||||
@@ -807,15 +827,19 @@ NEWSYM WritetochatBuffer
|
||||
.nomore
|
||||
ret
|
||||
|
||||
NEWSYM RemoteCommand, db 0
|
||||
HoldCommand db 0
|
||||
SECTION .bss
|
||||
NEWSYM RemoteCommand, resb 1
|
||||
HoldCommand resb 1
|
||||
SECTION .text
|
||||
|
||||
RemoteDeInit:
|
||||
%ifdef __MSDOS__
|
||||
cmp byte[ModemInitStat],0
|
||||
je .nodeinitmodem
|
||||
call DeInitModemC
|
||||
mov byte[ModemInitStat],0
|
||||
.nodeinitmodem
|
||||
%endif
|
||||
mov byte[CNetType],1
|
||||
cmp byte[WhichRemote],2
|
||||
jne .noipx
|
||||
@@ -850,9 +874,12 @@ Checkfileexist:
|
||||
.failed
|
||||
mov eax,1
|
||||
ret
|
||||
.temp db 0
|
||||
SECTION .bss
|
||||
.temp resb 1
|
||||
SECTION .text
|
||||
|
||||
ProcessRemoteCommand:
|
||||
%ifdef __MSDOS__
|
||||
cmp byte[WhichRemote],1
|
||||
jne .notmodem
|
||||
push edx
|
||||
@@ -861,6 +888,7 @@ ProcessRemoteCommand:
|
||||
cmp al,1
|
||||
jne near .nomulti
|
||||
.notmodem
|
||||
%endif
|
||||
cmp byte[RemoteDisconnect],1
|
||||
je near .nomulti
|
||||
call ProcRewind
|
||||
@@ -1379,6 +1407,7 @@ ProcessRemoteCommand:
|
||||
mov byte[RemoteCommand],1
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
.chatinitial db '>',0
|
||||
.actinitial db '*',0
|
||||
.actinitial2 db ' ',0
|
||||
@@ -1390,6 +1419,7 @@ ProcessRemoteCommand:
|
||||
.strinvalid db '** INVALID NICK **',13,10,0
|
||||
.strtoolong db '** NICK IS TOO LONG **',13,10,0
|
||||
.nickchangeb db ' IS NOW KNOWN AS ',0
|
||||
SECTION .text
|
||||
|
||||
transfersram:
|
||||
cmp byte[SFXSRAM],0
|
||||
@@ -1528,6 +1558,7 @@ NEWSYM RemoteGetEAX
|
||||
|
||||
|
||||
NEWSYM RemoteSendChar
|
||||
%ifdef __MSDOS__
|
||||
cmp byte[WhichRemote],1
|
||||
jne .nomodem
|
||||
call ModemSendChar
|
||||
@@ -1536,6 +1567,7 @@ NEWSYM RemoteSendChar
|
||||
jne .noipx
|
||||
call ipxsendchar
|
||||
.noipx
|
||||
%endif
|
||||
cmp byte[WhichRemote],4
|
||||
jne .notcpip
|
||||
call TCPIPStoreByte
|
||||
@@ -1543,6 +1575,7 @@ NEWSYM RemoteSendChar
|
||||
ret
|
||||
|
||||
NEWSYM RemoteGetChar
|
||||
%ifdef __MSDOS
|
||||
cmp byte[WhichRemote],1
|
||||
jne .nomodem
|
||||
call ModemGetChar
|
||||
@@ -1551,12 +1584,14 @@ NEWSYM RemoteGetChar
|
||||
jne .noipx
|
||||
call ipxgetchar
|
||||
.noipx
|
||||
%endif
|
||||
cmp byte[WhichRemote],4
|
||||
jne .notcpip
|
||||
call TCPIPGetByte
|
||||
.notcpip
|
||||
ret
|
||||
|
||||
%ifdef __MSDOS__
|
||||
ModemSendStr:
|
||||
.loop
|
||||
mov al,[esi]
|
||||
@@ -1567,13 +1602,17 @@ ModemSendStr:
|
||||
jmp .loop
|
||||
.nomore
|
||||
ret
|
||||
%endif
|
||||
|
||||
NetLoadHandle dw 0
|
||||
NetStateSize dd 0
|
||||
NetStateTotal dd 0
|
||||
NetStateQuit db 0
|
||||
NetStateBuffer times 2048 db 0
|
||||
SECTION .bss
|
||||
NetLoadHandle resw 1
|
||||
NetStateSize resd 1
|
||||
NetStateTotal resd 1
|
||||
NetStateQuit resb 1
|
||||
NetStateBuffer resb 2048
|
||||
SECTION .data
|
||||
Netfname db 'nettemp.zst',0
|
||||
SECTION .text
|
||||
|
||||
NetLoadStuff:
|
||||
call loadnetopen
|
||||
@@ -1783,6 +1822,7 @@ loadstaterecv:
|
||||
.notzero
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
StateLoadedOk db 10,13,'STATE LOADED.',10,13,10,13,0
|
||||
StateLoadedFail db 10,13,'LOAD FAILED.',10,13,10,13,0
|
||||
|
||||
SECTION .text
|
||||
|
||||
@@ -804,6 +804,7 @@ DisplayGUILoad:
|
||||
DrawGUIWinBox 1,229,144,228,152,dl
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
GUILoadText1 db 'SELECT FILE TO LOAD :',0
|
||||
GUILoadText2 db 'DISPLAY TYPE :',0
|
||||
GUILoadText3 db 'NORMAL 8.3 FORMAT',0
|
||||
@@ -819,9 +820,12 @@ GUILoadTextC db 'NTSC',0
|
||||
GUILoadTextD db 'PAL',0
|
||||
GUILoadTextE db 'LOROM',0
|
||||
GUILoadTextF db 'HIROM',0
|
||||
GUILStA dd 0,0,0
|
||||
GUILStB dd 0,0,0
|
||||
GUILoadPos db 0
|
||||
|
||||
SECTION .bss
|
||||
GUILStA resd 3
|
||||
GUILStB resd 3
|
||||
GUILoadPos resb 1
|
||||
SECTION .text
|
||||
|
||||
DisplayGUIReset:
|
||||
GUIDrawWindowBox 12,GUIResetDisp
|
||||
@@ -854,9 +858,11 @@ DisplayGUIReset:
|
||||
GUIOuttextwin2 12,5,15,GUIResetText1
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
GUIResetText1 db 'RESET : ARE YOU SURE ?',0
|
||||
GUIResetText2 db 'YES',0
|
||||
GUIResetText3 db 'NO',0
|
||||
SECTION .text
|
||||
|
||||
DisplayGUIStates:
|
||||
GUIDrawWindowBox 14,GUIStatesDisp
|
||||
@@ -901,11 +907,13 @@ DisplayGUIStates:
|
||||
.save2
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
GUIStatesText1 db 'OKAY TO SAVE STATE?',0
|
||||
GUIStatesText2 db 'OKAY TO LOAD STATE?',0
|
||||
GUIStatesText3 db 'YES',0
|
||||
GUIStatesText4 db 'NO',0
|
||||
GUIStatesText5 db 0
|
||||
SECTION .text
|
||||
|
||||
DisplayGUIChoseSave:
|
||||
GUIDrawWindowBox 2,GUIStateSelDisp
|
||||
@@ -980,8 +988,10 @@ DisplayGUIChoseSave:
|
||||
GUIDisplayButtonHole 2,90,43,byte[GUIChoseSaveText2],'9'
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
GUIChoseSaveText1 db 'SELECT SAVE SLOT :',0
|
||||
GUIChoseSaveText2 db '-',0
|
||||
SECTION .text
|
||||
|
||||
%macro DGOptnsDrawBox 3
|
||||
mov eax,dword[GUIwinposx+9*4]
|
||||
@@ -1333,6 +1343,7 @@ DisplayGUIInput:
|
||||
DrawGUIWinBox 3,5,78,107,78,dl
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
GUIInputRefF db 0,1,2,3,5,18,6,7,8,9,10,11,14,15,16,17
|
||||
GUIInputRefB db 0,1,2,3,3,4,6,7,8,9,10,11,11,11,12,13,14,15,5
|
||||
GUIInputRefP dd pl1contrl,pl2contrl,pl3contrl,pl4contrl,pl5contrl
|
||||
@@ -1363,10 +1374,13 @@ GUIInputTextd db 'UL',0
|
||||
GUIInputTexte db 'UR',0
|
||||
GUIInputTextf db 'DL',0
|
||||
GUIInputTextg db 'DR',0
|
||||
GUIIStA dd 0,0,0
|
||||
|
||||
GUIcurrentinputviewloc dd 0
|
||||
GUIcurrentinputcursloc dd 0
|
||||
SECTION .bss
|
||||
GUIIStA resd 3
|
||||
|
||||
GUIcurrentinputviewloc resd 1
|
||||
GUIcurrentinputcursloc resd 1
|
||||
SECTION .text
|
||||
|
||||
DisplayGUIOption:
|
||||
; Frame Rate/Auto Frame Rate/Max Frame Skip/New Gfx Engine/Save Confirm
|
||||
@@ -1591,6 +1605,7 @@ DisplayGUIOption:
|
||||
DrawGUIButton 4,129,12,137,22,GUIOptionText10,13,-2,0
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
GUIOptionText1 db 'FRAME RATE',0
|
||||
GUIOptionText2 db 'AUTO FRAME RATE',0
|
||||
GUIOptionText3 db 'MAX FRAME SKIP',0
|
||||
@@ -1614,6 +1629,7 @@ GUIOptionTextL db 'USE ALTERNATE TIMER',0
|
||||
GUIOptionText8 db '-',0
|
||||
GUIOptionText9 db '+',0
|
||||
GUIOptionText10 db '-',0
|
||||
SECTION .text
|
||||
|
||||
DisplayGUIVideo:
|
||||
cmp byte[TripBufAvail],0
|
||||
@@ -1742,13 +1758,6 @@ DisplayGUIVideo:
|
||||
je .notext8
|
||||
GUIOuttextwin2u 5,26,178,GUIVideoText8b,0
|
||||
.notext8
|
||||
%ifndef __MSDOS__
|
||||
mov al,[cvidmode]
|
||||
cmp byte[GUIMBVID+eax],0
|
||||
je .notext82
|
||||
GUIOuttextwin2u 5,26,178,GUIVideoText8b2,0
|
||||
.notext82
|
||||
%endif
|
||||
GUIOuttextwin2u 5,26,188,GUIVideoText8c,0
|
||||
%ifndef __LINUX__
|
||||
GUIOuttextwin2u 5,130,188,GUIVideoText9,0
|
||||
@@ -1850,13 +1859,6 @@ DisplayGUIVideo:
|
||||
je .notext8b
|
||||
GUIOuttextwin2 5,25,177,GUIVideoText8b
|
||||
.notext8b
|
||||
%ifndef __MSDOS__
|
||||
mov al,[cvidmode]
|
||||
cmp byte[GUIMBVID+eax],0
|
||||
je .notext8b2
|
||||
GUIOuttextwin2 5,25,177,GUIVideoText8b2
|
||||
.notext8b2
|
||||
%endif
|
||||
GUIOuttextwin2 5,25,187,GUIVideoText8c
|
||||
%ifndef __LINUX__
|
||||
GUIOuttextwin2 5,129,187,GUIVideoText9
|
||||
@@ -1982,18 +1984,6 @@ DisplayGUIVideo:
|
||||
.nocheckbox1m72
|
||||
GUIDisplayIconWin 5,11,173,[GUITemp]
|
||||
.nocheckboxm72
|
||||
%ifndef __MSDOS__
|
||||
mov al,[cvidmode]
|
||||
cmp byte[GUIMBVID+eax],0
|
||||
je .nocheckboxmb2
|
||||
mov dword[GUITemp],GUIIconDataCheckBoxUC
|
||||
cmp byte[MotionBlur],0
|
||||
je .nocheckboxmb
|
||||
mov dword[GUITemp],GUIIconDataCheckBoxC
|
||||
.nocheckboxmb
|
||||
GUIDisplayIconWin 5,11,173,[GUITemp]
|
||||
.nocheckboxmb2
|
||||
%endif
|
||||
mov dword[GUITemp],GUIIconDataCheckBoxUC
|
||||
cmp byte[GrayscaleMode],0
|
||||
je .nocheckboxm73
|
||||
@@ -2147,6 +2137,7 @@ DisplayGUIVideo:
|
||||
GUIOuttextwin2 5,48,195,[GUITemp]
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
GUIVideoText1 db 'VIDEO MODES :',0
|
||||
GUIVideoText2 db 'FULL SCANLINES',0
|
||||
GUIVideoTextb db 'SCANLINES:',0
|
||||
@@ -2164,7 +2155,6 @@ GUIVideoText5b db 'WIDE SCREEN',0 ; -c
|
||||
GUIVideoText6 db 'SMALL SCREEN',0 ; -c
|
||||
GUIVideoText7 db 'TRIPLE BUFFERING',0 ; -c
|
||||
GUIVideoText8b db 'HI-RESOLUTION MODE7',0 ; -c
|
||||
GUIVideoText8b2 db 'MOTION BLUR',0 ; -c
|
||||
GUIVideoText8c db 'GRAYSCALE MODE',0 ; -c
|
||||
GUIVideoText8 db 'SET',0 ; set button
|
||||
GUIVideoText9 db 'VSYNC',0 ; -c
|
||||
@@ -2173,10 +2163,14 @@ GUIVideoTextw0 db 'LEGEND:',0
|
||||
GUIVideoTextw1 db ' S = SCALED TO FIT SCREEN',0
|
||||
GUIVideoTextw2 db ' R = MATCHED SCREEN RATIO',0
|
||||
GUIVideoTextw3 db ' D = ALLOW 2XSAI,HIRES,ETC',0
|
||||
GUIVStA dd 0,0,0
|
||||
|
||||
GUIcurrentvideoviewloc dd 0
|
||||
GUIcurrentvideocursloc dd 0
|
||||
SECTION .bss
|
||||
GUIVStA resd 3
|
||||
|
||||
GUIcurrentvideoviewloc resd 1
|
||||
GUIcurrentvideocursloc resd 1
|
||||
|
||||
SECTION .text
|
||||
|
||||
|
||||
DisplayGUISound:
|
||||
@@ -2433,6 +2427,7 @@ DisplayGUISound:
|
||||
GUIOuttextwin2 6,118,88,[GUITemp]
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
GUISoundText1 db 'ENABLE SOUND',0
|
||||
GUISoundText1b db 'FORCE 8-BIT',0
|
||||
GUISoundText2 db 'SAMPLING RATE :',0
|
||||
@@ -2461,7 +2456,7 @@ GUISoundTextT db 'LOWPASS :',0
|
||||
GUISoundTextU db 'SIMPLE',0
|
||||
GUISoundTextV db 'DYNAMIC',0
|
||||
GUISoundTextW db 'HI QUALITY',0
|
||||
|
||||
SECTION .text
|
||||
|
||||
|
||||
DisplayGUICheatConv:
|
||||
@@ -2775,6 +2770,7 @@ DisplayGUICheat:
|
||||
GUIDisplayIconWin 7,11,186,[GUITemp]
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
GUICheatText1 db 'ENTER CODE :',0
|
||||
GUICheatText2 db 'DESCRIPTION:',0
|
||||
GUICheatText3 db 'ADDRESS CV PV TGL DESCRIPTION',0
|
||||
@@ -2793,14 +2789,16 @@ GUICheatTextE db 'NOTE : YOU MAY HAVE TO RESET THE GAME',0
|
||||
GUICheatTextF db ' AFTER ENTERING THE CODE. REMEMBER TO',0
|
||||
GUICheatTextG db ' INSERT THE "-" FOR GAME GENIE CODES',0
|
||||
GUICheatTextJ db 'AUTO-LOAD .CHT FILE AT GAME LOAD',0
|
||||
GUICheatPosA db 0
|
||||
GUICheatPosB db 0
|
||||
GUICStA dd 0,0,0
|
||||
GUIcurrentcheatviewloc dd 0
|
||||
GUIcurrentcheatcursloc dd 0
|
||||
GUIcurrentcheatwin dd 0
|
||||
ccheatnpos dd 0
|
||||
ccheatnleft dd 0
|
||||
SECTION .bss
|
||||
GUICheatPosA resb 1
|
||||
GUICheatPosB resb 1
|
||||
GUICStA resd 3
|
||||
GUIcurrentcheatviewloc resd 1
|
||||
GUIcurrentcheatcursloc resd 1
|
||||
GUIcurrentcheatwin resd 1
|
||||
ccheatnpos resd 1
|
||||
ccheatnleft resd 1
|
||||
SECTION .text
|
||||
|
||||
DrawWindowSearch:
|
||||
GUIDrawWindowBox 13,GUISearchDisp
|
||||
@@ -3440,29 +3438,35 @@ Cheatmodeadd:
|
||||
;CheatSrcByteSize db 0
|
||||
;CheatSrcByteBase db 0
|
||||
;CheatSrcSearchType db 0
|
||||
CheatWinMode db 0
|
||||
CheatSearchStatus db 0
|
||||
CheatCompareValue dd 0
|
||||
NumCheatSrc dd 0
|
||||
GUIcurrentchtsrcviewloc dd 0
|
||||
GUIcurrentchtsrccursloc dd 0
|
||||
CSStartEntry dd 0
|
||||
CSCurEntry dd 0
|
||||
CheatSearchXPos dd 0
|
||||
CheatSearchYPos dd 0
|
||||
CheatLooped dd 0
|
||||
ccheatnleftb dd 0
|
||||
CurCStextpos dd 0
|
||||
SECTION .bss
|
||||
CheatWinMode resb 1
|
||||
CheatSearchStatus resb 1
|
||||
CheatCompareValue resd 1
|
||||
NumCheatSrc resd 1
|
||||
GUIcurrentchtsrcviewloc resd 1
|
||||
GUIcurrentchtsrccursloc resd 1
|
||||
CSStartEntry resd 1
|
||||
CSCurEntry resd 1
|
||||
CheatSearchXPos resd 1
|
||||
CheatSearchYPos resd 1
|
||||
CheatLooped resd 1
|
||||
ccheatnleftb resd 1
|
||||
CurCStextpos resd 1
|
||||
|
||||
SECTION .data
|
||||
SrcMask dd 0FFh,0FFFFh,0FFFFFFh,0FFFFFFFFh
|
||||
CSInputDisplay db '_',0,' ',0
|
||||
CSDescDisplay db ' ',0,0
|
||||
curentryval dd 0
|
||||
curentryleft dd 0
|
||||
curaddrvalcs dd 0
|
||||
curvaluecs dd 0
|
||||
|
||||
GUICSStA dd 0,0,0
|
||||
SECTION .bss
|
||||
curentryval resd 1
|
||||
curentryleft resd 1
|
||||
curaddrvalcs resd 1
|
||||
curvaluecs resd 1
|
||||
|
||||
GUICSStA resd 3
|
||||
|
||||
SECTION .data
|
||||
GUISrcText1 db 'CHEAT SEARCH',0
|
||||
GUISrcText2 db 'HAS NOT BEEN',0
|
||||
GUISrcText3 db 'IMPLEMENTED YET',0
|
||||
@@ -3500,6 +3504,7 @@ GUICSrcTextV db 'ENTER NEW VALUE:',0
|
||||
GUICSrcTextW db 'ENTER CHEAT DESCRIPTION:',0
|
||||
GUICSrcTextX db 'PAR CODE EQUIVALENT:',0
|
||||
GUICSrcTextY db 'USE ONLY UPPER BYTE',0
|
||||
SECTION .text
|
||||
|
||||
|
||||
NEWSYM NetAddChar ; dl = color, dh = char
|
||||
@@ -3621,13 +3626,16 @@ NEWSYM NetAddChar ; dl = color, dh = char
|
||||
ret
|
||||
|
||||
|
||||
CCursLoc dd 0
|
||||
CViewLoc dd 0
|
||||
NViewLoc dd 0
|
||||
TViewLoc dd 0
|
||||
section .bss
|
||||
CCursLoc resd 1
|
||||
CViewLoc resd 1
|
||||
NViewLoc resd 1
|
||||
TViewLoc resd 1
|
||||
section .text
|
||||
|
||||
|
||||
DisplayNetOptns:
|
||||
|
||||
mov dword[GUIwinsizex+8*4],7*16
|
||||
mov dword[GUIwinsizey+8*4],57
|
||||
mov dword[GUINetDisp],'IPX '
|
||||
@@ -3641,6 +3649,7 @@ DisplayNetOptns:
|
||||
mov dword[GUINetDisp+4],'R! '
|
||||
jmp .nomodem
|
||||
.netokay
|
||||
%ifdef __MSDOS__
|
||||
cmp byte[CNetType],8
|
||||
jne .noipxinvalid
|
||||
mov dword[GUIwinsizex+8*4],7*16
|
||||
@@ -3648,6 +3657,7 @@ DisplayNetOptns:
|
||||
mov dword[GUINetDisp],'ERRO'
|
||||
mov dword[GUINetDisp+4],'R! '
|
||||
.noipxinvalid
|
||||
%endif
|
||||
|
||||
cmp byte[CNetType],22
|
||||
je .yesstate
|
||||
@@ -3703,6 +3713,7 @@ DisplayNetOptns:
|
||||
mov dword[GUIwinsizex+8*4],201
|
||||
mov dword[GUIwinsizey+8*4],48
|
||||
.notcpip
|
||||
%ifdef __MSDOS__
|
||||
cmp byte[CNetType],3
|
||||
je .yesmodem
|
||||
cmp byte[CNetType],1
|
||||
@@ -3729,6 +3740,7 @@ DisplayNetOptns:
|
||||
mov dword[GUINetDisp+8],'TTIN'
|
||||
mov word[GUINetDisp+12],'GS'
|
||||
mov byte[GUINetDisp+14],0
|
||||
%endif
|
||||
.nomodem
|
||||
GUIDrawWindowBox 8,GUINetDisp
|
||||
cmp byte[per2exec],99
|
||||
@@ -3739,12 +3751,14 @@ DisplayNetOptns:
|
||||
cmp byte[CNetType],21
|
||||
je near DisplayNetTCPIPState
|
||||
|
||||
%ifdef __MSDOS__
|
||||
cmp byte[CNetType],1
|
||||
je near DisplayNetOptnsModem
|
||||
cmp byte[CNetType],2
|
||||
je near DisplayNetOptnsModemConfig
|
||||
cmp byte[CNetType],3
|
||||
je near DisplayNetOptnsModemDial
|
||||
%endif
|
||||
cmp byte[CNetType],4
|
||||
je near DisplayNetOptnsTCPIP
|
||||
cmp byte[CNetType],10
|
||||
@@ -3757,6 +3771,7 @@ DisplayNetOptns:
|
||||
je near DisplayNetOptnsModemTerm
|
||||
cmp byte[CNetType],20
|
||||
je near DisplayNetOptnsChatWindow
|
||||
%ifdef __MSDOS__
|
||||
cmp byte[CNetType],7
|
||||
je near DisplayNetIPXStart
|
||||
cmp byte[CNetType],8
|
||||
@@ -3785,6 +3800,7 @@ DisplayNetOptns:
|
||||
GUIOuttextwin2 8,5,15,GUINetText1
|
||||
GUIOuttextwin2 8,5,25,GUINetText2
|
||||
ret
|
||||
%endif
|
||||
|
||||
DisplayNetTCPIPState:
|
||||
DrawGUIButton 8,73,48,127,59,GUITCPStateText3,64,0,0
|
||||
@@ -3833,10 +3849,13 @@ DisplayNetTCPIPState:
|
||||
DrawGUIWinBox 8,122,30,121,40,dl ; 2,0,1,0
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
GUITCPStateText1 db 'SENDING STATUS',0
|
||||
GUITCPStateText2 db 'RECEIVING STATUS',0
|
||||
GUITCPStateText3 db 'CANCEL',0
|
||||
SECTION .text
|
||||
|
||||
%ifdef __MSDOS
|
||||
DisplayNetIPXStart:
|
||||
DrawGUIButton 8,53,48,87,59,GUINetTextZ,34,0,0
|
||||
sub byte[GUItextcolor],15
|
||||
@@ -3851,6 +3870,7 @@ DisplayNetIPXStart:
|
||||
|
||||
DisplayNetIPXInvalid:
|
||||
ret
|
||||
%endif
|
||||
|
||||
DisplayNetOptnsTCPIP:
|
||||
; Your IP:
|
||||
@@ -3973,6 +3993,7 @@ DisplayNetOptnsInvalid:
|
||||
GUIOuttextwin2 8,5,25,GUINetText2b
|
||||
GUIOuttextwin2 8,5,35,GUINetText3b
|
||||
ret
|
||||
%ifdef __MSDOS__
|
||||
DisplayNetOptnsModem:
|
||||
mov dword[GUIEditStringcWin],0
|
||||
DrawGUIButton 8,5,15,89,26,GUINetTextG,21,0,0
|
||||
@@ -4101,6 +4122,7 @@ DisplayNetOptnsModemDial:
|
||||
; mov dword[GUIEditStringmLenM],27
|
||||
mov dword[GUIEditStringcWin],1
|
||||
ret
|
||||
%endif
|
||||
DisplayNetOptnsModemTerm:
|
||||
DrawGUIWinBox 8,6,15,181,127,167
|
||||
; draw borders
|
||||
@@ -4378,23 +4400,30 @@ DisplayNetOptnsChatWindow:
|
||||
; DrawSlideBarWin 8,181,15,[NViewLoc],[TViewLoc],12,97,GUINCStA
|
||||
ret
|
||||
|
||||
NEWSYM GUINCStA, dd 0,0,0
|
||||
NEWSYM CNetType, db 0
|
||||
SECTION .bss
|
||||
NEWSYM GUINCStA, resd 3
|
||||
NEWSYM CNetType, resb 1
|
||||
SECTION .data
|
||||
NEWSYM Latency, db 2
|
||||
NEWSYM Latencytochange, db 2
|
||||
NEWSYM LatencyLeft, db 2
|
||||
NEWSYM NetSwap, db 0
|
||||
RemCNetType db 0
|
||||
UseRemoteSRAMData db 0
|
||||
ChatString times 276 db 0
|
||||
FileNameMod times 512 db 0
|
||||
CurCStringPos dd 0
|
||||
SECTION .bss
|
||||
NEWSYM NetSwap, resb 1
|
||||
RemCNetType resb 1
|
||||
UseRemoteSRAMData resb 1
|
||||
ChatString resb 276
|
||||
FileNameMod resb 512
|
||||
CurCStringPos resd 1
|
||||
|
||||
SECTION .data
|
||||
%ifdef __MSDOS__
|
||||
GUINetText1 db 'IPX HAS NOT BEEN',0
|
||||
GUINetText2 db 'IMPLEMENTED YET',0
|
||||
%endif
|
||||
GUINetText1b db 'PLEASE SET THE',0
|
||||
GUINetText2b db 'PERCENTAGE OF',0
|
||||
GUINetText3b db 'EXECUTION TO 100',0
|
||||
%ifdef __MSDOS__
|
||||
GUINetText1c db 'IPX IS IN BETA',0
|
||||
GUINetText2c db 'STAGES. IT MAY',0
|
||||
GUINetText3c db 'NOT WORK RIGHT!',0
|
||||
@@ -4403,9 +4432,11 @@ GUINetText4 db 'COM2 (2F8)',0
|
||||
GUINetText5 db 'COM3 (3E8)',0
|
||||
GUINetText6 db 'COM4 (2E8)',0
|
||||
GUINetText7 db 'IRQ ',0
|
||||
%endif
|
||||
GUINetText8 db '00',0
|
||||
GUINetText9 db '+',0
|
||||
GUINetTextA db '-',0
|
||||
%ifdef __MSDOS__
|
||||
GUINetTextC db 'TONE (ATDT)',0
|
||||
GUINetTextD db 'PULSE (ATDP)',0
|
||||
GUINetTextE db 'INIT STRINGS :',0
|
||||
@@ -4425,12 +4456,17 @@ GUINetTextO db '57600',0
|
||||
GUINetTextP db '115200',0
|
||||
GUINetTextQ db 'BAUDRATE (BPS) :',0
|
||||
GUINetTextR db 'COMPORT :',0
|
||||
%endif
|
||||
GUINetTextS db 'CANCEL',0
|
||||
%ifdef __MSDOS__
|
||||
GUINetTextT db 'DIAL',0
|
||||
%endif
|
||||
GUINetTextU db 'DISCONNECT',0
|
||||
GUINetTextV db 'PLAYER SELECT :',0
|
||||
GUINetTextW db '1',0,'2',0,'3',0,'4',0,'5',0
|
||||
%ifdef __MSDOS__
|
||||
GUINetTextX db 'USE FOSSIL DRIVER',0
|
||||
%endif
|
||||
GUINetTextY db 'LATENCY',0
|
||||
GUINetTextZ db 'OKAY',0
|
||||
GUINetTexta db 'SAVE DATA :',0
|
||||
@@ -4453,7 +4489,11 @@ GUINetTextr1 db 'PLEASE RESTART ZSNESW',0
|
||||
GUINetTextr2 db 'BEFORE STARTING A NEW',0
|
||||
GUINetTextr3 db 'NETPLAY SESSION',0
|
||||
|
||||
%ifdef __MSDOS__
|
||||
BaudVal dd 9600,14400,19200,28800,38400,57600,115200
|
||||
%endif
|
||||
|
||||
SECTION .text
|
||||
|
||||
DisplayGameOptns:
|
||||
; Key redefinition for :
|
||||
@@ -4735,9 +4775,12 @@ DisplayGameOptns:
|
||||
DGOptnsDrawBox 8+108+70,188,[KeyQuickSaveSPC]
|
||||
ret
|
||||
|
||||
GUIGameOptnsColA db 0
|
||||
GUIGameOptnsColB db 0
|
||||
GUIGameDisplayKy dd 0
|
||||
SECTION .bss
|
||||
GUIGameOptnsColA resb 1
|
||||
GUIGameOptnsColB resb 1
|
||||
GUIGameDisplayKy resd 1
|
||||
|
||||
SECTION .data
|
||||
GUIGameOptnsText1 db 'SOUND DISABLES :',0
|
||||
GUIGameOptnsText2 db 'CH#',0
|
||||
GUIGameOptnsText3 db 'BG DISABLES :',0
|
||||
@@ -4772,6 +4815,7 @@ GUIGameOptnsTextV db 'SAVE SPC',0
|
||||
GUIGameOptnsTextX db 'DISPLAY FPS',0
|
||||
GUIGameOptnsTextY db 'ST+',0
|
||||
GUIGameOptnsTextZ db 'ST-',0
|
||||
SECTION .text
|
||||
|
||||
DisplayGUIOptns:
|
||||
%ifdef __WIN32__
|
||||
@@ -5101,6 +5145,7 @@ DisplayGUIOptns:
|
||||
;lastcursres db 0 ; 0 = go to load, 1 = go to previous menu, 2 = no menu
|
||||
;resetposn db 1 ; 0 = no window reset, 1 = window reset
|
||||
|
||||
SECTION .data
|
||||
GUIGUIOptnsText1 db 'COLOR:',0
|
||||
GUIGUIOptnsText2 db 'MOUSE WRAP',0
|
||||
GUIGUIOptnsText3 db 'MOUSE SHADOW',0
|
||||
@@ -5112,7 +5157,7 @@ GUIGUIOptnsText8 db 'CLICK ENTERS GUI',0
|
||||
GUIGUIOptnsText9 dd 0
|
||||
GUIGUIOptnsTextA db 'USE JOYPAD1',0
|
||||
GUIGUIOptnsTextB dd 'SNOW EFFECT',0
|
||||
GUIGUIOptnsTextBb dd 'SMOKE EFFECT',0
|
||||
GUIGUIOptnsTextBb dd 'BURNING EFFECT',0
|
||||
GUIGUIOptnsTextC dd 'WATER EFFECT A',0
|
||||
GUIGUIOptnsTextCb dd 'WATER EFFECT B',0
|
||||
GUIGUIOptnsTextD dd 'MAIN WINDOW OPTIONS :',0
|
||||
@@ -5126,6 +5171,7 @@ GUIGUIOptnsTextK db 'WHEEL MOUSE',0
|
||||
GUIGUIOptnsTextL db 'ALLOW MULTIPLE INSTANCES',0
|
||||
GUIGUIOptnsTextM db 'FILTERED GUI',0
|
||||
GUIGUIOptnsTextN db 'TRAP MOUSE CURSOR',0
|
||||
SECTION .text
|
||||
|
||||
DisplayGUIAbout:
|
||||
GUIDrawWindowBox 11,GUIAboutDisp
|
||||
@@ -5184,6 +5230,7 @@ DisplayGUIAbout:
|
||||
GUIOuttextwin2 11,5,75,GUIGUIAboutText5
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
GUIGUIAboutText1 db 'ZSNES V',ZVERSION,0
|
||||
GUIGUIAboutText2 db 'CODED BY : ',0
|
||||
GUIGUIAboutText3 db ' ZSKNIGHT',0
|
||||
@@ -5212,6 +5259,8 @@ GUIGUIAboutTextE db 'certain conditions; please',0
|
||||
GUIGUIAboutTextF db 'please read ',39,'LICENSE',39,0
|
||||
GUIGUIAboutTextG db 'thoroughly before using it.',0
|
||||
|
||||
SECTION .text
|
||||
|
||||
DisplayGUIMovies:
|
||||
GUIDrawWindowBox 15,GUIMovieDisp
|
||||
cmp byte[MovieRecordWinVal],0
|
||||
@@ -5312,6 +5361,7 @@ DisplayGUIMovies:
|
||||
GUIDisplayButtonHole 15,80,55,byte[CMovieExt],'9'
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
GUIMovieText1 db 'PLAY',0
|
||||
GUIMovieText2 db 'RECORD',0
|
||||
GUIMovieText3 db 'STOP',0
|
||||
@@ -5324,6 +5374,8 @@ GUIMovieText9 db 'NO',0
|
||||
GUIMovieTextA db 'STATUS : ',0
|
||||
CMovieExt db 'v'
|
||||
|
||||
SECTION .text
|
||||
|
||||
; Key types: Up, Down, Left, Right, A, B, X, Y, L, R (Press/Relase/P+R)
|
||||
; Frame delays: 1 frame, 2, 3, 4, 5, 1 sec., 2, 3 ,4 ,5
|
||||
|
||||
@@ -5712,6 +5764,15 @@ DisplayGUICombo:
|
||||
mov byte[GUIGameDisplayKy+3],0
|
||||
GUIOuttextwin2c 16,139,94,GUIGameDisplayKy
|
||||
|
||||
; Buttons
|
||||
mov al,[TextColorSp+2]
|
||||
add al,15
|
||||
mov byte[GUItextcolor],al
|
||||
DrawGUIButton 16,202,20,246,31,GUIComboTextA,60,-1,0
|
||||
DrawGUIButton 16,202,35,246,46,GUIComboTextB,61,-1,0
|
||||
DrawGUIButton 16,202,50,246,61,GUIComboTextC,62,-1,0
|
||||
DrawGUIButton 16,202,65,246,76,GUIComboTextD,63,-1,0
|
||||
|
||||
; Hole Switches
|
||||
GUIDisplayButtonHole 16,178,82,byte[GUIComboPNum],0
|
||||
GUIDisplayButtonHole 16,196,82,byte[GUIComboPNum],1
|
||||
@@ -5921,27 +5982,28 @@ DisplayGUICombo:
|
||||
.noscrolldisplay
|
||||
ret
|
||||
|
||||
|
||||
GUIccombviewloc dd 0
|
||||
GUIccombcursloc dd 0
|
||||
GUIccomblcursloc dd 0
|
||||
NEWSYM NumCombo, dd 0
|
||||
NumComboGlob dd 0
|
||||
NEWSYM NumComboLocl, dd 0
|
||||
GUICSStC dd 0,0,0
|
||||
GUIComboKey dd 0
|
||||
GUIComboPos db 0
|
||||
GUIComboPNum db 0
|
||||
GUIComboLHorz db 0
|
||||
NEWSYM GUINumCombo, db 0
|
||||
GUIComboData times 50 db 0
|
||||
GUIScrolBufA times 21 db 0
|
||||
GUIScrolBufB times 10 db 0
|
||||
SECTION .bss
|
||||
GUIccombviewloc resd 1
|
||||
GUIccombcursloc resd 1
|
||||
GUIccomblcursloc resd 1
|
||||
NEWSYM NumCombo, resd 1
|
||||
NumComboGlob resd 1
|
||||
NEWSYM NumComboLocl, resd 1
|
||||
GUICSStC resd 3
|
||||
GUIComboKey resd 1
|
||||
GUIComboPos resb 1
|
||||
GUIComboPNum resb 1
|
||||
GUIComboLHorz resb 1
|
||||
NEWSYM GUINumCombo, resb 1
|
||||
GUIComboData resb 50
|
||||
GUIScrolBufA resb 21
|
||||
GUIScrolBufB resb 10
|
||||
|
||||
|
||||
;CombinDataGlob times 3300 db 0 ; 20-name, 42-combo, 2-key#, 1-P#, 1-ff
|
||||
;CombinDataLocl times 3300 db 0
|
||||
|
||||
SECTION .data
|
||||
GUIComboText1 db 'DESCRIPTION',0
|
||||
GUIComboText2 db 'KEY P# LH',0
|
||||
GUIComboText3 db ' ',0
|
||||
@@ -6024,6 +6086,8 @@ GUIIconDataComboSecond:
|
||||
db 0 ,48 ,46 ,44 ,42 ,0 ,0 ,0 ,0 ,0
|
||||
db 0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0
|
||||
|
||||
SECTION .text
|
||||
|
||||
DisplayGUIAddOns:
|
||||
GUIDrawWindowBox 17,GUIAddOnsDisp
|
||||
sub byte[GUItextcolor],15
|
||||
@@ -6095,6 +6159,7 @@ DisplayGUIAddOns:
|
||||
GUIDisplayIconWin 17,109,93,[GUITemp]
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
GUIAddOnText1 db 'NONE',0
|
||||
GUIAddOnText2 db 'SNES MOUSE AT PORT #1',0
|
||||
GUIAddOnText3 db 'SNES MOUSE AT PORT #2',0
|
||||
@@ -6126,9 +6191,11 @@ GUIStatesDisp db 'STATE CONFIRM',0
|
||||
GUIComboDisp db 'KEY COMBINATION EDITOR',0
|
||||
GUIAddOnsDisp db 'ADD-ON SELECTOR',0
|
||||
|
||||
GUIItemBoxColor dd 0
|
||||
TextColorSp dd 0
|
||||
SECTION .bss
|
||||
GUIItemBoxColor resd 1
|
||||
TextColorSp resd 1
|
||||
|
||||
SECTION .data
|
||||
NEWSYM GUIMenuItem, db 'GAME ',0
|
||||
db 'CONFIG',0
|
||||
db 'CHEAT ',0
|
||||
@@ -6136,3 +6203,4 @@ NEWSYM GUIMenuItem, db 'GAME ',0
|
||||
db 'MISC ',0
|
||||
db 25,0
|
||||
|
||||
SECTION .text
|
||||
|
||||
@@ -85,14 +85,25 @@ GUIUnBuffer:
|
||||
jnz .loop
|
||||
ret
|
||||
|
||||
SECTION .bss
|
||||
NEWSYM nextmenupopup, resb 1
|
||||
NEWSYM NoInputRead, resb 1
|
||||
NEWSYM PrevMenuPos, resb 1
|
||||
NEWSYM MenuDisplace, resd 1
|
||||
NEWSYM MenuDisplace16, resd 1
|
||||
NEWSYM MenuNoExit, resb 1
|
||||
NEWSYM SPCSave, resb 1
|
||||
|
||||
NEWSYM nextmenupopup, db 0
|
||||
NEWSYM NoInputRead, db 0
|
||||
NEWSYM PrevMenuPos, db 0
|
||||
NEWSYM MenuDisplace, dd 0
|
||||
NEWSYM MenuDisplace16, dd 0
|
||||
NEWSYM MenuNoExit, db 0
|
||||
NEWSYM SPCSave, db 0
|
||||
%ifdef SPCDUMP
|
||||
SECTION .data
|
||||
NEWSYM SPCSave_dump, db 0
|
||||
SECTION .bss
|
||||
|
||||
EXTSYM SPCSave_buffer, SPCSave_ports
|
||||
NEWSYM SPCSave_handle, resd 1
|
||||
%endif
|
||||
|
||||
SECTION .text
|
||||
|
||||
NEWSYM showmenu
|
||||
mov byte[ForceNonTransp],1
|
||||
@@ -160,13 +171,13 @@ NEWSYM showmenu
|
||||
call savepcx
|
||||
jmp .nopalwrite
|
||||
.nosskey
|
||||
cmp byte[SPCKeyPressed],1
|
||||
je near .savespckey
|
||||
test byte[pressed+14],1
|
||||
jz .nof12
|
||||
call savepcx
|
||||
jmp .nopalwrite
|
||||
.nof12
|
||||
cmp byte[SPCKeyPressed],1
|
||||
je near .savespckey
|
||||
mov dword[menucloc],0
|
||||
cmp byte[nextmenupopup],0
|
||||
je .nomenuinc2
|
||||
@@ -237,10 +248,10 @@ NEWSYM showmenu
|
||||
.nogoup
|
||||
sub dword[menucloc],10*288
|
||||
call menudrawbox8b
|
||||
mov al,[newengen]
|
||||
mov byte[newengen],0
|
||||
; mov al,[newengen] ; WTF?
|
||||
; mov byte[newengen],0
|
||||
|
||||
mov [newengen],al
|
||||
; mov [newengen],al
|
||||
jmp .nextkey
|
||||
.noup
|
||||
cmp al,80
|
||||
@@ -251,12 +262,12 @@ NEWSYM showmenu
|
||||
.nogodown
|
||||
add dword[menucloc],10*288
|
||||
call menudrawbox8b
|
||||
mov al,[newengen]
|
||||
mov byte[newengen],0
|
||||
push eax
|
||||
; mov al,[newengen]
|
||||
; mov byte[newengen],0
|
||||
; push eax
|
||||
call copyvid
|
||||
pop eax
|
||||
mov [newengen],al
|
||||
; pop eax
|
||||
; mov [newengen],al
|
||||
jmp .nextkey
|
||||
.nodown
|
||||
jmp .nextkey
|
||||
@@ -268,12 +279,12 @@ NEWSYM showmenu
|
||||
jmp .nextkey
|
||||
.done
|
||||
call GUIUnBuffer
|
||||
mov al,[newengen]
|
||||
mov byte[newengen],0
|
||||
push eax
|
||||
; mov al,[newengen]
|
||||
; mov byte[newengen],0
|
||||
; push eax
|
||||
call copyvid
|
||||
pop eax
|
||||
mov [newengen],al
|
||||
; pop eax
|
||||
; mov [newengen],al
|
||||
cmp dword[menucloc],0
|
||||
jne .nosavepcx
|
||||
call savepcx
|
||||
@@ -340,17 +351,34 @@ NEWSYM showmenu
|
||||
.savespckey
|
||||
cmp byte[spcon],0
|
||||
je .nospc
|
||||
cmp byte[newengen],1
|
||||
|
||||
%ifdef SPCDUMP
|
||||
cmp byte[SPCSave_dump], 1
|
||||
jne .start_dump
|
||||
|
||||
mov ebx, [SPCSave_handle]
|
||||
mov eax, -1
|
||||
mov [SPCSave_buffer], eax
|
||||
mov ecx, 4
|
||||
mov edx, SPCSave_buffer
|
||||
call Write_File
|
||||
call Close_File
|
||||
mov byte[SPCSave_dump], 0
|
||||
jmp .nospcsave
|
||||
.start_dump
|
||||
%endif
|
||||
|
||||
; cmp byte[newengen],1
|
||||
; je .unablespc
|
||||
mov dword[Msgptr],.search
|
||||
mov eax,[MsgCount]
|
||||
mov [MessageOn],eax
|
||||
mov al,[newengen]
|
||||
mov byte[newengen],0
|
||||
push eax
|
||||
; mov al,[newengen]
|
||||
; mov byte[newengen],0
|
||||
; push eax
|
||||
call copyvid
|
||||
pop eax
|
||||
mov [newengen],al
|
||||
; pop eax
|
||||
; mov [newengen],al
|
||||
; call breakatsignc
|
||||
; cmp byte[prbreak],1
|
||||
; je .yesesc
|
||||
@@ -360,6 +388,7 @@ NEWSYM showmenu
|
||||
; cmp byte[prbreak],1
|
||||
; je .yesesc
|
||||
call savespcdata
|
||||
|
||||
mov byte[curblank],40h
|
||||
mov dword[Msgptr],.saved
|
||||
mov eax,[MsgCount]
|
||||
@@ -393,12 +422,12 @@ NEWSYM showmenu
|
||||
jmp .nopalwrite
|
||||
.exitloop
|
||||
call GUIUnBuffer
|
||||
mov al,[newengen]
|
||||
mov byte[newengen],0
|
||||
push eax
|
||||
; mov al,[newengen]
|
||||
; mov byte[newengen],0
|
||||
; push eax
|
||||
call copyvid
|
||||
pop eax
|
||||
mov [newengen],al
|
||||
; pop eax
|
||||
; mov [newengen],al
|
||||
cmp byte[cbitmode],1
|
||||
je near .nopalwrite
|
||||
mov edi,[vidbuffer]
|
||||
@@ -447,6 +476,7 @@ NEWSYM showmenu
|
||||
mov byte[MenuNoExit],0
|
||||
jmp showmenu
|
||||
|
||||
SECTION .data
|
||||
.unablefps db 'NEED AUTO FRAMERATE ON',0
|
||||
.sndbufsav db 'BUFFER SAVED AS SOUNDDMP.RAW',0
|
||||
.search db 'SEARCHING FOR SONG START.',0
|
||||
@@ -454,6 +484,7 @@ NEWSYM showmenu
|
||||
.unable db 'CANNOT USE IN NEW GFX ENGINE.',0
|
||||
.escpress db 'ESC TERMINATED SEARCH.',0
|
||||
.saved db '.SPC FILE SAVED.',0
|
||||
SECTION .text
|
||||
|
||||
NEWSYM menudrawbox8b
|
||||
cmp byte[cbitmode],1
|
||||
@@ -551,14 +582,15 @@ NEWSYM menudrawbox8b
|
||||
add esi,[MenuDisplace]
|
||||
mov edi,.stringi
|
||||
call OutputGraphicString
|
||||
mov al,[newengen]
|
||||
mov byte[newengen],0
|
||||
push eax
|
||||
; mov al,[newengen]
|
||||
; mov byte[newengen],0
|
||||
; push eax
|
||||
call copyvid
|
||||
pop eax
|
||||
mov [newengen],al
|
||||
; pop eax
|
||||
; mov [newengen],al
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
.string db 'MISC OPTIONS',0
|
||||
.stringa db 'SAVE SNAPSHOT',0
|
||||
.stringb db 'SHOW FPS',0
|
||||
@@ -569,6 +601,7 @@ NEWSYM menudrawbox8b
|
||||
.stringg db 'INCR FRAME ONLY',0
|
||||
.stringh db 'MOVE THIS WINDOW',0
|
||||
.stringi db 'IMAGE FORMAT: ---',0
|
||||
SECTION .text
|
||||
|
||||
NEWSYM menudrawcursor8b
|
||||
cmp byte[cbitmode],1
|
||||
@@ -592,7 +625,9 @@ NEWSYM menudrawcursor8b
|
||||
mov al,128
|
||||
ret
|
||||
|
||||
NEWSYM menucloc, dd 0
|
||||
SECTION .bss ;ALIGN=32
|
||||
NEWSYM menucloc, resd 1
|
||||
SECTION .text
|
||||
|
||||
NEWSYM menudrawbox16b
|
||||
; draw shadow behind box
|
||||
@@ -736,19 +771,22 @@ NEWSYM menudrawbox16b
|
||||
add esi,[MenuDisplace16]
|
||||
mov edi,menudrawbox8b.stringi
|
||||
call OutputGraphicString16b
|
||||
mov al,[newengen]
|
||||
mov byte[newengen],0
|
||||
push eax
|
||||
; mov al,[newengen]
|
||||
; mov byte[newengen],0
|
||||
; push eax
|
||||
call copyvid
|
||||
pop eax
|
||||
mov [newengen],al
|
||||
; pop eax
|
||||
; mov [newengen],al
|
||||
ret
|
||||
|
||||
.allred dw 0
|
||||
.blue dw 0
|
||||
.stepb dw 0
|
||||
SECTION .bss
|
||||
.allred resw 1
|
||||
.blue resw 1
|
||||
.stepb resw 1
|
||||
|
||||
NEWSYM menu16btrans, db 0
|
||||
NEWSYM menu16btrans, resb 1
|
||||
|
||||
SECTION .text
|
||||
|
||||
NEWSYM menudrawcursor16b
|
||||
; draw a small red box
|
||||
@@ -944,13 +982,38 @@ NEWSYM savespcdata
|
||||
mov ecx,256
|
||||
mov edx,DSPMem
|
||||
call Write_File
|
||||
|
||||
%ifdef SPCDUMP
|
||||
mov [SPCSave_handle], ebx
|
||||
%else
|
||||
call Close_File
|
||||
%endif
|
||||
|
||||
add dword[spcPCRam],spcRam
|
||||
add dword[spcRamDP],spcRam
|
||||
call ResetState
|
||||
|
||||
%ifdef SPCDUMP
|
||||
|
||||
; w00t, reg dump crapola
|
||||
; using a time reference because I don't feel like adding
|
||||
; cycle counting to the SPC emulation just for this
|
||||
|
||||
mov byte[SPCSave_dump],1
|
||||
|
||||
mov eax, [spcRam+0F4h]
|
||||
mov [SPCSave_ports], eax
|
||||
xor eax, eax
|
||||
mov [SPCSave_buffer], eax
|
||||
|
||||
%endif
|
||||
|
||||
ret
|
||||
|
||||
.spcfname times 128 db 0
|
||||
SECTION .bss
|
||||
.spcfname resb 128
|
||||
|
||||
SECTION .data
|
||||
;.SPC File Format
|
||||
|
||||
;Offset 00000h - File Header : SNES-SPC700 Sound File Data v0.10
|
||||
@@ -1016,6 +1079,8 @@ NEWSYM ssdatst
|
||||
; SPCRAM (offset 256), 64k
|
||||
; DSPRAM (offset 256+65536), 256 bytes
|
||||
|
||||
SECTION .text
|
||||
|
||||
NEWSYM dumpsound
|
||||
mov cx,0
|
||||
mov edx,.filename
|
||||
@@ -1058,6 +1123,7 @@ NEWSYM dumpsound
|
||||
xor esi,esi
|
||||
jmp .return
|
||||
|
||||
SECTION .data
|
||||
.filename db 'SOUNDDMP.RAW',0
|
||||
|
||||
NEWSYM pcxheader
|
||||
@@ -1069,7 +1135,11 @@ NEWSYM pcxheader
|
||||
.bpline dw 256
|
||||
times 128-68 db 0
|
||||
|
||||
NEWSYM picnum, dw 0
|
||||
SECTION .bss
|
||||
|
||||
NEWSYM picnum, resw 1
|
||||
|
||||
SECTION .data
|
||||
|
||||
NEWSYM savepcx
|
||||
%ifndef NO_PNG
|
||||
@@ -1370,12 +1440,15 @@ NEWSYM savepcx
|
||||
call restore16b
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
.pcxsaved db 'SNAPSHOT SAVED TO '
|
||||
.filename db 'image.pcx',0,0,0,0
|
||||
.rawsaved db 'SNAPSHOT SAVED TO '
|
||||
.filename2 db 'image.bmp',0,0,0,0
|
||||
.rowsleft db 0
|
||||
.curdptr dd 0
|
||||
SECTION .bss
|
||||
.rowsleft resb 1
|
||||
.curdptr resd 1
|
||||
SECTION .text
|
||||
|
||||
NEWSYM save16b2
|
||||
call prepare16b
|
||||
@@ -1517,10 +1590,13 @@ NEWSYM save16b2
|
||||
call restore16b
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
.rawsaved db 'SNAPSHOT SAVED TO '
|
||||
.filename2 db 'image.bmp',0,0,0,0
|
||||
.rowsleft dd 0
|
||||
.curdptr dd 0
|
||||
SECTION .bss
|
||||
.rowsleft resd 1
|
||||
.curdptr resd 1
|
||||
SECTION .text
|
||||
|
||||
prepare16b:
|
||||
cmp byte[vesa2red10],1
|
||||
|
||||
Reference in New Issue
Block a user