My Authors
Read all threads
Today's Vintage Technology Problem:

I have a *.d64 file with a word processor program on it for the Commodore PET. How can I get the program onto a real PET?

And I'm adding in a bonus criteria of:
I don't want to have to buy anything for this.

I have done this before, it sucks
At my disposal I have pretty much all the related commercially made hardware you could want for this kind of problem:
- 8050 Disk drive
- ISA GP-IB card+cable
- DOS Machine w/ 5.25" floppy drives

But none of these in almost any combination will work.
In a perfect world you could just write the *.d64 file to a disk on a PC. But that's not possible because Commodore disks are GCR encoded instead of MFM. PC drives are not cable of writing the data in that way.
The next best option would be to put the GP-IB card in the DOS PC and have it emulate a PET disk drive. But GP-IB cards are super rare and no one has made software for that as far as I know.

CBMLINK exists, but it uses a serial port and a custom board to interface with GP-IB.
An alternate version of that solution would also to be to connect the 8050 drive to the PC with the GP-IB card and just write the disk directly.

Same problem though, no software support. I bet this way wouldn't be too hard to make a program for, but I want this done today.
Let's expand our hardware options. I also have:
- Datasette
- Cassettes
- 3.5mm Cassette adapter

We're working with a d64 file though which is a disk image.
We'll need to open the *.d64 file and extract files from it. Ideally, I'll end up with a *.prg file.

There are many tools to do this, I haven't decided which one I'm going to use yet this time.
At this point I'm going to detour with a tip:

CBM Program Studio: ajordison.co.uk/screenshots.ht…

This will let you open prg files and edit them. If you are using a newer PET to play games, you may want to check prg files for "POKE 59458,62" to make sure it doesn't use the killer poke
Now *.prg files are pretty much useless for real hardware though. So it needs to be converted again.

This time to a *.tap file to bring it into the cassette domain.
Finally, with a *.tap file a program like TAPDancer can be used with the 3.5mm cassette adapter to load the software with the datasette.

This is such a convoluted way of doing this. But it should work. So that's what I'll probably be doing for the next hour or so, fun.
In the future, I'd really like to make an internal XA1541 cable ( sta.c64.org/xa1541.html ) and just mount that beat up thrift store 1541 drive I got in my 468. That should give me a lot of in between options for commodore stuff.
Just as I'm finally getting ready to try loading the program I released my datasette is at my storage...

On the plus side, I guess tapDancer can convert PRGs, so that's cool. But it also looks like it was pulled from the play store. So that sucks.
*Gets back from storage*

*sets up PET with datasette and cassette adapter*

*goes to plug into phone*

*phone doesn't have 3.5mm jack*

*cries*
My Nexus 6P died a little over a week ago:

I was able to borrow an Essential Phone from someone until I can get a new phone. I had no idea this was one of those newfangled wireless only audio phones.

The future is terrible.
I was able to get a USB-C to 3.5mm audio cable for the phone and try again to load the PRG with tapdancer. After a lot of turbo loader headaches and using a different program to make a TAP file I got it to read it!

But it didn't work. The program just crashes.
The PRG file works in an emulator, so it's not a corrupt file. I don't think PRG to TAP conversion is working out for this software.

I think I should make an XA1541 cable.
I grabbed the rest of my Commodore stuff from my storage. Hopefully I can get something to work.

For the XA1541 cable: ist.uwaterloo.ca/~schepers/xa15… I don't feel like ordering BSV52's, so I'm going to substitute those for some 2N2222's. I'm not sure why they're using SMDs anyway.
I don't know if I'm going to make the cable tonight or tomorrow. The grand total of things I've accomplished today includes:

- Used c1541 from VICE to extract a PRG from a D64

And that's it, so much wheel spinning. I should take at least a little break.
I forgot how not-PC everything is in the 1541 is. Internally mounting it will be a challenge. I would still like to though.

Replacing the PSU won't be too big of a problem at least: hackaday.io/project/25768-…
The stupid extra wide logic board will be the biggest problem. It's like 5.5" wide or something, just big enough that there is no chance it can be put on top of the drive.

I guess it will have to be vertically mounted next to the drive.
That is really weird, the XA1541 cable doesn't use any of the data lines. I wish I knew more about how the LPT port is interfaced with because that is a very interesting choice.
Internal XA1541 Attempt #1:

The drive constantly spins the motor when it is plugged in. I couldn't get it to be recognized by Star Commander, but I also don't know how to do that.

I'm going to start by researching SC some more, then check my board.
Okay, apparently Star Commander calls the XA1541 a "serial" cable. I was trying to configure it under parallel. I'll try it one more time as is, but I think it's probably a hardware issue on my end.
Alright, a revision to my initial assessment of my results, the drive constantly spins until DOS loads. I assume DOS pulls the I/O low or something.

But SC still times out when trying to access the drive over the now properly configured settings.
I have determined that 1541 is dead. It is connecting, SC is giving me timeout errors.

If I daisy chain another drive and turn off the first one it works! I was able to read the 1541 demo disk!

But it doesn't read my PET 8050 disks like I thought it would.
I need to step away from this for a bit, I'll try writing the PET *.d64 file I have later but I'm really not expecting this to work now. Which puts me all the way back to square 1.

I still have no way to get the program onto the PET.
Missing some Tweet in this thread? You can try to force a refresh.

Enjoying this thread?

Keep Current with Tech Tangents

Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

Twitter may remove this content at anytime, convert it as a PDF, save and print for later use!

Try unrolling a thread yourself!

how to unroll video

1) Follow Thread Reader App on Twitter so you can easily mention us!

2) Go to a Twitter thread (series of Tweets by the same owner) and mention us with a keyword "unroll" @threadreaderapp unroll

You can practice here first or read more on our help page!

Follow Us on Twitter!

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just three indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3.00/month or $30.00/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!