freemint / tos.hyp

The tos.hyp tries to document all functions from TOS. It also has information about MagiC, N.AES, MyAES, Geneva, XaAES, oAESis and some emulators.
https://freemint.github.io/tos.hyp
GNU General Public License v2.0
13 stars 11 forks source link

v_opnvwk is buggy also in TOS 2.06 #86

Closed mikrosk closed 2 months ago

mikrosk commented 6 years ago

The description warns:

Warning: In the TOS versions 1.00, 1.04, 1.06, 1.62 and 2.05 there is an error in the management of the virtual workstations. This can show itseslf in the multiple assignation of IDs, and hence the workstation attributes may be misplaced in some circumstances. This error appears if there are gaps in the internal workstation list of the screen driver. Remedy: Place the patch-program VDIFIX in the AUTO folder.

This applies also to TOS 2.06 (the aforementioned VDI-FIX unfortunately ignores 2.06 because it was released after VDI-FIX 1.10...). While the bug was fixed on 31.05.1990 and TOS 2.06 was released much later in '91, the bugfix wasn't backported. Same as it wasn't backported to TOS 2.05 (05.12.1990). Verified by disassembling v_opnvwk - the function body is virtually the same until TOS 3.01.

pulsar122 commented 6 years ago

Do I understand it correct that bug is in TOS 2.06 and 3.00? The first TOS which have not this bug is the 3.01?

mikrosk commented 6 years ago

Correct.

th-otto commented 6 years ago

Not sure about 3.01, but 3.06 has fixed it, yes. 2.06 definitely has the bug.

mikrosk commented 6 years ago

@pulsar122 actually, I'm wrong. TOS 3.01 has been released on 1st March 1990 while the bug fixed on 31st May 1990 so clearly, it has been fixed since 3.05 onward.

pulsar122 commented 6 years ago

It looks like that there are more TOS 3.01 with different date.

23.05.1990: In the docu form the VDI-Fix 29.08.1990: http://www.stcarchiv.de/stm1991/06/atarium

mikrosk commented 6 years ago

@pulsar122 VDI-FIX says 23.05.89. My date comes from http://www.avtandil.narod.ru/tose.html which is still a disk-based version. So hard to say, really.

th-otto commented 6 years ago

The only ROM version 3.01 that seems currently to be available is a german one,and that is dated 29.08.1990.

mikrosk commented 6 years ago

Well, it's not a boolean variable, the docs can say that TOS 3.01 before 31.05.1990 are bad and after that date (most likely the ROM one) good.

mikrosk commented 2 years ago

I see this one is still open. https://freemint.github.io/tos.hyp/en/vdi_control.html#v_opnvwk has been updated by f787151f to mention 2.06 and 3.00, maybe we could mention also some versions of 3.01 (i.e. the US one dated 01.03.1990) and close this issue for good? I'd do the change by myself but perhaps @pulsar122 would want to update the German version as well.

Btw I have discovered that I have worked on a VDI-FIX for the later TOS versions, perhaps I should finish that one, too. :)

mikrosk commented 2 months ago

Accidentally found this one (again). Based on my research in https://www.atari-forum.com/viewtopic.php?p=453858#p453858 I have slightly updated the v_opnvwk description / warning.

The disk-based US TOS 3.01 seems like a fake. I wasn't able to run it in Hatari but from the text file it seems that somebody just took the desktop from TOS 3.01 and put it into a PRG. Not sure where the TOS date (01.03.1990) comes from. So I didn't bother checking whether it contains the bug, too.

Btw @th-otto maybe you want to add a note here: https://github.com/th-otto/tos3x/blob/096373370c11e79499872c2c11a4c4b16c7c6aa4/vdi/monout.c#L1782-L1825 that the 3.00 applies to TT TOS "Blue" and later.