⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 guiwindp.inc

📁 十七种模拟器源代码 非常有用的作课程设计不可缺少的
💻 INC
📖 第 1 页 / 共 5 页
字号:
    mov dword[GUITemp],GUIIconDataCheckBoxUC
    cmp byte[SRAMSave5Sec],0
    je .nocheckbox9
    mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox9
    GUIDisplayIconWin 4,11,126,[GUITemp]
    mov dword[GUITemp],GUIIconDataCheckBoxUC
    cmp byte[OldGfxMode2],0
    je .nocheckbox10
    mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox10
    GUIDisplayIconWin 4,11,136,[GUITemp]
    mov dword[GUITemp],GUIIconDataCheckBoxUC
    cmp byte[LatestSave],0
    je .nocheckbox11
    mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox11
    GUIDisplayIconWin 4,11,146,[GUITemp]
    mov dword[GUITemp],GUIIconDataCheckBoxUC
    cmp byte[AutoState],0
    je .nocheckbox12
    mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox12
    GUIDisplayIconWin 4,11,156,[GUITemp]
    mov dword[GUITemp],GUIIconDataCheckBoxUC
    cmp byte[DontSavePath],0
    je .nocheckbox13
    mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox13
    GUIDisplayIconWin 4,11,166,[GUITemp]
%ifdef __WIN32__
    mov dword[GUITemp],GUIIconDataCheckBoxUC
    cmp byte[DisableScreenSaver],0
    je .nocheckbox14
    mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox14
    GUIDisplayIconWin 4,11,176,[GUITemp]
    mov dword[GUITemp],GUIIconDataCheckBoxUC
    cmp byte[AlternateTimer],0
    je .win323
    mov dword[GUITemp],GUIIconDataCheckBoxC
.win323
    GUIDisplayIconWin 4,11,186,[GUITemp]
%endif
    cmp byte[frameskip],0
    je near .auto
    DrawGUIWinBox 4,75,13,93,21,167
    mov al,[frameskip]
    add al,47
    mov [GUIOptionText8],al
    mov byte[GUItextcolor],223
    GUIOuttextwin2 4,85,16,GUIOptionText8
    mov byte[GUItextcolor],221
    cmp byte[GUIWincoladd],0
    je .zero4
    mov byte[GUItextcolor],222
.zero4
    GUIOuttextwin2 4,84,15,GUIOptionText8
    mov byte[GUItextcolor],217
    cmp byte[GUIWincoladd],0
    je .zero6
    mov byte[GUItextcolor],211
.zero6
    DrawGUIButton 4,97,12,105,22,GUIOptionText9,12,-2,0
    DrawGUIButton 4,108,12,116,22,GUIOptionText10,13,-2,0
    ret
.auto
    DrawGUIWinBox 4,96,13,114,21,167
    mov al,[maxskip]
    add al,48
    mov [GUIOptionText8],al
    mov byte[GUItextcolor],223
    GUIOuttextwin2 4,107,16,GUIOptionText8
    mov byte[GUItextcolor],221
    cmp byte[GUIWincoladd],0
    je .zero5
    mov byte[GUItextcolor],222
.zero5
    GUIOuttextwin2 4,106,15,GUIOptionText8
    mov byte[GUItextcolor],217
    cmp byte[GUIWincoladd],0
    je .zero7
    mov byte[GUItextcolor],211
.zero7
    DrawGUIButton 4,118,12,126,22,GUIOptionText9,12,-2,0
    DrawGUIButton 4,129,12,137,22,GUIOptionText10,13,-2,0
    ret

