Once the archival is done, I will write some Basic programs and try the
software as well. There may be side projects showing up along the way, of
which some I will tackle as time permits.
- January 4, 11:30 CET (GMT+1)
Project initiated. Page will later on be updated with the
actual names of the two Basic compilers, as well as pictures of equipment
used.
The first step will be to determine which format the floppy disks are in.
If they are 2040/3040/4040 compatible, I can use my XM1541 cable and read them in a regular 1541 drive. However
I suspect them to be in 8050/8250 format, which will require me to use my
C2N232I with cbmlink/CBMXfer software.
The second step is to decide which computer to run the cbmlink
against, either a CBM 8032-SK or a CBM 610. The 8032 is located in a different
room than my desktop PC so I'm planning to use my Eee PC - which further
requires an USB to serial adapter not yet received. The 610 and 8250LP disk
drive are slightly easier to move around, but I will have to see how well the
C2N232 supports that model.
Scanning the documentation will be a monotone task, but I'm quite used to
scanning stuff so not a real challenge unless I want to apply optical character
recognition on slightly blurry, matrix printed text. We'll see about that. One
software package only has documentation in Swedish which will make it harder
to use for English speakers, but there's always Google Translate. :-D
The final part of my challenge will be to make some non-trivial
Basic program (or perhaps download an existing one) and let the compiler(s)
convert those to shiny machine code. It will involve me studying the manuals
and plenty of trial and error. For practical purposes I suppose emulation may
come handy. I will also have to publish my results, retaining any copyrights
that still apply to this software.
- January 4, 17:25 CET
Hmm.. as expected the CBM 610 will not be possible to
bootstrap directly from the C2N232. However one can execute a loader program
(444 bytes) which will enable the tape port. Since I have access to a bunch of
8-16K cartridge boards for the B-series, it might be a nice extention to the
project to make a cartridge image out of the program and burn an EPROM.
There are also some IEC routines by Ullrich von Bassewitz'
1987-89 which me and Steve Gray have spoken about putting onto a cartridge
instead of internal ROM swap. Perhaps both IEC and C2N232 support could be
included in the same cartridge, since both would like to use the otherwise
unsupported cassette port.
Oh well, up to now it is just speculation. In the mean time I
could haul the full-sized PET closer to the master PC.
- January 5, 01:15 CET
Ok, I got sidetracked from my second paragraph above, about
the possibility to make a cartridge that could bootstrap the C2N232. In theory
I know how the cartridge header should look like and at what memory bank it
will show up, but in practise I don't even know how to properly load a machine
code program to its absolute address - i.e. the VIC/C64 syntax ,8,1 does not
do what I expect it to do, at least not in emulation.
Thus I will return to this project later tomorrow, by hauling the
full-height PET into my bedroom. If I have spare time by end of the month, I
might get back to this side branch of my project.
Oh, by the way in case people are unsure what CBM-II and B-series refer to,
it was a 8-bit business computer based on the 6509 CPU, released in parallel
with the C64 generation. The computer came in two different models:
- Low-profile B128 (USA), CBM 610/620 (Europe): Looks similar to a
C128, connects to an external monitor.
- High-profile B256, CBM 710/720: Looks similar to a PET/CBM 8032-SK,
i.e. integrated monitor but separate keyboard.
As the model numbers suggest, those computers came with 128K or 256K RAM,
arranged into 15 banks. All the CBM-II machines have a built-in SID chip
which is a bit surprising for a 80 column B&W business computer. By loading an
emulator program, some of the 80 column PET software can be run. Quite some
PET business software was ported to the CBM-II. One of the two Basic compilers
mentioned above obviously runs on this machine.
Actually there was a third line of the B-series, the P500 which pretty much
only went to prototype stage. This machine has 128K, a VIC-II just like the
Commodore 64, joystick ports and the SID. Pretty much a beefed up C64 but with
the 6509 CPU, several years ahead of the C128. Those who want to read up on all
these slightly less familiar Commodores can visit the Secret Weapons of Commodore.
Oh well, end of the history lesson. Next time we'll get back to
my RetroChallenge project.
- January 5, 01:40 CET
Oops, I forgot to look up the names of the software I will
work with. The PET compiler is Oxford Computer Systems - Integer/Compiled
Basic imported to Sweden by a company called T-D-X Smådatorer AB. It
appears to support both interactive and floppy disk based compiling, and
actually looks to run on a PET 3000 or 4000. I really should insert the floppy
disk into a drive to check the format, but I'll save it for tomorrow.
The CBM-II compiler is PET 700 Komp by Swedish company
Datatronic AB, which also happened to be the Commodore importer and
which may have had a bit of a special status to Commodore compared to other
importers, due to their extensive work to produce own software of which some
was released by Commodore themselves. This compiler comes in two memory
versions for both 128K and 256K machines. Unfortunately this compiler requires
a dongle in the cassette port to operate, but perhaps I can bypass this copy
protection as the software already is 25 years old.
- January 6, 19:30 CET
It appears the floppy disk for the Oxford compiler is no
longer readable. :-( So far I have tried it on both a 1541 and 8250LP, both
returning DRIVE NOT READY. I will have a few more attempts, perhaps trying
to read it on a genuine 2031 IEEE drive.
The CBM-II compiler however is readable on the 8250. It actually turns out
to be B-series versions of the DTL Basic compiler (link to PET 8032 version). It is possibly already archived in Ken Ross' collection of unsorted software or perhaps in the Chicaco B128 Users Group Library, but it won't prevent me from archiving it once more.
Supposedly the documentation for PET 700 Komp will apply to the PET Basic compiler linked on Zimmers. Perhaps I can take that approach, to download it and try to use according to docs.
- January 7, 01:00 CET
No binaries yet, but I successfully scanned the PET 700 Komp
manual. I'm quite impressed by the OCR software which for most part managed to
recognize the letters correctly. Here and there it simply ignored a line of
text, which means the original source is even more important when one is
proof-reading the text.
Anyway for those who like to read compiler instructions in Swedish, you
can download the
62K text file here. The wordings suggests it once was translated from
English, so it is likely somewhere an original document exists. Otherwise I
may translate it by hand later on.
Tomorrow I will return to archiving the floppy disks in one
way or another. I just upgraded my secondary PC to become a retro-transfer
computer but found out its SiS chipset and thus parallel port is likely to
be incompatible with my XM1541 cable. Bugger, but it works on other computers.
Perhaps after the challenge is over I'll buy an XA1541 cable/adapter which
has even greater compatibility.
Update: It turned out the XM cable had a few loose wires. After a round of
soldering, it is back to full working order on both my PC's, so no need to get
another cable.
- January 10, 03:45 CET
After a lot of struggling and false starts, I have now
managed to make a CBM-II cartridge which contains the cbmlink client.
While I theoretically know how to make the cartridge autostarting, part of
the process is still a mystery and immediate execution of the client made
the computer hang. Oh well, what is a SYS1024 more or less?
That said, I found updated versions of the cbmlink server side software
which works with my C2N232I interface. It should be noted the binaries on
Zimmers' FTP are outdated compared to those on Marko Mäkelä's own website.
This is my computer setup:
And these are the two key components to the sucessful disk transfer:
C2N232I interface (unsupported IEC connector not installed) and a homemade
cartridge which currently contains the client software. Don't bother to cover
the window with tape since I will erase and reprogram the chip soon.
Finally, click here to get a
preview copy of the unmodified disk images. Please remember there are two
versions depending on if you have a 128K or 256K machine.
By the way, I got an idea for a kind of game which I will implement
in Basic and use as a test object for the compiler if I get it to run. I will
describe the game more in detail later when I get a working implementation.