How Pong's inventor gave Woz a hack to bring color to the Apple II

Originally published at:


Flashback to my Radio Shack CoCo.

If you set every other horizontal pixel in (nominally black/white) high-res mode (256x192), you got either red or blue for odd or evens on the line on an NTSC screen.

This led to programs intercepting the reset signal so you could hit the “reset” button on the back to fix whether you got red and blue or blue and red.

:neutral_face: …old computers really (edit) occasionally kinda sucked… new ones too, but in less painful ways…


Someone here recommended the book iWoz, Woz’s autobiography… I definitely enjoyed it, and I recommend it as well.


I disagree. Old computers had chips with actual PRMs so you could do what you want.


Old computers had chips with actual PRMs so you could do what you want.

Fair point… it would be nice to buy a modern computer without an unknown number of little CPU’s lurking in every interface and with transparent firmware…


One thing that we lost as the eight-bit era faded away was the built-in BASIC interpreter. It might not have been the best of languages and certainly had its limitations, but still you could power it up and quickly be in a functioning programming environment.

On the other hand, these days we have a plethora of languages that can be had for $0. I can remember when worthwhile C compilers cost hundreds of dollars.

I’m especially grateful that projects like Raspberry Pi took off. Having an inexpensive, yet capable computer like that can go a long way towards rolling back the “computer literacy is knowing how to use Office” bullshit.


We need to find out who invented this cheap hack back in the days of television. And thank gods for collective memory; if it wasn’t for that we’d never remember anything. Kudos to Al!


When Borland started releasing compilers for $50 it really shook up the market.


In one repair shop, there was a real cheap, sleazy color bar…

I think that we can all agree that Color Bars are just plain wrong.

1 Like

Early Pong prototype. The main issue at that stage was power consumption.


Oh, for the “good ol’ days” when one could slap a 3-color transparent plastic overlay on one’s b&w tv screen, then yell, “Now that’s my cup of tea!”


Is there a video of this color pong anywhere?

Also, how did the Apple II produce colour on a PAL system?

The Apple ][ high-res color was quite a thing. I worked as a repair tech in a Byte shop in 1978, so I was immersed in that word when it was fresh. (I couldn’t afford an Apple myself, of course.) I remember how it ran right at the hairy edge of the TV resolution, and twinkled a lot. But it was definitely color, for a fraction of the price of a Cromemco system.
It was a hacker’s dream, and it was really surprising that it made as much traction as it did in the consumer arena.


Evidently, it didn’t:

in the European model the video output signal was changed from color NTSC to monochrome PALby changing some jumpers on the motherboard and using a slightly different frequency crystal oscillator — an extra video card (which only worked in slot 7) was needed for color PAL graphics, since the simple tricks designer Steve Wozniak had used to generate a pseudo-NTSC signal with minimal hardware did not carry over to the more complex PAL system.

(from Wikipedia)


For all its faults as a language, I credit Javascript with getting me started in programming. Why? All the tools you need to start running your own programs are the text editor and web browser which ship with your operating system! Most web browsers even include a pretty nice console and debugger, if you can find the secret setting to enable it.

1 Like

/bin/bash is your friend


I read various Apple ][ books at the time and there was one that outshone the others like the Sun does other stars. It explained where to attach a wire to the motherboard to pick up the vertical refresh signal and pipe it to joystick button #3 (the fourth one, rarely used). With that, so long as your code (machine language of course) ran in an exact number of cycles, you could draw in lo-res mode (thus, with lots of colors) but change your video memory quickly enough to achieve hi-res, since you’d know exactly which pixel was being drawn at a given millisecond. In addition to unlocking these effective color modes you could redraw the screen during the eons-long vertical refresh delay, resulting in smooth motion. I wish I could find that book again (I don’t have the name) and see what other wonders that author brought to the world.


The stock Euro Apple II did not produce PAL color, but Apple (and others) provided a PAL video card to generate a PAL color signal. This video shows what it looked like:

Apple also released a rare RGB video card for the Apple IIe that produced a 16-color digital RGB signal similar the CGA. Unfortunately, the card did little more than emulate the existing NTSC color artifacting, so there was no point to it.

One unique feature of the RGB card is that it allowed software to mix double-hi-res 16-color (140x192) and monochrome (560x192) graphics on a single screen by switching between color and monochrome video on a scanline basis, something that’s not possible with a regular NTSC composite single. Of course, there is no software that takes advantage of that feature.


Oh, yes indeed. When Turbo C came out, I jumped at getting a copy. Even better, it was quite a nice compiler in its era - and vastly better than the home-grown C compiler that we used at my first job.

On that rickety old compiler, any arithmetic using longs, floats, or doubles required the use of library functions, since the arithmetic operators only supported ints (as was the case in Version 6 Unix). In addition, it didn’t directly generate object code; its output was assembly language that then had to be fed to MASM.

But since my boss wrote that compiler, I wasn’t about to even suggest that we switch. More’s the pity, since that would have sped up build times by at least 5x.

1 Like

Of the days of CGA, EGA, and VGA…and whatever Tandy was doing that was a weird CGA/EGA hybridization thing…