Page 7 of 7

Re: transfer from pc to ql is it possible

Posted: Tue Sep 27, 2016 8:34 am
by georgeo
One option would be to set up Unzip in a QL emulator, on your PC, and then transfer the unzipped files one-by-one via the serial interface. You would need an emulator that supports both expanded-memory modes and that interfaces to the serial port hardware on your PC.

Something like Q-Emulator [] would probably do the trick, though you need to pay for the full version to get expanded-memory configurations. If this looks interesting, you may wish to confirm that serial transfer works for you, in the free version, before getting the full version.

An alternative option is to buy a memory upgrade for your QL. I have a Trump Card clone, which I bought from SellMyRetro []. It is primarily used as a floppy-disk interface. However, you don't have to plug a floppy-disk drive in: it provides a memory upgrade (a further 768kB) and ROM-based Toolkit II enhancements straight out of the box, which may be enough. Of course, if you go this route, you'll need to have a Microdrive cartridge with most of its sectors intact, to hold a copy of the Unzip program!

I should also note that I started out with similar plans to you, though after a couple of months, I decided to save up my money and get a floppy disk drive and more memory. It made using the QL much easier, plus I'm not totally reliant on Microdrive cartridges, which have variable reliability after 30+ years (though I am a big fan of the Microdrive unit and have a number of cartridges I use regularly (but that I back up to floppy disk)).

Let us know how you get on.

Re: transfer from pc to ql is it possible

Posted: Tue Jun 16, 2020 1:38 pm
by yellowsubmarine

This sounds amazingly useful!

But all the links for the software are broken (point to ppe’s Dropbox which now gives 404).

Does anybody still have any of these anywhere (Google finds nothing):
And the asm source if possible?


ppe wrote:Hey,

it's been a long time but there's been very little time for hobbies lately :(

Anyway, I got some spare time this weekend so I decided to implement the xmodem receiver in assembly. It's now faster, more reliable and first copies the received binary to memory to prevent errors during receiving due to spinning microdrive. You should be able to download the Qterm binary using this new version in just a couple of minutes.

Step by step instructions, apologies if I'm being too verbose with the explanations:

1) Download TeraTerm 4.86 for your PC from here and install it
2) Download the SuperBasic loader and frontend for XModem receiver from here
3) Download QTerm distribution from Dilwyn's site Unzip using your PC, the file you need from the zip is qterm_cde. This is the binary that is a proper communication and file transfer program that knows XModem-1k (a better version of Xmodem) and is able to transfer files both ways
4) Download a RAM disk driver from Dilwyn's site Unzip it on your PC, the binary you are going to need is called ramdisc_cde. Read the manual inside the zip. This will give you a RAM1_ device that you can use to temporarily store files received using QTerm. Again, using a RAM disk is a good idea to prevent transfer errors and retries due to spinning microdrives if you download direct to a cartridge. Rather, you are better off downloading to RAM disk and then copying to a microdrive
5) Hook up your QL and PC using the serial cable. Without knowing the specifics about how your cable is wired I can't say if it works in ser1 or ser2 port on your QL. You may need to try both
6) Fire up TeraTerm on your PC. When it starts, choose "Serial" as the connection type. The default is "TCP/IP". Choose the correct COM port on your PC.
7) Change Serial port settings. To try and prevent any errors during the initial transfer, go to Setup/Serial Port and choose correct port, 1200 Baud Rate, Data 8-bit, Parity None, Stop 1 bit, Flow control None (you may be able to use "hardware" depending on how your cable is wired
8) On the QL, set the baud rate: "BAUD 1200"
9) Now, let's transfer the SuperBasic loader "xmrecv_bas" to the QL. On the QL, load the basic program through serial port: "LOAD ser1z" N.B. you may need to try port 2 as stated previously. The "z" parameter is rather important, it will let you stop the transfer in an orderly fashion from the PC. The QL will now seem to lock up. It is waiting for data through the serial port.
10) On the PC TeraTerm, choose File/Send file... and pick xmrecv_bas from wherever you saved it to
11) You should see a transfer progress window. Once that closes, press Ctrl-Z (hold Ctrl key and press 'z' key) in the TeraTerm window.
12) Once the file is loaded , you should again see a flashing cursor on the QL. This should only take a minute
12 a) You can now bump up transfer speed a bit: try "BAUD 2400" on the QL and change serial port speed in TeraTerm to match the speed set the QL ("Setup/Serial Port").
13) Now you have a file receiver on the QL. To load the machine code, enter: "load_code".
14) After machine code has loaded, we'll load the QTerm binary - enter: "recv" on the QL. Give the received file a name when prompted, e.g "mdv1_qterm_cde". When prompted for the serial port device name, enter "ser1r", NOTE! this time you need "r", not "z" because we are receiving a binary file
15) When you see the "Press enter to start receiving" prompt, go to TeraTerm and choose "File/Transfer/XMODEM/Send...". Make sure "Checksum" is selected as "Option" at the bottom of the file chooser dialogue box. Choose the qterm_cde binary file from where you unzipped it. Once you have selected the file you should see an "XMODEM Send" window pop up. Now press Enter at the QL prompt. If all goes well, you should see progress messages on the QL and the progress bar should advance in TeraTerm, speed should be around 220 bytes per second or so. The transfer will take around three minutes, I believe. Once the transfer is over, the receiver will save the received binary.
16) Now repeat the process (steps 14-15, no need to reload the code with "load_code") for the ramdisc binary, save it as "mdv1_ramdisc_cde"
17) You now have a RAM disk program and a QTerm binary on microdrive, create a boot file for them so that they load automatically once you start the ql with the microdrive in drive 1. Enter "NEW" and then type in a boot program, something like this file. Save the boot program as "mdv1_boot"
18) Reset the QL and boot with the new boot file. It should print messages that it loads the qterm binary and ramdisc binary.
19) format a ram disk to receive a file to, e.g.: "FORMAT RAM1_200" (for a 100k RAM disk)
20) type TERMINAL and you'll fire up Qterm, configure settings using F3, set baud rate using F3/B, set port using F3/S Configure port 1 or 2, No parity and 8 bits data. Configure RAM disk as the target through F3/U and enter ram1_ as default device. Now you can send and receive files using XMODEM-1k. Transfers in QTerm are initiated using F2 and then choosing 3 for XMODEM-1k. Then select Send or Receive as appropriate. On TeraTerm side, you should now pick "1k" as transfer type Option (and binary checkmarked) in the XMODEM Send or Receive dialogue window.
21) Experiment with different speed of transfers. I can use the 4800 baud rate on my non-Hermes chipset (regular) QL. This typically results in a few transfer errors but not too many.

