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

📄 spc700.s

📁 SFC游戏模拟器 snes9x 1.43 的原代码
💻 S
📖 第 1 页 / 共 5 页
字号:
	ret.L672:	decl %eax	movl %eax,APUWaitCounter	ret.L665:	addl $2,%ecx	movl %ecx,APUPC.L675:	retApuOpF0:	movl APUPC,%ecx	movl %ecx,%edx	movb 1(%ecx),%al	addl $2,%edx	movb %al,Int8	subw APURAM,%dx	cbtw	addl %eax,%edx	movw %dx,Int16	movb APU_Zero,%al	testb %al,%al	jne .L677	xorl %eax,%eax	movw %dx,%ax	movl APURAM,%ecx	addl %ecx,%eax	movl %eax,APUPC	movb Shutdown,%dl	testb %dl,%dl	je .L687	movl APUWaitAddress1,%ecx	cmpl %ecx,%eax	je .L679	movl APUWaitAddress2,%edx	cmpl %edx,%eax	jne .L687.L679:	movl APUWaitCounter,%eax	testl %eax,%eax	jne .L680	movb CPUExecuting,%cl	testb %cl,%cl	jne .L681	movl NextEvent,%eax	movl %eax,CYCLES	SAVE_CYCLES	ccall S9xUpdateAPUTimer		ret.L681:	movb %al,APUExecuting	ret.L680:	cmpl $1,%eax	jbe .L684	movl $1,%eax	movl %eax,APUWaitCounter	ret.L684:	decl %eax	movl %eax,APUWaitCounter	ret.L677:	addl $2,%ecx	movl %ecx,APUPC.L687:	retApuOp50:	movl APUPC,%ecx	movl %ecx,%edx	movb 1(%ecx),%al	addl $2,%edx	movb %al,Int8	subw APURAM,%dx	cbtw	addl %eax,%edx	movw %dx,Int16	movb APU_Overflow,%al	testb %al,%al	jne .L693	xorl %eax,%eax	movw %dx,%ax	movl APURAM,%ecx	addl %ecx,%eax	movl %eax,APUPC	ret.L693:	addl $2,%ecx	movl %ecx,APUPC	retApuOp70:	movl APUPC,%ecx	movl %ecx,%edx	movb 1(%ecx),%al	addl $2,%edx	movb %al,Int8	subw APURAM,%dx	cbtw	addl %eax,%edx	movw %dx,Int16	movb APU_Overflow,%al	testb %al,%al	je .L701	xorl %eax,%eax	movw %dx,%ax	movl APURAM,%ecx	addl %ecx,%eax	movl %eax,APUPC	ret.L701:	addl $2,%ecx	movl %ecx,APUPC	retApuOp2F:	movl APUPC,%eax	movb 1(%eax),%dl	addl $2,%eax	movb %dl,Int8	subw APURAM,%ax	movsbw %dl,%dx	addl %edx,%eax	movw %ax,Int16	movl APURAM,%edx	andl $65535,%eax	addl %edx,%eax	movl %eax,APUPC	retApuOp80:	movl APUPC,%eax	movl $1,%ecx	incl %eax	movb %cl,APU_Carry	movl %eax,APUPC	retApuOpED:	movb APU_Carry,%dl	movl APUPC,%ecx	xorb $1,%dl	incl %ecx	movb %dl,APU_Carry	movl %ecx,APUPC	retApuOp40:	movb ApuP,%dl	movl APURAM,%eax	movl APUPC,%ecx	orb $32,%dl	addl $256,%eax	incl %ecx	movb %dl,ApuP	movl %eax,APUDirectPage	movl %ecx,APUPC	retApuOp1A:	pushl %ebx	movl APUPC,%eax	movb 1(%eax),%dl	xorl %eax,%eax	movb %dl,%al	pushl %eax	call S9xAPUGetByteZ__FUc	movb %al,%bl	movl APUPC,%eax	movb 1(%eax),%al	incb %al	andl $255,%eax	pushl %eax	call S9xAPUGetByteZ__FUc	movb %al,%dl	xorl %eax,%eax	movb %bl,%al	salw $8,%dx	addl %edx,%eax	decl %eax	movl APUPC,%edx	movw %ax,Work16	movb 1(%edx),%al	andl $255,%eax	pushl %eax	movb Work16,%al	andl $255,%eax	pushl %eax	call S9xAPUSetByteZ__FUcUc	movl APUPC,%eax	movb 1(%eax),%al	incb %al	andl $255,%eax	pushl %eax	movb Work16+1,%al	andl $255,%eax	pushl %eax	call S9xAPUSetByteZ__FUcUc	movb Work16+1,%al	addl $24,%esp	andl $255,%eax	cmpw $0,Work16	je .L724	orb $1,%al.L724:	movl APUPC,%edx	addl $2,%edx	movb %al,APU_Zero	popl %ebx	movl %edx,APUPC	retApuOp5A:	pushl %ebx	movl APUPC,%eax	movb 1(%eax),%cl	xorl %eax,%eax	movb %cl,%al	pushl %eax	call S9xAPUGetByteZ__FUc	movb %al,%bl	movl APUPC,%eax	movb 1(%eax),%al	incb %al	andl $255,%eax	pushl %eax	call S9xAPUGetByteZ__FUc	xorl %edx,%edx	movb %bl,%dl	salw $8,%ax	addl %eax,%edx	movw %dx,Work16	xorl %eax,%eax	movw ApuA,%ax	andl $65535,%edx	subl %edx,%eax	movl %eax,Int32	notl %eax	shrl $31,%eax	movb %al,APU_Carry	movb Int32+1,%al	addl $8,%esp	andl $255,%eax	cmpw $0,Int32	je .L730	orb $1,%al.L730:	movl APUPC,%ecx	addl $2,%ecx	movb %al,APU_Zero	popl %ebx	movl %ecx,APUPC	retApuOp3A:	pushl %ebx	movl APUPC,%eax	movb 1(%eax),%dl	xorl %eax,%eax	movb %dl,%al	pushl %eax	call S9xAPUGetByteZ__FUc	movb %al,%bl	movl APUPC,%eax	movb 1(%eax),%al	incb %al	andl $255,%eax	pushl %eax	call S9xAPUGetByteZ__FUc	movb %al,%dl	xorl %eax,%eax	movb %bl,%al	salw $8,%dx	addl %edx,%eax	incl %eax	movl APUPC,%edx	movw %ax,Work16	movb 1(%edx),%al	andl $255,%eax	pushl %eax	movb Work16,%al	andl $255,%eax	pushl %eax	call S9xAPUSetByteZ__FUcUc	movl APUPC,%eax	movb 1(%eax),%al	incb %al	andl $255,%eax	pushl %eax	movb Work16+1,%al	andl $255,%eax	pushl %eax	call S9xAPUSetByteZ__FUcUc	movb Work16+1,%al	addl $24,%esp	andl $255,%eax	cmpw $0,Work16	je .L736	orb $1,%al.L736:	movl APUPC,%edx	addl $2,%edx	movb %al,APU_Zero	popl %ebx	movl %edx,APUPC	retApuOp7A:	pushl %ebx	movl APUPC,%eax	movb 1(%eax),%cl	xorl %eax,%eax	movb %cl,%al	pushl %eax	call S9xAPUGetByteZ__FUc	movb %al,%bl	movl APUPC,%eax	movb 1(%eax),%al	incb %al	andl $255,%eax	pushl %eax	call S9xAPUGetByteZ__FUc	xorl %edx,%edx	movb %bl,%dl	salw $8,%ax	xorl %ecx,%ecx	addl %eax,%edx	movw ApuA,%cx	xorl %eax,%eax	movw %dx,%ax	addl %eax,%ecx	movb ApuP,%al	andb $247,%al	movb %al,ApuP	cmpl $65535,%ecx	seta %al	movb %al,APU_Carry	movw ApuA,%ax	movw %dx,Work16	xorl %edx,%eax	xorl %ecx,%edx	notw %ax	andl %edx,%eax	addl $8,%esp	movl %ecx,Work32	andl $-32768,%eax	testw %ax,%ax	je .L739	movl $1,%edx	movb %dl,APU_Overflow	jmp .L740.L739:	movb %al,APU_Overflow.L740:	movw Work32,%ax	movl %eax,%edx	shrw $8,%dx	movw %ax,ApuA	andl $65535,%edx	testw %ax,%ax	je .L741	orl $1,%edx.L741:	movl APUPC,%ecx	addl $2,%ecx	movb %dl,APU_Zero	popl %ebx	movl %ecx,APUPC	retApuOp9A:	pushl %ebx	movl APUPC,%eax	movb 1(%eax),%dl	xorl %eax,%eax	movb %dl,%al	pushl %eax	call S9xAPUGetByteZ__FUc	movb %al,%bl	movl APUPC,%eax	movb 1(%eax),%al	incb %al	andl $255,%eax	pushl %eax	call S9xAPUGetByteZ__FUc	xorl %ecx,%ecx	movb %bl,%cl	salw $8,%ax	xorl %edx,%edx	addl %eax,%ecx	xorl %eax,%eax	movw ApuA,%ax	movw %cx,%dx	subl %edx,%eax	movb ApuP,%dl	movl %eax,Int32	andb $247,%dl	notl %eax	movb %dl,ApuP	shrl $31,%eax	movw ApuA,%dx	movb %al,APU_Carry	movl %edx,%eax	movw %cx,Work16	xorl %ecx,%eax	addl $8,%esp	testw %ax,%ax	jge .L744	movl %edx,%eax	xorw Int32,%ax	jns .L744	movl $1,%ecx	movb %cl,APU_Overflow	jmp .L745.L744:	xorl %eax,%eax	movb %al,APU_Overflow.L745:	movb ApuA,%dl	movb Work16,%cl	movb %dl,%al	xorb %cl,%al	jns .L746	movb %dl,%al	movb Int32,%cl	xorb %cl,%al	jns .L746	movb ApuP,%al	orb $8,%al	movb %al,ApuP.L746:	movw Int32,%ax	movl %eax,%edx	shrw $8,%dx	movw %ax,ApuA	andl $65535,%edx	testw %ax,%ax	je .L747	orl $1,%edx.L747:	movl APUPC,%ecx	addl $2,%ecx	movb %dl,APU_Zero	popl %ebx	movl %ecx,APUPC	retApuOpBA:	movl APUPC,%eax	movb 1(%eax),%dl	xorl %eax,%eax	movb %dl,%al	pushl %eax	call S9xAPUGetByteZ__FUc	movb %al,ApuA	movl APUPC,%eax	movb 1(%eax),%al	incb %al	andl $255,%eax	pushl %eax	call S9xAPUGetByteZ__FUc	movb %al,ApuY	addl $8,%esp	andl $255,%eax	cmpw $0,ApuA	je .L753	orb $1,%al.L753:	movl APUPC,%edx	addl $2,%edx	movb %al,APU_Zero	movl %edx,APUPC	retApuOpDA:	movl APUPC,%eax	movb 1(%eax),%cl	xorl %eax,%eax	movb %cl,%al	pushl %eax	movb ApuA,%al	andl $255,%eax	pushl %eax	call S9xAPUSetByteZ__FUcUc	movl APUPC,%eax	movb 1(%eax),%al	incb %al	andl $255,%eax	pushl %eax	movb ApuY,%al	andl $255,%eax	pushl %eax	call S9xAPUSetByteZ__FUcUc	movl APUPC,%ecx	addl $2,%ecx	addl $16,%esp	movl %ecx,APUPC	retApuOp64:	movl APUPC,%eax	movb 1(%eax),%dl	xorl %eax,%eax	movb %dl,%al	pushl %eax	call S9xAPUGetByteZ__FUc	movb %al,%dl	movb ApuA,%al	movb %dl,Work8	andl $255,%eax	andl $255,%edx	subl %edx,%eax	movw %ax,Int16	notw %ax	shrw $15,%ax	movb %al,APU_Carry	movl APUPC,%eax	movb Int16,%cl	addl $2,%eax	addl $4,%esp	movb %cl,APU_Zero	movl %eax,APUPC	retApuOp65:	movl APUPC,%eax	movw 1(%eax),%ax	andl $65535,%eax	movl %eax,APUAddress	pushl %eax	call S9xAPUGetByte__FUl	movb %al,%dl	movb ApuA,%al	movb %dl,Work8	andl $255,%eax	andl $255,%edx	subl %edx,%eax	movw %ax,Int16	movl APUPC,%ecx	addl $4,%esp	notw %ax	addl $3,%ecx	movb Int16,%dl	shrw $15,%ax	movl %ecx,APUPC	movb %dl,APU_Zero	movb %al,APU_Carry	retApuOp66:	movb ApuX,%al	andl $255,%eax	pushl %eax	call S9xAPUGetByteZ__FUc	movb %al,%dl	movb ApuA,%al	movb %dl,Work8	andl $255,%eax	andl $255,%edx	subl %edx,%eax	movw %ax,Int16	notw %ax	shrw $15,%ax	movl APUPC,%edx	movb %al,APU_Carry	incl %edx	movb Int16,%al	addl $4,%esp	movl %edx,APUPC	movb %al,APU_Zero	retApuOp67:	movb ApuX,%al	movl APUPC,%edx	andl $255,%eax	movb 1(%edx),%cl	addb %cl,%al	xorl %edx,%edx	movb %al,%dl	movl APUDirectPage,%eax	movw (%edx,%eax),%ax	andl $65535,%eax	movl %eax,APUAddress	pushl %eax	call S9xAPUGetByte__FUl	movb %al,%dl	movb ApuA,%al	movb %dl,Work8	andl $255,%eax	andl $255,%edx	subl %edx,%eax	movw %ax,Int16	movl APUPC,%ecx	addl $4,%esp	notw %ax	addl $2,%ecx	movb Int16,%dl	shrw $15,%ax	movl %ecx,APUPC	movb %dl,APU_Zero	movb %al,APU_Carry	retApuOp68:	movl APUPC,%ecx	movb 1(%ecx),%dl	movb ApuA,%al	movb %dl,Work8	andl $255,%eax	andl $255,%edx	subl %edx,%eax	movw %ax,Int16	notw %ax	shrw $15,%ax	movb %al,APU_Carry	addl $2,%ecx	movb Int16,%al	movl %ecx,APUPC	movb %al,APU_Zero	retApuOp69:	movl APUPC,%eax	movb 1(%eax),%dl	xorl %eax,%eax	movb %dl,%al	pushl %eax	call S9xAPUGetByteZ__FUc	movb %al,W1	movl APUPC,%eax	movb 2(%eax),%cl	xorl %eax,%eax	movb %cl,%al	pushl %eax	call S9xAPUGetByteZ__FUc	movb %al,Work8	movb W1,%dl	andl $255,%eax	andl $255,%edx	subl %edx,%eax	movw %ax,Int16	notw %ax	shrw $15,%ax	movl APUPC,%edx	movb %al,APU_Carry	addl $3,%edx	movb Int16,%al	addl $8,%esp	movl %edx,APUPC	movb %al,APU_Zero	retApuOp74:	movl APUPC,%edx	movb ApuX,%al	movb 1(%edx),%cl	addb %cl,%al	andl $255,%eax	pushl %eax	call S9xAPUGetByteZ__FUc	movb %al,%dl	movb ApuA,%al	movb %dl,Work8	andl $255,%eax	andl $255,%edx	subl %edx,%eax	movw %ax,Int16	movl APUPC,%ecx	addl $4,%esp	notw %ax	addl $2,%ecx	movb Int16,%dl	shrw $15,%ax	movl %ecx,APUPC	movb %dl,APU_Zero	movb %al,APU_Carry	retApuOp75:	movl APUPC,%eax	movb ApuX,%dl	movw 1(%eax),%ax	andl $255,%edx	andl $65535,%eax	addl %edx,%eax	movl %eax,APUAddress	pushl %eax	call S9xAPUGetByte__FUl	movb %al,%dl	movb ApuA,%al	movb %dl,Work8	andl $255,%eax	andl $255,%edx	subl %edx,%eax	movw %ax,Int16	notw %ax	shrw $15,%ax	movl APUPC,%edx	movb %al,APU_Carry	addl $3,%edx	movb Int16,%al	addl $4,%esp	movl %edx,APUPC	movb %al,APU_Zero	retApuOp76:	movl APUPC,%eax	movb ApuY,%dl	movw 1(%eax),%ax	andl $255,%edx	andl $65535,%eax	addl %edx,%eax	movl %eax,APUAddress	pushl %eax	call S9xAPUGetByte__FUl	movb %al,%dl	movb ApuA,%al	movb %dl,Work8	andl $255,%eax	andl $255,%edx	subl %edx,%eax	movw %ax,Int16	notw %ax	shrw $15,%ax	movb %al,APU_Carry	movl APUPC,%eax	movb Int16,%cl	addl $3,%eax	addl $4,%esp	movb %cl,APU_Zero	movl %eax,APUPC	retApuOp77:	movl APUPC,%eax	movb 1(%eax),%dl	movl APUDirectPage,%eax	andl $255,%edx	movw (%edx,%eax),%ax	movb ApuY,%dl	andl $65535,%eax	andl $255,%edx	addl %edx,%eax	movl %eax,APUAddress	pushl %eax	call S9xAPUGetByte__FUl	movb %al,%dl	movb ApuA,%al	movb %dl,Work8	andl $255,%eax	andl $255,%edx	subl %edx,%eax	movw %ax,Int16	movl APUPC,%ecx	addl $4,%esp	notw %ax	addl $2,%ecx	movb Int16,%dl	shrw $15,%ax	movl %ecx,APUPC	movb %dl,APU_Zero	movb %al,APU_Carry	retApuOp78:	movl APUPC,%edx	movb 1(%edx),%al	movb %al,Work8	movb 2(%edx),%al	andl $255,%eax	pushl %eax	call S9xAPUGetByteZ__FUc	movb %al,W1	movb Work8,%dl	andl $255,%eax	andl $255,%edx	subl %edx,%eax	movw %ax,Int16	notw %ax	shrw $15,%ax	movl APUPC,%edx	movb %al,APU_Carry	addl $3,%edx	movb Int16,%al	addl $4,%esp	movl %edx,APUPC	movb %al,APU_Zero	retApuOp79:	movb ApuX,%al	andl $255,%eax	pushl %eax	call S9xAPUGetByteZ__FUc	movb %al,W1	movb ApuY,%al	andl $255,%eax	pushl %eax	call S9xAPUGetByteZ__FUc	movb %al,%dl	movb W1,%al	movb %dl,Work8	andl $255,%eax	andl $255,%edx	subl %edx,%eax	movw %ax,Int16	notw %ax	shrw $15,%ax	movb %al,APU_Carry	movl APUPC,%eax	movb Int16,%cl	incl %eax	addl $8,%esp	movb %cl,APU_Zero	movl %eax,APUPC	retApuOp1E:	movl APUPC,%eax	movw 1(%eax),%ax	andl $65535,%eax	movl %eax,APUAddress	pushl %eax	call S9xAPUGetByte__FUl	movb %al,%dl	movb ApuX,%al	movb %dl,Work8	andl $255,%eax	andl $255,%edx	subl %edx,%eax	movw %ax,Int16	movl APUPC,%ecx	addl $4,%esp	notw %ax	addl $3,%ecx	movb Int16,%dl	shrw $15,%ax	movl %ecx,APUPC	movb %dl,APU_Zero	movb %al,APU_Carry	retApuOp3E:	movl APUPC,%eax	movb 1(%eax),%dl	xorl %eax,%eax	movb %dl,%al	pushl %eax	call S9xAPUGetByteZ__FUc	movb %al,%dl	movb ApuX,%al	movb %dl,Work8	andl $255,%eax	andl $255,%edx	subl %edx,%eax	movw %ax,Int16	notw %ax	shrw $15,%ax	movb %al,APU_Carry	movl APUPC,%eax	movb Int16,%cl	addl $2,%eax	addl $4,%esp	movb %cl,APU_Zero	movl %eax,APUPC	retApuOpC8:	movl APUPC,%ecx	movb ApuX,%al	movb 1(%ecx),%dl	andl $255,%eax	andl $255,%edx	subl %edx,%eax	movw %ax,Int16

⌨️ 快捷键说明

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