A bunch of stuff that I'm too lazy to list here.
This commit is contained in:
@@ -619,7 +619,7 @@ db 'VideoModeLin = %U',13,10
|
|||||||
db '',13,10
|
db '',13,10
|
||||||
%endif
|
%endif
|
||||||
%ifdef __MSDOS__
|
%ifdef __MSDOS__
|
||||||
db '; Video Mode, 0 - 16',13,10
|
db '; Video Mode, 0 - 18',13,10
|
||||||
db '; 0 = 256x224x8B (MODEQ) 1 = 256x240x8B (MODEQ)',13,10
|
db '; 0 = 256x224x8B (MODEQ) 1 = 256x240x8B (MODEQ)',13,10
|
||||||
db '; 2 = 256x256x8B (MODEQ) 3 = 320x224x8B (MODEX)',13,10
|
db '; 2 = 256x256x8B (MODEQ) 3 = 320x224x8B (MODEX)',13,10
|
||||||
db '; 4 = 320x240x8B (MODEX) 5 = 320x256x8B (MODEX)',13,10
|
db '; 4 = 320x240x8B (MODEX) 5 = 320x256x8B (MODEX)',13,10
|
||||||
@@ -628,7 +628,8 @@ db '; 8 = 320x240x16B (VESA2) 9 = 320x480x8B (VESA2)',13,10
|
|||||||
db '; 10 = 320x480x16B (VESA2) 11 = 512x384x8B (VESA2)',13,10
|
db '; 10 = 320x480x16B (VESA2) 11 = 512x384x8B (VESA2)',13,10
|
||||||
db '; 12 = 512x384x16B (VESA2) 13 = 640x400x8B (VESA2)',13,10
|
db '; 12 = 512x384x16B (VESA2) 13 = 640x400x8B (VESA2)',13,10
|
||||||
db '; 14 = 640x400x16B (VESA2) 15 = 640x480x8B (VESA2)',13,10
|
db '; 14 = 640x400x16B (VESA2) 15 = 640x480x8B (VESA2)',13,10
|
||||||
db '; 16 = 640x480x16B (VESA2)',13,10
|
db '; 16 = 640x480x16B (VESA2) 17 = 800x600x8B (VESA2)',13,10
|
||||||
|
db '; 18 = 800x600x16B (VESA2)',13,10
|
||||||
db '',13,10
|
db '',13,10
|
||||||
db 'VideoModeDos = %U',13,10
|
db 'VideoModeDos = %U',13,10
|
||||||
db '',13,10
|
db '',13,10
|
||||||
@@ -638,9 +639,9 @@ db '',13,10
|
|||||||
db 'Sound = %V',13,10
|
db 'Sound = %V',13,10
|
||||||
db '',13,10
|
db '',13,10
|
||||||
db '; Sound Sampling Rate',13,10
|
db '; Sound Sampling Rate',13,10
|
||||||
db '; 0 = 8000Hz, 1 = 11025Hz, 2 = 22050Hz, 3 = 44100Hz',13,10
|
db '; 0 = 8,000 Hz, 1 = 11,025 Hz, 2 = 22,050 Hz',13,10
|
||||||
db '; 4 = 16000Hz, 5 = 32000Hz',13,10
|
db '; 3 = 44,100 Hz, 4 = 16,000 Hz, 5 = 32,000 Hz',13,10
|
||||||
db '',13,10
|
db '',13,10
|
||||||
db 'SoundRate = %W',13,10
|
db 'SoundRate = %W',13,10
|
||||||
db '',13,10
|
db '',13,10
|
||||||
db '; Stereo (0 = off, 1 = on)',13,10
|
db '; Stereo (0 = off, 1 = on)',13,10
|
||||||
|
|||||||
@@ -1014,7 +1014,7 @@ NEWSYM ClearScreen
|
|||||||
SECTION .data
|
SECTION .data
|
||||||
|
|
||||||
; Total Number of Video Modes
|
; Total Number of Video Modes
|
||||||
NEWSYM NumVideoModes, dd 17
|
NEWSYM NumVideoModes, dd 19
|
||||||
|
|
||||||
; GUI Video Mode Names - Make sure that all names are of the same length
|
; GUI Video Mode Names - Make sure that all names are of the same length
|
||||||
; and end with a NULL terminator
|
; and end with a NULL terminator
|
||||||
@@ -1036,26 +1036,29 @@ db '640X400X8B VESA2',0 ; 13
|
|||||||
db '640X400X16B VESA2',0 ; 14
|
db '640X400X16B VESA2',0 ; 14
|
||||||
db '640X480X8B VESA2',0 ; 15
|
db '640X480X8B VESA2',0 ; 15
|
||||||
db '640X480X16B VESA2',0 ; 16
|
db '640X480X16B VESA2',0 ; 16
|
||||||
|
db '800X600X8B VESA2',0 ; 17
|
||||||
|
db '800X600X16B VESA2',0 ; 18
|
||||||
db ' ',0
|
db ' ',0
|
||||||
|
|
||||||
; Video Mode Feature Availability (1 = Available, 0 = Not Available)
|
; Video Mode Feature Availability (1 = Available, 0 = Not Available)
|
||||||
; Left side starts with Video Mode 0
|
; Left side starts with Video Mode 0
|
||||||
NEWSYM GUI16VID, db 0,0,0,0,0,0,1,0,1,0,1,0,1,0,1,0,1,0 ; 16-bit mode
|
NEWSYM GUI16VID, db 0,0,0,0,0,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0 ; 16-bit mode
|
||||||
NEWSYM GUINGVID, db 1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,0 ; New Graphics Mode Available
|
NEWSYM GUINGVID, db 1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,0 ; New Graphics Mode Available
|
||||||
NEWSYM GUISLVID, db 0,0,1,0,0,1,1,0,0,1,1,0,0,0,0,1,1,0 ; Scanlines
|
NEWSYM GUISLVID, db 0,0,1,0,0,1,1,0,0,1,1,0,0,0,0,1,1,1,1,0 ; Scanlines
|
||||||
NEWSYM GUIINVID, db 0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,1,0 ; Interpolation
|
NEWSYM GUIINVID, db 0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,1,0,0,0 ; Interpolation
|
||||||
NEWSYM GUIEAVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0 ; Eagle
|
NEWSYM GUIEAVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0 ; Eagle
|
||||||
NEWSYM GUIIEVID, db 0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,1,1,0 ; (Interp | Eagle)
|
NEWSYM GUIIEVID, db 0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,1,1,0,0,0 ; (Interp | Eagle)
|
||||||
NEWSYM GUIFSVID, db 0,0,0,0,0,0,0,1,1,1,1,0,0,1,1,1,1,0 ; Full Screen
|
NEWSYM GUIFSVID, db 0,0,0,0,0,0,0,1,1,1,1,0,0,1,1,1,1,1,1,0 ; Full Screen
|
||||||
NEWSYM GUISSVID, db 0,0,0,0,0,0,1,0,0,0,0,1,1,1,1,1,1,0 ; Small Screen
|
NEWSYM GUIWSVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0 ; (Full Scr. | Wide Scr.)
|
||||||
NEWSYM GUITBVID, db 0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0 ; Triple Buffering
|
NEWSYM GUISSVID, db 0,0,0,0,0,0,1,0,0,0,0,1,1,1,1,1,1,1,1,0 ; Small Screen
|
||||||
NEWSYM GUIHSVID, db 0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0 ; Half/Quarter Scanlines
|
NEWSYM GUITBVID, db 0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,0 ; Triple Buffering
|
||||||
NEWSYM GUI2xVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0 ; 2xSaI/Super Eagle Engines
|
NEWSYM GUIHSVID, db 0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0 ; Half/Quarter Scanlines
|
||||||
NEWSYM GUIWFVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; If Windows Full Screen
|
NEWSYM GUI2xVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0 ; 2xSaI/Super Eagle Engines
|
||||||
NEWSYM GUII2VID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; Super 2xSAI Engine
|
NEWSYM GUIWFVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; If Windows Full Screen
|
||||||
NEWSYM GUIM7VID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0 ; Hi-Resolution Mode 7
|
NEWSYM GUII2VID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; Super 2xSAI Engine
|
||||||
NEWSYM GUIBIFIL, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; Bilinear Filtering
|
NEWSYM GUIM7VID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0 ; Hi-Resolution Mode 7
|
||||||
NEWSYM GUITBWVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; Triple Buffering (Win)
|
NEWSYM GUIBIFIL, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; Bilinear Filtering
|
||||||
|
NEWSYM GUITBWVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; Triple Buffering (Win)
|
||||||
SECTION .text
|
SECTION .text
|
||||||
|
|
||||||
; ****************************
|
; ****************************
|
||||||
|
|||||||
@@ -89,6 +89,10 @@ NEWSYM dosinitvideo
|
|||||||
je near .initvesa2640x480x8
|
je near .initvesa2640x480x8
|
||||||
cmp byte[cvidmode],16
|
cmp byte[cvidmode],16
|
||||||
je near .initvesa2640x480x16
|
je near .initvesa2640x480x16
|
||||||
|
cmp byte[cvidmode],17
|
||||||
|
je near .initvesa2800x600x8
|
||||||
|
cmp byte[cvidmode],18
|
||||||
|
je near .initvesa2800x600x16
|
||||||
ret
|
ret
|
||||||
|
|
||||||
%include "dos/vga.inc"
|
%include "dos/vga.inc"
|
||||||
@@ -299,6 +303,66 @@ NEWSYM dosinitvideo
|
|||||||
pop es
|
pop es
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
;*******************************************************
|
||||||
|
; InitVESA2 800x600x8 Set up Linear 800x600x8b
|
||||||
|
;*******************************************************
|
||||||
|
|
||||||
|
.initvesa2800x600x8
|
||||||
|
mov byte[res640],1
|
||||||
|
mov byte[res480],1
|
||||||
|
mov word[vesa2_x],800
|
||||||
|
mov word[vesa2_y],600
|
||||||
|
mov byte[vesa2_bits],8
|
||||||
|
call InitVesa2
|
||||||
|
cmp byte[videotroub],1
|
||||||
|
jne .notrouble11
|
||||||
|
ret
|
||||||
|
.notrouble11
|
||||||
|
call makepal
|
||||||
|
; clear screen (800*600 bytes)
|
||||||
|
push es
|
||||||
|
mov ax,[vesa2selec]
|
||||||
|
mov es,ax
|
||||||
|
mov edi,0
|
||||||
|
mov ecx,800*600
|
||||||
|
.looph2
|
||||||
|
mov byte[es:edi],0
|
||||||
|
inc edi
|
||||||
|
dec ecx
|
||||||
|
jnz .looph2
|
||||||
|
pop es
|
||||||
|
ret
|
||||||
|
|
||||||
|
;*******************************************************
|
||||||
|
; InitVESA2 800x600x16 Set up Linear 800x600x16b
|
||||||
|
;*******************************************************
|
||||||
|
|
||||||
|
.initvesa2800x600x16
|
||||||
|
mov byte[res640],1
|
||||||
|
mov byte[res480],1
|
||||||
|
mov byte[cbitmode],1
|
||||||
|
mov word[vesa2_x],800
|
||||||
|
mov word[vesa2_y],600
|
||||||
|
mov byte[vesa2_bits],16
|
||||||
|
call InitVesa2
|
||||||
|
cmp byte[videotroub],1
|
||||||
|
jne .notrouble12
|
||||||
|
ret
|
||||||
|
.notrouble12
|
||||||
|
; clear screen (800*600*2 bytes)
|
||||||
|
push es
|
||||||
|
mov ax,[vesa2selec]
|
||||||
|
mov es,ax
|
||||||
|
mov edi,0
|
||||||
|
mov ecx,800*600*2
|
||||||
|
.looph3
|
||||||
|
mov byte[es:edi],0
|
||||||
|
inc edi
|
||||||
|
dec ecx
|
||||||
|
jnz .looph3
|
||||||
|
pop es
|
||||||
|
ret
|
||||||
|
|
||||||
;*******************************************************
|
;*******************************************************
|
||||||
; InitVESA2 320x480x8 Set up Linear 320x480x8b
|
; InitVESA2 320x480x8 Set up Linear 320x480x8b
|
||||||
;*******************************************************
|
;*******************************************************
|
||||||
|
|||||||
@@ -261,7 +261,9 @@ int pccmdline(void)
|
|||||||
}
|
}
|
||||||
case 'n':
|
case 'n':
|
||||||
{
|
{
|
||||||
scanlines=1;
|
if(!hasroom) return 4;
|
||||||
|
scanlines=my_atoi(argv[p+1]);
|
||||||
|
p++;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 's':
|
case 's':
|
||||||
|
|||||||
@@ -135,7 +135,7 @@ EXTSYM NumVideoModes
|
|||||||
EXTSYM cfgvolume, MusicVol, DSPMem
|
EXTSYM cfgvolume, MusicVol, DSPMem
|
||||||
EXTSYM NumInputDevices,GUIInputNames
|
EXTSYM NumInputDevices,GUIInputNames
|
||||||
EXTSYM GUIVideoModeNames
|
EXTSYM GUIVideoModeNames
|
||||||
EXTSYM GUISLVID,GUIINVID,GUIEAVID,GUIIEVID,GUIFSVID
|
EXTSYM GUISLVID,GUIINVID,GUIEAVID,GUIIEVID,GUIFSVID,GUIWSVID
|
||||||
EXTSYM GUISSVID,GUITBVID,GUIHSVID,GUI2xVID,GUII2VID,GUIM7VID
|
EXTSYM GUISSVID,GUITBVID,GUIHSVID,GUI2xVID,GUII2VID,GUIM7VID
|
||||||
EXTSYM cfgsoundon,cfgSoundQuality,cfgStereoSound
|
EXTSYM cfgsoundon,cfgSoundQuality,cfgStereoSound
|
||||||
EXTSYM convertnum,converthex
|
EXTSYM convertnum,converthex
|
||||||
|
|||||||
@@ -1714,7 +1714,12 @@ DisplayGUIVideo:
|
|||||||
xor eax,eax
|
xor eax,eax
|
||||||
mov al,[cvidmode]
|
mov al,[cvidmode]
|
||||||
cmp byte[GUIFSVID+eax],0
|
cmp byte[GUIFSVID+eax],0
|
||||||
je .notext5
|
je near .notext5
|
||||||
|
cmp byte[GUIWSVID+eax],0
|
||||||
|
je .notext4a
|
||||||
|
GUIOuttextwin2u 5,26,93,GUIVideoText5b,1
|
||||||
|
jmp .notext5
|
||||||
|
.notext4a
|
||||||
GUIOuttextwin2u 5,26,93,GUIVideoText5,1
|
GUIOuttextwin2u 5,26,93,GUIVideoText5,1
|
||||||
.notext5
|
.notext5
|
||||||
xor eax,eax
|
xor eax,eax
|
||||||
@@ -1810,7 +1815,12 @@ DisplayGUIVideo:
|
|||||||
xor eax,eax
|
xor eax,eax
|
||||||
mov al,[cvidmode]
|
mov al,[cvidmode]
|
||||||
cmp byte[GUIFSVID+eax],0
|
cmp byte[GUIFSVID+eax],0
|
||||||
je .notext5b
|
je near .notext5b
|
||||||
|
cmp byte[GUIWSVID+eax],0
|
||||||
|
je .notext4ba
|
||||||
|
GUIOuttextwin2 5,25,92,GUIVideoText5b
|
||||||
|
jmp .notext5b
|
||||||
|
.notext4ba
|
||||||
GUIOuttextwin2 5,25,92,GUIVideoText5
|
GUIOuttextwin2 5,25,92,GUIVideoText5
|
||||||
.notext5b
|
.notext5b
|
||||||
xor eax,eax
|
xor eax,eax
|
||||||
@@ -2126,6 +2136,7 @@ GUIVideoTextbf db 'BILINEAR FILTER',0
|
|||||||
GUIVideoText3 db 'INTERPOLATION',0 ; -y
|
GUIVideoText3 db 'INTERPOLATION',0 ; -y
|
||||||
GUIVideoText4 db 'EAGLE ENGINE',0 ; -y
|
GUIVideoText4 db 'EAGLE ENGINE',0 ; -y
|
||||||
GUIVideoText5 db 'FULL SCREEN',0 ; -c
|
GUIVideoText5 db 'FULL SCREEN',0 ; -c
|
||||||
|
GUIVideoText5b db 'WIDE SCREEN',0 ; -c
|
||||||
GUIVideoText6 db 'SMALL SCREEN',0 ; -c
|
GUIVideoText6 db 'SMALL SCREEN',0 ; -c
|
||||||
GUIVideoText7 db 'TRIPLE BUFFERING',0 ; -c
|
GUIVideoText7 db 'TRIPLE BUFFERING',0 ; -c
|
||||||
GUIVideoText8b db 'HI-RESOLUTION MODE7',0 ; -c
|
GUIVideoText8b db 'HI-RESOLUTION MODE7',0 ; -c
|
||||||
|
|||||||
@@ -947,6 +947,7 @@ NEWSYM GUII2VID, db 0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0 ; Interpolation(w)
|
|||||||
NEWSYM GUIEAVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; Eagle
|
NEWSYM GUIEAVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; Eagle
|
||||||
NEWSYM GUIIEVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; (Interp | Eagle)
|
NEWSYM GUIIEVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; (Interp | Eagle)
|
||||||
NEWSYM GUIFSVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; Full Screen
|
NEWSYM GUIFSVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; Full Screen
|
||||||
|
NEWSYM GUIWSVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; (Full Scr. | Wide Scr.)
|
||||||
NEWSYM GUISSVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; Small Screen
|
NEWSYM GUISSVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; Small Screen
|
||||||
NEWSYM GUITBVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; Triple Buffering
|
NEWSYM GUITBVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; Triple Buffering
|
||||||
NEWSYM GUIHSVID, db 0,0,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1 ; Half/Quarter Scanlines
|
NEWSYM GUIHSVID, db 0,0,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1 ; Half/Quarter Scanlines
|
||||||
|
|||||||
@@ -1429,35 +1429,35 @@ SECTION .data
|
|||||||
.noparams db 'Usage : ZSNES [-d,-f #, ... ] <filename.SMC>',13,10
|
.noparams db 'Usage : ZSNES [-d,-f #, ... ] <filename.SMC>',13,10
|
||||||
db ' Eg : ZSNES -s -r 2 game.smc',13,10,13,10
|
db ' Eg : ZSNES -s -r 2 game.smc',13,10,13,10
|
||||||
%endif
|
%endif
|
||||||
db ' -0 Disable Color 0 modification in 256 color modes',13,10
|
db ' -0 Disable Color 0 modification in 8-bit modes',13,10
|
||||||
db ' -1 #/-2 # Select Player 1/2 Input :',13,10
|
db ' -1 #/-2 # Select Player 1/2 Input :',13,10
|
||||||
db ' 0 = None 1 = Keyboard 2 = Joystick 3 = Gamepad',13,10
|
db ' 0 = None 1 = Keyboard 2 = Joystick 3 = Gamepad',13,10
|
||||||
db ' 4 = 4Button 5 = 6Button 6 = Sidewinder ',13,10
|
db ' 4 = 4Button 5 = 6Button 6 = Sidewinder ',13,10
|
||||||
db ' -7 Disable SPC700 speedhack',13,10
|
db ' -7 Disable SPC700 speedhack',13,10
|
||||||
db ' -8 Force 8-bit sound',13,10
|
db ' -8 Force 8-bit sound',13,10
|
||||||
db ' -9 Off by 1 line fix',13,10
|
db ' -9 Off by 1 line fix',13,10
|
||||||
db ' -a Turn on auto frame skip',13,10
|
db ' -a Enable automatic frame rate',13,10
|
||||||
%ifdef __LINUX__
|
%ifdef __LINUX__
|
||||||
db ' -cs Scale to fit screen (320x240 VESA2/640x480 VESA2)',13,10
|
db ' -cs Enable full/wide screen (when available)',13,10
|
||||||
%else
|
%else
|
||||||
db ' -c Scale to fit screen (320x240 VESA2/640x480 VESA2)',13,10
|
db ' -c Enable full screen (when available)',13,10
|
||||||
%endif
|
%endif
|
||||||
db ' -cb Remove Background Color in 256 color video modes',13,10
|
db ' -cb Remove Background Color in 256 color video modes',13,10
|
||||||
db ' -cc No image scale and center image in screen (640x480 only)',13,10
|
db ' -cc Enable small screen (when available)',13,10
|
||||||
|
|
||||||
; debugger not available in linux version
|
; debugger not available in linux version
|
||||||
; because of bios interrupt code
|
; because of bios interrupt code
|
||||||
%ifndef __LINUX__
|
%ifndef __LINUX__
|
||||||
db ' -d Start with debugger',13,10
|
db ' -d Start with debugger enabled',13,10
|
||||||
%endif
|
%endif
|
||||||
db ' -dd Disable sound DSP emulation',13,10
|
db ' -dd Disable sound DSP emulation',13,10
|
||||||
%ifndef __LINUX__
|
%ifndef __LINUX__
|
||||||
db ' -e Skip enter key press at the beginning',13,10
|
;db ' -e Skip enter key press at the beginning',13,10
|
||||||
%endif
|
%endif
|
||||||
db ' -f # Turn on frame skip [0..9]',13,10
|
db ' -f # Enable fixed frame rate [0...9]',13,10
|
||||||
db ' -g # Set Gamma Correction [0...15, 0 = 1.0, 15 = 2.0]',13,10
|
|
||||||
%ifndef __LINUX__
|
%ifndef __LINUX__
|
||||||
db ' - Only works properly in 256 color video modes',13,10
|
db ' -g # Specify gamma correction value [0...15]',13,10
|
||||||
|
db ' (Only works properly in 8-bit modes)',13,10
|
||||||
%endif
|
%endif
|
||||||
db ' -h Force HiROM',13,10
|
db ' -h Force HiROM',13,10
|
||||||
db ' -i Uninterleave ROM Image',13,10
|
db ' -i Uninterleave ROM Image',13,10
|
||||||
@@ -1466,13 +1466,18 @@ SECTION .data
|
|||||||
db 'Press any key to continue.',0
|
db 'Press any key to continue.',0
|
||||||
.noparms2 db 13,' -l Force LoROM ',13,10
|
.noparms2 db 13,' -l Force LoROM ',13,10
|
||||||
db ' -m Disable GUI',13,10
|
db ' -m Disable GUI',13,10
|
||||||
db ' -n Turn scanlines on (640x480 only)',13,10
|
%ifdef __LINUX__
|
||||||
|
db ' -n Enable full scanlines (when available)',13,10
|
||||||
|
%else
|
||||||
|
db ' -n # Enable scanlines (when available)',13,10
|
||||||
|
db ' Where # is: 1 = full, 2 = 25%, 3 = 50%',13,10
|
||||||
|
%endif
|
||||||
%ifdef __LINUX__
|
%ifdef __LINUX__
|
||||||
db ' -of Enable FPU copy ',13,10
|
db ' -of Enable FPU copy ',13,10
|
||||||
%else
|
%else
|
||||||
; db ' -o Enable FPU copy ',13,10
|
; db ' -o Enable FPU copy ',13,10
|
||||||
%endif
|
%endif
|
||||||
db ' -om Enable MMX copy',13,10
|
db ' -om Enable MMX support (when available)',13,10
|
||||||
db ' -p # Percentage of instructions to execute [50..120]',13,10
|
db ' -p # Percentage of instructions to execute [50..120]',13,10
|
||||||
db ' -r # Set Sampling Sound Blaster Sampling Rate & Bit :',13,10
|
db ' -r # Set Sampling Sound Blaster Sampling Rate & Bit :',13,10
|
||||||
db ' 0 = 8000Hz 1 = 11025Hz 2 = 22050Hz 3 = 44100Hz',13,10
|
db ' 0 = 8000Hz 1 = 11025Hz 2 = 22050Hz 3 = 44100Hz',13,10
|
||||||
@@ -1496,15 +1501,16 @@ SECTION .data
|
|||||||
db ' 10 = 320x480x16B (VESA2) 11 = 512x384x8B (VESA2)',13,10
|
db ' 10 = 320x480x16B (VESA2) 11 = 512x384x8B (VESA2)',13,10
|
||||||
db ' 12 = 512x384x16B (VESA2) 13 = 640x400x8B (VESA2)',13,10
|
db ' 12 = 512x384x16B (VESA2) 13 = 640x400x8B (VESA2)',13,10
|
||||||
db ' 14 = 640x400x16B (VESA2) 15 = 640x480x8B (VESA2)',13,10
|
db ' 14 = 640x400x16B (VESA2) 15 = 640x480x8B (VESA2)',13,10
|
||||||
db ' 16 = 640x480x16B (VESA2)',13,10
|
db ' 16 = 640x480x16B (VESA2) 17 = 800x600x8B (VESA2)',13,10
|
||||||
|
db ' 18 = 800x600x16B (VESA2)',13,10
|
||||||
%endif
|
%endif
|
||||||
db ' -w Enable VSync (disables Triple Buffering)',13,10
|
db ' -w Enable vsync (disables triple buffering)',13,10
|
||||||
db 'Press any key to continue.',0
|
db 'Press any key to continue.',0
|
||||||
.noparms3 db 13,' -y Enable EAGLE (640x480x8B only) or Interpolation (640x480x16B only)',13,10
|
.noparms3 db 13,' -y Enable EAGLE (640x480x8B only) or Interpolation (640x480x16B only)',13,10
|
||||||
db ' -z Enable Stereo Sound',13,10
|
|
||||||
%ifdef __MSDOS__
|
%ifdef __MSDOS__
|
||||||
db ' -3 Enable Triple Buffering (disables VSync)',13,10
|
db ' -3 Enable triple buffering (disables vsync)',13,10
|
||||||
%endif
|
%endif
|
||||||
|
db ' -z Enable Stereo Sound',13,10
|
||||||
db '',13,10
|
db '',13,10
|
||||||
db ' File Formats Supported by GUI : .SMC,.SFC,.SWC,.FIG,.058,.078,.1,.USA,.JAP',13,10
|
db ' File Formats Supported by GUI : .SMC,.SFC,.SWC,.FIG,.058,.078,.1,.USA,.JAP',13,10
|
||||||
%ifdef __MSDOS__
|
%ifdef __MSDOS__
|
||||||
|
|||||||
@@ -226,11 +226,11 @@ PreTripleBuffer:
|
|||||||
|
|
||||||
SECTION .data
|
SECTION .data
|
||||||
; Please don't break this again. :)
|
; Please don't break this again. :)
|
||||||
VidModeSize dd 0,0,0,0,0,0,0,320*240,320*240*2,320*480,320*480*2
|
VidModeSize dd 0,0,0,0,0,0,0,320*240,320*240*2,320*480,320*480*2,512*384
|
||||||
dd 512*384,512*384*2,640*400,640*400*2,640*480,640*480*2
|
dd 512*384*2,640*400,640*400*2,640*480,640*480*2,800*600,800*600*2
|
||||||
VidModeLine dd 0,0,0,0,0,0,0,240,240,480,480,384,384,400,400,480,480
|
VidModeLine dd 0,0,0,0,0,0,0,240,240,480,480,384,384,400,400,480,480,600,600
|
||||||
NEWSYM VidStartDraw, dd 0
|
NEWSYM VidStartDraw, dd 0
|
||||||
VidModeComp db 0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1
|
VidModeComp db 0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1
|
||||||
CVidStartAd db 0
|
CVidStartAd db 0
|
||||||
ApplyStart db 4
|
ApplyStart db 4
|
||||||
|
|
||||||
@@ -298,6 +298,10 @@ ScreenShow:
|
|||||||
je near copyvesa2640x480x8b
|
je near copyvesa2640x480x8b
|
||||||
cmp byte[cvidmode],16
|
cmp byte[cvidmode],16
|
||||||
je near copyvesa2640x480x16b
|
je near copyvesa2640x480x16b
|
||||||
|
cmp byte[cvidmode],17
|
||||||
|
je near copyvesa2800x600x8b
|
||||||
|
cmp byte[cvidmode],18
|
||||||
|
je near copyvesa2800x600x16b
|
||||||
cmp byte[curblank],40h
|
cmp byte[curblank],40h
|
||||||
je .startcopy
|
je .startcopy
|
||||||
inc byte[curfps2]
|
inc byte[curfps2]
|
||||||
@@ -349,6 +353,10 @@ ScreenShowGUI:
|
|||||||
je near copyvesa2640x480x8bgui
|
je near copyvesa2640x480x8bgui
|
||||||
cmp byte[cvidmode],16
|
cmp byte[cvidmode],16
|
||||||
je near copyvesa2640x480x16bgui
|
je near copyvesa2640x480x16bgui
|
||||||
|
cmp byte[cvidmode],17
|
||||||
|
je near copyvesa2800x600x8b
|
||||||
|
cmp byte[cvidmode],18
|
||||||
|
je near copyvesa2800x600x16b
|
||||||
jmp copymodeq256
|
jmp copymodeq256
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
@@ -987,7 +995,7 @@ NEWSYM copyvesa2320x240x8b
|
|||||||
mov ax,[vesa2selec]
|
mov ax,[vesa2selec]
|
||||||
mov es,ax
|
mov es,ax
|
||||||
mov esi,[vidbuffer]
|
mov esi,[vidbuffer]
|
||||||
mov edi,32
|
mov edi,320+32
|
||||||
cmp word[resolutn],224
|
cmp word[resolutn],224
|
||||||
jne .res239
|
jne .res239
|
||||||
add edi,8*320
|
add edi,8*320
|
||||||
@@ -1067,7 +1075,7 @@ NEWSYM copyvesa2320x480x8b
|
|||||||
mov ax,[vesa2selec]
|
mov ax,[vesa2selec]
|
||||||
mov es,ax
|
mov es,ax
|
||||||
mov esi,[vidbuffer]
|
mov esi,[vidbuffer]
|
||||||
mov edi,32
|
mov edi,320*2+32
|
||||||
cmp word[resolutn],224
|
cmp word[resolutn],224
|
||||||
jne .res239
|
jne .res239
|
||||||
add edi,8*320
|
add edi,8*320
|
||||||
@@ -1270,6 +1278,290 @@ NEWSYM copyvesa2320x480x8b
|
|||||||
; jmp .returnloop
|
; jmp .returnloop
|
||||||
|
|
||||||
|
|
||||||
|
;*******************************************************
|
||||||
|
; Copy VESA2 800x600x8b Copies buffer to 800x600x8bVBE2
|
||||||
|
;*******************************************************
|
||||||
|
|
||||||
|
NEWSYM copyvesa2800x600x8b
|
||||||
|
cmp byte[curblank],40h
|
||||||
|
jne .startcopy
|
||||||
|
ret
|
||||||
|
|
||||||
|
.startcopy
|
||||||
|
push es
|
||||||
|
mov ax,[vesa2selec]
|
||||||
|
mov es,ax
|
||||||
|
mov esi,[vidbuffer]
|
||||||
|
mov edi,60*800+144
|
||||||
|
cmp word[resolutn],224
|
||||||
|
jne .res239
|
||||||
|
add edi,8*800
|
||||||
|
.res239
|
||||||
|
add edi,[VidStartDraw]
|
||||||
|
add esi,16+256+16+16
|
||||||
|
xor eax,eax
|
||||||
|
mov dl,[resolutn]
|
||||||
|
dec dl
|
||||||
|
dec dl
|
||||||
|
cmp byte[ScreenScale],1
|
||||||
|
je near .fullscreen
|
||||||
|
cmp byte[smallscreenon],1
|
||||||
|
je near .smallscreen
|
||||||
|
|
||||||
|
cmp byte[scanlines],1
|
||||||
|
je .loopa2
|
||||||
|
.loopa
|
||||||
|
mov ecx,256/2
|
||||||
|
call .loopa3
|
||||||
|
sub esi,256
|
||||||
|
add edi,144+144
|
||||||
|
mov ecx,256/2
|
||||||
|
call .loopa3
|
||||||
|
add esi,16+16
|
||||||
|
add edi,144+144
|
||||||
|
dec dl
|
||||||
|
jnz .loopa
|
||||||
|
jmp .done
|
||||||
|
.loopa2
|
||||||
|
mov ecx,256/2
|
||||||
|
call .loopa3
|
||||||
|
add esi,16+16
|
||||||
|
add edi,144+800+144
|
||||||
|
dec dl
|
||||||
|
jnz .loopa2
|
||||||
|
jmp .done
|
||||||
|
.loopa3
|
||||||
|
mov al,[esi]
|
||||||
|
mov bl,[esi+1]
|
||||||
|
mov ah,al
|
||||||
|
mov bh,bl
|
||||||
|
mov [es:edi],ax
|
||||||
|
mov [es:edi+2],bx
|
||||||
|
add esi,byte 2
|
||||||
|
add edi,byte 4
|
||||||
|
dec ecx
|
||||||
|
jnz .loopa3
|
||||||
|
ret
|
||||||
|
|
||||||
|
.smallscreen
|
||||||
|
add edi,120*800+128
|
||||||
|
cmp byte[MMXSupport],1
|
||||||
|
je .ssloopb
|
||||||
|
.ssloopa
|
||||||
|
mov ecx,256/4
|
||||||
|
rep movsd
|
||||||
|
add esi,16+16
|
||||||
|
add edi,272+272
|
||||||
|
dec dl
|
||||||
|
jnz .ssloopa
|
||||||
|
jmp .done
|
||||||
|
.ssloopb
|
||||||
|
mov ecx,256/16
|
||||||
|
MMXStuff
|
||||||
|
add esi,16+16
|
||||||
|
add edi,272+272
|
||||||
|
dec dl
|
||||||
|
jnz .ssloopb
|
||||||
|
jmp .done
|
||||||
|
|
||||||
|
.fullscreen
|
||||||
|
sub edi,128
|
||||||
|
cmp byte[scanlines],1
|
||||||
|
je .fsloopa2
|
||||||
|
.fsloopa
|
||||||
|
mov ecx,256/4
|
||||||
|
call .fsloopb
|
||||||
|
sub esi,256
|
||||||
|
add edi,16+16
|
||||||
|
mov ecx,256/4
|
||||||
|
call .fsloopb
|
||||||
|
add esi,16+16
|
||||||
|
add edi,16+16
|
||||||
|
dec dl
|
||||||
|
jnz .fsloopa
|
||||||
|
jmp .done
|
||||||
|
.fsloopa2
|
||||||
|
mov ecx,256/4
|
||||||
|
call .fsloopb
|
||||||
|
add esi,16+16
|
||||||
|
add edi,16+800+16
|
||||||
|
dec dl
|
||||||
|
jnz .fsloopa2
|
||||||
|
jmp .done
|
||||||
|
.fsloopb
|
||||||
|
push ecx
|
||||||
|
push edx
|
||||||
|
mov al,[esi]
|
||||||
|
mov bl,[esi+1]
|
||||||
|
mov cl,[esi+2]
|
||||||
|
mov dl,[esi+3]
|
||||||
|
mov ah,al
|
||||||
|
mov bh,bl
|
||||||
|
mov ch,cl
|
||||||
|
mov dh,dl
|
||||||
|
mov [es:edi],ax
|
||||||
|
mov [es:edi+2],ax
|
||||||
|
mov [es:edi+4],bx
|
||||||
|
mov [es:edi+6],cx
|
||||||
|
mov [es:edi+8],cx
|
||||||
|
mov [es:edi+10],dx
|
||||||
|
pop edx
|
||||||
|
pop ecx
|
||||||
|
add esi,byte 4
|
||||||
|
add edi,byte 8+4
|
||||||
|
dec ecx
|
||||||
|
jnz .fsloopb
|
||||||
|
ret
|
||||||
|
|
||||||
|
.done
|
||||||
|
pop es
|
||||||
|
ret
|
||||||
|
|
||||||
|
|
||||||
|
;*********************************************************
|
||||||
|
; Copy VESA2 800x600x16b Copies buffer to 800x600x16bVBE2
|
||||||
|
;*********************************************************
|
||||||
|
|
||||||
|
NEWSYM copyvesa2800x600x16b
|
||||||
|
cmp byte[curblank],40h
|
||||||
|
jne .startcopy
|
||||||
|
ret
|
||||||
|
|
||||||
|
.startcopy
|
||||||
|
push es
|
||||||
|
mov ax,[vesa2selec]
|
||||||
|
mov es,ax
|
||||||
|
mov esi,[vidbuffer]
|
||||||
|
mov edi,60*800*2+144*2
|
||||||
|
cmp word[resolutn],224
|
||||||
|
jne .res239
|
||||||
|
add edi,8*800*2
|
||||||
|
.res239
|
||||||
|
add edi,[VidStartDraw]
|
||||||
|
add esi,16*2+256*2+16*2+16*2
|
||||||
|
xor eax,eax
|
||||||
|
mov dl,[resolutn]
|
||||||
|
dec dl
|
||||||
|
dec dl
|
||||||
|
cmp byte[ScreenScale],1
|
||||||
|
je near .fullscreen
|
||||||
|
cmp byte[smallscreenon],1
|
||||||
|
je near .smallscreen
|
||||||
|
|
||||||
|
cmp byte[scanlines],1
|
||||||
|
je .loopa2
|
||||||
|
.loopa
|
||||||
|
mov ecx,256/2
|
||||||
|
call .loopa3
|
||||||
|
sub esi,256*2
|
||||||
|
add edi,144*2+144*2
|
||||||
|
mov ecx,256/2
|
||||||
|
call .loopa3
|
||||||
|
add esi,16*2+16*2
|
||||||
|
add edi,144*2+144*2
|
||||||
|
dec dl
|
||||||
|
jnz .loopa
|
||||||
|
jmp .done
|
||||||
|
.loopa2
|
||||||
|
mov ecx,256/2
|
||||||
|
call .loopa3
|
||||||
|
add esi,16*2+16*2
|
||||||
|
add edi,144*2+800*2+144*2
|
||||||
|
dec dl
|
||||||
|
jnz .loopa2
|
||||||
|
jmp .done
|
||||||
|
.loopa3
|
||||||
|
mov ax,[esi]
|
||||||
|
mov bx,[esi+2]
|
||||||
|
mov [es:edi],ax
|
||||||
|
mov [es:edi+2],ax
|
||||||
|
mov [es:edi+4],bx
|
||||||
|
mov [es:edi+6],bx
|
||||||
|
add esi,byte 4
|
||||||
|
add edi,byte 8
|
||||||
|
dec ecx
|
||||||
|
jnz .loopa3
|
||||||
|
ret
|
||||||
|
|
||||||
|
.smallscreen
|
||||||
|
add edi,120*800*2+128*2
|
||||||
|
cmp byte[MMXSupport],1
|
||||||
|
je .ssloopb
|
||||||
|
.ssloopa
|
||||||
|
mov ecx,256/4*2
|
||||||
|
rep movsd
|
||||||
|
add esi,16*2+16*2
|
||||||
|
add edi,272*2+272*2
|
||||||
|
dec dl
|
||||||
|
jnz .ssloopa
|
||||||
|
jmp .done
|
||||||
|
.ssloopb
|
||||||
|
mov ecx,256/16*2
|
||||||
|
MMXStuff
|
||||||
|
add esi,16*2+16*2
|
||||||
|
add edi,272*2+272*2
|
||||||
|
dec dl
|
||||||
|
jnz .ssloopb
|
||||||
|
jmp .done
|
||||||
|
|
||||||
|
.fullscreen
|
||||||
|
sub edi,128*2
|
||||||
|
cmp byte[scanlines],1
|
||||||
|
je .fsloopa2
|
||||||
|
.fsloopa
|
||||||
|
mov ecx,256/4
|
||||||
|
call .fsloopb
|
||||||
|
sub esi,256*2
|
||||||
|
add edi,16*2+16*2
|
||||||
|
mov ecx,256/4
|
||||||
|
call .fsloopb
|
||||||
|
add esi,16*2+16*2
|
||||||
|
add edi,16*2+16*2
|
||||||
|
dec dl
|
||||||
|
jnz .fsloopa
|
||||||
|
jmp .done
|
||||||
|
.fsloopa2
|
||||||
|
mov ecx,256/4
|
||||||
|
call .fsloopb
|
||||||
|
add esi,16*2+16*2
|
||||||
|
add edi,16*2+800*2+16*2
|
||||||
|
dec dl
|
||||||
|
jnz .fsloopa2
|
||||||
|
jmp .done
|
||||||
|
.fsloopb
|
||||||
|
push ecx
|
||||||
|
push edx
|
||||||
|
mov ax,[esi]
|
||||||
|
mov bx,[esi+2]
|
||||||
|
mov cx,[esi+4]
|
||||||
|
mov dx,[esi+6]
|
||||||
|
shr eax,8
|
||||||
|
shr ebx,8
|
||||||
|
shr ecx,8
|
||||||
|
shr edx,8
|
||||||
|
mov ax,[esi]
|
||||||
|
mov bx,[esi+2]
|
||||||
|
mov cx,[esi+4]
|
||||||
|
mov dx,[esi+6]
|
||||||
|
mov [es:edi],eax
|
||||||
|
mov [es:edi+4],eax
|
||||||
|
mov [es:edi+8],ebx
|
||||||
|
mov [es:edi+12],ecx
|
||||||
|
mov [es:edi+16],ecx
|
||||||
|
mov [es:edi+20],edx
|
||||||
|
pop edx
|
||||||
|
pop ecx
|
||||||
|
add esi,byte 8
|
||||||
|
add edi,byte 16+8
|
||||||
|
dec ecx
|
||||||
|
jnz .fsloopb
|
||||||
|
ret
|
||||||
|
|
||||||
|
.done
|
||||||
|
pop es
|
||||||
|
ret
|
||||||
|
|
||||||
|
|
||||||
;*******************************************************
|
;*******************************************************
|
||||||
; Copy VESA2 640x400x8b Copies buffer to 640x400x8bVBE2
|
; Copy VESA2 640x400x8b Copies buffer to 640x400x8bVBE2
|
||||||
;*******************************************************
|
;*******************************************************
|
||||||
@@ -1284,7 +1576,7 @@ NEWSYM copyvesa2640x400x8b
|
|||||||
mov ax,[vesa2selec]
|
mov ax,[vesa2selec]
|
||||||
mov es,ax
|
mov es,ax
|
||||||
mov esi,[vidbuffer]
|
mov esi,[vidbuffer]
|
||||||
mov edi,20*640+64
|
mov edi,640+20*640+64
|
||||||
cmp word[resolutn],224
|
cmp word[resolutn],224
|
||||||
jne .res239
|
jne .res239
|
||||||
add edi,12*640
|
add edi,12*640
|
||||||
@@ -1401,7 +1693,7 @@ NEWSYM copyvesa2640x400x16b
|
|||||||
mov ax,[vesa2selec]
|
mov ax,[vesa2selec]
|
||||||
mov es,ax
|
mov es,ax
|
||||||
mov esi,[vidbuffer]
|
mov esi,[vidbuffer]
|
||||||
mov edi,20*640*2+64*2
|
mov edi,640*2+20*640*2+64*2
|
||||||
cmp word[resolutn],224
|
cmp word[resolutn],224
|
||||||
jne .res239
|
jne .res239
|
||||||
add edi,12*640*2
|
add edi,12*640*2
|
||||||
@@ -2662,7 +2954,7 @@ NEWSYM copyvesa2320x240x16b
|
|||||||
mov ax,[vesa2selec]
|
mov ax,[vesa2selec]
|
||||||
mov es,ax
|
mov es,ax
|
||||||
mov esi,[vidbuffer]
|
mov esi,[vidbuffer]
|
||||||
mov edi,32*2
|
mov edi,320*2+32*2
|
||||||
cmp word[resolutn],224
|
cmp word[resolutn],224
|
||||||
jne .res239
|
jne .res239
|
||||||
add edi,8*320*2
|
add edi,8*320*2
|
||||||
@@ -3053,7 +3345,7 @@ NEWSYM copyvesa2320x480x16b
|
|||||||
mov ax,[vesa2selec]
|
mov ax,[vesa2selec]
|
||||||
mov es,ax
|
mov es,ax
|
||||||
mov esi,[vidbuffer]
|
mov esi,[vidbuffer]
|
||||||
mov edi,32*2
|
mov edi,320*2*2+32*2
|
||||||
cmp word[resolutn],224
|
cmp word[resolutn],224
|
||||||
jne .res239
|
jne .res239
|
||||||
add edi,8*320*2
|
add edi,8*320*2
|
||||||
@@ -6355,6 +6647,10 @@ NEWSYM DOSClearScreen
|
|||||||
je near cscopyvesa2640x480x8b
|
je near cscopyvesa2640x480x8b
|
||||||
cmp byte[cvidmode],16
|
cmp byte[cvidmode],16
|
||||||
je near cscopyvesa2640x480x16b
|
je near cscopyvesa2640x480x16b
|
||||||
|
cmp byte[cvidmode],17
|
||||||
|
je near cscopyvesa2800x600x8b
|
||||||
|
cmp byte[cvidmode],18
|
||||||
|
je near cscopyvesa2800x600x16b
|
||||||
%endif
|
%endif
|
||||||
ret
|
ret
|
||||||
|
|
||||||
@@ -6456,6 +6752,36 @@ NEWSYM cscopyvesa2640x480x16b
|
|||||||
pop es
|
pop es
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
NEWSYM cscopyvesa2800x600x8b
|
||||||
|
push es
|
||||||
|
mov ax,[vesa2selec]
|
||||||
|
mov es,ax
|
||||||
|
mov edi,[VidStartDraw]
|
||||||
|
mov ecx,800*600
|
||||||
|
TripleBufferClear
|
||||||
|
.loopb
|
||||||
|
mov byte[es:edi],0
|
||||||
|
inc edi
|
||||||
|
dec ecx
|
||||||
|
jnz .loopb
|
||||||
|
pop es
|
||||||
|
ret
|
||||||
|
|
||||||
|
NEWSYM cscopyvesa2800x600x16b
|
||||||
|
push es
|
||||||
|
mov ax,[vesa2selec]
|
||||||
|
mov es,ax
|
||||||
|
mov edi,[VidStartDraw]
|
||||||
|
mov ecx,800*600*2
|
||||||
|
TripleBufferClear
|
||||||
|
.loopb
|
||||||
|
mov byte[es:edi],0
|
||||||
|
inc edi
|
||||||
|
dec ecx
|
||||||
|
jnz .loopb
|
||||||
|
pop es
|
||||||
|
ret
|
||||||
|
|
||||||
NEWSYM cscopyvesa2640x400x8b
|
NEWSYM cscopyvesa2640x400x8b
|
||||||
push es
|
push es
|
||||||
mov ax,[vesa2selec]
|
mov ax,[vesa2selec]
|
||||||
|
|||||||
@@ -1246,6 +1246,7 @@ NEWSYM GUII2VID, db 0,0,0,1,0,1,1,1,0,0,1,0,1,0,1,1,0,1,0,1,1,0,1,0,1,0,1,1,0,1,
|
|||||||
NEWSYM GUIEAVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; Eagle
|
NEWSYM GUIEAVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; Eagle
|
||||||
NEWSYM GUIIEVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; (Interp | Eagle)
|
NEWSYM GUIIEVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; (Interp | Eagle)
|
||||||
NEWSYM GUIFSVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; Full Screen
|
NEWSYM GUIFSVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; Full Screen
|
||||||
|
NEWSYM GUIWSVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; (Full Scr. | Wide Scr.)
|
||||||
NEWSYM GUISSVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; Small Screen
|
NEWSYM GUISSVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; Small Screen
|
||||||
NEWSYM GUITBVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; Triple Buffering
|
NEWSYM GUITBVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; Triple Buffering
|
||||||
NEWSYM GUIHSVID, db 0,0,0,1,0,1,1,1,0,0,1,0,1,0,1,1,0,1,0,1,1,0,1,0,1,0,1,1,0,1,0,1,1 ; Half/Quarter Scanlines
|
NEWSYM GUIHSVID, db 0,0,0,1,0,1,1,1,0,0,1,0,1,0,1,1,0,1,0,1,1,0,1,0,1,0,1,1,0,1,0,1,1 ; Half/Quarter Scanlines
|
||||||
|
|||||||
Reference in New Issue
Block a user