Ys 1 (J) split screen improvement

A place where you can keep others updated about your NES-related projects through screenshots, videos or information in general.

Moderator: Moderators

Post Reply
NewRisingSun
Posts: 1510
Joined: Thu May 19, 2005 11:30 am

Ys 1 (J) split screen improvement

Post by NewRisingSun »

Last year I wondered whether it was possible to have a clean screen split without a blank scanline in-between to hide jitter and bankswitching artifacts, based on my observation that no commercial game exhibited such a clean split. The answer was that it should be theoretically possible, leaving me to wonder why no NES-era developer ever managed to do it.

One such game that had always bothered me was Ys and its status bar. The split looks ugly in all emulators and on real hardware. Clean splits are especially difficult if a bankswitch or mirroring switch is required on the MMC1, because it takes five writes plus four shifts to perform the switch.

After several attempts, I managed to modify Ys to exhibit a clean split between the playfield and the status bar on NintendulatorNRS/Nestopa/Mesen/FCEUX as well as on real hardware using an Everdrive N8. The modification required more than changing a few timing constants; I need to write four MMC1 serial bits before waiting for the Sprite 0 Hit, then perform the final fifth write afterwards, plus the 2006/2005/2005/2006 technique.

I do not have access to a real MMC1 development cartridge, so it cannot be ruled out that it fails to work with a real MMC1. The only thing I could imagine going wrong is if a real MMC1 were to not allow its shift register to be in the "fourth bit state" for half a frame duration, though I have never read that this might be the case.

Attached find an IPS patch for "Ys (J) [!].nes". The only playtesting I did was talking to characters, pressing SELECT for the Options menu, going into shops, and leaving town to walk around the world map, so I cannot rule out that my modifications/additions to the very cramped fixed PRG bank might have broken something else, in case of which I appreciate being notified.
Attachments
Ys [f SplitScreen] v1.1.ips
(231 Bytes) Downloaded 343 times
Last edited by NewRisingSun on Mon Oct 08, 2018 10:32 pm, edited 1 time in total.
tepples
Posts: 22705
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Ys 1 (J) split screen improvement

Post by tepples »

Rad Racer also uses the technique of preloading four bits, so I think you're safe in that respect.
Great Hierophant
Posts: 780
Joined: Tue Nov 23, 2004 9:35 pm

Re: Ys 1 (J) split screen improvement

Post by Great Hierophant »

It works pretty well with the English Translation. I did notice the status bar jump occasionally when scrlling the screen vertically in the first town and later in the first temple.
NewRisingSun
Posts: 1510
Joined: Thu May 19, 2005 11:30 am

Re: Ys 1 (J) split screen improvement

Post by NewRisingSun »

I have updated the .IPS file in the initial post of this thread. The status bar should no longer jump.
Post Reply