Unzip problem

Anything QL Software or Programming Related.
David McCann
ROM Dongle
Posts: 7
Joined: Tue Dec 27, 2011 5:39 pm
Location: London

Unzip problem

Post by David McCann »

I've just switched from QemuLator and Wine to uQKX, having had problems develop with the former. I can't move programs from the one to the other, since the file format is altered by QemuLator, so I'm trying to reinstall things like Editor from downloads.

Now the problem. The downloads are zips and I can't unzip them. uQLx comes with unzip541 but the command unzip just generates a bad name error. I wondered whether the unzip tool had got corrupted, so I recreated it with the available Basic program, but it still doesn't work. An I missing something obvious?


User avatar
desin
Chuggy Microdrive
Posts: 54
Joined: Mon May 10, 2021 10:33 am

Re: Unzip problem

Post by desin »

hi

are you using uQLx or sQLux ?

sQLux is the advanced version
SQLUX.zip
(8.24 MiB) Downloaded 33 times

hope it helps


User avatar
dilwyn
Mr QL
Posts: 2761
Joined: Wed Dec 01, 2010 10:39 pm

Re: Unzip problem

Post by dilwyn »

David McCann wrote: Fri Mar 17, 2023 10:57 pm Now the problem. The downloads are zips and I can't unzip them. uQLx comes with unzip541 but the command unzip just generates a bad name error. I wondered whether the unzip tool had got corrupted, so I recreated it with the available Basic program, but it still doesn't work. An I missing something obvious?
Now I'm not familiar with uQLx, but all versions of Unzip I've come across are NOT commands. They have to be executed, not typed in as a command.

Set DATA_USE to where you want to unzip to, then execute UNZIP with the filename of the zip file as a parameter.
e.g. to unzip the zip file win1_TEST_ZIP to ramdisc RAM1_, assuming your copy of UNZIp is stored on WIN1_

Code: Select all

DATA_USE ram1_
EX win1_unzip;"win1_TEST_ZIP'
(DATA_USE and EX are Toolkit 2 extensions)

Another way is to use the -d switch in the EX command to specify where to unzip the files to, e.g.

Code: Select all

EX win1_unzip;'-dram1_ win1_TEST_ZIP'
Note that there should be a space between the ram1_ and the win1_TEST_zip.

As regards QemuLator modifying the files, it does this to reserve executable program file headers in order to be able to store them on a non-QDOS medium such as a windows hard disk. They are easily unmodified (see QemuLator manual Appendix 2) by copying the files to a QDOS format medium such as a QL floppy disc or ramdisc and zipping them from there to preserve the file headers in order to transfer. Incidentally, only executables are modified by QemuLator, data files should transfer over without any undoing.

Bear in mind also that there are a lot of differences between the registered and unregistered QemuLator.


User avatar
XorA
Site Admin
Posts: 1368
Joined: Thu Jun 02, 2011 11:31 am
Location: Shotts, North Lanarkshire, Scotland, UK

Re: Unzip problem

Post by XorA »

desin wrote: Sat Mar 18, 2023 12:21 am sQLux is the advanced version

SQLUX.zip

hope it helps
Also it should understand Q-Emulator directories directly, no need to re-create! (although take a backup as there may be bugs).


Derek_Stewart
Font of All Knowledge
Posts: 3975
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: Unzip problem

Post by Derek_Stewart »

Hi,

The safest way would be copy the files to a QWA file, Qemulator will strip off the QDOS header, then get sQLux to open the QWA file.

However is you understand how QDOS header work then the files can be opened by sQLux directly.

Personally, I go for the QWA file approach and avoid the curse of the emulators...
Last edited by Derek_Stewart on Thu Mar 07, 2024 12:08 am, edited 1 time in total.


Regards,

Derek
David McCann
ROM Dongle
Posts: 7
Joined: Tue Dec 27, 2011 5:39 pm
Location: London

Re: Unzip problem

Post by David McCann »

Thank you all for the prompt replies. As I said, I'm using uQLx, so I don't to start again with sQLx. The syntax for the QL unzip was strange! I've successfully unzipped Spy, but Editor has defeated me. I get

Code: Select all

checkdir error
cannot create MSTR
I've just tried another approach. I copied the Editor executable to ram disk and tried to zip it, only for zip to complain that it had an invalid file structure. That suggests that simply copying from a Linux directory to a QDOS ram one doesn't create a proper executable — or perhaps something else :(


Derek_Stewart
Font of All Knowledge
Posts: 3975
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: Unzip problem

Post by Derek_Stewart »

Hi,

sQLux is an improved version of UQLX and basically works the same way.

You say the syntax for UNZIP is strange, compared to what?

I either use ACP (Archive Control Panel) or type:

EX unzip;'-dwin1_ win1_program_zip'

Not have really strange, but if you just type: ex unzip this displays the syntax options, or if like me you are too slow in reading the help page. A channel ID can redirect the screen output, like:

EX unzip,#chan

Would display the help screen to Channel #chan

The full syntax is:

EX unzip,#1;'-dwin1_ win1_program_zip'

Displays screen output to channel #1


Regards,

Derek
David McCann
ROM Dongle
Posts: 7
Joined: Tue Dec 27, 2011 5:39 pm
Location: London

Re: Unzip problem

Post by David McCann »

My problem is not understanding the unzip format, but unzipping the Editor package that's giving me the strange error message. There's also the problem of transferring software from the Linux fileling system used by QemuLator to the QDOS one used by uQLx — getting the file header recovered.


Derek_Stewart
Font of All Knowledge
Posts: 3975
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: Unzip problem

Post by Derek_Stewart »

Hi,

I downloaded Editor2000 from QL Homepage and started up sQLux, used ACP to extract the contents of the zip file to a Linux directory specified as qdos-like

This is setup in the .uqlxrc config file as:

DEVICE = MDD1,~/mdd/,qdos-like

This sets up a new device in QDOS, in this cae MDD1, it could be MDV1, WIN1, NFA1 or what ever you want.

The key thing is to use the qdos-like flag on the end of the line.

The executable files can be extracted from a Linux directory within the emulator, the stored files have a QDOS file header attached.

It is worth re-reading the emulator documentation.

There is probably a Linux version of unzip to do this, but I prefer to use QL applications.


Regards,

Derek
David McCann
ROM Dongle
Posts: 7
Joined: Tue Dec 27, 2011 5:39 pm
Location: London

Re: Unzip problem

Post by David McCann »

I'm still confused. I thought I had a QL device, namely uqlx.win.

As I said, the problem is that the downloaded zip won't unzip — I get an error message as I reported. After a great deal of searching, I discovered that ACP is a front end for unzip but the problem is that unzip isn't working.


Post Reply