» 您尚未登录:请 登录 | 注册 | 标签 | 帮助 | 小黑屋 |


发新话题
打印

[硬件改造] FC RGB PPU 最终游戏测试帖(小猫勿进)03.15更新

经过慢长的亲手测试,终于可以给大家提交一份满意的答卷。RGB PPU总体兼容性一流,无明显差错,画质清晰,色彩还原准确。
开发板连接输出RGBS到分量转换版。与S-video同时输出。


运行N8半小时后,7805散热片的温度超过65度。但是RGB PPU几乎感觉不到热度,可能还是N8的功耗高,大热天打机要注意了。

有关7805温度过高问题,检查了下应该是电源负载电压过高造成,昨天将电源变压器的次级线圈减少了20圈,将负载电压从12v降到了9v,连续通电8个小时后欧测得的温度一直稳定在42度。建议老主机电压控制在9V.


接着是画质的比对,从上到下依次是 AV>>S-Video>RGB


从左到右:S-Video>RGB


从左到右:AV>RGB



============
============
华丽的分割线

接着就是游戏兼容性测试,使用N8烧录卡。游戏兼容性测试列表如下:
  • Adventures of Lolo 2, Ms. Pac-Man (Tengen), and Spelunker rely on 1 cycle NMI delay when $2002 bit 7 gets set inside vblank (if $2002 has not been read yet), in which $2002 bit 7 can be read as true
  • Balloon Fight relies on reading the nametables through $2007 to twinkle the stars in the background. (The code is at $D603.)
  • Bases Loaded II glitches after a pitch is thrown (screenshot) if writing $00 then $80 to $2000 during vertical blank does not cause an additional NMI
  • Battletoads requires fairly precise CPU and PPU timing and a fairly robust sprite zero implementation. It leaves rendering disabled for a number of scanlines into the visible frame to gain extra VRAM manipulation time and then enables it. If the timing is off so that the background image appears too high or too low at this point, a sprite zero hit will fail to trigger, hanging the game. This usually occurs immediately upon entering the first stage if the timing is off by enough, and might cause random hangs at other points otherwise.
  • Bee 52 needs accurate DMC timing and relies on $2002 bit 5 (sprite overflow) as well
  • Bill & Ted's Excellent Adventure and a few other MMC1 games depend on the mapper ignoring successive writes; see iNES Mapper 001 (the talk page for that page might be informative too). Bill & Ted… also turns off and re-enables rendering midframe to switch CHR banks (e.g. in the black border above dialog boxes).
  • Cobra Triangle and Ironsword rely on the dummy read for the sta $4000,X instruction to acknowledge pending APU IRQs.
  • Crystalis, Fantastic Adventures of Dizzy, Fire Hawk, and Super Off Road do mid-frame palette changes
  • Fire Hawk, Mig 29 Soviet Fighter, and Time Lord need accurate DMC timing because they abuse APU DMC IRQ to split the screen
  • Galaxian requires proper handling of bit 4 of the P register for /IRQ.
  • Huge Insect depends on obscure OAMADDR ($2003) behavior; see PPU registers.
  • Marble Madness switches CHR banks mid-scanline to draw text boxes (e.g. at the beginning of each level). Getting these to render correctly requires fairly precise timing.
  • Micro Machines requires correct values when reading PPU $2004 (OAMDATA) during rendering, and also relies on proper background color selection when rendering is disabled and the VRAM address points to the palette (see the "background palette hack" on the PPU palettes page).
  • Paperboy relies on the open bus behavior of controller reads and expects them to return exactly 0x40 or 0x41; see Standard controller.
  • Punch-Out!! requires fetching the 34th tile; otherwise, the ring will be glitched.
  • Puzznic and Reflect World (FDS) use unofficial opcode $89, which is a two-byte NOP on 6502 and BIT #imm on 65C02. (Puzznic tasvideos discussion) The instruction in Puzznic is 89 00; emulating $89 as a single-byte NOP will trigger a BRK that causes the screen to shake.
  • Slalom does a JSR while the stack pointer is 0, so that half of the return address ends up at $0100 and the other half at $01FF.
  • Super Mario Bros. is probably the hardest game to emulate among the most popular NROM games, which are generally the first targets against which an emulator author tests his or her work. It relies on JMP indirect, correct palette mirroring (otherwise the sky will be black; see PPU palettes), sprite 0 detection (otherwise the game will freeze on the title screen), the 1-byte delay when reading from CHR ROM through $2007 (see The PPUDATA read buffer), and proper behavior of the nametable selection bits of $2000 and $2006.[1] In addition, there are several bad dumps floating around, some of which were ripped from pirate multicarts whose cheat menus leave several key parameters in RAM.
  • Super Mario Bros. 3 relies on an interaction between the sprite priority bit and the OAM index to put power-ups behind blocks.
  • The Young Indiana Jones Chronicles accesses PPUDATA ($2007) during rendering to perform a glitchy y scroll (to make the screen shake when cannon balls hit the ground). See the notes on accessing $2007 during rendering on the skinny on NES scrolling page.

N8选择游戏的画面


先是豆卡测试,完美,无任何画面破碎问题,之前在原装机上运行会出现画面破碎,当然可以更换IC 373解决。(测试用主机

RGB PPU模块包含了373和vram模块,所以完全不存在这个问题




开始按照兼容性列表进行测试




诡异的现象发生,昨晚测试这个游戏的时候发现标题画面会随着音乐有节奏的破碎,但是今天早上测试却没有这个问题。





同样,昨晚测试的这款游戏不存在问题,结果今天早上测试却出问题。基于以上现象,我估计是测试板的问题,连接的那么多线肯定会受到干扰,相信RGB PPU本身不存在什么问题。













新增游戏,菲力猫。这个游戏有一位朋友强烈建议测试的,目测运行完全无任何问题


Gun Sight 也是朋友推荐测试的,这游戏用N8烧录卡,运行在原装红白机上会出现花屏问题,但是用FC Diy2.0主机+RGBPPU就不存在这个问题,目前还不知是N8的问题还是主机的问题,如果那位朋友有实体卡带还请帮忙测试确认下。

以上屏摄都是使用手机直接拍摄,色温会不固定,所以照片颜色不作为实际评判标准,如果大家需要我测试什么Game,请直接跟帖,也可以将卡带直接寄给我,当然是N8还不支持的游戏。谢谢。

[ 本帖最后由 nvnv-sunny 于 2014-3-15 09:59 编辑 ]
附件: 您所在的用户组无法下载或查看附件


本帖最近评分记录

TOP

引用:
原帖由 shooter556 于 2014-3-14 13:38 发表
rgb插座也不做个杜邦线么,直接焊上去啊~
目前只是测试,所以简单的焊接了下



TOP

成品预计在下个月底左右,到时tb交易即可。


TOP

发新话题
     
官方公众号及微博