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

📄 st11proc.asm

📁 linux下的任天堂模拟器代码。供大家参考。
💻 ASM
字号:
;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.%include "macros.mac"EXTSYM seta11_address,seta11_byte,setaramdata,ST011_DREXTSYM ST011_MapR_60,ST011_MapW_60,ST011_MapW_68;ST011_MapR_68SECTION .textNEWSYM Seta11Read8_68    mov ebx,[setaramdata]    and ecx,0fffh    mov al,[ebx+ecx]    mov [ST011_DR],al    xor ebx,ebx    retNEWSYM Seta11Write8_68    test ecx,8000h    jnz .nosetenablew8 ; ignore ROM writes    mov [seta11_address],cx    mov [seta11_byte],al    pushad    call ST011_MapW_68    popad.nosetenablew8    retNEWSYM Seta11Read16_68    mov ebx,[setaramdata]    and ecx,0fffh    mov ax,[ebx+ecx]    mov [ST011_DR],ah    xor ebx,ebx    retNEWSYM Seta11Write16_68    test ecx,8000h    jnz .nosetenablew16 ; ignore ROM writes    mov [seta11_address],cx    mov [seta11_byte],al    mov [seta11temp],ah    pushad    call ST011_MapW_68    mov ah,[seta11temp]    mov [seta11_byte],ah    inc word[seta11_address]    call ST011_MapW_68    popad.nosetenablew16    retNEWSYM Seta11Read8_60    xor al,al    cmp ecx,4000h    jae .nosetenabler8    and ecx,3    mov [seta11_address],cx    pushad    call ST011_MapR_60    popad    mov al,[seta11_byte] .nosetenabler8    retNEWSYM Seta11Write8_60    cmp ecx,4000h    jae .nosetenablew8    and ecx,3    mov [seta11_address],cx    mov [seta11_byte],al    pushad    call ST011_MapW_60    popad.nosetenablew8    retNEWSYM Seta11Read16_60    xor ax,ax    cmp ecx,4000h    jae .nosetenabler16    and ecx,3    mov [seta11_address],cx    pushad    call ST011_MapR_60    mov al,[seta11_byte]    mov [seta11temp],al    inc word[seta11_address]    and word[seta11_address],3    call ST011_MapR_60    popad    mov al,[seta11temp]    mov ah,[seta11_byte].nosetenabler16    retNEWSYM Seta11Write16_60    cmp ecx,4000h    jae .nosetenablew16    and ecx,3    mov [seta11_address],cx    mov [seta11_byte],al    mov [seta11temp],ah    pushad    call ST011_MapW_60    mov ah,[seta11temp]    mov [seta11_byte],ah    inc word[seta11_address]    and word[seta11_address],3    call ST011_MapW_60    popad.nosetenablew16    retSECTION .bssNEWSYM seta11temp, resb 1

⌨️ 快捷键说明

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