NTSC filter option tab filled, made tab feature more flexible, fixed FPS display for values >99 and made it aware of slowmo. Some cleanup.
This commit is contained in:
@@ -353,3 +353,10 @@ NEWSYM MovieAudio, db 1
|
|||||||
NEWSYM MovieVideoAudio, db 0
|
NEWSYM MovieVideoAudio, db 0
|
||||||
NEWSYM MovieAudioCompress, db 0
|
NEWSYM MovieAudioCompress, db 0
|
||||||
NEWSYM NTSCFilter, db 0
|
NEWSYM NTSCFilter, db 0
|
||||||
|
NEWSYM NTSCBlend, db 0
|
||||||
|
NEWSYM NTSCHue, db 0
|
||||||
|
NEWSYM NTSCSat, db 0
|
||||||
|
NEWSYM NTSCCont, db 0
|
||||||
|
NEWSYM NTSCBright, db 0
|
||||||
|
NEWSYM NTSCSharp, db 0
|
||||||
|
NEWSYM NTSCWarp, db 0
|
||||||
|
|||||||
@@ -105,6 +105,7 @@ EXTSYM MovieRecord,MovieInsertChapter,MovieSeekAhead,MovieSeekBehind
|
|||||||
EXTSYM ResetDuringMovie,MovieDumpRaw,AutoLoadCht
|
EXTSYM ResetDuringMovie,MovieDumpRaw,AutoLoadCht
|
||||||
|
|
||||||
EXTSYM GUIwinposx,GUIwinposy,maxskip,GUIEffect,hqFilter,En2xSaI,NTSCFilter
|
EXTSYM GUIwinposx,GUIwinposy,maxskip,GUIEffect,hqFilter,En2xSaI,NTSCFilter
|
||||||
|
EXTSYM NTSCBlend,NTSCHue,NTSCSat,NTSCCont,NTSCBright,NTSCSharp,NTSCWarp
|
||||||
EXTSYM LowPassFilterType,MovieStartMethod,MovieDisplayFrame,resetposn
|
EXTSYM LowPassFilterType,MovieStartMethod,MovieDisplayFrame,resetposn
|
||||||
EXTSYM SnapPath,SPCPath,BSXPath,SGPath,STPath,GNextPath,FEOEZPath,SJNSPath
|
EXTSYM SnapPath,SPCPath,BSXPath,SGPath,STPath,GNextPath,FEOEZPath,SJNSPath
|
||||||
EXTSYM MDHPath,SPL4Path,CheatSrcByteSize,prevloadfnamel
|
EXTSYM MDHPath,SPL4Path,CheatSrcByteSize,prevloadfnamel
|
||||||
@@ -2910,7 +2911,7 @@ GUISetPal:
|
|||||||
inc dx
|
inc dx
|
||||||
.loopf
|
.loopf
|
||||||
add bh,2
|
add bh,2
|
||||||
add ah,1
|
inc ah
|
||||||
mov al,63
|
mov al,63
|
||||||
out dx,al
|
out dx,al
|
||||||
mov al,bh
|
mov al,bh
|
||||||
@@ -3324,7 +3325,7 @@ GUISetPal16:
|
|||||||
mov esi,128
|
mov esi,128
|
||||||
.loopf
|
.loopf
|
||||||
add bh,2
|
add bh,2
|
||||||
add ah,1
|
inc ah
|
||||||
mov edx,1Fh << 6
|
mov edx,1Fh << 6
|
||||||
or dl,bh
|
or dl,bh
|
||||||
shl edx,5
|
shl edx,5
|
||||||
@@ -3742,14 +3743,6 @@ GUIconvpal:
|
|||||||
|
|
||||||
SECTION .data
|
SECTION .data
|
||||||
GUIMousePtr:
|
GUIMousePtr:
|
||||||
db 50+88,47+88,45+88,43+88,40+88,0 ,0 ,0
|
|
||||||
db 53+88,52+88,46+88,42+88,0 ,0 ,0 ,0
|
|
||||||
db 55+88,54+88,54+88,44+88,0 ,0 ,0 ,0
|
|
||||||
db 57+88,57+88,56+88,52+88,45+88,0 ,0 ,0
|
|
||||||
db 59+88,0 ,0 ,55+88,50+88,45+88,0 ,0
|
|
||||||
db 0 ,0 ,0 ,0 ,55+88,50+88,45+88,0
|
|
||||||
db 0 ,0 ,0 ,0 ,0 ,55+88,50+88,47+88
|
|
||||||
db 0 ,0 ,0 ,0 ,0 ,0 ,52+88,0
|
|
||||||
db 50,47,45,43,40,0 ,0 ,0
|
db 50,47,45,43,40,0 ,0 ,0
|
||||||
db 53,52,46,42,0 ,0 ,0 ,0
|
db 53,52,46,42,0 ,0 ,0 ,0
|
||||||
db 55,54,54,44,0 ,0 ,0 ,0
|
db 55,54,54,44,0 ,0 ,0 ,0
|
||||||
@@ -3760,707 +3753,148 @@ GUIMousePtr:
|
|||||||
db 0 ,0 ,0 ,0 ,0 ,0 ,52,0
|
db 0 ,0 ,0 ,0 ,0 ,0 ,52,0
|
||||||
|
|
||||||
NEWSYM GUIFontData
|
NEWSYM GUIFontData
|
||||||
db 0,0,0,0,0; empty space
|
; bitmap 5x5 font; char - offset for ASCII2Font
|
||||||
db 01110000b
|
db 0,0,0,0,0; empty space 0x0
|
||||||
db 10011000b
|
db 01110000b,10011000b,10101000b,11001000b,01110000b; 0 0x01
|
||||||
db 10101000b
|
db 00100000b,01100000b,00100000b,00100000b,01110000b; 1 0x02
|
||||||
db 11001000b
|
db 01110000b,10001000b,00110000b,01000000b,11111000b; 2 0x03
|
||||||
db 01110000b; 0
|
db 01110000b,10001000b,00110000b,10001000b,01110000b; 3 0x04
|
||||||
db 00100000b
|
db 01010000b,10010000b,11111000b,00010000b,00010000b; 4 0x05
|
||||||
db 01100000b
|
db 11111000b,10000000b,11110000b,00001000b,11110000b; 5 0x06
|
||||||
db 00100000b
|
db 01110000b,10000000b,11110000b,10001000b,01110000b; 6 0x07
|
||||||
db 00100000b
|
db 11111000b,00001000b,00010000b,00010000b,00010000b; 7 0x08
|
||||||
db 01110000b; 1
|
db 01110000b,10001000b,01110000b,10001000b,01110000b; 8 0x09
|
||||||
db 01110000b
|
db 01110000b,10001000b,01111000b,00001000b,01110000b; 9 0x0A
|
||||||
db 10001000b
|
db 01110000b,10001000b,11111000b,10001000b,10001000b; A 0x0B
|
||||||
db 00110000b
|
db 11110000b,10001000b,11110000b,10001000b,11110000b; B 0x0C
|
||||||
db 01000000b
|
db 01110000b,10001000b,10000000b,10001000b,01110000b; C 0x0D
|
||||||
db 11111000b; 2
|
db 11110000b,10001000b,10001000b,10001000b,11110000b; D 0x0E
|
||||||
db 01110000b
|
db 11111000b,10000000b,11110000b,10000000b,11111000b; E 0x0F
|
||||||
db 10001000b
|
db 11111000b,10000000b,11110000b,10000000b,10000000b; F 0x10
|
||||||
db 00110000b
|
db 01111000b,10000000b,10011000b,10001000b,01110000b; G 0x11
|
||||||
db 10001000b
|
db 10001000b,10001000b,11111000b,10001000b,10001000b; H 0x12
|
||||||
db 01110000b; 3
|
db 11111000b,00100000b,00100000b,00100000b,11111000b; I 0x13
|
||||||
db 01010000b
|
db 01111000b,00010000b,00010000b,10010000b,01100000b; J 0x14
|
||||||
db 10010000b
|
db 10010000b,10100000b,11100000b,10010000b,10001000b; K 0x15
|
||||||
db 11111000b
|
db 10000000b,10000000b,10000000b,10000000b,11111000b; L 0x16
|
||||||
db 00010000b
|
db 11011000b,10101000b,10101000b,10101000b,10001000b; M 0x17
|
||||||
db 00010000b; 4
|
db 11001000b,10101000b,10101000b,10101000b,10011000b; N 0x18
|
||||||
db 11111000b
|
db 01110000b,10001000b,10001000b,10001000b,01110000b; O 0x19
|
||||||
db 10000000b
|
db 11110000b,10001000b,11110000b,10000000b,10000000b; P 0x1A
|
||||||
db 11110000b
|
db 01110000b,10001000b,10101000b,10010000b,01101000b; Q 0x1B
|
||||||
db 00001000b
|
db 11110000b,10001000b,11110000b,10010000b,10001000b; R 0x1C
|
||||||
db 11110000b; 5
|
db 01111000b,10000000b,01110000b,00001000b,11110000b; S 0x1D
|
||||||
db 01110000b
|
db 11111000b,00100000b,00100000b,00100000b,00100000b; T 0x1E
|
||||||
db 10000000b
|
db 10001000b,10001000b,10001000b,10001000b,01110000b; U 0x1F
|
||||||
db 11110000b
|
db 10001000b,10001000b,01010000b,01010000b,00100000b; V 0x20
|
||||||
db 10001000b
|
db 10001000b,10101000b,10101000b,10101000b,01010000b; W 0x21
|
||||||
db 01110000b; 6
|
db 10001000b,01010000b,00100000b,01010000b,10001000b; X 0x22
|
||||||
db 11111000b
|
db 10001000b,01010000b,00100000b,00100000b,00100000b; Y 0x23
|
||||||
db 00001000b
|
db 11111000b,00010000b,00100000b,01000000b,11111000b; Z 0x24
|
||||||
db 00010000b
|
db 00000000b,00000000b,11111000b,00000000b,00000000b; - 0x25
|
||||||
db 00010000b
|
db 00000000b,00000000b,00000000b,00000000b,11111000b; _ 0x26
|
||||||
db 00010000b; 7
|
db 01101000b,10010000b,00000000b,00000000b,00000000b; ~ 0x27
|
||||||
db 01110000b
|
db 00000000b,00000000b,00000000b,00000000b,00100000b; . 0x28
|
||||||
db 10001000b
|
db 00001000b,00010000b,00100000b,01000000b,10000000b; / 0x29
|
||||||
db 01110000b
|
db 00010000b,00100000b,01000000b,00100000b,00010000b; < 0x2A
|
||||||
db 10001000b
|
db 01000000b,00100000b,00010000b,00100000b,01000000b; > 0x2B
|
||||||
db 01110000b; 8
|
db 01110000b,01000000b,01000000b,01000000b,01110000b; [ 0x2C
|
||||||
db 01110000b
|
db 01110000b,00010000b,00010000b,00010000b,01110000b; ] 0x2D
|
||||||
db 10001000b
|
db 00000000b,00100000b,00000000b,00100000b,00000000b; : 0x2E
|
||||||
db 01111000b
|
db 01100000b,10011000b,01110000b,10011000b,01101000b; & 0x2F
|
||||||
db 00001000b
|
db 00100000b,00100000b,10101000b,01110000b,00100000b; arrow down 0x30
|
||||||
db 01110000b; 9
|
db 01010000b,11111000b,01010000b,11111000b,01010000b; # 0x31
|
||||||
db 01110000b
|
db 00000000b,11111000b,00000000b,11111000b,00000000b; = 0x32
|
||||||
db 10001000b
|
db 01001000b,10010000b,00000000b,00000000b,00000000b; " 0x33
|
||||||
db 11111000b
|
db 10000000b,01000000b,00100000b,00010000b,00001000b; \ 0x34
|
||||||
db 10001000b
|
db 10101000b,01110000b,11111000b,01110000b,10101000b; * 0x35
|
||||||
db 10001000b; A
|
db 01110000b,10001000b,00110000b,00000000b,00100000b; ? 0x36
|
||||||
db 11110000b
|
db 10001000b,00010000b,00100000b,01000000b,10001000b; % 0x37
|
||||||
db 10001000b
|
db 00100000b,00100000b,11111000b,00100000b,00100000b; + 0x38
|
||||||
db 11110000b
|
db 00000000b,00000000b,00000000b,00100000b,01000000b; , 0x39
|
||||||
db 10001000b
|
db 00110000b,01000000b,01000000b,01000000b,00110000b; ( 0x3A
|
||||||
db 11110000b; B
|
db 01100000b,00010000b,00010000b,00010000b,01100000b; ) 0x3B
|
||||||
db 01110000b
|
db 01110000b,10011000b,10111000b,10000000b,01110000b; @ 0x3C
|
||||||
db 10001000b
|
db 00100000b,01000000b,00000000b,00000000b,00000000b; ' 0x3D
|
||||||
db 10000000b
|
db 00100000b,00100000b,00100000b,00000000b,00100000b; ! 0x3E
|
||||||
db 10001000b
|
db 01111000b,10100000b,01110000b,00101000b,11110000b; $ 0x3F
|
||||||
db 01110000b; C
|
db 00000000b,00100000b,00000000b,00100000b,01000000b; ; 0x40
|
||||||
db 11110000b
|
db 01000000b,00100000b,00000000b,00000000b,00000000b; ` 0x41
|
||||||
db 10001000b
|
db 00100000b,01010000b,00000000b,00000000b,00000000b; ^ 0x42
|
||||||
db 10001000b
|
db 00110000b,01000000b,11000000b,01000000b,00110000b; { 0x43
|
||||||
db 10001000b
|
db 01100000b,00010000b,00011000b,00010000b,01100000b; } 0x44
|
||||||
db 11110000b; D
|
db 00100000b,00100000b,01110000b,01110000b,11111000b; up 0x45
|
||||||
db 11111000b
|
db 11111000b,01110000b,01110000b,00100000b,00100000b; down 0x46
|
||||||
db 10000000b
|
db 00001000b,00111000b,11111000b,00111000b,00001000b; left 0x47
|
||||||
db 11110000b
|
db 10000000b,11100000b,11111000b,11100000b,10000000b; right 0x48
|
||||||
db 10000000b
|
db 00100000b,01100000b,11111000b,01100000b,00100000b; arrow left 0x49
|
||||||
db 11111000b; E
|
db 00111000b,00100000b,00110000b,00001000b,10110000b; .5 0x4A
|
||||||
db 11111000b
|
db 11111100b,10000100b,11111100b,00000000b,00000000b; maximize (Win) 0x4B
|
||||||
db 10000000b
|
db 00000000b,11111100b,00000000b,00000000b,00000000b; minimize (Win) 0x4C
|
||||||
db 11110000b
|
db 11111000b,10001000b,10001000b,10001000b,11111000b; maximize (SDL) 0x4D
|
||||||
db 10000000b
|
db 00000000b,00000000b,00100000b,01010000b,00100000b; shw fullstop 0x4E
|
||||||
db 10000000b; F
|
db 01110000b,01000000b,01000000b,01000000b,00000000b; shw left bracket 0x4F
|
||||||
db 01111000b
|
db 00000000b,00010000b,00010000b,00010000b,01110000b; shw right bracket 0x50
|
||||||
db 10000000b
|
db 00000000b,00000000b,00000000b,01000000b,00100000b; shw comma 0x51
|
||||||
db 10011000b
|
db 00000000b,00100000b,01110000b,00100000b,00000000b; shw mid-dot 0x52
|
||||||
db 10001000b
|
db 11111000b,00001000b,11110000b,00100000b,11000000b; shw wo 0x53
|
||||||
db 01110000b; G
|
db 00000000b,11111000b,01010000b,01100000b,01000000b; shw mini a 0x54
|
||||||
db 10001000b
|
db 00000000b,00010000b,00100000b,11100000b,00100000b; shw mini i 0x55
|
||||||
db 10001000b
|
db 00000000b,00100000b,11111000b,10001000b,00110000b; shw mini u 0x56
|
||||||
db 11111000b
|
db 00000000b,00000000b,11111000b,00100000b,11111000b; shw mini e 0x57
|
||||||
db 10001000b
|
db 00000000b,00010000b,11111000b,00110000b,11010000b; shw mini o 0x58
|
||||||
db 10001000b; H
|
db 00000000b,01000000b,11111000b,01010000b,01000000b; shw mini ya 0x59
|
||||||
db 11111000b
|
db 00000000b,00000000b,11110000b,00010000b,11111000b; shw mini yu 0x5A
|
||||||
db 00100000b
|
db 00000000b,11111000b,00001000b,01111000b,11111000b; shw mini yo 0x5B
|
||||||
db 00100000b
|
db 00000000b,10101000b,10101000b,00010000b,01100000b; shw mini tsu 0x5C
|
||||||
db 00100000b
|
db 00000000b,10000000b,01111000b,00000000b,00000000b; shw prolong 0x5D
|
||||||
db 11111000b; I
|
db 11111000b,00101000b,00110000b,00100000b,11000000b; shw a 0x5E
|
||||||
db 01111000b
|
db 00001000b,00110000b,11100000b,00100000b,00100000b; shw i 0x5F
|
||||||
db 00010000b
|
db 00100000b,11111000b,10001000b,00010000b,01100000b; shw u 0x60
|
||||||
db 00010000b
|
db 11111000b,00100000b,00100000b,00100000b,11111000b; shw e 0x61
|
||||||
db 10010000b
|
db 00010000b,11111000b,00110000b,01010000b,10010000b; shw o 0x62
|
||||||
db 01100000b; J
|
db 01000000b,11111000b,01001000b,01001000b,10011000b; shw ka 0x63
|
||||||
db 10010000b
|
db 00100000b,11111000b,00100000b,11111000b,00100000b; shw ki 0x64
|
||||||
db 10100000b
|
db 01000000b,01111000b,10001000b,00010000b,01100000b; shw ku 0x65
|
||||||
db 11100000b
|
db 01000000b,01111000b,10010000b,00010000b,01100000b; shw ke 0x66 ^^
|
||||||
db 10010000b
|
db 11111000b,00001000b,00001000b,00001000b,11111000b; shw ko 0x67
|
||||||
db 10001000b; K
|
db 01010000b,11111000b,01010000b,00010000b,01100000b; shw sa 0x68
|
||||||
db 10000000b
|
db 01000000b,10101000b,01001000b,00010000b,11100000b; shw shi 0x69
|
||||||
db 10000000b
|
db 11111000b,00001000b,00010000b,00110000b,11001000b; shw su 0x6A
|
||||||
db 10000000b
|
db 01000000b,11111000b,01010000b,01000000b,00111000b; shw se 0x6B
|
||||||
db 10000000b
|
db 10001000b,01001000b,00001000b,00010000b,01100000b; shw so 0x6C
|
||||||
db 11111000b; L
|
db 01000000b,01111000b,11001000b,00110000b,01100000b; shw ta 0x6D
|
||||||
db 11011000b
|
db 11111000b,00100000b,11111000b,00100000b,01000000b; shw chi 0x6E
|
||||||
db 10101000b
|
db 10101000b,10101000b,00001000b,00010000b,01100000b; shw tsu 0x6F
|
||||||
db 10101000b
|
db 11111000b,00000000b,11111000b,00100000b,11000000b; shw te 0x70
|
||||||
db 10101000b
|
db 01000000b,01000000b,01100000b,01010000b,01000000b; shw to 0x71
|
||||||
db 10001000b; M
|
db 00100000b,11111000b,00100000b,00100000b,01000000b; shw na 0x72
|
||||||
db 11001000b
|
db 11110000b,00000000b,00000000b,00000000b,11111000b; shw ni 0x73
|
||||||
db 10101000b
|
db 11111000b,00001000b,00101000b,00010000b,01101000b; shw nu 0x74
|
||||||
db 10101000b
|
db 00100000b,11111000b,00001000b,01110000b,10101000b; shw ne 0x75
|
||||||
db 10101000b
|
db 00001000b,00001000b,00001000b,00010000b,01100000b; shw no 0x76
|
||||||
db 10011000b; N
|
db 01010000b,01010000b,01010000b,10001000b,10001000b; shw ha 0x77
|
||||||
db 01110000b
|
db 10000000b,10011000b,11100000b,10000000b,01111000b; shw hi 0x78
|
||||||
db 10001000b
|
db 11111000b,00001000b,00001000b,00010000b,01100000b; shw hu 0x79
|
||||||
db 10001000b
|
db 01000000b,10100000b,10010000b,00001000b,00000000b; shw he 0x7A
|
||||||
db 10001000b
|
db 00100000b,11111000b,01110000b,10101000b,00100000b; shw ho 0x7B
|
||||||
db 01110000b; O
|
db 11111000b,00001000b,10010000b,01100000b,00100000b; shw ma 0x7C
|
||||||
db 11110000b
|
db 11111000b,00000000b,11111000b,00000000b,11111000b; shw mi 0x7D
|
||||||
db 10001000b
|
db 00100000b,01000000b,01000000b,10010000b,11111000b; shw mu 0x7E
|
||||||
db 11110000b
|
db 00001000b,01001000b,00110000b,00110000b,11001000b; shw me 0x7F
|
||||||
db 10000000b
|
db 11111000b,00100000b,11111000b,00100000b,00111000b; shw mo 0x80
|
||||||
db 10000000b; P
|
db 01000000b,11111100b,01001000b,00100000b,00100000b; shw ya 0x81
|
||||||
db 01110000b
|
db 11110000b,00010000b,00010000b,00010000b,11111000b; shw yu 0x82
|
||||||
db 10001000b
|
db 11111000b,00001000b,11111000b,00001000b,11111000b; shw yo 0x83
|
||||||
db 10101000b
|
db 11111000b,00000000b,11111000b,00010000b,01100000b; shw ra 0x84
|
||||||
db 10010000b
|
db 10001000b,10001000b,10001000b,00010000b,01100000b; shw ri 0x85
|
||||||
db 01101000b; Q
|
db 01100000b,01100000b,01101000b,01101000b,10110000b; shw ru 0x86
|
||||||
db 11110000b
|
db 10000000b,10000000b,10001000b,10001000b,11110000b; shw re 0x87
|
||||||
db 10001000b
|
db 11111000b,10001000b,10001000b,10001000b,11111000b; shw ro 0x88
|
||||||
db 11110000b
|
db 11111000b,10001000b,00001000b,00010000b,01100000b; shw wa 0x89
|
||||||
db 10010000b
|
db 10000000b,01001000b,00001000b,00010000b,11100000b; shw n 0x8A
|
||||||
db 10001000b; R
|
db 10100000b,10100000b,00000000b,00000000b,00000000b; shw voiced 0x8B
|
||||||
db 01111000b
|
db 01000000b,10100000b,01000000b,00000000b,00000000b; shw halfvoiced 0x8C
|
||||||
db 10000000b
|
|
||||||
db 01110000b
|
|
||||||
db 00001000b
|
|
||||||
db 11110000b; S
|
|
||||||
db 11111000b
|
|
||||||
db 00100000b
|
|
||||||
db 00100000b
|
|
||||||
db 00100000b
|
|
||||||
db 00100000b; T
|
|
||||||
db 10001000b
|
|
||||||
db 10001000b
|
|
||||||
db 10001000b
|
|
||||||
db 10001000b
|
|
||||||
db 01110000b; U
|
|
||||||
db 10001000b
|
|
||||||
db 10001000b
|
|
||||||
db 01010000b
|
|
||||||
db 01010000b
|
|
||||||
db 00100000b; V
|
|
||||||
db 10001000b
|
|
||||||
db 10101000b
|
|
||||||
db 10101000b
|
|
||||||
db 10101000b
|
|
||||||
db 01010000b; W
|
|
||||||
db 10001000b
|
|
||||||
db 01010000b
|
|
||||||
db 00100000b
|
|
||||||
db 01010000b
|
|
||||||
db 10001000b; X
|
|
||||||
db 10001000b
|
|
||||||
db 01010000b
|
|
||||||
db 00100000b
|
|
||||||
db 00100000b
|
|
||||||
db 00100000b; Y
|
|
||||||
db 11111000b
|
|
||||||
db 00010000b
|
|
||||||
db 00100000b
|
|
||||||
db 01000000b
|
|
||||||
db 11111000b; Z
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b
|
|
||||||
db 11111000b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b; -
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b
|
|
||||||
db 11111000b; _
|
|
||||||
db 01101000b
|
|
||||||
db 10010000b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b; ~
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b
|
|
||||||
db 00100000b; .
|
|
||||||
db 00001000b
|
|
||||||
db 00010000b
|
|
||||||
db 00100000b
|
|
||||||
db 01000000b
|
|
||||||
db 10000000b; /
|
|
||||||
db 00010000b
|
|
||||||
db 00100000b
|
|
||||||
db 01000000b
|
|
||||||
db 00100000b
|
|
||||||
db 00010000b; <
|
|
||||||
db 01000000b
|
|
||||||
db 00100000b
|
|
||||||
db 00010000b
|
|
||||||
db 00100000b
|
|
||||||
db 01000000b; >
|
|
||||||
db 01110000b
|
|
||||||
db 01000000b
|
|
||||||
db 01000000b
|
|
||||||
db 01000000b
|
|
||||||
db 01110000b; [
|
|
||||||
db 01110000b
|
|
||||||
db 00010000b
|
|
||||||
db 00010000b
|
|
||||||
db 00010000b
|
|
||||||
db 01110000b; ]
|
|
||||||
db 00000000b
|
|
||||||
db 00100000b
|
|
||||||
db 00000000b
|
|
||||||
db 00100000b
|
|
||||||
db 00000000b; :
|
|
||||||
db 01100000b
|
|
||||||
db 10011000b
|
|
||||||
db 01110000b
|
|
||||||
db 10011000b
|
|
||||||
db 01101000b; &
|
|
||||||
db 00100000b
|
|
||||||
db 00100000b
|
|
||||||
db 10101000b
|
|
||||||
db 01110000b
|
|
||||||
db 00100000b; arrow
|
|
||||||
db 01010000b
|
|
||||||
db 11111000b
|
|
||||||
db 01010000b
|
|
||||||
db 11111000b
|
|
||||||
db 01010000b; #
|
|
||||||
db 00000000b
|
|
||||||
db 11111000b
|
|
||||||
db 00000000b
|
|
||||||
db 11111000b
|
|
||||||
db 00000000b; =
|
|
||||||
db 01001000b
|
|
||||||
db 10010000b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b; "
|
|
||||||
db 10000000b
|
|
||||||
db 01000000b
|
|
||||||
db 00100000b
|
|
||||||
db 00010000b
|
|
||||||
db 00001000b; \ (Screw you nassm)
|
|
||||||
db 10101000b
|
|
||||||
db 01110000b
|
|
||||||
db 11111000b
|
|
||||||
db 01110000b
|
|
||||||
db 10101000b; *
|
|
||||||
db 01110000b
|
|
||||||
db 10001000b
|
|
||||||
db 00110000b
|
|
||||||
db 00000000b
|
|
||||||
db 00100000b; ?
|
|
||||||
db 10001000b
|
|
||||||
db 00010000b
|
|
||||||
db 00100000b
|
|
||||||
db 01000000b
|
|
||||||
db 10001000b; %
|
|
||||||
db 00100000b
|
|
||||||
db 00100000b
|
|
||||||
db 11111000b
|
|
||||||
db 00100000b
|
|
||||||
db 00100000b; +
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b
|
|
||||||
db 00100000b
|
|
||||||
db 01000000b; ,
|
|
||||||
db 00110000b
|
|
||||||
db 01000000b
|
|
||||||
db 01000000b
|
|
||||||
db 01000000b
|
|
||||||
db 00110000b; (
|
|
||||||
db 01100000b
|
|
||||||
db 00010000b
|
|
||||||
db 00010000b
|
|
||||||
db 00010000b
|
|
||||||
db 01100000b; )
|
|
||||||
db 01110000b
|
|
||||||
db 10011000b
|
|
||||||
db 10111000b
|
|
||||||
db 10000000b
|
|
||||||
db 01110000b; @
|
|
||||||
db 00100000b
|
|
||||||
db 01000000b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b; '
|
|
||||||
db 00100000b
|
|
||||||
db 00100000b
|
|
||||||
db 00100000b
|
|
||||||
db 00000000b
|
|
||||||
db 00100000b; !
|
|
||||||
db 01111000b
|
|
||||||
db 10100000b
|
|
||||||
db 01110000b
|
|
||||||
db 00101000b
|
|
||||||
db 11110000b; $
|
|
||||||
db 00000000b
|
|
||||||
db 00100000b
|
|
||||||
db 00000000b
|
|
||||||
db 00100000b
|
|
||||||
db 01000000b; ;
|
|
||||||
db 01000000b
|
|
||||||
db 00100000b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b; `
|
|
||||||
db 00100000b
|
|
||||||
db 01010000b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b; ^
|
|
||||||
db 00110000b
|
|
||||||
db 01000000b
|
|
||||||
db 11000000b
|
|
||||||
db 01000000b
|
|
||||||
db 00110000b; {
|
|
||||||
db 01100000b
|
|
||||||
db 00010000b
|
|
||||||
db 00011000b
|
|
||||||
db 00010000b
|
|
||||||
db 01100000b; }
|
|
||||||
db 00100000b
|
|
||||||
db 00100000b
|
|
||||||
db 01110000b
|
|
||||||
db 01110000b
|
|
||||||
db 11111000b; Up
|
|
||||||
db 11111000b
|
|
||||||
db 01110000b
|
|
||||||
db 01110000b
|
|
||||||
db 00100000b
|
|
||||||
db 00100000b; Down
|
|
||||||
db 00001000b
|
|
||||||
db 00111000b
|
|
||||||
db 11111000b
|
|
||||||
db 00111000b
|
|
||||||
db 00001000b; Left
|
|
||||||
db 10000000b
|
|
||||||
db 11100000b
|
|
||||||
db 11111000b
|
|
||||||
db 11100000b
|
|
||||||
db 10000000b; Right
|
|
||||||
db 00100000b
|
|
||||||
db 01100000b
|
|
||||||
db 11111000b
|
|
||||||
db 01100000b
|
|
||||||
db 00100000b; Arrow Left
|
|
||||||
db 00111000b
|
|
||||||
db 00100000b
|
|
||||||
db 00110000b
|
|
||||||
db 00001000b
|
|
||||||
db 10110000b; .5
|
|
||||||
db 11111100b
|
|
||||||
db 10000100b
|
|
||||||
db 11111100b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b; Maximize
|
|
||||||
db 00000000b
|
|
||||||
db 11111100b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b; Minimize
|
|
||||||
db 11111000b
|
|
||||||
db 10001000b
|
|
||||||
db 10001000b
|
|
||||||
db 10001000b
|
|
||||||
db 11111000b; Maximize (Linux)
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b
|
|
||||||
db 00100000b
|
|
||||||
db 01010000b
|
|
||||||
db 00100000b; sjis halfwidth (shw) fullstop 0x4E
|
|
||||||
db 01110000b
|
|
||||||
db 01000000b
|
|
||||||
db 01000000b
|
|
||||||
db 01000000b
|
|
||||||
db 00000000b; shw left bracket 0x4F
|
|
||||||
db 00000000b
|
|
||||||
db 00010000b
|
|
||||||
db 00010000b
|
|
||||||
db 00010000b
|
|
||||||
db 01110000b; shw right bracket 0x50
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b
|
|
||||||
db 01000000b
|
|
||||||
db 00100000b; shw comma 0x51
|
|
||||||
db 00000000b
|
|
||||||
db 00100000b
|
|
||||||
db 01110000b
|
|
||||||
db 00100000b
|
|
||||||
db 00000000b; shw mid-dot 0x52
|
|
||||||
db 11111000b
|
|
||||||
db 00001000b
|
|
||||||
db 11110000b
|
|
||||||
db 00100000b
|
|
||||||
db 11000000b; shw wo 0x53
|
|
||||||
db 00000000b
|
|
||||||
db 11111000b
|
|
||||||
db 01010000b
|
|
||||||
db 01100000b
|
|
||||||
db 01000000b; shw mini a 0x54
|
|
||||||
db 00000000b
|
|
||||||
db 00010000b
|
|
||||||
db 00100000b
|
|
||||||
db 11100000b
|
|
||||||
db 00100000b; shw mini i 0x55
|
|
||||||
db 00000000b
|
|
||||||
db 00100000b
|
|
||||||
db 11111000b
|
|
||||||
db 10001000b
|
|
||||||
db 00110000b; shw mini u 0x56
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b
|
|
||||||
db 11111000b
|
|
||||||
db 00100000b
|
|
||||||
db 11111000b; shw mini e 0x57
|
|
||||||
db 00000000b
|
|
||||||
db 00010000b
|
|
||||||
db 11111000b
|
|
||||||
db 00110000b
|
|
||||||
db 11010000b; shw mini o 0x58
|
|
||||||
db 00000000b
|
|
||||||
db 01000000b
|
|
||||||
db 11111000b
|
|
||||||
db 01010000b
|
|
||||||
db 01000000b; shw mini ya 0x59
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b
|
|
||||||
db 11110000b
|
|
||||||
db 00010000b
|
|
||||||
db 11111000b; shw mini yu 0x5A
|
|
||||||
db 00000000b
|
|
||||||
db 11111000b
|
|
||||||
db 00001000b
|
|
||||||
db 01111000b
|
|
||||||
db 11111000b; shw mini yo 0x5B
|
|
||||||
db 00000000b
|
|
||||||
db 10101000b
|
|
||||||
db 10101000b
|
|
||||||
db 00010000b
|
|
||||||
db 01100000b; shw mini tsu 0x5C
|
|
||||||
db 00000000b
|
|
||||||
db 10000000b
|
|
||||||
db 01111000b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b; shw prolong 0x5D
|
|
||||||
db 11111000b
|
|
||||||
db 00101000b
|
|
||||||
db 00110000b
|
|
||||||
db 00100000b
|
|
||||||
db 11000000b; shw a 0x5E
|
|
||||||
db 00001000b
|
|
||||||
db 00110000b
|
|
||||||
db 11100000b
|
|
||||||
db 00100000b
|
|
||||||
db 00100000b; shw i 0x5F
|
|
||||||
db 00100000b
|
|
||||||
db 11111000b
|
|
||||||
db 10001000b
|
|
||||||
db 00010000b
|
|
||||||
db 01100000b; shw u 0x60
|
|
||||||
db 11111000b
|
|
||||||
db 00100000b
|
|
||||||
db 00100000b
|
|
||||||
db 00100000b
|
|
||||||
db 11111000b; shw e 0x61
|
|
||||||
db 00010000b
|
|
||||||
db 11111000b
|
|
||||||
db 00110000b
|
|
||||||
db 01010000b
|
|
||||||
db 10010000b; shw o 0x62
|
|
||||||
db 01000000b
|
|
||||||
db 11111000b
|
|
||||||
db 01001000b
|
|
||||||
db 01001000b
|
|
||||||
db 10011000b; shw ka 0x63
|
|
||||||
db 00100000b
|
|
||||||
db 11111000b
|
|
||||||
db 00100000b
|
|
||||||
db 11111000b
|
|
||||||
db 00100000b; shw ki 0x64
|
|
||||||
db 01000000b
|
|
||||||
db 01111000b
|
|
||||||
db 10001000b
|
|
||||||
db 00010000b
|
|
||||||
db 01100000b; shw ku 0x65
|
|
||||||
db 01000000b
|
|
||||||
db 01111000b
|
|
||||||
db 10010000b
|
|
||||||
db 00010000b
|
|
||||||
db 01100000b; shw ke 0x66 ^^
|
|
||||||
db 11111000b
|
|
||||||
db 00001000b
|
|
||||||
db 00001000b
|
|
||||||
db 00001000b
|
|
||||||
db 11111000b; shw ko 0x67
|
|
||||||
db 01010000b
|
|
||||||
db 11111000b
|
|
||||||
db 01010000b
|
|
||||||
db 00010000b
|
|
||||||
db 01100000b; shw sa 0x68
|
|
||||||
db 01000000b
|
|
||||||
db 10101000b
|
|
||||||
db 01001000b
|
|
||||||
db 00010000b
|
|
||||||
db 11100000b; shw shi 0x69
|
|
||||||
db 11111000b
|
|
||||||
db 00001000b
|
|
||||||
db 00010000b
|
|
||||||
db 00110000b
|
|
||||||
db 11001000b; shw su 0x6A
|
|
||||||
db 01000000b
|
|
||||||
db 11111000b
|
|
||||||
db 01010000b
|
|
||||||
db 01000000b
|
|
||||||
db 00111000b; shw se 0x6B
|
|
||||||
db 10001000b
|
|
||||||
db 01001000b
|
|
||||||
db 00001000b
|
|
||||||
db 00010000b
|
|
||||||
db 01100000b; shw so 0x6C
|
|
||||||
db 01000000b
|
|
||||||
db 01111000b
|
|
||||||
db 11001000b
|
|
||||||
db 00110000b
|
|
||||||
db 01100000b; shw ta 0x6D
|
|
||||||
db 11111000b
|
|
||||||
db 00100000b
|
|
||||||
db 11111000b
|
|
||||||
db 00100000b
|
|
||||||
db 01000000b; shw chi 0x6E
|
|
||||||
db 10101000b
|
|
||||||
db 10101000b
|
|
||||||
db 00001000b
|
|
||||||
db 00010000b
|
|
||||||
db 01100000b; shw tsu 0x6F
|
|
||||||
db 11111000b
|
|
||||||
db 00000000b
|
|
||||||
db 11111000b
|
|
||||||
db 00100000b
|
|
||||||
db 11000000b; shw te 0x70
|
|
||||||
db 01000000b
|
|
||||||
db 01000000b
|
|
||||||
db 01100000b
|
|
||||||
db 01010000b
|
|
||||||
db 01000000b; shw to 0x71
|
|
||||||
db 00100000b
|
|
||||||
db 11111000b
|
|
||||||
db 00100000b
|
|
||||||
db 00100000b
|
|
||||||
db 01000000b; shw na 0x72
|
|
||||||
db 11110000b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b
|
|
||||||
db 11111000b; shw ni 0x73
|
|
||||||
db 11111000b
|
|
||||||
db 00001000b
|
|
||||||
db 00101000b
|
|
||||||
db 00010000b
|
|
||||||
db 011010000b; shw nu 0x74
|
|
||||||
db 00100000b
|
|
||||||
db 11111000b
|
|
||||||
db 00001000b
|
|
||||||
db 01110000b
|
|
||||||
db 10101000b; shw ne 0x75
|
|
||||||
db 00001000b
|
|
||||||
db 00001000b
|
|
||||||
db 00001000b
|
|
||||||
db 00010000b
|
|
||||||
db 01100000b; shw no 0x76
|
|
||||||
db 01010000b
|
|
||||||
db 01010000b
|
|
||||||
db 01010000b
|
|
||||||
db 10001000b
|
|
||||||
db 10001000b; shw ha 0x77
|
|
||||||
db 10000000b
|
|
||||||
db 10011000b
|
|
||||||
db 11100000b
|
|
||||||
db 10000000b
|
|
||||||
db 01111000b; shw hi 0x78
|
|
||||||
db 11111000b
|
|
||||||
db 00001000b
|
|
||||||
db 00001000b
|
|
||||||
db 00010000b
|
|
||||||
db 01100000b; shw hu 0x79
|
|
||||||
db 01000000b
|
|
||||||
db 10100000b
|
|
||||||
db 10010000b
|
|
||||||
db 00001000b
|
|
||||||
db 00000000b; shw he 0x7A
|
|
||||||
db 00100000b
|
|
||||||
db 11111000b
|
|
||||||
db 01110000b
|
|
||||||
db 10101000b
|
|
||||||
db 00100000b; shw ho 0x7B
|
|
||||||
db 11111000b
|
|
||||||
db 00001000b
|
|
||||||
db 10010000b
|
|
||||||
db 01100000b
|
|
||||||
db 00100000b; shw ma 0x7C
|
|
||||||
db 11111000b
|
|
||||||
db 00000000b
|
|
||||||
db 11111000b
|
|
||||||
db 00000000b
|
|
||||||
db 11111000b; shw mi 0x7D
|
|
||||||
db 00100000b
|
|
||||||
db 01000000b
|
|
||||||
db 01000000b
|
|
||||||
db 10010000b
|
|
||||||
db 11111000b; shw mu 0x7E
|
|
||||||
db 00001000b
|
|
||||||
db 01001000b
|
|
||||||
db 00110000b
|
|
||||||
db 00110000b
|
|
||||||
db 11001000b; shw me 0x7F
|
|
||||||
db 11111000b
|
|
||||||
db 00100000b
|
|
||||||
db 11111000b
|
|
||||||
db 00100000b
|
|
||||||
db 00111000b; shw mo 0x80
|
|
||||||
db 01000000b
|
|
||||||
db 11111100b
|
|
||||||
db 01001000b
|
|
||||||
db 00100000b
|
|
||||||
db 0010000b; shw ya 0x81
|
|
||||||
db 11110000b
|
|
||||||
db 00010000b
|
|
||||||
db 00010000b
|
|
||||||
db 00010000b
|
|
||||||
db 11111000b; shw yu 0x82
|
|
||||||
db 11111000b
|
|
||||||
db 00001000b
|
|
||||||
db 11111000b
|
|
||||||
db 00001000b
|
|
||||||
db 11111000b; shw yo 0x83
|
|
||||||
db 11111000b
|
|
||||||
db 00000000b
|
|
||||||
db 11111000b
|
|
||||||
db 00010000b
|
|
||||||
db 01100000b; shw ra 0x84
|
|
||||||
db 10001000b
|
|
||||||
db 10001000b
|
|
||||||
db 10001000b
|
|
||||||
db 00010000b
|
|
||||||
db 01100000b; shw ri 0x85
|
|
||||||
db 01100000b
|
|
||||||
db 01100000b
|
|
||||||
db 01101000b
|
|
||||||
db 01101000b
|
|
||||||
db 10110000b; shw ru 0x86
|
|
||||||
db 10000000b
|
|
||||||
db 10000000b
|
|
||||||
db 10001000b
|
|
||||||
db 10001000b
|
|
||||||
db 11110000b; shw re 0x87
|
|
||||||
db 11111000b
|
|
||||||
db 10001000b
|
|
||||||
db 10001000b
|
|
||||||
db 10001000b
|
|
||||||
db 11111000b; shw ro 0x88
|
|
||||||
db 11111000b
|
|
||||||
db 10001000b
|
|
||||||
db 00001000b
|
|
||||||
db 00010000b
|
|
||||||
db 01100000b; shw wa 0x89
|
|
||||||
db 10000000b
|
|
||||||
db 01001000b
|
|
||||||
db 00001000b
|
|
||||||
db 00010000b
|
|
||||||
db 11100000b; shw n 0x8A
|
|
||||||
db 10100000b
|
|
||||||
db 10100000b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b; shw voiced 0x8B
|
|
||||||
db 01000000b
|
|
||||||
db 10100000b
|
|
||||||
db 01000000b
|
|
||||||
db 00000000b
|
|
||||||
db 00000000b; shw halfvoiced 0x8C
|
|
||||||
|
|
||||||
; 189 .. 220
|
; 189 .. 220
|
||||||
GUIIconDataClose:
|
GUIIconDataClose:
|
||||||
@@ -4535,18 +3969,6 @@ GUIIconDataCheckBoxC:
|
|||||||
db 0 ,215,214,165,212,211,210,202,0 ,0
|
db 0 ,215,214,165,212,211,210,202,0 ,0
|
||||||
db 0 ,0 ,202,202,202,202,202,202,0 ,0
|
db 0 ,0 ,202,202,202,202,202,202,0 ,0
|
||||||
|
|
||||||
GUIIconDataCheckBoxX:
|
|
||||||
db 0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0
|
|
||||||
db 0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0
|
|
||||||
db 0 ,165,0 ,0 ,0 ,0 ,0 ,165,0 ,0
|
|
||||||
db 0 ,220,165,218,217,216,165,0 ,0 ,0
|
|
||||||
db 0 ,219,218,165,216,165,214,202,0 ,0
|
|
||||||
db 0 ,218,217,216,165,214,213,202,0 ,0
|
|
||||||
db 0 ,217,216,165,214,165,212,202,0 ,0
|
|
||||||
db 0 ,216,165,214,213,212,165,202,0 ,0
|
|
||||||
db 0 ,165,214,213,212,211,210,165,0 ,0
|
|
||||||
db 0 ,0 ,202,202,202,202,202,202,0 ,0
|
|
||||||
|
|
||||||
GUIIconDataUpArrow:
|
GUIIconDataUpArrow:
|
||||||
db 201,209,209,209,209,209,209,200,0 ,0
|
db 201,209,209,209,209,209,209,200,0 ,0
|
||||||
db 207,205,205,202,203,205,205,203,0 ,0
|
db 207,205,205,202,203,205,205,203,0 ,0
|
||||||
|
|||||||
@@ -706,21 +706,33 @@ GUIgetcurrentinput:
|
|||||||
.nokey
|
.nokey
|
||||||
ret
|
ret
|
||||||
|
|
||||||
%macro KeyTabInc 1 ; tab array
|
%macro KeyTabInc 1-* ; tab arrays
|
||||||
cmp dh,9
|
push edx
|
||||||
jne %%done
|
%rep %0
|
||||||
|
xor edx,edx
|
||||||
mov eax,[%1]
|
mov eax,[%1]
|
||||||
cmp eax,[%1+4]
|
div dword[%1+4]
|
||||||
je %%back
|
mov [%1],edx
|
||||||
inc dword[%1]
|
%rotate 1
|
||||||
jmp %%done
|
or [%1],eax
|
||||||
%%back
|
cmp eax,1
|
||||||
mov dword[%1],1
|
je %%exit
|
||||||
%%done
|
%rotate -1
|
||||||
|
sub eax,[%1]
|
||||||
|
adc dword[%1],0
|
||||||
|
cmp dword[%1],0
|
||||||
|
jne %%exit
|
||||||
|
%rotate 1
|
||||||
|
%endrep
|
||||||
|
%%exit
|
||||||
|
pop edx
|
||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
GUIInputKeys:
|
GUIInputKeys:
|
||||||
|
cmp dh,9
|
||||||
|
jne .notab
|
||||||
KeyTabInc GUIInputTabs
|
KeyTabInc GUIInputTabs
|
||||||
|
.notab
|
||||||
ret
|
ret
|
||||||
|
|
||||||
GUITCPIPKeys:
|
GUITCPIPKeys:
|
||||||
@@ -838,13 +850,13 @@ GUISpeedKeys:
|
|||||||
|
|
||||||
cmp dh,'A' ; Framerate Checkboxes
|
cmp dh,'A' ; Framerate Checkboxes
|
||||||
jne .noautofr
|
jne .noautofr
|
||||||
mov byte[FPSOn],0
|
cmp byte[frameskip],0 ; 0 = autoframerate / 1-10 = frameskip 0-9
|
||||||
cmp byte[frameskip],0
|
|
||||||
je .zero
|
je .zero
|
||||||
mov byte[frameskip],0
|
mov byte[frameskip],0
|
||||||
jmp .notzero
|
jmp .notzero
|
||||||
.zero
|
.zero
|
||||||
mov byte[frameskip],2
|
mov byte[FPSOn],0
|
||||||
|
mov byte[frameskip],1
|
||||||
.notzero
|
.notzero
|
||||||
.noautofr
|
.noautofr
|
||||||
ret
|
ret
|
||||||
@@ -939,7 +951,15 @@ GUIGUIOptnsKeys:
|
|||||||
ret
|
ret
|
||||||
|
|
||||||
GUIVideoKeys:
|
GUIVideoKeys:
|
||||||
|
cmp dh,9
|
||||||
|
jne near .notab
|
||||||
|
cmp byte[NTSCFilter],0
|
||||||
|
jne .ntsc
|
||||||
KeyTabInc GUIVideoTabs
|
KeyTabInc GUIVideoTabs
|
||||||
|
jmp .notab
|
||||||
|
.ntsc
|
||||||
|
KeyTabInc GUIVideoTabs,GUIVntscTab
|
||||||
|
.notab
|
||||||
cmp dh,'a'
|
cmp dh,'a'
|
||||||
jb .nocap
|
jb .nocap
|
||||||
cmp dh,'z'
|
cmp dh,'z'
|
||||||
@@ -1340,8 +1360,12 @@ GUIVideoKeys:
|
|||||||
.nograyscale
|
.nograyscale
|
||||||
.notfilterstab
|
.notfilterstab
|
||||||
|
|
||||||
cmp dword[GUIVideoTabs],3
|
cmp dword[GUIVntscTab],1
|
||||||
jne .notntsctab
|
jne .notntsctab
|
||||||
|
cmp dh,'B'
|
||||||
|
jne .noblend
|
||||||
|
xor byte[NTSCBlend],1
|
||||||
|
.noblend
|
||||||
.notntsctab
|
.notntsctab
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
|||||||
@@ -53,12 +53,14 @@ ProcessMouse:
|
|||||||
call Set_MouseYMax
|
call Set_MouseYMax
|
||||||
.nohold1
|
.nohold1
|
||||||
cmp byte[GUIHold],5 ; Sound Slider
|
cmp byte[GUIHold],5 ; Sound Slider
|
||||||
je .dohold5
|
je .holdslider
|
||||||
cmp byte[GUIHold],6 ; Speed Slider
|
cmp byte[GUIHold],6 ; Speed Slider
|
||||||
je .dohold5
|
je .holdslider
|
||||||
cmp byte[GUIHold],2 ; Colour Slider
|
cmp byte[GUIHold],2 ; Colour Slider
|
||||||
|
je .holdslider
|
||||||
|
cmp byte[GUIHold],7 ; Video Slider
|
||||||
jne .nohold2m
|
jne .nohold2m
|
||||||
.dohold5
|
.holdslider
|
||||||
mov ecx,[GUIHoldXlimL] ; Sets min/max move range for mouse
|
mov ecx,[GUIHoldXlimL] ; Sets min/max move range for mouse
|
||||||
mov edx,[GUIHoldXlimR] ; once holding slider
|
mov edx,[GUIHoldXlimR] ; once holding slider
|
||||||
call Set_MouseXMax
|
call Set_MouseXMax
|
||||||
@@ -334,7 +336,7 @@ ProcessMouseButtons:
|
|||||||
xor ebx,ebx
|
xor ebx,ebx
|
||||||
mov bl,[GUIwinorder+eax]
|
mov bl,[GUIwinorder+eax]
|
||||||
cmp byte[GUIHold],2
|
cmp byte[GUIHold],2
|
||||||
je .hold2
|
je near .hold2
|
||||||
cmp byte[GUIHold],3
|
cmp byte[GUIHold],3
|
||||||
je near .hold3
|
je near .hold3
|
||||||
cmp byte[GUIHold],4
|
cmp byte[GUIHold],4
|
||||||
@@ -343,6 +345,8 @@ ProcessMouseButtons:
|
|||||||
je near .hold5
|
je near .hold5
|
||||||
cmp byte[GUIHold],6
|
cmp byte[GUIHold],6
|
||||||
je near .hold6
|
je near .hold6
|
||||||
|
cmp byte[GUIHold],7
|
||||||
|
je near .hold7
|
||||||
cmp byte[GUIHold],1
|
cmp byte[GUIHold],1
|
||||||
je near .hold
|
je near .hold
|
||||||
cmp byte[GUIHold],255
|
cmp byte[GUIHold],255
|
||||||
@@ -452,6 +456,23 @@ ProcessMouseButtons:
|
|||||||
.nogreat6
|
.nogreat6
|
||||||
mov byte[lastmouseholded],1
|
mov byte[lastmouseholded],1
|
||||||
jmp DisplayGUISpeedClick
|
jmp DisplayGUISpeedClick
|
||||||
|
.hold7
|
||||||
|
; Video Slide Bar Hold
|
||||||
|
mov eax,[GUIHoldYlim]
|
||||||
|
mov [GUImouseposy],eax
|
||||||
|
mov ebx,[GUImouseposx]
|
||||||
|
mov eax,[GUIHoldXlimL]
|
||||||
|
cmp ebx,eax
|
||||||
|
jnl .noless7
|
||||||
|
mov [GUImouseposx],eax
|
||||||
|
.noless7
|
||||||
|
mov eax,[GUIHoldXlimR]
|
||||||
|
cmp ebx,eax
|
||||||
|
jng .nogreat7
|
||||||
|
mov [GUImouseposx],eax
|
||||||
|
.nogreat7
|
||||||
|
mov byte[lastmouseholded],1
|
||||||
|
jmp DisplayGUIVideoClick
|
||||||
.hold
|
.hold
|
||||||
cmp word[GUImouseposy],16
|
cmp word[GUImouseposy],16
|
||||||
jge .noover
|
jge .noover
|
||||||
@@ -2182,7 +2203,7 @@ DisplayGUIMovieClick:
|
|||||||
%%noclick
|
%%noclick
|
||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
%macro GUIPTabClick 4 ; minX, maxX, var, value
|
%macro GUIPTabClick 3-* ; minX, maxX, value, var, vars to zero
|
||||||
cmp eax,%1+1
|
cmp eax,%1+1
|
||||||
jl %%noclick
|
jl %%noclick
|
||||||
cmp eax,%2-1
|
cmp eax,%2-1
|
||||||
@@ -2191,7 +2212,14 @@ DisplayGUIMovieClick:
|
|||||||
jl %%noclick
|
jl %%noclick
|
||||||
cmp edx,22
|
cmp edx,22
|
||||||
jg %%noclick
|
jg %%noclick
|
||||||
mov %3,%4
|
mov dword[%4],%3
|
||||||
|
%if (%0>4)
|
||||||
|
%rotate 4
|
||||||
|
%rep (%0-4)
|
||||||
|
mov dword[%1],0
|
||||||
|
%rotate 1
|
||||||
|
%endrep
|
||||||
|
%endif
|
||||||
%%noclick
|
%%noclick
|
||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
@@ -2213,11 +2241,11 @@ DisplayGUIInputClick:
|
|||||||
;x,y,x2,y2,currentwin,vpos,#entries,starty,y/entry,cpos,winval,win#,dclicktick#
|
;x,y,x2,y2,currentwin,vpos,#entries,starty,y/entry,cpos,winval,win#,dclicktick#
|
||||||
GUIWinControl 5,36,107,34+5*8,GUIBlankVar,GUIcurrentinputviewloc,GUINumValue,35,8,GUIcurrentinputcursloc,4,3,0
|
GUIWinControl 5,36,107,34+5*8,GUIBlankVar,GUIcurrentinputviewloc,GUINumValue,35,8,GUIcurrentinputcursloc,4,3,0
|
||||||
|
|
||||||
GUIPTabClick 0,21,dword[GUIInputTabs],1
|
GUIPTabClick 0,21,1,GUIInputTabs
|
||||||
GUIPTabClick 22,43,dword[GUIInputTabs],2
|
GUIPTabClick 22,43,2,GUIInputTabs
|
||||||
GUIPTabClick 44,65,dword[GUIInputTabs],3
|
GUIPTabClick 44,65,3,GUIInputTabs
|
||||||
GUIPTabClick 66,87,dword[GUIInputTabs],4
|
GUIPTabClick 66,87,4,GUIInputTabs
|
||||||
GUIPTabClick 88,109,dword[GUIInputTabs],5
|
GUIPTabClick 88,109,5,GUIInputTabs
|
||||||
|
|
||||||
GUIPHoldbutton 123,34,153,45,14 ; Buttons
|
GUIPHoldbutton 123,34,153,45,14 ; Buttons
|
||||||
GUIPHoldbutton 123,50,177,61,40
|
GUIPHoldbutton 123,50,177,61,40
|
||||||
@@ -2381,7 +2409,6 @@ DisplayGUIOptionClick:
|
|||||||
%endif
|
%endif
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
|
||||||
DisplayGUIVideoClick2:
|
DisplayGUIVideoClick2:
|
||||||
cmp dword[GUIVideoTabs],1 ; modes
|
cmp dword[GUIVideoTabs],1 ; modes
|
||||||
jne near .notmodestab2
|
jne near .notmodestab2
|
||||||
@@ -2393,11 +2420,11 @@ DisplayGUIVideoClick2:
|
|||||||
GUIPostWinBoxMove 5,27,115,27+5*8,GUIcurrentvideoviewloc,GUIcurrentvideocursloc,GUINumValue,.scrollup,.scrolldown,DisplayGUIVideoClick.skipscrol,5
|
GUIPostWinBoxMove 5,27,115,27+5*8,GUIcurrentvideoviewloc,GUIcurrentvideocursloc,GUINumValue,.scrollup,.scrolldown,DisplayGUIVideoClick.skipscrol,5
|
||||||
.notmodestab2
|
.notmodestab2
|
||||||
DisplayGUIVideoClick:
|
DisplayGUIVideoClick:
|
||||||
GUIPTabClick 0,39,dword[GUIVideoTabs],1
|
GUIPTabClick 0,39,1,GUIVideoTabs,GUIVntscTab
|
||||||
GUIPTabClick 40,91,dword[GUIVideoTabs],2
|
GUIPTabClick 40,91,2,GUIVideoTabs,GUIVntscTab
|
||||||
cmp dword[GUIVideoTabs+4],3
|
cmp byte[NTSCFilter],1
|
||||||
jne .nontscf
|
jne .nontscf
|
||||||
GUIPTabClick 92,125,dword[GUIVideoTabs],3
|
GUIPTabClick 92,125,1,GUIVntscTab,GUIVideoTabs
|
||||||
.nontscf
|
.nontscf
|
||||||
|
|
||||||
cmp dword[GUIVideoTabs],1 ; modes
|
cmp dword[GUIVideoTabs],1 ; modes
|
||||||
@@ -2542,13 +2569,103 @@ DisplayGUIVideoClick:
|
|||||||
GUIClickCButtonT 115,183,byte[vsyncon],byte[Triplebufen]
|
GUIClickCButtonT 115,183,byte[vsyncon],byte[Triplebufen]
|
||||||
%endif
|
%endif
|
||||||
GUIClickCButton 11,183,byte[GrayscaleMode]
|
GUIClickCButton 11,183,byte[GrayscaleMode]
|
||||||
.notfilterstab
|
|
||||||
|
|
||||||
cmp dword[GUIVideoTabs],3 ; NTSC
|
|
||||||
jne .notntsctab
|
|
||||||
.notntsctab
|
|
||||||
mov al,[vsyncon]
|
mov al,[vsyncon]
|
||||||
mov [cfgvsync],al
|
mov [cfgvsync],al
|
||||||
|
.notfilterstab
|
||||||
|
|
||||||
|
cmp dword[GUIVntscTab],1 ; NTSC
|
||||||
|
jne near .notntsctab
|
||||||
|
mov eax,[GUImouseposx] ; update mouse location
|
||||||
|
sub eax,[GUIwinposx+5*4]
|
||||||
|
mov edx,[GUImouseposy]
|
||||||
|
sub edx,[GUIwinposy+5*4]
|
||||||
|
|
||||||
|
GUIClickCButton 5,25,byte[NTSCBlend] ; Checkboxes
|
||||||
|
|
||||||
|
;Sliders
|
||||||
|
cmp eax,15 ; X-Range for click-area
|
||||||
|
jl near .nomovebar
|
||||||
|
cmp eax,15+100
|
||||||
|
jg near .nomovebar
|
||||||
|
cmp edx,54 ; Y-Range for click-area
|
||||||
|
jl near .nomovebar
|
||||||
|
cmp edx,58
|
||||||
|
jg .nohuebar
|
||||||
|
sub eax,15
|
||||||
|
mov [NTSCHue],al
|
||||||
|
mov byte[GUIHold],7 ; Lock mouse to bar when clicked
|
||||||
|
mov eax,[GUIwinposy+5*4]
|
||||||
|
add eax,56
|
||||||
|
mov [GUIHoldYlim],eax
|
||||||
|
jmp .nowarpbar
|
||||||
|
.nohuebar
|
||||||
|
cmp edx,74
|
||||||
|
jl near .nomovebar
|
||||||
|
cmp edx,78
|
||||||
|
jg .nosatbar
|
||||||
|
sub eax,15
|
||||||
|
mov [NTSCSat],al
|
||||||
|
mov byte[GUIHold],7
|
||||||
|
mov eax,[GUIwinposy+5*4]
|
||||||
|
add eax,76
|
||||||
|
mov [GUIHoldYlim],eax
|
||||||
|
jmp .nowarpbar
|
||||||
|
.nosatbar
|
||||||
|
cmp edx,94
|
||||||
|
jl near .nomovebar
|
||||||
|
cmp edx,98
|
||||||
|
jg .nocontbar
|
||||||
|
sub eax,15
|
||||||
|
mov [NTSCCont],al
|
||||||
|
mov byte[GUIHold],7
|
||||||
|
mov eax,[GUIwinposy+5*4]
|
||||||
|
add eax,96
|
||||||
|
mov [GUIHoldYlim],eax
|
||||||
|
jmp .nowarpbar
|
||||||
|
.nocontbar
|
||||||
|
cmp edx,114
|
||||||
|
jl near .nomovebar
|
||||||
|
cmp edx,118
|
||||||
|
jg .nobrightbar
|
||||||
|
sub eax,15
|
||||||
|
mov [NTSCBright],al
|
||||||
|
mov byte[GUIHold],7
|
||||||
|
mov eax,[GUIwinposy+5*4]
|
||||||
|
add eax,116
|
||||||
|
mov [GUIHoldYlim],eax
|
||||||
|
jmp .nowarpbar
|
||||||
|
.nobrightbar
|
||||||
|
cmp edx,134
|
||||||
|
jl .nomovebar
|
||||||
|
cmp edx,138
|
||||||
|
jg .nosharpbar
|
||||||
|
sub eax,15
|
||||||
|
mov [NTSCSharp],al
|
||||||
|
mov byte[GUIHold],7
|
||||||
|
mov eax,[GUIwinposy+5*4]
|
||||||
|
add eax,136
|
||||||
|
mov [GUIHoldYlim],eax
|
||||||
|
jmp .nowarpbar
|
||||||
|
.nosharpbar
|
||||||
|
cmp edx,154
|
||||||
|
jl .nomovebar
|
||||||
|
cmp edx,158
|
||||||
|
jg .nomovebar
|
||||||
|
sub eax,15
|
||||||
|
mov [NTSCWarp],al
|
||||||
|
mov byte[GUIHold],7
|
||||||
|
mov eax,[GUIwinposy+5*4]
|
||||||
|
add eax,156
|
||||||
|
mov [GUIHoldYlim],eax
|
||||||
|
.nowarpbar
|
||||||
|
mov eax,[GUIwinposx+5*4]
|
||||||
|
add eax,15
|
||||||
|
mov [GUIHoldXlimL],eax
|
||||||
|
add eax,100
|
||||||
|
mov [GUIHoldXlimR],eax
|
||||||
|
.nomovebar
|
||||||
|
|
||||||
|
.notntsctab
|
||||||
xor al,al
|
xor al,al
|
||||||
ret
|
ret
|
||||||
|
|
||||||
@@ -2944,7 +3061,7 @@ DisplayGUIOptnsClick:
|
|||||||
|
|
||||||
cmp eax,25
|
cmp eax,25
|
||||||
jl near .nomovebar
|
jl near .nomovebar
|
||||||
cmp eax,25+32*4-1
|
cmp eax,25+128
|
||||||
jg near .nomovebar
|
jg near .nomovebar
|
||||||
sub eax,25
|
sub eax,25
|
||||||
shr eax,2
|
shr eax,2
|
||||||
@@ -3036,7 +3153,7 @@ DisplayGUIOptnsClick:
|
|||||||
add eax,25
|
add eax,25
|
||||||
mov [GUIHoldXlimL],eax
|
mov [GUIHoldXlimL],eax
|
||||||
mov eax,[GUIwinposx+10*4]
|
mov eax,[GUIwinposx+10*4]
|
||||||
add eax,25+32*4-1
|
add eax,25+128
|
||||||
mov [GUIHoldXlimR],eax
|
mov [GUIHoldXlimR],eax
|
||||||
.nohold
|
.nohold
|
||||||
ret
|
ret
|
||||||
@@ -3449,8 +3566,6 @@ DrawMouse:
|
|||||||
cmp bl,220
|
cmp bl,220
|
||||||
ja .nomidshad
|
ja .nomidshad
|
||||||
sub bl,189
|
sub bl,189
|
||||||
; test bl,01h
|
|
||||||
; jnz .nomidshad
|
|
||||||
shr bl,1
|
shr bl,1
|
||||||
add bl,189
|
add bl,189
|
||||||
mov [edi+288*7+5],bl
|
mov [edi+288*7+5],bl
|
||||||
@@ -3458,6 +3573,7 @@ DrawMouse:
|
|||||||
.nomidshad
|
.nomidshad
|
||||||
|
|
||||||
.finishadow
|
.finishadow
|
||||||
|
add al,88
|
||||||
mov [edi],al
|
mov [edi],al
|
||||||
.nodraw
|
.nodraw
|
||||||
inc esi
|
inc esi
|
||||||
|
|||||||
@@ -281,8 +281,8 @@ GUIStringGreater2:
|
|||||||
add eax,dword[GUIwinsizex+%1*4]
|
add eax,dword[GUIwinsizex+%1*4]
|
||||||
mov ecx,eax
|
mov ecx,eax
|
||||||
mov esi,[GUIwinsizey+%1*4]
|
mov esi,[GUIwinsizey+%1*4]
|
||||||
mov edx,[GUIWincol]
|
mov dl,[GUIWincol]
|
||||||
add edx,1
|
inc dl
|
||||||
.loop3
|
.loop3
|
||||||
DrawGUILine
|
DrawGUILine
|
||||||
dec esi
|
dec esi
|
||||||
@@ -567,7 +567,7 @@ GUIOuttextwin2 %1,%2-1,%3-1,%4
|
|||||||
mov dl,[GUIWincol]
|
mov dl,[GUIWincol]
|
||||||
DrawGUIWinBox %1,%2,%3-3+2,%4,%3+1,dl
|
DrawGUIWinBox %1,%2,%3-3+2,%4,%3+1,dl
|
||||||
mov dl,[GUIWincol]
|
mov dl,[GUIWincol]
|
||||||
add dl,1
|
inc dl
|
||||||
DrawGUIWinBox %1,%2-1,%3,%2,%5,dl
|
DrawGUIWinBox %1,%2-1,%3,%2,%5,dl
|
||||||
mov dl,[GUIWincol]
|
mov dl,[GUIWincol]
|
||||||
add dl,4
|
add dl,4
|
||||||
@@ -588,7 +588,7 @@ GUIOuttextwin2 %1,%2-1,%3-1,%4
|
|||||||
mov dl,[GUIWincol]
|
mov dl,[GUIWincol]
|
||||||
DrawGUIWinBox %1,%2,%3-3+2,%4,%3+1,dl
|
DrawGUIWinBox %1,%2,%3-3+2,%4,%3+1,dl
|
||||||
mov dl,[GUIWincol]
|
mov dl,[GUIWincol]
|
||||||
add dl,1
|
inc dl
|
||||||
DrawGUIWinBox %1,%2-1,%3,%2,%5,dl
|
DrawGUIWinBox %1,%2-1,%3,%2,%5,dl
|
||||||
mov dl,[GUIWincol]
|
mov dl,[GUIWincol]
|
||||||
add dl,4
|
add dl,4
|
||||||
@@ -608,14 +608,38 @@ GUIOuttextwin2 %1,%2-1,%3-1,%4
|
|||||||
add esi,[vidbuffer]
|
add esi,[vidbuffer]
|
||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
|
%macro GUIDrawTArea 1 ; win #id
|
||||||
|
mov dl,[GUIWincol]
|
||||||
|
inc dl
|
||||||
|
mov eax,[GUIwinposx+%1*4]
|
||||||
|
mov ebx,[GUIwinposy+%1*4]
|
||||||
|
add ebx,10
|
||||||
|
mov ecx,eax
|
||||||
|
add ecx,[GUIwinsizex+%1*4]
|
||||||
|
mov esi,12
|
||||||
|
%%loop1
|
||||||
|
DrawGUILine
|
||||||
|
dec esi
|
||||||
|
jnz %%loop1
|
||||||
|
add dl,3
|
||||||
|
inc eax
|
||||||
|
DrawGUILine
|
||||||
|
sub ebx,13 ; set ebx to minY
|
||||||
|
dec eax ; set eax to minX
|
||||||
|
%endmacro
|
||||||
|
|
||||||
%macro DrawTabOn 1 ; %1 = array, ebp = offset, eax = minX, ebx = minY
|
%macro DrawTabOn 1 ; %1 = array, ebp = offset, eax = minX, ebx = minY
|
||||||
push edi
|
push edi
|
||||||
mov esi,%1
|
mov esi,%1
|
||||||
mov ecx,8
|
mov ecx,8
|
||||||
add ecx,eax
|
add ecx,eax
|
||||||
|
%%skip
|
||||||
|
cmp byte[esi+ebp],0
|
||||||
|
jne %%read1
|
||||||
|
inc ebp
|
||||||
|
jmp %%skip
|
||||||
%%read1
|
%%read1
|
||||||
mov dl,[esi+ebp]
|
cmp byte[esi+ebp],0
|
||||||
cmp dl,0
|
|
||||||
je %%ok1
|
je %%ok1
|
||||||
inc esi
|
inc esi
|
||||||
add ecx,6
|
add ecx,6
|
||||||
@@ -673,23 +697,26 @@ GUIOuttextwin2 %1,%2-1,%3-1,%4
|
|||||||
add eax,2 ; restore and set Xoff for next tab
|
add eax,2 ; restore and set Xoff for next tab
|
||||||
%%read2
|
%%read2
|
||||||
mov esi,%1
|
mov esi,%1
|
||||||
mov dl,[esi+ebp]
|
cmp byte[esi+ebp],0
|
||||||
cmp dl,0
|
|
||||||
je %%ok2
|
je %%ok2
|
||||||
inc ebp
|
inc ebp
|
||||||
jmp %%read2
|
jmp %%read2
|
||||||
%%ok2
|
%%ok2
|
||||||
inc ebp ; set pointer to next string
|
|
||||||
pop edi
|
pop edi
|
||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
%macro DrawTabOff 1 ; %1 = array, ebp = offset, eax = minX, ebx = minY
|
%macro DrawTabOff 1 ; %1 = array, ebp = offset, eax = minX, ebx = minY
|
||||||
|
push edi
|
||||||
mov esi,%1
|
mov esi,%1
|
||||||
mov ecx,8
|
mov ecx,8
|
||||||
add ecx,eax
|
add ecx,eax
|
||||||
|
%%skip
|
||||||
|
cmp byte[esi+ebp],0
|
||||||
|
jne %%read1
|
||||||
|
inc ebp
|
||||||
|
jmp %%skip
|
||||||
%%read1
|
%%read1
|
||||||
mov dl,[esi+ebp]
|
cmp byte[esi+ebp],0
|
||||||
cmp dl,0
|
|
||||||
je %%ok1
|
je %%ok1
|
||||||
inc esi
|
inc esi
|
||||||
add ecx,6
|
add ecx,6
|
||||||
@@ -711,7 +738,6 @@ GUIOuttextwin2 %1,%2-1,%3-1,%4
|
|||||||
jnz %%draw1
|
jnz %%draw1
|
||||||
sub ebx,10
|
sub ebx,10
|
||||||
push ebx ; save Yoff for next drawing step
|
push ebx ; save Yoff for next drawing step
|
||||||
push ebp ; save array offset
|
|
||||||
mov byte[GUItextcolor],202
|
mov byte[GUItextcolor],202
|
||||||
cmp byte[GUIWincoladd],0
|
cmp byte[GUIWincoladd],0
|
||||||
je %%nochange
|
je %%nochange
|
||||||
@@ -723,25 +749,18 @@ GUIOuttextwin2 %1,%2-1,%3-1,%4
|
|||||||
add edx,6
|
add edx,6
|
||||||
push edx ; save label Xoff
|
push edx ; save label Xoff
|
||||||
SetVidbufLoc
|
SetVidbufLoc
|
||||||
push edi
|
|
||||||
mov edi,%1
|
mov edi,%1
|
||||||
add edi,ebp
|
add edi,ebp
|
||||||
call GUIOutputStringwin
|
call GUIOutputStringwin
|
||||||
pop edi
|
|
||||||
pop edx
|
pop edx
|
||||||
pop ebx
|
pop ebx
|
||||||
pop ebp
|
|
||||||
push ebp ; save array offset again
|
|
||||||
add byte[GUItextcolor],15
|
add byte[GUItextcolor],15
|
||||||
dec edx
|
dec edx
|
||||||
dec ebx
|
dec ebx
|
||||||
SetVidbufLoc
|
SetVidbufLoc
|
||||||
push edi
|
|
||||||
mov edi,%1
|
mov edi,%1
|
||||||
add edi,ebp
|
add edi,ebp
|
||||||
call GUIOutputStringwin
|
call GUIOutputStringwin
|
||||||
pop edi
|
|
||||||
pop ebp ; restore pointer
|
|
||||||
pop ebx ; restore Yoff for drawing step
|
pop ebx ; restore Yoff for drawing step
|
||||||
pop eax
|
pop eax
|
||||||
inc eax ; restore and set Xoff for drawing step
|
inc eax ; restore and set Xoff for drawing step
|
||||||
@@ -756,50 +775,71 @@ GUIOuttextwin2 %1,%2-1,%3-1,%4
|
|||||||
inc eax
|
inc eax
|
||||||
%%read2
|
%%read2
|
||||||
mov esi,%1
|
mov esi,%1
|
||||||
mov dl,[esi+ebp]
|
cmp byte[esi+ebp],0
|
||||||
cmp dl,0
|
|
||||||
je %%ok2
|
je %%ok2
|
||||||
inc ebp
|
inc ebp
|
||||||
jmp %%read2
|
jmp %%read2
|
||||||
%%ok2
|
%%ok2
|
||||||
inc ebp ; set pointer to next string
|
pop edi
|
||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
%macro GUIDrawTab 2 ; window id #, tabs/label array
|
%macro GUIDrawTabs 1 ; tabs/label array
|
||||||
mov dl,[GUIWincol]
|
mov ecx,[%1+4] ; total #
|
||||||
add dl,1
|
cmp ecx,0
|
||||||
mov eax,[GUIwinposx+%1*4]
|
je near %%nodraw
|
||||||
mov ebx,[GUIwinposy+%1*4]
|
mov esi,[%1] ; active tab
|
||||||
add ebx,10
|
|
||||||
mov ecx,eax
|
|
||||||
add ecx,[GUIwinsizex+%1*4]
|
|
||||||
mov esi,12
|
|
||||||
%%loop1
|
|
||||||
DrawGUILine
|
|
||||||
dec esi
|
|
||||||
jnz %%loop1
|
|
||||||
add dl,3
|
|
||||||
inc eax
|
|
||||||
DrawGUILine
|
|
||||||
sub ebx,13 ; set ebx to minY
|
|
||||||
dec eax ; set eax to minX
|
|
||||||
mov esi,[%2] ; active tab
|
|
||||||
mov ecx,[%2+4] ; total #
|
|
||||||
mov ebp,8 ; set array offset at top of labels
|
mov ebp,8 ; set array offset at top of labels
|
||||||
%%loop2
|
%%loop2
|
||||||
dec esi ; check if tab is the current one
|
dec esi ; check if tab is the current one
|
||||||
push ecx
|
push ecx
|
||||||
push esi
|
push esi
|
||||||
jnz near %%disabled
|
jnz near %%disabled
|
||||||
DrawTabOn %2 ; draws tab, updates eax, ebx & ebp for next tab...
|
DrawTabOn %1 ; draws tab, updates eax, ebx & ebp for next tab...
|
||||||
jmp %%done
|
jmp near %%done
|
||||||
%%disabled
|
%%disabled
|
||||||
DrawTabOff %2 ; ... and autosizes the tab for its label
|
DrawTabOff %1 ; ... and autosizes the tab for its label
|
||||||
%%done
|
%%done
|
||||||
pop esi
|
pop esi
|
||||||
pop ecx
|
pop ecx
|
||||||
dec ecx
|
dec ecx
|
||||||
jnz %%loop2
|
jnz %%loop2
|
||||||
|
%%nodraw
|
||||||
|
%endmacro
|
||||||
|
|
||||||
|
%macro GUIDrawSlider 6 ; win #id, minX, width, Ypos, variable, text
|
||||||
|
mov eax,[GUIwinposx+%1*4]
|
||||||
|
mov ebx,[GUIwinposy+%1*4]
|
||||||
|
add eax,%2
|
||||||
|
add ebx,%4
|
||||||
|
mov ecx,eax
|
||||||
|
add ecx,%3
|
||||||
|
xor edx,edx
|
||||||
|
mov dl,215
|
||||||
|
sub dl,[GUIWincoladd]
|
||||||
|
DrawGUILine
|
||||||
|
inc ecx
|
||||||
|
inc eax
|
||||||
|
sub dl,13
|
||||||
|
DrawGUILine
|
||||||
|
xor eax,eax
|
||||||
|
mov al,[%5]
|
||||||
|
mov dword[GUITemp],%2-4
|
||||||
|
add [GUITemp],eax
|
||||||
|
GUIDisplayIconWin %1,[GUITemp],%4-4,GUIIconDataSlideBar
|
||||||
|
mov word[%6],' '
|
||||||
|
mov esi,%6+3
|
||||||
|
mov al,[%5]
|
||||||
|
mov bl,10
|
||||||
|
%%asciilp ; turns decimal into ascii
|
||||||
|
dec esi
|
||||||
|
xor ah,ah
|
||||||
|
div bl
|
||||||
|
add ah,48
|
||||||
|
mov [esi],ah
|
||||||
|
cmp al,0
|
||||||
|
jne %%asciilp
|
||||||
|
mov dword[GUITemp],%6 ; Display Value (Green)
|
||||||
|
GUIDisplayTextG %1,%2+%3+6,%4-1,[GUITemp]
|
||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
; DGUIDisplay
|
; DGUIDisplay
|
||||||
@@ -1166,7 +1206,7 @@ SECTION .text
|
|||||||
mov dl,[GUIWincol]
|
mov dl,[GUIWincol]
|
||||||
DrawGUIWinBox %1,%2+1,%3,%2+18,%3,dl
|
DrawGUIWinBox %1,%2+1,%3,%2+18,%3,dl
|
||||||
mov dl,[GUIWincol]
|
mov dl,[GUIWincol]
|
||||||
add dl,1
|
inc dl
|
||||||
DrawGUIWinBox %1,%2,%3+1,%2-1,%3+5,dl
|
DrawGUIWinBox %1,%2,%3+1,%2-1,%3+5,dl
|
||||||
mov dl,[GUIWincol]
|
mov dl,[GUIWincol]
|
||||||
add dl,4
|
add dl,4
|
||||||
@@ -1274,7 +1314,8 @@ DisplayGUIInput: ; Player Select, Joystick/keyboard Type List, Button Assignm
|
|||||||
mov eax,[GUIInputTabs]
|
mov eax,[GUIInputTabs]
|
||||||
dec al
|
dec al
|
||||||
mov [cplayernum],al
|
mov [cplayernum],al
|
||||||
GUIDrawTab 3,GUIInputTabs
|
GUIDrawTArea 3
|
||||||
|
GUIDrawTabs GUIInputTabs
|
||||||
|
|
||||||
GUIDisplayTextY 3,6,26,GUIInputTextA
|
GUIDisplayTextY 3,6,26,GUIInputTextA
|
||||||
xor eax,eax
|
xor eax,eax
|
||||||
@@ -1632,12 +1673,12 @@ DisplayGUIVideo:
|
|||||||
|
|
||||||
GUIDrawWindowBox 5,GUIVideoDisp ; Video Modes List/Options
|
GUIDrawWindowBox 5,GUIVideoDisp ; Video Modes List/Options
|
||||||
|
|
||||||
xor ebx,ebx
|
GUIDrawTArea 5
|
||||||
mov bl,[NTSCFilter]
|
GUIDrawTabs GUIVideoTabs
|
||||||
add ebx,2
|
cmp byte[NTSCFilter],0
|
||||||
mov [GUIVideoTabs+4],ebx
|
je near .nontsc
|
||||||
|
GUIDrawTabs GUIVntscTab
|
||||||
GUIDrawTab 5,GUIVideoTabs
|
.nontsc
|
||||||
|
|
||||||
cmp dword[GUIVideoTabs],1
|
cmp dword[GUIVideoTabs],1
|
||||||
jne near .notmodestab
|
jne near .notmodestab
|
||||||
@@ -1860,8 +1901,23 @@ DisplayGUIVideo:
|
|||||||
%endif
|
%endif
|
||||||
.notfilterstab
|
.notfilterstab
|
||||||
|
|
||||||
cmp dword[GUIVideoTabs],3
|
cmp dword[GUIVntscTab],1
|
||||||
jne .notntsctab
|
jne near .notntsctab
|
||||||
|
GUIDisplayCheckboxu 5,5,25,NTSCBlend,GUIVideoTextG1,0
|
||||||
|
|
||||||
|
GUIDisplayTextY 5,7,46,GUIVideoTextG2
|
||||||
|
GUIDisplayTextY 5,7,66,GUIVideoTextG3
|
||||||
|
GUIDisplayTextY 5,7,86,GUIVideoTextG4
|
||||||
|
GUIDisplayTextY 5,7,106,GUIVideoTextG5
|
||||||
|
GUIDisplayTextY 5,7,126,GUIVideoTextG6
|
||||||
|
GUIDisplayTextY 5,7,146,GUIVideoTextG7
|
||||||
|
|
||||||
|
GUIDrawSlider 5,15,100,56,NTSCHue,GUIVideoTextG
|
||||||
|
GUIDrawSlider 5,15,100,76,NTSCSat,GUIVideoTextG
|
||||||
|
GUIDrawSlider 5,15,100,96,NTSCCont,GUIVideoTextG
|
||||||
|
GUIDrawSlider 5,15,100,116,NTSCBright,GUIVideoTextG
|
||||||
|
GUIDrawSlider 5,15,100,136,NTSCSharp,GUIVideoTextG
|
||||||
|
GUIDrawSlider 5,15,100,156,NTSCWarp,GUIVideoTextG
|
||||||
.notntsctab
|
.notntsctab
|
||||||
ret
|
ret
|
||||||
|
|
||||||
@@ -1869,6 +1925,7 @@ SECTION .data
|
|||||||
GUIVideoTabs dd 1,2
|
GUIVideoTabs dd 1,2
|
||||||
db 'MODES',0
|
db 'MODES',0
|
||||||
db 'FILTERS',0
|
db 'FILTERS',0
|
||||||
|
GUIVntscTab dd 0,1
|
||||||
db 'NTSC',0
|
db 'NTSC',0
|
||||||
|
|
||||||
GUIVideoTextB db 'LEGEND:',0
|
GUIVideoTextB db 'LEGEND:',0
|
||||||
@@ -1904,6 +1961,15 @@ GUIVideoText8 db 'SET',0 ; set button
|
|||||||
GUIVideoText9 db 'VSYNC',0 ; -c
|
GUIVideoText9 db 'VSYNC',0 ; -c
|
||||||
GUIVideoTexte db 'NTSC',0
|
GUIVideoTexte db 'NTSC',0
|
||||||
|
|
||||||
|
GUIVideoTextG db '---%',0
|
||||||
|
GUIVideoTextG1 db 'BLEND FRAMES',0
|
||||||
|
GUIVideoTextG2 db 'HUE:',0
|
||||||
|
GUIVideoTextG3 db 'SATURATION:',0
|
||||||
|
GUIVideoTextG4 db 'CONTRAST:',0
|
||||||
|
GUIVideoTextG5 db 'BRIGHTNESS:',0
|
||||||
|
GUIVideoTextG6 db 'SHARPNESS:',0
|
||||||
|
GUIVideoTextG7 db 'HUE WARPING:',0
|
||||||
|
|
||||||
SECTION .bss
|
SECTION .bss
|
||||||
GUIVStA resd 3
|
GUIVStA resd 3
|
||||||
GUIcurrentvideoviewloc resd 1
|
GUIcurrentvideoviewloc resd 1
|
||||||
@@ -1961,51 +2027,7 @@ DisplayGUISound: ; Sound Related Options
|
|||||||
add [GUITemp],eax
|
add [GUITemp],eax
|
||||||
GUIDisplayTextG 6,23,64,[GUITemp]
|
GUIDisplayTextG 6,23,64,[GUITemp]
|
||||||
|
|
||||||
mov eax,[GUIwinposx+6*4] ; Volume Level Slider
|
GUIDrawSlider 6,15,100,91,MusicRelVol,GUISoundTextC1
|
||||||
mov ebx,[GUIwinposy+6*4]
|
|
||||||
mov ecx,eax
|
|
||||||
add eax,15
|
|
||||||
add ecx,15+100
|
|
||||||
add ebx,91
|
|
||||||
xor edx,edx
|
|
||||||
mov dl,215
|
|
||||||
sub dl,[GUIWincoladd]
|
|
||||||
DrawGUILine
|
|
||||||
inc ecx
|
|
||||||
inc eax
|
|
||||||
sub dl,13
|
|
||||||
DrawGUILine
|
|
||||||
xor eax,eax
|
|
||||||
mov al,[MusicRelVol]
|
|
||||||
mov dword[GUITemp],11
|
|
||||||
add [GUITemp],eax
|
|
||||||
GUIDisplayIconWin 6,[GUITemp],87,GUIIconDataSlideBar
|
|
||||||
mov dword[GUISoundTextC1],' '
|
|
||||||
mov byte[GUISoundTextC1+3],'%'
|
|
||||||
mov esi,GUISoundTextC1+2
|
|
||||||
xor eax,eax
|
|
||||||
mov al,[MusicRelVol]
|
|
||||||
mov ebx,10
|
|
||||||
div bl
|
|
||||||
add ah,48
|
|
||||||
mov [esi],ah
|
|
||||||
cmp al,0
|
|
||||||
je .nomore
|
|
||||||
dec esi
|
|
||||||
xor ah,ah
|
|
||||||
div bl
|
|
||||||
add ah,48
|
|
||||||
mov [esi],ah
|
|
||||||
cmp al,0
|
|
||||||
je .nomore
|
|
||||||
dec esi
|
|
||||||
xor ah,ah
|
|
||||||
div bl
|
|
||||||
add ah,48
|
|
||||||
mov [esi],ah
|
|
||||||
.nomore
|
|
||||||
mov [GUITemp],esi
|
|
||||||
GUIDisplayTextG 6,119,89,[GUITemp]
|
|
||||||
ret
|
ret
|
||||||
|
|
||||||
SECTION .data
|
SECTION .data
|
||||||
@@ -3027,7 +3049,7 @@ GUIGameOptnsTextC7 db 'SAVE SPC',0
|
|||||||
|
|
||||||
GUIGameOptnsTextD1 db 'MISC TOGGLES:',0
|
GUIGameOptnsTextD1 db 'MISC TOGGLES:',0
|
||||||
GUIGameOptnsTextD1a db 'USE PL12/34',0
|
GUIGameOptnsTextD1a db 'USE PL12/34',0
|
||||||
GUIGameOptnsTextD1b db 'CLRSWITCHES',0
|
GUIGameOptnsTextD1b db 'PANIC KEY',0
|
||||||
GUIGameOptnsTextD1c db 'DISPLAY FPS',0
|
GUIGameOptnsTextD1c db 'DISPLAY FPS',0
|
||||||
GUIGameOptnsTextD1d db 'BATT POWER',0
|
GUIGameOptnsTextD1d db 'BATT POWER',0
|
||||||
|
|
||||||
@@ -3104,19 +3126,19 @@ DisplayGUIOptns: ; GUI Options
|
|||||||
xor eax,eax
|
xor eax,eax
|
||||||
mov al,[TRVal2]
|
mov al,[TRVal2]
|
||||||
shl eax,2
|
shl eax,2
|
||||||
mov dword[GUITemp],22
|
mov dword[GUITemp],23
|
||||||
add [GUITemp],eax
|
add [GUITemp],eax
|
||||||
GUIDisplayIconWin 10,[GUITemp],120,GUIIconDataSlideBar
|
GUIDisplayIconWin 10,[GUITemp],120,GUIIconDataSlideBar
|
||||||
xor eax,eax
|
xor eax,eax
|
||||||
mov al,[TGVal2]
|
mov al,[TGVal2]
|
||||||
shl eax,2
|
shl eax,2
|
||||||
mov dword[GUITemp],22
|
mov dword[GUITemp],23
|
||||||
add [GUITemp],eax
|
add [GUITemp],eax
|
||||||
GUIDisplayIconWin 10,[GUITemp],132,GUIIconDataSlideBar
|
GUIDisplayIconWin 10,[GUITemp],132,GUIIconDataSlideBar
|
||||||
xor eax,eax
|
xor eax,eax
|
||||||
mov al,[TBVal2]
|
mov al,[TBVal2]
|
||||||
shl eax,2
|
shl eax,2
|
||||||
mov dword[GUITemp],22
|
mov dword[GUITemp],23
|
||||||
add [GUITemp],eax
|
add [GUITemp],eax
|
||||||
GUIDisplayIconWin 10,[GUITemp],144,GUIIconDataSlideBar
|
GUIDisplayIconWin 10,[GUITemp],144,GUIIconDataSlideBar
|
||||||
|
|
||||||
@@ -3491,7 +3513,7 @@ SECTION .text
|
|||||||
mov dl,[GUIWincol]
|
mov dl,[GUIWincol]
|
||||||
DrawGUIWinBox %1,%2,%6,%4,%3,dl ; freezes if you replace %6 with %3-1
|
DrawGUIWinBox %1,%2,%6,%4,%3,dl ; freezes if you replace %6 with %3-1
|
||||||
mov dl,[GUIWincol]
|
mov dl,[GUIWincol]
|
||||||
add dl,1
|
inc dl
|
||||||
DrawGUIWinBox %1,%2-1,%3,%2,%5,dl
|
DrawGUIWinBox %1,%2-1,%3,%2,%5,dl
|
||||||
mov dl,[GUIWincol]
|
mov dl,[GUIWincol]
|
||||||
add dl,4
|
add dl,4
|
||||||
@@ -3507,7 +3529,7 @@ SECTION .text
|
|||||||
mov dl,[GUIWincol]
|
mov dl,[GUIWincol]
|
||||||
DrawGUIWinBox %1,%2,%6,%4,%3,dl
|
DrawGUIWinBox %1,%2,%6,%4,%3,dl
|
||||||
mov dl,[GUIWincol]
|
mov dl,[GUIWincol]
|
||||||
add dl,1
|
inc dl
|
||||||
DrawGUIWinBox %1,%2-1,%3,%2,%5,dl
|
DrawGUIWinBox %1,%2-1,%3,%2,%5,dl
|
||||||
mov dl,[GUIWincol]
|
mov dl,[GUIWincol]
|
||||||
add dl,4
|
add dl,4
|
||||||
@@ -3532,7 +3554,7 @@ SECTION .text
|
|||||||
mov dl,[GUIWincol]
|
mov dl,[GUIWincol]
|
||||||
DrawGUIWinBox %1,%2,%6,%4,%3,dl
|
DrawGUIWinBox %1,%2,%6,%4,%3,dl
|
||||||
mov dl,[GUIWincol]
|
mov dl,[GUIWincol]
|
||||||
add dl,1
|
inc dl
|
||||||
DrawGUIWinBox %1,%2-1,%3,%2,%5,dl
|
DrawGUIWinBox %1,%2-1,%3,%2,%5,dl
|
||||||
mov dl,[GUIWincol]
|
mov dl,[GUIWincol]
|
||||||
add dl,4
|
add dl,4
|
||||||
@@ -4233,8 +4255,8 @@ DisplayGUIAddOns: ;Select Special Controllers
|
|||||||
mov eax,GUIAddOnEETopBar
|
mov eax,GUIAddOnEETopBar
|
||||||
mov ebx,GUIAddOnsDisp
|
mov ebx,GUIAddOnsDisp
|
||||||
.loopA
|
.loopA
|
||||||
mov cl,byte[eax]
|
mov cl,[eax]
|
||||||
mov byte[ebx],cl
|
mov [ebx],cl
|
||||||
inc eax
|
inc eax
|
||||||
inc ebx
|
inc ebx
|
||||||
cmp cl,0
|
cmp cl,0
|
||||||
@@ -4263,8 +4285,8 @@ DisplayGUIAddOns: ;Select Special Controllers
|
|||||||
mov eax,GUIAddOnsDispEE
|
mov eax,GUIAddOnsDispEE
|
||||||
mov ebx,GUIAddOnsDisp
|
mov ebx,GUIAddOnsDisp
|
||||||
.loopB
|
.loopB
|
||||||
mov cl,byte[eax]
|
mov cl,[eax]
|
||||||
mov byte[ebx],cl
|
mov [ebx],cl
|
||||||
inc eax
|
inc eax
|
||||||
inc ebx
|
inc ebx
|
||||||
cmp cl,0
|
cmp cl,0
|
||||||
@@ -4273,8 +4295,8 @@ DisplayGUIAddOns: ;Select Special Controllers
|
|||||||
pop ebx
|
pop ebx
|
||||||
pop eax
|
pop eax
|
||||||
|
|
||||||
GUIDisplayText 17,20,15,GUIAddOnText1
|
GUIDisplayTextY 17,20,15,GUIAddOnText1
|
||||||
GUIDisplayText 17,112,15,GUIAddOnText2
|
GUIDisplayTextY 17,112,15,GUIAddOnText2
|
||||||
|
|
||||||
GUIDisplayButtonHoleTu 17,9,23,byte[device1],0,GUIAddOnText3,0
|
GUIDisplayButtonHoleTu 17,9,23,byte[device1],0,GUIAddOnText3,0
|
||||||
GUIDisplayButtonHoleTu 17,9,33,byte[device1],1,GUIAddOnText4,0
|
GUIDisplayButtonHoleTu 17,9,33,byte[device1],1,GUIAddOnText4,0
|
||||||
@@ -4523,14 +4545,13 @@ DisplayGUISave: ;Save & Rewind options/Hotkeys
|
|||||||
GUIDisplayCheckboxu 20,11,100,PauseRewind,GUISaveTextB7,12
|
GUIDisplayCheckboxu 20,11,100,PauseRewind,GUISaveTextB7,12
|
||||||
|
|
||||||
GUIDisplayBBox 20,150,17,165,24,167 ; Rewind States Box
|
GUIDisplayBBox 20,150,17,165,24,167 ; Rewind States Box
|
||||||
xor ax,ax
|
|
||||||
mov ah,[RewindStates]
|
mov ah,[RewindStates]
|
||||||
mov al,48
|
mov al,48
|
||||||
add ah,48
|
add ah,48
|
||||||
.asciiloop
|
.asciiloop
|
||||||
cmp ah,58
|
cmp ah,58
|
||||||
jb .hex2asciidone
|
jb .hex2asciidone
|
||||||
add al,1
|
inc al
|
||||||
sub ah,10
|
sub ah,10
|
||||||
jmp .asciiloop
|
jmp .asciiloop
|
||||||
.hex2asciidone
|
.hex2asciidone
|
||||||
@@ -4538,14 +4559,13 @@ DisplayGUISave: ;Save & Rewind options/Hotkeys
|
|||||||
GUIDisplayTextG 20,154,19,GUISaveTextZ3
|
GUIDisplayTextG 20,154,19,GUISaveTextZ3
|
||||||
|
|
||||||
GUIDisplayBBox 20,150,29,165,36,167 ; Second/Rewind Box
|
GUIDisplayBBox 20,150,29,165,36,167 ; Second/Rewind Box
|
||||||
xor ax,ax
|
|
||||||
mov ah,[RewindFrames]
|
mov ah,[RewindFrames]
|
||||||
mov al,48
|
mov al,48
|
||||||
add ah,48
|
add ah,48
|
||||||
.asciiloop2
|
.asciiloop2
|
||||||
cmp ah,58
|
cmp ah,58
|
||||||
jb .hex2asciidone2
|
jb .hex2asciidone2
|
||||||
add al,1
|
inc al
|
||||||
sub ah,10
|
sub ah,10
|
||||||
jmp .asciiloop2
|
jmp .asciiloop2
|
||||||
.hex2asciidone2
|
.hex2asciidone2
|
||||||
@@ -4649,7 +4669,6 @@ DisplayGUISpeed: ;Speed Options
|
|||||||
GUIDisplayCheckboxun 21,11,145,frameskip,0,GUISpeedTextC2,0
|
GUIDisplayCheckboxun 21,11,145,frameskip,0,GUISpeedTextC2,0
|
||||||
|
|
||||||
GUIDisplayBBox 21,96,24,114,31,167 ; FF Ratio Box
|
GUIDisplayBBox 21,96,24,114,31,167 ; FF Ratio Box
|
||||||
xor ax,ax
|
|
||||||
mov ah,[FFRatio]
|
mov ah,[FFRatio]
|
||||||
add ah,2
|
add ah,2
|
||||||
mov al,48
|
mov al,48
|
||||||
@@ -4657,7 +4676,7 @@ DisplayGUISpeed: ;Speed Options
|
|||||||
.asciiloop
|
.asciiloop
|
||||||
cmp ah,58
|
cmp ah,58
|
||||||
jb .hex2asciidone
|
jb .hex2asciidone
|
||||||
add al,1
|
inc al
|
||||||
sub ah,10
|
sub ah,10
|
||||||
jmp .asciiloop
|
jmp .asciiloop
|
||||||
.hex2asciidone
|
.hex2asciidone
|
||||||
@@ -4669,7 +4688,6 @@ DisplayGUISpeed: ;Speed Options
|
|||||||
GUIDisplayTextG 21,101,26,GUISpeedTextZ3
|
GUIDisplayTextG 21,101,26,GUISpeedTextZ3
|
||||||
|
|
||||||
GUIDisplayBBox 21,96,35,114,42,167 ; SD Ratio Box
|
GUIDisplayBBox 21,96,35,114,42,167 ; SD Ratio Box
|
||||||
xor ax,ax
|
|
||||||
mov ah,[SDRatio]
|
mov ah,[SDRatio]
|
||||||
add ah,2
|
add ah,2
|
||||||
mov al,48
|
mov al,48
|
||||||
@@ -4677,7 +4695,7 @@ DisplayGUISpeed: ;Speed Options
|
|||||||
.asciiloop2
|
.asciiloop2
|
||||||
cmp ah,58
|
cmp ah,58
|
||||||
jb .hex2asciidone2
|
jb .hex2asciidone2
|
||||||
add al,1
|
inc al
|
||||||
sub ah,10
|
sub ah,10
|
||||||
jmp .asciiloop2
|
jmp .asciiloop2
|
||||||
.hex2asciidone2
|
.hex2asciidone2
|
||||||
@@ -4717,7 +4735,7 @@ DisplayGUISpeed: ;Speed Options
|
|||||||
xor eax,eax
|
xor eax,eax
|
||||||
mov al,[EmuSpeed]
|
mov al,[EmuSpeed]
|
||||||
shl eax,1
|
shl eax,1
|
||||||
mov dword[GUITemp],12
|
mov dword[GUITemp],11
|
||||||
add [GUITemp],eax
|
add [GUITemp],eax
|
||||||
GUIDisplayIconWin 21,[GUITemp],171,GUIIconDataSlideBar
|
GUIDisplayIconWin 21,[GUITemp],171,GUIIconDataSlideBar
|
||||||
mov dword[GUISpeedTextD1],0
|
mov dword[GUISpeedTextD1],0
|
||||||
|
|||||||
@@ -19,6 +19,8 @@
|
|||||||
|
|
||||||
|
|
||||||
%include "macros.mac"
|
%include "macros.mac"
|
||||||
|
%include "video/2xsaimmx.inc"
|
||||||
|
%include "video/copyvid.inc"
|
||||||
|
|
||||||
EXTSYM BGMA,V8Mode,antienab,cacheud,cbitmode,ccud,cfield,cgram,coladdb,coladdg
|
EXTSYM BGMA,V8Mode,antienab,cacheud,cbitmode,ccud,cfield,cgram,coladdb,coladdg
|
||||||
EXTSYM coladdr,curblank,curfps,cvidmode,delay,extlatch,fnamest,En2xSaI
|
EXTSYM coladdr,curblank,curfps,cvidmode,delay,extlatch,fnamest,En2xSaI
|
||||||
@@ -38,14 +40,11 @@ EXTSYM intrlng,mode7hr,newgfx16b,vesa2_clbitng,vesa2_clbitng2,CSStatus
|
|||||||
EXTSYM CSStatus2,CSStatus3,SpecialLine,Clear2xSaIBuffer,vidbufferofsb,bg1scroly
|
EXTSYM CSStatus2,CSStatus3,SpecialLine,Clear2xSaIBuffer,vidbufferofsb,bg1scroly
|
||||||
EXTSYM bg1objptr,DecompAPtr,HalfTransB,HalfTransC,cur_zst_size,old_zst_size
|
EXTSYM bg1objptr,DecompAPtr,HalfTransB,HalfTransC,cur_zst_size,old_zst_size
|
||||||
EXTSYM MovieProcessing,mzt_chdir,UpChdir,MovieFrameStr,GetMovieFrameStr
|
EXTSYM MovieProcessing,mzt_chdir,UpChdir,MovieFrameStr,GetMovieFrameStr
|
||||||
EXTSYM MovieDisplayFrame
|
EXTSYM MovieDisplayFrame,SloMo,MouseCount,device2
|
||||||
EXTSYM MouseCount,device2
|
|
||||||
|
|
||||||
%ifndef __MSDOS__
|
%ifndef __MSDOS__
|
||||||
EXTSYM MouseMoveX,MouseMoveY,MouseButtons,MultiMouseProcess,mouse
|
EXTSYM MouseMoveX,MouseMoveY,MouseButtons,MultiMouseProcess,mouse
|
||||||
%endif
|
%else
|
||||||
|
|
||||||
%ifdef __MSDOS__
|
|
||||||
EXTSYM SB_blank,vsyncon,Triplebufen,granadd
|
EXTSYM SB_blank,vsyncon,Triplebufen,granadd
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
@@ -54,7 +53,6 @@ NEWSYM ScreenScale, resb 1 ; If horizontal is scaled or not
|
|||||||
NEWSYM TempDebugV, resw 1 ; Temporary Debugging variable
|
NEWSYM TempDebugV, resw 1 ; Temporary Debugging variable
|
||||||
SECTION .text
|
SECTION .text
|
||||||
|
|
||||||
|
|
||||||
%macro MMXStuff 0
|
%macro MMXStuff 0
|
||||||
%%1
|
%%1
|
||||||
movq mm0,[esi]
|
movq mm0,[esi]
|
||||||
@@ -67,56 +65,7 @@ SECTION .text
|
|||||||
jnz %%1
|
jnz %%1
|
||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
%macro FPUStuff 1
|
|
||||||
FILD QWORD[ESI+%1*16]
|
|
||||||
FILD QWORD[ESI+8+%1*16]
|
|
||||||
FISTP QWORD[ES:EDI+8+%1*16]
|
|
||||||
FISTP QWORD[ES:EDI+%1*16]
|
|
||||||
%endmacro
|
|
||||||
|
|
||||||
%MACRO CopyFPU 0
|
|
||||||
%ENDMACRO
|
|
||||||
|
|
||||||
%include "video/2xsaimmx.inc"
|
|
||||||
%include "video/copyvid.inc"
|
|
||||||
|
|
||||||
SECTION .text
|
SECTION .text
|
||||||
NEWSYM FPUZero
|
|
||||||
%if 0
|
|
||||||
|
|
||||||
; omg this is lame ;P
|
|
||||||
mov [.Zero],eax
|
|
||||||
mov [.Zero+4],eax
|
|
||||||
mov [.Zero2],eax
|
|
||||||
mov [.Zero2+4],eax
|
|
||||||
.TopOfLoop
|
|
||||||
FILD QWORD[.Zero]
|
|
||||||
FILD QWORD[.Zero2]
|
|
||||||
FXCH
|
|
||||||
FISTP QWORD[EDI]
|
|
||||||
FISTP QWORD[EDI+8]
|
|
||||||
ADD EDI,16
|
|
||||||
DEC ECX
|
|
||||||
JNZ .TopOfLoop
|
|
||||||
%else
|
|
||||||
fld1
|
|
||||||
fsub st0,st0
|
|
||||||
.TopOfLoop
|
|
||||||
fst qword[edi]
|
|
||||||
fst qword[edi+8]
|
|
||||||
add edi,16
|
|
||||||
dec ecx
|
|
||||||
jnz .TopOfLoop
|
|
||||||
fstp st0
|
|
||||||
%endif
|
|
||||||
ret
|
|
||||||
|
|
||||||
%if 0
|
|
||||||
SECTION .bss
|
|
||||||
.Zero resd 2
|
|
||||||
.Zero2 resd 2
|
|
||||||
SECTION .text
|
|
||||||
%endif
|
|
||||||
|
|
||||||
;*******************************************************
|
;*******************************************************
|
||||||
; ShowVideo Processes & displays video
|
; ShowVideo Processes & displays video
|
||||||
@@ -548,118 +497,119 @@ NEWSYM outputhex16
|
|||||||
|
|
||||||
SECTION .data
|
SECTION .data
|
||||||
NEWSYM ASCII2Font
|
NEWSYM ASCII2Font
|
||||||
db 00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h
|
db 00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h
|
||||||
db 00h,00h,00h,00h,00h,00h,00h,00h,00h,30h,00h,00h,00h,00h,00h,00h
|
db 00h,00h,00h,00h,00h,00h,00h,00h,00h,30h,00h,00h,00h,00h,00h,00h
|
||||||
db 00h,3Eh,33h,31h,3Fh,37h,2Fh,3Dh,3Ah,3Bh,35h,38h,39h,25h,28h,29h
|
db 00h,3Eh,33h,31h,3Fh,37h,2Fh,3Dh,3Ah,3Bh,35h,38h,39h,25h,28h,29h
|
||||||
db 01h,02h,03h,04h,05h,06h,07h,08h,09h,0Ah,2Eh,40h,2Ah,32h,2Bh,36h
|
db 01h,02h,03h,04h,05h,06h,07h,08h,09h,0Ah,2Eh,40h,2Ah,32h,2Bh,36h
|
||||||
db 3Ch,0Bh,0Ch,0Dh,0Eh,0Fh,10h,11h,12h,13h,14h,15h,16h,17h,18h,19h
|
db 3Ch,0Bh,0Ch,0Dh,0Eh,0Fh,10h,11h,12h,13h,14h,15h,16h,17h,18h,19h
|
||||||
db 1Ah,1Bh,1Ch,1Dh,1Eh,1Fh,20h,21h,22h,23h,24h,2Ch,34h,2Dh,42h,26h
|
db 1Ah,1Bh,1Ch,1Dh,1Eh,1Fh,20h,21h,22h,23h,24h,2Ch,34h,2Dh,42h,26h
|
||||||
db 41h,0Bh,0Ch,0Dh,0Eh,0Fh,10h,11h,12h,13h,14h,15h,16h,17h,18h,19h
|
db 41h,0Bh,0Ch,0Dh,0Eh,0Fh,10h,11h,12h,13h,14h,15h,16h,17h,18h,19h
|
||||||
db 1Ah,1Bh,1Ch,1Dh,1Eh,1Fh,20h,21h,22h,23h,24h,43h,00h,44h,27h,00h
|
db 1Ah,1Bh,1Ch,1Dh,1Eh,1Fh,20h,21h,22h,23h,24h,43h,00h,44h,27h,00h
|
||||||
db 0Dh,1Fh,0Fh,0Bh,0Bh,0Bh,0Bh,0Dh,0Fh,0Fh,0Fh,13h,13h,13h,0Bh,0Bh
|
db 0Dh,1Fh,0Fh,0Bh,0Bh,0Bh,0Bh,0Dh,0Fh,0Fh,0Fh,13h,13h,13h,0Bh,0Bh
|
||||||
db 0Fh,0Bh,0Bh,19h,19h,19h,1Fh,1Fh,23h,19h,1Fh,0Dh,10h,23h,1Ah,10h
|
db 0Fh,0Bh,0Bh,19h,19h,19h,1Fh,1Fh,23h,19h,1Fh,0Dh,10h,23h,1Ah,10h
|
||||||
db 0Bh,4Eh,4Fh,50h,51h,52h,53h,54h,55h,56h,57h,58h,59h,5Ah,5Bh,5Ch
|
db 0Bh,4Eh,4Fh,50h,51h,52h,53h,54h,55h,56h,57h,58h,59h,5Ah,5Bh,5Ch
|
||||||
db 5Dh,5Eh,5Fh,60h,61h,62h,63h,64h,65h,66h,67h,68h,69h,6Ah,6Bh,6Ch
|
db 5Dh,5Eh,5Fh,60h,61h,62h,63h,64h,65h,66h,67h,68h,69h,6Ah,6Bh,6Ch
|
||||||
db 6Dh,6Eh,6Fh,70h,71h,72h,73h,74h,75h,76h,77h,78h,79h,7Ah,7Bh,7Ch
|
db 6Dh,6Eh,6Fh,70h,71h,72h,73h,74h,75h,76h,77h,78h,79h,7Ah,7Bh,7Ch
|
||||||
db 7Dh,7Eh,7Fh,80h,81h,82h,83h,84h,85h,86h,87h,88h,89h,8Ah,8Bh,8Ch
|
db 7Dh,7Eh,7Fh,80h,81h,82h,83h,84h,85h,86h,87h,88h,89h,8Ah,8Bh,8Ch
|
||||||
db 00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h
|
db 00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h
|
||||||
db 00h,00h,00h,00h,00h,00h,00h,4Dh,4Ch,4Bh,4Ah,45h,46h,47h,48h,49h
|
db 00h,00h,00h,00h,00h,00h,00h,4Dh,4Ch,4Bh,4Ah,45h,46h,47h,48h,49h
|
||||||
|
|
||||||
NEWSYM FontData
|
NEWSYM FontData
|
||||||
db 0,0,0,0,0,0,0,0
|
; bitmap 8x8 font ; char, offset for ASCII2Font
|
||||||
db 01111100b,11000110b,11001110b,11010110b ; 0, 01
|
db 0,0,0,0,0,0,0,0 ; ' ', 00
|
||||||
|
db 01111100b,11000110b,11001110b,11010110b ; 0, 01
|
||||||
db 11100110b,11000110b,01111100b,00000000b
|
db 11100110b,11000110b,01111100b,00000000b
|
||||||
db 00011000b,00111000b,01111000b,00011000b ; 1, 02
|
db 00011000b,00111000b,01111000b,00011000b ; 1, 02
|
||||||
db 00011000b,00011000b,01111110b,00000000b
|
db 00011000b,00011000b,01111110b,00000000b
|
||||||
db 01111100b,11000110b,00001100b,00011000b ; 2, 03
|
db 01111100b,11000110b,00001100b,00011000b ; 2, 03
|
||||||
db 00110000b,01100110b,11111110b,00000000b
|
db 00110000b,01100110b,11111110b,00000000b
|
||||||
db 01111100b,11000110b,00000110b,00111100b ; 3, 04
|
db 01111100b,11000110b,00000110b,00111100b ; 3, 04
|
||||||
db 00000110b,11000110b,01111100b,00000000b
|
db 00000110b,11000110b,01111100b,00000000b
|
||||||
db 00111100b,01101100b,11001100b,11111110b ; 4, 05
|
db 00111100b,01101100b,11001100b,11111110b ; 4, 05
|
||||||
db 00001100b,00001100b,00001100b,00000000b
|
db 00001100b,00001100b,00001100b,00000000b
|
||||||
db 11111110b,11000000b,11000000b,11111100b ; 5, 06
|
db 11111110b,11000000b,11000000b,11111100b ; 5, 06
|
||||||
db 00000110b,11000110b,01111100b,00000000b
|
db 00000110b,11000110b,01111100b,00000000b
|
||||||
db 00111100b,01100000b,11000000b,11111100b ; 6, 07
|
db 00111100b,01100000b,11000000b,11111100b ; 6, 07
|
||||||
db 11000110b,11000110b,01111100b,00000000b
|
db 11000110b,11000110b,01111100b,00000000b
|
||||||
db 11111110b,11000110b,00000110b,00001100b ; 7, 08
|
db 11111110b,11000110b,00000110b,00001100b ; 7, 08
|
||||||
db 00011000b,00011000b,00011000b,00000000b
|
db 00011000b,00011000b,00011000b,00000000b
|
||||||
db 01111100b,11000110b,11000110b,01111100b ; 8, 09
|
db 01111100b,11000110b,11000110b,01111100b ; 8, 09
|
||||||
db 11000110b,11000110b,01111100b,00000000b
|
db 11000110b,11000110b,01111100b,00000000b
|
||||||
db 01111100b,11000110b,11000110b,01111110b ; 9, 0A
|
db 01111100b,11000110b,11000110b,01111110b ; 9, 0A
|
||||||
db 00000110b,11000110b,01111100b,00000000b
|
db 00000110b,11000110b,01111100b,00000000b
|
||||||
db 00111000b,01101100b,11000110b,11111110b ; A, 0B
|
db 00111000b,01101100b,11000110b,11111110b ; A, 0B
|
||||||
db 11000110b,11000110b,11000110b,00000000b
|
db 11000110b,11000110b,11000110b,00000000b
|
||||||
db 11111100b,11000110b,11000110b,11111100b ; B, 0C
|
db 11111100b,11000110b,11000110b,11111100b ; B, 0C
|
||||||
db 11000110b,11000110b,11111100b,00000000b
|
db 11000110b,11000110b,11111100b,00000000b
|
||||||
db 01111100b,11000110b,11000000b,11000000b ; C, 0D
|
db 01111100b,11000110b,11000000b,11000000b ; C, 0D
|
||||||
db 11000000b,11000110b,01111100b,00000000b
|
db 11000000b,11000110b,01111100b,00000000b
|
||||||
db 11111100b,11000110b,11000110b,11000110b ; D, 0E
|
db 11111100b,11000110b,11000110b,11000110b ; D, 0E
|
||||||
db 11000110b,11000110b,11111100b,00000000b
|
db 11000110b,11000110b,11111100b,00000000b
|
||||||
db 11111110b,11000000b,11000000b,11111000b ; E, 0F
|
db 11111110b,11000000b,11000000b,11111000b ; E, 0F
|
||||||
db 11000000b,11000000b,11111110b,00000000b
|
db 11000000b,11000000b,11111110b,00000000b
|
||||||
db 11111110b,11000000b,11000000b,11111000b ; F, 10
|
db 11111110b,11000000b,11000000b,11111000b ; F, 10
|
||||||
db 11000000b,11000000b,11000000b,00000000b
|
db 11000000b,11000000b,11000000b,00000000b
|
||||||
db 01111100b,11000110b,11000000b,11000000b ; G, 11
|
db 01111100b,11000110b,11000000b,11000000b ; G, 11
|
||||||
db 11001110b,11000110b,01111100b,00000000b
|
db 11001110b,11000110b,01111100b,00000000b
|
||||||
db 11000110b,11000110b,11000110b,11111110b ; H, 12
|
db 11000110b,11000110b,11000110b,11111110b ; H, 12
|
||||||
db 11000110b,11000110b,11000110b,00000000b
|
db 11000110b,11000110b,11000110b,00000000b
|
||||||
db 00111100b,00011000b,00011000b,00011000b ; I, 13
|
db 00111100b,00011000b,00011000b,00011000b ; I, 13
|
||||||
db 00011000b,00011000b,00111100b,00000000b
|
db 00011000b,00011000b,00111100b,00000000b
|
||||||
db 00011110b,00001100b,00001100b,00001100b ; J, 14
|
db 00011110b,00001100b,00001100b,00001100b ; J, 14
|
||||||
db 00001100b,11001100b,00111100b,00000000b
|
db 00001100b,11001100b,00111100b,00000000b
|
||||||
db 11001100b,11011000b,11110000b,11100000b ; K, 15
|
db 11001100b,11011000b,11110000b,11100000b ; K, 15
|
||||||
db 11110000b,11011000b,11001100b,00000000b
|
db 11110000b,11011000b,11001100b,00000000b
|
||||||
db 11000000b,11000000b,11000000b,11000000b ; L, 16
|
db 11000000b,11000000b,11000000b,11000000b ; L, 16
|
||||||
db 11000000b,11000000b,11111110b,00000000b
|
db 11000000b,11000000b,11111110b,00000000b
|
||||||
db 11000110b,11101110b,11111110b,11010110b ; M, 17
|
db 11000110b,11101110b,11111110b,11010110b ; M, 17
|
||||||
db 11000110b,11000110b,11000110b,00000000b
|
db 11000110b,11000110b,11000110b,00000000b
|
||||||
db 11000110b,11100110b,11110110b,11011110b ; N, 18
|
db 11000110b,11100110b,11110110b,11011110b ; N, 18
|
||||||
db 11001110b,11000110b,11000110b,00000000b
|
db 11001110b,11000110b,11000110b,00000000b
|
||||||
db 01111100b,11000110b,11000110b,11000110b ; O, 19
|
db 01111100b,11000110b,11000110b,11000110b ; O, 19
|
||||||
db 11000110b,11000110b,01111100b,00000000b
|
db 11000110b,11000110b,01111100b,00000000b
|
||||||
db 11111100b,11000110b,11000110b,11111100b ; P, 1A
|
db 11111100b,11000110b,11000110b,11111100b ; P, 1A
|
||||||
db 11000000b,11000000b,11000000b,00000000b
|
db 11000000b,11000000b,11000000b,00000000b
|
||||||
db 01111100b,11000110b,11000110b,11000110b ; Q, 1B
|
db 01111100b,11000110b,11000110b,11000110b ; Q, 1B
|
||||||
db 11010110b,11001110b,01111110b,00000000b
|
db 11010110b,11001110b,01111110b,00000000b
|
||||||
db 11111100b,11000110b,11000110b,11111100b ; R, 1C
|
db 11111100b,11000110b,11000110b,11111100b ; R, 1C
|
||||||
db 11001100b,11000110b,11000110b,00000000b
|
db 11001100b,11000110b,11000110b,00000000b
|
||||||
db 01111100b,11000110b,11000000b,01111100b ; S, 1D
|
db 01111100b,11000110b,11000000b,01111100b ; S, 1D
|
||||||
db 00000110b,11000110b,01111100b,00000000b
|
db 00000110b,11000110b,01111100b,00000000b
|
||||||
db 01111110b,00011000b,00011000b,00011000b ; T, 1E
|
db 01111110b,00011000b,00011000b,00011000b ; T, 1E
|
||||||
db 00011000b,00011000b,00011000b,00000000b
|
db 00011000b,00011000b,00011000b,00000000b
|
||||||
db 11000110b,11000110b,11000110b,11000110b ; U, 1F
|
db 11000110b,11000110b,11000110b,11000110b ; U, 1F
|
||||||
db 11000110b,11000110b,01111100b,00000000b
|
db 11000110b,11000110b,01111100b,00000000b
|
||||||
db 11000110b,11000110b,11000110b,11000110b ; V, 20
|
db 11000110b,11000110b,11000110b,11000110b ; V, 20
|
||||||
db 01101100b,00111000b,00010000b,00000000b
|
db 01101100b,00111000b,00010000b,00000000b
|
||||||
db 11000110b,11000110b,11000110b,11010110b ; W, 21
|
db 11000110b,11000110b,11000110b,11010110b ; W, 21
|
||||||
db 11010110b,11111110b,01101100b,00000000b
|
db 11010110b,11111110b,01101100b,00000000b
|
||||||
db 11000110b,01101100b,00111000b,00010000b ; X, 22
|
db 11000110b,01101100b,00111000b,00010000b ; X, 22
|
||||||
db 00111000b,01101100b,11000110b,00000000b
|
db 00111000b,01101100b,11000110b,00000000b
|
||||||
db 11001100b,11001100b,01111000b,00110000b ; Y, 23
|
db 11001100b,11001100b,01111000b,00110000b ; Y, 23
|
||||||
db 00110000b,00110000b,00110000b,00000000b
|
db 00110000b,00110000b,00110000b,00000000b
|
||||||
db 11111100b,10001100b,00011000b,00110000b ; Z, 24
|
db 11111100b,10001100b,00011000b,00110000b ; Z, 24
|
||||||
db 01100000b,11000100b,11111100b,00000000b
|
db 01100000b,11000100b,11111100b,00000000b
|
||||||
db 00000000b,00000000b,00000000b,11111110b ; -, 25
|
db 00000000b,00000000b,00000000b,11111110b ; -, 25
|
||||||
db 00000000b,00000000b,00000000b,00000000b
|
db 00000000b,00000000b,00000000b,00000000b
|
||||||
db 00000000b,00000000b,00000000b,00000000b ; _, 26
|
db 00000000b,00000000b,00000000b,00000000b ; _, 26
|
||||||
db 00000000b,00000000b,11111110b,00000000b
|
db 00000000b,00000000b,11111110b,00000000b
|
||||||
db 01110000b,11011100b,00000110b,00000000b ; ~, 27
|
db 01110000b,11011100b,00000110b,00000000b ; ~, 27
|
||||||
db 00000000b,00000000b,00000000b,00000000b
|
db 00000000b,00000000b,00000000b,00000000b
|
||||||
db 00000000b,00000000b,00000000b,00000000b ; ., 28
|
db 00000000b,00000000b,00000000b,00000000b ; ., 28
|
||||||
db 00000000b,00110000b,00110000b,00000000b
|
db 00000000b,00110000b,00110000b,00000000b
|
||||||
db 00000010b,00000100b,00001000b,00010000b ; /, 29
|
db 00000010b,00000100b,00001000b,00010000b ; /, 29
|
||||||
db 00100000b,01000000b,10000000b,00000000b
|
db 00100000b,01000000b,10000000b,00000000b
|
||||||
db 00001100b,00011000b,00110000b,01100000b ; <, 2A
|
db 00001100b,00011000b,00110000b,01100000b ; <, 2A
|
||||||
db 00110000b,00011000b,00001100b,00000000b
|
db 00110000b,00011000b,00001100b,00000000b
|
||||||
db 01100000b,00110000b,00011000b,00001100b ; >, 2B
|
db 01100000b,00110000b,00011000b,00001100b ; >, 2B
|
||||||
db 00011000b,00110000b,01100000b,00000000b
|
db 00011000b,00110000b,01100000b,00000000b
|
||||||
db 00111000b,00100000b,00100000b,00100000b ; [, 2C
|
db 00111000b,00100000b,00100000b,00100000b ; [, 2C
|
||||||
db 00100000b,00100000b,00111000b,00000000b
|
db 00100000b,00100000b,00111000b,00000000b
|
||||||
db 00111000b,00001000b,00001000b,00001000b ; ], 2D
|
db 00111000b,00001000b,00001000b,00001000b ; ], 2D
|
||||||
db 00001000b,00001000b,00111000b,00000000b
|
db 00001000b,00001000b,00111000b,00000000b
|
||||||
db 00000000b,00011000b,00011000b,00000000b ; :, 2E
|
db 00000000b,00011000b,00011000b,00000000b ; :, 2E
|
||||||
db 00011000b,00011000b,00000000b,00000000b
|
db 00011000b,00011000b,00000000b,00000000b
|
||||||
db 00011000b,00100100b,00011000b,00111010b ; &, 2F
|
db 00011000b,00100100b,00011000b,00111010b ; &, 2F
|
||||||
db 01000100b,01000110b,00111010b,00000000b
|
db 01000100b,01000110b,00111010b,00000000b
|
||||||
; Arrow, 30
|
; Arrow, 30
|
||||||
; #, 31 (, 3A {, 43
|
; #, 31 (, 3A {, 43
|
||||||
@@ -2607,22 +2557,29 @@ SECTION .text
|
|||||||
;*******************************************************
|
;*******************************************************
|
||||||
|
|
||||||
NEWSYM showfps
|
NEWSYM showfps
|
||||||
mov cl,50
|
mov al,60
|
||||||
cmp byte[romispal],0
|
cmp byte[romispal],0
|
||||||
jne .nontsc
|
je .ntsc
|
||||||
mov cl,60
|
mov al,50
|
||||||
.nontsc
|
.ntsc
|
||||||
inc byte[curfps]
|
inc byte[curfps]
|
||||||
cmp byte[nextframe],cl
|
cmp byte[nextframe],al
|
||||||
jb .nofrc
|
jb .nofrc
|
||||||
mov al,[curfps]
|
mov cl,[curfps]
|
||||||
mov [lastfps],al
|
mov [lastfps],cl
|
||||||
mov al,[curfps2]
|
mov cl,[curfps2]
|
||||||
mov [lastfps2],al
|
mov [lastfps2],cl
|
||||||
mov byte[curfps],0
|
mov byte[curfps],0
|
||||||
mov byte[curfps2],0
|
mov byte[curfps2],0
|
||||||
sub byte[nextframe],cl
|
sub byte[nextframe],al
|
||||||
.nofrc
|
.nofrc
|
||||||
|
mov cl,[SloMo]
|
||||||
|
cmp cl,0
|
||||||
|
je .noslw
|
||||||
|
inc cl
|
||||||
|
div cl
|
||||||
|
.noslw
|
||||||
|
mov cl,al
|
||||||
|
|
||||||
cmp byte[cbitmode],1
|
cmp byte[cbitmode],1
|
||||||
je near .do16b
|
je near .do16b
|
||||||
@@ -2660,73 +2617,50 @@ NEWSYM showfps
|
|||||||
ret
|
ret
|
||||||
|
|
||||||
.do16b
|
.do16b
|
||||||
mov al,[lastfps]
|
mov esi,208*288*2+48*2
|
||||||
mov bl,10
|
add esi,[vidbuffer]
|
||||||
xor ah,ah
|
mov al,[lastfps]
|
||||||
div bl
|
push ecx
|
||||||
shl al,4
|
xor ecx,ecx
|
||||||
add ah,al
|
.strloop
|
||||||
mov al,ah
|
xor ah,ah
|
||||||
mov esi,208*288*2+32*2
|
add al,48
|
||||||
add esi,[vidbuffer]
|
sub esi,8*2
|
||||||
push ecx
|
.asciiloop16b
|
||||||
call outputhex16
|
cmp al,58
|
||||||
|
jb .h2adone16b
|
||||||
|
inc ah
|
||||||
|
sub al,10
|
||||||
|
jmp .asciiloop16b
|
||||||
|
.h2adone16b
|
||||||
|
mov cl,al
|
||||||
|
mov al,[ASCII2Font+ecx]
|
||||||
|
call outputchar16b
|
||||||
|
mov al,ah
|
||||||
|
or al,al
|
||||||
|
jnz .strloop
|
||||||
|
|
||||||
mov esi,208*288*2+48*2
|
mov esi,208*288*2+48*2
|
||||||
add esi,[vidbuffer]
|
add esi,[vidbuffer]
|
||||||
mov al,29h
|
mov al,41 ; '/'
|
||||||
call outputchar16b
|
call outputchar16b
|
||||||
pop ecx
|
pop ecx
|
||||||
|
|
||||||
mov al,cl
|
mov al,cl
|
||||||
mov bl,10
|
mov bl,10
|
||||||
xor ah,ah
|
xor ah,ah
|
||||||
div bl
|
div bl
|
||||||
shl al,4
|
shl al,4
|
||||||
add ah,al
|
add ah,al
|
||||||
mov al,ah
|
mov al,ah
|
||||||
mov esi,208*288*2+56*2
|
mov esi,208*288*2+56*2
|
||||||
add esi,[vidbuffer]
|
add esi,[vidbuffer]
|
||||||
call outputhex16
|
call outputhex16
|
||||||
ret
|
ret
|
||||||
|
|
||||||
.ng16b
|
|
||||||
mov byte[ngfont],1
|
|
||||||
|
|
||||||
mov al,[lastfps]
|
|
||||||
mov bl,10
|
|
||||||
xor ah,ah
|
|
||||||
div bl
|
|
||||||
shl al,4
|
|
||||||
add ah,al
|
|
||||||
mov al,ah
|
|
||||||
mov esi,208*288+32
|
|
||||||
add esi,[vidbuffer]
|
|
||||||
push ecx
|
|
||||||
call outputhex
|
|
||||||
|
|
||||||
mov esi,208*288+48
|
|
||||||
add esi,[vidbuffer]
|
|
||||||
mov al,29h
|
|
||||||
call outputchar
|
|
||||||
pop ecx
|
|
||||||
|
|
||||||
mov al,cl
|
|
||||||
mov bl,10
|
|
||||||
xor ah,ah
|
|
||||||
div bl
|
|
||||||
shl al,4
|
|
||||||
add ah,al
|
|
||||||
mov al,ah
|
|
||||||
mov esi,208*288+56
|
|
||||||
add esi,[vidbuffer]
|
|
||||||
call outputhex
|
|
||||||
ret
|
|
||||||
|
|
||||||
SECTION .bss
|
SECTION .bss
|
||||||
NEWSYM spcdebugaddr, resd 1
|
NEWSYM spcdebugaddr, resd 1
|
||||||
NEWSYM tempoffset, resw 1
|
NEWSYM tempoffset, resw 1
|
||||||
|
|
||||||
NEWSYM Testval, resd 1
|
NEWSYM Testval, resd 1
|
||||||
SECTION .text
|
SECTION .text
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user