Eugene Vasconi did several Christmas programs for The Rainbow. This is from “Holiday Hearth” in December 1986.
Christmas Fireplace is a warm addition to your holiday cheer and uses a graphics technique put forth by John Fraysse in the October 1983 Rainbow.
This is low resolution graphics—PMODE 1—with four colors. The advantage of low resolution graphics was partly that it used less memory, and partly that because it used less memory it could be manipulated more easily. These computers were very slow compared to modern computers. Drawing the graphics took time, and the user could visibly see the shapes drawing slowly on the screen.
That second number that always accompanies PMODE is the page of memory to start the graphics on. The Color Computer had eight pages for graphics, depending on how you allocated it. Higher resolution, or more colors, used more pages for each screen.
PMODE | Resolution | Colors | Resolution | Pages per screen |
---|---|---|---|---|
4 | high | 2 | 256x192 | 4 |
3 | medium | 4 | 128x192 | 4 |
2 | medium | 2 | 128x192 | 2 |
1 | low | 4 | 128x96 | 2 |
0 | low | 2 | 128x96 | 1 |
This combines the tables on pages 98 and 100 of Getting Started with Extended Color BASIC.
By using low resolution, Vasconi was able to get four colors and four screens (8 pages, divided by 2 pages per screen). So he could draw on one screen, and then copy the drawing, page by page, to another screen.
- 95 PMODE1,7
- 96 PCOPY 3 TO 7:PCOPY 4 TO 8
Here, he copies the two pages of the screen that are on pages 3 and 4 to pages 7 and 8, after switching to the screen starting at page 7.
Copying pages made animation a little easier: you could copy a scene from one set of pages to another, and then draw over just the changes. It works just like the old flip books that kids used to draw in their notebooks. Each frame rapidly replaced the previous frame creating the illusion of motion. In this case, an animated fire in with four frames.
This is the Fraysse graphics technique Vasconi mentioned in the introduction:
Part one of the program creates the basic graphics scene while part two holds the animation loop of four fires, light patterns, and the music.
You could, of course, get into all sorts of trouble by forgetting which page your screens started on—or even forgetting how many pages you’d allocated for graphics. The PCOPY command was perfectly happy to write over memory that was allocated for something else, such as the BASIC program that was drawing the image.
When it all worked, however, it was fascinating, fun, and very rewarding.
The part of the program that was most fun was keeping the music going while the fireplace roars along. I accomplished this by using data statements and a PLAY command that inserted one note of the song between every flip of the pages. With the proper delay, it sounds like a continuous tune.
This was worthy enough that I decided to upload a video of it. While the video is a screen recording of the program running in xroar, the audio in the video is from an actual Color Computer 2; xroar added a bunch of clicks to the audio that aren’t there on a real computer. (If anyone knows why, and more importantly how to get rid of those clicks, let me know.)
As you’ll see in the video, the program was actually two programs. The first drew the graphics and the second displayed them while playing the music. This was a common way of not wasting precious memory: the BASIC program held the code for creating the graphics, and the graphics themselves took up memory after being created. With four screens of graphics on eight pages, Vasconi was able to save a lot of memory by having the user jettison the BASIC code for creating the graphics once the graphics were created.
The CoCo will retain anything created on the graphics pages even when a new program is loaded.
You’ll see the prompt in the video for loading the new program. That’s because the program was designed to work on a cassette-based storage system; it was safest to have the user manually load the next program in a chain of programs. With a disk-based system, it is safest to have the program itself do the chaining. In this case, I replaced 97 END
with 97 RUN"XMASDRVR.BAS"
.
Merry Christmas! Keep the Yule fire burning and the Christmas carols playing.
In response to 8 (bit) Days of Christmas: Eight holiday images created on the TRS-80 Color Computer, from the early to mid eighties.
- Getting Started with Extended Color BASIC at Internet Archive (ebook)
- This is the combined manuals for Color BASIC and Extended Color BASIC.
- Vasconi Holiday Hearth on the TRS-80 Color Computer at Mimsy@YouTube
- “The output of a BASIC program by Eugene Vasconi from the December 1986 issue of The Rainbow. The video is from xroar; the audio is from a Color Computer 2, with the background noise removed by Audacity.”
- XRoar—Dragon & CoCo emulator
- “XRoar is a Dragon emulator for Linux, Unix, Mac OS X and Windows. Due to hardware similarities, XRoar also emulates the Tandy Colour Computer (CoCo) models 1 & 2. More features.”
More Color Computer
- Simple game menu for the Color Computer 2 with CoCoSDC
- This simple menu provides one screen for cartridges saved in the CoCoSDC’s flash ROM, and any number of screens for your favorite games for your friends to play.
- Rainbow Magazine preflight tool enhanced
- I’ve added several features to the Rainbow Magazine preflight tool, including a check for references to line numbers that don’t exist.
- CoCoFest! 2021
- Forty years later, I finally make it to CoCoFest!
- BASIC tokenization examined
- Why do old BASIC programs have strange characters in their .BAS files? Why do they look like they’re compiled code?
- What are the 8 bits in 8-bit computing?
- Retro computing is often called 8-bit computing. This is because the bytes that these computers use are composed of eight bits, and much of what the computer does is operating on these individual bits, not on the byte as a whole.
- 19 more pages with the topic Color Computer, and other related pages
More computer history
- Creative Computing and BASIC Computer Games in public domain
- David Ahl, editor of Creative Computing and of various BASIC Computer Games books, has released these works into the public domain.
- Hobby Computer Handbook: From 1979 to 1981
- Hobby Computer Handbook lived for four issues, from 1979 to 1981. Back in 1979 and 1980, I bought the middle two issues. I’ve recently had the opportunity to buy and read the bookend issues.
- Hobby Computer Handbook
- Hobby Computer Handbook was a short-lived relic of the early home computer era, an annual (or so) publication of Elementary Electronics.
- 8 (bit) Days of Christmas: Day 11 (O Christmas Tree)
- Day 11 of the 8 (bit) days of Christmas is the graphic accompaniment to “O Tannenbaum” from Robert T. Rogers “Holly Jolly Holidays”, from December 1984.
- 8 (bit) Days of Christmas: Day 101 (Rudolph)
- An early form of musical ebook, without scenes illustrating the progress of the song—in this case, Rudolph the Red-Nosed Reindeer. Along with the secret world of POKE.
- Six more pages with the topic computer history, and other related pages
More The Rainbow magazine
- Rainbow Magazine preflight tool enhanced
- I’ve added several features to the Rainbow Magazine preflight tool, including a check for references to line numbers that don’t exist.
- 8 (bit) Days of Christmas: Day 1 (Do You Hear What I Hear?)
- For day 1 of the 8 (bit) days of Christmas, John Mosley’s “Do You Hear What I Hear?” from the December, 1987, Rainbow Magazine. Mosley coaxes four-voice music out of the CoCo 1 and 2 using a machine-language program.
- 8 (bit) Days of Christmas: Day 10 (Up on the Rooftop)
- In the December 1986 Rainbow, J. D. German presented us with this game, involving flying and landing Santa to deliver presents!
- 8 (bit) Days of Christmas: Day 11 (O Christmas Tree)
- Day 11 of the 8 (bit) days of Christmas is the graphic accompaniment to “O Tannenbaum” from Robert T. Rogers “Holly Jolly Holidays”, from December 1984.
- 8 (bit) Days of Christmas: Day 101 (Rudolph)
- An early form of musical ebook, without scenes illustrating the progress of the song—in this case, Rudolph the Red-Nosed Reindeer. Along with the secret world of POKE.
- Five more pages with the topic The Rainbow magazine, and other related pages