FM Chiptune Musician | DX Complex Staff | SEGA, MSX and Retro Tech Dork | He/Him

Formerly _NetNomad@kbin.run
Microblogging at _NetNomad@oldbytes.space
https://netnomad.dxcomplex.com/

  • 0 Posts
  • 3 Comments
Joined 10 months ago
cake
Cake day: August 15th, 2024

help-circle
  • i think you’re mixing up a few different things here. beam-racing was really only a thing with the 2600 and stopped once consoles had VRAM, which is essentially a frame-buffer. but even then many games would build the frame in a buffer in regular RAM and then copy everything into VRAM at the vblank. in other cases you had two frames in VRAM and would just swap between them with a pointer every other frams. if it took longer than one frame to build the image, you could write your interrupt handler to just skip every other or every three vblank interrupts, which is how a game like super hang-on on the megadrive runs at 15 FPS even though the VDP is chucking out 60 frames a second. you could also disable interrupts when the buffer was still being filled, which is how you end up with slowdown on certain games when too many objects were on the screen. too many objects could also lead to going over the limits of how many sprites you can have on a scanline, which is why things would vanish- bit that is it’s own seperate issue. if you don’t touch VRAM between interrupts then the image shown last frame will show this frame as well