Fix up sections variables are created in, major code cleanup, remove protection removal. Completed! :D
This commit is contained in:
@@ -54,7 +54,7 @@ WINOBJ=${WINDIR}/copyvwin.o \
|
||||
${WINDIR}/sdlintrf.o ${WINDIR}/sdllink.o \
|
||||
@GL_DRAW@ ${WINDIR}/sw_draw.o \
|
||||
${WINDIR}/zloaderw.o ${WINDIR}/ztcp.o ${WINDIR}/zipxw.o \
|
||||
${WINDIR}/zfilew.o ${WINDIR}/protect.o
|
||||
${WINDIR}/zfilew.o
|
||||
|
||||
WINDOSOBJ=${DOSDIR}/debug.o ${DOSDIR}/joy.o ${DOSDIR}/modemrtn.o ${DOSDIR}/vesa2.o\
|
||||
${DOSDIR}/initvid.o ${DOSDIR}/sw.o ${DOSDIR}/gppro.o ${DOSDIR}/vesa12.o
|
||||
|
||||
@@ -49,12 +49,6 @@ EXTSYM cycpbl,debugbuf,soundon,spcA,spcNZ,spcP,spcPCRam
|
||||
EXTSYM spcRam,spcRamDP,spcS,spcX,spcY
|
||||
EXTSYM CurPtrVal,SPC7110Enable
|
||||
|
||||
NEWSYM DebugAsmStart
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
; debstop at regsw.asm 2118/2119
|
||||
|
||||
|
||||
@@ -94,48 +88,6 @@ NEWSYM startdebugger
|
||||
EXTSYM oamram
|
||||
mov edx,oamram
|
||||
mov ecx,544
|
||||
; mov ecx,2048*4
|
||||
; mov edx,[C4Ram]
|
||||
; mov ecx,32768
|
||||
; mov edx,[romdata]
|
||||
; add edx,65536*13h
|
||||
; mov ecx,2EFh
|
||||
; mov edx,SDD1Array
|
||||
; mov ecx,[SDD1Entry]
|
||||
; mov edx,[romdata]
|
||||
; add edx,32768*40
|
||||
; mov edx,cnetplaybuf
|
||||
; mov ecx,512
|
||||
; mov edx,[sfxramdata]
|
||||
; add edx,65536
|
||||
; mov edx,fxtrace
|
||||
; mov ecx,65536
|
||||
; mov edx,[wramdata]
|
||||
; mov ecx,544
|
||||
; mov edx,oamram
|
||||
; mov ecx,256
|
||||
; mov edx,DSPFuncUsed
|
||||
|
||||
; mov edx,fulladdtab
|
||||
; mov ecx,65536*2
|
||||
|
||||
; mov ecx,17*4
|
||||
; mov edx,_ViewerZ
|
||||
; mov ecx,512
|
||||
; mov edx,cgram
|
||||
; mov ecx,256*4
|
||||
; mov edx,fxtrace
|
||||
;NEWSYM DecompArray, times 65536 db 0
|
||||
;NEWSYM DecompAPtr, dd 0
|
||||
; mov edx,DecompArray
|
||||
; mov ecx,[DecompAPtr]
|
||||
; shl ecx,3
|
||||
; mov edx,[romdata]
|
||||
; add edx,3E5CCEh
|
||||
; mov ecx,0022h
|
||||
; mov edx,[romdata]
|
||||
; add edx,1024*4096
|
||||
; mov ecx,65536
|
||||
|
||||
or ecx,ecx
|
||||
jz .nofilecontents
|
||||
@@ -174,10 +126,10 @@ NEWSYM startdebugger
|
||||
|
||||
jmp DosExit
|
||||
|
||||
SECTION .data
|
||||
.fname2 db 9,'vram.dat',0
|
||||
.fname3 db 9,'vram2.dat',0
|
||||
|
||||
SECTION .data
|
||||
; global variables
|
||||
NEWSYM debugh, dw 0 ; debug head
|
||||
NEWSYM debugt, dw 0 ; debug tail
|
||||
@@ -261,7 +213,9 @@ NEWSYM loadtempstuff
|
||||
mov [timinl2],al
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
.spcfname db 'temp.spc',0
|
||||
SECTION .text
|
||||
|
||||
;*******************************************************
|
||||
; Debug Loop
|
||||
@@ -445,8 +399,11 @@ NEWSYM debugdump
|
||||
call Write_File
|
||||
call Close_File
|
||||
jmp debugloopb
|
||||
|
||||
SECTION .data
|
||||
.fname db 'SPCRAM.DMP',0
|
||||
.fname2 db 'DSP.DMP',0
|
||||
SECTION .text
|
||||
|
||||
;*******************************************************
|
||||
; Debug save/load states
|
||||
@@ -1416,7 +1373,9 @@ NEWSYM traceops
|
||||
mov [xpc],si
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
.message1 db 'Tracing. Press ESC to stop.'
|
||||
SECTION .text
|
||||
|
||||
;*******************************************************
|
||||
; SPCBreakOps Breaks at Breakpoint @ SPC
|
||||
@@ -1511,7 +1470,9 @@ NEWSYM SPCbreakops
|
||||
mov [xpc],si
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
.message1 db 'Locating Breakpoint ... Press ESC to stop.'
|
||||
SECTION .text
|
||||
|
||||
;*******************************************************
|
||||
; BreakatSign Breaks whenever debstop = 1
|
||||
@@ -1614,7 +1575,9 @@ NEWSYM breakatsign
|
||||
pop es
|
||||
jmp debugloopa
|
||||
|
||||
SECTION .data
|
||||
.message1 db 'Waiting for Signal .... Press ESC to stop.'
|
||||
SECTION .text
|
||||
|
||||
;*******************************************************
|
||||
; BreakatSign&Log Breaks whenever debstop = 1
|
||||
@@ -1790,6 +1753,7 @@ NEWSYM breakatsignlog
|
||||
mov bx,[.handle]
|
||||
call Close_File
|
||||
|
||||
SECTION .data
|
||||
.loggeddata times 128 db 0
|
||||
.message1 db 'Waiting for Signal .... Press ESC to stop.',0
|
||||
.handle dw 0
|
||||
@@ -1798,7 +1762,6 @@ NEWSYM breakatsignlog
|
||||
;*******************************************************
|
||||
; BreakatSignB Breaks whenever keyonsn = 1
|
||||
;*******************************************************
|
||||
SECTION .data
|
||||
NEWSYM keyonsn, db 0
|
||||
NEWSYM prbreak, db 0
|
||||
SECTION .text
|
||||
@@ -2239,7 +2202,8 @@ NEWSYM startdisplay
|
||||
jmp .loopprint
|
||||
.doneprint
|
||||
ret
|
||||
|
||||
|
||||
SECTION .data
|
||||
.debuginfo db '- @5Z@4S@3N@2E@6S@7 debugger -$'
|
||||
.D65816 db ' 65816 $'
|
||||
.mbar db '@4(@6T@4)@7race for @4(@6B@4)@7reakpoint '
|
||||
@@ -2250,7 +2214,6 @@ NEWSYM startdisplay
|
||||
; Next Opcode Writes the next opcode & regs
|
||||
;*******************************************************
|
||||
; 008000 STZ $123456,x A:0000 X:0000 Y:0000 S:01FF DB:00 D:0000 P:33 E+
|
||||
SECTION .data
|
||||
NEWSYM debugsa1, db 0
|
||||
NEWSYM skipdebugsa1, db 1
|
||||
SECTION .text
|
||||
@@ -3545,7 +3508,7 @@ SECTION .text
|
||||
pop ecx
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
SECTION .data
|
||||
.hexdat db '0123456789ABCDEF'
|
||||
SECTION .text
|
||||
|
||||
@@ -3610,7 +3573,10 @@ NEWSYM nextopcodesa1
|
||||
mov dl,0
|
||||
int 10h
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
.blah db 0
|
||||
SECTION .text
|
||||
|
||||
.outputtobuffer
|
||||
; output pb/pc
|
||||
@@ -4406,4 +4372,3 @@ NEWSYM ArgumentTable
|
||||
; F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FB FC FD FE FF
|
||||
db 14,01,02,03,15,16,17,18,35,64,09,65,31,66,67,00
|
||||
SECTION .text
|
||||
NEWSYM DebugAsmEnd
|
||||
|
||||
@@ -77,18 +77,8 @@ EXTSYM TCPIPAddress
|
||||
; made. GUI36hzcall should be called at 36hz after a call GUIInit and
|
||||
; before GUIDeInit.
|
||||
|
||||
|
||||
;SECTION .data
|
||||
;NEWSYM OSPort, db 0 ; 0 = DOS (C), 1 = DOS (ASM), 2 = Linux, 3 = Win95
|
||||
|
||||
SECTION .bss
|
||||
|
||||
NEWSYM OSPort, resb 1
|
||||
|
||||
SECTION .data
|
||||
|
||||
NEWSYM dssel, dw 0
|
||||
|
||||
SECTION .text
|
||||
|
||||
NEWSYM StartUp
|
||||
@@ -445,11 +435,6 @@ NEWSYM Get_File_Date
|
||||
%%prskip
|
||||
%endmacro
|
||||
|
||||
;SECTION .data
|
||||
;NEWSYM prval, db 0
|
||||
;NEWSYM prres, db 0
|
||||
;SECTION .text
|
||||
|
||||
NEWSYM Check_Key
|
||||
; xor al,al
|
||||
; PressConv 75,01h,75
|
||||
@@ -1609,16 +1594,6 @@ NEWSYM Check60hz
|
||||
; TCP/IP Stuff
|
||||
; ****************************
|
||||
|
||||
; TCPIPPortNum
|
||||
;NEWSYM TCPIPStatus, db 0
|
||||
;NEWSYM PacketSendSize, dd 0
|
||||
;NEWSYM PacketRecvSize, dd 0
|
||||
;NEWSYM PacketRecvPtr, dd 0
|
||||
;NEWSYM PacketSendArray, times 256 db 0
|
||||
;NEWSYM PacketRecvArray, times 256 db 0
|
||||
;NEWSYM IPAddrStr, times 20 db 0
|
||||
;NEWSYM RemoteDisconnect, db 0
|
||||
|
||||
SECTION .bss
|
||||
|
||||
NEWSYM TCPIPStatus, resb 1
|
||||
@@ -1806,7 +1781,6 @@ NEWSYM GetHostName
|
||||
|
||||
NEWSYM hostname
|
||||
NEWSYM UDPConfig
|
||||
;NEWSYM tcperr, dd 0,0,0,0
|
||||
|
||||
SECTION .bss
|
||||
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
|
||||
%include "macros.mac"
|
||||
|
||||
NEWSYM GPProAsmStart
|
||||
section .data
|
||||
sample times 60 db 0
|
||||
clock_mask db 0
|
||||
@@ -154,4 +153,3 @@ GPP_ERR:
|
||||
pop ebx
|
||||
mov eax,1
|
||||
ret
|
||||
NEWSYM GPProAsmEnd
|
||||
|
||||
@@ -26,9 +26,6 @@ EXTSYM vesa2selec,InitVesa12,videotroub
|
||||
EXTSYM cscopymodeq,cscopymodex
|
||||
%endif
|
||||
|
||||
NEWSYM InitVidAsmStart
|
||||
|
||||
|
||||
SECTION .bss
|
||||
|
||||
NEWSYM clearfilter, resw 1
|
||||
@@ -572,5 +569,3 @@ NEWSYM dosinitvideo
|
||||
mov ecx,6144
|
||||
pop es
|
||||
ret
|
||||
|
||||
NEWSYM InitVidAsmEnd
|
||||
|
||||
@@ -30,67 +30,8 @@ EXTSYM pl5contrl,pl5p209
|
||||
EXTSYM CalibXmin, CalibYmin, CalibXmax, CalibYmax, CalibXmin209
|
||||
EXTSYM CalibYmin209, CalibXmax209, CalibYmax209
|
||||
|
||||
NEWSYM JoyAsmStart
|
||||
|
||||
|
||||
SECTION .data
|
||||
|
||||
;NEWSYM joy4218, db 0
|
||||
;NEWSYM joy4219, db 0
|
||||
;NEWSYM joy4218j, db 0
|
||||
;NEWSYM joy4219j, db 0
|
||||
;NEWSYM joy421A, db 0
|
||||
;NEWSYM joy421B, db 0
|
||||
;NEWSYM joy421Aj, db 0
|
||||
;NEWSYM joy421Bj, db 0
|
||||
|
||||
;NEWSYM JoyCenterX, dd 0
|
||||
;NEWSYM JoyCenterY, dd 0
|
||||
;NEWSYM JoyMaxX, dd 0
|
||||
;NEWSYM JoyMaxY, dd 0
|
||||
;NEWSYM JoyMinX, dd 0
|
||||
;NEWSYM JoyMinY, dd 0
|
||||
;NEWSYM JoyExists, db 0
|
||||
;NEWSYM JoyX, dd 0
|
||||
;NEWSYM JoyY, dd 0
|
||||
;NEWSYM JoyCenterX2, dd 0
|
||||
;NEWSYM JoyCenterY2, dd 0
|
||||
;NEWSYM JoyMaxX2, dd 0
|
||||
;NEWSYM JoyMaxY2, dd 0
|
||||
;NEWSYM JoyMinX2, dd 0
|
||||
;NEWSYM JoyMinY2, dd 0
|
||||
;NEWSYM JoyExists2, db 0
|
||||
;NEWSYM JoyX2, dd 0
|
||||
;NEWSYM JoyY2, dd 0
|
||||
;NEWSYM JoyAltrn, db 0
|
||||
NEWSYM JoyAltrn2, db 2
|
||||
;NEWSYM JoyCenterX209, dd 0
|
||||
;NEWSYM JoyCenterY209, dd 0
|
||||
;NEWSYM JoyMaxX209, dd 0
|
||||
;NEWSYM JoyMaxY209, dd 0
|
||||
;NEWSYM JoyMinX209, dd 0
|
||||
;NEWSYM JoyMinY209, dd 0
|
||||
;NEWSYM JoyCenterX2209, dd 0
|
||||
;NEWSYM JoyCenterY2209, dd 0
|
||||
;NEWSYM JoyMaxX2209, dd 0
|
||||
;NEWSYM JoyMaxY2209, dd 0
|
||||
;NEWSYM JoyMinX2209, dd 0
|
||||
;NEWSYM JoyMinY2209, dd 0
|
||||
|
||||
;JoyQuant db 0
|
||||
;JoyBQuant db 0
|
||||
;NumSWs db 0
|
||||
;NumGRiPs db 0
|
||||
;PPad db 0 ; b0 = pp0, b1 = pp1
|
||||
|
||||
;JoyQuant209 db 0
|
||||
;JoyBQuant209 db 0
|
||||
;NumSWs209 db 0
|
||||
;NumGRiPs209 db 0
|
||||
;Buttons6 db 0
|
||||
;Buttons6209 db 0
|
||||
|
||||
|
||||
SECTION .bss
|
||||
|
||||
NEWSYM joy4218, resb 1
|
||||
@@ -147,20 +88,6 @@ NumGRiPs209 resb 1
|
||||
Buttons6 resb 1
|
||||
Buttons6209 resb 1
|
||||
|
||||
;NEWSYM pl3selk, dd 0 ; 3SELECT = SHIFT
|
||||
;NEWSYM pl3startk, dd 0 ; 3START = ENTER
|
||||
;NEWSYM pl3upk, dd 0 ; 3UP = up
|
||||
;NEWSYM pl3downk, dd 0 ; 3DOWN = down
|
||||
;NEWSYM pl3leftk, dd 0 ; 3LEFT = left
|
||||
;NEWSYM pl3rightk, dd 0 ; 3RIGHT = right
|
||||
;NEWSYM pl3Yk, dd 0 ; 3X = INS
|
||||
;NEWSYM pl3Xk, dd 0 ; 3A = HOME
|
||||
;NEWSYM pl3Lk, dd 0 ; 3L = PAGE UP
|
||||
;NEWSYM pl3Bk, dd 0 ; 3Y = DELETE
|
||||
;NEWSYM pl3Ak, dd 0 ; 3B = END
|
||||
;NEWSYM pl3Rk, dd 0 ; 3R = PAGE DOWN
|
||||
|
||||
|
||||
SECTION .text
|
||||
|
||||
NEWSYM GetCoords
|
||||
@@ -570,7 +497,9 @@ NEWSYM DosUpdateDevices
|
||||
.none2
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
NEWSYM JoyReadControl, db 0
|
||||
SECTION .text
|
||||
|
||||
JoyRead209:
|
||||
cmp byte[JoyAltrn],1
|
||||
@@ -1748,6 +1677,4 @@ NEWSYM SetInputDevice209
|
||||
.nopp5
|
||||
|
||||
.exit
|
||||
ret
|
||||
|
||||
NEWSYM JoyAsmEnd
|
||||
ret
|
||||
@@ -27,13 +27,6 @@ EXTSYM delay
|
||||
EXTSYM dssel
|
||||
%endif
|
||||
|
||||
NEWSYM DosModemRTNAsmStart
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
SECTION .bss
|
||||
NEWSYM UartType, resb 1
|
||||
|
||||
@@ -457,5 +450,3 @@ NEWSYM DeInitModemC
|
||||
out dx,al
|
||||
sti
|
||||
ret
|
||||
|
||||
NEWSYM DosModemRTNAsmEnd
|
||||
|
||||
@@ -431,7 +431,7 @@ NEWSYM stopsbsound
|
||||
sti
|
||||
iretd
|
||||
|
||||
section .bss ;ALIGN=32
|
||||
section .bss
|
||||
NEWSYM sbhandexec, resd 1
|
||||
section .text
|
||||
|
||||
@@ -650,7 +650,7 @@ NEWSYM stopsbsound16
|
||||
; Sound Blaster Initialization Stuff
|
||||
;****************************************************
|
||||
|
||||
section .bss ;ALIGN=32
|
||||
section .bss
|
||||
NEWSYM memoryloc, resd 1 ; Memory offset in conventional memory
|
||||
NEWSYM memoryloc2, resd 1 ; Memory offset in conventional memory
|
||||
NEWSYM sbselec, resw 1 ; Selector of Memory location
|
||||
@@ -805,7 +805,7 @@ NEWSYM InitSB
|
||||
call SB_dsp_write
|
||||
jmp .fixsurround
|
||||
|
||||
SECTION .bss ;ALIGN=32
|
||||
SECTION .bss
|
||||
.Versionnum resw 1
|
||||
SECTION .text
|
||||
|
||||
|
||||
@@ -19,11 +19,6 @@
|
||||
|
||||
EXTSYM SidewinderFix
|
||||
|
||||
NEWSYM SWAsmStart
|
||||
|
||||
|
||||
|
||||
|
||||
%macro ParityCheckSW 1
|
||||
mov ecx,ebx
|
||||
xor cl,ch
|
||||
@@ -223,4 +218,3 @@ ModeALoop:
|
||||
dec ecx
|
||||
jnz ModeALoop
|
||||
ret
|
||||
NEWSYM SWAsmEnd
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
;Flat memory mode (Protected mode extender required! Tested with DOS32)
|
||||
;Tested with TASM 4.0+
|
||||
|
||||
|
||||
SECTION .data
|
||||
SW1 dd 0 ;SW #1's button status
|
||||
SW2 dd 0 ;SW #2's button status
|
||||
SW3 dd 0 ;SW #3's button status
|
||||
@@ -47,6 +47,7 @@ SWSetup dd 0 ;Tell the driver what polling mode to use
|
||||
|
||||
gDump times 100h db 0 ;SW Status dump buffer (space for 256 bytes, uses 200)
|
||||
bDump times 80h db 0 ;buffer to hold button data (Modes A and B, all SW)
|
||||
SECTION .text
|
||||
|
||||
;This macro calculates parity for the buttons and compares it to the SW's
|
||||
; parity bit. If they don't match, the button data is discarded.
|
||||
|
||||
@@ -28,21 +28,11 @@ EXTSYM InitDrive,gotoroot,InitDir,fulladdtab
|
||||
EXTSYM LFBpointer,noblocks,bytesperscanline,vesamode,VESAmodelist
|
||||
|
||||
|
||||
NEWSYM Vesa12AsmStart
|
||||
|
||||
|
||||
|
||||
; add 0214h video mode
|
||||
|
||||
;NEWSYM granularity, dw 0
|
||||
;NEWSYM granadd, dd 0
|
||||
|
||||
SECTION .bss
|
||||
|
||||
NEWSYM granularity, resw 1
|
||||
NEWSYM granadd, resd 1
|
||||
|
||||
|
||||
SECTION .text
|
||||
|
||||
NEWSYM VESA12EXITTODOS
|
||||
@@ -66,32 +56,30 @@ NEWSYM VESA12EXITTODOS
|
||||
mov byte[videotroub],1
|
||||
jmp DosExit
|
||||
|
||||
|
||||
SECTION .data
|
||||
.exitfromvesa12 db 'Unable to Initialize VESA1.2 $'
|
||||
.return db 10,13,'$'
|
||||
SECTION .text
|
||||
|
||||
;*******************************************************
|
||||
; Set up Vesa 2
|
||||
;*******************************************************
|
||||
|
||||
NEWSYM InitVesa12
|
||||
;-------------------------------------------------;
|
||||
; First - allocate some bytes in DOS memory for ;
|
||||
; communication with VBE ;
|
||||
;-------------------------------------------------;
|
||||
;-------------------------------------------------;
|
||||
; First - allocate some bytes in DOS memory for ;
|
||||
; communication with VBE ;
|
||||
;-------------------------------------------------;
|
||||
|
||||
mov eax,0100h
|
||||
mov ebx,512/16 ; 512 bytes
|
||||
int 31h ; Function 31h,100h - Allocate
|
||||
; DOS memory (512 bytes)
|
||||
jnc .gotmem
|
||||
mov edx,.nomemmessage
|
||||
jmp VESA12EXITTODOS
|
||||
.nomemmessage
|
||||
db ': Unable to locate DOS memory.$'
|
||||
|
||||
.gotmem
|
||||
mov fs,dx ; FS now points to the DOS
|
||||
; buffer
|
||||
mov eax,0100h
|
||||
mov ebx,512/16 ; 512 bytes
|
||||
int 31h ; Function 31h,100h - Allocate DOS memory (512 bytes)
|
||||
jnc .gotmem
|
||||
mov edx,.nomemmessage
|
||||
jmp VESA12EXITTODOS
|
||||
.gotmem
|
||||
mov fs,dx ; FS now points to the DOS buffer
|
||||
|
||||
|
||||
;--------------------------------------------------;
|
||||
@@ -118,8 +106,6 @@ NEWSYM InitVesa12
|
||||
jnc .int1ok
|
||||
mov edx,.noint1message
|
||||
jmp VESA12EXITTODOS
|
||||
.noint1message
|
||||
db ': Simulated real mode interrupt failed.$'
|
||||
|
||||
.int1ok ; Real mode int successful!!!
|
||||
mov eax,[RMREGS.eax]
|
||||
@@ -127,24 +113,19 @@ NEWSYM InitVesa12
|
||||
jz .vbedetected
|
||||
mov edx,.novbemessage
|
||||
jmp VESA12EXITTODOS
|
||||
.novbemessage
|
||||
db ': VBE not detected!!$'
|
||||
|
||||
.vbedetected
|
||||
cmp dword[fs:0000],'VESA'
|
||||
jz .vesadetected ; Check for presence of vesa
|
||||
mov edx,.novesamessage
|
||||
jmp VESA12EXITTODOS
|
||||
.novesamessage
|
||||
db ': VESA not detected!$'
|
||||
|
||||
|
||||
.vesadetected
|
||||
cmp word[fs:0004],102h
|
||||
jae .vesa12detected ; Check we've got VESA 1.2 or greater
|
||||
mov edx,.novesa2message
|
||||
jmp VESA12EXITTODOS
|
||||
.novesa2message
|
||||
db ': VESA 1.2 or greater required!$'
|
||||
|
||||
|
||||
;-----------------------------------------------------;
|
||||
@@ -162,8 +143,6 @@ NEWSYM InitVesa12
|
||||
jnc .wegottheselector
|
||||
mov edx, .oopsnoselector
|
||||
jmp VESA12EXITTODOS
|
||||
.oopsnoselector
|
||||
db ': Failed to allocate vesa display selector!$'
|
||||
|
||||
.wegottheselector
|
||||
|
||||
@@ -187,8 +166,6 @@ NEWSYM InitVesa12
|
||||
.outofmodelistspace
|
||||
mov edx,.outofmodelistspacemessage
|
||||
jmp VESA12EXITTODOS
|
||||
.outofmodelistspacemessage
|
||||
db ': Out of VESA mode list space!$'
|
||||
|
||||
;----------------------------------------------;
|
||||
; OK - Scan the mode list to find a matching ;
|
||||
@@ -208,9 +185,6 @@ NEWSYM InitVesa12
|
||||
mov edx,.endoflist
|
||||
jmp VESA12EXITTODOS
|
||||
|
||||
.endoflist db ': VESA 1.2 mode does not work on your video card/driver.$'
|
||||
.whichwin db 0
|
||||
|
||||
.notendoflist
|
||||
|
||||
mov edi, RMREGS
|
||||
@@ -230,8 +204,6 @@ NEWSYM InitVesa12
|
||||
jnc .modecheckok
|
||||
mov edx,.modecheckfail
|
||||
jmp VESA12EXITTODOS
|
||||
.modecheckfail
|
||||
db ': Real mode interrupt failure while checking vesa mode$'
|
||||
|
||||
.modecheckok
|
||||
add ebp,2
|
||||
@@ -492,11 +464,6 @@ NEWSYM InitVesa12
|
||||
div bx
|
||||
mov [granadd],ax
|
||||
|
||||
|
||||
;vesa2_rtrcl dw 0 ; red transparency clear (bit+4)
|
||||
;vesa2_rtrcla dw 0 ; red transparency (AND) clear (not(bit+4))
|
||||
;vesa2_rfull dw 0 ; red max (or (bit-1)*1Fh)
|
||||
|
||||
call genfulladdtab
|
||||
|
||||
xor eax,eax
|
||||
@@ -510,7 +477,6 @@ NEWSYM InitVesa12
|
||||
jz .modesetok
|
||||
mov edx,.unableset
|
||||
jmp VESA12EXITTODOS ; Failure!!!
|
||||
.unableset db 'Unable to initialize video mode.$'
|
||||
|
||||
.modesetok
|
||||
;******************************* EXTRA BIT ****************************
|
||||
@@ -534,34 +500,24 @@ NEWSYM InitVesa12
|
||||
jz .correctwidth
|
||||
mov edx, .unablescan
|
||||
jmp VESA12EXITTODOS ; Failure!!!
|
||||
.unablescan db 'Unable to set scan line length.$'
|
||||
|
||||
.correctwidth
|
||||
|
||||
ret
|
||||
|
||||
|
||||
;RMREGS
|
||||
;.edi dd 0
|
||||
;.esi dd 0
|
||||
;.ebp dd 0
|
||||
;.esp dd 0
|
||||
;.ebx dd 0
|
||||
;.edx dd 0
|
||||
;.ecx dd 0
|
||||
;.eax dd 0
|
||||
;.flags dw 0
|
||||
;.es dw 0
|
||||
;.ds dw 0
|
||||
;.fs dw 0
|
||||
;.gs dw 0
|
||||
;.ip dw 0
|
||||
;.cs dw 0
|
||||
;.sp dw 0
|
||||
;.ss dw 0
|
||||
;.spare times 20 dd 0
|
||||
|
||||
|
||||
SECTION .data
|
||||
.nomemmessage db ': Unable to locate DOS memory.$'
|
||||
.noint1message db ': Simulated real mode interrupt failed.$'
|
||||
.oopsnoselector db ': Failed to allocate vesa display selector!$'
|
||||
.novesa2message db ': VESA 1.2 or greater required!$'
|
||||
.novbemessage db ': VBE not detected!!$'
|
||||
.novesamessage db ': VESA not detected!$'
|
||||
.outofmodelistspacemessage db ': Out of VESA mode list space!$'
|
||||
.endoflist db ': VESA 1.2 mode does not work on your video card/driver.$'
|
||||
.whichwin db 0
|
||||
.modecheckfail db ': Real mode interrupt failure while checking vesa mode$'
|
||||
.unableset db 'Unable to initialize video mode.$'
|
||||
.unablescan db 'Unable to set scan line length.$'
|
||||
SECTION .bss
|
||||
|
||||
RMREGS
|
||||
@@ -583,5 +539,3 @@ RMREGS
|
||||
.sp resw 1
|
||||
.ss resw 1
|
||||
.spare times 20 resd 1
|
||||
|
||||
NEWSYM Vesa12AsmEnd
|
||||
|
||||
@@ -28,11 +28,7 @@ EXTSYM UnusedBit,HalfTrans,UnusedBitXor,ngrposng,nggposng,ngbposng
|
||||
|
||||
EXTSYM Init_2xSaIMMX
|
||||
|
||||
NEWSYM Vesa2AsmStart
|
||||
|
||||
|
||||
SECTION .data
|
||||
|
||||
; add 0214h video mode
|
||||
anticrash times 10 db 0
|
||||
|
||||
@@ -162,8 +158,10 @@ NEWSYM VESA2EXITTODOS
|
||||
call Change_Dir
|
||||
jmp DosExit
|
||||
|
||||
SECTION .data
|
||||
.exitfromvesa2 db 'Unable to Initialize VESA2 : ',0
|
||||
.return db 10,13,0
|
||||
SECTION .text
|
||||
|
||||
;*******************************************************
|
||||
; Set up Vesa 2
|
||||
@@ -182,8 +180,6 @@ NEWSYM InitVesa2
|
||||
jnc .gotmem
|
||||
mov edx,.nomemmessage
|
||||
jmp VESA2EXITTODOS
|
||||
.nomemmessage
|
||||
db 'Unable to locate DOS memory.',0
|
||||
|
||||
.gotmem
|
||||
mov fs,dx ; FS now points to the DOS
|
||||
@@ -214,8 +210,7 @@ NEWSYM InitVesa2
|
||||
jnc .int1ok
|
||||
mov edx,.noint1message
|
||||
jmp VESA2EXITTODOS
|
||||
.noint1message
|
||||
db 'Simulated real mode interrupt failed.',0
|
||||
|
||||
|
||||
.int1ok ; Real mode int successful!!!
|
||||
mov eax,[RMREGS.eax]
|
||||
@@ -223,24 +218,19 @@ NEWSYM InitVesa2
|
||||
jz .vbedetected
|
||||
mov edx,.novbemessage
|
||||
jmp VESA2EXITTODOS
|
||||
.novbemessage
|
||||
db 'VBE not detected!!',0
|
||||
|
||||
.vbedetected
|
||||
cmp dword[fs:0000],'VESA'
|
||||
jz .vesadetected ; Check for presence of vesa
|
||||
mov edx,.novesamessage
|
||||
jmp VESA2EXITTODOS
|
||||
.novesamessage
|
||||
db 'VESA not detected!',0
|
||||
|
||||
|
||||
.vesadetected
|
||||
cmp word[fs:0004],200h
|
||||
jae .vesa2detected ; Check we've got VESA 2.0 or greater
|
||||
mov edx,.novesa2message
|
||||
jmp VESA2EXITTODOS
|
||||
.novesa2message
|
||||
db 'VESA 2.0 or greater required!',0
|
||||
|
||||
|
||||
;-----------------------------------------------------;
|
||||
@@ -263,8 +253,6 @@ NEWSYM InitVesa2
|
||||
jnc .wegottheselector
|
||||
mov edx, .oopsnoselector
|
||||
jmp VESA2EXITTODOS
|
||||
.oopsnoselector
|
||||
db 'Failed to allocate vesa display selector!',0
|
||||
|
||||
.wegottheselector
|
||||
|
||||
@@ -288,8 +276,6 @@ NEWSYM InitVesa2
|
||||
.outofmodelistspace
|
||||
mov edx,.outofmodelistspacemessage
|
||||
jmp VESA2EXITTODOS
|
||||
.outofmodelistspacemessage
|
||||
db 'Out of VESA2 mode list space!',0
|
||||
|
||||
;----------------------------------------------;
|
||||
; OK - Scan the mode list to find a matching ;
|
||||
@@ -309,9 +295,6 @@ NEWSYM InitVesa2
|
||||
mov edx,.endoflist
|
||||
jmp VESA2EXITTODOS
|
||||
|
||||
.endoflist db 'This VESA2 mode does not work on your video card / driver.',0
|
||||
.whichwin db 0
|
||||
|
||||
.notendoflist
|
||||
|
||||
mov edi, RMREGS
|
||||
@@ -331,8 +314,6 @@ NEWSYM InitVesa2
|
||||
jnc .modecheckok
|
||||
mov edx,.modecheckfail
|
||||
jmp VESA2EXITTODOS
|
||||
.modecheckfail
|
||||
db 'Real mode interrupt failure while checking vesa mode',0
|
||||
|
||||
.modecheckok
|
||||
add ebp,2
|
||||
@@ -622,17 +603,12 @@ NEWSYM InitVesa2
|
||||
|
||||
xor word[vesa2_clbit],0FFFFh
|
||||
|
||||
;vesa2_rtrcl dw 0 ; red transparency clear (bit+4)
|
||||
;vesa2_rtrcla dw 0 ; red transparency (AND) clear (not(bit+4))
|
||||
;vesa2_rfull dw 0 ; red max (or (bit-1)*1Fh)
|
||||
|
||||
call genfulladdtab
|
||||
|
||||
test word[fs:0h],10000000b ; Check if linear available
|
||||
jnz .linearavailable
|
||||
mov edx,.nolframebuffer
|
||||
jmp VESA2EXITTODOS ; None available
|
||||
.nolframebuffer db 'Linear Frame Buffer not Detected.',0
|
||||
|
||||
;---------------------------------------------;
|
||||
; OK - now set the vesa 2 mode based on the ;
|
||||
@@ -655,7 +631,6 @@ NEWSYM InitVesa2
|
||||
jnc .mappedphysicalarea
|
||||
mov edx,.unablemap
|
||||
jmp VESA2EXITTODOS ; Failure!!!
|
||||
.unablemap db 'Unable to map physical area.',0
|
||||
|
||||
.mappedphysicalarea
|
||||
shl ebx,16
|
||||
@@ -676,8 +651,7 @@ NEWSYM InitVesa2
|
||||
jz .modesetok
|
||||
mov edx,.unableset
|
||||
jmp VESA2EXITTODOS ; Failure!!!
|
||||
.unableset db 'Unable to initialize video mode.',0
|
||||
|
||||
|
||||
.modesetok
|
||||
;******************************* EXTRA BIT ****************************
|
||||
|
||||
@@ -708,7 +682,6 @@ NEWSYM InitVesa2
|
||||
jz .correctwidth
|
||||
mov edx, .unablescan
|
||||
jmp VESA2EXITTODOS ; Failure!!!
|
||||
.unablescan db 'Unable to set scan line length.',0
|
||||
|
||||
.correctwidth
|
||||
|
||||
@@ -728,7 +701,6 @@ NEWSYM InitVesa2
|
||||
jnc .selectornowset
|
||||
mov edx,.unablelfb
|
||||
jmp VESA2EXITTODOS ; Failure!!!
|
||||
.unablelfb db 'Unable to set selector to LFB.',0
|
||||
|
||||
.selectornowset
|
||||
|
||||
@@ -744,7 +716,6 @@ NEWSYM InitVesa2
|
||||
jnc .ok
|
||||
mov edx,.unablesets
|
||||
jmp VESA2EXITTODOS ; Failure!!!
|
||||
.unablesets db 'Unable to set size of selector.',0
|
||||
|
||||
.ok
|
||||
lar ecx,ebx
|
||||
@@ -757,7 +728,6 @@ NEWSYM InitVesa2
|
||||
jnc .accessrightsset
|
||||
mov edx,.unablesetar
|
||||
jmp VESA2EXITTODOS
|
||||
.unablesetar db 'Unable to set selector access rights.',0
|
||||
|
||||
.accessrightsset
|
||||
mov [vesa2selec],bx
|
||||
@@ -776,6 +746,23 @@ NEWSYM InitVesa2
|
||||
|
||||
|
||||
SECTION .data
|
||||
.nomemmessage db 'Unable to locate DOS memory.',0
|
||||
.noint1message db 'Simulated real mode interrupt failed.',0
|
||||
.novbemessage db 'VBE not detected!!',0
|
||||
.novesamessage db 'VESA not detected!',0
|
||||
.novesa2message db 'VESA 2.0 or greater required!',0
|
||||
.oopsnoselector db 'Failed to allocate vesa display selector!',0
|
||||
.outofmodelistspacemessage db 'Out of VESA2 mode list space!',0
|
||||
.endoflist db 'This VESA2 mode does not work on your video card / driver.',0
|
||||
.whichwin db 0
|
||||
.modecheckfail db 'Real mode interrupt failure while checking vesa mode',0
|
||||
.nolframebuffer db 'Linear Frame Buffer not Detected.',0
|
||||
.unablemap db 'Unable to map physical area.',0
|
||||
.unableset db 'Unable to initialize video mode.',0
|
||||
.unablescan db 'Unable to set scan line length.',0
|
||||
.unablelfb db 'Unable to set selector to LFB.',0
|
||||
.unablesets db 'Unable to set size of selector.',0
|
||||
.unablesetar db 'Unable to set selector access rights.',0
|
||||
|
||||
NEWSYM LFBpointer
|
||||
dd 0
|
||||
@@ -794,29 +781,6 @@ NEWSYM vesamode
|
||||
SECTION .bss
|
||||
|
||||
NEWSYM VESAmodelist, times 512 resw 1
|
||||
|
||||
|
||||
;NEWSYM RMREGS
|
||||
;.edi dd 0
|
||||
;.esi dd 0
|
||||
;.ebp dd 0
|
||||
;.esp dd 0
|
||||
;.ebx dd 0
|
||||
;.edx dd 0
|
||||
;.ecx dd 0
|
||||
;.eax dd 0
|
||||
;
|
||||
;.flags dw 0
|
||||
;.es dw 0
|
||||
;.ds dw 0
|
||||
;.fs dw 0
|
||||
;.gs dw 0
|
||||
;.ip dw 0
|
||||
;.cs dw 0
|
||||
;.sp dw 0
|
||||
;.ss dw 0
|
||||
;.spare times 20 dd 0
|
||||
|
||||
NEWSYM RMREGS
|
||||
.edi resd 1
|
||||
.esi resd 1
|
||||
@@ -838,4 +802,3 @@ NEWSYM RMREGS
|
||||
.ss resw 1
|
||||
.spare times 20 resd 1
|
||||
;----------------------------------------------------------------------
|
||||
NEWSYM Vesa2AsmEnd
|
||||
|
||||
@@ -40,8 +40,9 @@ EXTSYM modembuffer, modemhead, modemtail
|
||||
|
||||
|
||||
|
||||
|
||||
SECTION .data
|
||||
NEWSYM ipxinited, db 0
|
||||
SECTION .text
|
||||
|
||||
NEWSYM initipx
|
||||
mov dword[modemhead],0
|
||||
@@ -65,7 +66,9 @@ NEWSYM deinitipx
|
||||
.notinitialized
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
NEWSYM PacketPointer, dd 0
|
||||
SECTION .text
|
||||
|
||||
NEWSYM PreparePacketIPX
|
||||
cmp byte[ipxinited],1
|
||||
@@ -89,7 +92,10 @@ NEWSYM ipxsendchar ; prepare packet
|
||||
pop esi
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
NEWSYM IPXSearchval, db 0
|
||||
SECTION .text
|
||||
|
||||
NEWSYM ipxlookforconnect
|
||||
cmp byte[ipxinited],0
|
||||
je .initialized
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/Fezsnesw.exe chips\dsp1proc.obj chips\dsp2proc.obj dos\sw.obj dos\gppro.obj dos\vesa12.obj dos\zsipx.obj dos\modemrtn.obj dos\joy.obj dos\debug.obj dos\vesa2.obj dos\initvid.obj cfgload.obj endmem.obj init.obj initc.obj uic.obj patch.obj ui.obj vcache.obj effects\water.obj effects\smoke.obj effects\burn.obj version.obj video\procvid.obj win\copyvwin.obj win\winintrf.obj win\winlink.obj win\zloaderw.obj win\ztcp.obj win\zfilew.obj win\zipxw.obj video\makev16b.obj video\makev16t.obj video\makevid.obj video\mode716.obj video\mode716b.obj video\mode716d.obj video\mode716e.obj video\mode716t.obj video\mode7.obj video\mode7ext.obj video\mv16tms.obj video\newg162.obj video\newgfx16.obj video\newgfx2.obj video\newgfx.obj video\m716text.obj video\2xsaiw.obj video\sw_draw.obj video\hq2x16.obj video\hq2x32.obj video\hq3x16.obj video\hq3x32.obj video\hq4x16.obj video\hq4x32.obj gui\gui.obj gui\menu.obj cpu\addrni.obj cpu\dma.obj cpu\dsp.obj cpu\dspproc.obj cpu\execute.obj cpu\irq.obj cpu\memory.obj cpu\spc700.obj cpu\stable.obj cpu\table.obj cpu\tableb.obj cpu\tablec.obj chips\dsp1emu.obj chips\fxemu2.obj chips\fxemu2b.obj chips\fxemu2c.obj chips\fxtable.obj chips\sa1proc.obj chips\sa1regs.obj chips\sfxproc.obj chips\st10proc.obj chips\seta10.obj chips\sdd1emu.obj zip\unzip.obj zip\zpng.obj jma\7zlzma.obj jma\crc32.obj jma\iiostrm.obj jma\inbyte.obj jma\jma.obj jma\lzmadec.obj jma\lzma.obj jma\winout.obj jma\zsnesjma.obj zlib.lib libpng.lib wsock32.lib user32.lib gdi32.lib shell32.lib winmm.lib dinput8.lib dxguid.lib /link /section:.text,erw
|
||||
/Fezsnesw.exe chips\dsp1proc.obj chips\dsp2proc.obj dos\sw.obj dos\gppro.obj dos\vesa12.obj dos\zsipx.obj dos\modemrtn.obj dos\joy.obj dos\debug.obj dos\vesa2.obj dos\initvid.obj cfgload.obj endmem.obj init.obj initc.obj uic.obj patch.obj ui.obj vcache.obj effects\water.obj effects\smoke.obj effects\burn.obj version.obj video\procvid.obj win\copyvwin.obj win\winintrf.obj win\winlink.obj win\zloaderw.obj win\ztcp.obj win\zfilew.obj win\zipxw.obj video\makev16b.obj video\makev16t.obj video\makevid.obj video\mode716.obj video\mode716b.obj video\mode716d.obj video\mode716e.obj video\mode716t.obj video\mode7.obj video\mode7ext.obj video\mv16tms.obj video\newg162.obj video\newgfx16.obj video\newgfx2.obj video\newgfx.obj video\m716text.obj video\2xsaiw.obj video\sw_draw.obj video\hq2x16.obj video\hq2x32.obj video\hq3x16.obj video\hq3x32.obj video\hq4x16.obj video\hq4x32.obj gui\gui.obj gui\menu.obj cpu\addrni.obj cpu\dma.obj cpu\dsp.obj cpu\dspproc.obj cpu\execute.obj cpu\irq.obj cpu\memory.obj cpu\spc700.obj cpu\stable.obj cpu\table.obj cpu\tableb.obj cpu\tablec.obj chips\dsp1emu.obj chips\fxemu2.obj chips\fxemu2b.obj chips\fxemu2c.obj chips\fxtable.obj chips\sa1proc.obj chips\sa1regs.obj chips\sfxproc.obj chips\st10proc.obj chips\seta10.obj chips\sdd1emu.obj zip\unzip.obj zip\zpng.obj jma\7zlzma.obj jma\crc32.obj jma\iiostrm.obj jma\inbyte.obj jma\jma.obj jma\lzmadec.obj jma\lzma.obj jma\winout.obj jma\zsnesjma.obj zlib.lib libpng.lib wsock32.lib user32.lib gdi32.lib shell32.lib winmm.lib dinput8.lib dxguid.lib /link
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -28,9 +28,6 @@ EXTSYM SpecialLine
|
||||
EXTSYM vidbufferofsb
|
||||
EXTSYM HalfTransB,HalfTransC
|
||||
|
||||
NEWSYM CopyVWinAsmStart
|
||||
|
||||
|
||||
SECTION .bss
|
||||
NEWSYM AddEndBytes, resd 1 ; Number of bytes between each line
|
||||
NEWSYM NumBytesPerLine, resd 1 ; Total number of bytes per line (1024+AddEndBytes)
|
||||
@@ -1562,8 +1559,4 @@ NEWSYM interpolate640x480x16bwin
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
;ALIGN32
|
||||
InterPtr dd 0
|
||||
SECTION .text
|
||||
|
||||
NEWSYM CopyVWinAsmEnd
|
||||
|
||||
@@ -1,73 +0,0 @@
|
||||
//Copyright (C) 1997-2004 ZSNES Team ( zsknight@zsnes.com / _demo_@zsnes.com )
|
||||
//
|
||||
//This program is free software; you can redistribute it and/or
|
||||
//modify it under the terms of the GNU General Public License
|
||||
//as published by the Free Software Foundation; either
|
||||
//version 2 of the License, or (at your option) any later
|
||||
//version.
|
||||
//
|
||||
//This program is distributed in the hope that it will be useful,
|
||||
//but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
//MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
//GNU General Public License for more details.
|
||||
//
|
||||
//You should have received a copy of the GNU General Public License
|
||||
//along with this program; if not, write to the Free Software
|
||||
//Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
|
||||
#include "gblhdr.h"
|
||||
|
||||
extern void CfgLoadAsmStart();
|
||||
extern void CfgLoadAsmEnd();
|
||||
extern void CopyVWinAsmStart();
|
||||
extern void CopyVWinAsmEnd();
|
||||
extern void DebugAsmStart();
|
||||
extern void DebugAsmEnd();
|
||||
extern void JoyAsmStart();
|
||||
extern void JoyAsmEnd();
|
||||
extern void DosModemRTNAsmStart();
|
||||
extern void DosModemRTNAsmEnd();
|
||||
extern void Vesa2AsmStart();
|
||||
extern void Vesa2AsmEnd();
|
||||
extern void InitVidAsmStart();
|
||||
extern void InitVidAsmEnd();
|
||||
extern void SWAsmStart();
|
||||
extern void SWAsmEnd();
|
||||
extern void GPProAsmStart();
|
||||
extern void GPProAsmEnd();
|
||||
extern void Vesa12AsmStart();
|
||||
extern void Vesa12AsmEnd();
|
||||
|
||||
#define MakeCodeWriteable(a, b) MakeCodeWriteable_f (a, b, #a)
|
||||
|
||||
// Thanks QuakeForge
|
||||
void MakeCodeWriteable_f (unsigned long startaddr, unsigned long length, const char *name)
|
||||
{
|
||||
int r;
|
||||
unsigned int addr;
|
||||
int psize = getpagesize();
|
||||
|
||||
//fprintf(stderr, "Unprotecting 0x%x to 0x%x\n", startaddr, startaddr+length);
|
||||
addr = (startaddr & ~(psize -1)) - psize;
|
||||
|
||||
/* Using 7 is a very stupid thing to do, but I'll leave it in commented form for the non-posix compliant zealots to ph34r... */
|
||||
//r = mprotect ((char *) addr, length + startaddr - addr + psize, 7);
|
||||
r = mprotect ((char *) addr, length + startaddr - addr + psize, PROT_READ | PROT_WRITE | PROT_EXEC);
|
||||
|
||||
if (r < 0)
|
||||
fprintf (stderr, "Error! Memory *NOT* unprotected. startaddr = 0x%08lx (%s)\n", startaddr, name);
|
||||
}
|
||||
|
||||
|
||||
void UnProtectMemory(void)
|
||||
{
|
||||
MakeCodeWriteable((long) CopyVWinAsmStart, (long) CopyVWinAsmEnd - (long) CopyVWinAsmStart);
|
||||
MakeCodeWriteable((long) DebugAsmStart, (long) DebugAsmEnd - (long) DebugAsmStart);
|
||||
MakeCodeWriteable((long) JoyAsmStart, (long) JoyAsmEnd - (long) JoyAsmStart);
|
||||
MakeCodeWriteable((long) DosModemRTNAsmStart, (long) DosModemRTNAsmEnd - (long) DosModemRTNAsmStart);
|
||||
MakeCodeWriteable((long) Vesa2AsmStart, (long) Vesa2AsmEnd - (long) Vesa2AsmStart);
|
||||
MakeCodeWriteable((long) InitVidAsmStart, (long) InitVidAsmEnd - (long) InitVidAsmStart);
|
||||
MakeCodeWriteable((long) SWAsmStart, (long) SWAsmEnd - (long) SWAsmStart);
|
||||
MakeCodeWriteable((long) GPProAsmStart, (long) GPProAsmEnd - (long) GPProAsmStart);
|
||||
MakeCodeWriteable((long) Vesa12AsmStart, (long) Vesa12AsmEnd - (long) Vesa12AsmStart);
|
||||
}
|
||||
@@ -90,14 +90,11 @@ int my_atoi(char *nptr) {
|
||||
return atoi(nptr);
|
||||
}
|
||||
|
||||
extern void UnProtectMemory (void);
|
||||
|
||||
int main (int argc, char *argv[]) {
|
||||
int opt,p,pp;
|
||||
|
||||
char *fvar;
|
||||
|
||||
UnProtectMemory();
|
||||
while((opt = getopt(argc, argv, "01:2:789a:c:d:ef:g:hijk:lmno:p:r:s:tuv:wyz?")) != -1) {
|
||||
switch(opt) {
|
||||
/* Palette 0 disable */
|
||||
|
||||
@@ -26,10 +26,6 @@ EXTSYM SpecialLine
|
||||
EXTSYM vidbufferofsb
|
||||
EXTSYM HalfTransB,HalfTransC
|
||||
|
||||
%ifdef __MINGW__
|
||||
NEWSYM CopyVWinAsmStart
|
||||
%endif
|
||||
|
||||
SECTION .bss
|
||||
NEWSYM AddEndBytes, resd 1 ; Number of bytes between each line
|
||||
NEWSYM NumBytesPerLine, resd 1 ; Total number of bytes per line (1024+AddEndBytes)
|
||||
@@ -1553,9 +1549,3 @@ NEWSYM interpolate640x480x16bwin
|
||||
SECTION .data
|
||||
InterPtr dd 0
|
||||
SECTION .text
|
||||
|
||||
|
||||
%ifdef __MINGW__
|
||||
NEWSYM CopyVWinAsmEnd
|
||||
%endif
|
||||
|
||||
|
||||
@@ -135,11 +135,6 @@ EXTSYM _imp__GetLocalTime@4
|
||||
|
||||
EXTSYM FrameSemaphore
|
||||
|
||||
%ifdef __MINGW__
|
||||
NEWSYM WinIntRFAsmStart
|
||||
%endif
|
||||
|
||||
|
||||
; NOTE: For timing, Game60hzcall should be called at 50hz or 60hz (depending
|
||||
; on romispal) after a call to InitPreGame and before DeInitPostGame are
|
||||
; made. GUI36hzcall should be called at 36hz after a call GUIInit and
|
||||
@@ -2071,9 +2066,6 @@ SystemTime:
|
||||
|
||||
|
||||
SECTION .text
|
||||
%ifdef __MINGW__
|
||||
NEWSYM WinIntRFAsmEnd
|
||||
%endif
|
||||
|
||||
%if 0
|
||||
|
||||
|
||||
Reference in New Issue
Block a user