I sent an e-mail last night but I'm not sure if it was received. Anyway, I thought I'd try to copy from my real ql to a q-emulator ql over the serial port, and I'm getting better results that I was getting using a DOS prompt. I'm
getting so close now I can taste it.
Wonder what a serial port tastes like? Is there enough voltage on the lines to tingle the tongue. Says he, victim of prank a few years ago when told to test PP3 9V batteries "on the tongue" :-()

Using q-emulator's serial port I have been able to copy complete files back and forth between the emulated and real ql's (no more ctrl-z problems). I just have one last problem with executables.

I am able to copy the complete file and if I do a copy mdv1_filename to scr_ on the real and emulated ql's the output on the screen appears identical; but when I try to EXEC the "target" file (the copy) I get "bad parameter", Ah, usual loss of QL file headers on non-QL systems. Headers might not be preserved across the serial link. Might be worth trying Toolkit 2's "COPY_H" command to see if that manages to preserve headers.

whereas the "source" file runs correctly. I think this must be what several of you have to alluded to with headers. I expect that following the suggestion of zipping the files would help, however, I still have to get zip
executable copied across.
There is a "self-extracting" version of the "unzip" executable which might help with this, available from Jonathan Hudson www.daria.co.uk/qdos/

At the top of the page, click on the link to Infozip for SMS/QDOS

Save the downloaded file to somewhere where QemuLator can find it.

To get it self-extracted on QemuLator just LRESPR the SFX file:
LRESPR unzip541xQ.bin
and follow the prompts it gives. Needs quite a lot of free memory (might be an issue if using the restricted memory unregistered version of QemuLator).

Does anyone have a solution that might help with this? If there's a good explanation out there regarding these headers and how executables are different, I'd be grateful if you could point me in its direction (I'm beginning to
find all this quite interesting ;).
QDOS files have 64 byte file headers (not all of it used). There's a bit of info about all this on my website - in the Documentation And Information section, go to the File Formats page, there you'll find the file headers info. Basically, QDOS files come in four main types, general data files (type 0), executable(type 1), the Sinclair Relocatable Output File Format (SROFF-type 2) and Level 2 Directories (type 255 or -1 on systems supporting level 2 directories, or I think type 3 on old Thor computers). A few more file types were invented by certain programs over the years (e.g. The Painter files such as pattern files etc).

The type 1 files (QL executables, put simply programs you can EXEC or EX) have a long word in the header which specifies how much dataspace (data area for a job, in bytes) a job is to have (Job is the proper term for an executable QL program) and a byte which specifies the file type. If these get lost on a system which doesn't understand QL file headers, tough, back to the drawing board! Actually you can restore them if you have the relevant info using an SEXEC command as I alluded to in revious email, though it's not always easy!

Other stuff in file headers include the various dates info etc.

When it comes to QL data files, these have only two vital parts in the header, file length and type. Even a PC can deduce the file length of a QL file, and an emulator will usually assume a type 0 data file unless it knows better, so data files survive loss of headers in these circumstances quite well, though you may lose the dates associated such as when the file was last modified or created.

There are a few little utilities out there (such as my QH system) which can transfer the header information as a physically separate 64 byte file which can be used to restore the executable information, though it's a tricky thing unless you have experience of all this.

Actually, if you do get success with the QL to QemuLator serial transfers, this is a subject not covered much at the moment. Would it be possible for you to write up the information you've learned and I could put it on my website to help other users?

--
Dilwyn Jones

_______________________________________________
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm

Reply via email to