Page 3 of 4

Re: sQLux v1.1.1 (Deutshland Edition)

Posted: Thu Mar 13, 2025 6:32 pm
by desin
You are correct !
My QL is a english version, so i stuck to it

Greetings from Switzerland
Markus

Re: sQLux v1.1.1 (Deutshland Edition)

Posted: Thu Mar 13, 2025 7:33 pm
by XorA
Erk, this means we actually need a matrix!

Re: sQLux v1.1.1 (Deutshland Edition)

Posted: Tue Mar 25, 2025 12:30 am
by ql_freak
I'm afraid, I have found a horrible bug in sQLux (also present in UQLX, at least on Windows with WSL2):

As I formerly mostly have used QPC2 (with SMSQ/E and SBASIC) I have used SAVE to save the last loaded BASIC program (BTW: Does every MultiBASIC store it's own last loaded SBASIC program).

DO NOT DO THIS ON UQLX / sQLux!!!

If e.g. DATAD$ is 'WIN1_bas_' and you enter "SAVE"

You get:

WIN1_bas_ already exists, OK to overwrite (Y/N)

If you now enter Y, UQLX overwrites the directory file WIN1_bas_ and all files in this directory are lost. I have lost some files because of this. Unfortunately I have not currently the time to write (extend) the Minerva LOAD/SAVE commands (I think it should not so difficult, to patch them), so that SAVE will save the last loaded SuperBASIC program.

Re: sQLux v1.1.1 (Deutshland Edition)

Posted: Tue Mar 25, 2025 6:12 am
by XorA
ql_freak wrote: Tue Mar 25, 2025 12:30 am I'm afraid, I have found a horrible bug in sQLux (also present in UQLX, at least on Windows with WSL2):

As I formerly mostly have used QPC2 (with SMSQ/E and SBASIC) I have used SAVE to save the last loaded BASIC program (BTW: Does every MultiBASIC store it's own last loaded SBASIC program).

DO NOT DO THIS ON UQLX / sQLux!!!

If e.g. DATAD$ is 'WIN1_bas_' and you enter "SAVE"

You get:

WIN1_bas_ already exists, OK to overwrite (Y/N)

If you now enter Y, UQLX overwrites the directory file WIN1_bas_ and all files in this directory are lost. I have lost some files because of this. Unfortunately I have not currently the time to write (extend) the Minerva LOAD/SAVE commands (I think it should not so difficult, to patch them), so that SAVE will save the last loaded SuperBASIC program.
This is the same bug you listed in the other thread though?

Would probably be easier for all if you logged these in github rather than buried in threads, can't promise to fix them quickly, but someone might!

Re: sQLux v1.1.1 (Deutshland Edition)

Posted: Wed Mar 26, 2025 3:34 am
by swensont
> You get:
>
> WIN1_bas_ already exists, OK to overwrite (Y/N)
>
> If you now enter Y, UQLX overwrites the directory file WIN1_bas_ and all files in this directory are lost.
Is this really a bug or it QDOS letting you do something stupid? I've never just used the "SAVE" command without a file name as how would QDOS know what file name to use. It looks like it is picking up the file name from DATAD$, which is supposed to be a directory and not a file. QDOS found that there was a file/directory there and you did say "yes", so it did what you told it to do.

Tim

Re: sQLux v1.1.1 (Deutshland Edition)

Posted: Wed Mar 26, 2025 7:10 am
by tofro
No, it is in fact a bug.

Trying to overwrite a directory with a plain file of the very same name should be rejected with an "in use" error (and all the QDOSSMSQ implementations I know do exactly that - Although there really isn't any specification of Level 2 drivers that I know of that would define this exact behavior).

I'm generally with you that the OS should let you do stupid things if you insist, but throwing away a complete subtree of the file system goes a bit too far :)

Re: sQLux v1.1.1 (Deutshland Edition)

Posted: Wed Mar 26, 2025 7:30 am
by desin
QPC2
MAKE_DIR win1_bas_
SAVE win1_bas_test_bas
SAVE win1_bas_test1_bas
DIR win1_bas_
win1_test_bas
win1_test1_bas


sqlux
UQLX 1.1.1.2
DATA_USE win1_bas_
DIR
win1_test_bas
win1_test1_bas
SAVE
win1_bas_ exists, OK to overwrite.. Y or N ? Y
bad parameter
DIR
xx/xxx/xxx/xx
xxx/xxx sectors
DATA_USE win1_
DIR
xx/xxx/xxx/xx
xxx/xxx sectors
bas ->
DIR win2_bas_
xx/xxx/xxx/xx
xxx/xxx sectors

the Subdirectory still exists; but the file names are gone
under SMSQE and Qemulator you get " in use "

can someone test this on hardware ?

hope it helps
Markus

Re: sQLux v1.1.1 (Deutshland Edition)

Posted: Wed Mar 26, 2025 7:41 am
by tofro
The exact behavior is not so much a QDOS/SMSQ or even BASIC thing, but rather depends on the device driver implementation of the specific device. If you want testing, it needs to be tested with floppies, microdrives,....

Re: sQLux v1.1.1 (Deutshland Edition)

Posted: Wed Mar 26, 2025 7:55 am
by desin
IMHO
the missing level 2 file system is the cause

a test with the rd211 ramdisk from the *****/gold card
which has level 2 support leaves the files intact

Greetings from Switzerland
Markus

Re: sQLux v1.1.1 (Deutshland Edition)

Posted: Wed Mar 26, 2025 10:16 am
by RalfR
Oh, I hadn't thought of that possibility either. Of course, if the sQLux WIN and FLP drivers don't support Level 2, it won't work either. I just assumed it would.