De-compiling The Missing Link extension help

STOS-related stuff in here please

Moderators: simonsunnyboy, Mug UK, Zorro 2, Moderator Team

User avatar
exxos
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 4933
Joined: Fri Mar 28, 2003 8:36 pm
Location: England
Contact:

De-compiling The Missing Link extension help

Postby exxos » Sun Feb 01, 2015 11:25 pm

Were the sources ever available for the ML extension ? Or maybe someone here can decompile it with the intention of updating it ?

The Missing Link extension is fantastic on the ST. Though there are simply no functions in the STOS extensions for sprites or bobs, world functions etc :(

I think the main 2 issues are resolution and colours. Of course the ML commands were all geared up for 320x200 so its unclear if higher ranges would actually work. I assume there was no error checking to check for values over 320x200 so I assume the resolution part wouldn't be a issue. Though the entire extension was geared up for 16 colours. If the colours could be updated so the extensions support 256 colours then it would allow the missing link extension to be used on the Falcon with 640 x 400 in 256 colour modes.

While there are a lot of Falcon STOS commands, there isn't much in the way of sprite or map functions. So creating a game on the falcon is actually somewhat limited without some updates somewhere :(
4MB STFM 1.44 FD- VELOCE+ 020 STE - Falcon 030 CT60 - Atari 2600 - Atari 7800 - Gigafile - SD Floppy Emulator - PeST - various clutter

http://www.exxoshost.co.uk/atari/ All my hardware guides - mods - games - STOS
http://www.exxoshost.co.uk/atari/last/storenew/ - All my hardware mods for sale - Please help support by making a purchase.
http://ataristeven.exxoshost.co.uk/Steem.htm Latest Steem Emulator

mlynn1974
Captain Atari
Captain Atari
Posts: 206
Joined: Mon Mar 03, 2008 10:33 pm
Contact:

Re: De-compiling The Missing Link extension help

Postby mlynn1974 » Mon May 18, 2015 12:18 am

The sources were never released to my knowledge. You could buy the extension in the compiled format and you'd get the source code to some demos to show you how to use it and probably some support by snail mail.

Misty and The Missing Link were both written by Colin A. Watt and Billy Allan with some commands based on the earlier FastCopy and BitCopy assembly routines. I used to see them at The Barras in Glasgow at the Phoenix PD stall but I lost touch with them after uni. They were very friendly and helpful.

Billy discovered how to write extensions for STOS then they applied the same process to build up the extension for the interpreter and the compiler. They may have had to write to Mandarin to find out this information.

I did some testing with the extension it was at my suggestion they added the hertz command to change 50\60Hz and reboot.
Some commands didn't make it into the extension such as a fast line drawing routine and Neil's Raster extension. Tony from DigiTech wrote a nice one bitplane line drawing assembly routine based on Bresenham's algorithm which I used.

They kept Misty and The Missing Link fairly 'lean and mean' as C++ programmers would say today.
I don't know if anyone else on here remembers those days, I'm talking about 1991-1992. Maybe DML will have more information.
Last edited by mlynn1974 on Mon May 18, 2015 11:51 pm, edited 2 times in total.
Still got, still working: Atari 4Mb STe, 520STFM, 2.5Mb STF.
Hardware: Cumana CSA 354, Ultimate Ripper, Blitz Turbo, Synchro Express II (US and UK Versions).

mlynn1974
Captain Atari
Captain Atari
Posts: 206
Joined: Mon Mar 03, 2008 10:33 pm
Contact:

Re: De-compiling The Missing Link extension help

Postby mlynn1974 » Mon May 18, 2015 12:38 am

The main problem with STOS is that it is line number based so inserting or renumbering a listing is a pain.
It was easier to maintain code in AMOS because it was more procedural.

I seem to remember that STOS was tokenised so listings would take less memory, but I don't know how the extensions would be allocated new unique tokens so you could have any combination of extensions loaded.

The extensions used for the demos were:
Better Than Life (Bitcopy),
Pandoras Box (Bitcopy, some screens were pure STOS),
Cunning Demos (Missing Link),
Misty Demos (Misty extension, Overstos).

The games that were written with ML were pretty good:
Frank and The Lost Aubergine:
https://www.youtube.com/watch?v=w8FVLrzbrZc
The Race:
https://www.youtube.com/watch?v=HVKt_j6Nz6
The Race (Rewritten):
https://www.youtube.com/watch?v=nIEHEbkTc_M
Balls:
https://www.youtube.com/watch?v=ct1fnKHtX3k
Death Incarnate:
https://www.youtube.com/watch?v=q_Q7j31T9dQ
Violent Death:
https://www.youtube.com/watch?v=zTXpJAD5PDg
https://www.youtube.com/watch?v=V-YsrzR6hcI

There was mentioned the possibility of a hardware scrolling extension for STOS but I don't think it was ever implemented.
Still got, still working: Atari 4Mb STe, 520STFM, 2.5Mb STF.
Hardware: Cumana CSA 354, Ultimate Ripper, Blitz Turbo, Synchro Express II (US and UK Versions).

mlynn1974
Captain Atari
Captain Atari
Posts: 206
Joined: Mon Mar 03, 2008 10:33 pm
Contact:

Re: De-compiling The Missing Link extension help

Postby mlynn1974 » Fri Jun 26, 2015 12:30 am

I don't know if this is useful but I disassembled bitcopy using EasyRider because it's not much different from skopy in ML.
It does range checking to ensure the screen coordinates are valid but it doesn't implement clipping at all and the block must be on a 16 pixel boundary. Bitcopy was designed to be fast and nothing else.

Interestingly it uses this:
MOVE.W 0(A0),0(A1)
MOVE.W 8(A0),8(A1)
MOVE.W 16(A0),16(A1)
Which takes 20 clock cycles each according to my cc sheet.
A move.w with 2 adds add dn,an would take 4 cc each so 12+4+4=20 which is the same. He could have saved 8 cc by making the first MOVE.W (A0),(A1). It probably saves a few bytes of memory not using the adds.

For the Falcon and non-planar displays it would need to be totally rewritten.

STOS was great back in the day, but it's a difficult trade-off between assembly programming and greater productivity by using a high level language. Compiling and debugging using a C Compiler on the ST with just a floppy drive would be very slow.
Still got, still working: Atari 4Mb STe, 520STFM, 2.5Mb STF.
Hardware: Cumana CSA 354, Ultimate Ripper, Blitz Turbo, Synchro Express II (US and UK Versions).

User avatar
exxos
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 4933
Joined: Fri Mar 28, 2003 8:36 pm
Location: England
Contact:

Re: De-compiling The Missing Link extension help

Postby exxos » Thu Mar 24, 2016 9:20 pm

BUMP:

Thought I would bump this topic in light of recent STOS issues with TML extension..
4MB STFM 1.44 FD- VELOCE+ 020 STE - Falcon 030 CT60 - Atari 2600 - Atari 7800 - Gigafile - SD Floppy Emulator - PeST - various clutter

http://www.exxoshost.co.uk/atari/ All my hardware guides - mods - games - STOS
http://www.exxoshost.co.uk/atari/last/storenew/ - All my hardware mods for sale - Please help support by making a purchase.
http://ataristeven.exxoshost.co.uk/Steem.htm Latest Steem Emulator

User avatar
dml
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 3472
Joined: Sat Jun 30, 2012 9:33 am

Re: De-compiling The Missing Link extension help

Postby dml » Thu Mar 24, 2016 11:10 pm

mlynn1974 wrote:They kept Misty and The Missing Link fairly 'lean and mean' as C++ programmers would say today.
I don't know if anyone else on here remembers those days, I'm talking about 1991-1992. Maybe DML will have more information.


Hey!

:)

