Skip to main content
81 votes
Accepted

How did the SNES do the “pixelate” transition effect?

Believe it or not, it's a dedicated hardware feature of the Super Nintendo — it's the mosaic register, at address $2106. The programmer can pick a pixellation value from 1 to 16, which will cause the ...
Tommy's user avatar
  • 37.3k
78 votes
Accepted

How did old MS-DOS games utilize various graphic cards?

Did every programmer of every game implemented all possible various API's that old graphic cards supported? Yes - but it went even deeper than that. Early graphics cards had virtually no callable ...
Greg Hewgill's user avatar
  • 7,009
71 votes
Accepted

Why do old games use flashing as means of showing damage?

So, why was this so widespread? Was it simply because it was easier to do than anything else (and, you know, limited hardware of the day), Exactly that. To make a sprite blink, all you've got to do ...
Raffzahn's user avatar
  • 225k
70 votes

What causes that "organic fade to black" effect in classic video games?

@user253751 and @WimC are correct, this fade is achieved by drawing a semi-transparent rectangle over the screen, but using a transparency mode where the rectangle's color is subtracted from the color ...
scurest's user avatar
  • 791
70 votes

Why did old IBM-PC-compatible computers only have 16 colors available?

The original IBM Color Graphics Adapter (CGA) for the first IBM PC introduced the "80x25 at 16 colors" text display mode for use with output to color monitors like the IBM 5153 (as opposed ...
ssokolow's user avatar
  • 7,095
69 votes
Accepted

Why did older computers and OSes use UPPER case instead of lower case?

TL;DR: Upper Case Is the Default for Latin Script. Latin script is based on upper case and designed around that. Lower case is a later add-on (see below) for cursive. Default use-case for Latin script ...
Raffzahn's user avatar
  • 225k
68 votes

Was there a specific benefit to inverted (XOR) mouse cursors other than aesthetics?

XORing a cursor into a frame buffer (which is what you seem to be calling "inverted cursor") is actually simpler than ORing it in there: when the cursor has to be removed again (to move to ...
tofro's user avatar
  • 35.2k
63 votes
Accepted

Was AGP only ever used for graphics cards?

I researched this question online fairly thoroughly a while back. I could not find any reference to an AGP device that wasn't a graphics card. It wasn't exhaustive, and absence of proof is not proof ...
RETRAC's user avatar
  • 13.8k
62 votes

Why were some early PC 3D cards unsuitable for 2D graphics?

Early high-performance 3D accelerators such as the Voodoo Graphics have limited framebuffer resolutions (640×480 for most Voodoo Graphics configurations, 800×600 for the Voodoo2 in non-SLI) and colour ...
Stephen Kitt's user avatar
57 votes
Accepted

What determines the color of every 8th pixel on the Apple II?

A nice one - and coming up every now or then. TL;DR The Apple IIs video logic produces a B&W bitstream at the right frequency to bedazzle an NTSC TV set in a way to make it 'see' colour. The ...
Raffzahn's user avatar
  • 225k
56 votes

Why weren't 80s arcade games programmed in C?

I think the question I would ask is why would you program arcade gamers in C back in the 80's. Firstly, C was not nearly as popular in the world of microprocessor programming as you might imagine back ...
JeremyP's user avatar
  • 11.7k
56 votes
Accepted

Did John Carmack really invent "Adaptive Tile Refresh"?

John Carmack almost certainly was the first to use the hardware scrolling capabilities of the EGA specifically, together with efficient tile and sprite drawing and erasing algorithms to create a slick,...
knol's user avatar
  • 12.5k
50 votes

Can modern AI be used to program impressive graphics effects on very low performance home-retrocomputers, in particular 'A 3D-rotating-cube'

Modern AI on its own is not really advanced enough to be able to make a meaningful difference in this sense. However, there are many situations where the massive asymmetry between computational ...
introspec's user avatar
  • 4,162
49 votes

Why did 80x25 become the text monitor standard?

Where did the 80x25 text terminal size come from? Quick answer: It's one Punch Card Per Line Resulting in 24/25 lines (cards) per screen when using a 4:3 tube and a reasonable font as dictated by ...
Raffzahn's user avatar
  • 225k
47 votes

How did the early Macintosh computers update the display?

TL;DR: Exactly as you assume. The CPU shovelled the data around, even way slower than your calculation suggests, and everyone was happy about the high speed with which it happened :) To be honest, I'...
Raffzahn's user avatar
  • 225k
46 votes
Accepted

Looking for PC graphics demo software from the early 90s called "Unreal"

Unreal Megademo, Future Crew, 1992 possibly? Certainly has all the elements you mention.
Alan B's user avatar
  • 4,730
45 votes

How did Elite do vertex transformation?

Like all games from that era, cheating and tables. Two 256 byte tables and logarithms gave a 10x speed boost on multiply and divide on Commodore 64 at least. Matrix operations using addition only for ...
Alan B's user avatar
  • 4,730
45 votes

Was AGP only ever used for graphics cards?

While working on upgrading my Super Socket 7 based NAS, trying to get as much performance out of the platform as possible, I asked myself the same question. As an obviously headless NAS won't need a ...
Peter's user avatar
  • 551
44 votes
Accepted

Using DRAM as a camera sensor?

That sounds a lot like the Cromemco Cyclops. Released in 1975, it used a modified1 MOS 1kbit DRAM2 to capture a 32×32 black and white or greyscale image. The memory cells were initially set to all ...
Alex Hajnal's user avatar
  • 9,350
43 votes
Accepted

How can I create a split-scroll effect in an NES game?

This is done by changing the scroll mid-screen. This is what the nametables look like on scanline 30 in Super Mario Bros, with the scroll shown: The horizontal scroll is 0 (you can barely see the ...
NobodyNada's user avatar
  • 5,474
40 votes

Typical dpi of dot matrix printers available in the 1980s

The Epson MX-80, upon which many other printers were based, had nine round pins which were vertically spaced at 1/72" intervals. On such printers, the print head could generally move at two speeds, ...
supercat's user avatar
  • 37k
39 votes
Accepted

When and what was the first 3D acceleration device ever released?

The first appears to be Evans & Sutherland's LDS-1, introduced in 1969. The first one was delivered to Bolt, Beranek and Newman Inc., in August 1969. This was an analogue vector system, with depth ...
John Dallman's user avatar
  • 13.4k
38 votes

Why do old games use flashing as means of showing damage?

In addition to the other answer and comments, a character would often enjoy a brief period of invulnerability after sustaining damage — this period was indicated with the character blinking. The ...
thehole's user avatar
  • 481
37 votes
Accepted

Is there a simple way to display ANSI art and animation files in a modern terminal window?

There are various ANSI art viewers for modern platforms which satisfy all your feature requirements (command-line syntax excepted), for example: PabloDraw for Windows, macOS, and Linux ACiD Viewer 6 ...
Stephen Kitt's user avatar
37 votes
Accepted

Why do 3D models on the PlayStation 1 “wobble” so much?

The transform applied to project geometry from 3d to the 2d coordinates necessary for drawing on a screen is called a perspective projection. It involves calculating 1/z and multiplying x and y by ...
Tommy's user avatar
  • 37.3k
37 votes
Accepted

Where did DOS store graphics fonts?

Fonts for text rendered to the screen or paper in a graphics mode would simply be data shipped with the application. If this was perceived to be non-copy-able, it is likely because it was not (...
Chris Stratton's user avatar
36 votes

Why does Ms. Pac-man turn upside down?

The reason for this glitch is rather obscure; it's not surprising that the developers didn't catch it. It all starts with the tunnels on the sides of the screen. These tunnels allow Ms. Pac-man and ...
wizzwizz4's user avatar
  • 18.7k
36 votes

What techniques were used to reduce the required re-rendering in 3D programs?

A very broad question, so a random dump of thoughts: Elite approximates solid objects through convex objects. Because every game object (other than the missile) is convex that means by definition ...
Tommy's user avatar
  • 37.3k
35 votes
Accepted

How did "Ballblazer" pull off fast, smooth, first-person, solid-model 3D on Atari 8-bits?

There are two elements: The background The sprites The background is very straightforward: The vanishing point never changes so you have one graphic with a checkerboard in perspective. That graphic ...
Thomas's user avatar
  • 3,882
34 votes
Accepted

How did SNES render more accurate perspective than PS1?

The SNES hardware doesn’t implement perspective, it implements affine transforms of the background layer. Affine transforms aren’t sufficient for perspective. Perspective is implemented by changing ...
Stephen Kitt's user avatar

Only top scored, non community-wiki answers of a minimum length are eligible