GUIOptionText1 db 'FRAME RATE',0
GUIOptionText2 db 'AUTO FRAME RATE',0
GUIOptionText3 db 'MAX FRAME SKIP',0
GUIOptionText4 db 'NEW GFX ENGINE',0
GUIOptionText5 db 'VSYNC',0
GUIOptionText6 db 'MMX SUPPORT',0
GUIOptionText7 db 'USE PL3/4 AS PL1/2',0
GUIOptionTextA db 'SIDEWINDER FIX',0
GUIOptionTextAb db 'HIGH PRIORITY MODE',0
GUIOptionTextB db 'FPS AT START',0
GUIOptionTextC db 'USE 30HZ FOR TURBO',0
GUIOptionTextD db 'ENABLE GAME CLOCK',0
GUIOptionTextE db 'TOGGLED FAST FWD',0
GUIOptionTextF db 'SRAM CHECK+SAVE',0
GUIOptionTextG db 'OLD GFX MODE 2',0
GUIOptionTextH db 'START AT LATEST SAVE',0
GUIOptionTextI db 'AUTO STATE SAVE/LOAD',0
GUIOptionTextJ db 'DON',39,'T SAVE CURRENT PATH',0
GUIOptionTextK db 'DISABLE SCREENSAVER',0
GUIOptionTextL db 'USE ALTERNATE TIMER',0
GUIOptionText8 db '-',0
GUIOptionText9 db '+',0
GUIOptionText10 db '-',0

DisplayGUIVideo:
    cmp byte[TripBufAvail],0
    jne .notexttb
    mov byte[Triplebufen],0
.notexttb
    cmp byte[FPUCopy],2
    jne .2xSaIdis
    cmp byte[newgfx16b],0
    je .2xSaIdis
    jmp .no2xSaIdis
.2xSaIdis
    mov byte[En2xSaI],0
.no2xSaIdis
    cmp byte[En2xSaI],0
    je .no2xsaidis
    mov byte[Triplebufen],0
.no2xsaidis
    cmp byte[En2xSaI],0
    je .no2xsaien
    mov byte[scanlines],0
    mov byte[antienab],0
.no2xsaien
    ; Video Modes List/Scanlines/Interpolation/Full(Small) Screen
    GUIDrawWindowBox 5,GUIVideoDisp
    mov byte[GUItextcolor],217
    cmp byte[GUIWincoladd],0
    je .zero
    mov byte[GUItextcolor],211
.zero
    sub byte[GUItextcolor],15

;    cmp byte[OSPort],3
;    jne near .nowin32pt2
%ifndef __MSDOS__
    GUIOuttextwin2 5,12,76,GUIVideoTextw0
    GUIOuttextwin2 5,12,83,GUIVideoTextw1
    GUIOuttextwin2 5,12,90,GUIVideoTextw2
    GUIOuttextwin2 5,12,97,GUIVideoTextw3
%endif
;.nowin32pt2

    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUISLVID+eax],0
    je .notext2
.notext2
    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUIHSVID+eax],0
    je near .notexta
    GUIOuttextwin2 5,13,111,GUIVideoTextb
    GUIOuttextwin2 5,36,119,GUIVideoTexta
    GUIOuttextwin2 5,76,119,GUIVideoTexta2
    GUIOuttextwin2 5,116,119,GUIVideoTexta3
.notexta
    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUITBWVID+eax],0
    je near .nottbw
    GUIOuttextwin2 5,26,128,GUIVideoText7
.nottbw
    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUI2xVID+eax],0
    je near .notextb
    GUIOuttextwin2 5,26,138,GUIVideoTextc
    GUIOuttextwin2 5,26,148,GUIVideoTextd
    GUIOuttextwin2 5,26,158,GUIVideoTextd2
.notextb
    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUII2VID+eax],0
    je near .notextb2
    GUIOuttextwin2 5,26,168,GUIVideoText3
.notextb2
    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUIBIFIL+eax],0
    je near .notextbf2
    GUIOuttextwin2 5,26,168,GUIVideoTextbf
.notextbf2
    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUIINVID+eax],0
    je .notext3
    GUIOuttextwin2 5,26,83,GUIVideoText3
.notext3
    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUIEAVID+eax],0
    je .notext4
    GUIOuttextwin2 5,26,83,GUIVideoText4
.notext4
    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUIFSVID+eax],0
    je .notext5
    GUIOuttextwin2 5,26,93,GUIVideoText5
.notext5
    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUISSVID+eax],0
    je .notext6
    GUIOuttextwin2 5,26,103,GUIVideoText6
.notext6
    xor eax,eax
    mov al,[cvidmode]
    cmp byte[TripBufAvail],0
    je near .notext7
    cmp byte[GUITBVID+eax],0
    je .notext7
    GUIOuttextwin2 5,26,168,GUIVideoText7