I do remember those days - although I don't remember a lot of the details re: what people were actually doing. I knew Colin quite well and still in touch with Neil Stewart today. I didn't know Billy at all. I was fiddling about with STOS stuff around the same time (probably the tail end of that) but I didn't pick up the 'magic info' they got from Mandarin on making proper extensions so I've no idea how that works.

One particular day had Colin, Neil and myself trying to figure out how a new bootsector/bootstrap routine would work in Colin's ST only after it had been put in another ST first. Every time. Despite being write-protected. We tried it over and over. I think we put it down to cosmic radiation and biscuit crumbs, and moved on.

I remember Colin being very good at making maps for games, game puzzles and so on. He also nearly started a fight in a cinema once because some people were talking over the film!

The Barras in Glasgow at the Phoenix PD - ***yarrrr!*** :-p definitely a hangout for the local ST scene.

User avatar
CiH
Atari God
Atari God
Posts: 1125
Joined: Wed Feb 11, 2004 4:34 pm
Location: Middle Earth (Npton) UK
Contact:

Re: De-compiling The Missing Link extension help

Postby CiH » Thu Mar 24, 2016 11:45 pm

The Barras in Glasgow at the Phoenix PD - ***yarrrr!*** :-p definitely a hangout for the local ST scene.


I remember a certain diskmag going under the initials "PB" that spent a lot of time there, and liked to keep the rest of us updated on its status too. :mrgreen:
"Where teh feck is teh Hash key on this Mac?!"

