fc模拟器是一个模拟器计算机客户端应用程序。fc模拟器中文版有非常好的视频处理系统。fc模拟器中文版可以模拟运行大部分FC游戏,兼容nes、fds、nsf格式。fc模拟器中文版是FC球迷的绝佳推荐。该网站为您提供fc模拟器下载。是专门为想在手机上玩小霸王学习机经典游戏的朋友设计的游戏模拟器app。你可以在这里找到很多熟悉的复古fc游戏,或者导入相应的游戏文件自己玩!
fc模拟器手机版安卓介绍
1、FC模拟器拥有自主开发的GBA模拟器、FC模拟器、SFC模拟器、街机模拟器、PSP模拟器。
2、只要网上能够找到的游戏rom包,手机FC模拟器均可以流畅运行。
3、并自带金手指、存档等功能,体验完爆各类模拟器,真正意义上最好用的联机模拟器。
4、软件会自动识别并且读取,无需用户主动搜索,更加智能让你体验当年经典!
fc模拟器手机版安卓亮点
=软件收集了以前常玩的四百款nes游戏,可以畅玩游戏了
=支持手柄的控制,您可以选择加载手柄对游戏进行操作
=可以设置游戏的声音,根据自己的爱好进行选择
=能够选择屏幕的大小,随意调整
=可以选择自动画面省略
fc模拟器手机版安卓优势
非常友好的用户界面
高度可定制的虚拟控制器!您可以调整每个按钮的大小和位置以满足您的需求。
自动保存游戏进度并支持快速存储。
复卷!如果你被一个坏人杀了?没关系!您可以直接返回游戏几秒钟,然后再试一次!
无线网络控制器模式!这种独特的功能允许多个设备相互连接。将手机变成无线控制器,让您与朋友一起玩。我们最多支持4名玩家!
Zapper(光枪)模拟
Turbo按钮和A + B按钮
PAL(欧洲)/ NTSC(美国,日本)视频模式支持
使用OpenGL ES进行硬件图形加速
44100 Hz立体声
硬件键盘支持-
支持HID蓝牙游戏手柄(MOGA,8bitdo等)
截图 快速捕捉瞬间
使用特殊作弊使NES游戏更有趣!
支持NES和ZIP文件
fc模拟器手机版安卓攻略
开发攻略
1.要懂汇编(具体包括:a.汇编指令代码功能。b.寄存器,内存,堆栈概念。c.CPU复位及中断过程)
2. 会一种程序设计语言。(写完的模拟器用 printf 就可以看功能了啊,流水灯轻松实现啊)
3. 最好了解一些“链接器”的知识,和“编译器”的C语言运行时上下文环境的问题。链接器要实现多个程序段的重定位。当然不会不影响,但是对C语言程序怎么就能执行的会很费解,会有心结的。(不会直接用汇编写程序嘛...NES模拟器都是汇编的,但是写个MSP430模拟器什么的就该有帮助了,这可以看IDE工具的相应的 linker user's guid 和 compiler user's guid 或相应的 help)
其他的比如《编译原理》基本用不到吧,编译器手册可能会有些用处,但是和教科书的编译原理是不一样的,这里主要是关注C语言和汇编如何对应。
主要就是组成原理啊,程序就是一条条指令,CPU就是”取指令->执行指令“的死循环嘛(第一条指令是复位过程决定的)。就要知道什么是指令,怎么执行就行啦。执行时涉及到什么就看什么是什么。简单的很。还有微机原理的内容理解有助于实现模拟器的一些外设(显示器,手柄什么的)仿真,对应情景就是向某个外设寄存器地址写了什么值相应模拟器应该如何模仿外设的功能。
关于【NES模拟器实现】:
刚好写过一个简单的fc模拟器。
首先还是要懂汇编啦,add,jmp,mov的功能什么的,再有知道寄存器和内存地址,堆栈这些概念。
然后知道复位,和其他中断的流程。
这时你就可以根据一个程序来开始写模拟器了,无非就是看每条指令把哪个操作数,经过什么变换,放到哪里去(补充:影响哪些状态标志位),复位的位置在哪里,从哪条指令开始运行,一步步调试了。最简单的就是switch指令case指令1,指令2...6502是复杂指令集的,指令编码规律性不大(但是还是有一些的),寻找到指令具体怎么操作了就看指令的功能了。参见:6502 Instruction Set。
另外调试过程中,6502cpu有一个“全覆盖”的程序帮助调试,这个程序几乎包含了所有指令和寻址方式的组合,如果结果错误就会陷入一个死循环指示错误。搜索:Klaus Dormann 的 6502_functional_tests(http://2m5.de/6502_Emu/index.htm)。
这个阶段写的 CPU 模拟器只是保证了 CPU 执行指令的正确性,一般就是通过观察执行完的指令影响的寄存器或是状态标志位和内存内容是不是按照预期变化。这种调试方式。
CPU写好了之后,显示的问题就是有个缓冲区是放那些显示的“模式块”的,按照它的格式定义转换成一个RGB数组就可以让各种 GUI 显示了。(好吧我就做到这里 ... 按键和声音什么的没有做)。参考【相关网站】有很丰富的资料。(这里还可以利用后面提到的《VirtuaNES-debug》辅助调试)
这部分就是实现外设的部分了,根据外设的需求在写入一些特殊地址时要做相应的功能响应。无非也就是将相关的内存内容经过一定变换,选择合适的方式表现出来(如输出字符,显示图像,输出声音之类的)。
【更容易实现的CPU】
还有我给个小提示,写CPU模拟器可以从MSP430开始,因为MSP430只有27条指令,精简指令集的编码方式(指令编码规律性强),4种寻址方式,相对简单,资料也多。根据TI的官方文档基本就可以完成设计,TI文档写得很漂亮!包括数据手册,用户指南什么的。
继续补充一点东西:
当初的实现大体流程(几天就可以搞定的):
1. 收集资料
2. 大体计划 :
了解硬件结构(CPU,PPU,APU,控制器...) -> 实现CPU -> 实现PPU -> 实现控制器 -> 实现APU
3. 初步理解 (10.9,10.10)
电路结构,卡带分类,CPU的最简单模式
while(1)
{
取指 -> 执行;
}
3. 实现 CPU(6502兼容 无十进制运算 dec)
了解指令分类
switch case 实现基本的 指令系统(10.11)
继续调试完善CPU, 代码基本完成(10.12)
指令全覆盖测试程序测试CPU,修复bug(10.13)
继续完善,写PPU(10.14)能够看到PPU中数据
写 ppu 数据 -> RGB 的转换
QT编写显示界面,基本完成背景图像显示(10.15)
完成精灵的显示,和滚动的实现(只有X轴)(10.16)
一定要多记笔记啊!我笔记发现没有记网站!当初有好几个那么经典的NEC资料和6502 CPU模拟器的网站的!
【相关网站】:
6502.org: The 6502 Microprocessor Resource 这个讲6502CPU模拟器设计资料的
NES info, programs, and demos 这个是 nesdev 有很多关于 NES 游戏机的资料。
另外有本《小霸王游戏机的奥秘.PDF》模糊的讲了一下NES游戏机的技术,但是不太深入。但是还是挺有用的。
再另外有个软件叫《VirtuaNES-debug》这个可以单步执行nes指令,可以调试NES游戏程序,并可以显示很多内部的数据结构,在实现过程中很有帮助的!(另外本身这个软件就是开源的)下面是软件示意图:
我以前写的NES和430的模拟器,写着玩的,代码量也不是很大,但是有些够理解用的基本功能了。都基本上是纯C语言写的,NES的用QT做了个图形显示,Cpu部分都是C语言实现。
还写了一个实现了几条指令的430CPU但是能跑流水灯了!而且是完全控制台下的流水灯!(c语言就足够了)