Hello, and welcome to this episode of The 8-Bit Guy.
So, in a previous episode, I talked about BASIC and how important it was to machines
like this during the 1980s.
And I promised to do a full episode on the Super Expander cartridge for the VIC-20.
So here we are.
But, I’m also going to show you at the end, a little about this EPROM programmer that
also works on the VIC-20.
This is a fascinating little cartridge, but before I go into the super expander, I want
to present a little refresher course on the VIC-20.
It came out in 1980.
It had a graphics resolution of 176x184 with 16 colors, although generally only 8 of them
were available in most cases.
Considering the time it came on the market, the graphics were not bad.
I'd say the only half-way affordable computers that had better graphics were the Apple II
and the Atari 400 and 800 computers.
The sound wasn't bad either with 4 voices.
Although 3 of them were square wave and the 4th one for noise.
This was still better than pretty much every other computer or game system on the market,
except for the before mentioned Atari computers.
The weak point of this computer was by far the memory.
It only had 5K of RAM.
But if you think that sounds bad, it's even worse than you think.
Some of that RAM is needed by the system so there was only 3.5K available to the end user.
In fact, when you boot up the computer it will tell you that you have roughly three
and a half kilobytes free.
Even as a 6 year old kid trying to create programs in BASIC, I found myself constantly
running out of memory.
And the other weak point of this computer was it's implementation of BASIC.
You see, Commodore negotiated a killer deal with Microsoft.
For a single fee, they were able to use Microsoft BASIC in as many computers as they wanted
to.
So they just brought over the same BASIC that they used in the Commodore PET.
The PET, however, was a text-only machine.
It also had no sound synthesizer.
So there was no need for any BASIC commands to control graphics and sound, when the computer
didn’t have any.
So, that meant that computers like the Apple II had an edge since people could write their
own programs in BASIC and create graphics easily using the built in commands.
Keep in mind that back in 1980, coding your own programs in BASIC was still very much
a thing people actually did.
So, it was certainly possible to get RAM expander cartridges like this one for the VIC-20.
And it added some much needed RAM.
However, there weren't really that many programs that actually made use of it, since most commercial
programs tended to target the factory options so that the customer base would be largest.
They knew if they targeted the high-end, then that would limit the customer base of their
product.
And most of the good games for the machine were distributed on ROM cartridge anyway,
so there was no need to have a lot of RAM in the system for those.
But, if you were writing your own programs, there was another severe limitation to graphics.
If you wanted to initialize a full-screen bit-mapped graphics mode, you needed 4K of
RAM Just to hold the graphics for the screen.
And as you can see, this made it more or less impossible for the stock machine to do full-screen
graphics.
So even if you were able to somehow make it fit, there’d be no room left over for your
program!
But in 1981, Commodore released the Super Expander Cartridge.
Let's take a look inside and see what we get.
It’s kind of interesting how they have these little metal windows.
You can actually see right through to the little metal cover on the outside.
So, let’s take a closer look at the actual board.
The first thing I noticed is that it says copyright 1980, even though everything I’ve
read said this came out in 81.
And since the VIC-20 itself came out in 1980, that means this was at least in the planning
stages around the same time.
There are 6 static RAM chips, totaling 3K of extra RAM, and a 4 kilobyte ROM chip.
It doesn't really sound like this would add very much capability to a computer, but it
adds more than you think.
For one thing, remember the VIC-20 only has 3.5K of usable RAM, so this cartridge basically
doubles that.
So that's a significant improvement.
Looking at the very thin manual, you’ll see some of the commands that are added to
BASIC, such as graphics, draw, point, circle, paint, etc.
And it gives you commands to initialize text mode and 3 different kinds of graphics modes.
In the back there are some example type-in BASIC programs.
So let’s stick the cartridge in the VIC-20 and see what we get.
The first thing you’ll notice is that the startup screen is reporting six and a half
kilobytes of RAM.
So check out this very short little example program that creates sine-waves on the screen.
So, first of all, this would not be possible on the stock machine because, like I mentioned,
there isn’t enough RAM.
If you had a RAM expander cartridge, then you could write a program in BASIC to do this
exact same thing without the new BASIC commands, but it would require about 10 times the amount
of lines of BASIC code and using a lot of POKES and PEEKs, therefor wasting even more
of that precious memory.
Not only that, it would run much slower.
So by adding these commands to BASIC, it makes the programs smaller and faster, not to mention
much easier to code.
Here’s another very short little BASIC program that draws 3D polygons It’s actually really
amazing how fast these are drawn.
The reason is that all of the actual drawing is being done by the machine language routines
stored in the cartridge’s ROM, rather than trying to calculate this pixel by pixel in
BASIC.
So here’s another little interesting example.
This program draws garfield using a bunch of circle commands.
This is sort of a lost art, being able to create neat pictures like this out of a string
of commands, it’s kind of fun to watch as the picture comes alive with each new stroke
of the pen, so to speak.
And here’s one last little program I’ll show you, which creates some very strange
art.
It has several different screens it goes through.
Whoever wrote this seems to like eyeballs.
Besides graphics, it adds sound commands to BASIC, but in a really clever way.
You can create sounds with the print command.
Once you’ve typed the first quotation mark, you press control and the left arrow like
this, which creates a little reverse F.
This tells it you want to print sound instead of text.
So you have to start off by setting some parameters, such as V9, which sets the volume to 9, then
T for tempo, then S for speaker, which is another way of saying voice..
In this case I’ll use voice 1.
Then I’ll use octave 2, and then some notes.”
Now lets see what happens.
OK, so if I wanted to make that a full scale, I could add A and B, then I’ll need to change
to octave 3 for the next C. OK, to better demonstrate, I actually wrote a small musical
sample, which is part of the music for my Commodore 64 game I’m working on.
You can see it is just a bunch of print statements.
So, you can see how easy this makes it to add sound and music to your own programs.
All right, So what do I think of the super-expander cartridge?
Well, I think it’s a really great cartridge, but the problem is it shouldn’t have been
necessary.
They really should have built everything in this cartridge into the logic board from the
very beginning.
Because it was not part of the standard system, there was virtually no commercial software
that supported it.
And even if you wrote your own games using this cartridge, those games still wouldn’t
work on your buddy’s computer down the street unless he too had a copy of the super expander
cartridge.
So, while it did fix many of the shortcomings with the VIC-20, it was still, in my opinion
kind of a failure.
OK, so the next thing I wanted since I have my VIC-20 out is this EPROM programmer that
I was sent.
I really wanted to show it to you, but there really wasn’t enough information to really
make a whole video about it.
So, let me just give you a little overview of this thing.
So let’s take a look at this eprom programmer which was donated to me by Aaron Katz.
This plugs into the VIC-20’s cartridge port, but one thing you might notice is that while
it has the same edge connector as a cartridge, it isn’t as wide.
So you have to be really careful inserting it in since it doesn’t automatically line
up.
Take a look at the Commodore Buyer’s Guide.
This is from a few years after the VIC-20 was discontinued, but you’ll noticed they
do advertise an EPROM programmer for the Commodore 64, but it plugs into the USER port, not the
cartridge port.
So that’s interesting and it ends up having some advantages I hadn’t thought of, which
I’ll show you here in a minute.
Looking at the board, I noticed that its called the PROMQUEEN.
Quite a clever name.
I also noticed that, if my math is right, it has 8K of onboard RAM, but no ROM chips
to be seen.
So when you power on your VIC-20 with this thing in the computer, there’s actually
nothing noticeably different.
Not even any increase in RAM.
So you might think the software would come separately on a disk or maybe a cassette,
right?
Nope.
Instead, they actually give you a ROM chip of the software, which you have to place in
this socket.
Now this socket is actually mapped directly to the VIC-20’s memory map, but it is at
a non-standard location so it can not auto-start like a game cartridge.
So you can actually stick the chip in while the computer is on, then type SYS45441 to
start the software.
Once the sofware is started you can remove the chip.
This is because it copies itself over to RAM as soon as you start the program.
This software will let you load, save, or edit HEX files and then, obviously, burn them
to an EPROM.
Well, since it only handles 2K and 4K EPROMs, it isn’t all that useful to me.
If it could do at least 8K EPROMS I could probably find some interesting uses for it
around the house.
But, it’s still a pretty neat little device from the time period.
I think it was targeted a lot at HAM radio operators who needed to reprogram EPROMs in
those old HAM radios to change various channels and settings and things like that.
Of course, none of that is necessary on the modern HAM radios because it can all be done
in software.
Well, I hope the episode wasn’t too mundane for you.
I really have a lot of little peripherals like this that I want to show off that probably
a lot of people have never heard of before.
You know, in another 20 or 30 years they may fall into obscurity to the point there’s
no documentation on them.
So, I think it’s kind of important to talk about them and see what place they held in
history.
So, let me know what you thought, and stick around for more content.