------------------------------------------------------------------------------- ****** ****** ****** ****** ****** **** ****** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ***** ** ** ** ***** ****** ******** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** *** ***** ** ****** ***** ** ** ** ******** **** ------------------------------------------------------------------------------- STOS FAQ v0.8 Generated by: STOS Mailing List - stos@bath.ac.uk Enquiries: Should be sent to Les Greenhalgh - Email address in Authors section. Authors: mbitdc9235@newi.ac.uk - a.k.a MUG U.K(tm)/Mike Mee c9251129@zeus.hu.ac.uk - a.k.a ()rm of Digitallis/Jon Lewis Mark.Montreuil_DGNM@banyan.dgim.doc.ca - a.k.a Mark Montreuil ! ma2lgj@midge.bath.ack.uk - a.k.a Les Greenhalgh ae@minster.york.ac.uk - a.k.a Andrei Ellman This FAQ will hopefully answer all the questions you have on the programming language, STOS. If you wish to add any new sections to this FAQ, please send an example outline to the above Email address. Abbreviations used. ------------------- STU - ST User (more commonly known as ST User) STF - ST Format (more commonly known as ST Doormat) STR - ST Review BTW - By the way sp? - Spelling confirmation required ! We maybe coders, but there is no guarantee wee kan spel ! [ ] - Comments from a mailing list member - usually Andrei ! Contents -------- Section: Areas covered: 1 What is STOS ? 2 Where do I get hold of it ? 3 What is it like to program ? 4 What extras are available to compliment it ? 5 Can I *really* write commercial quality games with it ? 6 Are there any books available ? 7 What are extensions, and where do I get them from 8 Recommended programs - commercial & shareware 9 Miscellaneous section ------------------------------------------------------------------------------- 1. What is STOS ? Written by Francois Lionet and Constantin Sotiroupolous (Spelling please?) Published by Mandarin/Europress Software STOS is the forerunner to the Amiga version, AMOS, AMOS Pro etc.. And its a great shame that STOS hasn't been supported by Mandarin since they released AMOS Pro because there are a lot of people who use their language and get frustrated because they can't call for help! Mark Montreuil came up with this definition ...... STOS (for ST Operating System) is a programming language based on BASIC (Beginner's All-purpose Symbolic Instruction Code), that makes creating sound, graphics and movement on the Atari 16/32 bit line of computers as painless as possible. STOS has commands that handle input/output, animation, music, logic and program execution in an easy to understand way. A STOS programmer can spend more time on actual game design than on the "fiddly bits". Many things that were not considered possible, such as changing screen resolutions in the middle of a program or writing Arcade-type games in a BASIC language, are a reality with STOS. Hundreds of quality games, demoes, utilities and educational packages have already been written in STOS. STOS is a full-featured software development tool. Using STOS, art screens created in specialized paint packages, like Degas, Neo or Crack Art, can be easily used to create basic game graphics. STOS has built-in Sprite, Music, Map, Font and Sound effects generators. You can write some code, and, at a keypress, call up any of the added utilities (called accessories) to work on added features. You can even write your own accesssories, to use at any time. Machine-code routines can be called from within STOS, and new commands (called extensions), can be written to enhance STOS's functionality. Some extensions that are currently available include 3D, the Missing Link and Misty (see Extensions for further information). All in all, STOS is the perfect tool to bring your game ideas to reality without having to trudge through reams of machine code! Cheers Mark for the few above lines on STOS. Anyone else fancy adding more to it ?? ------------------------------------------------------------------------------- 2. Where do I get hold of it ? Has been given away with magazine cover disks, ST Format and ST User (I need a list of which ones!). The problem with the versions given away with the magazines is that they were no manuals, however ST Doormat, oops, ST Format will sell you the complete STOS kit. That includes the following: STOS, STOS Compiler, STOS Maestro (with sampler?) for around the 60 quid mark. Not sure about this at the moment, until I dig out one of my magazines and have a read. Also most mail-order firms should stock a copy of STOS. Try to haggle and get some decent prices. Don't buy the Interpreter without buying the Compiler ! Apparently every ST sold in Britain comes free with a copy of STOS with the manual thrown in. Any more information on *exactly* you get would be appreciated. If you have the spare money and you want an extra development machine, then it maybe worth getting hold of one ? ()rm has suggested that you look at bargain buckets in computer shops or check out the odd car-boot sale. But that is ()rms sense of humour !! ------------------------------------------------------------------------------- 3. What is it like to program ? ()rm says ..... STOS is BASIC, but a powerful version of BASIC. It has built in sprite handling routines, music commands, sound effects and numerous other routines, functions and commands which can be very useful. At first glance STOS looks horrible, but after a few weeks of programming it, you will wonder how you ever lived life without it (OK, not the truth, but it IS good for something!) As STOS is based on BASIC, it is very easy to program, in fact, I'd go so far as saying STOS is the easiest BASIC to write anything in. Everything can be set up very easily, for example, you want to play a sample yeah? Get the sample player extension, whack it in the STOS folder and then re-boot. (Or for those lucky hard-drive owners, unlike ()rm, copy all the extensions into your STOS folder and leave them there !!) Now play your sample with the command SAMPLAY.. No need to load routines into a memory bank, peek and poke a few numbers and call it. This is one of the nice things about STOS, its upgradeability.. Pity that the language hasn't been given a major rehaul with all these new functions BUILT IN. Andrei has this to say on the matter .... When STOS was designed, it was made to make writing games easy. The programmer would think mostly on the WHAT, rather than the HOW. In other words, it was supposed to make you able tp program games without having to think about how tyour ST works. For example, sprites could easily be displayed, moved, and animated with ease. Unfortunately STOS sprites tended to be a bit slow, but The Missing Link extension replaces STOS sprites with Bobs. Bobs are a bit more tricky to implement (you have to move and animate and erase them yourself), but they are much faster than STOS sprites. There is a similar story for other aspects of the language. STOS is a BASIC that uses line-numbers. This tends to be messy and often encourages programmers to write "Sphaghetti code" (There are gotos running all over the place). It would have been better if STOS had no line numbers, but would call procedures by their names, and have one command per line which was indented appropriately. ------------------------------------------------------------------------------- 4. What extras are available to compliment it ? STOS Compiler - Actually makes your programs faster (HAHAH!) STOS Maestro - Sample playback routines for STOS (and sampling hardware depending on which version you buy). STOS 3D - Add 3D commands to your games. Only drawback is that all the objects have to be loaded from disk each time they are required. STOS Tracker - Playback tracker tunes, albiet a bit slowley.. Andrei has added this as well ..... I have heard about a program written in STOS which adds proper procedures to STOS and gets rid of line numbers. I believe that this compiles the new type of code into STOS. This was originally listed in a STOS club newsletter, and Goomans have a copy on disk. Does anyone have experience using it? ------------------------------------------------------------------------------- 5. Can I *really* write commercial quality games with it ? Commercial Games ---------------- Check out: Bullet Train (revamped version was released in France a few years ago) Bumpy Cartoon Capers (also came with a dual-joystick extension) Cool Croc Twins Gilberts Day Out Prehistorik Skate Tribe (We think there's a few more..) Educational programs -------------------- All Fun School programs (also have full STOS source on disk) Henrietta Series by Lander (also with full STOS source on disk) Loads of other educational programs by other firms. Some names would be appreciated. Commercial quality shareware/public domain games ------------------------------------------------ There are also a few examples of top quality shareware games written with STOS. So grab a hold of your favourite PD library and ask for the following: Grandad & The Quest For The Holey Vest by Ian Scott. The Glass Buttock of Tharg by Ian Scott. Grandad II - The Search for Sandwiches by Ian Scott. Ozone by Nick xxxx (can't remember his surname!) - was turned down by Ocean at the last minute because they found out it was written in STOS. Pyscho Pig, Sim Pig, Colour Clash, Fatemaster by AnimalSoft. Plop by ()rm - apparently the freebie you get when you register is better! Bio Hazard by Les Greenhalgh (full review coming soon!) Most of the stuff by Andrei (some feature STE 8 player options) of which he himself recommends the following: Linecrash, Mazewar ST, Video Games v0.5 Pacmen, Alienation (currently undergoing a re-write) ? [Hopefully, after my HND is over and I manage to get hold of a modem, I will do proper reviews of ALL the STOS stuff I have got. The definitive review will be posted in parts as soon as I have the time ! - MUG U.K ] ------------------------------------------------------------------------------- 6. Are there any books available ? As far as I know there is the one by Stephen Hill, which was published by Sigma Press. Its title is Games Makers Manual. It teaches you a seperate game style within a chapter, and for the more advanced, gives you the lowdown on writing extensions. Does anyone know if Sigma released an accompanying disk with all the routines typed out ? If not, anyone fancy knocking up a disk since the book has not exactly been supported by Sigma ? There is a STOS guide published by a PD library, but whether its any good is another matter all together. It is 30 quid and contains some 400 pages of STOS related stuff. Takes you from the complete beginning and shows you how to write arcade, strategy and educational programs. Anyone out there know how good it is ? Disk Magazines/Newsletters -------------------------- Not exactly books, but disk magazines are in abundance. Some contain partial STOS sections, whilst there are (or in some cases, were) others which are STOS related and nothing else is mentioned. Check out: STOS Bits 1 (now dead - forerunner to HP Source) HP Source 1,2 (now dead) STOSSER Disk Magazine (still going - now on issue 11 ?) ST Programmer (I've only seen one issue!) Ledgers (had an occasional STOS section) Maggie (in amongst the swear words was the occasional STOS column) Anyone know of any other magazines ? Please send in details of whether the magazine is going or not. Also required is a compilation of what was printed in ST Abuser, ST Doormat and ST Review regards STOS, along with a similar listing of useful routines and articles from STOS Newsletter. Unless, there is already one available. According to Andrei, New Atari User (still alive?) had a STOS column in the 16-bit suppliment ? Also there is the Atari Magazine, a French mag which also has a STOS column or mentions it occasionally ! There is an online-help program for use with The Missing Link. This handy reference guide will give you the keyword and appropriate parameters for each Missing Link command. Just like Windows Help files on a PC !! ------------------------------------------------------------------------------- 7. What are extensions, and where do I get them from ? Extensions are a way of further expanding STOS. All the following are extensions, Compiler, Maestro, 3D and Tracker (Released in the P.D.) There are numerous extensions in the public domain. The favourites being MISTY and MISSING LINK, both been written by a group called Top Notch. They add commands which SHOULD have been in STOS from the start. Les Green (ma2lgj@midge.bath.ac.uk) is in the middle of adding some superb sprite routines to his own extension. It also allows STE hardware screens to be used etc. More details when it is released. Andrei has sent me the following exhaustive list of extensions available for STOS. It was in two parts, one by Andrei and the other by Les Greenhalgh. I will use Les' version as it lists the FTP sites where most of them can be found. Take it away Les ................. The consise guide to Stos extensions. By L.J.Greenhalgh Terminology a.a = atari archive umich edu in either language or progamming folders s.w = Shareware cr = Shareware version is crippled pd = Public Domain and freely available GI = Goodman International PD Library STF = was on an ST Format cover disc Misty extension by Top Notch Software (sw STF) Can be found: a.a in both Stosers.zip and Misty.lzh files Miscellaneous graphics commands including an improved screencopy which can use any of the STs bitplanes, instead of 4 at a time in STOS. Excellent stuff. Missing Link extension Top notch Software (sw cr STF) Can be found: a.a in Link1.lzh - Link3.lzh about 50 new gfx commands including replacement sprite commands and commands for dealing with maps and multiple palettes on screen. A must have. Extra extension by Martin Cubbit (pd) Can be found: a.a extra.zip loads of miscellaneous commands including cookie reading commands, mirror and blur sections of screen , paste strings in opaque mode, format text, detect tos version etc. Brilliant Stars extension by Lee Upcroft (pd STF) Can be found: a.a stossers.zip Commands for drawing 3D and 2D starfields, very quick. Excellent. Blitter extension by Asa Burrows (sw STF) Can be found: a.a in their uploads folder in blitter.zip Commands for using the blitter in MegaSTEs, MEGASTs, STEs, Falcons? Seems a bit slow. MIDI extension by Asa Burrows (pd STF) Can be found STF , GI Commands for using the STs MIDI port. Never used it. Stos Vidi extension (c) Commands for interfacing with the Rombo VIDI digitiser. Never used it. Stos Maestro (c) Commands for playing samples through Stos, excellent although better performance can be obtained from the Missing Link's Digiplay command. [AE - I think that TML does not emulate STOS Maestro's reverse playing abilities] Stos Pac/Squasher ? (c) Commands for packing/unpacking all types of memory bank not just pictures. Never used it. Depacking ability surpassed by Missing Link. TML supports packers that can pack tighter than STOS Squasher (eg. Pack Ice). Unbelievably buggy - read docs with Mega Depacker for more information. STOS Sticks (c) [AE 26-4] Is that Twinstix? Commands for reading both joy stick ports. Unnecessary, use TML equivalent. Control Extension by Les Greenhalgh (pd) Can be found: a.a in uploads directory in blitter.zip Includes commands for reading a parallel port joystick adaptor, a switch construct for STOS, a super fast add command and other miscellaneous stuff. Quick Extension by ? (sw?) Can be found: Stossers disczine Commands for super fast horizontal scrolling, rasters, stars. Seems good. STOS TOME by Aaron Fothergill (c) Can be found: GI Commands for drawing maps, irrelevent now the Missing Link exists. STOS 3D by Voodoo Software (c) Commands for manipulating 3D objects, unusable unless you have a hard-drive and 1 meg. Too limited, no commands for rotating around current heading and no commands for representing horizons, ground, etc. Very large files. Objects cannot be stored in banks, but have to be loaded with purpose made extension commands. Other forms of extensions that you know about would be appreciated in this list. As ()rm recently suggested, all those who are in the process of writing an extension, put your heads together and come up with one mother of an extension !! There are other ways of improving STOS without having to use extensions. These take the form of machine code routines which you pass some variables and call them. A few of them have been taken from the same list as compiled by Les and Andrei. Some Machine language routines used with STOS --------------------------------------------- BITCOPY This is what I believe to be a routine that is similar to Misty's SKOPY command. Top Notch used this in their demos before they wrote MISTY which now makes BITCOPY obsolete. BORDER Top and Bottom border overscan in STOS. STOS runs just as normal, except when you use the mouse/joystick/keyboard, the overscan dies. The top of the screen starts as 'physic', and continues as normal as if the screen was greater than 32K in size. Works on STFMs and STEs. Found on a disk of the Cunning Demo. OVERSTOS Full screen overscan. Can only display a static picture. I think this has problems on STEs. Found on a disk of the Cunning Demo. RASTER By Neil STewart of Flair Routine that changes the value of only one colour on the screen. This was later implemented in Son of TML's RASTER command. Can be found on one of the disks from the Cunning Demos by ACO & Flair. STOS-SPEAK by ? A patched version of the original SPEAK.PRG - allows you to use speech inside your programs by sending a string of characters to the program. SPECTRUM (I am not sure of the exact name) Displays spectrum 512 colour pictures. Very limited as you can only exit from display by pressing space. Shareware (was once on a STF coverdisk. If you register for 15 pounds (A rip-off), you get a version that can display the pictures in a window. I have not got the registered version. This was advertised in ST Format in 1992) STOS_512 By ? Routine that splits the screen into several palettes of 512 colours. This was later implememnted in TML's PALSPLIT command. TRACKER An improved mod player. Found on a disk of the Cunning Demo. ()rm is hopefully going to working on an interface to allow the use of the Ninja Replayer routine from within STOS. More news when he has finished failing his degree ! If anyone fancies adding to the above list, then please do. You know where to send any additional information. Apparently larger lists exist of extensions for STOS, but these can be found in STOSSER magazine. If someone can upload or Email a copy of the latest list, I can add them to the above list. ------------------------------------------------------------------------------- 8. Recommended programs - commercial & shareware A *DECENT* art package. Recommended commerical ones are: Crackart (recommended by ()rm) Dpaint ST (recommended by: MUG U.K(tm)) NeoChrome Master v2.28 (recommended by: MUG U.K(tm)) A *DECENT* tracker editor. Try not to rip off someone elses work ! Sample-based ones ...... ------------------------ ProTracker 2 by Wizzcat/Deltaforce Octalyser by ?? (STE only, but has option for 8 channels of music) Soundchip-based ones -------------------- Megatizer by Sector One. SID Editor by Animal Mine (improved version of Tri-Sound, with SID Emulation) XLR8 Editor by Sentry (all the above have the ability to assign 1 channel to play samples) Without plugging my own stuff too much, if you can find copies of my 'Makin Sweet Music Disks Vols 1-3', they all contained ripped music from games and demos. Each folder on the disk contained the 68000, GFA and STOS replay routines ! If I can get a tune playing in 68000 or GFA, then I don't see why I can't knock up a STOS front-end. ()rms music player program has all the necessary information on screen for setting up and calling the myriads of music available in the ST music-scene. A STOS Patch program (enables your compiled code to work on ST, TT & Mega STE and even the Falcon !!!) Currently it is STOS FIX v3.0 by ?? and it is only available from Goodman Enterprises ! Charging for a program which fixes your STOS code and leaves a bloody advert for Goodman on the front of your code .... Monopolistic practicies anyone ? Anyone fancy making a new version without the large Goodmans advert ? Or is that enticing piracy ?? ------------------------------------------------------------------------------- 9. Miscellaneous Section "What versions of STOS have come out?" "What is the History of STOS?" Both questions answered by Andrei. STOS 1 was only released in France in early 1988 (published by Jawx). STOS 2.3 Was released in the UK By Mandarin in November/October 1988 STOS 2.4 Is a patch to remove some bugs in STOS 2.3 and make it work with the compiler (1989) STOS 2.5 Is a patch to make STOS run on the STE (1989) STOS 2.6 is a patch to make STOS run on STEs with TOS 1.62 (1990) If your version of STOS is below 2.6, You must update it immediately, especially the compiler. You will then be able to make programs that run on TOS 1.62 STOS 2.7 (compiler only). Makes programs that use the STOS tracker extension compile. I am not sure whether or not it is nescesary or not if you are not using the tracker extension. I once remember hearing in 1990 that Francois Lionet was writing a version of STOS called STOS PRO (or STOS PLUS). For some reason, this was abandoned. Francois did have to leave programming to do his military service. I am not sure if he is back yet (not as far as I know as AMOS Pro is waiting to be upgraded to AGA chipset - MUG U.K) Also, FALCOS was being developed (STOS for the Falcon). Apparently, this project was stopped due to a disagreement between Atari and the developers. ---------------------------------------------------------------------------- "How to make it not look like STOS!" - Andrei answers a few more questions. - Try and avoid the 'appear' command (unless the appear you are using is fast). This tends to give the game away. STOS 'appear' does not let you press a key to speed things up. - Get rid of the F-key window first. There is nothing more "Written in STOS" than seeing the F-Key window when you have just loaded a game. Alter this within the compiler settings. - Change the font. The Lo-Rez font also gives it away. I personally use the font of the Atari 8-Bit computers. - Change the mouse pointer - almost as ugly as the AMOS Professional one ! - Different type of cursor - everyone recognises that thick ugly cursor ! - Avoid using the SHOOT and BOOM and BELL commands unless nescesary. Replace them with sound effects from a piece of hacked music ! Try the following: Count Zero - Killing Game Show (20 SFX) Mad Max - Numerous pieces have Sound FX embedded David Whittaker - His fast music may be awful, but most have SFX - Replace the STOS keyboard click or get rid of it completely. There is a poke to use the standard ST keyboard click from STOS, but I don't remember it. [Details would be nice !!] - Different windows and File selectors (not sure about the new Windows extension). You may want to mention that it was written in STOS directly on the title screen, or say this in the documentation. The idea is that as well as letting people know it was written in STOS, it can give the WOW effect if it is good. ------------------------------------------------------------------------------- Shrinking the size of your compiled code by MUG U.K Well, this section is fairly easy to do. Follow these simple rules. If you have ANY other packer not listed here, BIN IT! It is either incompatible with the Falcon, or has a pack ratio similar to that of the original versions of the Jek Packer - ie. rubbish ! Packers - The Definitive List ----------------------------- Speed Packer v3.0 - definitely the best. AUTO Depack program as well as Self-extracting archives ! Atomic v3.5/v3.6 - second best. Apparently does not work on the Falcon but I will release some source code that might allow you to make your own program headers for data file packed versions of Atomik files. ICE v2.40 - Stalwart and much used packer. Still used after all these years. Compatible with the Falcon but it cannot match the above two for output size. Anyone recommend any others ? Depacker Programs ----------------- I can heartily recommend the following programs for converting your old packer formats back into STOS code so you can patch them and repack them to work on newer machines. Try.... Multi Depack v1.5 (or the leaked preview versions of 2.0/3.0) - I wrote this! Mega Depacker v2.12 (by Mike Watson) Naughty Depacker New Depack (new name for Mega Depacker) If the program will not depack with any of the above, then there must be a reason why it won't let you unpack it !! ------------------------------------------------------------------------------- Well this is the end of the STOS FAQ, designed and written by members of the STOS Mailing List (stos@bath.ac.uk). Anyone is welcome and indeed, encouraged to send in alterations and additions to this FAQ. We hope you found it useful. Any Public Domain library is allowed to distribute this FAQ, but please do not distribute any versions lower than v1.0 as they are pre-release and probably quite embarrassingly small in size. Also do not forget to credit that this FAQ was generated by members of the STOS Mailing List.