Atari 2600 Graphics
The cluster focuses on the Atari 2600's unique graphics hardware lacking a framebuffer, requiring real-time 'racing the beam' techniques to manipulate registers for scanlines, sprites, and tiles during display. Discussions also compare it to other retro consoles like C64, Amiga, and NES, highlighting similar hardware limitations and programming tricks.
Activity Over Time
Top Contributors
Keywords
Sample Comments
There is no frame buffer. The graphics are all drawn by manipulating a few registers in the video chip.Everything is scan lines and cycles. You get a one bit per pixel 40 pixel wide background, a couple of single color 8 bit sprites and a couple more two bit wide sprites and that is pretty much it. A lot can be done by simply changing a color register at specific times too. Reusing sprites happens regularly as well. (Sprite drawn at left of screen can be repositioned to the right to be se
It has a tile mode. That's going to be how many larger images are handled.Given robust tiles and sprites, there really isn't a need to hold an entire screen in RAM, and given one does not exceed the sprite / line limits, nor is there a need to double buffer it.Edit: For a smaller bitmaps, one could just make a buffer anyway. Dedicate X number of tiles to that bitmap, and another set for a buffer. Update one set, switch to display, update the other set. Collections of sp
https://www.youtube.com/watch?v=XTRkZ-SKs5gThat's basically the CPU running at 1.024 Mhz. The video hardware is dumb, runs independent of the CPU, and just scans a region of memory to send pixels to the display. All software pushing pixels otherwise.You are not wrong with the NES, C64 and other machines using a graphics chip with sprites and other hardware features to assist in vari
The 2600 was such an interesting machine for its lack of video RAM. Developers "raced the beam" to draw things just in time for them to be displayed, changing colors and sprites partway through a line to make all the cool (for the time) effects.
I'm no expert but I was around and programming assembler graphics back when that hardware was new (although I had a 6809 Radio Shack Color Computer). What they are showing was thought to be impossible on that hardware. No common games or graphics apps on that hardware back then ever showed:* Updating the entire screen at faster than slide show rates.* The graphics card had no modes which could display that many colors or that (apparent) amount of resolution. These wizards are leveragi
Literally true. The 2600 had no framebuffer, because there wasn't enough RAM to fit the displayed screen. Stuff was generated at runtime as the raster progressed down the screen.
Blitting refers to rewriting bytes, yes. It does not imply dedicated hardware to do so, which is why Apple games flickered.Calling Atari and Commodore graphics "awkward" in the scenario you describe sounds like laziness in learning and taking advantage of new graphics hardware. The sole "awkward" thing on the Atari was that, for some reason, the sprites were as tall as the screen and therefore the only way to achieve vertical movement of a sprite was indeed to move it thro
I'd say about 10% of games had some sort of bankswitching. I think about 2 or 3 games even had a 256-byte expansion RAM.Not only was there no framebuffer and only 128 bytes of RAM, but the graphics chip didn't generate any interrupts (it could halt the CPU until the start of the next scanline though). You had to wait and spinlock on a timer for the proper amount of time after finishing your frame and processing game state to start drawing the next frame.You also manually had to
Look up 'racing the beam' if you haven't before. The answer is... you can't! It didn't have a frame buffer and lines had to be written to the display one at a time. There was a lot of sprite flicker as many games had more on screen than the console could actually display in one frame.
Yes. It was hard for Commander Keen because DOS used a screen buffer that was written to first before rendering the pixels to screen, which was quite slow back then.In comparison, game consoles used blitting, and would directly send the lines to the CRT to draw. I assume C64 is the same.