User avatar
dml
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 3472
Joined: Sat Jun 30, 2012 9:33 am

Re: De-compiling The Missing Link extension help

Postby dml » Thu Apr 14, 2016 2:57 pm

FYI (for others who might want it)... I recently reversed and patched TML (LINK1.E??) for the 128-tile limit (well, increased it to 256 tiles).

The STOS extension disassembled easily but some jumptables needed to be done by hand before code could be added in some places.

The Compiler extension did not disassemble so easily - it's all size-sensitive regions and word-offset tables into code with no label associations. But other than this there was less case-specific crap in the compiler extension needing manually reversed, compared with the other one.

I can post the source if anyone finds it helpful. There are still a few small areas needing manually disassembled to rel-labels but they are inside some music stuff and probably doesn't need messed with anytime soon.

[EDIT]

Sorry, almost forgot to add the "Yaarrrrr!!!!" :angel:

User avatar
dml
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 3472
Joined: Sat Jun 30, 2012 9:33 am

Re: De-compiling The Missing Link extension help

Postby dml » Sun Apr 17, 2016 9:19 am

In case anyone else needs it...

https://dl.dropboxusercontent.com/u/129 ... _patch.zip

Here's the patched LINK1 and the R-E'd source code for both interpreter and compiler extensions. The patch increases the 128-tile limit to 256 tiles, making it a bit more useful. I might have broken something else in the process but it seems ok so far. VASM to assemble this one, but Devpac should work if you fix the if/else syntax.

The 'honesty_check' function in the source was just a quick guess but might not be correct so you might as well ignore it. I think the registration stuff is actually in LINK2.EX? anyway...

OverlordMRK
Retro freak
Retro freak
Posts: 11
Joined: Thu Aug 31, 2017 10:25 pm

Re: De-compiling The Missing Link extension help

Postby OverlordMRK » Tue Dec 12, 2017 11:16 pm

Hi dml, your link to the patched version of the map editor seems to have expired, any chance you can re-upload this? Would greatly appreciate it :) is it still working out okay? No issues with increasing the limit to 256 tiles?

Beurt
Atarian
Atarian
Posts: 7
Joined: Sun Aug 12, 2018 8:41 am

Re: De-compiling The Missing Link extension help

Postby Beurt » Sun Aug 12, 2018 1:27 pm

mlynn1974 wrote:The extensions used for the demos were:
Better Than Life (Bitcopy),
Pandoras Box (Bitcopy, some screens were pure STOS),
Cunning Demos (Missing Link),
Misty Demos (Misty extension, Overstos).


Hi!

I’ve been away from the ST scene for decades now (I had to stop around 1995) and, back in the day, I used to tweak things with STOS. I’m peeking in the forum because the books from Microzeit drawn me into my own nostalgia.

Reading you guys makes me happy to see that STOS that I liked so much is still alive in someone’s heart.

To get back to the point I would like to add two more demos to your listing:

- TLCP Rebirth Megademo (two versions are existing, the one using the Misty extension is almost bearable, the other is more difficult to find): http://www.pouet.net/prod.php?which=23069 https://demozoo.org/productions/78546/
- SAC II Megademo (meaning "STOS AMOS Convention 2", a lot better than the previous one, thanks to The Missing Link): http://www.pouet.net/prod.php?which=23071 https://demozoo.org/productions/78547/

Many other extensions and routines, most of the Top Notch ones, were used, but I can’t remember which ones.

I’m the author of the first Megademo, and I made most of the second one (some screens were coded by guest friends from the group). Unfortunately the source code is long gone… I also have some other crappy screens on some MSA somewhere in my HDs if someone is interested in freak archaeology. Most of my work with STOS is lost, though.