.notext7
    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUIM7VID+eax],0
    je .notext8
    cmp byte[newengen],0
    je .notext8
    GUIOuttextwin2 5,26,178,GUIVideoText8b
.notext8
%ifndef __MSDOS__
    GUIOuttextwin2 5,26,188,GUIVideoText8c
%endif
    add byte[GUItextcolor],15

;    cmp byte[OSPort],3
;    jne near .nowin32pt
%ifndef __MSDOS__
    GUIOuttextwin2 5,11,75,GUIVideoTextw0
    GUIOuttextwin2 5,11,82,GUIVideoTextw1
    GUIOuttextwin2 5,11,89,GUIVideoTextw2
    GUIOuttextwin2 5,11,96,GUIVideoTextw3
%endif
;.nowin32pt
    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUISLVID+eax],0
    je .notext2b
.notext2b
    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUIHSVID+eax],0
    je near .notextab
    GUIOuttextwin2 5,12,110,GUIVideoTextb
    GUIOuttextwin2 5,35,118,GUIVideoTexta
    GUIOuttextwin2 5,75,118,GUIVideoTexta2
    GUIOuttextwin2 5,115,118,GUIVideoTexta3
.notextab
    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUITBWVID+eax],0
    je near .nottbwb
    GUIOuttextwin2 5,25,127,GUIVideoText7
.nottbwb
    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUI2xVID+eax],0
    je near .notextbb
    GUIOuttextwin2 5,25,137,GUIVideoTextc
    GUIOuttextwin2 5,25,147,GUIVideoTextd
    GUIOuttextwin2 5,25,157,GUIVideoTextd2
.notextbb
    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUII2VID+eax],0
    je near .notextb2b
    GUIOuttextwin2 5,25,167,GUIVideoText3
.notextb2b
    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUIBIFIL+eax],0
    je near .notextb2bf
    GUIOuttextwin2 5,25,167,GUIVideoTextbf
.notextb2bf
    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUIINVID+eax],0
    je .notext3b
    GUIOuttextwin2 5,25,82,GUIVideoText3
.notext3b
    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUIEAVID+eax],0
    je .notext4b
    GUIOuttextwin2 5,25,82,GUIVideoText4
.notext4b
    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUIFSVID+eax],0
    je .notext5b
    GUIOuttextwin2 5,25,92,GUIVideoText5
.notext5b
    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUISSVID+eax],0
    je .notext6b
    GUIOuttextwin2 5,25,102,GUIVideoText6
.notext6b
    xor eax,eax
    mov al,[cvidmode]
    cmp byte[TripBufAvail],0
    je near .notext7b
    cmp byte[GUITBVID+eax],0
    je .notext7b
    GUIOuttextwin2 5,25,167,GUIVideoText7
.notext7b
    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUIM7VID+eax],0
    je .notext8b
    cmp byte[newengen],0
    je .notext8b
    GUIOuttextwin2 5,25,177,GUIVideoText8b
.notext8b
%ifndef __MSDOS__
    GUIOuttextwin2 5,25,187,GUIVideoText8c
%endif
    DrawGUIButton 5,128,60,164,71,GUIVideoText8,4,0,0
    mov al,[GUIWincol]
    mov byte[GUItextcolor],al
    GUIOuttextwin2 5,6,16,GUIVideoText1
    mov byte[GUItextcolor],163
    cmp byte[GUIWincoladd],0
    je .zero3
    mov byte[GUItextcolor],164
.zero3
    GUIOuttextwin2 5,5,15,GUIVideoText1

    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUIHSVID+eax],0
    je near .nocheckboxw
    mov dword[GUITemp],GUIIconDataCheckBoxUC
    cmp byte[scanlines],1
    jne .nocheckbox
    mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox
    GUIDisplayIconWin 5,21,114,[GUITemp]
