Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
You are not logged in - nap
CSDb User Forums


Forums > C64 Coding > Simple C64->PC transfer
2012-04-01 06:54
Repose

Registered: Oct 2010
Posts: 222
Simple C64->PC transfer

Hello,
I just wanted to let people know of the simplest way to transfer C64 files to PC. As far as I'm concerned, this is the ONLY way left to transfer files.

1 Intro
2 Proceedure
3 Notes
4 Further directions and question to the community

1 Intro

I just dug out my 25 year old C64 (which still works!!), and was stuck - my modern PC has no serial port, printer/parallel port, floppy disk, or modem, so even though I have an RS232 interface, XA1541 cable, 1581, and modem, these are ALL obsolete. I also have no C2N datassette, nor tape deck!

2 Proceedure
I decided to record the tape output directly to a soundfile. The connection is simple.

Supplies
-3 clip leads (wires with metal clips on each end)
-3.5mm (1/8") male to male stereo audio cable

Preparing the C64 datasette connections
Looking at the Vic20/C64/C128 tape port from behind, from left to right, note that pin 1 is GND, pin 5 is WRITE, and pin 6 is SENSE. You need to clip the leads onto each of these pins. Don't worry, the fingers on both top and bottom are the same signal.

Connecting the audio cable
Plug the audio cable into the BLUE/Line IN of your soundcard. On the other end, connect pin 1 (GND) to the inner most part of the 1/8" plug. Connect pin 5 (WRITE) to the end/tip of the plug. You have now connected the LEFT channel of the soundcard to the tape WRITE.

Preparing for data transfer
-load a program to transfer from disc
-On the Commodore, type SAVE"TEST". It will ask you to press PLAY&RECORD. Next, start recording the line-in from your soundcard, with 44,1KHz sample rate and stereo.
-touch the SENSE (pin 6) to the GND (pin 1) (touch the unconnected lead to the GND that is clipped to the audio plug). This is like pressing the button on the tape. It will save the file header, then ask you to press PLAY&RECORD again. Touch the wires again. You can wait a while for it to finish. Note that I tried leaving SENSE connected, but it didn't work. It may for you.

Saving the audio file
-save the WAV as mono, PCM, 16bit. Ideally, also save only the LEFT channel as the mono wave, however in Audacity I had to use Convert to Mono which averaged the two channels, thus adding some noise from the right channel (anyhow it still worked).

Converting the audio to data
-Download
http://www.retroreview.com/iang/UberCassette/
It has quite a good algorithm for parsing the WAV. I also tried WAV-PRG but it didn't work.
I used the command line:
UberCassette test.wav test.tap -machine c64

Testing the result in an emulator
-attach the test.tap file in VICE and type LOAD, then click Datasette control and Start. Then switch to warp mode, to speed up loading. You can then save the program to a d64 image with SAVE"TEST",8.


3 Notes
-You probably need to see the C64 screen to do this, but you can also do it blind if the keyboard is typing reliably (and you know the filenames). Just listen for the stop of the file header to touch the wires again.
-To save other data files you will have to write a short program. There's probably some poke's you can make to let SAVE work on memory.
-You should let a program save first as a test while you adjust recording levels and make your recording good.

4 Further Directions and Questions
I'd like to see a short program which can save multiple files, or a full disk to tape, and then some unarchiver on the PC side which can extract the files.
The idea is that you have to type it in by hand, so it has to be simple.

Now we need a simple way to upload to c64. Maybe the soundcard is loud enough to trigger the datasette READ pin, or else we can use the PADDLE port to digitize a sound. It will have to be a very simple type-in program, then maybe you could load a more sophisticated program.

I also thought of a way to transfer from c64->PC at 500k/s., and it's dead simple - how do you think I do it? :)
Hint: it uses a TV card to capture a video signal.

Question
What is a short way to transfer more files/disk through this audio method? If you could load a bigger transfer program to C64, how would it work?
I noticed that the short pulses were about 7 samples at 44.1KHz, so you could only go about twice faster in transfer speed.
Since this method actually reads ANY data pin, you can use basic RS232 (at about 1200 baud) to send serial output. This is already twice as fast as the tape protocol. The timing decoding will rely on the start bit.
You can use two bits at a time in a stereo recording. One can even form a clock.
 
... 29 posts hidden. Click here to view all posts....
 
2012-04-01 18:05
Bitbreaker

Registered: Oct 2002
Posts: 500
Zoomfloppy works fine, as for what i saw (my boss trasnferred his disks with that these days). Also if pondering about serial/parallel, why not obtaining one of those cheap usb<->serial/parallel adaptors?
If thinking about network, the wiznet module can be easily adapted to work with a c64, all you need is a 74ls139 + 3,3v voltage regulator. I'd even have some selfmade adaptors laying around to mount it directly on a clockport without any extra soldering (for e.g. RetroReplay). That is for what i did the new 64net-stuff.
2012-04-01 19:08
MagerValp

Registered: Dec 2001
Posts: 1056
Well modern computers come with a webcam, and the QR generator released the other week got me thinking...

Here's a first very rough test release of QR xfer, which load a file from the C64 and displays it, 32 bytes at a time, as a QR code. Place your laptop with the webcam pointed at the C64 screen (you'll have to turn down the brightness/contrast on the monitor if the room is dark) and press space to advance. All you need is a free QR reader app on your Mac or PC, e.g. http://www.dansl.net/blog/?p=256