Theoretically, you should always first start the "Send" side first and then initiale "Receive" on the other machine but XMODEM does also recover if you do it the other way around if you are fast enough in initiating the "Send" process after "Receive".

Be sure to transfer files first to RAM disk and then copy them over to microdrive.

Whew, that was easy, wasn't it.... :)

Unzip will *just* fit on a microdrive, but I think it will need ToolKit II (again, from Dilwyn's site) to run properly. Remember, if you transfer any EXECable programs to the QL, they need to be unzipped using a QL Unzip program so that their file headers are set properly on the QL. There are quite a few threads on this subject on the forums.

Hope this helps. I tested all the steps with a bare bones 640k QL and a PC and did not have any problems. I guess having a correctly wired serial cable and selecting the right port on the QL are the cornerstones.


Re: transfer from pc to ql is it possible

Posted: Thu Jun 25, 2020 11:01 pm
by Gbrigden
Am looking to transfer files from pc to Q L myself but can't locate these files either.

I have tried building blank floppy images with qltools to use with my gotek, transferred the Psion business apps to these imagesp and still can't get it to work.

I have a Serial cable and tera term and haven't been able to transfer a file at 2400 baud or anything. The microdrives are now only one drive as mdv2 has given up the ghos t.

Next for me is to try and use a usb pc floppy drive and see if I can get files to transfer and work on the QL that way.

Re: transfer from pc to ql is it possible

Posted: Thu Jun 25, 2020 11:04 pm
by Chr$
Gbrigden wrote:
Next for me is to try and use a usb pc floppy drive and see if I can get files to transfer and work on the QL that way.

Get an NEC UF0002 USB floppy. It's an older model so only available 2nd hand but they work a treat with Qemulator.

Re: transfer from pc to ql is it possible

Posted: Fri Jun 26, 2020 11:38 am
by Gbrigden
Thanks - i will look out for one of those.

I would like to try and get the Gotek to work as i have been able to get it to work on my Atari ST, and the BBC Micro with little pain, but the QL is proving to be a little more difficult.

I have downloaded the QEmulator but it wont let me do much unless i register. I have tried to get a temp licence to see if it will do what i want but have heard nothing back. If i can get a licence and it proves to be worthwhile then this will be the likely way forward. Or i could just stick with the Atari ;)

Re: transfer from pc to ql is it possible

Posted: Fri Jun 26, 2020 2:36 pm
by Chr$
I find Qemulator (registered) invaluable for file transfer via floppy, even though I also have a vDrive.

Re: transfer from pc to ql is it possible

Posted: Sat Jun 27, 2020 11:06 pm
by Gbrigden
Well I have purchased the Qemulator and still having trouble getting the Psion four downloaded and into floppy images that I can run on the gotek without getting Bad statement errors.

Will see if I can suss it out tomorrow