.nocheckboxb
    mov dword[GUITemp],GUIIconDataCheckBoxUC
    cmp byte[scanlines],3
    jne .nocheckboxv
    mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckboxv
    GUIDisplayIconWin 5,61,114,[GUITemp]
    mov dword[GUITemp],GUIIconDataCheckBoxUC
    cmp byte[scanlines],2
    jne .nocheckboxv2
    mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckboxv2
    GUIDisplayIconWin 5,101,114,[GUITemp]
.nocheckboxw

    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUITBWVID+eax],0
    je near .nocheckboxslw2
    mov dword[GUITemp],GUIIconDataCheckBoxUC
    cmp byte[TripleBufferWin],1
    jne .nocheckboxslw
    mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckboxslw
    GUIDisplayIconWin 5,11,123,[GUITemp]
.nocheckboxslw2

    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUI2xVID+eax],0
    je near .nocheckboxx
    mov dword[GUITemp],GUIIconDataCheckBoxUC
    cmp byte[En2xSaI],1
    jne .nocheckboxx2
    mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckboxx2
    GUIDisplayIconWin 5,11,133,[GUITemp]
    mov dword[GUITemp],GUIIconDataCheckBoxUC
    cmp byte[En2xSaI],2
    jne .nocheckboxx3
    mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckboxx3
    GUIDisplayIconWin 5,11,143,[GUITemp]
    mov dword[GUITemp],GUIIconDataCheckBoxUC
    cmp byte[En2xSaI],3
    jne .nocheckboxx4
    mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckboxx4
    GUIDisplayIconWin 5,11,153,[GUITemp]
.nocheckboxx

    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUII2VID+eax],0
    je near .nocheckboxi2
    mov dword[GUITemp],GUIIconDataCheckBoxUC
    cmp byte[antienab],0
    je .nocheckbox1i2
    mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox1i2
    GUIDisplayIconWin 5,11,163,[GUITemp]
.nocheckboxi2

    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUIBIFIL+eax],0
    je near .nocheckboxbf
    mov dword[GUITemp],GUIIconDataCheckBoxUC
    cmp byte[BilinearFilter],0
    je .nocheckbox1bf
    mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox1bf
    GUIDisplayIconWin 5,11,163,[GUITemp]
.nocheckboxbf

    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUITBVID+eax],0
    je .nocheckboxtbb
    cmp byte[TripBufAvail],0
    je near .nocheckboxtbb
    mov dword[GUITemp],GUIIconDataCheckBoxUC
    cmp byte[Triplebufen],1
    jne .nocheckboxtb
    mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckboxtb
    GUIDisplayIconWin 5,11,163,[GUITemp]
.nocheckboxtbb

    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUIM7VID+eax],0
    je near .nocheckboxm72
    cmp byte[newengen],0
    je near .nocheckboxm72
    mov dword[GUITemp],GUIIconDataCheckBoxUC
    cmp byte[Mode7HiRes16b],0
    je .nocheckbox1m72
    mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox1m72
    GUIDisplayIconWin 5,11,173,[GUITemp]
.nocheckboxm72
%ifndef __MSDOS__
    mov dword[GUITemp],GUIIconDataCheckBoxUC
    cmp byte[GrayscaleMode],0
    je .nocheckboxm73
    mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckboxm73
    GUIDisplayIconWin 5,11,183,[GUITemp]
%endif
    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUIIEVID+eax],0
    je .nocheckbox1b
    mov dword[GUITemp],GUIIconDataCheckBoxUC
    cmp byte[antienab],0
    je .nocheckbox1
    mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox1
    GUIDisplayIconWin 5,11,78,[GUITemp]
.nocheckbox1b

    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUIFSVID+eax],0
    je .nocheckbox2b
    mov dword[GUITemp],GUIIconDataCheckBoxUC
    cmp byte[ScreenScale],0
    je .nocheckbox2
    mov dword[GUITemp],GUIIconDataCheckBoxC
.nocheckbox2
    GUIDisplayIconWin 5,11,88,[GUITemp]
.nocheckbox2b

    xor eax,eax
    mov al,[cvidmode]
    cmp byte[GUISSVID+eax],0
    je .nocheckbox3b
    mov dword[GUITemp],GUIIconDataCheckBoxUC
    cmp byte[smallscreenon],0
    je .nocheckbox3

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -