FC光枪研究

This is an archive of a topic from NESdev BBS, taken in mid-October 2019 before a server upgrade.
View original topic
FC光枪研究
by on (#13635)
当$4017的D4从0 改为 1 ,程序判定枪射击
在这时,
程序改变它的背景为黑色(看图2,背景调色板全写为黑色$0F,不是关屏幕和用黑色方块重写屏幕)
改变屏幕上的精灵为白色方块 (看图1,精灵调色板除背景外全部写为白色$30)

程序检查$4017的 D3
来判定光枪的瞄准器是在白色的精灵区域(0=瞄准)还是黑色的背景区域(1=未瞄准)

原理基本介绍了

呼~初步整理的资料 还不完善 未能写出演示程序
vnes模拟器在游戏未开枪前
就显示了瞄准器
谁知道它是如何做到的?
Re: FC光枪研究
by on (#14124)
摆脱误区了.
以前没用别的模拟器试过,真是一叶遮目啊!
还有 发现光枪汉化资料有误.
Re: FC光枪研究
by on (#14976)
vnes模拟器在游戏未开枪前
就显示了瞄准器
谁知道它是如何做到的?


这个是什么意思嘛?
模拟器只是定位了一下MOUSE的位置,它并不关心你这个NES是否是支持光枪的,
只是你在特殊设备里选了光枪而已!
Re: FC光枪研究
by on (#15005)
wolfbati wrote:
vnes模拟器在游戏未开枪前
就显示了瞄准器
谁知道它是如何做到的?


这个是什么意思嘛?
模拟器只是定位了一下MOUSE的位置,它并不关心你这个NES是否是支持光枪的,
只是你在特殊设备里选了光枪而已!


能自检光枪的模拟器已经对某些自己支持的射击游戏先进行过CRC效验,
从而得到一个唯一的CRC码,储存起来。
当运行某个rom时,对该NES进行CRC效验,如果的到的CRC码和储存的某个CRC码相同,则自检出光枪,显示瞄准器.
如果是自己做的demo或修改后的射击游戏都不能被自检.

你可以实验下
修改某个射击游戏,会发现CRC改变
然后用Vnes运行.

by on (#15513)
原来高手跑来这里了,我一定会支持斑竹的~~