I need to give some extra explanations about this my work, performed over almost whole year, then to explain how combination of TOS 1.04 with TOS 2.06 Desktop is done.
Especially after ridiculous accusations about using some C sources.
1. Everything is done in pure Assembler. There are no sources available for TOS 1.04 and 1.62 . So, first step was proper disassembling of them. That took lot of time, luckily most of if I did many years ago.
2. Something not known even for people who think that know lot about TOS:
TOS is made from 2 clearly separated parts: GEMDOS part and AES/Desktop part. First starts with initialization after power on/reset, setting vectors and like, then there is code for interrupts, floppy, fat12-16 code, and so on. Last part of it are font definitions and related. Second part is started from GEMDOS part, practically as some GEMDOS app . They are pretty much independent, no any regular call (jsr) from one to other. What means that you can combine GEMDOS part of one TOS version with AES part of some other TOS version.
Of course, AES/Desktop of 2.06 is what is interesting. If we combine it with GEMDOS part of 1.04 we get something great: better SW compatibility and comfort of 2.06 Desktop. I did it first time in 2009.
More about, and files with which everyone can do combining self here:
3. This is not 'patch' .and not performed as usual patch - adding some new code in binary . That is just not possible, and would be not so efficient. Because there is no space for many patches, new functions in TOS 1.04 . First thing what needed to do was optimization of binary (resulting) code, make it shorter. And it was possible with some extra work. So, I used Devpac3 assembler optimizations, mostly absolute address short form, if possible - that self gave some 6 KB extra space (shorter code). And other things like packing of RSCs .
New functions are integrated as part of TOS, and no links, jumps to them.
After some changes, need to assemble some new combination of settings, assembling complete TOS is necessary. Btw. it takes not much time in Steem on fast PC, since can make it run some 20x faster than on regular ST .
Edited by ParanoidLittleMan, Thu Dec 6, 2018 12:43 PM.