Jump to content
IGNORED

My TOS 1.04/1.62 improvings, how combo 1.04/2.06 is done


Recommended Posts

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:

http://forum.8bitchip.info/software-17/how-to-combine-gemdos-and-aesdesktop-parts-from-different-tos-versions/

 

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 .

http://atari.8bitchip.info/tosimpr.html

Edited by ParanoidLittleMan
  • Like 2
Link to comment
Share on other sites

I sold already some improved TOS in EPROM chips. Had not much time and proper conditions to work on it in last 2 months - 2 moves and some sad events. Hopefully things will be settled in week-two. And, as is usual with SW - it is never really finished. New ideas come, and there is still space for them in even only 192KB of TOS 1.04 size. And I can't resist: thanks to fact that I do all it in assembler and not C .

Link to comment
Share on other sites

I made progress last days, set up my workplace, so will be ready to burn EPROMs in couple days.

Will make new WEBpage dedicated to selling with (I hope) useful info, and understandable for ordinary people specs. Prices, some screenshots, videos and whatever is needed.

Ah, and bad news for some 'constructive' people - there will be no guest book :)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...