************************************************************************** * * * D e t a i l s o f t h e * * * * S T ( e ) / T T / F a l c o n 0 3 0 * * * * E x t e n s i o n S u i t e * * * * ½ M a r c h 1 9 9 8 * * * * Anthony Hoskin. * * 45 Wythburn Road, * * Newbold, * * Chesterfield, * * Derbyshire, * * S41 8DP. (U.K.) * * * * A SPECIAL EDITION FOR SUBSCRIBERS OF ATARI COMPUTING. * * * ************************************************************************** *************************** * * * I N T R O D U C T I O N * * * *************************** This document is a description of STOS extensions I have currently submitted for inclusion on the AC reader disk. It is only intended for the use of the Atari Computing magazine publishing team and its reader disk editor and as such should not be included in the distribution of the said STOS extension suite. A little bit of history... Wayback in early 1994 my brother and I had just bought our Falcon 030's and as a result of my brother complaining about STOS not behaving particularly well on the Falcon we decided to try to do something about it. As a result over the last 4 years I developed a comprehensive extension suite and patched STOS library files which made using STOS on the Falcon more than just a possibility but a great pleasure. Now with the extra video modes and colours available a much greater diversity grew into how the programs could be presented when running on the Falcon. Then in late 1997/early 1998 I had to do some major updating on my Falcon extensions - each STOS extension has a limited number of new commands available to it and mine had rapidly reached their limits some time ago. I decided that some commands would be better off in their own dedicated extensions - the Gemtext commands from my Falcon Video extension for example. So out of this major restructuring new extensions have been born. A major side benefit of this is that some facilities previously available only from the Falcon extensions are available in extensions which are now compatible with the ST(e) and TT machines. This has now opened the door to all those ST'ers out there looking for that bit extra for their machines. Continued... ************************************************************************** * * * A D e s c r i p t i o n o f t h e S T O S e x t e n s i o n s * * * * a s s u b m i t t e d f o r t h e A C r e a d e r d i s k * * * ************************************************************************** Extension :- ST(e)/TT/Falcon 030 System Control Extension v0.9 Machine :- All ST(e), TT 030, Falcon 030 machines. Commands :- Currently over 50, those preceded by a '!' are compatible available with machines featuring the enhanced joystick ports [STe and Falcon 030]. Those preceded by a '*' are specifically for the Atari Falcon 030. All the other commands are available to all machines. System commands; coldboot warmboot Cookie commands; cookieptr cookie Keyboard commands; caps on kbshift caps off Continued... ST Mouse commands; st mouse on st mouse colour st mouse off st mouse stat st mouse _limit st mouse CPU/Blitter control commands; * _cpuspeed * _busmode * _blitterspeed * _stebus * _cpucache on * _falconbus * _cpucache stat * _nemesis * _cpucache off Paddle/Jagpad commands; ! _jagpad direction ! paddle x ! _jagpad fire ! paddle y ! _jagpad pause ! lpen x ! _jagpad option ! lpen y ! _jagpad key$ Arithmetic commands; _add cbound _add ubound _sub cbound _sub lbound odd even String commands; code$ lset$ uncode$ rset$ File management commands; _fileselect$ _file attr _file exist Required :- SPRIT101.BIN [STOS interpreter library file] patch(s) SPRIT101.LIB [STOS compiler library file] Continued... What does :- This extension comprises over 50 new instructions/functions it do? for enhancing system control of the Atari ST(e)/TT/Falcon 030. Also provides STOS with a new 3D effect file-selector which although originally coded for the Falcon's extra video modes will also work in the ST's native modes, i.e., ST Low/Med/Hi resolutions. This 3D effect fileselector requires the above patches because the main STOS library files contain routines vital to the support of this feature. If you are running an ST(e) and never intend using the 3D effect fileselector then the patched library files need not be installed. -------------------------------------------------------------------------- Extension :- ST(e)/TT/Falcon 030 3D Menus & Alerts v0.6 Machine :- All ST(e), TT 030, Falcon 030 machines. Required :- WINDO102.BIN [STOS interpreter library file] patch(s) WINDO102.LIB [STOS compiler library file] SPRIT101.BIN [STOS interpreter library file] SPRIT101.LIB [STOS compiler library file] ST(e)/TT/Falcon 030 System Control Extension => v0.9 The patches and extension(s) listed above contain support routines which the 3D Menu & Alerts extension calls for most of its functions. Commands :- Currently 10, a few are listed below. available _fmenu init _fmenu$ on _fmenu on _fmenu$ _fmenu select _fmenu freeze _fmenu item _fmenu kill _fmenu$ off _fmenu height What does :- This extension originally intended for the Falcon 030, but it do? now ST(e) compatible allows an all new 3D effect Menu strip to be invoked from within any of the ST's/Falcon's 2/4/16/256 colour and Trucolour video modes. Keeping to convention as much as I possibly can, the new commands follow a very similar syntax to the old STOS Menu commands. This allows simple conversion of programs using the older STOS Menu commands. This extension also has the facility for programming 3D effect Alert Dialogs. -------------------------------------------------------------------------- Extension :- ST(e)/TT/Falcon Gemtext Extension v0.8. Machine :- All ST(e), TT 030, Falcon 030 machines. Required :- No patch file(s) or other extension(s) required. patch(s) Commands :- Currently over 12, a few are listed below. available gemfont load gemfont stringwidth gemtext init gemfont cellwidth gemtext font gemfont cellheight gemtext color gemtext scale gemtext style gemfont name$ gemtext angle gemtext gemtext mode What does :- The Gemtext extension provides STOS with the facility to it do? use GEM/GDOS fonts (without GEM or GDOS installed even!). IMPORTANT :- This extension only supports uncompressed GEM/GDOS fonts, don't try to use SpeedoGDOS fonts - they are NOT supported and will most certainly cause the machine to crash. -------------------------------------------------------------------------- Extension :- ST(e)/TT/Falcon 030 STARS v1.4 Machine :- All ST(e), TT 030, Falcon 030 machines. Required :- No patch file(s) or other extension(s) required. patch(s) Commands :- Currently 5, a few are listed below. available stars cmds wipe stars on set stars wipe stars off go stars What does :- This new (greatly improved) STARS extension provides STOS it do? with the facility to setup multilayered starfields and is now compatible on ST(e) , TT and Falcon machines. A little while ago in late(ish) 1997, Chris Swinson, a registered user of my STOS-Falcon extension suite mentioned that it would be nice to have a starfield on the Falcon in a similar fashion to the ST(e) using the STARS extension. I already had Lee Upcraft's STARS extension installed on my Falcon so I thought why not - let's have a shuffty with it and see how it behaves on the Falcon. This new extension is the result. This extensively modified version of the STARS extension is based upon Lee Upcraft's original code and remains compatible with the ST/STe and keeps the exact same command set. OK, so what's new in the ST(e)/TT/Falcon 030 Stars extension? Well the improvements are as follows; Continued... 1) The upper limit on the number of 'stars' has been increased from 200 to 512. 2) Works in the Falcon's 16/256 colour video modes (when used in conjunction with my STOS - Falcon Extensions Suite of course) - the Falcon's TRU-Colour mode is not yet supported by this extension. 3) Commands remain fully backwardly compatible with the original STARS extension and still works on the ST/STE. 4) My modified version uses the LINE_A routines (and the Blitter chip when available) and now erases ONLY the area bounded by the SX,SY,EX,EY coordinates. This means that it is now possible to display the 'stars' inside a spaceship window for example and to erase only that window and therefore unnecessary to redraw the whole screen. -------------------------------------------------------------------------- Extension :- Falcon 030 GRAFIX (III) Extension v0.2 Machine :- ST(e)/Falcon 030 machines. Required :- WINDO102.BIN [STOS interpreter library file] patche(s) WINDO102.LIB [STOS compiler library file] SPRIT101.BIN [STOS interpreter library file] SPRIT101.LIB [STOS compiler library file] The patches listed above contain support routines which the Falcon 030 GRAFIX (III) extension calls for most of its functions. What does :- ST(e) users should also take note of this extension which it do? is responsible for the printing of STOS characters and the drawing of graphics on the Falcon's 16/256 colour and TRUE- COLOUR screen. A quick summary of the commands is listed below: Printing commands ================= _falc pen _falc print _falc paper _falc locate _falc xcurs _stosfont _falc ycurs _charset addr _falc multipen status _stos charwidth _falc multipen on _stos charheight _falc multipen off Continued... Although, strictly speaking this extension was specifically written for the Falcon 030, ST(e) users may find this an invaluable asset. How many times for example have you wished you could use multi-coloured STOS characters on screen? With the _falc multipen command this is not only possible but also very easy! See the following example; 100 _falc pen 5 : _falc paper 0 : STEP=1 110 _falc multipen on STEP 120 _falc print "A" 130 _falc multipen off In the above example the string "A" is output to the screen with each of the characters scanlines in the colours:- Character Scanline Colour index ***** Colour #5 (initially set by _falc pen). ** ** Colour #6 (_falc pen colour+STEP) ** ** Colour #7 ** ** Colour #8 and so on ..... ******* Colour #10 ** ** Colour #11 ** ** Colour #12 In simple terms the pen colour index is incremented after the output of each scanline of the character. Drawing commands ================ This is where this extension really becomes useful. With these commands/functions we can utilise the Falcon 030's 16/256 colour and Tru-colour video modes. _falc ink _falc plot _falc draw mode _falc line _def linepattern _falc box _def stipple _falc bar _get pixel _falc polyfill _falc polyline _falc contourfill _falc circle _falc ellipse _falc earc _falc arc These drawing commands are only compatible with the video hardware of the Falcon 030 [even in the ST compatibility modes]. Any attempt to use them on non-Falcon machines will result in an error report - 'Command/Function not supported by the video hardware'. Using the above commands we can now draw real graphics in the Falcon's 2/4/16/256 colour and TRUE-COLOUR video modes. Unless specifically stated otherwise, all of this extensions commands are compatible with the Falcon 030's ST compatibility resolutions. -------------------------------------------------------------------------- End of this doc'.