Update of my Window demo with mid-frame palette writes

Discuss technical or other issues relating to programming the Nintendo Entertainment System, Famicom, or compatible systems.

Moderator: Moderators

Post Reply
User avatar
Bregalad
Posts: 8026
Joined: Fri Nov 12, 2004 2:49 pm
Location: Caen, France

Update of my Window demo with mid-frame palette writes

Post by Bregalad »

I was bored this evening so I just made an update/upgrade of my old Window demo so that it appears with the least glitches as possible, and be available for both NTSC and PAL.
This demo basically display a textbox (window), but that have a background whose color is chnaged each HBlank with various PPU writes (only the BG color is changed to have the shortest timing possible).
Demoes and the sources are available here : http://jonathan.microclub.ch/window/

The NTSC version allow for a 26-tile wide window, but the PAL version only allow for 25-tile wide window (the 26th would be flickering due to slower CPU).

Now the NTSC version appears flawlessly in Nestopia and Nintendulator (before it had glitches) I don't know how it does on real hardware.

The PAL version have glitches on the far right, but on the real hardware they are significantly less noticeable than in Nestopia. Also, if I wait one CPU cycle more, the image appears perectly stable on both Nestopia and Nintendulator, but on real hardware is shakes horizontally ocasionally and that only on half of resets (yet it's still innaceptable). So I had to wait one cycle less and make glitches appear on the right (the numbers after the instruction in the source may not be the correct ones, I didn't care to change them, I just go for the trial and error when doing timed code).

EDIT: I'm uploading the files directly to the forum since it is now possible, and I don't have a website anymore.
Attachments
win_timing.asm
(3.64 KiB) Downloaded 335 times
window2_pal.nes
(24.02 KiB) Downloaded 342 times
window2_ntsc.nes
(24.02 KiB) Downloaded 358 times
colorwin.asm
(8.24 KiB) Downloaded 337 times
Last edited by Bregalad on Fri Dec 08, 2017 1:25 pm, edited 1 time in total.
Useless, lumbering half-wits don't scare us.
strangenesfreak
Posts: 155
Joined: Thu May 03, 2007 3:07 pm
Contact:

Post by strangenesfreak »

Looks really awesome, but in the latest version of Nintendulator (0.965), the NTSC version shakes horizontally one time booting up for certain resets, and boots up perfectly fine in other resets. In the latest version of Nestopia (1.40) however, the NTSC version shakes all the time, regardless of soft or hard resets. Also in Nestopia, the PAL version's glitches spill into the textbox itself, while it sometimes does for Nintendulator after certain resets.
User avatar
Bregalad
Posts: 8026
Joined: Fri Nov 12, 2004 2:49 pm
Location: Caen, France

Post by Bregalad »

Yeah, I somewhat fixed that now, at least I made a PAL version that looks almost flawless on real hardware (there is glitches on the right but they are almost invisible on my TV).
For Nintedulator I use 0.965 and the NTSC version works 100% prefect. I fine tuned it like I did on PAL by moving the hit one pixel left, chaging the best case and worst case timing.
Useless, lumbering half-wits don't scare us.
Post Reply