gauauu Posted May 6, 2016 Share Posted May 6, 2016 I've got a few places in my game where I need to waste a few frames to do extra CPU calculations (ie during transitions between screens). I'm curious, in general, what happens if VBLANK is left on through the whole frame? (But still doing VSYNC at the right time, using the right amount of scanlines, etc) Will it throw off TVs and cause chaos, or will it just leave the screen blank for the entire frame, or does it depend on the TV? 1 Quote Link to comment Share on other sites More sharing options...
+Omegamatrix Posted May 6, 2016 Share Posted May 6, 2016 It should leave the screen blank for the whole frame, and as long as you still do Vsync you should be okay. I can't speak for every single TV, but this seems fine to me. Quote Link to comment Share on other sites More sharing options...
gauauu Posted May 6, 2016 Author Share Posted May 6, 2016 Thanks! Quote Link to comment Share on other sites More sharing options...
Gip-Gip Posted May 6, 2016 Share Posted May 6, 2016 (edited) I've got a few places in my game where I need to waste a few frames to do extra CPU calculations (ie during transitions between screens). I'm curious, in general, what happens if VBLANK is left on through the whole frame? (But still doing VSYNC at the right time, using the right amount of scanlines, etc) Will it throw off TVs and cause chaos, or will it just leave the screen blank for the entire frame, or does it depend on the TV? It's probably not a good idea to leave vblank on. For changing screens just turn off vsync until you're ready to start the frame. Doing this every frame would never be a good idea, as it could make a dark frame in-between all other frames(causing a flicker effect) but just between scenes and stuff like that it should be fine. Edited May 6, 2016 by Gip-Gip Quote Link to comment Share on other sites More sharing options...
Mr SQL Posted May 6, 2016 Share Posted May 6, 2016 It's probably not a good idea to leave vblank on. For changing screens just turn off vsync until you're ready to start the frame. Doing this every frame would never be a good idea, as it could make a dark frame in-between all other frames(causing a flicker effect) but just between scenes and stuff like that it should be fine. Using every other frame decreases the frequency of the video signal to 30 HZ; there are half as many frames, the emulator creates dark frames where none exist. This technique bypasses the deinterlacing filter in modern TV's for a much clearer display, and it's the correct spec for the phosphor on a CRT so high speed animation looks extremely smooth instead of blurry with slight image doubling. You can see these differences in StarBlitz via the BW switch. The Atari is tremendously flexible, I encourage everyone to experiment with changing the video signal and see what you can come up with! Quote Link to comment Share on other sites More sharing options...
gauauu Posted September 7, 2016 Author Share Posted September 7, 2016 This is a little old, but for any future people that find this thread, I thought I'd add a summary about it afterward, since there's some conflicting information above. I want to prevent confusion about the results.... It should leave the screen blank for the whole frame, and as long as you still do Vsync you should be okay. I can't speak for every single TV, but this seems fine to me. I did some experimentation and this worked fine. I'm using it in my game. I just leave vblank on, but keep the vsync timing correct. It draws a blank frame, which is exactly what I wanted. This answer seems right on. It's probably not a good idea to leave vblank on. For changing screens just turn off vsync until you're ready to start the frame. Doing this every frame would never be a good idea, as it could make a dark frame in-between all other frames(causing a flicker effect) but just between scenes and stuff like that it should be fine. This had very bad results. (and was what caused the problems in the first place) Turning of vsync until I was ready to start the frame meant that I had an uneven frame rate, which caused the screen to roll. Unless I'm misunderstanding what gip-gip is recommending, this answer is just incorrect. Using every other frame decreases the frequency of the video signal to 30 HZ; there are half as many frames, the emulator creates dark frames where none exist. This doesn't really relate to what I was asking. 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.