Page 1 of 5

I think I might have found an undocumented VIC cartridge...

Posted: Thu Oct 19, 2006 4:46 pm
by ral-clan
Guys, you have to help me. I am trying to be calm but I am freaking out a little inside. I think I have re-discovered a long lost "official" VIC-20 cartridge by Commodore.

As I mentioned in a previous thread (which I was surprised very few replied to), it's called WATERLOO STRUCTURAL BASIC. It is indeed an OFFICIAL COMMODORE released cartridge with the designation VIC-1001 (yes I know that conflicts with the Japanese VIC name). It must have been produced in very low volume because it comes in one of those plain label brown cases with a sticker on it, and it has an EPROM inside.

Here are some pictures:

Image

Image

Image

I got this from a fellow collector in Ontario, Canada. I assume this cartridge was distributed by Commodore Canada in Toronto. This version of BASIC was developed at the University of Waterloo in Waterloo, Ontario (the same University that also helped develop the SuperPET).

:D :!: :shock: :!: :D

There is no documentation so I don't know how to actually use it.

The only reference I have ever seen to this is in a Commodore Canada brochure I own (and uploaded to www.commodore.ca). It is here:

http://www.commodore.ca/gallery/brochur ... utside.jpg

Has ANYONE ever heard of this cartridge before?

I would love to archive it. I have all the necessary equipment (I think): a multislot expander with switches, a 32K RAM expander, and a XE1541 cable. I'd just need someone to hold-my-hand and walk me through the process...

So...am I justified in freaking out!?

Posted: Thu Oct 19, 2006 5:52 pm
by carlsson
If it would be Commodore's own, why does the copyright message still say Waterloo Computing Systems Limited, and nothing about Commodore?

I'd rather think Commodore licensed their name/logotype to be put on the labels for 3rd party software releases, some kind of quality seal. Maybe even letting those 3rd party software houses using part numbers starting with VIC-nnnn, like a few Handic/Datatronic cartridges starting on VIC-73nn (and possibly one VIC-71nn). Unfortunate mismatch with the part number in this case. Probably the cartridge cases, EPROM boards and so on could be ordered from the same factory as Commodore themselves used.

Still a great find of course, even if it just locally was sold by Commodore dealers and perhaps not being an official, international C= release.

With regards to how to dump it, it seems Mike's method is one of easiest and fastest ones out there:

SYS57809("WATERLOO"),8,1:POKE193,0:POKE194,160
POKE780,193:POKE781,0:POKE782,192:SYS65496

Posted: Thu Oct 19, 2006 6:05 pm
by Jeff-20
I think I just creamed myself. . . How did you find this cart???

Posted: Thu Oct 19, 2006 6:25 pm
by ral-clan
carlsson wrote:If it would be Commodore's own, why does the copyright message still say Waterloo Computing Systems Limited, and nothing about Commodore?

I'd rather think Commodore licensed their name/logotype to be put on the labels for 3rd party software releases, some kind of quality seal.
While I agree with you that the software wasn't programmed in-house by Commodore, I think it was marketed and duplicated by Commodore Canada. The reasons?

1) It is mentioned (along with a picture of the box) in that Commodore Canada brochure on "www.commodore.ca" (link in first message). This brochure only shows C= products, not third party ones.

2) Also, the University of Waterloo had already co-operated with Commodore to develop another undoubtedly official C= product, the SuperPET. I think it might have even shipped with Waterloo BASIC as one of its ROM languages. So there is a bit of a relationship there.

3) The U. of Waterloo is an educational institute which (at the the time, anyway) does/did not market products. I doubt it would start manufacturing and marketing cartridges.

4) Commodore Canada was a pretty big operation (one of the most successful divisions of the company world-wide). It marketed lots of unique regional software (many educational packs on cassette), and helped develop new hardware. But I must admit, this is the first time I've ever seen anything produced on a cartridge.