It's just a quick proof of concept, and the directory viewer code is buggy, but give it a try: QR xfer
2012-04-01 22:18
Repose

Registered: Oct 2010
Posts: 222
Brilliant! That's the innovation I had hoped for. There should be a range of solutions, from wires to basic electronics.

Remember, someone said the USB parallel peripherals are not compatible to the old DOS software, maybe we need new software then.

Where's the thrill of solving an engineering problem just for the sake of it, anyhow? What about the DIY spirit of making cables or basic electronics? Modern technology is killing it!

It seems to me that a lot more could be done if we get an xfer to the c64 first, which can allow much more sophisticated transfer. IR transfer? Flashing square on the PC screen, and CdS on the POTX?
2012-04-02 07:10
Bitbreaker

Registered: Oct 2002
Posts: 500
The usage of POTX reminds me of a scanner that i did once with some duct tape, a bent piece of metal, glasfibre, photo-transistor and a needle-printer. A tightrope walk beteen DIY and ghetto-style :-)
As for the adaptors, why stick to dos when even having no pc at hand that has a parallel or serial port? I guess you'll use a modern multitasking enabled OS? Even more when you do your own protocol, you can pretty much cope with delays and interruptions.
And what is so bad about the network idea? There's even wifi modules available meanwhile.
And how's about speed? 32 bytes per space is yet a bit ... slow? :-)
2012-04-02 09:05
linde

Registered: Jul 2006
Posts: 47
I did some sort of transfer interface with a hacked competition pro, transferring four bits at a time. It worked fine at home, but when I tried it with a CRT, after a lot of head scratching, I found that I had to turn off the monitor for it not to generate a lot of errors :). It was quite fast, though!
2012-04-02 10:48
Repose

Registered: Oct 2010
Posts: 222
Bitbreaker,
That's amazing! I had the same thoughts regarding computerized sewing machines. I've even saved the gears and rods from a scanner and bought some stepper motors and a controller. There's so much that can be done with an X/Y scanning mechanism.

As far as an actual scanner, I once made one even simpler - light up dots on the screen one at a time, and measure the total light output. This required a transparency taped against the screen and a hood or dark room. It was further complicated by the fact that one dot couldn't be read, so I lit up various areas and subtracted them, so in fact it turned into some kind of iterative backscatter :) (referring to a similar Computed Tomography algorithm)

I had to look up Competition Pro, this is a German joystick. So you mean you used a 4 bit interface on the joystick port, bits D0-D3 of $DC00 or $DC01, between two computers. Since two computers can connect to one disk drive and everything still works normally, you could make a computer to computer transfer this way too.

There's nothing wrong with making a network interface, and that would be in the medium category of DIY.

There's also nothing wrong with non-DOS compatible USB parallel port, my point was that no existing (legacy) software projects would support it, so someone would have to write new software.

I'm going to do an experiment with video-transfer later, busy right now though, doing my Electrical Engineering homework with MOSFET design :)
2012-04-02 10:49
Repose

Registered: Oct 2010
Posts: 222
p.s., is there a well-know C64 Wiki where I can post my app (non-demo) related projects?
2012-04-02 11:18
MagerValp

Registered: Dec 2001
Posts: 1056
github.
2012-04-02 11:23
chatGPZ

Registered: Dec 2001
Posts: 11119
"I had to look up Competition Pro"
wtf
2012-04-02 12:17
Repose

Registered: Oct 2010
Posts: 222
G,
I'm from America, I'm starting to guess that this board is dominated by Europeans. I wouldn't have heard of this foreign product. In fact, the only reference I could find to this was on German Wikipedia, which I had to translate.
Previous - 1 | 2 | 3 | 4 - Next
RefreshSubscribe to this thread:

You need to be logged in to post in the forum.

Search the forum:
Search   for   in  
All times are CET.
Search CSDb
Advanced
Users Online
Mike
Airwolf/F4CG
csabanw
sebalozlepsi
cobbpg
Guests online: 128
Top Demos
1 Next Level  (9.8)
2 Mojo  (9.7)
3 Coma Light 13  (9.7)
4 Edge of Disgrace  (9.6)
5 Comaland 100%  (9.6)
6 No Bounds  (9.6)
7 Uncensored  (9.6)
8 Wonderland XIV  (9.6)
9 Memento Mori  (9.6)
10 Bromance  (9.5)
Top onefile Demos
1 It's More Fun to Com..  (9.7)
2 Party Elk 2  (9.7)
3 Cubic Dream  (9.6)
4 Copper Booze  (9.5)
5 TRSAC, Gabber & Pebe..  (9.5)
6 Rainbow Connection  (9.5)
7 Wafer Demo  (9.5)
8 Dawnfall V1.1  (9.5)
9 Quadrants  (9.5)
10 Daah, Those Acid Pil..  (9.5)
Top Groups
1 Nostalgia  (9.3)
2 Oxyron  (9.3)
3 Booze Design  (9.3)
4 Censor Design  (9.3)
5 Crest  (9.3)
Top Webmasters
1 Slaygon  (9.7)
2 Perff  (9.6)
3 Morpheus  (9.5)
4 Sabbi  (9.5)
5 CreaMD  (9.1)

Home - Disclaimer
Copyright © No Name 2001-2024
Page generated in: 0.054 sec.