LDOS and LS-DOS: 2012 and Beyond – Updated Patch Files

written by Matthew Reed

Garry Howarth recently discovered a bug in my LS-DOS 2012 date extension patches. He found a particular disk that would crash the DIR command after installing the date extension patches.

As it turned out, displaying a directory of a disk containing a large file with directory extents on different sectors could sometimes overwrite the patch code, leading to a crash. I needed to rearrange the DIR patch code to avoid this potential problem. This required a new version of the LS-DOS date extension patches.

These changes only affect the Model 4 LS-DOS patches; the Model I LDOS and Model III LDOS patches remain exactly the same. These new patches identify themselves as LS-DOS 6.3.1L (my earlier patches used 6.3.1K).

Upgrading

The new version of TRSTools will automatically prompt to install the latest version (6.3.1L) of the date patches, as well as upgrade disks containing the earlier patches (6.3.1K).

If you want to install the patches manually to a stock LS-DOS disk, the updated patches are in the article LDOS and LS-DOS: 2012 and Beyond – The Patch Files.

If you want to manually update a disk from LS-DOS 6.3.1K to 6.3.1L, you can use the following files:

INSTALL4/JCL

1
2
3
4
5
. Date extension patches to upgrade Model 4 LS-DOS 6.3.1 Level 1K
.  to Level 1L
. Created by Matthew Reed - www.trs-80.org - 07/22/2013
PATCH BOOT/SYS.SYSTEM6 (D02,1F=4C:F02,1F=4B)
PATCH SYS6/SYS.SYSTEM6 LD4PAT4B

LD4PAT4B/FIX

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
. Patch SYS6 to upgrade Model 4 LS-DOS 6.3.1 Level 1K
.  to Level 1L
. Created by Matthew Reed - www.trs-80.org - 05/24/2011
. Updated 07/22/2013
. PATCH SYS6/SYS.SYSTEM6 LD4PAT4B
D06,80=63
F06,80=53
D06,84=74 2F
F06,84=66 2D
D0C,EC=5B
F0C,EC=4B
D0D,1B=53 2D
F0D,1B=8C 2F
D0D,22=3F 2D
F0D,22=74 2F
D0F,D5=7E E6
F0F,D5=1F 1C
D0F,D8=4F 78 A9 E6 07 28 07 0F 0F 0F B1 FE 64 D8 79
F0F,D8=1E 1F 1E 1F 1F 1E 1F 1E 1F 30 30 32 35 35 30
D0F,E8=C9 78 B7 C9 00 00 00 00 00 30 30 32 35 35 30 37
F0F,E8=35 4E 6F 20 6D 65 6D 6F 72 79 20 66 6F 72 20 53
D0F,F8=35 4E 6F 20 6D 65 6D 6F 72 79 20 66 6F 72 20 53
F0F,F8=4F 52 54 0D 42 61 64 20 64 61 74 65 20 66 6F 72
D10,08=4F 52 54
F10,08=6D 61 74
D12,12=42 61 64 20 64 61 74 65 20 66 6F 72 6D 61 74 0D
F12,12=7E E6 1F 4F 78 A9 E6 07 28 19 F5 3E 96 BE 20 0B
D12,22=38 CB 19 2B 7E 2B 07 07 B1 4F 7E D6 50 FE 70 38
F12,22=23 3E 42 BE 2B 20 04 F1 78 B7 C9 F1 0F 0F 0F B1
D12,32=01 AF 07 07 07 B0
F12,32=FE 64 D8 79 37 C9
. EOP

A note about patch levels

The last “official” LS-DOS release from MISOSYS used a patch level of 6.3.1H. My LS-DOS 2012 date extension patches identify themselves as 6.3.1K and now 6.3.1L.

Several people have asked why I chose to skip I and J?

The reason is because there were already two other unofficial LS-DOS patch sets that had used those letters. As far as I know, no copies still exist, but I decided to skip the letters entirely to avoid confusion.

Categories: General