I agree with you that this is probably a regional product by Commodore Canada rather thank an international one. I do think it was produced and marketed by Commodore Canada rather than a third party given lisence (like Handic). Didn't Handic have exclusive VIC cartridge distribution rights in Sweden(?). I.e. they repackaged, distributed and marketed ALL the C= VIC games there? In Canada, Commodore distributed all its own products with VIC-1XXX numbers.

I was pretty shocked to find this cartridge. I have NEVER seen it in all my years of looking for VIC stuff in Canada. I have never even heard of it before (I didn't really notice it was in the brochure I owned until after I started looking for some info on the cartridge).

Posted: Thu Oct 19, 2006 6:35 pm
by ral-clan
Jeff-20 wrote:I think I just creamed myself. . . How did you find this cart???
It was a total fluke. I just contacted a prior trading partner about trading some Sci-Fi videos, and he said he had some VIC stuff to trade. I was as surprised as you!

Posted: Thu Oct 19, 2006 6:54 pm
by ral-clan
A search of old usenet postings found this:

http://groups.google.com/group/comp.sys ... 8d6898c1c6

Apparently, E. Chorny (who I know is a member of the Toronto Pet User's Group - I just bought my 1541-II off of him a few months ago), told Jim Brain in 1995 that he had a copy of this cartridge.

If I type "Waterloo STRUCTURED BASIC" (-ed not -al) I get more hits.

Apparently it was marketed (on disc?) for the C64 too.

Also, E. Chorny's mention of this cartridge shows up in the "Canonical List of Commodore Products" on Zimmers:

http://zimmers.net/commie/docs/cbm-products.txt

...so, its existance has been recorded before :( (by one person in my part of Canada), but if I find out that it has never been archived before, I will do that and upload it.

Posted: Thu Oct 19, 2006 7:11 pm
by ral-clan
carlsson wrote: SYS57809("WATERLOO"),8,1:POKE193,0:POKE194,160
POKE780,193:POKE781,0:POKE782,192:SYS65496
Okay, hardware-wise, what do I have to do? (Sorry, I have NEVER done this before). Do I need to plug the cartridge into the multislot expander then do a "reset" (I have a reset button on my slot expander and on my VIC) or something? Do I need extra RAM installed?

Sorry, I am a novice when it comes to this. But I am a quick learner!

Posted: Thu Oct 19, 2006 7:55 pm
by eslapion
ral-clan wrote:
carlsson wrote: SYS57809("WATERLOO"),8,1:POKE193,0:POKE194,160
POKE780,193:POKE781,0:POKE782,192:SYS65496
Okay, hardware-wise, what do I have to do? (Sorry, I have NEVER done this before). Do I need to plug the cartridge into the multislot expander then do a "reset" (I have a reset button on my slot expander and on my VIC) or something? Do I need extra RAM installed?

Sorry, I am a novice when it comes to this. But I am a quick learner!
If you have a multislot expander then disable BLK5 which will prevent the Waterloo Basic from starting. Turn ON your VIC, then enable BLK5 once you see the traditional 3583 bytes free.

Then type these commands and make sure you have a floppy with enough room available in your drive #8.

BTW, leaving the window of the EPROM chip exposed to light is a sure way to get the content ERASED...

Posted: Thu Oct 19, 2006 8:51 pm
by ral-clan
eslapion wrote: If you have a multislot expander then disable BLK5 which will prevent the Waterloo Basic from starting. Turn ON your VIC, then enable BLK5 once you see the traditional 3583 bytes free.
My slot expander does not have a dip switch for block 5. It does have toggle switches to disable/enable each slot individually, and another single switch which can be toggled to either ROM or RAM. Would any of these do the trick?
BTW, leaving the window of the EPROM chip exposed to light is a sure way to get the content ERASED...
Putting a sticker over the EPROM window was the FIRST thing I did after I took the above picture :wink: !

Posted: Thu Oct 19, 2006 9:38 pm
by Centallica
ral-clan wrote:Apparently, E. Chorny (who I know is a member of the Toronto Pet User's Group - I just bought my 1541-II off of him a few months ago), told Jim Brain in 1995 that he had a copy of this cartridge.
I was on the road to TPUG Meeting when this was posted, otherwise I would of have asked Erny about this cart myself while at the meeting.

Very interested in finding the history behind this cart :shock:

Brian

Posted: Fri Oct 20, 2006 12:20 am
by gklinger
ral-clan wrote:If I type "Waterloo STRUCTURED BASIC" (-ed not -al) I get more hits.
Ah, this makes sense. When I first read your post I thought you had made a typo because I had never heard of "WATERLOO STRUCTURAL BASIC". Waterloo Structurered BASIC however is well known to me. The PETs we had in school had a WSB ROM installed in them and at the start of every class the teacher would say, "Remember to sys in your arbiter" (you had to issue a sys to engage the alternate ROM) before we'd begin. I didn't realize there was a version of WSB for the Vic-20 (or the 64 for that matter) so I would be very interested in checking it out once you've got a dump of the cartridge.

Congratulations on your score. You've got something rare and interesting to boot (no pun intended).

Posted: Fri Oct 20, 2006 3:26 am
by Mayhem
I'm sure one of us has an expander that can disable blk 5 if you don't have one, though depends if you want to send the cart via mail or not!

I think I must have one, cos it was part of that cart dumping kit I bought recently and tested out with some of OEM's games.

Btw those commands above, I presume they are two separate lines?

Posted: Fri Oct 20, 2006 6:02 am
by ral-clan
Mayhem wrote:I'm sure one of us has an expander that can disable blk 5 if you don't have one, though depends if you want to send the cart via mail or not!
But, since my expander has switches that will turn each slot OFF and ON entirely, would this do the same thing as disabling BLOCK 5 for that cartridge? I mean....if the cartridge is off entirely, then BLOCK 5 is disabled on it, right?

So couldn't I plug the cartridge into the slot expander, but with that slot turned OFF. Then turn on the VIC. Then turn ON the slot holding the Waterloo Strucural Basic cartridge. Then run the program which will grab the cart image and dump it to disc?

Posted: Fri Oct 20, 2006 6:05 am
by ral-clan
gklinger wrote: I would be very interested in checking it out once you've got a dump of the cartridge.
I guess you were using a SuperPET with the Waterloo Structured BASIC ROM installed.

When I upload this cartridge and you have a look at it, would you be able to give us a few tips on how to use it (if you can figure it out). You're the only one here who has used WSB - I can't figure out how to do anything with it.

I realise you don't want to write a full tutorial on how to program in WSB, but if you remember any of the commands, perhaps you could do a short list.

Posted: Fri Oct 20, 2006 6:36 am
by Mike
It shouldn't be necessary to disable the card before switching on the VIC, and then re-enable the card. The commands to dump the cartridge should work as well with the Waterloo BASIC activated. You won't even need extra RAM, as the data is saved directly from the ROM of the cartridge to floppy.

I thought about whether the EPROM possibly also might show up in BLK3, but the 2764 EPROM (as visible from your photo) holds 8K, i.e. only BLK5 is used. So the commands, as stated by Carlsson:

Code: Select all

SYS57809("WATERLOO"),8,1:POKE193,0:POKE194,160 
POKE780,193:POKE781,0:POKE782,192:SYS65496
will do the trick.
I realise you don't want to write a full tutorial on how to program in WSB, but if you remember any of the commands, perhaps you could do a short list.
It might be an early variant of BASIC 3.5 or 4.0. At least I'd try whether there are DO...LOOP constructs as in:

Code: Select all

DO:PRINT "Hello!":LOOP
WHILE 1:PRINT "Hello!":ENDWHILE
REPEAT:PRINT "Hello!":UNTIL 0
(maybe DO WHILE/UNTIL, and LOOP WHILE/UNTIL are present),

if there's the IF...THEN...ELSE construct:

Code: Select all

IF A=1 THEN PRINT "A=1" ELSE PRINT "A<>1"
or
IF A=1 THEN PRINT "A=1":ELSE PRINT "A<>1"
If that's the case I'd consider this dialect worthy of further investigation.

Greetings,

Michael