CRT in extreme slow motion

You can talk about almost anything that you want to on this board.

Moderator: Moderators

Post Reply
User avatar
dougeff
Posts: 3078
Joined: Fri May 08, 2015 7:17 pm

CRT in extreme slow motion

Post by dougeff »

I saw this on reddit retrogaming.

They play SMB with a super slow motion camera. The NES relevant video is between 1 and 4 minutes.

https://youtu.be/3BJU2drrtCM
nesdoug.com -- blog/tutorial on programming for the NES
lidnariq
Posts: 11429
Joined: Sun Apr 13, 2008 11:12 am

Re: CRT in extreme slow motion

Post by lidnariq »

I thought it a little amusing that at the peak 380kfps, there's roughly about one instruction completing for each recorded frame.
User avatar
Dwedit
Posts: 4921
Joined: Fri Nov 19, 2004 7:35 pm
Contact:

Re: CRT in extreme slow motion

Post by Dwedit »

And here we see the 1 frame of input lag inherent to almost all NES games.
Here come the fortune cookies! Here come the fortune cookies! They're wearing paper hats!
User avatar
zeroone
Posts: 939
Joined: Mon Dec 29, 2014 1:46 pm
Location: New York, NY
Contact:

Re: CRT in extreme slow motion

Post by zeroone »

Dwedit wrote:And here we see the 1 frame of input lag inherent to almost all NES games.
Really? Can you elaborate?
User avatar
mikejmoffitt
Posts: 1353
Joined: Sun May 27, 2012 8:43 pm

Re: CRT in extreme slow motion

Post by mikejmoffitt »

Dwedit wrote:And here we see the 1 frame of input lag inherent to almost all NES games.
This depends on what you call a frame of lag. I don't think it's reasonable to poll for inputs in any game until an entire frame has been rendered; i.e. during vblank. Even modern displays still scan like the CRT does, and nothing here is intrinsic to NES games.

If you're polling inputs to process the logic for frame [n+1] at the end of frame [n], I would consider this zero frames of lag.
User avatar
Dwedit
Posts: 4921
Joined: Fri Nov 19, 2004 7:35 pm
Contact:

Re: CRT in extreme slow motion

Post by Dwedit »

NES games run the game logic during render time. So when the pixels are rendered, you get the game state of the last frame. So all NES games have a minimum of 1 frame of lag between your input and the output being reflected on the screen.
Compare this with the Atari 2600 - Games for that system run the game logic during vblank time, and the game races the beam to render the screen. No possible input lag at all.

NES Emulators could be made to compensate for the 1 frame of internal input lag by using time travel (savestates), but I don't know of any NES emulators that do this. I have seen Genesis emulators do this though.
Here come the fortune cookies! Here come the fortune cookies! They're wearing paper hats!
User avatar
Kasumi
Posts: 1293
Joined: Wed Apr 02, 2008 2:09 pm

Re: CRT in extreme slow motion

Post by Kasumi »

I'm toyed with the idea of making a <1800 cycle thing in the vblank, then DMAing to get rid of the lag, for no other reason than just because.
JRoatch
Formerly 43110
Posts: 422
Joined: Wed Feb 05, 2014 7:01 am
Contact:

Re: CRT in extreme slow motion

Post by JRoatch »

For what it's worth, my Simple button logger tool runs all logic and graphical updates within vblank.
The soon to be manufactured Action 53 volume 3 has the most up to date version of it.
psycopathicteen
Posts: 3140
Joined: Wed May 19, 2010 6:12 pm

Re: CRT in extreme slow motion

Post by psycopathicteen »

Wow, the NES has 10 times as much cycles in one frame than the Atari has during V-blank.
DementedPurple
Posts: 318
Joined: Mon Jan 30, 2017 5:20 pm
Location: Colorado USA

Re: CRT in extreme slow motion

Post by DementedPurple »

psycopathicteen wrote:Wow, the NES has 10 times as much cycles in one frame than the Atari has during V-blank.
But to be fair, most, if not all of the graphics rendering is done simultaneously with the TV scanning, so it’s able to do more game logic during V-blank
User avatar
tokumaru
Posts: 12427
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Re: CRT in extreme slow motion

Post by tokumaru »

psycopathicteen wrote:Wow, the NES has 10 times as much cycles in one frame than the Atari has during V-blank.
It's more like... 5 times, no?
lidnariq
Posts: 11429
Joined: Sun Apr 13, 2008 11:12 am

Re: CRT in extreme slow motion

Post by lidnariq »

Most 2600 kernels seem to render 256x192, so that should be 228÷3×(262-192) = 5320 cy

I assume the 10x was assuming a full 224 scanlines rendered on the 2600 (leaving 2888cy during vblanking), but few games did that because it's just so little time.
Post Reply