I’ve never been good at coding, but STOS made it possible for me to try to make something that barely looks like what the great guys were doing with ASM. And nowadays, I’m still not great at coding, but working at helping everyone to express oneself with digital tools, thanks to STOS philosophy.

mlynn1974
Captain Atari
Captain Atari
Posts: 206
Joined: Mon Mar 03, 2008 10:33 pm
Contact:

Re: De-compiling The Missing Link extension help

Postby mlynn1974 » Tue Aug 14, 2018 9:16 pm

Hi Beurt,
These are fantastic demos! I've never seen them before and should add them to my STOS Wiz-Coders page.

The SAC II Megademo has a nice stable full screen with sharp graphics.
We made a nice sharp STOS logo for The Misty Demo but Colin somehow managed to block it up.
It's good to see the STOS Gorilla in a demo. There are also some nice overlaid sprites on the menu which are hard to do at a decent frame rate. Are these sprites Joeys or STOS sprites? Great stuff!

I’ve never been good at coding, but STOS made it possible for me to try to make something that barely looks like what the great guys were doing with ASM.

I know what you mean. It was great when BASIC was included with the computer. If you find any of your source disks it would be easy to convert to disk images and transfer to the PC.
Still got, still working: Atari 4Mb STe, 520STFM, 2.5Mb STF.
Hardware: Cumana CSA 354, Ultimate Ripper, Blitz Turbo, Synchro Express II (US and UK Versions).

Beurt
Atarian
Atarian
Posts: 7
Joined: Sun Aug 12, 2018 8:41 am

Re: De-compiling The Missing Link extension help

Postby Beurt » Thu Aug 16, 2018 10:44 am

Hi!

mlynn1974 wrote:Hi Beurt,
These are fantastic demos! I’ve never seen them before and should add them to my STOS Wiz-Coders page.

Well… Thank you for the idea, but I’m not sure about that! I was just trying to do what the real Wiz-Coders were doing, but later and worst. :oops: :lol:

mlynn1974 wrote:The SAC II Megademo has a nice stable full screen with sharp graphics.

Except for the graphics, I don’t get much of the credits: the code was from Top Notch Software (included in the Registration Disk).

mlynn1974 wrote:We made a nice sharp STOS logo for The Misty Demo but Colin somehow managed to block it up.
It’s good to see the STOS Gorilla in a demo. There are also some nice overlaid sprites on the menu which are hard to do at a decent frame rate. Are these sprites Joeys or STOS sprites? Great stuff!

I barely remember… I guess it was the special sprites provided by The Missing Link. Most of the "advanced effects" were coded thanks to Misty and The Missing Link. Maybe I did play with planes (I was doing that a lot at the time)? I’m not sure…

I just remember sweating a lot on the loader (able to load any demos and go back to the main menu, keeping your position on the map and in the scrolltext, without a visible cut). I remember that I also struggled a lot with some demos (Disting Vu Meter and Roto-Scroller), but that my favourite one (Very Big Scroll) was very easy to make once I had the idea.


mlynn1974 wrote:I know what you mean. It was great when BASIC was included with the computer. If you find any of your source disks it would be easy to convert to disk images and transfer to the PC.

I won’t find the sources… While moving, I gave all my ST disks to a friend’s brother, including STOS and all my source code… No backups at the time… And I lost track of this friend. It’s all gone. :?

User avatar
spiny
Disk Imager Supreme
Disk Imager Supreme
Posts: 2484
Joined: Mon Aug 11, 2003 11:53 pm
Location: just outside bristol
Contact:

Re: De-compiling The Missing Link extension help

Postby spiny » Thu Aug 16, 2018 10:49 am

Beurt wrote: I also have some other crappy screens on some MSA somewhere in my HDs if someone is interested in freak archaeology. Most of my work with STOS is lost, though.



Yes, us Demozoo types are interested :)

I see you've linked to the group page (https://demozoo.org/groups/40996/) so if you have time, create an account and add any other prods you may have, plus any member details that might be useful. Release dates are also good, but in my experience of adding my own stuff, usually very difficult to remember :D

Beurt
Atarian
Atarian
Posts: 7
Joined: Sun Aug 12, 2018 8:41 am

Re: De-compiling The Missing Link extension help

Postby Beurt » Sat Oct 06, 2018 8:56 am

Oups wrong forum! (can't delete my post)


Social Media

     

Return to “STOS”

Who is online

Users browsing this forum: No registered users and 2 guests