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

📄 guicombo.inc

📁 linux下的任天堂模拟器代码。供大家参考。
💻 INC
字号:
;Copyright (C) 1997-2007 ZSNES Team ( zsKnight, _Demo_, pagefault, Nach );;http://www.zsnes.com;http://sourceforge.net/projects/zsnes;https://zsnes.bountysource.com;;This program is free software; you can redistribute it and/or;modify it under the terms of the GNU General Public License;version 2 as published by the Free Software Foundation.;;This program is distributed in the hope that it will be useful,;but WITHOUT ANY WARRANTY; without even the implied warranty of;MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the;GNU General Public License for more details.;;You should have received a copy of the GNU General Public License;along with this program; if not, write to the Free Software;Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.SECTION .textComboClip:    movzx eax,byte[GUINumCombo].next    cmp al,42    jae .excess    mov byte[GUIComboData+eax],0    inc eax    jmp .next.excess    retComboAdder:    cmp byte[romloadskip],0    je .romloaded    cmp byte[GUIComboGameSpec],0    jne near .skipall.romloaded    pushad    call ComboClip    mov eax,[NumCombo]    shl eax,6    add eax,[NumCombo]    add eax,[NumCombo]    add eax,CombinDataGlob    cmp byte[GUIComboGameSpec],0    je .nogamespec    sub eax,CombinDataGlob    add eax,CombinDataLocl.nogamespec    ; copy data to eax    mov ecx,20  ; copy name    mov ebx,GUIComboTextH.loop    mov dl,[ebx]    mov [eax],dl    inc ebx    inc eax    dec ecx    jnz .loop    mov ecx,42  ; copy combination code    mov ebx,GUIComboData.loop2    mov dl,[ebx]    mov [eax],dl    inc ebx    inc eax    dec ecx    jnz .loop2    mov dx,[GUIComboKey]    mov [eax],dx    mov dl,[GUIComboPNum]    mov [eax+2],dl    mov dl,[GUIComboLHorz]    mov [eax+3],dl    mov eax,[NumCombo]    mov [GUIccombcursloc],eax    sub eax,7    cmp [GUIccombviewloc],eax    jge .rangeokay    mov [GUIccombviewloc],eax.rangeokay    inc dword[NumCombo]    mov eax,[NumCombo]    cmp byte[GUIComboGameSpec],0    jne .local    mov [NumComboGlob],eax    jmp .global.local    mov [NumComboLocl],eax.global    popad    mov byte[GUIComboTextH],0    mov byte[GUINumCombo],0    mov dword[GUIComboKey],0.skipall    retComboReplace:    pushad    call ComboClip    mov eax,[GUIccombcursloc]    shl eax,6    add eax,[GUIccombcursloc]    add eax,[GUIccombcursloc]    add eax,CombinDataGlob    cmp byte[GUIComboGameSpec],0    je .nogamespec    sub eax,CombinDataGlob    add eax,CombinDataLocl.nogamespec    ; copy data to eax    mov ecx,20  ; copy name    mov ebx,GUIComboTextH.loop    mov dl,[ebx]    mov [eax],dl    inc ebx    inc eax    dec ecx    jnz .loop    mov ecx,42  ; copy combination code    mov ebx,GUIComboData.loop2    mov dl,[ebx]    mov [eax],dl    inc ebx    inc eax    dec ecx    jnz .loop2    mov dx,[GUIComboKey]    mov [eax],dx    mov dl,[GUIComboPNum]    mov [eax+2],dl    mov dl,[GUIComboLHorz]    mov [eax+3],dl    popad    retComboRemoval:    pushad    mov eax,[GUIccombcursloc]    shl eax,6    add eax,[GUIccombcursloc]    add eax,[GUIccombcursloc]    add eax,CombinDataGlob    cmp byte[GUIComboGameSpec],0    je .nogamespec    sub eax,CombinDataGlob    add eax,CombinDataLocl.nogamespec    mov ecx,[NumCombo]    sub ecx,[GUIccombcursloc]    dec ecx    cmp ecx,0    jle .nomove.loop2    mov ebx,66.loop    mov dl,[eax+66]    mov [eax],dl    inc eax    dec ebx    jnz .loop    dec ecx    jnz .loop2.nomove    dec dword[NumCombo]    mov eax,[NumCombo]    or eax,eax    jz .yeszero    dec eax.yeszero    cmp [GUIccombviewloc],eax    jbe .notequal    mov [GUIccombviewloc],eax.notequal    cmp [GUIccombcursloc],eax    jbe .notequal2    mov [GUIccombcursloc],eax.notequal2    mov eax,[NumCombo]    cmp byte[GUIComboGameSpec],0    jne .local    mov [NumComboGlob],eax    jmp .global.local    mov [NumComboLocl],eax.global    popad    ret

⌨️ 快捷键说明

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