Sprite Priorities (Again...)

Discuss emulation of the Nintendo Entertainment System and Famicom.

Moderator: Moderators

WedNESday
Posts: 1284
Joined: Thu Sep 15, 2005 9:23 am
Location: Berlin, Germany
Contact:

Post by WedNESday »

WedNESday can do both vertical and horizontal scrolling including split screen scrolling no problem. Also, WedNESday ignores the PPU documents (341 ppu cc etc.) and just renders the scanline normally (i.e. it just fetches 1 tile every 8 pixels and renders it). I know that some of you may think that this would make the emulator run incorrectly but most (90%) NROM games (no mapper support yet) run perfectly (still some PPU work to do).
User avatar
Disch
Posts: 1848
Joined: Wed Nov 10, 2004 6:47 pm

Post by Disch »

He means you'll have issues with games which do mid-scanline effects like Final Fantasy, Marble Madness, Micro Machines, and several others.

Rounding off when Sprite-0 hit happens could affect games as well... if you're rounding off to the start or end of the scanline which sprite 0 hit happens, several games will have display problems.
WedNESday
Posts: 1284
Joined: Thu Sep 15, 2005 9:23 am
Location: Berlin, Germany
Contact:

Post by WedNESday »

I am currently emulating accurate CPU timing so that may help. What kind of effect does Final Fantasy etc. use that may effect my emulator?
User avatar
Disch
Posts: 1848
Joined: Wed Nov 10, 2004 6:47 pm

Post by Disch »

When you light up an orb in Final Fantasy, the game does timed code to create a "beam of light" which makes sort of a slanted rectangled from the top-left corner of the screen to the player's position. The game accomplishes this by toggling monochrome mode at certain points in the scanline. With a typical scanline renderer... you will either not show this effect at all... or you will show every scanline in monochrome mode.

Marble Madness swaps CHR midscanline for the race titles. If you remember playing this game in NESticle back in the day, you know how a scanline renderer will display it (shows garbage tiles where there should be text).

Micro Machines does VERY weird things in the title screen... relying on the PPU address to be incremented at a very specific time. The specific glitch I have in mind is minor and hard to explain... but it's still worth mentioning.
WedNESday
Posts: 1284
Joined: Thu Sep 15, 2005 9:23 am
Location: Berlin, Germany
Contact:

Post by WedNESday »

Thanks for letting me know. For the time being i'll stick with my scanline engine, just so I can play some of the more basic ROMs. But in the future I will write an accurate PPU renderer. The real point that I am making is that I never intended to make my NES emulator 100% accurate, I just did it for fun, like most people.
User avatar
Anes
Posts: 702
Joined: Tue Dec 21, 2004 8:35 pm
Location: Mendoza, Argentina

Post by Anes »

The real point that I am making is that I never intended to make my NES emulator 100% accurate, I just did it for fun, like most people
I think doing it for fun doest mean that an emulator should display only a window with a title saying "my emulator" or if you are progamming in a console OS says "my emulator" and exits, you should be the more accurate you need, i do it for fun too, but some games that i owned when i was child doesnt work and that becouse accuracy, so i try to fix it.

The point is there is nothing to "fun" do with "accuracy".

P.D= or isnt FUNNY to do it ACCURATTLY?
ANes
Post Reply