Years ago I used to make a Christmas demo
every year but I had fallen out of the habit. This year
I thought I would try to use some of my newfound Apple II cycle
counting skills.
Video
I apologize for the quality of the video. The machine with my video
capture device unexpectedly broke, so I had to resort to using a camera.
V1.1 notes -- 12/23/2018
This release fixes a few bugs. The reflections on the red ball
are properly done now. You can now mute the music with 'M' during the
wreath scene. It now auto-restarts if you want to leave it running.
Also the horizontal scroll wipe is 5s faster due to table
lookup.
V1.0 notes -- 12/21/2018
I had planned on a slightly fancier demo, but ran into a hard deadline of
getting it done before Christmas (or at least, before I left work for
the year as my Apple II machines are at my office).
The music I made myself. I was hoping to have a second piece, a bit
more chip-tune like, but ran out of time (and skills).
The first scene is a wreath with flickering candles.
There is trickery here; vapor-lock and cycle counting switch graphics
modes mid-screen, allowing low-res for the flames and hi-res for the
rest.
The next part is scroll text:
More vapor-lock/cycle-counting, as you usually can't have a hires/lores
split. I was hoping the reflection-on-the-ball effect would look cooler
but ran out of time (and RAM) to do it properly.
The end part is a horizontal slide.
On some architectures you can do this with a few register writes.
On the Apple II you not only have to read, shift, then write 8k of data
but also the data is in 7-bit chunks with random color bits in the way,
and Woz of course put things least-significant bit first. My original code
took 70s to scroll a third, after lots of unrolling and optimizing I gave
up once I had it down to about 25s or so. There are probably better/faster
ways. (Update, was randomly thinking and realized that answer is probably
a lookup table. Will eat some RAM but would make things faster.
Did get it 5s faster with a 128 byte table).
Other VMW Christmas DemosOther VMW Software DemosOther Apple2 ProjectsBack to the VMW Software Productions Page