Home » Archimedes archive » Acorn Computing » 1994 04 subscription disc.adf » 9404s » PD/BACKDROP/!StickyBrd/Docs/!TechMan/ReadMe
PD/BACKDROP/!StickyBrd/Docs/!TechMan/ReadMe
This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.
Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.
Tape/disk: | Home » Archimedes archive » Acorn Computing » 1994 04 subscription disc.adf » 9404s |
Filename: | PD/BACKDROP/!StickyBrd/Docs/!TechMan/ReadMe |
Read OK: | ✔ |
File size: | A391 bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
!StickyBrd Technical Manual Suitable for version 0.80. This technical manual is not applicable for and should not be used with versions other than 0.80. This is because certain information may have changed in future versions. � David J. Seery 1992 ***************************************************************************** Introduction ~~~~~~~~~~~~ Although described as a technical manual this document is really about writing modules. You should read all of this file, so that you know what features you can access (at a HIGH level interface) and what conventions you should stick to so as to make your module easily transferable from user to user. General Guidelines ~~~~~~~~~~~~~~~~~~ Your module should be put in a directory titled with the name of your module. This directory should then be put inside the ExtModls directory inside the main !StickyBrd directory. The module itself is of filetype BASIC and should be called Module. The help file (each module should have one) should use Joris R�ling's !Help application (get this from any of a number of sources within !StickyBrd) and should also have the standard help 'i' as an icon so that it is easily recognizable. Should you need to store configuration options these should be in a file called !Config, and any sprites should be in a file called Sprites. Templates, should your module use them, should be called just that. Your module should be as self-sufficient as possible, and should not depend upon the contents of the main !StickyBrd directory as this is likely to change with successive versions. All sprites should be in the Sprites file even if it means duplicating some. Your module should survive without a !Config file, but if it expects one and cannot find it you should send a non-fatal error with modl_interface set to one (see later) reading <module name>: Cannot find !Config file. This is important as your module should not crash but set sensible defaults (each user could delete a !Config file before passing it on, or the receiving user could delete any present !Config files so that s/he can set up the system the way s/he wants it.) You must reply to Message_ModuleExists (!StickyBrd message 0) with Message_ ModuleLoaded in your message function otherwise you might throw someone else's module out of line. This is not really advisable! Modules should use the modl_interface system (see later) for communicating with !StickyBrd as lower level interfaces (calling !StickyBrd procedures directly, for example) may not be supported on future versions. Module procedures and functions should start with the module name, for example 'module_init'. Procedure names should be in lower case, and an underscore character ('_') should seperate the module name and the function name. Variables should follow the same rules to avoid clashes. There are 3 functions that !StickyBrd calls directly, these being _init, _event, and _message. The first initialises the module, the second controls the polling system, and the third is used for inter-module messaging. Your module should start with the function <module name>_init, for example FNcommand_init. <module name>_init ~~~~~~~~~~~~~~~~~~ Entry : None Exit : None Action : This function is guaranteed to be called before anything else is and should be used to set up a menu block, load any templates, register the module with !StickyBrd and load any sprites, also reading in !Config values. Recommended code to do this is: 10 DEF FN<modulename>_init 20 DIM <modulename>_mblk% 60 30 mblk%=<modulename>_mblk% 40 PROCheader("Module",8) 45 menflags=0:menflags=1<<3:menuflags+=&80 50 PROCentry(menflags,-1,&7000021,"Info") 60 modulename_info%=FNmodl_init("Module","Recommended Code","Yours Truly","0. 00 (0 xxx 19xx)",80,<modulename>_mblk%) 70 OSCLI "IconSprites <StickyBrdExt$Dir>.<Modulename>.Sprites" 80 reply=FALSE:REM for replying to messages 90 =0 Taking this line by line, line 10 simply defines a function. Line 20 reserves space for a menu (all modules should have a menu, the minimum item on it being Info), while lines 30, 40, and 50 setup the menu block. Line 30 sets up a variable (mblk%) which is used by the procedures 'header' and 'entry' to point to the menu block. The syntax of each call is: header menu title, menu width in characters+1 entry menu flags, pointer to sub menu/window, icon flags, menu text Note that the 'Info' menu item has it's 'send message' flag set. This is because !StickyBrd now only loads one copy of the module info window (previous versions loaded a new window for each module) and alters the text in it when it receives an 'open submenu' or 'open iconised window' request. The 1<<3 does this, or you can replace it with 8. Line 60 registers the module with !StickyBrd - modl_init ~~~~~~~~~ Entry : title, purpose, author, version, !StickyBrd version*100, menu block Exit : info window handle Action : Registers a module with !StickyBrd. If the !StickyBrd's version number is less than the one required by the module, !StickyBrd will exit with a fatal error. The title, purpose, author, and version strings will be placed in your module's info window by !StickyBrd itself. The menu block (or rather the pointer to it) passed will be 'glued' to the Modules sub-menu. You may note that initially the Info item is defined as not having a sub- window - this offset is filled in by !StickyBrd itself as long as the first entry is for Info. Any subsequent re-definitions of the menu block should include the handle returned as a pointer to a sub-window. You should exit the initialisation routine with 0 (line 80 =0) and wait for a poll code received in the next function described. <module name>_event ~~~~~~~~~~~~~~~~~~~ Entry : poll reason code, pointer to parameter block Exit : depends on reason code Action : Deals with a reason code. The exact effect is dependant on the reason code itself but if you do not deal with it you should exit with =0 and not do any further processing. The reason codes are described below: ______________________________________________________________________ / | | \ | Poll Number | Description | Parameter block description | |_____________|_____________|____________________________________________| | | | | | 0 | Null event | Not applicable | |_____________|_____________|____________________________________________| | | | | | 1 | Menu event | +0 first item selected | | | | +4 second item selected | | | | etc., leading to: | | | | +n -1 = end of block | |_____________|_____________|____________________________________________| | | | | | 2 | Save Config | Not applicable | |_____________|_____________|____________________________________________| | | | | | 3 | Help event | +0 window handle | | | | +4 icon handle | |_____________|_____________|____________________________________________| | | | | | 4 | Double click| +0 x co-ordinate | | | on icon | +4 y co-ordinate | | | | +8 internal type | | | | +12 name | |_____________|_____________|____________________________________________| | | | | | 5 | Mouse click | +0 window handle | | | | +4 icon handle | | | | +8 button type | |_____________|_____________|____________________________________________| | | | | | 6 | Translate | +0 window handle | | | handle to | | | | name | | |_____________|_____________|____________________________________________| | | | | | 7 | Translate | +0 name | | | name to | | | | handle | | |_____________|_____________|____________________________________________| | | | | | 8 | Window width| +0 name | | | request | | |_____________|_____________|____________________________________________| | | | | | 9 | Window | +0 name | | | height req. | | |_____________|_____________|____________________________________________| | | | | | 10 | Drag end | +0 internal type | | | | +4 icon name | | | | +260 viewer icon dragged to (name of) | |_____________|_____________|____________________________________________| | | | | | 11 | Data Load | +0 window handle | | | | +4 icon handle | | | | +8 file name | |_____________|_____________|____________________________________________| | | | | |� 12 | Delete icon | +0 icon handle | | | | +4 internal type | |_____________|_____________|____________________________________________| | | | | | 13 | Quit | Not applicable | |_____________|_____________|____________________________________________| | | | | | 14 | Redraw | Standard wimp redraw block | |_____________|_____________|____________________________________________| | | | | | 15 | Clear All | +0 clear type | | | | +4 desktop file to be loaded | |_____________|_____________|____________________________________________| | | | | | 16 | Desktop | Not applicable | | | loaded | | |_____________|_____________|____________________________________________| | | | | \ | | / \___________|_____________|__________________________________________/ What follows is a detailed description of each poll code. 0 - Null event ~~~~~~~~~~~~~~ Entry : None Exit : None Action : You should do any processing required for null events and then return, as quickly as possible. 1 - Menu event ~~~~~~~~~~~~~~ Entry : +0 first item selected +4 second item selected... Exit : None Action : If you have anything at all on the menu apart from Info you should have a procedure set up to deal with it. The parameter block is set up like the standard wimp one, but starting at your menu. Again, return as quickly as possible 2 - Save Config event ~~~~~~~~~~~~~~~~~~~~~ Entry : None Exit : None Action : Save your configuration file, if you have one. 3 - Interactive help request ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Entry : +0 window handle +4 icon handle Exit : pointer to help text block, or 0 if cannot handle this window Action : Determine whether this is one of your windows (info window included) and if it is return pointing to a block of text to display in the help window. If you cannot deal with it then return with 0. You should support interactive help, to make it easy for new users. 4 - Icon selected by double click event ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Entry : +0 x position of mouse +4 y position of mouse +8 internal type +12 filename Exit : None Action : Determine whether this is one of your icons (by looking at the internal type number) and if it is execute appropriate code to deal with it, otherwise exit. A word of explanation - every !StickyBrd icon has a type attatched to it. Applications are type 0, iconised windows type 3, command icons type 4 and so on. If you are wanting to write a !StickyBrd module that uses icons on the desktop, write to me for a internal type number. 5 - Mouse click event ~~~~~~~~~~~~~~~~~~~~~ Entry : +0 window handle +4 icon handle +8 button type Exit : None Action : Determine whether the window is one of yours, and if it is check the icon, otherwise exit. The button type is the standard wimp type - 1 = adjust 2 = menu, 4 = select. 6 - Translate window handle to name request ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Entry : +0 window handle Exit : pointer to text, or 0 if cannot handle window Action : Determine whether the window is one of yours, if it is return pointing to a piece of text to be put under the icon. This refers, if you had not guessed, to an iconise request from the user. You should support iconising as standard. If you cannot handle the window return with 0 7 - Translate name to handle request ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Entry : +0 window name as given by !StickyBrd or module in previous event Exit : window handle if can deal with it, otherwise 0 Action : Try and match window name to the one given in the previous event. If you can do this exit with the window handle to be opened, otherwise exit with 0. 8 - Get window width ~~~~~~~~~~~~~~~~~~~~ Entry : +0 window name Exit : window width if can deal with it, otherwise 0 Action : Try and match the name. If the window is one of yours, exit with a number (the width of the window). If you cannot deal with it, exit with 0. The info window width is 650 9 - Get window height ~~~~~~~~~~~~~~~~~~~~~ Entry : +0 window name Exit : window height if can deal with it, otherwise 0 Action : Try and match the name, as before, with a window. If the window is one of yours, exit with the height of the window. If you cannot deal with it, exit with 0. The info window height is 380 10 - End of drag event ~~~~~~~~~~~~~~~~~~~~~~ Entry : +0 internal type +4 icon name +260 save file name (title of viewer) Exit : None Action : Determine whether the icon is one of yours (look at the internal type) and then perform an action (if you want to) on the icon. This event occours when a drag with select to somewhere other than the backdrop window has taken place - e.g. to a directory viewer. DirChange uses this event to change the currently selected directory. - have a look at the code. The text at block+4 is the name of the icon dragged, and the text at block+260 is the filename returned from by the task the icon was dragged to. 11 - Icon dragged to !StickyBrd (Message_DataLoad) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Entry : +0 window handle +4 icon handle +8 name of file dragged Exit : None Action : Determine whether the window is one of yours and if it is execute the code to deal with it, if any. 12 - Delete icon request ~~~~~~~~~~~~~~~~~~~~~~~~ Entry : +0 icon handle +4 internal type Exit : None Action : Determine whether the icon is one of yours, and if it is delete it with modl_interface set to 5. Recommended code to do this is: xx pointer%!0=<icon handle> xx dummy=FNmodl_interface(5,pointer%) If you have an item on a menu, say, then don't forget to flag it accordingly. 13 - !StickyBrd quitting event ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Entry : � None Exit : None Action : I cannot see a use for this poll code but that is not to say that someone else can't. Return as quickly as possible as the user doesn't want to be kept waiting. This event occours when the user clicks Quit from either the main menu or the task manager, or an error occours and the user wants to quit. 14 - Redraw request ~~~~~~~~~~~~~~~~~~~ Entry : Standard wimp redraw block Exit : None Action : Only bother with this poll code if you have somthing to redraw that cannot be done by !StickyBrd itself. If you are using the interface manager by Simon Huntingdon (thoroughly recommended) you do not need to issue an Interface_Border3dWindow SWI as this is done anyway. Actually, to keep a uniform appearance, I would suggest you do use Interface. To use it, set the validation string of a indirected icon to either: z0 Raised icon z1 Grouping icon z2 Default action z3 Writable icon There are, of course, more types - see Simon's sepereate documentation. 15 - Clear All request ~~~~~~~~~~~~~~~~~~~~~~ Entry : +0 clear type +4 desktop file to be loaded (if clear type=1) Exit : None Action : You should clear all of your icons on the desktop as either: ** The user has clicked Clear All on the menu (clear type = 0) ** The user wants to load a new desktop (clear type = 1) If the user is loading a desktop (this is issued before the desktop has been loaded) then block+4 points to the filename. Recommended code to delete all icons of a particular type is: xx REPEAT:pointer%!0=<internal type) xx exists%=FNmodl_interface(11,pointer%) xx IF exists%>0 THEN xx pointer%!0=exists% xx dummy=FNmodl_interface(5,pointer%) xx ENDIF xx UNTIL exists%=0 16 - Desktop has been loaded event ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Entry : None Exit : None Action : Really depends on what your module does. Module interface system ~~~~~~~~~~~~~~~~~~~~~~~ So far the dialogue has only been one way with !StickyBrd telling us what has happened. We need a way of telling !StickyBrd to do things for us. We can either use !StickyBrd's own routines - these may not be supported on future versions, but are slightly faster - or we can use !StickyBrd's built in interface routines. These are guaranteed to be supported on future versions so your module will always work. Interface routines currently supported are: ______________________________________________________________________ / | | \ / | | \ | Interface code | Description | Parameters passed in parameter block | |________________|__________________|______________________________________| | | | | | 0 | Fatal error | +0 error text | |________________|__________________|______________________________________| | | | | | 1 | Non-fatal error | +0 error text | |________________|__________________|______________________________________| | | | | | 2 | Redraw background| Not applicable | |________________|__________________|______________________________________| | | | | | 3 | Return backdrop | On return, | | | flags | +0 loaded/not loaded | | | | +4 tiled/centred | |________________|__________________|______________________________________| | | | | | 4 | Place item on | +0 sprite name | | | desktop | +12 icon name (filename) | | | | +24 x co-ordinate | | | | +28 y co-ordinate | | | | +32 internal type | | | | +36 use last bit | |________________|__________________|______________________________________| | | | | | 5 | Delete icon | +0 icon handle | |________________|__________________|______________________________________| | | | | | 6 | Open main menu | +0 x co-ordinate | | | | +4 y co-ordinate | |________________|__________________|______________________________________| | | | | | 7 | Create drag | +0 icon to use for drag box | |________________|__________________|______________________________________| | | | | | 8 | Select (invert) | +0 icon handle | | | icon | | |________________|__________________|______________________________________| | | | | | 9 | Open parent | +0 FULL filename | |________________|__________________|______________________________________| | | | | | 10 | Slab icon | +0 window handle | | | | +4 icon handle | | | | +8 button (4 to slab if not clicked) | |________________|__________________|______________________________________| | | | | | 11 | Get handle of | +0 internal type | | | icon given type | | |________________|__________________|______________________________________| | | | | | 12 | Send Message | +0 message number | | | | +4 pointer to further parameter block| |________________|__________________|______________________________________| | | | | | 13 | Put text in icon | +0 window handle | | | | +4 icon handle | | | | +8 text to put in icon | |________________|__________________|______________________________________| | | | | | 14 | Read icon text | +0 window handle | | | | +4 icon handle | |________________|__________________|______________________________________| | | | | | 15 | Return last bit | +0 text string to use | |________________|__________________|______________________________________| | | | | | 16 | Return first bit | +0 text string to use | |________________|__________________|______________________________________| | | | | | 17 | Set icon sprite | +0 window handle | | | | +4 icon handle | | | | +8 sprite name | |________________|__________________|______________________________________| | | | | \ | | / \______________|__________________|____________________________________/ There follows a description of each of the 17 interface codes. 0 - Fatal error ~~~~~~~~~~~~~~~ Entry : +0 error text Exit : Doesn't Action : Creates an error box with the text pointed to by block+0, and then quits !StickyBrd, first sending a poll code number 13 (quit) to all modules. If your module created the fatal error then don't respond to this poll. 1 - Non-fatal error ~~~~~~~~~~~~~~~~~~~ Entry : +0 error text Exit : None Action : Similar to above, but doesn't quit !StickyBrd. No message is sent round, as !StickyBrd is not quitting. 2 - Redraw background window ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Entry : None Exit : None Action : Redraws the backdrop, and any icons on the desktop 3 - Return backdrop flags ~~~~~~~~~~~~~~~~~~~~~~~~~ Entry : None Exit : +0 loaded/not loaded +4 tiled/centred Action : Returns with information on current backdrop. If there is one loaded then block+0 will equal 1, otherwise it will contain 0 and if tiled is selected then block+4 will be 1, otherwise (the backdrop is centred) it will be 0 4 - Place icon on desktop ~~~~~~~~~~~~~~~~~~~~~~~~~ Entry : +0 sprite name +12 icon (file) name +24 x co-ordinate +28 y co-ordinate +32 internal type +36 use last bit Exit : None Action : Places an icon on the desktop using the passed parameters. Only 'Use last bit' might need explaining and it refers to whether to seperate the bits of the name: for example, if the name was - testname.test and use last bit was selected the word 'test' would be printed below the icon, otherwise the full 'testname.test' would be printed. Filenames have this bit set. 5 - Remove icon from desktop ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Entry : +0 icon handle (perhaps returned by modl_interface 11) Exit : None Action : Removes the given icon from the desktop. 6 - Open main menu at given co-ordinates ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Entry : +0 x co-ordinate +4 y co-ordinate Exit : None Action : Opens the main menu at the co-ordinates pointed to by block+0 and block+4. 7 - Create drag ~~~~~~~~~~~~~~~ Entry : +0 icon handle to create drag from Exit : None Action : Creates a drag event given an icon handle. This will be reported with poll code 10, of course, when the drag finishes. 8 - Select (invert) icon ~~~~~~~~~~~~~~~~~~~~~~~~ Entry : +0 icon handle Exit : None Action : Inverts the given icon. 9 - Open Parent ~~~~~~~~~~~~~~~ Entry : +0 FULL filename (adfs::<disc name>.$.dir1.dir2.file etc.) Exit : None Action : Opens a filer window for the directory containing the file described by block+0. This should be a FULL filename as Filer_OpenDir is used which is rather specific. Note you cannot use system variables (future versions will support this). 10 - Slab icon ~~~~~~~~~~~~~~ Entry : +0 window handle +4 icon handle +8 button type Exit : None Action : As per the interface manager. If you have had a mouse click reported by poll code 5 the parameter blocks are compatable, so just send it otherwise you will have to prepare one. To simulate a click with select use button type 4. 11 - Determine whether an icon of the given type exists ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Entry : +0 internal type Exit : None Action : Returns the icon handle of the last icon of the specific type (say there were two, one with handle 5 and one with handle 10. The one with handle 10 would be reported), or 0 if it could not find any icons of that type. 12 - Send Message ~~~~~~~~~~~~~~~~~ Entry : +0 message number +4 pointer to message specific parameter block Exit : None Action : Creates a message of the given type. This opens the way for inter- module communications. Write to me for a message number if you propose to use the messaging system. See later for messages already in place. Messages are received in the function: <module name>_message ~~~~~~~~~~~~~~~~~~~~~ Entry : message number, pointer to parameter block Exit : None Action : Depends on message 13 - Put text in icon ~~~~~~~~~~~~~~~~~~~~~ Entry : +0 window handle +4 icon handle +8 text string Exit : None Action : Puts the specified text string in the indirected icon specified by the first two words of the data block. 14 - Read text from icon ~~~~~~~~~~~~~~~~~~~~~~~~ Entry : +0 window handle +4 icon handle Exit : pointer to text block Action : Reads the text from the specified indirected icon and returns pointing to the text string. Note that these two calls only work with indirected icons. 15 - Return last bit ~~~~~~~~~~~~~~~~~~~~~ Entry : +0 text string Exit : pointer to last bit of name Action : Takes a filename, such as fred.smith, and returns the last particle of it, in this case smith. 16 - Return first bit ~~~~~~~~~~~~~~~~~~~~~ Entry : +0 text string Exit : pointer to first bit of name Action : Takes a filename, as in the previous call, and returns the first section of it. As an example, take fred.joe.smith. The call would return fred.joe, as opposed to smith which would be returned by the previous call. 17 - Set icon sprite ~~~~~~~~~~~~~~~~~~~~ Entry : +0 window handle +4 icon handle +8 sprite name Exit : None Action : Sets the sprite name for a non-indirected icon. This procedure is used by all !StickyBrd sprite plot routines and it also sets the appropiate icon flags to mark it as a sprite icon. Messages already set up ~~~~~~~~~~~~~~~~~~~~~~~ _________________________________________________________________________ / | | \ | Message number | Description | Parameter block | |_________________|_______________________|_________________________________| | | | | | 0 | Check module loaded | +0 module name | |_________________|_______________________|_________________________________| | | | | | 1 | Reply to (0) | +0 module name | | | | +4 info window handle | | | | +8 menu block address | |_________________|_______________________|_________________________________| | | | | | | | | \________________|_______________________|________________________________/ Descriptions of the messages follow: 0 - Check module loaded Message_ModuleExists ~~~~~~~~~~~~~~~~~~~~~~~ Entry : +0 module name Exit : None Action : Asks each module in turn for it's name. It is up to the module to acknowledge this with Message_ModuleLoaded, message number 1. This message is really supplied to check whether a given module is loaded. 1 - Module loaded Message_ModuleLoaded ~~~~~~~~~~~~~~~~~ Entry : +0 module name +12 info window handle +16 menu block address Exit : None Action : If your module receives a Message_ModuleExists then you should reply (if the module name at block+0 matches yours) with this message. What then happens is dependant on your module(s) You should note that all poll codes and messages are broadcast rather than directed, so you should only reply or accept message 1 if it is directed at you. This is the reason why block+0 of Message_ModuleLoaded contains the module name. Also you should reply to Message_ModuleExists with MessageModuleLoaded in the poll loop. You will receive Message_ModuleExists in the function <module name>_message, from there you should set a flag and reply in the poll loop. This applies to all messages. This is so that !StickyBrd can cycle through all modules without interruption as messages will go through the same function. In the recommended initialise code given above the flag is called 'reply'. Other notes ~~~~~~~~~~~ A workspace area, pointer%, is set up for you to use, please use it to conserve memory. pointer% is 400 bytes long and can be used for anything, but it specifically useful as a block for message routines. !StickyBrd can cope with 10 modules at the present time. Should you try and load more, !StickyBrd will probably crash with an address exception error, this will be fixed in the next version (I hope). The AutoRun file ~~~~~~~~~~~~~~~~ Inside the ExtModls directory there is a text file called AutoRun. This is used to run the modules in the ExtModls directory. To start with it will contain somthing like the following: | Autorun file for !StickyBrd 0.80 | {run} command; {run} dirchange; {end} The AutoRun file uses a script language, which recognizes three commands: {run},{rem}, and {end}. In addition, | can be used to introduce a comment. Blank lines can be used, and the usage of the three commands is obvious, I hope - {run} runs a module, {rem} inserts a comment, and {end} ends the file. The semicolon after each {run} command indicates a further command - you have no need to use this after a {rem}, blank line or | as these are ignored. To add a module to the list, insert an extra {run} command before the {end}. Remember to suffix it with a semi-colon (;) as this indicates there are more commands. Approving modules ~~~~~~~~~~~~~~~~~ Please send any modules you write to me, to get them approved and possibly included in the next release. Don't distribute modules without them being approved, and please don't alter the table in the !Manual application. Try and follow all the guidelines given here as this way your module stands a better chance of being approved. The module approving system is really based on !PlaceIt's similar system (sorry Ian) and I've used a similar idea as it helps the user by telling them what modules really do work and if they follow all the standards. I hope to publish a criteria so that writers can check their modules against that. System and normal variables ~~~~~~~~~~~~~~~~~~~~~~~~~~~ Several system variables are set up so as to make your task easier; these are StickyBrd$Dir = main !StickyBrd directory StickyBrdRes$Dir = !StickyBrd resource directory StickyBrdExt$Dir = !StickyBrd extentions directory Raising errors ~~~~~~~~~~~~~~ Your modules need to raise errors in a uniform way. This ensures that the user doesn't get confused and that things are presented clearly and with the minimum of fuss. The first thing to do is to distinguish between fatal and non-fatal errors, as the user would probably like to try and salvage some work if the worst happens. If you can recover from an error, even if it means losing some variables, send a non-fatal error. If there is no chance of coming out of the error send a fatal error request because the computer might lock up if you try to sort it out or terminate your module. Don't add the word fatal to your error text if you are raising a fatal error, this is done for you. A non-fatal error should read somthing like <module name>: <error description> so that perhaps it might come out as: Command: Cannot execute command. Fatal errors should follow the same rules, but the text Fatal; is added before the error is flagged, so in general fatal errors will read something like: Fatal; Command: Cannot execute command. You may note that !StickyBrd sends round a poll message 13 after a fatal error, but if your module caused the error don't respond, as this coluld start a never ending cycle. !StickyBrd doesn't actually use error numbers as such, the module name is used to distinguish errors. Therefore don't include things like (int. error code xxx) in the message, but you can use (type = x) as this seperates similar errors and stops (hopefully) confusion. These are only guidelines, please don't take them as a straight-jacket as this will do more harm than good. When debugging a module, you may get odd errors like No Such Function/ Procedure at line 18030 or some other high number. This is becuase !StickyBrd modules are actually libraries appended to BASIC. When !StickyBrd calls a function or procedure not in the main program, all libraries are searched, and if the procedure still cannot be found, the above error is reported at the last line in the main program. When you get an error like this it is probably in a module, so check through thoroughly. ***************************************************************************** If there is a feature you would like to see included in the next version of !StickyBrd, please write and tell me. Also, if you would like any new poll messages, interface calls or anything else added for the module side of things, drop me a line. I won't know what you want unless you tell me. I'm hoping we will be able to standardise on some messages and ways of doing things, as well as incorporating facilities to generate new poll codes (actually this can be done at present, but it's better to use the message system) and such things. If you are writing to get an internal type number and/or a message number(s) please include as many details about your module as possible - name, purpose (try and explain exactly what it will do) author, and such things. The point about this is that I can warn you if your module will clash with anybody else's. I suggest, when writing modules, that you test them with an arbitary internal type number, or message number, and obtain a 'real' one when it [the module] is finished. REMEMBER: if your module doesn't come off, write and tell me quoting any internal type and message numbers you may have been allocated as someone else can use them. The address to send modules to, requests for internal type numbers and message numbers, and the address for general correspondance is: Mr D. Seery, 15 Farm Walk Bents Farm Estate Littleborough Lancashire OL15 8LJ Please mark your envelope 'StickyBrd'. If you are sending a disc, then please package it carefully, but NOT so that it can withstand a nuclear holocaust (!). Keep a backup of any programs you send, and state whether you are willing to have your module included in any future versions, otherwise I won't know. The copyright to all modules remains yours, and although I would encourage you to keep them PD, I cannot force you to set them as anything. ***************************************************************************** Yours, David Seery Other sources of help are: !Manual - user guide Command !Help - help on module 'command' DirChange !Help - help on module 'dirchange' � David J. Seery 1992 I hope you find this manual and !StickyBrd itself useful. God bless.
00000000 21 53 74 69 63 6b 79 42 72 64 20 54 65 63 68 6e |!StickyBrd Techn| 00000010 69 63 61 6c 20 4d 61 6e 75 61 6c 0a 0a 53 75 69 |ical Manual..Sui| 00000020 74 61 62 6c 65 20 66 6f 72 20 76 65 72 73 69 6f |table for versio| 00000030 6e 20 30 2e 38 30 2e 20 54 68 69 73 20 74 65 63 |n 0.80. This tec| 00000040 68 6e 69 63 61 6c 20 6d 61 6e 75 61 6c 20 69 73 |hnical manual is| 00000050 20 6e 6f 74 20 61 70 70 6c 69 63 61 62 6c 65 20 | not applicable | 00000060 66 6f 72 0a 61 6e 64 20 73 68 6f 75 6c 64 20 6e |for.and should n| 00000070 6f 74 20 62 65 20 75 73 65 64 20 77 69 74 68 20 |ot be used with | 00000080 76 65 72 73 69 6f 6e 73 20 6f 74 68 65 72 20 74 |versions other t| 00000090 68 61 6e 20 30 2e 38 30 2e 0a 54 68 69 73 20 69 |han 0.80..This i| 000000a0 73 20 62 65 63 61 75 73 65 20 63 65 72 74 61 69 |s because certai| 000000b0 6e 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6d 61 |n information ma| 000000c0 79 20 68 61 76 65 20 63 68 61 6e 67 65 64 20 69 |y have changed i| 000000d0 6e 20 66 75 74 75 72 65 20 76 65 72 73 69 6f 6e |n future version| 000000e0 73 2e 0a 0a a9 20 44 61 76 69 64 20 4a 2e 20 53 |s.... David J. S| 000000f0 65 65 72 79 20 31 39 39 32 0a 0a 2a 2a 2a 2a 2a |eery 1992..*****| 00000100 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a |****************| * 00000140 2a 2a 2a 2a 2a 2a 2a 2a 0a 0a 49 6e 74 72 6f 64 |********..Introd| 00000150 75 63 74 69 6f 6e 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e |uction.~~~~~~~~~| 00000160 7e 7e 7e 0a 0a 41 6c 74 68 6f 75 67 68 20 64 65 |~~~..Although de| 00000170 73 63 72 69 62 65 64 20 61 73 20 61 20 74 65 63 |scribed as a tec| 00000180 68 6e 69 63 61 6c 20 6d 61 6e 75 61 6c 20 74 68 |hnical manual th| 00000190 69 73 20 64 6f 63 75 6d 65 6e 74 20 69 73 20 72 |is document is r| 000001a0 65 61 6c 6c 79 20 61 62 6f 75 74 0a 77 72 69 74 |eally about.writ| 000001b0 69 6e 67 20 6d 6f 64 75 6c 65 73 2e 20 20 59 6f |ing modules. Yo| 000001c0 75 20 73 68 6f 75 6c 64 20 72 65 61 64 20 61 6c |u should read al| 000001d0 6c 20 6f 66 20 74 68 69 73 20 66 69 6c 65 2c 20 |l of this file, | 000001e0 73 6f 20 74 68 61 74 20 79 6f 75 20 6b 6e 6f 77 |so that you know| 000001f0 20 77 68 61 74 0a 66 65 61 74 75 72 65 73 20 79 | what.features y| 00000200 6f 75 20 63 61 6e 20 61 63 63 65 73 73 20 28 61 |ou can access (a| 00000210 74 20 61 20 48 49 47 48 20 6c 65 76 65 6c 20 69 |t a HIGH level i| 00000220 6e 74 65 72 66 61 63 65 29 20 61 6e 64 20 77 68 |nterface) and wh| 00000230 61 74 20 63 6f 6e 76 65 6e 74 69 6f 6e 73 0a 79 |at conventions.y| 00000240 6f 75 20 73 68 6f 75 6c 64 20 73 74 69 63 6b 20 |ou should stick | 00000250 74 6f 20 73 6f 20 61 73 20 74 6f 20 6d 61 6b 65 |to so as to make| 00000260 20 79 6f 75 72 20 6d 6f 64 75 6c 65 20 65 61 73 | your module eas| 00000270 69 6c 79 20 74 72 61 6e 73 66 65 72 61 62 6c 65 |ily transferable| 00000280 20 66 72 6f 6d 0a 75 73 65 72 20 74 6f 20 75 73 | from.user to us| 00000290 65 72 2e 0a 0a 47 65 6e 65 72 61 6c 20 47 75 69 |er...General Gui| 000002a0 64 65 6c 69 6e 65 73 0a 7e 7e 7e 7e 7e 7e 7e 7e |delines.~~~~~~~~| 000002b0 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a 59 6f 75 72 |~~~~~~~~~~..Your| 000002c0 20 6d 6f 64 75 6c 65 20 73 68 6f 75 6c 64 20 62 | module should b| 000002d0 65 20 70 75 74 20 69 6e 20 61 20 64 69 72 65 63 |e put in a direc| 000002e0 74 6f 72 79 20 74 69 74 6c 65 64 20 77 69 74 68 |tory titled with| 000002f0 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 79 6f 75 | the name of you| 00000300 72 20 6d 6f 64 75 6c 65 2e 0a 54 68 69 73 20 64 |r module..This d| 00000310 69 72 65 63 74 6f 72 79 20 73 68 6f 75 6c 64 20 |irectory should | 00000320 74 68 65 6e 20 62 65 20 70 75 74 20 69 6e 73 69 |then be put insi| 00000330 64 65 20 74 68 65 20 45 78 74 4d 6f 64 6c 73 20 |de the ExtModls | 00000340 64 69 72 65 63 74 6f 72 79 20 69 6e 73 69 64 65 |directory inside| 00000350 20 74 68 65 0a 6d 61 69 6e 20 21 53 74 69 63 6b | the.main !Stick| 00000360 79 42 72 64 20 64 69 72 65 63 74 6f 72 79 2e 20 |yBrd directory. | 00000370 20 54 68 65 20 6d 6f 64 75 6c 65 20 69 74 73 65 | The module itse| 00000380 6c 66 20 69 73 20 6f 66 20 66 69 6c 65 74 79 70 |lf is of filetyp| 00000390 65 20 42 41 53 49 43 20 61 6e 64 20 73 68 6f 75 |e BASIC and shou| 000003a0 6c 64 0a 62 65 20 63 61 6c 6c 65 64 20 4d 6f 64 |ld.be called Mod| 000003b0 75 6c 65 2e 20 20 54 68 65 20 68 65 6c 70 20 66 |ule. The help f| 000003c0 69 6c 65 20 28 65 61 63 68 20 6d 6f 64 75 6c 65 |ile (each module| 000003d0 20 73 68 6f 75 6c 64 20 68 61 76 65 20 6f 6e 65 | should have one| 000003e0 29 20 73 68 6f 75 6c 64 20 75 73 65 0a 4a 6f 72 |) should use.Jor| 000003f0 69 73 20 52 d6 6c 69 6e 67 27 73 20 21 48 65 6c |is R.ling's !Hel| 00000400 70 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 28 67 |p application (g| 00000410 65 74 20 74 68 69 73 20 66 72 6f 6d 20 61 6e 79 |et this from any| 00000420 20 6f 66 20 61 20 6e 75 6d 62 65 72 20 6f 66 20 | of a number of | 00000430 73 6f 75 72 63 65 73 0a 77 69 74 68 69 6e 20 21 |sources.within !| 00000440 53 74 69 63 6b 79 42 72 64 29 20 61 6e 64 20 73 |StickyBrd) and s| 00000450 68 6f 75 6c 64 20 61 6c 73 6f 20 68 61 76 65 20 |hould also have | 00000460 74 68 65 20 73 74 61 6e 64 61 72 64 20 68 65 6c |the standard hel| 00000470 70 20 27 69 27 20 61 73 20 61 6e 20 69 63 6f 6e |p 'i' as an icon| 00000480 20 73 6f 0a 74 68 61 74 20 69 74 20 69 73 20 65 | so.that it is e| 00000490 61 73 69 6c 79 20 72 65 63 6f 67 6e 69 7a 61 62 |asily recognizab| 000004a0 6c 65 2e 20 20 53 68 6f 75 6c 64 20 79 6f 75 20 |le. Should you | 000004b0 6e 65 65 64 20 74 6f 20 73 74 6f 72 65 20 63 6f |need to store co| 000004c0 6e 66 69 67 75 72 61 74 69 6f 6e 0a 6f 70 74 69 |nfiguration.opti| 000004d0 6f 6e 73 20 74 68 65 73 65 20 73 68 6f 75 6c 64 |ons these should| 000004e0 20 62 65 20 69 6e 20 61 20 66 69 6c 65 20 63 61 | be in a file ca| 000004f0 6c 6c 65 64 20 21 43 6f 6e 66 69 67 2c 20 61 6e |lled !Config, an| 00000500 64 20 61 6e 79 20 73 70 72 69 74 65 73 20 73 68 |d any sprites sh| 00000510 6f 75 6c 64 20 62 65 0a 69 6e 20 61 20 66 69 6c |ould be.in a fil| 00000520 65 20 63 61 6c 6c 65 64 20 53 70 72 69 74 65 73 |e called Sprites| 00000530 2e 20 20 54 65 6d 70 6c 61 74 65 73 2c 20 73 68 |. Templates, sh| 00000540 6f 75 6c 64 20 79 6f 75 72 20 6d 6f 64 75 6c 65 |ould your module| 00000550 20 75 73 65 20 74 68 65 6d 2c 20 73 68 6f 75 6c | use them, shoul| 00000560 64 20 62 65 0a 63 61 6c 6c 65 64 20 6a 75 73 74 |d be.called just| 00000570 20 74 68 61 74 2e 0a 0a 59 6f 75 72 20 6d 6f 64 | that...Your mod| 00000580 75 6c 65 20 73 68 6f 75 6c 64 20 62 65 20 61 73 |ule should be as| 00000590 20 73 65 6c 66 2d 73 75 66 66 69 63 69 65 6e 74 | self-sufficient| 000005a0 20 61 73 20 70 6f 73 73 69 62 6c 65 2c 20 61 6e | as possible, an| 000005b0 64 20 73 68 6f 75 6c 64 20 6e 6f 74 20 64 65 70 |d should not dep| 000005c0 65 6e 64 0a 75 70 6f 6e 20 74 68 65 20 63 6f 6e |end.upon the con| 000005d0 74 65 6e 74 73 20 6f 66 20 74 68 65 20 6d 61 69 |tents of the mai| 000005e0 6e 20 21 53 74 69 63 6b 79 42 72 64 20 64 69 72 |n !StickyBrd dir| 000005f0 65 63 74 6f 72 79 20 61 73 20 74 68 69 73 20 69 |ectory as this i| 00000600 73 20 6c 69 6b 65 6c 79 20 74 6f 0a 63 68 61 6e |s likely to.chan| 00000610 67 65 20 77 69 74 68 20 73 75 63 63 65 73 73 69 |ge with successi| 00000620 76 65 20 76 65 72 73 69 6f 6e 73 2e 20 20 41 6c |ve versions. Al| 00000630 6c 20 73 70 72 69 74 65 73 20 73 68 6f 75 6c 64 |l sprites should| 00000640 20 62 65 20 69 6e 20 74 68 65 20 53 70 72 69 74 | be in the Sprit| 00000650 65 73 20 66 69 6c 65 0a 65 76 65 6e 20 69 66 20 |es file.even if | 00000660 69 74 20 6d 65 61 6e 73 20 64 75 70 6c 69 63 61 |it means duplica| 00000670 74 69 6e 67 20 73 6f 6d 65 2e 0a 0a 59 6f 75 72 |ting some...Your| 00000680 20 6d 6f 64 75 6c 65 20 73 68 6f 75 6c 64 20 73 | module should s| 00000690 75 72 76 69 76 65 20 77 69 74 68 6f 75 74 20 61 |urvive without a| 000006a0 20 21 43 6f 6e 66 69 67 20 66 69 6c 65 2c 20 62 | !Config file, b| 000006b0 75 74 20 69 66 20 69 74 20 65 78 70 65 63 74 73 |ut if it expects| 000006c0 20 6f 6e 65 20 61 6e 64 0a 63 61 6e 6e 6f 74 20 | one and.cannot | 000006d0 66 69 6e 64 20 69 74 20 79 6f 75 20 73 68 6f 75 |find it you shou| 000006e0 6c 64 20 73 65 6e 64 20 61 20 6e 6f 6e 2d 66 61 |ld send a non-fa| 000006f0 74 61 6c 20 65 72 72 6f 72 20 77 69 74 68 20 6d |tal error with m| 00000700 6f 64 6c 5f 69 6e 74 65 72 66 61 63 65 20 73 65 |odl_interface se| 00000710 74 20 74 6f 0a 6f 6e 65 20 28 73 65 65 20 6c 61 |t to.one (see la| 00000720 74 65 72 29 20 72 65 61 64 69 6e 67 20 3c 6d 6f |ter) reading <mo| 00000730 64 75 6c 65 20 6e 61 6d 65 3e 3a 20 43 61 6e 6e |dule name>: Cann| 00000740 6f 74 20 66 69 6e 64 20 21 43 6f 6e 66 69 67 20 |ot find !Config | 00000750 66 69 6c 65 2e 20 20 54 68 69 73 20 69 73 0a 69 |file. This is.i| 00000760 6d 70 6f 72 74 61 6e 74 20 61 73 20 79 6f 75 72 |mportant as your| 00000770 20 6d 6f 64 75 6c 65 20 73 68 6f 75 6c 64 20 6e | module should n| 00000780 6f 74 20 63 72 61 73 68 20 62 75 74 20 73 65 74 |ot crash but set| 00000790 20 73 65 6e 73 69 62 6c 65 20 64 65 66 61 75 6c | sensible defaul| 000007a0 74 73 20 28 65 61 63 68 0a 75 73 65 72 20 63 6f |ts (each.user co| 000007b0 75 6c 64 20 64 65 6c 65 74 65 20 61 20 21 43 6f |uld delete a !Co| 000007c0 6e 66 69 67 20 66 69 6c 65 20 62 65 66 6f 72 65 |nfig file before| 000007d0 20 70 61 73 73 69 6e 67 20 69 74 20 6f 6e 2c 20 | passing it on, | 000007e0 6f 72 20 74 68 65 20 72 65 63 65 69 76 69 6e 67 |or the receiving| 000007f0 20 75 73 65 72 0a 63 6f 75 6c 64 20 64 65 6c 65 | user.could dele| 00000800 74 65 20 61 6e 79 20 70 72 65 73 65 6e 74 20 21 |te any present !| 00000810 43 6f 6e 66 69 67 20 66 69 6c 65 73 20 73 6f 20 |Config files so | 00000820 74 68 61 74 20 73 2f 68 65 20 63 61 6e 20 73 65 |that s/he can se| 00000830 74 20 75 70 20 74 68 65 20 73 79 73 74 65 6d 0a |t up the system.| 00000840 74 68 65 20 77 61 79 20 73 2f 68 65 20 77 61 6e |the way s/he wan| 00000850 74 73 20 69 74 2e 29 0a 0a 59 6f 75 20 6d 75 73 |ts it.)..You mus| 00000860 74 20 72 65 70 6c 79 20 74 6f 20 4d 65 73 73 61 |t reply to Messa| 00000870 67 65 5f 4d 6f 64 75 6c 65 45 78 69 73 74 73 20 |ge_ModuleExists | 00000880 28 21 53 74 69 63 6b 79 42 72 64 20 6d 65 73 73 |(!StickyBrd mess| 00000890 61 67 65 20 30 29 20 77 69 74 68 20 4d 65 73 73 |age 0) with Mess| 000008a0 61 67 65 5f 0a 4d 6f 64 75 6c 65 4c 6f 61 64 65 |age_.ModuleLoade| 000008b0 64 20 69 6e 20 79 6f 75 72 20 6d 65 73 73 61 67 |d in your messag| 000008c0 65 20 66 75 6e 63 74 69 6f 6e 20 6f 74 68 65 72 |e function other| 000008d0 77 69 73 65 20 79 6f 75 20 6d 69 67 68 74 20 74 |wise you might t| 000008e0 68 72 6f 77 20 73 6f 6d 65 6f 6e 65 0a 65 6c 73 |hrow someone.els| 000008f0 65 27 73 20 6d 6f 64 75 6c 65 20 6f 75 74 20 6f |e's module out o| 00000900 66 20 6c 69 6e 65 2e 20 20 54 68 69 73 20 69 73 |f line. This is| 00000910 20 6e 6f 74 20 72 65 61 6c 6c 79 20 61 64 76 69 | not really advi| 00000920 73 61 62 6c 65 21 0a 0a 4d 6f 64 75 6c 65 73 20 |sable!..Modules | 00000930 73 68 6f 75 6c 64 20 75 73 65 20 74 68 65 20 6d |should use the m| 00000940 6f 64 6c 5f 69 6e 74 65 72 66 61 63 65 20 73 79 |odl_interface sy| 00000950 73 74 65 6d 20 28 73 65 65 20 6c 61 74 65 72 29 |stem (see later)| 00000960 20 66 6f 72 20 63 6f 6d 6d 75 6e 69 63 61 74 69 | for communicati| 00000970 6e 67 0a 77 69 74 68 20 21 53 74 69 63 6b 79 42 |ng.with !StickyB| 00000980 72 64 20 61 73 20 6c 6f 77 65 72 20 6c 65 76 65 |rd as lower leve| 00000990 6c 20 69 6e 74 65 72 66 61 63 65 73 20 28 63 61 |l interfaces (ca| 000009a0 6c 6c 69 6e 67 20 21 53 74 69 63 6b 79 42 72 64 |lling !StickyBrd| 000009b0 20 70 72 6f 63 65 64 75 72 65 73 0a 64 69 72 65 | procedures.dire| 000009c0 63 74 6c 79 2c 20 66 6f 72 20 65 78 61 6d 70 6c |ctly, for exampl| 000009d0 65 29 20 6d 61 79 20 6e 6f 74 20 62 65 20 73 75 |e) may not be su| 000009e0 70 70 6f 72 74 65 64 20 6f 6e 20 66 75 74 75 72 |pported on futur| 000009f0 65 20 76 65 72 73 69 6f 6e 73 2e 0a 0a 4d 6f 64 |e versions...Mod| 00000a00 75 6c 65 20 70 72 6f 63 65 64 75 72 65 73 20 61 |ule procedures a| 00000a10 6e 64 20 66 75 6e 63 74 69 6f 6e 73 20 73 68 6f |nd functions sho| 00000a20 75 6c 64 20 73 74 61 72 74 20 77 69 74 68 20 74 |uld start with t| 00000a30 68 65 20 6d 6f 64 75 6c 65 20 6e 61 6d 65 2c 20 |he module name, | 00000a40 66 6f 72 0a 65 78 61 6d 70 6c 65 20 27 6d 6f 64 |for.example 'mod| 00000a50 75 6c 65 5f 69 6e 69 74 27 2e 20 20 50 72 6f 63 |ule_init'. Proc| 00000a60 65 64 75 72 65 20 6e 61 6d 65 73 20 73 68 6f 75 |edure names shou| 00000a70 6c 64 20 62 65 20 69 6e 20 6c 6f 77 65 72 20 63 |ld be in lower c| 00000a80 61 73 65 2c 20 61 6e 64 20 61 6e 0a 75 6e 64 65 |ase, and an.unde| 00000a90 72 73 63 6f 72 65 20 63 68 61 72 61 63 74 65 72 |rscore character| 00000aa0 20 28 27 5f 27 29 20 73 68 6f 75 6c 64 20 73 65 | ('_') should se| 00000ab0 70 65 72 61 74 65 20 74 68 65 20 6d 6f 64 75 6c |perate the modul| 00000ac0 65 20 6e 61 6d 65 20 61 6e 64 20 74 68 65 20 66 |e name and the f| 00000ad0 75 6e 63 74 69 6f 6e 0a 6e 61 6d 65 2e 0a 0a 56 |unction.name...V| 00000ae0 61 72 69 61 62 6c 65 73 20 73 68 6f 75 6c 64 20 |ariables should | 00000af0 66 6f 6c 6c 6f 77 20 74 68 65 20 73 61 6d 65 20 |follow the same | 00000b00 72 75 6c 65 73 20 74 6f 20 61 76 6f 69 64 20 63 |rules to avoid c| 00000b10 6c 61 73 68 65 73 2e 0a 0a 54 68 65 72 65 20 61 |lashes...There a| 00000b20 72 65 20 33 20 66 75 6e 63 74 69 6f 6e 73 20 74 |re 3 functions t| 00000b30 68 61 74 20 21 53 74 69 63 6b 79 42 72 64 20 63 |hat !StickyBrd c| 00000b40 61 6c 6c 73 20 64 69 72 65 63 74 6c 79 2c 20 74 |alls directly, t| 00000b50 68 65 73 65 20 62 65 69 6e 67 20 5f 69 6e 69 74 |hese being _init| 00000b60 2c 0a 5f 65 76 65 6e 74 2c 20 61 6e 64 20 5f 6d |,._event, and _m| 00000b70 65 73 73 61 67 65 2e 20 20 54 68 65 20 66 69 72 |essage. The fir| 00000b80 73 74 20 69 6e 69 74 69 61 6c 69 73 65 73 20 74 |st initialises t| 00000b90 68 65 20 6d 6f 64 75 6c 65 2c 20 74 68 65 20 73 |he module, the s| 00000ba0 65 63 6f 6e 64 0a 63 6f 6e 74 72 6f 6c 73 20 74 |econd.controls t| 00000bb0 68 65 20 70 6f 6c 6c 69 6e 67 20 73 79 73 74 65 |he polling syste| 00000bc0 6d 2c 20 61 6e 64 20 74 68 65 20 74 68 69 72 64 |m, and the third| 00000bd0 20 69 73 20 75 73 65 64 20 66 6f 72 20 69 6e 74 | is used for int| 00000be0 65 72 2d 6d 6f 64 75 6c 65 0a 6d 65 73 73 61 67 |er-module.messag| 00000bf0 69 6e 67 2e 20 20 59 6f 75 72 20 6d 6f 64 75 6c |ing. Your modul| 00000c00 65 20 73 68 6f 75 6c 64 20 73 74 61 72 74 20 77 |e should start w| 00000c10 69 74 68 20 74 68 65 20 66 75 6e 63 74 69 6f 6e |ith the function| 00000c20 20 3c 6d 6f 64 75 6c 65 20 6e 61 6d 65 3e 5f 69 | <module name>_i| 00000c30 6e 69 74 2c 0a 66 6f 72 20 65 78 61 6d 70 6c 65 |nit,.for example| 00000c40 20 46 4e 63 6f 6d 6d 61 6e 64 5f 69 6e 69 74 2e | FNcommand_init.| 00000c50 0a 0a 3c 6d 6f 64 75 6c 65 20 6e 61 6d 65 3e 5f |..<module name>_| 00000c60 69 6e 69 74 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |init.~~~~~~~~~~~| 00000c70 7e 7e 7e 7e 7e 7e 7e 0a 0a 45 6e 74 72 79 20 20 |~~~~~~~..Entry | 00000c80 3a 0a 20 20 20 20 20 20 20 20 20 4e 6f 6e 65 0a |:. None.| 00000c90 45 78 69 74 20 20 20 3a 0a 20 20 20 20 20 20 20 |Exit :. | 00000ca0 20 20 4e 6f 6e 65 0a 41 63 74 69 6f 6e 20 3a 0a | None.Action :.| 00000cb0 20 20 20 20 20 20 20 20 54 68 69 73 20 66 75 6e | This fun| 00000cc0 63 74 69 6f 6e 20 69 73 20 67 75 61 72 61 6e 74 |ction is guarant| 00000cd0 65 65 64 20 74 6f 20 62 65 20 63 61 6c 6c 65 64 |eed to be called| 00000ce0 20 62 65 66 6f 72 65 20 61 6e 79 74 68 69 6e 67 | before anything| 00000cf0 20 65 6c 73 65 20 69 73 20 61 6e 64 0a 73 68 6f | else is and.sho| 00000d00 75 6c 64 20 62 65 20 75 73 65 64 20 74 6f 20 73 |uld be used to s| 00000d10 65 74 20 75 70 20 61 20 6d 65 6e 75 20 62 6c 6f |et up a menu blo| 00000d20 63 6b 2c 20 6c 6f 61 64 20 61 6e 79 20 74 65 6d |ck, load any tem| 00000d30 70 6c 61 74 65 73 2c 20 72 65 67 69 73 74 65 72 |plates, register| 00000d40 20 74 68 65 0a 6d 6f 64 75 6c 65 20 77 69 74 68 | the.module with| 00000d50 20 21 53 74 69 63 6b 79 42 72 64 20 61 6e 64 20 | !StickyBrd and | 00000d60 6c 6f 61 64 20 61 6e 79 20 73 70 72 69 74 65 73 |load any sprites| 00000d70 2c 20 61 6c 73 6f 20 72 65 61 64 69 6e 67 20 69 |, also reading i| 00000d80 6e 20 21 43 6f 6e 66 69 67 20 76 61 6c 75 65 73 |n !Config values| 00000d90 2e 0a 52 65 63 6f 6d 6d 65 6e 64 65 64 20 63 6f |..Recommended co| 00000da0 64 65 20 74 6f 20 64 6f 20 74 68 69 73 20 69 73 |de to do this is| 00000db0 3a 0a 0a 31 30 20 44 45 46 20 46 4e 3c 6d 6f 64 |:..10 DEF FN<mod| 00000dc0 75 6c 65 6e 61 6d 65 3e 5f 69 6e 69 74 0a 32 30 |ulename>_init.20| 00000dd0 20 44 49 4d 20 3c 6d 6f 64 75 6c 65 6e 61 6d 65 | DIM <modulename| 00000de0 3e 5f 6d 62 6c 6b 25 20 36 30 0a 33 30 20 6d 62 |>_mblk% 60.30 mb| 00000df0 6c 6b 25 3d 3c 6d 6f 64 75 6c 65 6e 61 6d 65 3e |lk%=<modulename>| 00000e00 5f 6d 62 6c 6b 25 0a 34 30 20 50 52 4f 43 68 65 |_mblk%.40 PROChe| 00000e10 61 64 65 72 28 22 4d 6f 64 75 6c 65 22 2c 38 29 |ader("Module",8)| 00000e20 0a 34 35 20 6d 65 6e 66 6c 61 67 73 3d 30 3a 6d |.45 menflags=0:m| 00000e30 65 6e 66 6c 61 67 73 3d 31 3c 3c 33 3a 6d 65 6e |enflags=1<<3:men| 00000e40 75 66 6c 61 67 73 2b 3d 26 38 30 0a 35 30 20 50 |uflags+=&80.50 P| 00000e50 52 4f 43 65 6e 74 72 79 28 6d 65 6e 66 6c 61 67 |ROCentry(menflag| 00000e60 73 2c 2d 31 2c 26 37 30 30 30 30 32 31 2c 22 49 |s,-1,&7000021,"I| 00000e70 6e 66 6f 22 29 0a 36 30 20 6d 6f 64 75 6c 65 6e |nfo").60 modulen| 00000e80 61 6d 65 5f 69 6e 66 6f 25 3d 46 4e 6d 6f 64 6c |ame_info%=FNmodl| 00000e90 5f 69 6e 69 74 28 22 4d 6f 64 75 6c 65 22 2c 22 |_init("Module","| 00000ea0 52 65 63 6f 6d 6d 65 6e 64 65 64 20 43 6f 64 65 |Recommended Code| 00000eb0 22 2c 22 59 6f 75 72 73 20 54 72 75 6c 79 22 2c |","Yours Truly",| 00000ec0 22 30 2e 0a 20 20 20 30 30 20 20 28 30 20 78 78 |"0.. 00 (0 xx| 00000ed0 78 20 31 39 78 78 29 22 2c 38 30 2c 3c 6d 6f 64 |x 19xx)",80,<mod| 00000ee0 75 6c 65 6e 61 6d 65 3e 5f 6d 62 6c 6b 25 29 0a |ulename>_mblk%).| 00000ef0 37 30 20 4f 53 43 4c 49 20 22 49 63 6f 6e 53 70 |70 OSCLI "IconSp| 00000f00 72 69 74 65 73 20 3c 53 74 69 63 6b 79 42 72 64 |rites <StickyBrd| 00000f10 45 78 74 24 44 69 72 3e 2e 3c 4d 6f 64 75 6c 65 |Ext$Dir>.<Module| 00000f20 6e 61 6d 65 3e 2e 53 70 72 69 74 65 73 22 0a 38 |name>.Sprites".8| 00000f30 30 20 72 65 70 6c 79 3d 46 41 4c 53 45 3a 52 45 |0 reply=FALSE:RE| 00000f40 4d 20 66 6f 72 20 72 65 70 6c 79 69 6e 67 20 74 |M for replying t| 00000f50 6f 20 6d 65 73 73 61 67 65 73 0a 39 30 20 3d 30 |o messages.90 =0| 00000f60 0a 0a 54 61 6b 69 6e 67 20 74 68 69 73 20 6c 69 |..Taking this li| 00000f70 6e 65 20 62 79 20 6c 69 6e 65 2c 20 6c 69 6e 65 |ne by line, line| 00000f80 20 31 30 20 73 69 6d 70 6c 79 20 64 65 66 69 6e | 10 simply defin| 00000f90 65 73 20 61 20 66 75 6e 63 74 69 6f 6e 2e 20 20 |es a function. | 00000fa0 4c 69 6e 65 20 32 30 0a 72 65 73 65 72 76 65 73 |Line 20.reserves| 00000fb0 20 73 70 61 63 65 20 66 6f 72 20 61 20 6d 65 6e | space for a men| 00000fc0 75 20 28 61 6c 6c 20 6d 6f 64 75 6c 65 73 20 73 |u (all modules s| 00000fd0 68 6f 75 6c 64 20 68 61 76 65 20 61 20 6d 65 6e |hould have a men| 00000fe0 75 2c 20 74 68 65 20 6d 69 6e 69 6d 75 6d 20 69 |u, the minimum i| 00000ff0 74 65 6d 0a 6f 6e 20 69 74 20 62 65 69 6e 67 20 |tem.on it being | 00001000 49 6e 66 6f 29 2c 20 77 68 69 6c 65 20 6c 69 6e |Info), while lin| 00001010 65 73 20 33 30 2c 20 34 30 2c 20 61 6e 64 20 35 |es 30, 40, and 5| 00001020 30 20 73 65 74 75 70 20 74 68 65 20 6d 65 6e 75 |0 setup the menu| 00001030 20 62 6c 6f 63 6b 2e 20 20 4c 69 6e 65 0a 33 30 | block. Line.30| 00001040 20 73 65 74 73 20 75 70 20 61 20 76 61 72 69 61 | sets up a varia| 00001050 62 6c 65 20 28 6d 62 6c 6b 25 29 20 77 68 69 63 |ble (mblk%) whic| 00001060 68 20 69 73 20 75 73 65 64 20 62 79 20 74 68 65 |h is used by the| 00001070 20 70 72 6f 63 65 64 75 72 65 73 20 27 68 65 61 | procedures 'hea| 00001080 64 65 72 27 20 61 6e 64 0a 27 65 6e 74 72 79 27 |der' and.'entry'| 00001090 20 74 6f 20 70 6f 69 6e 74 20 74 6f 20 74 68 65 | to point to the| 000010a0 20 6d 65 6e 75 20 62 6c 6f 63 6b 2e 20 20 54 68 | menu block. Th| 000010b0 65 20 73 79 6e 74 61 78 20 6f 66 20 65 61 63 68 |e syntax of each| 000010c0 20 63 61 6c 6c 20 69 73 3a 0a 0a 20 68 65 61 64 | call is:.. head| 000010d0 65 72 20 20 20 20 6d 65 6e 75 20 74 69 74 6c 65 |er menu title| 000010e0 2c 20 6d 65 6e 75 20 77 69 64 74 68 20 69 6e 20 |, menu width in | 000010f0 63 68 61 72 61 63 74 65 72 73 2b 31 0a 20 65 6e |characters+1. en| 00001100 74 72 79 20 20 20 20 20 6d 65 6e 75 20 66 6c 61 |try menu fla| 00001110 67 73 2c 20 70 6f 69 6e 74 65 72 20 74 6f 20 73 |gs, pointer to s| 00001120 75 62 20 6d 65 6e 75 2f 77 69 6e 64 6f 77 2c 20 |ub menu/window, | 00001130 69 63 6f 6e 20 66 6c 61 67 73 2c 20 6d 65 6e 75 |icon flags, menu| 00001140 20 74 65 78 74 0a 0a 4e 6f 74 65 20 74 68 61 74 | text..Note that| 00001150 20 74 68 65 20 27 49 6e 66 6f 27 20 6d 65 6e 75 | the 'Info' menu| 00001160 20 69 74 65 6d 20 68 61 73 20 69 74 27 73 20 27 | item has it's '| 00001170 73 65 6e 64 20 6d 65 73 73 61 67 65 27 20 66 6c |send message' fl| 00001180 61 67 20 73 65 74 2e 20 20 54 68 69 73 20 69 73 |ag set. This is| 00001190 0a 62 65 63 61 75 73 65 20 21 53 74 69 63 6b 79 |.because !Sticky| 000011a0 42 72 64 20 6e 6f 77 20 6f 6e 6c 79 20 6c 6f 61 |Brd now only loa| 000011b0 64 73 20 6f 6e 65 20 63 6f 70 79 20 6f 66 20 74 |ds one copy of t| 000011c0 68 65 20 6d 6f 64 75 6c 65 20 69 6e 66 6f 20 77 |he module info w| 000011d0 69 6e 64 6f 77 0a 28 70 72 65 76 69 6f 75 73 20 |indow.(previous | 000011e0 76 65 72 73 69 6f 6e 73 20 6c 6f 61 64 65 64 20 |versions loaded | 000011f0 61 20 6e 65 77 20 77 69 6e 64 6f 77 20 66 6f 72 |a new window for| 00001200 20 65 61 63 68 20 6d 6f 64 75 6c 65 29 20 61 6e | each module) an| 00001210 64 20 61 6c 74 65 72 73 20 74 68 65 0a 74 65 78 |d alters the.tex| 00001220 74 20 69 6e 20 69 74 20 77 68 65 6e 20 69 74 20 |t in it when it | 00001230 72 65 63 65 69 76 65 73 20 61 6e 20 27 6f 70 65 |receives an 'ope| 00001240 6e 20 73 75 62 6d 65 6e 75 27 20 6f 72 20 27 6f |n submenu' or 'o| 00001250 70 65 6e 20 69 63 6f 6e 69 73 65 64 20 77 69 6e |pen iconised win| 00001260 64 6f 77 27 0a 72 65 71 75 65 73 74 2e 20 20 54 |dow'.request. T| 00001270 68 65 20 31 3c 3c 33 20 64 6f 65 73 20 74 68 69 |he 1<<3 does thi| 00001280 73 2c 20 6f 72 20 79 6f 75 20 63 61 6e 20 72 65 |s, or you can re| 00001290 70 6c 61 63 65 20 69 74 20 77 69 74 68 20 38 2e |place it with 8.| 000012a0 0a 0a 4c 69 6e 65 20 36 30 20 72 65 67 69 73 74 |..Line 60 regist| 000012b0 65 72 73 20 74 68 65 20 6d 6f 64 75 6c 65 20 77 |ers the module w| 000012c0 69 74 68 20 21 53 74 69 63 6b 79 42 72 64 20 2d |ith !StickyBrd -| 000012d0 0a 0a 6d 6f 64 6c 5f 69 6e 69 74 0a 7e 7e 7e 7e |..modl_init.~~~~| 000012e0 7e 7e 7e 7e 7e 0a 0a 45 6e 74 72 79 20 20 3a 0a |~~~~~..Entry :.| 000012f0 20 20 20 20 20 20 20 20 20 74 69 74 6c 65 2c 20 | title, | 00001300 70 75 72 70 6f 73 65 2c 20 61 75 74 68 6f 72 2c |purpose, author,| 00001310 20 76 65 72 73 69 6f 6e 2c 20 21 53 74 69 63 6b | version, !Stick| 00001320 79 42 72 64 20 76 65 72 73 69 6f 6e 2a 31 30 30 |yBrd version*100| 00001330 2c 20 6d 65 6e 75 20 62 6c 6f 63 6b 0a 45 78 69 |, menu block.Exi| 00001340 74 20 20 20 3a 0a 20 20 20 20 20 20 20 20 20 69 |t :. i| 00001350 6e 66 6f 20 77 69 6e 64 6f 77 20 68 61 6e 64 6c |nfo window handl| 00001360 65 0a 41 63 74 69 6f 6e 20 3a 20 0a 20 20 20 20 |e.Action : . | 00001370 20 20 20 20 20 52 65 67 69 73 74 65 72 73 20 61 | Registers a| 00001380 20 6d 6f 64 75 6c 65 20 77 69 74 68 20 21 53 74 | module with !St| 00001390 69 63 6b 79 42 72 64 2e 20 20 49 66 20 74 68 65 |ickyBrd. If the| 000013a0 20 21 53 74 69 63 6b 79 42 72 64 27 73 20 76 65 | !StickyBrd's ve| 000013b0 72 73 69 6f 6e 0a 6e 75 6d 62 65 72 20 69 73 20 |rsion.number is | 000013c0 6c 65 73 73 20 74 68 61 6e 20 74 68 65 20 6f 6e |less than the on| 000013d0 65 20 72 65 71 75 69 72 65 64 20 62 79 20 74 68 |e required by th| 000013e0 65 20 6d 6f 64 75 6c 65 2c 20 21 53 74 69 63 6b |e module, !Stick| 000013f0 79 42 72 64 20 77 69 6c 6c 20 65 78 69 74 20 77 |yBrd will exit w| 00001400 69 74 68 0a 61 20 66 61 74 61 6c 20 65 72 72 6f |ith.a fatal erro| 00001410 72 2e 20 20 54 68 65 20 74 69 74 6c 65 2c 20 70 |r. The title, p| 00001420 75 72 70 6f 73 65 2c 20 61 75 74 68 6f 72 2c 20 |urpose, author, | 00001430 61 6e 64 20 76 65 72 73 69 6f 6e 20 73 74 72 69 |and version stri| 00001440 6e 67 73 20 77 69 6c 6c 20 62 65 0a 70 6c 61 63 |ngs will be.plac| 00001450 65 64 20 69 6e 20 79 6f 75 72 20 6d 6f 64 75 6c |ed in your modul| 00001460 65 27 73 20 69 6e 66 6f 20 77 69 6e 64 6f 77 20 |e's info window | 00001470 62 79 20 21 53 74 69 63 6b 79 42 72 64 20 69 74 |by !StickyBrd it| 00001480 73 65 6c 66 2e 20 20 54 68 65 20 6d 65 6e 75 20 |self. The menu | 00001490 62 6c 6f 63 6b 0a 28 6f 72 20 72 61 74 68 65 72 |block.(or rather| 000014a0 20 74 68 65 20 70 6f 69 6e 74 65 72 20 74 6f 20 | the pointer to | 000014b0 69 74 29 20 70 61 73 73 65 64 20 77 69 6c 6c 20 |it) passed will | 000014c0 62 65 20 27 67 6c 75 65 64 27 20 74 6f 20 74 68 |be 'glued' to th| 000014d0 65 20 4d 6f 64 75 6c 65 73 20 73 75 62 2d 6d 65 |e Modules sub-me| 000014e0 6e 75 2e 0a 59 6f 75 20 6d 61 79 20 6e 6f 74 65 |nu..You may note| 000014f0 20 74 68 61 74 20 69 6e 69 74 69 61 6c 6c 79 20 | that initially | 00001500 74 68 65 20 49 6e 66 6f 20 69 74 65 6d 20 69 73 |the Info item is| 00001510 20 64 65 66 69 6e 65 64 20 61 73 20 6e 6f 74 20 | defined as not | 00001520 68 61 76 69 6e 67 20 61 20 73 75 62 2d 0a 77 69 |having a sub-.wi| 00001530 6e 64 6f 77 20 2d 20 74 68 69 73 20 6f 66 66 73 |ndow - this offs| 00001540 65 74 20 69 73 20 66 69 6c 6c 65 64 20 69 6e 20 |et is filled in | 00001550 62 79 20 21 53 74 69 63 6b 79 42 72 64 20 69 74 |by !StickyBrd it| 00001560 73 65 6c 66 20 61 73 20 6c 6f 6e 67 20 61 73 20 |self as long as | 00001570 74 68 65 20 66 69 72 73 74 0a 65 6e 74 72 79 20 |the first.entry | 00001580 69 73 20 66 6f 72 20 49 6e 66 6f 2e 20 20 41 6e |is for Info. An| 00001590 79 20 73 75 62 73 65 71 75 65 6e 74 20 72 65 2d |y subsequent re-| 000015a0 64 65 66 69 6e 69 74 69 6f 6e 73 20 6f 66 20 74 |definitions of t| 000015b0 68 65 20 6d 65 6e 75 20 62 6c 6f 63 6b 20 73 68 |he menu block sh| 000015c0 6f 75 6c 64 0a 69 6e 63 6c 75 64 65 20 74 68 65 |ould.include the| 000015d0 20 68 61 6e 64 6c 65 20 72 65 74 75 72 6e 65 64 | handle returned| 000015e0 20 61 73 20 61 20 70 6f 69 6e 74 65 72 20 74 6f | as a pointer to| 000015f0 20 61 20 73 75 62 2d 77 69 6e 64 6f 77 2e 0a 0a | a sub-window...| 00001600 59 6f 75 20 73 68 6f 75 6c 64 20 65 78 69 74 20 |You should exit | 00001610 74 68 65 20 69 6e 69 74 69 61 6c 69 73 61 74 69 |the initialisati| 00001620 6f 6e 20 72 6f 75 74 69 6e 65 20 77 69 74 68 20 |on routine with | 00001630 30 20 28 6c 69 6e 65 20 38 30 20 3d 30 29 20 61 |0 (line 80 =0) a| 00001640 6e 64 20 77 61 69 74 20 66 6f 72 0a 61 20 70 6f |nd wait for.a po| 00001650 6c 6c 20 63 6f 64 65 20 72 65 63 65 69 76 65 64 |ll code received| 00001660 20 69 6e 20 74 68 65 20 6e 65 78 74 20 66 75 6e | in the next fun| 00001670 63 74 69 6f 6e 20 64 65 73 63 72 69 62 65 64 2e |ction described.| 00001680 0a 0a 3c 6d 6f 64 75 6c 65 20 6e 61 6d 65 3e 5f |..<module name>_| 00001690 65 76 65 6e 74 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |event.~~~~~~~~~~| 000016a0 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a 45 6e 74 72 79 |~~~~~~~~~..Entry| 000016b0 20 20 3a 0a 20 20 20 20 20 20 20 20 20 70 6f 6c | :. pol| 000016c0 6c 20 72 65 61 73 6f 6e 20 63 6f 64 65 2c 20 70 |l reason code, p| 000016d0 6f 69 6e 74 65 72 20 74 6f 20 70 61 72 61 6d 65 |ointer to parame| 000016e0 74 65 72 20 62 6c 6f 63 6b 0a 45 78 69 74 20 20 |ter block.Exit | 000016f0 20 3a 0a 20 20 20 20 20 20 20 20 20 64 65 70 65 | :. depe| 00001700 6e 64 73 20 6f 6e 20 72 65 61 73 6f 6e 20 63 6f |nds on reason co| 00001710 64 65 0a 41 63 74 69 6f 6e 20 3a 0a 20 20 20 20 |de.Action :. | 00001720 20 20 20 20 20 44 65 61 6c 73 20 77 69 74 68 20 | Deals with | 00001730 61 20 72 65 61 73 6f 6e 20 63 6f 64 65 2e 20 20 |a reason code. | 00001740 54 68 65 20 65 78 61 63 74 20 65 66 66 65 63 74 |The exact effect| 00001750 20 69 73 20 64 65 70 65 6e 64 61 6e 74 20 6f 6e | is dependant on| 00001760 20 74 68 65 0a 72 65 61 73 6f 6e 20 63 6f 64 65 | the.reason code| 00001770 20 69 74 73 65 6c 66 20 62 75 74 20 69 66 20 79 | itself but if y| 00001780 6f 75 20 64 6f 20 6e 6f 74 20 64 65 61 6c 20 77 |ou do not deal w| 00001790 69 74 68 20 69 74 20 79 6f 75 20 73 68 6f 75 6c |ith it you shoul| 000017a0 64 20 65 78 69 74 20 77 69 74 68 20 3d 30 0a 61 |d exit with =0.a| 000017b0 6e 64 20 6e 6f 74 20 64 6f 20 61 6e 79 20 66 75 |nd not do any fu| 000017c0 72 74 68 65 72 20 70 72 6f 63 65 73 73 69 6e 67 |rther processing| 000017d0 2e 20 20 54 68 65 20 72 65 61 73 6f 6e 20 63 6f |. The reason co| 000017e0 64 65 73 20 61 72 65 20 64 65 73 63 72 69 62 65 |des are describe| 000017f0 64 20 62 65 6c 6f 77 3a 0a 20 20 20 5f 5f 5f 5f |d below:. ____| 00001800 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00001840 5f 5f 0a 20 20 2f 20 20 20 20 20 20 20 20 20 20 |__. / | 00001850 20 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 | | | 00001860 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 || | 00001870 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001880 20 20 20 20 20 20 20 20 20 20 20 20 5c 0a 20 7c | \. || 00001890 20 50 6f 6c 6c 20 4e 75 6d 62 65 72 20 7c 20 44 | Poll Number | D| 000018a0 65 73 63 72 69 70 74 69 6f 6e 20 7c 20 50 61 72 |escription | Par| 000018b0 61 6d 65 74 65 72 20 62 6c 6f 63 6b 20 64 65 73 |ameter block des| 000018c0 63 72 69 70 74 69 6f 6e 20 20 20 20 20 20 20 20 |cription | 000018d0 20 20 20 20 20 20 20 20 7c 0a 20 7c 5f 5f 5f 5f | |. |____| 000018e0 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f |_________|______| 000018f0 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f |_______|________| 00001900 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00001920 5f 5f 5f 5f 7c 0a 20 7c 20 20 20 20 20 20 20 20 |____|. | | 00001930 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 | | | 00001940 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 | | | 00001950 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00001970 7c 0a 20 7c 20 20 20 20 20 20 30 20 20 20 20 20 ||. | 0 | 00001980 20 7c 20 4e 75 6c 6c 20 65 76 65 6e 74 20 20 7c | | Null event || 00001990 20 4e 6f 74 20 61 70 70 6c 69 63 61 62 6c 65 20 | Not applicable | 000019a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000019b0 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 7c | |. || 000019c0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f |_____________|__| 000019d0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f |___________|____| 000019e0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00001a00 5f 5f 5f 5f 5f 5f 5f 5f 7c 0a 20 7c 20 20 20 20 |________|. | | 00001a10 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 | | | 00001a20 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 | | | 00001a30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00001a50 20 20 20 20 7c 0a 20 7c 20 20 20 20 20 20 31 20 | |. | 1 | 00001a60 20 20 20 20 20 7c 20 4d 65 6e 75 20 65 76 65 6e | | Menu even| 00001a70 74 20 20 7c 20 2b 30 20 66 69 72 73 74 20 69 74 |t | +0 first it| 00001a80 65 6d 20 73 65 6c 65 63 74 65 64 20 20 20 20 20 |em selected | 00001a90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001aa0 7c 0a 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 ||. | | 00001ab0 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | | || 00001ac0 20 2b 34 20 73 65 63 6f 6e 64 20 69 74 65 6d 20 | +4 second item | 00001ad0 73 65 6c 65 63 74 65 64 20 20 20 20 20 20 20 20 |selected | 00001ae0 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 7c | |. || 00001af0 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 | | | 00001b00 20 20 20 20 20 20 20 20 20 20 20 7c 20 65 74 63 | | etc| 00001b10 2e 2c 20 6c 65 61 64 69 6e 67 20 74 6f 3a 20 20 |., leading to: | 00001b20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001b30 20 20 20 20 20 20 20 20 7c 0a 20 7c 20 20 20 20 | |. | | 00001b40 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 | | | 00001b50 20 20 20 20 20 20 20 7c 20 2b 6e 20 2d 31 20 3d | | +n -1 =| 00001b60 20 65 6e 64 20 6f 66 20 62 6c 6f 63 6b 20 20 20 | end of block | 00001b70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001b80 20 20 20 20 7c 0a 20 7c 5f 5f 5f 5f 5f 5f 5f 5f | |. |________| 00001b90 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |_____|__________| 00001ba0 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |___|____________| 00001bb0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00001bd0 7c 0a 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 ||. | | 00001be0 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | | || 00001bf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00001c10 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 7c | |. || 00001c20 20 20 20 20 20 20 32 20 20 20 20 20 20 7c 20 53 | 2 | S| 00001c30 61 76 65 20 43 6f 6e 66 69 67 20 7c 20 4e 6f 74 |ave Config | Not| 00001c40 20 61 70 70 6c 69 63 61 62 6c 65 20 20 20 20 20 | applicable | 00001c50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001c60 20 20 20 20 20 20 20 20 7c 0a 20 7c 5f 5f 5f 5f | |. |____| 00001c70 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f |_________|______| 00001c80 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f |_______|________| 00001c90 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00001cb0 5f 5f 5f 5f 7c 0a 20 7c 20 20 20 20 20 20 20 20 |____|. | | 00001cc0 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 | | | 00001cd0 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 | | | 00001ce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00001d00 7c 0a 20 7c 20 20 20 20 20 20 33 20 20 20 20 20 ||. | 3 | 00001d10 20 7c 20 48 65 6c 70 20 65 76 65 6e 74 20 20 7c | | Help event || 00001d20 20 2b 30 20 77 69 6e 64 6f 77 20 68 61 6e 64 6c | +0 window handl| 00001d30 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |e | 00001d40 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 7c | |. || 00001d50 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 | | | 00001d60 20 20 20 20 20 20 20 20 20 20 20 7c 20 2b 34 20 | | +4 | 00001d70 69 63 6f 6e 20 68 61 6e 64 6c 65 20 20 20 20 20 |icon handle | 00001d80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001d90 20 20 20 20 20 20 20 20 7c 0a 20 7c 5f 5f 5f 5f | |. |____| 00001da0 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f |_________|______| 00001db0 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f |_______|________| 00001dc0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00001de0 5f 5f 5f 5f 7c 0a 20 7c 20 20 20 20 20 20 20 20 |____|. | | 00001df0 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 | | | 00001e00 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 | | | 00001e10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00001e30 7c 0a 20 7c 20 20 20 20 20 20 34 20 20 20 20 20 ||. | 4 | 00001e40 20 7c 20 44 6f 75 62 6c 65 20 63 6c 69 63 6b 7c | | Double click|| 00001e50 20 2b 30 20 20 78 20 63 6f 2d 6f 72 64 69 6e 61 | +0 x co-ordina| 00001e60 74 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |te | 00001e70 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 7c | |. || 00001e80 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 6f | | o| 00001e90 6e 20 69 63 6f 6e 20 20 20 20 20 7c 20 2b 34 20 |n icon | +4 | 00001ea0 20 79 20 63 6f 2d 6f 72 64 69 6e 61 74 65 20 20 | y co-ordinate | 00001eb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001ec0 20 20 20 20 20 20 20 20 7c 0a 20 7c 20 20 20 20 | |. | | 00001ed0 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 | | | 00001ee0 20 20 20 20 20 20 20 7c 20 2b 38 20 20 69 6e 74 | | +8 int| 00001ef0 65 72 6e 61 6c 20 74 79 70 65 20 20 20 20 20 20 |ernal type | 00001f00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001f10 20 20 20 20 7c 0a 20 7c 20 20 20 20 20 20 20 20 | |. | | 00001f20 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 | | | 00001f30 20 20 20 7c 20 2b 31 32 20 6e 61 6d 65 20 20 20 | | +12 name | 00001f40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00001f60 7c 0a 20 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f ||. |____________| 00001f70 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c |_|_____________|| 00001f80 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00001fa0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 0a 20 7c |____________|. || 00001fb0 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 | | | 00001fc0 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 | | | 00001fd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00001ff0 20 20 20 20 20 20 20 20 7c 0a 20 7c 20 20 20 20 | |. | | 00002000 20 20 35 20 20 20 20 20 20 7c 20 4d 6f 75 73 65 | 5 | Mouse| 00002010 20 63 6c 69 63 6b 20 7c 20 2b 30 20 77 69 6e 64 | click | +0 wind| 00002020 6f 77 20 68 61 6e 64 6c 65 20 20 20 20 20 20 20 |ow handle | 00002030 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00002040 20 20 20 20 7c 0a 20 7c 20 20 20 20 20 20 20 20 | |. | | 00002050 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 | | | 00002060 20 20 20 7c 20 2b 34 20 69 63 6f 6e 20 68 61 6e | | +4 icon han| 00002070 64 6c 65 20 20 20 20 20 20 20 20 20 20 20 20 20 |dle | 00002080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00002090 7c 0a 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 ||. | | 000020a0 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | | || 000020b0 20 2b 38 20 62 75 74 74 6f 6e 20 74 79 70 65 20 | +8 button type | 000020c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000020d0 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 7c | |. || 000020e0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f |_____________|__| 000020f0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f |___________|____| 00002100 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00002120 5f 5f 5f 5f 5f 5f 5f 5f 7c 0a 20 7c 20 20 20 20 |________|. | | 00002130 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 | | | 00002140 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 | | | 00002150 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00002170 20 20 20 20 7c 0a 20 7c 20 20 20 20 20 20 36 20 | |. | 6 | 00002180 20 20 20 20 20 7c 20 54 72 61 6e 73 6c 61 74 65 | | Translate| 00002190 20 20 20 7c 20 2b 30 20 77 69 6e 64 6f 77 20 68 | | +0 window h| 000021a0 61 6e 64 6c 65 20 20 20 20 20 20 20 20 20 20 20 |andle | 000021b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000021c0 7c 0a 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 ||. | | 000021d0 20 7c 20 68 61 6e 64 6c 65 20 74 6f 20 20 20 7c | | handle to || 000021e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00002200 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 7c | |. || 00002210 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 6e | | n| 00002220 61 6d 65 20 20 20 20 20 20 20 20 7c 20 20 20 20 |ame | | 00002230 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00002250 20 20 20 20 20 20 20 20 7c 0a 20 7c 5f 5f 5f 5f | |. |____| 00002260 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f |_________|______| 00002270 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f |_______|________| 00002280 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 000022a0 5f 5f 5f 5f 7c 0a 20 7c 20 20 20 20 20 20 20 20 |____|. | | 000022b0 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 | | | 000022c0 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 | | | 000022d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 000022f0 7c 0a 20 7c 20 20 20 20 20 20 37 20 20 20 20 20 ||. | 7 | 00002300 20 7c 20 54 72 61 6e 73 6c 61 74 65 20 20 20 7c | | Translate || 00002310 20 2b 30 20 6e 61 6d 65 20 20 20 20 20 20 20 20 | +0 name | 00002320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00002330 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 7c | |. || 00002340 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 6e | | n| 00002350 61 6d 65 20 74 6f 20 20 20 20 20 7c 20 20 20 20 |ame to | | 00002360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00002380 20 20 20 20 20 20 20 20 7c 0a 20 7c 20 20 20 20 | |. | | 00002390 20 20 20 20 20 20 20 20 20 7c 20 68 61 6e 64 6c | | handl| 000023a0 65 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 |e | | 000023b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 000023d0 20 20 20 20 7c 0a 20 7c 5f 5f 5f 5f 5f 5f 5f 5f | |. |________| 000023e0 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |_____|__________| 000023f0 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |___|____________| 00002400 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00002420 7c 0a 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 ||. | | 00002430 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | | || 00002440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00002460 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 7c | |. || 00002470 20 20 20 20 20 20 38 20 20 20 20 20 20 7c 20 57 | 8 | W| 00002480 69 6e 64 6f 77 20 77 69 64 74 68 7c 20 2b 30 20 |indow width| +0 | 00002490 6e 61 6d 65 20 20 20 20 20 20 20 20 20 20 20 20 |name | 000024a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000024b0 20 20 20 20 20 20 20 20 7c 0a 20 7c 20 20 20 20 | |. | | 000024c0 20 20 20 20 20 20 20 20 20 7c 20 72 65 71 75 65 | | reque| 000024d0 73 74 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 |st | | 000024e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00002500 20 20 20 20 7c 0a 20 7c 5f 5f 5f 5f 5f 5f 5f 5f | |. |________| 00002510 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |_____|__________| 00002520 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |___|____________| 00002530 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00002550 7c 0a 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 ||. | | 00002560 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | | || 00002570 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00002590 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 7c | |. || 000025a0 20 20 20 20 20 20 39 20 20 20 20 20 20 7c 20 57 | 9 | W| 000025b0 69 6e 64 6f 77 20 20 20 20 20 20 7c 20 2b 30 20 |indow | +0 | 000025c0 6e 61 6d 65 20 20 20 20 20 20 20 20 20 20 20 20 |name | 000025d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000025e0 20 20 20 20 20 20 20 20 7c 0a 20 7c 20 20 20 20 | |. | | 000025f0 20 20 20 20 20 20 20 20 20 7c 20 68 65 69 67 68 | | heigh| 00002600 74 20 72 65 71 2e 20 7c 20 20 20 20 20 20 20 20 |t req. | | 00002610 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00002630 20 20 20 20 7c 0a 20 7c 5f 5f 5f 5f 5f 5f 5f 5f | |. |________| 00002640 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |_____|__________| 00002650 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |___|____________| 00002660 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00002680 7c 0a 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 ||. | | 00002690 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | | || 000026a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 000026c0 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 7c | |. || 000026d0 20 20 20 20 20 31 30 20 20 20 20 20 20 7c 20 44 | 10 | D| 000026e0 72 61 67 20 65 6e 64 20 20 20 20 7c 20 2b 30 20 |rag end | +0 | 000026f0 20 20 69 6e 74 65 72 6e 61 6c 20 74 79 70 65 20 | internal type | 00002700 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00002710 20 20 20 20 20 20 20 20 7c 0a 20 7c 20 20 20 20 | |. | | 00002720 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 | | | 00002730 20 20 20 20 20 20 20 7c 20 2b 34 20 20 20 69 63 | | +4 ic| 00002740 6f 6e 20 6e 61 6d 65 20 20 20 20 20 20 20 20 20 |on name | 00002750 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00002760 20 20 20 20 7c 0a 20 7c 20 20 20 20 20 20 20 20 | |. | | 00002770 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 | | | 00002780 20 20 20 7c 20 2b 32 36 30 20 76 69 65 77 65 72 | | +260 viewer| 00002790 20 69 63 6f 6e 20 64 72 61 67 67 65 64 20 74 6f | icon dragged to| 000027a0 20 28 6e 61 6d 65 20 6f 66 29 20 20 20 20 20 20 | (name of) | 000027b0 7c 0a 20 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f ||. |____________| 000027c0 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c |_|_____________|| 000027d0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 000027f0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 0a 20 7c |____________|. || 00002800 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 | | | 00002810 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 | | | 00002820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00002840 20 20 20 20 20 20 20 20 7c 0a 20 7c 20 20 20 20 | |. | | 00002850 20 31 31 20 20 20 20 20 20 7c 20 44 61 74 61 20 | 11 | Data | 00002860 4c 6f 61 64 20 20 20 7c 20 2b 30 20 77 69 6e 64 |Load | +0 wind| 00002870 6f 77 20 68 61 6e 64 6c 65 20 20 20 20 20 20 20 |ow handle | 00002880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00002890 20 20 20 20 7c 0a 20 7c 20 20 20 20 20 20 20 20 | |. | | 000028a0 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 | | | 000028b0 20 20 20 7c 20 2b 34 20 69 63 6f 6e 20 68 61 6e | | +4 icon han| 000028c0 64 6c 65 20 20 20 20 20 20 20 20 20 20 20 20 20 |dle | 000028d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000028e0 7c 0a 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 ||. | | 000028f0 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | | || 00002900 20 2b 38 20 66 69 6c 65 20 6e 61 6d 65 20 20 20 | +8 file name | 00002910 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00002920 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 7c | |. || 00002930 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f |_____________|__| 00002940 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f |___________|____| 00002950 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00002970 5f 5f 5f 5f 5f 5f 5f 5f 7c 0a 20 7c 20 20 20 20 |________|. | | 00002980 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 | | | 00002990 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 | | | 000029a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 000029c0 20 20 20 20 7c 0a 20 7c a0 20 20 20 20 31 32 20 | |. |. 12 | 000029d0 20 20 20 20 20 7c 20 44 65 6c 65 74 65 20 69 63 | | Delete ic| 000029e0 6f 6e 20 7c 20 2b 30 20 69 63 6f 6e 20 68 61 6e |on | +0 icon han| 000029f0 64 6c 65 20 20 20 20 20 20 20 20 20 20 20 20 20 |dle | 00002a00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00002a10 7c 0a 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 ||. | | 00002a20 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | | || 00002a30 20 2b 34 20 69 6e 74 65 72 6e 61 6c 20 74 79 70 | +4 internal typ| 00002a40 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |e | 00002a50 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 7c | |. || 00002a60 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f |_____________|__| 00002a70 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f |___________|____| 00002a80 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00002aa0 5f 5f 5f 5f 5f 5f 5f 5f 7c 0a 20 7c 20 20 20 20 |________|. | | 00002ab0 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 | | | 00002ac0 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 | | | 00002ad0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00002af0 20 20 20 20 7c 0a 20 7c 20 20 20 20 20 31 33 20 | |. | 13 | 00002b00 20 20 20 20 20 7c 20 51 75 69 74 20 20 20 20 20 | | Quit | 00002b10 20 20 20 7c 20 4e 6f 74 20 61 70 70 6c 69 63 61 | | Not applica| 00002b20 62 6c 65 20 20 20 20 20 20 20 20 20 20 20 20 20 |ble | 00002b30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00002b40 7c 0a 20 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f ||. |____________| 00002b50 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c |_|_____________|| 00002b60 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00002b80 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 0a 20 7c |____________|. || 00002b90 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 | | | 00002ba0 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 | | | 00002bb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00002bd0 20 20 20 20 20 20 20 20 7c 0a 20 7c 20 20 20 20 | |. | | 00002be0 20 31 34 20 20 20 20 20 20 7c 20 52 65 64 72 61 | 14 | Redra| 00002bf0 77 20 20 20 20 20 20 7c 20 53 74 61 6e 64 61 72 |w | Standar| 00002c00 64 20 77 69 6d 70 20 72 65 64 72 61 77 20 62 6c |d wimp redraw bl| 00002c10 6f 63 6b 20 20 20 20 20 20 20 20 20 20 20 20 20 |ock | 00002c20 20 20 20 20 7c 0a 20 7c 5f 5f 5f 5f 5f 5f 5f 5f | |. |________| 00002c30 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |_____|__________| 00002c40 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |___|____________| 00002c50 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00002c70 7c 0a 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 ||. | | 00002c80 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | | || 00002c90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00002cb0 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 7c | |. || 00002cc0 20 20 20 20 20 31 35 20 20 20 20 20 20 7c 20 43 | 15 | C| 00002cd0 6c 65 61 72 20 41 6c 6c 20 20 20 7c 20 2b 30 20 |lear All | +0 | 00002ce0 63 6c 65 61 72 20 74 79 70 65 20 20 20 20 20 20 |clear type | 00002cf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00002d00 20 20 20 20 20 20 20 20 7c 0a 20 7c 20 20 20 20 | |. | | 00002d10 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 | | | 00002d20 20 20 20 20 20 20 20 7c 20 2b 34 20 64 65 73 6b | | +4 desk| 00002d30 74 6f 70 20 66 69 6c 65 20 74 6f 20 62 65 20 6c |top file to be l| 00002d40 6f 61 64 65 64 20 20 20 20 20 20 20 20 20 20 20 |oaded | 00002d50 20 20 20 20 7c 0a 20 7c 5f 5f 5f 5f 5f 5f 5f 5f | |. |________| 00002d60 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |_____|__________| 00002d70 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |___|____________| 00002d80 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00002da0 7c 0a 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 ||. | | 00002db0 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | | || 00002dc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00002de0 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 7c | |. || 00002df0 20 20 20 20 20 31 36 20 20 20 20 20 20 7c 20 44 | 16 | D| 00002e00 65 73 6b 74 6f 70 20 20 20 20 20 7c 20 4e 6f 74 |esktop | Not| 00002e10 20 61 70 70 6c 69 63 61 62 6c 65 20 20 20 20 20 | applicable | 00002e20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00002e30 20 20 20 20 20 20 20 20 7c 0a 20 7c 20 20 20 20 | |. | | 00002e40 20 20 20 20 20 20 20 20 20 7c 20 6c 6f 61 64 65 | | loade| 00002e50 64 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 |d | | 00002e60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00002e80 20 20 20 20 7c 0a 20 7c 5f 5f 5f 5f 5f 5f 5f 5f | |. |________| 00002e90 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |_____|__________| 00002ea0 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |___|____________| 00002eb0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00002ed0 7c 0a 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 ||. | | 00002ee0 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | | || 00002ef0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00002f10 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 | |. | 00002f20 5c 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 |\ | | 00002f30 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 | | | 00002f40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00002f60 20 20 20 20 20 20 20 2f 0a 20 20 20 5c 5f 5f 5f | /. \___| 00002f70 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f |________|_______| 00002f80 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f |______|_________| 00002f90 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00002fb0 5f 2f 0a 0a 0a 57 68 61 74 20 66 6f 6c 6c 6f 77 |_/...What follow| 00002fc0 73 20 69 73 20 61 20 64 65 74 61 69 6c 65 64 20 |s is a detailed | 00002fd0 64 65 73 63 72 69 70 74 69 6f 6e 20 6f 66 20 65 |description of e| 00002fe0 61 63 68 20 70 6f 6c 6c 20 63 6f 64 65 2e 0a 0a |ach poll code...| 00002ff0 30 20 2d 20 4e 75 6c 6c 20 65 76 65 6e 74 0a 7e |0 - Null event.~| 00003000 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a 45 |~~~~~~~~~~~~~..E| 00003010 6e 74 72 79 20 20 3a 0a 20 20 20 20 20 20 20 20 |ntry :. | 00003020 20 4e 6f 6e 65 0a 45 78 69 74 20 20 20 3a 0a 20 | None.Exit :. | 00003030 20 20 20 20 20 20 20 20 4e 6f 6e 65 0a 41 63 74 | None.Act| 00003040 69 6f 6e 20 3a 0a 20 20 20 20 20 20 20 20 20 59 |ion :. Y| 00003050 6f 75 20 73 68 6f 75 6c 64 20 64 6f 20 61 6e 79 |ou should do any| 00003060 20 70 72 6f 63 65 73 73 69 6e 67 20 72 65 71 75 | processing requ| 00003070 69 72 65 64 20 66 6f 72 20 6e 75 6c 6c 20 65 76 |ired for null ev| 00003080 65 6e 74 73 20 61 6e 64 20 74 68 65 6e 0a 72 65 |ents and then.re| 00003090 74 75 72 6e 2c 20 61 73 20 71 75 69 63 6b 6c 79 |turn, as quickly| 000030a0 20 61 73 20 70 6f 73 73 69 62 6c 65 2e 0a 0a 31 | as possible...1| 000030b0 20 2d 20 4d 65 6e 75 20 65 76 65 6e 74 0a 7e 7e | - Menu event.~~| 000030c0 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a 45 6e |~~~~~~~~~~~~..En| 000030d0 74 72 79 20 20 3a 0a 20 20 20 20 20 20 20 20 20 |try :. | 000030e0 2b 30 20 66 69 72 73 74 20 69 74 65 6d 20 73 65 |+0 first item se| 000030f0 6c 65 63 74 65 64 0a 20 20 20 20 20 20 20 20 20 |lected. | 00003100 2b 34 20 73 65 63 6f 6e 64 20 69 74 65 6d 20 73 |+4 second item s| 00003110 65 6c 65 63 74 65 64 2e 2e 2e 0a 45 78 69 74 20 |elected....Exit | 00003120 20 20 3a 0a 20 20 20 20 20 20 20 20 20 4e 6f 6e | :. Non| 00003130 65 0a 41 63 74 69 6f 6e 20 3a 0a 20 20 20 20 20 |e.Action :. | 00003140 20 20 20 20 49 66 20 79 6f 75 20 68 61 76 65 20 | If you have | 00003150 61 6e 79 74 68 69 6e 67 20 61 74 20 61 6c 6c 20 |anything at all | 00003160 6f 6e 20 74 68 65 20 6d 65 6e 75 20 61 70 61 72 |on the menu apar| 00003170 74 20 66 72 6f 6d 20 49 6e 66 6f 20 79 6f 75 20 |t from Info you | 00003180 73 68 6f 75 6c 64 0a 68 61 76 65 20 61 20 70 72 |should.have a pr| 00003190 6f 63 65 64 75 72 65 20 73 65 74 20 75 70 20 74 |ocedure set up t| 000031a0 6f 20 64 65 61 6c 20 77 69 74 68 20 69 74 2e 20 |o deal with it. | 000031b0 20 54 68 65 20 70 61 72 61 6d 65 74 65 72 20 62 | The parameter b| 000031c0 6c 6f 63 6b 20 69 73 20 73 65 74 20 75 70 20 6c |lock is set up l| 000031d0 69 6b 65 0a 74 68 65 20 73 74 61 6e 64 61 72 64 |ike.the standard| 000031e0 20 77 69 6d 70 20 6f 6e 65 2c 20 62 75 74 20 73 | wimp one, but s| 000031f0 74 61 72 74 69 6e 67 20 61 74 20 79 6f 75 72 20 |tarting at your | 00003200 6d 65 6e 75 2e 20 41 67 61 69 6e 2c 20 72 65 74 |menu. Again, ret| 00003210 75 72 6e 20 61 73 20 71 75 69 63 6b 6c 79 0a 61 |urn as quickly.a| 00003220 73 20 70 6f 73 73 69 62 6c 65 0a 0a 32 20 2d 20 |s possible..2 - | 00003230 53 61 76 65 20 43 6f 6e 66 69 67 20 65 76 65 6e |Save Config even| 00003240 74 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |t.~~~~~~~~~~~~~~| 00003250 7e 7e 7e 7e 7e 7e 7e 0a 0a 45 6e 74 72 79 20 20 |~~~~~~~..Entry | 00003260 3a 0a 20 20 20 20 20 20 20 20 20 4e 6f 6e 65 0a |:. None.| 00003270 45 78 69 74 20 20 20 3a 0a 20 20 20 20 20 20 20 |Exit :. | 00003280 20 20 4e 6f 6e 65 0a 41 63 74 69 6f 6e 20 3a 0a | None.Action :.| 00003290 20 20 20 20 20 20 20 20 20 53 61 76 65 20 79 6f | Save yo| 000032a0 75 72 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e |ur configuration| 000032b0 20 66 69 6c 65 2c 20 69 66 20 79 6f 75 20 68 61 | file, if you ha| 000032c0 76 65 20 6f 6e 65 2e 0a 0a 33 20 2d 20 49 6e 74 |ve one...3 - Int| 000032d0 65 72 61 63 74 69 76 65 20 68 65 6c 70 20 72 65 |eractive help re| 000032e0 71 75 65 73 74 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |quest.~~~~~~~~~~| 000032f0 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |~~~~~~~~~~~~~~~~| 00003300 7e 7e 0a 0a 45 6e 74 72 79 20 20 3a 0a 20 20 20 |~~..Entry :. | 00003310 20 20 20 20 20 20 2b 30 20 77 69 6e 64 6f 77 20 | +0 window | 00003320 68 61 6e 64 6c 65 0a 20 20 20 20 20 20 20 20 20 |handle. | 00003330 2b 34 20 69 63 6f 6e 20 68 61 6e 64 6c 65 0a 45 |+4 icon handle.E| 00003340 78 69 74 20 20 20 3a 0a 20 20 20 20 20 20 20 20 |xit :. | 00003350 20 70 6f 69 6e 74 65 72 20 74 6f 20 68 65 6c 70 | pointer to help| 00003360 20 74 65 78 74 20 62 6c 6f 63 6b 2c 20 6f 72 20 | text block, or | 00003370 30 20 69 66 20 63 61 6e 6e 6f 74 20 68 61 6e 64 |0 if cannot hand| 00003380 6c 65 20 74 68 69 73 20 77 69 6e 64 6f 77 0a 41 |le this window.A| 00003390 63 74 69 6f 6e 20 3a 0a 20 20 20 20 20 20 20 20 |ction :. | 000033a0 20 44 65 74 65 72 6d 69 6e 65 20 77 68 65 74 68 | Determine wheth| 000033b0 65 72 20 74 68 69 73 20 69 73 20 6f 6e 65 20 6f |er this is one o| 000033c0 66 20 79 6f 75 72 20 77 69 6e 64 6f 77 73 20 28 |f your windows (| 000033d0 69 6e 66 6f 20 77 69 6e 64 6f 77 20 69 6e 63 6c |info window incl| 000033e0 75 64 65 64 29 0a 61 6e 64 20 69 66 20 69 74 20 |uded).and if it | 000033f0 69 73 20 72 65 74 75 72 6e 20 70 6f 69 6e 74 69 |is return pointi| 00003400 6e 67 20 74 6f 20 61 20 62 6c 6f 63 6b 20 6f 66 |ng to a block of| 00003410 20 74 65 78 74 20 74 6f 20 64 69 73 70 6c 61 79 | text to display| 00003420 20 69 6e 20 74 68 65 20 68 65 6c 70 0a 77 69 6e | in the help.win| 00003430 64 6f 77 2e 20 20 49 66 20 79 6f 75 20 63 61 6e |dow. If you can| 00003440 6e 6f 74 20 64 65 61 6c 20 77 69 74 68 20 69 74 |not deal with it| 00003450 20 74 68 65 6e 20 72 65 74 75 72 6e 20 77 69 74 | then return wit| 00003460 68 20 30 2e 20 20 59 6f 75 20 73 68 6f 75 6c 64 |h 0. You should| 00003470 20 73 75 70 70 6f 72 74 0a 69 6e 74 65 72 61 63 | support.interac| 00003480 74 69 76 65 20 68 65 6c 70 2c 20 74 6f 20 6d 61 |tive help, to ma| 00003490 6b 65 20 69 74 20 65 61 73 79 20 66 6f 72 20 6e |ke it easy for n| 000034a0 65 77 20 75 73 65 72 73 2e 0a 0a 34 20 2d 20 49 |ew users...4 - I| 000034b0 63 6f 6e 20 73 65 6c 65 63 74 65 64 20 62 79 20 |con selected by | 000034c0 64 6f 75 62 6c 65 20 63 6c 69 63 6b 20 65 76 65 |double click eve| 000034d0 6e 74 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |nt.~~~~~~~~~~~~~| 000034e0 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |~~~~~~~~~~~~~~~~| 000034f0 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a 45 6e 74 72 |~~~~~~~~~~..Entr| 00003500 79 20 20 3a 0a 20 20 20 20 20 20 20 20 20 2b 30 |y :. +0| 00003510 20 20 78 20 70 6f 73 69 74 69 6f 6e 20 6f 66 20 | x position of | 00003520 6d 6f 75 73 65 0a 20 20 20 20 20 20 20 20 20 2b |mouse. +| 00003530 34 20 20 79 20 70 6f 73 69 74 69 6f 6e 20 6f 66 |4 y position of| 00003540 20 6d 6f 75 73 65 0a 20 20 20 20 20 20 20 20 20 | mouse. | 00003550 2b 38 20 20 69 6e 74 65 72 6e 61 6c 20 74 79 70 |+8 internal typ| 00003560 65 0a 20 20 20 20 20 20 20 20 20 2b 31 32 20 66 |e. +12 f| 00003570 69 6c 65 6e 61 6d 65 0a 45 78 69 74 20 20 20 3a |ilename.Exit :| 00003580 0a 20 20 20 20 20 20 20 20 20 4e 6f 6e 65 0a 41 |. None.A| 00003590 63 74 69 6f 6e 20 3a 0a 20 20 20 20 20 20 20 20 |ction :. | 000035a0 20 44 65 74 65 72 6d 69 6e 65 20 77 68 65 74 68 | Determine wheth| 000035b0 65 72 20 74 68 69 73 20 69 73 20 6f 6e 65 20 6f |er this is one o| 000035c0 66 20 79 6f 75 72 20 69 63 6f 6e 73 20 28 62 79 |f your icons (by| 000035d0 20 6c 6f 6f 6b 69 6e 67 20 61 74 20 74 68 65 0a | looking at the.| 000035e0 69 6e 74 65 72 6e 61 6c 20 74 79 70 65 20 6e 75 |internal type nu| 000035f0 6d 62 65 72 29 20 61 6e 64 20 69 66 20 69 74 20 |mber) and if it | 00003600 69 73 20 65 78 65 63 75 74 65 20 61 70 70 72 6f |is execute appro| 00003610 70 72 69 61 74 65 20 63 6f 64 65 20 74 6f 20 64 |priate code to d| 00003620 65 61 6c 20 77 69 74 68 0a 69 74 2c 20 6f 74 68 |eal with.it, oth| 00003630 65 72 77 69 73 65 20 65 78 69 74 2e 0a 41 20 77 |erwise exit..A w| 00003640 6f 72 64 20 6f 66 20 65 78 70 6c 61 6e 61 74 69 |ord of explanati| 00003650 6f 6e 20 2d 20 65 76 65 72 79 20 21 53 74 69 63 |on - every !Stic| 00003660 6b 79 42 72 64 20 69 63 6f 6e 20 68 61 73 20 61 |kyBrd icon has a| 00003670 20 74 79 70 65 20 61 74 74 61 74 63 68 65 64 20 | type attatched | 00003680 74 6f 20 69 74 2e 0a 41 70 70 6c 69 63 61 74 69 |to it..Applicati| 00003690 6f 6e 73 20 61 72 65 20 74 79 70 65 20 30 2c 20 |ons are type 0, | 000036a0 69 63 6f 6e 69 73 65 64 20 77 69 6e 64 6f 77 73 |iconised windows| 000036b0 20 74 79 70 65 20 33 2c 20 63 6f 6d 6d 61 6e 64 | type 3, command| 000036c0 20 69 63 6f 6e 73 20 74 79 70 65 20 34 0a 61 6e | icons type 4.an| 000036d0 64 20 73 6f 20 6f 6e 2e 20 20 49 66 20 79 6f 75 |d so on. If you| 000036e0 20 61 72 65 20 77 61 6e 74 69 6e 67 20 74 6f 20 | are wanting to | 000036f0 77 72 69 74 65 20 61 20 21 53 74 69 63 6b 79 42 |write a !StickyB| 00003700 72 64 20 6d 6f 64 75 6c 65 20 74 68 61 74 20 75 |rd module that u| 00003710 73 65 73 20 69 63 6f 6e 73 0a 6f 6e 20 74 68 65 |ses icons.on the| 00003720 20 64 65 73 6b 74 6f 70 2c 20 77 72 69 74 65 20 | desktop, write | 00003730 74 6f 20 6d 65 20 66 6f 72 20 61 20 69 6e 74 65 |to me for a inte| 00003740 72 6e 61 6c 20 74 79 70 65 20 6e 75 6d 62 65 72 |rnal type number| 00003750 2e 0a 0a 35 20 2d 20 4d 6f 75 73 65 20 63 6c 69 |...5 - Mouse cli| 00003760 63 6b 20 65 76 65 6e 74 0a 7e 7e 7e 7e 7e 7e 7e |ck event.~~~~~~~| 00003770 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a |~~~~~~~~~~~~~~..| 00003780 45 6e 74 72 79 20 20 3a 0a 20 20 20 20 20 20 20 |Entry :. | 00003790 20 20 2b 30 20 77 69 6e 64 6f 77 20 68 61 6e 64 | +0 window hand| 000037a0 6c 65 0a 20 20 20 20 20 20 20 20 20 2b 34 20 69 |le. +4 i| 000037b0 63 6f 6e 20 68 61 6e 64 6c 65 0a 20 20 20 20 20 |con handle. | 000037c0 20 20 20 20 2b 38 20 62 75 74 74 6f 6e 20 74 79 | +8 button ty| 000037d0 70 65 0a 45 78 69 74 20 20 20 3a 0a 20 20 20 20 |pe.Exit :. | 000037e0 20 20 20 20 20 4e 6f 6e 65 0a 41 63 74 69 6f 6e | None.Action| 000037f0 20 3a 0a 20 20 20 20 20 20 20 20 20 44 65 74 65 | :. Dete| 00003800 72 6d 69 6e 65 20 77 68 65 74 68 65 72 20 74 68 |rmine whether th| 00003810 65 20 77 69 6e 64 6f 77 20 69 73 20 6f 6e 65 20 |e window is one | 00003820 6f 66 20 79 6f 75 72 73 2c 20 61 6e 64 20 69 66 |of yours, and if| 00003830 20 69 74 20 69 73 20 63 68 65 63 6b 20 74 68 65 | it is check the| 00003840 0a 69 63 6f 6e 2c 20 6f 74 68 65 72 77 69 73 65 |.icon, otherwise| 00003850 20 65 78 69 74 2e 20 20 54 68 65 20 62 75 74 74 | exit. The butt| 00003860 6f 6e 20 74 79 70 65 20 69 73 20 74 68 65 20 73 |on type is the s| 00003870 74 61 6e 64 61 72 64 20 77 69 6d 70 20 74 79 70 |tandard wimp typ| 00003880 65 20 2d 20 31 20 3d 20 61 64 6a 75 73 74 0a 32 |e - 1 = adjust.2| 00003890 20 3d 20 6d 65 6e 75 2c 20 34 20 3d 20 73 65 6c | = menu, 4 = sel| 000038a0 65 63 74 2e 0a 0a 36 20 2d 20 54 72 61 6e 73 6c |ect...6 - Transl| 000038b0 61 74 65 20 77 69 6e 64 6f 77 20 68 61 6e 64 6c |ate window handl| 000038c0 65 20 74 6f 20 6e 61 6d 65 20 72 65 71 75 65 73 |e to name reques| 000038d0 74 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |t.~~~~~~~~~~~~~~| 000038e0 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |~~~~~~~~~~~~~~~~| 000038f0 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a 45 |~~~~~~~~~~~~~..E| 00003900 6e 74 72 79 20 20 3a 0a 20 20 20 20 20 20 20 20 |ntry :. | 00003910 20 2b 30 20 77 69 6e 64 6f 77 20 68 61 6e 64 6c | +0 window handl| 00003920 65 0a 45 78 69 74 20 20 20 3a 0a 20 20 20 20 20 |e.Exit :. | 00003930 20 20 20 20 70 6f 69 6e 74 65 72 20 74 6f 20 74 | pointer to t| 00003940 65 78 74 2c 20 6f 72 20 30 20 69 66 20 63 61 6e |ext, or 0 if can| 00003950 6e 6f 74 20 68 61 6e 64 6c 65 20 77 69 6e 64 6f |not handle windo| 00003960 77 0a 41 63 74 69 6f 6e 20 3a 0a 20 20 20 20 20 |w.Action :. | 00003970 20 20 20 20 44 65 74 65 72 6d 69 6e 65 20 77 68 | Determine wh| 00003980 65 74 68 65 72 20 74 68 65 20 77 69 6e 64 6f 77 |ether the window| 00003990 20 69 73 20 6f 6e 65 20 6f 66 20 79 6f 75 72 73 | is one of yours| 000039a0 2c 20 69 66 20 69 74 20 69 73 20 72 65 74 75 72 |, if it is retur| 000039b0 6e 0a 70 6f 69 6e 74 69 6e 67 20 74 6f 20 61 20 |n.pointing to a | 000039c0 70 69 65 63 65 20 6f 66 20 74 65 78 74 20 74 6f |piece of text to| 000039d0 20 62 65 20 70 75 74 20 75 6e 64 65 72 20 74 68 | be put under th| 000039e0 65 20 69 63 6f 6e 2e 20 20 54 68 69 73 20 72 65 |e icon. This re| 000039f0 66 65 72 73 2c 20 69 66 0a 79 6f 75 20 68 61 64 |fers, if.you had| 00003a00 20 6e 6f 74 20 67 75 65 73 73 65 64 2c 20 74 6f | not guessed, to| 00003a10 20 61 6e 20 69 63 6f 6e 69 73 65 20 72 65 71 75 | an iconise requ| 00003a20 65 73 74 20 66 72 6f 6d 20 74 68 65 20 75 73 65 |est from the use| 00003a30 72 2e 20 20 59 6f 75 20 73 68 6f 75 6c 64 20 73 |r. You should s| 00003a40 75 70 70 6f 72 74 0a 69 63 6f 6e 69 73 69 6e 67 |upport.iconising| 00003a50 20 61 73 20 73 74 61 6e 64 61 72 64 2e 20 20 49 | as standard. I| 00003a60 66 20 79 6f 75 20 63 61 6e 6e 6f 74 20 68 61 6e |f you cannot han| 00003a70 64 6c 65 20 74 68 65 20 77 69 6e 64 6f 77 20 72 |dle the window r| 00003a80 65 74 75 72 6e 20 77 69 74 68 20 30 0a 0a 37 20 |eturn with 0..7 | 00003a90 2d 20 54 72 61 6e 73 6c 61 74 65 20 6e 61 6d 65 |- Translate name| 00003aa0 20 74 6f 20 68 61 6e 64 6c 65 20 72 65 71 75 65 | to handle reque| 00003ab0 73 74 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |st.~~~~~~~~~~~~~| 00003ac0 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |~~~~~~~~~~~~~~~~| 00003ad0 7e 7e 7e 7e 7e 7e 7e 0a 0a 45 6e 74 72 79 20 20 |~~~~~~~..Entry | 00003ae0 3a 0a 20 20 20 20 20 20 20 20 20 2b 30 20 77 69 |:. +0 wi| 00003af0 6e 64 6f 77 20 6e 61 6d 65 20 61 73 20 67 69 76 |ndow name as giv| 00003b00 65 6e 20 62 79 20 21 53 74 69 63 6b 79 42 72 64 |en by !StickyBrd| 00003b10 20 6f 72 20 6d 6f 64 75 6c 65 20 69 6e 20 70 72 | or module in pr| 00003b20 65 76 69 6f 75 73 20 65 76 65 6e 74 0a 45 78 69 |evious event.Exi| 00003b30 74 20 20 20 3a 0a 20 20 20 20 20 20 20 20 20 77 |t :. w| 00003b40 69 6e 64 6f 77 20 68 61 6e 64 6c 65 20 69 66 20 |indow handle if | 00003b50 63 61 6e 20 64 65 61 6c 20 77 69 74 68 20 69 74 |can deal with it| 00003b60 2c 20 6f 74 68 65 72 77 69 73 65 20 30 0a 41 63 |, otherwise 0.Ac| 00003b70 74 69 6f 6e 20 3a 0a 20 20 20 20 20 20 20 20 20 |tion :. | 00003b80 54 72 79 20 61 6e 64 20 6d 61 74 63 68 20 77 69 |Try and match wi| 00003b90 6e 64 6f 77 20 6e 61 6d 65 20 74 6f 20 74 68 65 |ndow name to the| 00003ba0 20 6f 6e 65 20 67 69 76 65 6e 20 69 6e 20 74 68 | one given in th| 00003bb0 65 20 70 72 65 76 69 6f 75 73 20 65 76 65 6e 74 |e previous event| 00003bc0 2e 20 49 66 0a 79 6f 75 20 63 61 6e 20 64 6f 20 |. If.you can do | 00003bd0 74 68 69 73 20 65 78 69 74 20 77 69 74 68 20 74 |this exit with t| 00003be0 68 65 20 77 69 6e 64 6f 77 20 68 61 6e 64 6c 65 |he window handle| 00003bf0 20 74 6f 20 62 65 20 6f 70 65 6e 65 64 2c 20 6f | to be opened, o| 00003c00 74 68 65 72 77 69 73 65 20 65 78 69 74 20 77 69 |therwise exit wi| 00003c10 74 68 0a 30 2e 0a 0a 38 20 2d 20 47 65 74 20 77 |th.0...8 - Get w| 00003c20 69 6e 64 6f 77 20 77 69 64 74 68 0a 7e 7e 7e 7e |indow width.~~~~| 00003c30 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |~~~~~~~~~~~~~~~~| 00003c40 0a 0a 45 6e 74 72 79 20 20 3a 0a 20 20 20 20 20 |..Entry :. | 00003c50 20 20 20 20 2b 30 20 77 69 6e 64 6f 77 20 6e 61 | +0 window na| 00003c60 6d 65 0a 45 78 69 74 20 20 20 3a 0a 20 20 20 20 |me.Exit :. | 00003c70 20 20 20 20 20 77 69 6e 64 6f 77 20 77 69 64 74 | window widt| 00003c80 68 20 69 66 20 63 61 6e 20 64 65 61 6c 20 77 69 |h if can deal wi| 00003c90 74 68 20 69 74 2c 20 6f 74 68 65 72 77 69 73 65 |th it, otherwise| 00003ca0 20 30 0a 41 63 74 69 6f 6e 20 3a 0a 20 20 20 20 | 0.Action :. | 00003cb0 20 20 20 20 20 54 72 79 20 61 6e 64 20 6d 61 74 | Try and mat| 00003cc0 63 68 20 74 68 65 20 6e 61 6d 65 2e 20 49 66 20 |ch the name. If | 00003cd0 74 68 65 20 77 69 6e 64 6f 77 20 69 73 20 6f 6e |the window is on| 00003ce0 65 20 6f 66 20 79 6f 75 72 73 2c 20 65 78 69 74 |e of yours, exit| 00003cf0 20 77 69 74 68 20 61 0a 6e 75 6d 62 65 72 20 28 | with a.number (| 00003d00 74 68 65 20 77 69 64 74 68 20 6f 66 20 74 68 65 |the width of the| 00003d10 20 77 69 6e 64 6f 77 29 2e 20 20 49 66 20 79 6f | window). If yo| 00003d20 75 20 63 61 6e 6e 6f 74 20 64 65 61 6c 20 77 69 |u cannot deal wi| 00003d30 74 68 20 69 74 2c 20 65 78 69 74 20 77 69 74 68 |th it, exit with| 00003d40 20 30 2e 0a 54 68 65 20 69 6e 66 6f 20 77 69 6e | 0..The info win| 00003d50 64 6f 77 20 77 69 64 74 68 20 69 73 20 36 35 30 |dow width is 650| 00003d60 0a 0a 39 20 2d 20 47 65 74 20 77 69 6e 64 6f 77 |..9 - Get window| 00003d70 20 68 65 69 67 68 74 0a 7e 7e 7e 7e 7e 7e 7e 7e | height.~~~~~~~~| 00003d80 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a 45 |~~~~~~~~~~~~~..E| 00003d90 6e 74 72 79 20 20 3a 0a 20 20 20 20 20 20 20 20 |ntry :. | 00003da0 20 2b 30 20 77 69 6e 64 6f 77 20 6e 61 6d 65 0a | +0 window name.| 00003db0 45 78 69 74 20 20 20 3a 0a 20 20 20 20 20 20 20 |Exit :. | 00003dc0 20 20 77 69 6e 64 6f 77 20 68 65 69 67 68 74 20 | window height | 00003dd0 69 66 20 63 61 6e 20 64 65 61 6c 20 77 69 74 68 |if can deal with| 00003de0 20 69 74 2c 20 6f 74 68 65 72 77 69 73 65 20 30 | it, otherwise 0| 00003df0 0a 41 63 74 69 6f 6e 20 3a 0a 20 20 20 20 20 20 |.Action :. | 00003e00 20 20 20 54 72 79 20 61 6e 64 20 6d 61 74 63 68 | Try and match| 00003e10 20 74 68 65 20 6e 61 6d 65 2c 20 61 73 20 62 65 | the name, as be| 00003e20 66 6f 72 65 2c 20 77 69 74 68 20 61 20 77 69 6e |fore, with a win| 00003e30 64 6f 77 2e 20 20 49 66 20 74 68 65 20 77 69 6e |dow. If the win| 00003e40 64 6f 77 20 69 73 0a 6f 6e 65 20 6f 66 20 79 6f |dow is.one of yo| 00003e50 75 72 73 2c 20 65 78 69 74 20 77 69 74 68 20 74 |urs, exit with t| 00003e60 68 65 20 68 65 69 67 68 74 20 6f 66 20 74 68 65 |he height of the| 00003e70 20 77 69 6e 64 6f 77 2e 20 20 49 66 20 79 6f 75 | window. If you| 00003e80 20 63 61 6e 6e 6f 74 20 64 65 61 6c 20 77 69 74 | cannot deal wit| 00003e90 68 0a 69 74 2c 20 65 78 69 74 20 77 69 74 68 20 |h.it, exit with | 00003ea0 30 2e 0a 54 68 65 20 69 6e 66 6f 20 77 69 6e 64 |0..The info wind| 00003eb0 6f 77 20 68 65 69 67 68 74 20 69 73 20 33 38 30 |ow height is 380| 00003ec0 0a 0a 31 30 20 2d 20 45 6e 64 20 6f 66 20 64 72 |..10 - End of dr| 00003ed0 61 67 20 65 76 65 6e 74 0a 7e 7e 7e 7e 7e 7e 7e |ag event.~~~~~~~| 00003ee0 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a |~~~~~~~~~~~~~~~.| 00003ef0 0a 45 6e 74 72 79 20 20 3a 0a 20 20 20 20 20 20 |.Entry :. | 00003f00 20 20 20 2b 30 20 20 20 69 6e 74 65 72 6e 61 6c | +0 internal| 00003f10 20 74 79 70 65 0a 20 20 20 20 20 20 20 20 20 2b | type. +| 00003f20 34 20 20 20 69 63 6f 6e 20 6e 61 6d 65 0a 20 20 |4 icon name. | 00003f30 20 20 20 20 20 20 20 2b 32 36 30 20 73 61 76 65 | +260 save| 00003f40 20 66 69 6c 65 20 6e 61 6d 65 20 28 74 69 74 6c | file name (titl| 00003f50 65 20 6f 66 20 76 69 65 77 65 72 29 0a 45 78 69 |e of viewer).Exi| 00003f60 74 20 20 20 3a 0a 20 20 20 20 20 20 20 20 20 4e |t :. N| 00003f70 6f 6e 65 0a 41 63 74 69 6f 6e 20 3a 0a 20 20 20 |one.Action :. | 00003f80 20 20 20 20 20 20 44 65 74 65 72 6d 69 6e 65 20 | Determine | 00003f90 77 68 65 74 68 65 72 20 74 68 65 20 69 63 6f 6e |whether the icon| 00003fa0 20 69 73 20 6f 6e 65 20 6f 66 20 79 6f 75 72 73 | is one of yours| 00003fb0 20 28 6c 6f 6f 6b 20 61 74 20 74 68 65 20 69 6e | (look at the in| 00003fc0 74 65 72 6e 61 6c 0a 74 79 70 65 29 20 61 6e 64 |ternal.type) and| 00003fd0 20 74 68 65 6e 20 70 65 72 66 6f 72 6d 20 61 6e | then perform an| 00003fe0 20 61 63 74 69 6f 6e 20 28 69 66 20 79 6f 75 20 | action (if you | 00003ff0 77 61 6e 74 20 74 6f 29 20 6f 6e 20 74 68 65 20 |want to) on the | 00004000 69 63 6f 6e 2e 20 20 54 68 69 73 20 65 76 65 6e |icon. This even| 00004010 74 0a 6f 63 63 6f 75 72 73 20 77 68 65 6e 20 61 |t.occours when a| 00004020 20 64 72 61 67 20 77 69 74 68 20 73 65 6c 65 63 | drag with selec| 00004030 74 20 74 6f 20 73 6f 6d 65 77 68 65 72 65 20 6f |t to somewhere o| 00004040 74 68 65 72 20 74 68 61 6e 20 74 68 65 20 62 61 |ther than the ba| 00004050 63 6b 64 72 6f 70 20 77 69 6e 64 6f 77 0a 68 61 |ckdrop window.ha| 00004060 73 20 74 61 6b 65 6e 20 70 6c 61 63 65 20 2d 20 |s taken place - | 00004070 65 2e 67 2e 20 74 6f 20 61 20 64 69 72 65 63 74 |e.g. to a direct| 00004080 6f 72 79 20 76 69 65 77 65 72 2e 20 20 44 69 72 |ory viewer. Dir| 00004090 43 68 61 6e 67 65 20 75 73 65 73 20 74 68 69 73 |Change uses this| 000040a0 20 65 76 65 6e 74 20 74 6f 0a 63 68 61 6e 67 65 | event to.change| 000040b0 20 74 68 65 20 63 75 72 72 65 6e 74 6c 79 20 73 | the currently s| 000040c0 65 6c 65 63 74 65 64 20 64 69 72 65 63 74 6f 72 |elected director| 000040d0 79 2e 20 2d 20 68 61 76 65 20 61 20 6c 6f 6f 6b |y. - have a look| 000040e0 20 61 74 20 74 68 65 20 63 6f 64 65 2e 20 20 54 | at the code. T| 000040f0 68 65 0a 74 65 78 74 20 61 74 20 62 6c 6f 63 6b |he.text at block| 00004100 2b 34 20 69 73 20 74 68 65 20 6e 61 6d 65 20 6f |+4 is the name o| 00004110 66 20 74 68 65 20 69 63 6f 6e 20 64 72 61 67 67 |f the icon dragg| 00004120 65 64 2c 20 61 6e 64 20 74 68 65 20 74 65 78 74 |ed, and the text| 00004130 20 61 74 20 62 6c 6f 63 6b 2b 32 36 30 0a 69 73 | at block+260.is| 00004140 20 74 68 65 20 66 69 6c 65 6e 61 6d 65 20 72 65 | the filename re| 00004150 74 75 72 6e 65 64 20 66 72 6f 6d 20 62 79 20 74 |turned from by t| 00004160 68 65 20 74 61 73 6b 20 74 68 65 20 69 63 6f 6e |he task the icon| 00004170 20 77 61 73 20 64 72 61 67 67 65 64 20 74 6f 2e | was dragged to.| 00004180 0a 0a 31 31 20 2d 20 49 63 6f 6e 20 64 72 61 67 |..11 - Icon drag| 00004190 67 65 64 20 74 6f 20 21 53 74 69 63 6b 79 42 72 |ged to !StickyBr| 000041a0 64 20 28 4d 65 73 73 61 67 65 5f 44 61 74 61 4c |d (Message_DataL| 000041b0 6f 61 64 29 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |oad).~~~~~~~~~~~| 000041c0 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |~~~~~~~~~~~~~~~~| * 000041e0 7e 7e 7e 7e 7e 7e 0a 0a 45 6e 74 72 79 20 20 3a |~~~~~~..Entry :| 000041f0 0a 20 20 20 20 20 20 20 20 20 2b 30 20 77 69 6e |. +0 win| 00004200 64 6f 77 20 68 61 6e 64 6c 65 0a 20 20 20 20 20 |dow handle. | 00004210 20 20 20 20 2b 34 20 69 63 6f 6e 20 68 61 6e 64 | +4 icon hand| 00004220 6c 65 0a 20 20 20 20 20 20 20 20 20 2b 38 20 6e |le. +8 n| 00004230 61 6d 65 20 6f 66 20 66 69 6c 65 20 64 72 61 67 |ame of file drag| 00004240 67 65 64 0a 45 78 69 74 20 20 20 3a 0a 20 20 20 |ged.Exit :. | 00004250 20 20 20 20 20 20 4e 6f 6e 65 0a 41 63 74 69 6f | None.Actio| 00004260 6e 20 3a 0a 20 20 20 20 20 20 20 20 20 44 65 74 |n :. Det| 00004270 65 72 6d 69 6e 65 20 77 68 65 74 68 65 72 20 74 |ermine whether t| 00004280 68 65 20 77 69 6e 64 6f 77 20 69 73 20 6f 6e 65 |he window is one| 00004290 20 6f 66 20 79 6f 75 72 73 20 61 6e 64 20 69 66 | of yours and if| 000042a0 20 69 74 20 69 73 20 65 78 65 63 75 74 65 0a 74 | it is execute.t| 000042b0 68 65 20 63 6f 64 65 20 74 6f 20 64 65 61 6c 20 |he code to deal | 000042c0 77 69 74 68 20 69 74 2c 20 69 66 20 61 6e 79 2e |with it, if any.| 000042d0 0a 0a 31 32 20 2d 20 44 65 6c 65 74 65 20 69 63 |..12 - Delete ic| 000042e0 6f 6e 20 72 65 71 75 65 73 74 0a 7e 7e 7e 7e 7e |on request.~~~~~| 000042f0 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |~~~~~~~~~~~~~~~~| 00004300 7e 7e 7e 0a 0a 45 6e 74 72 79 20 20 3a 0a 20 20 |~~~..Entry :. | 00004310 20 20 20 20 20 20 20 2b 30 20 69 63 6f 6e 20 68 | +0 icon h| 00004320 61 6e 64 6c 65 0a 20 20 20 20 20 20 20 20 20 2b |andle. +| 00004330 34 20 69 6e 74 65 72 6e 61 6c 20 74 79 70 65 0a |4 internal type.| 00004340 45 78 69 74 20 20 20 3a 20 0a 20 20 20 20 20 20 |Exit : . | 00004350 20 20 20 4e 6f 6e 65 0a 41 63 74 69 6f 6e 20 3a | None.Action :| 00004360 0a 20 20 20 20 20 20 20 20 20 44 65 74 65 72 6d |. Determ| 00004370 69 6e 65 20 77 68 65 74 68 65 72 20 74 68 65 20 |ine whether the | 00004380 69 63 6f 6e 20 69 73 20 6f 6e 65 20 6f 66 20 79 |icon is one of y| 00004390 6f 75 72 73 2c 20 61 6e 64 20 69 66 20 69 74 20 |ours, and if it | 000043a0 69 73 20 64 65 6c 65 74 65 0a 69 74 20 77 69 74 |is delete.it wit| 000043b0 68 20 6d 6f 64 6c 5f 69 6e 74 65 72 66 61 63 65 |h modl_interface| 000043c0 20 73 65 74 20 74 6f 20 35 2e 20 20 52 65 63 6f | set to 5. Reco| 000043d0 6d 6d 65 6e 64 65 64 20 63 6f 64 65 20 74 6f 20 |mmended code to | 000043e0 64 6f 20 74 68 69 73 20 69 73 3a 0a 0a 78 78 20 |do this is:..xx | 000043f0 70 6f 69 6e 74 65 72 25 21 30 3d 3c 69 63 6f 6e |pointer%!0=<icon| 00004400 20 68 61 6e 64 6c 65 3e 0a 78 78 20 64 75 6d 6d | handle>.xx dumm| 00004410 79 3d 46 4e 6d 6f 64 6c 5f 69 6e 74 65 72 66 61 |y=FNmodl_interfa| 00004420 63 65 28 35 2c 70 6f 69 6e 74 65 72 25 29 0a 0a |ce(5,pointer%)..| 00004430 49 66 20 79 6f 75 20 68 61 76 65 20 61 6e 20 69 |If you have an i| 00004440 74 65 6d 20 6f 6e 20 61 20 6d 65 6e 75 2c 20 73 |tem on a menu, s| 00004450 61 79 2c 20 74 68 65 6e 20 64 6f 6e 27 74 20 66 |ay, then don't f| 00004460 6f 72 67 65 74 20 74 6f 20 66 6c 61 67 20 69 74 |orget to flag it| 00004470 20 61 63 63 6f 72 64 69 6e 67 6c 79 2e 0a 0a 31 | accordingly...1| 00004480 33 20 2d 20 21 53 74 69 63 6b 79 42 72 64 20 71 |3 - !StickyBrd q| 00004490 75 69 74 74 69 6e 67 20 65 76 65 6e 74 0a 7e 7e |uitting event.~~| 000044a0 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |~~~~~~~~~~~~~~~~| 000044b0 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a 45 6e 74 |~~~~~~~~~~~..Ent| 000044c0 72 79 20 20 3a 0a 20 a0 20 20 20 20 20 20 20 4e |ry :. . N| 000044d0 6f 6e 65 0a 45 78 69 74 20 20 20 3a 0a 20 20 20 |one.Exit :. | 000044e0 20 20 20 20 20 20 4e 6f 6e 65 0a 41 63 74 69 6f | None.Actio| 000044f0 6e 20 3a 0a 20 20 20 20 20 20 20 20 20 49 20 63 |n :. I c| 00004500 61 6e 6e 6f 74 20 73 65 65 20 61 20 75 73 65 20 |annot see a use | 00004510 66 6f 72 20 74 68 69 73 20 70 6f 6c 6c 20 63 6f |for this poll co| 00004520 64 65 20 62 75 74 20 74 68 61 74 20 69 73 20 6e |de but that is n| 00004530 6f 74 20 74 6f 20 73 61 79 20 74 68 61 74 0a 73 |ot to say that.s| 00004540 6f 6d 65 6f 6e 65 20 65 6c 73 65 20 63 61 6e 27 |omeone else can'| 00004550 74 2e 20 20 52 65 74 75 72 6e 20 61 73 20 71 75 |t. Return as qu| 00004560 69 63 6b 6c 79 20 61 73 20 70 6f 73 73 69 62 6c |ickly as possibl| 00004570 65 20 61 73 20 74 68 65 20 75 73 65 72 20 64 6f |e as the user do| 00004580 65 73 6e 27 74 20 77 61 6e 74 0a 74 6f 20 62 65 |esn't want.to be| 00004590 20 6b 65 70 74 20 77 61 69 74 69 6e 67 2e 20 20 | kept waiting. | 000045a0 54 68 69 73 20 65 76 65 6e 74 20 6f 63 63 6f 75 |This event occou| 000045b0 72 73 20 77 68 65 6e 20 74 68 65 20 75 73 65 72 |rs when the user| 000045c0 20 63 6c 69 63 6b 73 20 51 75 69 74 20 66 72 6f | clicks Quit fro| 000045d0 6d 20 65 69 74 68 65 72 0a 74 68 65 20 6d 61 69 |m either.the mai| 000045e0 6e 20 6d 65 6e 75 20 6f 72 20 74 68 65 20 74 61 |n menu or the ta| 000045f0 73 6b 20 6d 61 6e 61 67 65 72 2c 20 6f 72 20 61 |sk manager, or a| 00004600 6e 20 65 72 72 6f 72 20 6f 63 63 6f 75 72 73 20 |n error occours | 00004610 61 6e 64 20 74 68 65 20 75 73 65 72 20 77 61 6e |and the user wan| 00004620 74 73 20 74 6f 0a 71 75 69 74 2e 0a 0a 31 34 20 |ts to.quit...14 | 00004630 2d 20 52 65 64 72 61 77 20 72 65 71 75 65 73 74 |- Redraw request| 00004640 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |.~~~~~~~~~~~~~~~| 00004650 7e 7e 7e 7e 0a 0a 45 6e 74 72 79 20 20 3a 0a 20 |~~~~..Entry :. | 00004660 20 20 20 20 20 20 20 20 53 74 61 6e 64 61 72 64 | Standard| 00004670 20 77 69 6d 70 20 72 65 64 72 61 77 20 62 6c 6f | wimp redraw blo| 00004680 63 6b 0a 45 78 69 74 20 20 20 3a 0a 20 20 20 20 |ck.Exit :. | 00004690 20 20 20 20 20 4e 6f 6e 65 0a 41 63 74 69 6f 6e | None.Action| 000046a0 20 3a 0a 20 20 20 20 20 20 20 20 20 4f 6e 6c 79 | :. Only| 000046b0 20 62 6f 74 68 65 72 20 77 69 74 68 20 74 68 69 | bother with thi| 000046c0 73 20 70 6f 6c 6c 20 63 6f 64 65 20 69 66 20 79 |s poll code if y| 000046d0 6f 75 20 68 61 76 65 20 73 6f 6d 74 68 69 6e 67 |ou have somthing| 000046e0 20 74 6f 20 72 65 64 72 61 77 20 74 68 61 74 0a | to redraw that.| 000046f0 63 61 6e 6e 6f 74 20 62 65 20 64 6f 6e 65 20 62 |cannot be done b| 00004700 79 20 21 53 74 69 63 6b 79 42 72 64 20 69 74 73 |y !StickyBrd its| 00004710 65 6c 66 2e 20 20 49 66 20 79 6f 75 20 61 72 65 |elf. If you are| 00004720 20 75 73 69 6e 67 20 74 68 65 20 69 6e 74 65 72 | using the inter| 00004730 66 61 63 65 20 6d 61 6e 61 67 65 72 0a 62 79 20 |face manager.by | 00004740 53 69 6d 6f 6e 20 48 75 6e 74 69 6e 67 64 6f 6e |Simon Huntingdon| 00004750 20 28 74 68 6f 72 6f 75 67 68 6c 79 20 72 65 63 | (thoroughly rec| 00004760 6f 6d 6d 65 6e 64 65 64 29 20 79 6f 75 20 64 6f |ommended) you do| 00004770 20 6e 6f 74 20 6e 65 65 64 20 74 6f 20 69 73 73 | not need to iss| 00004780 75 65 20 61 6e 0a 49 6e 74 65 72 66 61 63 65 5f |ue an.Interface_| 00004790 42 6f 72 64 65 72 33 64 57 69 6e 64 6f 77 20 53 |Border3dWindow S| 000047a0 57 49 20 61 73 20 74 68 69 73 20 69 73 20 64 6f |WI as this is do| 000047b0 6e 65 20 61 6e 79 77 61 79 2e 20 20 41 63 74 75 |ne anyway. Actu| 000047c0 61 6c 6c 79 2c 20 74 6f 20 6b 65 65 70 20 61 0a |ally, to keep a.| 000047d0 75 6e 69 66 6f 72 6d 20 61 70 70 65 61 72 61 6e |uniform appearan| 000047e0 63 65 2c 20 49 20 77 6f 75 6c 64 20 73 75 67 67 |ce, I would sugg| 000047f0 65 73 74 20 79 6f 75 20 64 6f 20 75 73 65 20 49 |est you do use I| 00004800 6e 74 65 72 66 61 63 65 2e 20 20 54 6f 20 75 73 |nterface. To us| 00004810 65 20 69 74 2c 20 73 65 74 0a 74 68 65 20 76 61 |e it, set.the va| 00004820 6c 69 64 61 74 69 6f 6e 20 73 74 72 69 6e 67 20 |lidation string | 00004830 6f 66 20 61 20 69 6e 64 69 72 65 63 74 65 64 20 |of a indirected | 00004840 69 63 6f 6e 20 74 6f 20 65 69 74 68 65 72 3a 0a |icon to either:.| 00004850 0a 20 7a 30 20 20 20 20 52 61 69 73 65 64 20 69 |. z0 Raised i| 00004860 63 6f 6e 0a 20 7a 31 20 20 20 20 47 72 6f 75 70 |con. z1 Group| 00004870 69 6e 67 20 69 63 6f 6e 0a 20 7a 32 20 20 20 20 |ing icon. z2 | 00004880 44 65 66 61 75 6c 74 20 61 63 74 69 6f 6e 0a 20 |Default action. | 00004890 7a 33 20 20 20 20 57 72 69 74 61 62 6c 65 20 69 |z3 Writable i| 000048a0 63 6f 6e 0a 0a 54 68 65 72 65 20 61 72 65 2c 20 |con..There are, | 000048b0 6f 66 20 63 6f 75 72 73 65 2c 20 6d 6f 72 65 20 |of course, more | 000048c0 74 79 70 65 73 20 2d 20 73 65 65 20 53 69 6d 6f |types - see Simo| 000048d0 6e 27 73 20 73 65 70 65 72 65 61 74 65 20 64 6f |n's sepereate do| 000048e0 63 75 6d 65 6e 74 61 74 69 6f 6e 2e 0a 0a 31 35 |cumentation...15| 000048f0 20 2d 20 43 6c 65 61 72 20 41 6c 6c 20 72 65 71 | - Clear All req| 00004900 75 65 73 74 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |uest.~~~~~~~~~~~| 00004910 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a 45 6e 74 |~~~~~~~~~~~..Ent| 00004920 72 79 20 20 3a 0a 20 20 20 20 20 20 20 20 20 2b |ry :. +| 00004930 30 20 63 6c 65 61 72 20 74 79 70 65 0a 20 20 20 |0 clear type. | 00004940 20 20 20 20 20 20 2b 34 20 64 65 73 6b 74 6f 70 | +4 desktop| 00004950 20 66 69 6c 65 20 74 6f 20 62 65 20 6c 6f 61 64 | file to be load| 00004960 65 64 20 28 69 66 20 63 6c 65 61 72 20 74 79 70 |ed (if clear typ| 00004970 65 3d 31 29 0a 45 78 69 74 20 20 20 3a 0a 20 20 |e=1).Exit :. | 00004980 20 20 20 20 20 20 20 4e 6f 6e 65 0a 41 63 74 69 | None.Acti| 00004990 6f 6e 20 3a 0a 20 20 20 20 20 20 20 20 20 59 6f |on :. Yo| 000049a0 75 20 73 68 6f 75 6c 64 20 63 6c 65 61 72 20 61 |u should clear a| 000049b0 6c 6c 20 6f 66 20 79 6f 75 72 20 69 63 6f 6e 73 |ll of your icons| 000049c0 20 6f 6e 20 74 68 65 20 64 65 73 6b 74 6f 70 20 | on the desktop | 000049d0 61 73 20 65 69 74 68 65 72 3a 0a 20 2a 2a 20 54 |as either:. ** T| 000049e0 68 65 20 75 73 65 72 20 68 61 73 20 63 6c 69 63 |he user has clic| 000049f0 6b 65 64 20 43 6c 65 61 72 20 41 6c 6c 20 6f 6e |ked Clear All on| 00004a00 20 74 68 65 20 6d 65 6e 75 20 28 63 6c 65 61 72 | the menu (clear| 00004a10 20 74 79 70 65 20 3d 20 30 29 0a 20 2a 2a 20 54 | type = 0). ** T| 00004a20 68 65 20 75 73 65 72 20 77 61 6e 74 73 20 74 6f |he user wants to| 00004a30 20 6c 6f 61 64 20 61 20 6e 65 77 20 64 65 73 6b | load a new desk| 00004a40 74 6f 70 20 20 20 20 20 20 20 28 63 6c 65 61 72 |top (clear| 00004a50 20 74 79 70 65 20 3d 20 31 29 0a 49 66 20 74 68 | type = 1).If th| 00004a60 65 20 75 73 65 72 20 69 73 20 6c 6f 61 64 69 6e |e user is loadin| 00004a70 67 20 61 20 64 65 73 6b 74 6f 70 20 28 74 68 69 |g a desktop (thi| 00004a80 73 20 69 73 20 69 73 73 75 65 64 20 62 65 66 6f |s is issued befo| 00004a90 72 65 20 74 68 65 20 64 65 73 6b 74 6f 70 20 68 |re the desktop h| 00004aa0 61 73 20 62 65 65 6e 0a 6c 6f 61 64 65 64 29 20 |as been.loaded) | 00004ab0 74 68 65 6e 20 62 6c 6f 63 6b 2b 34 20 70 6f 69 |then block+4 poi| 00004ac0 6e 74 73 20 74 6f 20 74 68 65 20 66 69 6c 65 6e |nts to the filen| 00004ad0 61 6d 65 2e 0a 52 65 63 6f 6d 6d 65 6e 64 65 64 |ame..Recommended| 00004ae0 20 63 6f 64 65 20 74 6f 20 64 65 6c 65 74 65 20 | code to delete | 00004af0 61 6c 6c 20 69 63 6f 6e 73 20 6f 66 20 61 20 70 |all icons of a p| 00004b00 61 72 74 69 63 75 6c 61 72 20 74 79 70 65 20 69 |articular type i| 00004b10 73 3a 0a 0a 78 78 20 52 45 50 45 41 54 3a 70 6f |s:..xx REPEAT:po| 00004b20 69 6e 74 65 72 25 21 30 3d 3c 69 6e 74 65 72 6e |inter%!0=<intern| 00004b30 61 6c 20 74 79 70 65 29 0a 78 78 20 65 78 69 73 |al type).xx exis| 00004b40 74 73 25 3d 46 4e 6d 6f 64 6c 5f 69 6e 74 65 72 |ts%=FNmodl_inter| 00004b50 66 61 63 65 28 31 31 2c 70 6f 69 6e 74 65 72 25 |face(11,pointer%| 00004b60 29 0a 78 78 20 49 46 20 65 78 69 73 74 73 25 3e |).xx IF exists%>| 00004b70 30 20 54 48 45 4e 0a 78 78 20 20 70 6f 69 6e 74 |0 THEN.xx point| 00004b80 65 72 25 21 30 3d 65 78 69 73 74 73 25 0a 78 78 |er%!0=exists%.xx| 00004b90 20 20 64 75 6d 6d 79 3d 46 4e 6d 6f 64 6c 5f 69 | dummy=FNmodl_i| 00004ba0 6e 74 65 72 66 61 63 65 28 35 2c 70 6f 69 6e 74 |nterface(5,point| 00004bb0 65 72 25 29 0a 78 78 20 45 4e 44 49 46 0a 78 78 |er%).xx ENDIF.xx| 00004bc0 20 55 4e 54 49 4c 20 65 78 69 73 74 73 25 3d 30 | UNTIL exists%=0| 00004bd0 0a 0a 31 36 20 2d 20 44 65 73 6b 74 6f 70 20 68 |..16 - Desktop h| 00004be0 61 73 20 62 65 65 6e 20 6c 6f 61 64 65 64 20 65 |as been loaded e| 00004bf0 76 65 6e 74 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |vent.~~~~~~~~~~~| 00004c00 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |~~~~~~~~~~~~~~~~| 00004c10 7e 7e 7e 7e 7e 7e 7e 0a 0a 45 6e 74 72 79 20 20 |~~~~~~~..Entry | 00004c20 3a 0a 20 20 20 20 20 20 20 20 20 4e 6f 6e 65 0a |:. None.| 00004c30 45 78 69 74 20 20 20 3a 0a 20 20 20 20 20 20 20 |Exit :. | 00004c40 20 20 4e 6f 6e 65 0a 41 63 74 69 6f 6e 20 3a 0a | None.Action :.| 00004c50 20 20 20 20 20 20 20 20 20 52 65 61 6c 6c 79 20 | Really | 00004c60 64 65 70 65 6e 64 73 20 6f 6e 20 77 68 61 74 20 |depends on what | 00004c70 79 6f 75 72 20 6d 6f 64 75 6c 65 20 64 6f 65 73 |your module does| 00004c80 2e 0a 0a 0a 4d 6f 64 75 6c 65 20 69 6e 74 65 72 |....Module inter| 00004c90 66 61 63 65 20 73 79 73 74 65 6d 0a 7e 7e 7e 7e |face system.~~~~| 00004ca0 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |~~~~~~~~~~~~~~~~| 00004cb0 7e 7e 7e 0a 0a 53 6f 20 66 61 72 20 74 68 65 20 |~~~..So far the | 00004cc0 64 69 61 6c 6f 67 75 65 20 68 61 73 20 6f 6e 6c |dialogue has onl| 00004cd0 79 20 62 65 65 6e 20 6f 6e 65 20 77 61 79 20 77 |y been one way w| 00004ce0 69 74 68 20 21 53 74 69 63 6b 79 42 72 64 20 74 |ith !StickyBrd t| 00004cf0 65 6c 6c 69 6e 67 20 75 73 20 77 68 61 74 20 68 |elling us what h| 00004d00 61 73 0a 68 61 70 70 65 6e 65 64 2e 20 20 57 65 |as.happened. We| 00004d10 20 6e 65 65 64 20 61 20 77 61 79 20 6f 66 20 74 | need a way of t| 00004d20 65 6c 6c 69 6e 67 20 21 53 74 69 63 6b 79 42 72 |elling !StickyBr| 00004d30 64 20 74 6f 20 64 6f 20 74 68 69 6e 67 73 20 66 |d to do things f| 00004d40 6f 72 20 75 73 2e 20 20 57 65 20 63 61 6e 0a 65 |or us. We can.e| 00004d50 69 74 68 65 72 20 75 73 65 20 21 53 74 69 63 6b |ither use !Stick| 00004d60 79 42 72 64 27 73 20 6f 77 6e 20 72 6f 75 74 69 |yBrd's own routi| 00004d70 6e 65 73 20 2d 20 74 68 65 73 65 20 6d 61 79 20 |nes - these may | 00004d80 6e 6f 74 20 62 65 20 73 75 70 70 6f 72 74 65 64 |not be supported| 00004d90 20 6f 6e 20 66 75 74 75 72 65 0a 76 65 72 73 69 | on future.versi| 00004da0 6f 6e 73 2c 20 62 75 74 20 61 72 65 20 73 6c 69 |ons, but are sli| 00004db0 67 68 74 6c 79 20 66 61 73 74 65 72 20 2d 20 6f |ghtly faster - o| 00004dc0 72 20 77 65 20 63 61 6e 20 75 73 65 20 21 53 74 |r we can use !St| 00004dd0 69 63 6b 79 42 72 64 27 73 20 62 75 69 6c 74 20 |ickyBrd's built | 00004de0 69 6e 0a 69 6e 74 65 72 66 61 63 65 20 72 6f 75 |in.interface rou| 00004df0 74 69 6e 65 73 2e 20 20 54 68 65 73 65 20 61 72 |tines. These ar| 00004e00 65 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 |e guaranteed to | 00004e10 62 65 20 73 75 70 70 6f 72 74 65 64 20 6f 6e 20 |be supported on | 00004e20 66 75 74 75 72 65 20 76 65 72 73 69 6f 6e 73 0a |future versions.| 00004e30 73 6f 20 79 6f 75 72 20 6d 6f 64 75 6c 65 20 77 |so your module w| 00004e40 69 6c 6c 20 61 6c 77 61 79 73 20 77 6f 72 6b 2e |ill always work.| 00004e50 0a 0a 49 6e 74 65 72 66 61 63 65 20 72 6f 75 74 |..Interface rout| 00004e60 69 6e 65 73 20 63 75 72 72 65 6e 74 6c 79 20 73 |ines currently s| 00004e70 75 70 70 6f 72 74 65 64 20 61 72 65 3a 0a 0a 20 |upported are:.. | 00004e80 20 20 20 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f | _____________| 00004e90 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00004ec0 5f 5f 5f 5f 5f 5f 5f 5f 5f 0a 20 20 20 2f 20 20 |_________. / | 00004ed0 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 20 | | | 00004ee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | || 00004ef0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00004f10 20 20 20 20 5c 0a 20 20 2f 20 20 20 20 20 20 20 | \. / | 00004f20 20 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 | | | 00004f30 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 | | | 00004f40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00004f60 20 5c 0a 20 7c 20 49 6e 74 65 72 66 61 63 65 20 | \. | Interface | 00004f70 63 6f 64 65 20 7c 20 44 65 73 63 72 69 70 74 69 |code | Descripti| 00004f80 6f 6e 20 20 20 20 20 20 7c 20 50 61 72 61 6d 65 |on | Parame| 00004f90 74 65 72 73 20 70 61 73 73 65 64 20 69 6e 20 70 |ters passed in p| 00004fa0 61 72 61 6d 65 74 65 72 20 62 6c 6f 63 6b 20 7c |arameter block || 00004fb0 0a 20 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |. |_____________| 00004fc0 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |___|____________| 00004fd0 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f |______|_________| 00004fe0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| 00004ff0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 0a 20 |_____________|. | 00005000 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 || | 00005010 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | | 00005020 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 20 | | | 00005030 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00005040 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 7c 20 | |. | | 00005050 20 20 20 20 20 20 30 20 20 20 20 20 20 20 20 7c | 0 || 00005060 20 46 61 74 61 6c 20 65 72 72 6f 72 20 20 20 20 | Fatal error | 00005070 20 20 7c 20 2b 30 20 65 72 72 6f 72 20 74 65 78 | | +0 error tex| 00005080 74 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |t | 00005090 20 20 20 20 20 20 20 20 20 7c 0a 20 7c 5f 5f 5f | |. |___| 000050a0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f |_____________|__| 000050b0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| 000050c0 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f ||_______________| 000050d0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| 000050e0 5f 5f 5f 5f 5f 5f 5f 7c 0a 20 7c 20 20 20 20 20 |_______|. | | 000050f0 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 | | | 00005100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 | | | 00005110 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00005130 20 20 20 20 20 7c 0a 20 7c 20 20 20 20 20 20 20 | |. | | 00005140 31 20 20 20 20 20 20 20 20 7c 20 4e 6f 6e 2d 66 |1 | Non-f| 00005150 61 74 61 6c 20 65 72 72 6f 72 20 20 7c 20 2b 30 |atal error | +0| 00005160 20 65 72 72 6f 72 20 74 65 78 74 20 20 20 20 20 | error text | 00005170 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00005180 20 20 20 7c 0a 20 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f | |. |_________| 00005190 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f |_______|________| 000051a0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f |__________|_____| 000051b0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 000051d0 5f 7c 0a 20 7c 20 20 20 20 20 20 20 20 20 20 20 |_|. | | 000051e0 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 | | | 000051f0 20 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 | | | 00005200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00005210 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | || 00005220 0a 20 7c 20 20 20 20 20 20 20 32 20 20 20 20 20 |. | 2 | 00005230 20 20 20 7c 20 52 65 64 72 61 77 20 62 61 63 6b | | Redraw back| 00005240 67 72 6f 75 6e 64 7c 20 4e 6f 74 20 61 70 70 6c |ground| Not appl| 00005250 69 63 61 62 6c 65 20 20 20 20 20 20 20 20 20 20 |icable | 00005260 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 | |. | 00005270 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f ||_______________| 00005280 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |_|______________| 00005290 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |____|___________| 000052a0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| 000052b0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 0a 20 7c 20 |___________|. | | 000052c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | || 000052d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000052e0 20 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 | | | 000052f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00005300 20 20 20 20 20 20 20 20 20 7c 0a 20 7c 20 20 20 | |. | | 00005310 20 20 20 20 33 20 20 20 20 20 20 20 20 7c 20 52 | 3 | R| 00005320 65 74 75 72 6e 20 62 61 63 6b 64 72 6f 70 20 20 |eturn backdrop | 00005330 7c 20 4f 6e 20 72 65 74 75 72 6e 2c 20 20 20 20 || On return, | 00005340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00005350 20 20 20 20 20 20 20 7c 0a 20 7c 20 20 20 20 20 | |. | | 00005360 20 20 20 20 20 20 20 20 20 20 20 7c 20 66 6c 61 | | fla| 00005370 67 73 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 |gs | | 00005380 2b 30 20 6c 6f 61 64 65 64 2f 6e 6f 74 20 6c 6f |+0 loaded/not lo| 00005390 61 64 65 64 20 20 20 20 20 20 20 20 20 20 20 20 |aded | 000053a0 20 20 20 20 20 7c 0a 20 7c 20 20 20 20 20 20 20 | |. | | 000053b0 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 | | | 000053c0 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 2b 34 | | +4| 000053d0 20 74 69 6c 65 64 2f 63 65 6e 74 72 65 64 20 20 | tiled/centred | 000053e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000053f0 20 20 20 7c 0a 20 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f | |. |_________| 00005400 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f |_______|________| 00005410 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f |__________|_____| 00005420 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00005440 5f 7c 0a 20 7c 20 20 20 20 20 20 20 20 20 20 20 |_|. | | 00005450 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 | | | 00005460 20 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 | | | 00005470 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00005480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | || 00005490 0a 20 7c 20 20 20 20 20 20 20 34 20 20 20 20 20 |. | 4 | 000054a0 20 20 20 7c 20 50 6c 61 63 65 20 69 74 65 6d 20 | | Place item | 000054b0 6f 6e 20 20 20 20 7c 20 2b 30 20 20 73 70 72 69 |on | +0 spri| 000054c0 74 65 20 6e 61 6d 65 20 20 20 20 20 20 20 20 20 |te name | 000054d0 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 | |. | 000054e0 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 || | 000054f0 20 7c 20 64 65 73 6b 74 6f 70 20 20 20 20 20 20 | | desktop | 00005500 20 20 20 20 7c 20 2b 31 32 20 69 63 6f 6e 20 6e | | +12 icon n| 00005510 61 6d 65 20 28 66 69 6c 65 6e 61 6d 65 29 20 20 |ame (filename) | 00005520 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 7c 20 | |. | | 00005530 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | || 00005540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00005550 20 20 7c 20 2b 32 34 20 78 20 63 6f 2d 6f 72 64 | | +24 x co-ord| 00005560 69 6e 61 74 65 20 20 20 20 20 20 20 20 20 20 20 |inate | 00005570 20 20 20 20 20 20 20 20 20 7c 0a 20 7c 20 20 20 | |. | | 00005580 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 | | | 00005590 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000055a0 7c 20 2b 32 38 20 79 20 63 6f 2d 6f 72 64 69 6e || +28 y co-ordin| 000055b0 61 74 65 20 20 20 20 20 20 20 20 20 20 20 20 20 |ate | 000055c0 20 20 20 20 20 20 20 7c 0a 20 7c 20 20 20 20 20 | |. | | 000055d0 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 | | | 000055e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 | | | 000055f0 2b 33 32 20 69 6e 74 65 72 6e 61 6c 20 74 79 70 |+32 internal typ| 00005600 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |e | 00005610 20 20 20 20 20 7c 0a 20 7c 20 20 20 20 20 20 20 | |. | | 00005620 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 | | | 00005630 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 2b 33 | | +3| 00005640 36 20 75 73 65 20 6c 61 73 74 20 62 69 74 20 20 |6 use last bit | 00005650 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00005660 20 20 20 7c 0a 20 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f | |. |_________| 00005670 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f |_______|________| 00005680 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f |__________|_____| 00005690 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 000056b0 5f 7c 0a 20 7c 20 20 20 20 20 20 20 20 20 20 20 |_|. | | 000056c0 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 | | | 000056d0 20 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 | | | 000056e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000056f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | || 00005700 0a 20 7c 20 20 20 20 20 20 20 35 20 20 20 20 20 |. | 5 | 00005710 20 20 20 7c 20 44 65 6c 65 74 65 20 69 63 6f 6e | | Delete icon| 00005720 20 20 20 20 20 20 7c 20 2b 30 20 69 63 6f 6e 20 | | +0 icon | 00005730 68 61 6e 64 6c 65 20 20 20 20 20 20 20 20 20 20 |handle | 00005740 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 | |. | 00005750 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f ||_______________| 00005760 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |_|______________| 00005770 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |____|___________| 00005780 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| 00005790 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 0a 20 7c 20 |___________|. | | 000057a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | || 000057b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000057c0 20 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 | | | 000057d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000057e0 20 20 20 20 20 20 20 20 20 7c 0a 20 7c 20 20 20 | |. | | 000057f0 20 20 20 20 36 20 20 20 20 20 20 20 20 7c 20 4f | 6 | O| 00005800 70 65 6e 20 6d 61 69 6e 20 6d 65 6e 75 20 20 20 |pen main menu | 00005810 7c 20 2b 30 20 78 20 63 6f 2d 6f 72 64 69 6e 61 || +0 x co-ordina| 00005820 74 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |te | 00005830 20 20 20 20 20 20 20 7c 0a 20 7c 20 20 20 20 20 | |. | | 00005840 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 | | | 00005850 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 | | | 00005860 2b 34 20 79 20 63 6f 2d 6f 72 64 69 6e 61 74 65 |+4 y co-ordinate| 00005870 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00005880 20 20 20 20 20 7c 0a 20 7c 5f 5f 5f 5f 5f 5f 5f | |. |_______| 00005890 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f |_________|______| 000058a0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f |____________|___| 000058b0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 000058d0 5f 5f 5f 7c 0a 20 7c 20 20 20 20 20 20 20 20 20 |___|. | | 000058e0 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 | | | 000058f0 20 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 20 | | | 00005900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00005920 20 7c 0a 20 7c 20 20 20 20 20 20 20 37 20 20 20 | |. | 7 | 00005930 20 20 20 20 20 7c 20 43 72 65 61 74 65 20 64 72 | | Create dr| 00005940 61 67 20 20 20 20 20 20 7c 20 2b 30 20 69 63 6f |ag | +0 ico| 00005950 6e 20 74 6f 20 75 73 65 20 66 6f 72 20 64 72 61 |n to use for dra| 00005960 67 20 62 6f 78 20 20 20 20 20 20 20 20 20 20 7c |g box || 00005970 0a 20 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |. |_____________| 00005980 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |___|____________| 00005990 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f |______|_________| 000059a0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| 000059b0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 0a 20 |_____________|. | 000059c0 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 || | 000059d0 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | | 000059e0 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 20 | | | 000059f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00005a00 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 7c 20 | |. | | 00005a10 20 20 20 20 20 20 38 20 20 20 20 20 20 20 20 7c | 8 || 00005a20 20 53 65 6c 65 63 74 20 28 69 6e 76 65 72 74 29 | Select (invert)| 00005a30 20 20 7c 20 2b 30 20 69 63 6f 6e 20 68 61 6e 64 | | +0 icon hand| 00005a40 6c 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |le | 00005a50 20 20 20 20 20 20 20 20 20 7c 0a 20 7c 20 20 20 | |. | | 00005a60 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 69 | | i| 00005a70 63 6f 6e 20 20 20 20 20 20 20 20 20 20 20 20 20 |con | 00005a80 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 || | 00005a90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00005aa0 20 20 20 20 20 20 20 7c 0a 20 7c 5f 5f 5f 5f 5f | |. |_____| 00005ab0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f |___________|____| 00005ac0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f |______________|_| 00005ad0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00005af0 5f 5f 5f 5f 5f 7c 0a 20 7c 20 20 20 20 20 20 20 |_____|. | | 00005b00 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 | | | 00005b10 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 20 | | | 00005b20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00005b40 20 20 20 7c 0a 20 7c 20 20 20 20 20 20 20 39 20 | |. | 9 | 00005b50 20 20 20 20 20 20 20 7c 20 4f 70 65 6e 20 70 61 | | Open pa| 00005b60 72 65 6e 74 20 20 20 20 20 20 7c 20 2b 30 20 46 |rent | +0 F| 00005b70 55 4c 4c 20 66 69 6c 65 6e 61 6d 65 20 20 20 20 |ULL filename | 00005b80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00005b90 20 7c 0a 20 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f | |. |___________| 00005ba0 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |_____|__________| 00005bb0 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f |________|_______| 00005bc0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| 00005bd0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c |_______________|| 00005be0 0a 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 |. | | 00005bf0 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 | | | 00005c00 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 | | | 00005c10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00005c20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 | |. | 00005c30 7c 20 20 20 20 20 20 31 30 20 20 20 20 20 20 20 || 10 | 00005c40 20 7c 20 53 6c 61 62 20 69 63 6f 6e 20 20 20 20 | | Slab icon | 00005c50 20 20 20 20 7c 20 2b 30 20 77 69 6e 64 6f 77 20 | | +0 window | 00005c60 68 61 6e 64 6c 65 20 20 20 20 20 20 20 20 20 20 |handle | 00005c70 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 7c 20 | |. | | 00005c80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | || 00005c90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00005ca0 20 20 7c 20 2b 34 20 69 63 6f 6e 20 68 61 6e 64 | | +4 icon hand| 00005cb0 6c 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |le | 00005cc0 20 20 20 20 20 20 20 20 20 7c 0a 20 7c 20 20 20 | |. | | 00005cd0 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 | | | 00005ce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00005cf0 7c 20 2b 38 20 62 75 74 74 6f 6e 20 28 34 20 74 || +8 button (4 t| 00005d00 6f 20 73 6c 61 62 20 69 66 20 6e 6f 74 20 63 6c |o slab if not cl| 00005d10 69 63 6b 65 64 29 20 7c 0a 20 7c 5f 5f 5f 5f 5f |icked) |. |_____| 00005d20 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f |___________|____| 00005d30 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f |______________|_| 00005d40 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00005d60 5f 5f 5f 5f 5f 7c 0a 20 7c 20 20 20 20 20 20 20 |_____|. | | 00005d70 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 | | | 00005d80 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 20 | | | 00005d90 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00005db0 20 20 20 7c 0a 20 7c 20 20 20 20 20 20 31 31 20 | |. | 11 | 00005dc0 20 20 20 20 20 20 20 7c 20 47 65 74 20 68 61 6e | | Get han| 00005dd0 64 6c 65 20 6f 66 20 20 20 20 7c 20 2b 30 20 69 |dle of | +0 i| 00005de0 6e 74 65 72 6e 61 6c 20 74 79 70 65 20 20 20 20 |nternal type | 00005df0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00005e00 20 7c 0a 20 7c 20 20 20 20 20 20 20 20 20 20 20 | |. | | 00005e10 20 20 20 20 20 7c 20 69 63 6f 6e 20 67 69 76 65 | | icon give| 00005e20 6e 20 74 79 70 65 20 20 7c 20 20 20 20 20 20 20 |n type | | 00005e30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00005e40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | || 00005e50 0a 20 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |. |_____________| 00005e60 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |___|____________| 00005e70 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f |______|_________| 00005e80 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| 00005e90 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 0a 20 |_____________|. | 00005ea0 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 || | 00005eb0 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | | 00005ec0 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 20 | | | 00005ed0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00005ee0 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 7c 20 | |. | | 00005ef0 20 20 20 20 20 31 32 20 20 20 20 20 20 20 20 7c | 12 || 00005f00 20 53 65 6e 64 20 4d 65 73 73 61 67 65 20 20 20 | Send Message | 00005f10 20 20 7c 20 2b 30 20 6d 65 73 73 61 67 65 20 6e | | +0 message n| 00005f20 75 6d 62 65 72 20 20 20 20 20 20 20 20 20 20 20 |umber | 00005f30 20 20 20 20 20 20 20 20 20 7c 0a 20 7c 20 20 20 | |. | | 00005f40 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 | | | 00005f50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00005f60 7c 20 2b 34 20 70 6f 69 6e 74 65 72 20 74 6f 20 || +4 pointer to | 00005f70 66 75 72 74 68 65 72 20 70 61 72 61 6d 65 74 65 |further paramete| 00005f80 72 20 62 6c 6f 63 6b 7c 0a 20 7c 5f 5f 5f 5f 5f |r block|. |_____| 00005f90 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f |___________|____| 00005fa0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f |______________|_| 00005fb0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00005fd0 5f 5f 5f 5f 5f 7c 0a 20 7c 20 20 20 20 20 20 20 |_____|. | | 00005fe0 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 | | | 00005ff0 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 20 | | | 00006000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00006020 20 20 20 7c 0a 20 7c 20 20 20 20 20 20 31 33 20 | |. | 13 | 00006030 20 20 20 20 20 20 20 7c 20 50 75 74 20 74 65 78 | | Put tex| 00006040 74 20 69 6e 20 69 63 6f 6e 20 7c 20 2b 30 20 77 |t in icon | +0 w| 00006050 69 6e 64 6f 77 20 68 61 6e 64 6c 65 20 20 20 20 |indow handle | 00006060 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00006070 20 7c 0a 20 7c 20 20 20 20 20 20 20 20 20 20 20 | |. | | 00006080 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 | | | 00006090 20 20 20 20 20 20 20 20 7c 20 2b 34 20 69 63 6f | | +4 ico| 000060a0 6e 20 68 61 6e 64 6c 65 20 20 20 20 20 20 20 20 |n handle | 000060b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | || 000060c0 0a 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 |. | | 000060d0 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 | | | 000060e0 20 20 20 20 20 20 7c 20 2b 38 20 74 65 78 74 20 | | +8 text | 000060f0 74 6f 20 70 75 74 20 69 6e 20 69 63 6f 6e 20 20 |to put in icon | 00006100 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 | |. | 00006110 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f ||_______________| 00006120 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |_|______________| 00006130 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |____|___________| 00006140 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| 00006150 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 0a 20 7c 20 |___________|. | | 00006160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | || 00006170 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00006180 20 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 | | | 00006190 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000061a0 20 20 20 20 20 20 20 20 20 7c 0a 20 7c 20 20 20 | |. | | 000061b0 20 20 20 31 34 20 20 20 20 20 20 20 20 7c 20 52 | 14 | R| 000061c0 65 61 64 20 69 63 6f 6e 20 74 65 78 74 20 20 20 |ead icon text | 000061d0 7c 20 2b 30 20 77 69 6e 64 6f 77 20 68 61 6e 64 || +0 window hand| 000061e0 6c 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |le | 000061f0 20 20 20 20 20 20 20 7c 0a 20 7c 20 20 20 20 20 | |. | | 00006200 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 | | | 00006210 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 | | | 00006220 2b 34 20 69 63 6f 6e 20 68 61 6e 64 6c 65 20 20 |+4 icon handle | 00006230 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00006240 20 20 20 20 20 7c 0a 20 7c 5f 5f 5f 5f 5f 5f 5f | |. |_______| 00006250 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f |_________|______| 00006260 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f |____________|___| 00006270 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00006290 5f 5f 5f 7c 0a 20 7c 20 20 20 20 20 20 20 20 20 |___|. | | 000062a0 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 | | | 000062b0 20 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 20 | | | 000062c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 000062e0 20 7c 0a 20 7c 20 20 20 20 20 20 31 35 20 20 20 | |. | 15 | 000062f0 20 20 20 20 20 7c 20 52 65 74 75 72 6e 20 6c 61 | | Return la| 00006300 73 74 20 62 69 74 20 20 7c 20 2b 30 20 74 65 78 |st bit | +0 tex| 00006310 74 20 73 74 72 69 6e 67 20 74 6f 20 75 73 65 20 |t string to use | 00006320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | || 00006330 0a 20 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |. |_____________| 00006340 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |___|____________| 00006350 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f |______|_________| 00006360 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| 00006370 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 0a 20 |_____________|. | 00006380 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 || | 00006390 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | | 000063a0 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 20 | | | 000063b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000063c0 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 7c 20 | |. | | 000063d0 20 20 20 20 20 31 36 20 20 20 20 20 20 20 20 7c | 16 || 000063e0 20 52 65 74 75 72 6e 20 66 69 72 73 74 20 62 69 | Return first bi| 000063f0 74 20 7c 20 2b 30 20 74 65 78 74 20 73 74 72 69 |t | +0 text stri| 00006400 6e 67 20 74 6f 20 75 73 65 20 20 20 20 20 20 20 |ng to use | 00006410 20 20 20 20 20 20 20 20 20 7c 0a 20 7c 5f 5f 5f | |. |___| 00006420 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f |_____________|__| 00006430 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| 00006440 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f ||_______________| 00006450 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| 00006460 5f 5f 5f 5f 5f 5f 5f 7c 0a 20 7c 20 20 20 20 20 |_______|. | | 00006470 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 20 20 | | | 00006480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 | | | 00006490 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 000064b0 20 20 20 20 20 7c 0a 20 7c 20 20 20 20 20 20 31 | |. | 1| 000064c0 37 20 20 20 20 20 20 20 20 7c 20 53 65 74 20 69 |7 | Set i| 000064d0 63 6f 6e 20 73 70 72 69 74 65 20 20 7c 20 2b 30 |con sprite | +0| 000064e0 20 77 69 6e 64 6f 77 20 68 61 6e 64 6c 65 20 20 | window handle | 000064f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00006500 20 20 20 7c 0a 20 7c 20 20 20 20 20 20 20 20 20 | |. | | 00006510 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 | | | 00006520 20 20 20 20 20 20 20 20 20 20 7c 20 2b 34 20 69 | | +4 i| 00006530 63 6f 6e 20 68 61 6e 64 6c 65 20 20 20 20 20 20 |con handle | 00006540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00006550 20 7c 0a 20 7c 20 20 20 20 20 20 20 20 20 20 20 | |. | | 00006560 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 | | | 00006570 20 20 20 20 20 20 20 20 7c 20 2b 38 20 73 70 72 | | +8 spr| 00006580 69 74 65 20 6e 61 6d 65 20 20 20 20 20 20 20 20 |ite name | 00006590 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | || 000065a0 0a 20 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |. |_____________| 000065b0 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |___|____________| 000065c0 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f |______|_________| 000065d0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| 000065e0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 0a 20 |_____________|. | 000065f0 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 || | 00006600 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | | 00006610 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 20 | | | 00006620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00006630 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 5c | |. \| 00006640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c | || 00006650 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00006660 20 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 | | | 00006670 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00006680 20 20 20 20 20 20 20 20 2f 0a 20 20 20 5c 5f 5f | /. \__| 00006690 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f |____________|___| 000066a0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c |_______________|| 000066b0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 000066d0 5f 5f 5f 5f 2f 0a 0a 54 68 65 72 65 20 66 6f 6c |____/..There fol| 000066e0 6c 6f 77 73 20 61 20 64 65 73 63 72 69 70 74 69 |lows a descripti| 000066f0 6f 6e 20 6f 66 20 65 61 63 68 20 6f 66 20 74 68 |on of each of th| 00006700 65 20 31 37 20 69 6e 74 65 72 66 61 63 65 20 63 |e 17 interface c| 00006710 6f 64 65 73 2e 0a 0a 30 20 2d 20 46 61 74 61 6c |odes...0 - Fatal| 00006720 20 65 72 72 6f 72 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e | error.~~~~~~~~~| 00006730 7e 7e 7e 7e 7e 7e 0a 0a 45 6e 74 72 79 20 20 3a |~~~~~~..Entry :| 00006740 0a 20 20 20 20 20 20 20 20 20 2b 30 20 65 72 72 |. +0 err| 00006750 6f 72 20 74 65 78 74 0a 45 78 69 74 20 20 20 3a |or text.Exit :| 00006760 0a 20 20 20 20 20 20 20 20 20 44 6f 65 73 6e 27 |. Doesn'| 00006770 74 0a 41 63 74 69 6f 6e 20 3a 0a 20 20 20 20 20 |t.Action :. | 00006780 20 20 20 20 43 72 65 61 74 65 73 20 61 6e 20 65 | Creates an e| 00006790 72 72 6f 72 20 62 6f 78 20 77 69 74 68 20 74 68 |rror box with th| 000067a0 65 20 74 65 78 74 20 70 6f 69 6e 74 65 64 20 74 |e text pointed t| 000067b0 6f 20 62 79 20 62 6c 6f 63 6b 2b 30 2c 20 61 6e |o by block+0, an| 000067c0 64 20 74 68 65 6e 0a 71 75 69 74 73 20 21 53 74 |d then.quits !St| 000067d0 69 63 6b 79 42 72 64 2c 20 66 69 72 73 74 20 73 |ickyBrd, first s| 000067e0 65 6e 64 69 6e 67 20 61 20 70 6f 6c 6c 20 63 6f |ending a poll co| 000067f0 64 65 20 6e 75 6d 62 65 72 20 31 33 20 28 71 75 |de number 13 (qu| 00006800 69 74 29 20 74 6f 20 61 6c 6c 20 6d 6f 64 75 6c |it) to all modul| 00006810 65 73 2e 0a 49 66 20 79 6f 75 72 20 6d 6f 64 75 |es..If your modu| 00006820 6c 65 20 63 72 65 61 74 65 64 20 74 68 65 20 66 |le created the f| 00006830 61 74 61 6c 20 65 72 72 6f 72 20 74 68 65 6e 20 |atal error then | 00006840 64 6f 6e 27 74 20 72 65 73 70 6f 6e 64 20 74 6f |don't respond to| 00006850 20 74 68 69 73 20 70 6f 6c 6c 2e 0a 0a 31 20 2d | this poll...1 -| 00006860 20 4e 6f 6e 2d 66 61 74 61 6c 20 65 72 72 6f 72 | Non-fatal error| 00006870 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |.~~~~~~~~~~~~~~~| 00006880 7e 7e 7e 7e 0a 0a 45 6e 74 72 79 20 20 3a 0a 20 |~~~~..Entry :. | 00006890 20 20 20 20 20 20 20 20 2b 30 20 65 72 72 6f 72 | +0 error| 000068a0 20 74 65 78 74 0a 45 78 69 74 20 20 20 3a 0a 20 | text.Exit :. | 000068b0 20 20 20 20 20 20 20 20 4e 6f 6e 65 0a 41 63 74 | None.Act| 000068c0 69 6f 6e 20 3a 0a 20 20 20 20 20 20 20 20 20 53 |ion :. S| 000068d0 69 6d 69 6c 61 72 20 74 6f 20 61 62 6f 76 65 2c |imilar to above,| 000068e0 20 62 75 74 20 64 6f 65 73 6e 27 74 20 71 75 69 | but doesn't qui| 000068f0 74 20 21 53 74 69 63 6b 79 42 72 64 2e 20 20 4e |t !StickyBrd. N| 00006900 6f 20 6d 65 73 73 61 67 65 20 69 73 20 73 65 6e |o message is sen| 00006910 74 0a 72 6f 75 6e 64 2c 20 61 73 20 21 53 74 69 |t.round, as !Sti| 00006920 63 6b 79 42 72 64 20 69 73 20 6e 6f 74 20 71 75 |ckyBrd is not qu| 00006930 69 74 74 69 6e 67 2e 0a 0a 32 20 2d 20 52 65 64 |itting...2 - Red| 00006940 72 61 77 20 62 61 63 6b 67 72 6f 75 6e 64 20 77 |raw background w| 00006950 69 6e 64 6f 77 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |indow.~~~~~~~~~~| 00006960 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |~~~~~~~~~~~~~~~~| 00006970 7e 7e 0a 0a 45 6e 74 72 79 20 20 3a 0a 20 20 20 |~~..Entry :. | 00006980 20 20 20 20 20 20 4e 6f 6e 65 0a 45 78 69 74 20 | None.Exit | 00006990 20 20 3a 0a 20 20 20 20 20 20 20 20 20 4e 6f 6e | :. Non| 000069a0 65 0a 41 63 74 69 6f 6e 20 3a 0a 20 20 20 20 20 |e.Action :. | 000069b0 20 20 20 20 52 65 64 72 61 77 73 20 74 68 65 20 | Redraws the | 000069c0 62 61 63 6b 64 72 6f 70 2c 20 61 6e 64 20 61 6e |backdrop, and an| 000069d0 79 20 69 63 6f 6e 73 20 6f 6e 20 74 68 65 20 64 |y icons on the d| 000069e0 65 73 6b 74 6f 70 0a 0a 33 20 2d 20 52 65 74 75 |esktop..3 - Retu| 000069f0 72 6e 20 62 61 63 6b 64 72 6f 70 20 66 6c 61 67 |rn backdrop flag| 00006a00 73 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |s.~~~~~~~~~~~~~~| 00006a10 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a 45 6e 74 |~~~~~~~~~~~..Ent| 00006a20 72 79 20 20 3a 20 0a 20 20 20 20 20 20 20 20 20 |ry : . | 00006a30 4e 6f 6e 65 0a 45 78 69 74 20 20 20 3a 0a 20 20 |None.Exit :. | 00006a40 20 20 20 20 20 20 20 2b 30 20 6c 6f 61 64 65 64 | +0 loaded| 00006a50 2f 6e 6f 74 20 6c 6f 61 64 65 64 0a 20 20 20 20 |/not loaded. | 00006a60 20 20 20 20 20 2b 34 20 74 69 6c 65 64 2f 63 65 | +4 tiled/ce| 00006a70 6e 74 72 65 64 0a 41 63 74 69 6f 6e 20 3a 0a 20 |ntred.Action :. | 00006a80 20 20 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 | Returns | 00006a90 77 69 74 68 20 69 6e 66 6f 72 6d 61 74 69 6f 6e |with information| 00006aa0 20 6f 6e 20 63 75 72 72 65 6e 74 20 62 61 63 6b | on current back| 00006ab0 64 72 6f 70 2e 20 20 49 66 20 74 68 65 72 65 20 |drop. If there | 00006ac0 69 73 20 6f 6e 65 0a 6c 6f 61 64 65 64 20 74 68 |is one.loaded th| 00006ad0 65 6e 20 62 6c 6f 63 6b 2b 30 20 77 69 6c 6c 20 |en block+0 will | 00006ae0 65 71 75 61 6c 20 31 2c 20 6f 74 68 65 72 77 69 |equal 1, otherwi| 00006af0 73 65 20 69 74 20 77 69 6c 6c 20 63 6f 6e 74 61 |se it will conta| 00006b00 69 6e 20 30 20 61 6e 64 0a 69 66 20 74 69 6c 65 |in 0 and.if tile| 00006b10 64 20 69 73 20 73 65 6c 65 63 74 65 64 20 74 68 |d is selected th| 00006b20 65 6e 20 62 6c 6f 63 6b 2b 34 20 77 69 6c 6c 20 |en block+4 will | 00006b30 62 65 20 31 2c 20 6f 74 68 65 72 77 69 73 65 20 |be 1, otherwise | 00006b40 28 74 68 65 20 62 61 63 6b 64 72 6f 70 20 69 73 |(the backdrop is| 00006b50 0a 63 65 6e 74 72 65 64 29 20 69 74 20 77 69 6c |.centred) it wil| 00006b60 6c 20 62 65 20 30 0a 0a 34 20 2d 20 50 6c 61 63 |l be 0..4 - Plac| 00006b70 65 20 69 63 6f 6e 20 6f 6e 20 64 65 73 6b 74 6f |e icon on deskto| 00006b80 70 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |p.~~~~~~~~~~~~~~| 00006b90 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a 45 6e 74 |~~~~~~~~~~~..Ent| 00006ba0 72 79 20 20 3a 0a 20 20 20 20 20 20 20 20 20 2b |ry :. +| 00006bb0 30 20 20 73 70 72 69 74 65 20 6e 61 6d 65 0a 20 |0 sprite name. | 00006bc0 20 20 20 20 20 20 20 20 2b 31 32 20 69 63 6f 6e | +12 icon| 00006bd0 20 28 66 69 6c 65 29 20 6e 61 6d 65 0a 20 20 20 | (file) name. | 00006be0 20 20 20 20 20 20 2b 32 34 20 78 20 63 6f 2d 6f | +24 x co-o| 00006bf0 72 64 69 6e 61 74 65 0a 20 20 20 20 20 20 20 20 |rdinate. | 00006c00 20 2b 32 38 20 79 20 63 6f 2d 6f 72 64 69 6e 61 | +28 y co-ordina| 00006c10 74 65 0a 20 20 20 20 20 20 20 20 20 2b 33 32 20 |te. +32 | 00006c20 69 6e 74 65 72 6e 61 6c 20 74 79 70 65 0a 20 20 |internal type. | 00006c30 20 20 20 20 20 20 20 2b 33 36 20 75 73 65 20 6c | +36 use l| 00006c40 61 73 74 20 62 69 74 0a 45 78 69 74 20 20 20 3a |ast bit.Exit :| 00006c50 0a 20 20 20 20 20 20 20 20 20 4e 6f 6e 65 0a 41 |. None.A| 00006c60 63 74 69 6f 6e 20 3a 0a 20 20 20 20 20 20 20 20 |ction :. | 00006c70 20 50 6c 61 63 65 73 20 61 6e 20 69 63 6f 6e 20 | Places an icon | 00006c80 6f 6e 20 74 68 65 20 64 65 73 6b 74 6f 70 20 75 |on the desktop u| 00006c90 73 69 6e 67 20 74 68 65 20 70 61 73 73 65 64 20 |sing the passed | 00006ca0 70 61 72 61 6d 65 74 65 72 73 2e 20 20 4f 6e 6c |parameters. Onl| 00006cb0 79 0a 27 55 73 65 20 6c 61 73 74 20 62 69 74 27 |y.'Use last bit'| 00006cc0 20 6d 69 67 68 74 20 6e 65 65 64 20 65 78 70 6c | might need expl| 00006cd0 61 69 6e 69 6e 67 20 61 6e 64 20 69 74 20 72 65 |aining and it re| 00006ce0 66 65 72 73 20 74 6f 20 77 68 65 74 68 65 72 20 |fers to whether | 00006cf0 74 6f 20 73 65 70 65 72 61 74 65 20 74 68 65 0a |to seperate the.| 00006d00 62 69 74 73 20 6f 66 20 74 68 65 20 6e 61 6d 65 |bits of the name| 00006d10 3a 20 66 6f 72 20 65 78 61 6d 70 6c 65 2c 20 69 |: for example, i| 00006d20 66 20 74 68 65 20 6e 61 6d 65 20 77 61 73 20 2d |f the name was -| 00006d30 0a 0a 20 74 65 73 74 6e 61 6d 65 2e 74 65 73 74 |.. testname.test| 00006d40 0a 0a 61 6e 64 20 75 73 65 20 6c 61 73 74 20 62 |..and use last b| 00006d50 69 74 20 77 61 73 20 73 65 6c 65 63 74 65 64 20 |it was selected | 00006d60 74 68 65 20 77 6f 72 64 20 27 74 65 73 74 27 20 |the word 'test' | 00006d70 77 6f 75 6c 64 20 62 65 20 70 72 69 6e 74 65 64 |would be printed| 00006d80 20 62 65 6c 6f 77 20 74 68 65 0a 69 63 6f 6e 2c | below the.icon,| 00006d90 20 6f 74 68 65 72 77 69 73 65 20 74 68 65 20 66 | otherwise the f| 00006da0 75 6c 6c 20 27 74 65 73 74 6e 61 6d 65 2e 74 65 |ull 'testname.te| 00006db0 73 74 27 20 77 6f 75 6c 64 20 62 65 20 70 72 69 |st' would be pri| 00006dc0 6e 74 65 64 2e 20 20 46 69 6c 65 6e 61 6d 65 73 |nted. Filenames| 00006dd0 20 68 61 76 65 0a 74 68 69 73 20 62 69 74 20 73 | have.this bit s| 00006de0 65 74 2e 0a 0a 35 20 2d 20 52 65 6d 6f 76 65 20 |et...5 - Remove | 00006df0 69 63 6f 6e 20 66 72 6f 6d 20 64 65 73 6b 74 6f |icon from deskto| 00006e00 70 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |p.~~~~~~~~~~~~~~| 00006e10 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a |~~~~~~~~~~~~~~..| 00006e20 45 6e 74 72 79 20 20 3a 0a 20 20 20 20 20 20 20 |Entry :. | 00006e30 20 20 2b 30 20 69 63 6f 6e 20 68 61 6e 64 6c 65 | +0 icon handle| 00006e40 20 28 70 65 72 68 61 70 73 20 72 65 74 75 72 6e | (perhaps return| 00006e50 65 64 20 62 79 20 6d 6f 64 6c 5f 69 6e 74 65 72 |ed by modl_inter| 00006e60 66 61 63 65 20 31 31 29 0a 45 78 69 74 20 20 20 |face 11).Exit | 00006e70 3a 0a 20 20 20 20 20 20 20 20 20 4e 6f 6e 65 0a |:. None.| 00006e80 41 63 74 69 6f 6e 20 3a 0a 20 20 20 20 20 20 20 |Action :. | 00006e90 20 20 52 65 6d 6f 76 65 73 20 74 68 65 20 67 69 | Removes the gi| 00006ea0 76 65 6e 20 69 63 6f 6e 20 66 72 6f 6d 20 74 68 |ven icon from th| 00006eb0 65 20 64 65 73 6b 74 6f 70 2e 0a 0a 36 20 2d 20 |e desktop...6 - | 00006ec0 4f 70 65 6e 20 6d 61 69 6e 20 6d 65 6e 75 20 61 |Open main menu a| 00006ed0 74 20 67 69 76 65 6e 20 63 6f 2d 6f 72 64 69 6e |t given co-ordin| 00006ee0 61 74 65 73 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |ates.~~~~~~~~~~~| 00006ef0 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |~~~~~~~~~~~~~~~~| 00006f00 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a 45 |~~~~~~~~~~~~~..E| 00006f10 6e 74 72 79 20 20 3a 0a 20 20 20 20 20 20 20 20 |ntry :. | 00006f20 20 2b 30 20 78 20 63 6f 2d 6f 72 64 69 6e 61 74 | +0 x co-ordinat| 00006f30 65 0a 20 20 20 20 20 20 20 20 20 2b 34 20 79 20 |e. +4 y | 00006f40 63 6f 2d 6f 72 64 69 6e 61 74 65 0a 45 78 69 74 |co-ordinate.Exit| 00006f50 20 20 20 3a 0a 20 20 20 20 20 20 20 20 20 4e 6f | :. No| 00006f60 6e 65 0a 41 63 74 69 6f 6e 20 3a 0a 20 20 20 20 |ne.Action :. | 00006f70 20 20 20 20 20 4f 70 65 6e 73 20 74 68 65 20 6d | Opens the m| 00006f80 61 69 6e 20 6d 65 6e 75 20 61 74 20 74 68 65 20 |ain menu at the | 00006f90 63 6f 2d 6f 72 64 69 6e 61 74 65 73 20 70 6f 69 |co-ordinates poi| 00006fa0 6e 74 65 64 20 74 6f 20 62 79 20 62 6c 6f 63 6b |nted to by block| 00006fb0 2b 30 20 61 6e 64 0a 62 6c 6f 63 6b 2b 34 2e 0a |+0 and.block+4..| 00006fc0 0a 37 20 2d 20 43 72 65 61 74 65 20 64 72 61 67 |.7 - Create drag| 00006fd0 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |.~~~~~~~~~~~~~~~| 00006fe0 0a 0a 45 6e 74 72 79 20 20 3a 0a 20 20 20 20 20 |..Entry :. | 00006ff0 20 20 20 20 2b 30 20 69 63 6f 6e 20 68 61 6e 64 | +0 icon hand| 00007000 6c 65 20 74 6f 20 63 72 65 61 74 65 20 64 72 61 |le to create dra| 00007010 67 20 66 72 6f 6d 0a 45 78 69 74 20 20 20 3a 0a |g from.Exit :.| 00007020 20 20 20 20 20 20 20 20 20 4e 6f 6e 65 0a 41 63 | None.Ac| 00007030 74 69 6f 6e 20 3a 0a 20 20 20 20 20 20 20 20 20 |tion :. | 00007040 43 72 65 61 74 65 73 20 61 20 64 72 61 67 20 65 |Creates a drag e| 00007050 76 65 6e 74 20 67 69 76 65 6e 20 61 6e 20 69 63 |vent given an ic| 00007060 6f 6e 20 68 61 6e 64 6c 65 2e 20 20 54 68 69 73 |on handle. This| 00007070 20 77 69 6c 6c 20 62 65 20 72 65 70 6f 72 74 65 | will be reporte| 00007080 64 0a 77 69 74 68 20 70 6f 6c 6c 20 63 6f 64 65 |d.with poll code| 00007090 20 31 30 2c 20 6f 66 20 63 6f 75 72 73 65 2c 20 | 10, of course, | 000070a0 77 68 65 6e 20 74 68 65 20 64 72 61 67 20 66 69 |when the drag fi| 000070b0 6e 69 73 68 65 73 2e 0a 0a 38 20 2d 20 53 65 6c |nishes...8 - Sel| 000070c0 65 63 74 20 28 69 6e 76 65 72 74 29 20 69 63 6f |ect (invert) ico| 000070d0 6e 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |n.~~~~~~~~~~~~~~| 000070e0 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a 45 6e 74 72 |~~~~~~~~~~..Entr| 000070f0 79 20 20 3a 0a 20 20 20 20 20 20 20 20 20 2b 30 |y :. +0| 00007100 20 69 63 6f 6e 20 68 61 6e 64 6c 65 0a 45 78 69 | icon handle.Exi| 00007110 74 20 20 20 3a 0a 20 20 20 20 20 20 20 20 20 4e |t :. N| 00007120 6f 6e 65 0a 41 63 74 69 6f 6e 20 3a 0a 20 20 20 |one.Action :. | 00007130 20 20 20 20 20 20 49 6e 76 65 72 74 73 20 74 68 | Inverts th| 00007140 65 20 67 69 76 65 6e 20 69 63 6f 6e 2e 0a 0a 39 |e given icon...9| 00007150 20 2d 20 4f 70 65 6e 20 50 61 72 65 6e 74 0a 7e | - Open Parent.~| 00007160 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a |~~~~~~~~~~~~~~..| 00007170 45 6e 74 72 79 20 20 3a 0a 20 20 20 20 20 20 20 |Entry :. | 00007180 20 20 2b 30 20 46 55 4c 4c 20 66 69 6c 65 6e 61 | +0 FULL filena| 00007190 6d 65 20 28 61 64 66 73 3a 3a 3c 64 69 73 63 20 |me (adfs::<disc | 000071a0 6e 61 6d 65 3e 2e 24 2e 64 69 72 31 2e 64 69 72 |name>.$.dir1.dir| 000071b0 32 2e 66 69 6c 65 20 65 74 63 2e 29 0a 45 78 69 |2.file etc.).Exi| 000071c0 74 20 20 20 3a 0a 20 20 20 20 20 20 20 20 20 4e |t :. N| 000071d0 6f 6e 65 0a 41 63 74 69 6f 6e 20 3a 0a 20 20 20 |one.Action :. | 000071e0 20 20 20 20 20 20 4f 70 65 6e 73 20 61 20 66 69 | Opens a fi| 000071f0 6c 65 72 20 77 69 6e 64 6f 77 20 66 6f 72 20 74 |ler window for t| 00007200 68 65 20 64 69 72 65 63 74 6f 72 79 20 63 6f 6e |he directory con| 00007210 74 61 69 6e 69 6e 67 20 74 68 65 20 66 69 6c 65 |taining the file| 00007220 20 64 65 73 63 72 69 62 65 64 0a 62 79 20 62 6c | described.by bl| 00007230 6f 63 6b 2b 30 2e 20 20 54 68 69 73 20 73 68 6f |ock+0. This sho| 00007240 75 6c 64 20 62 65 20 61 20 46 55 4c 4c 20 66 69 |uld be a FULL fi| 00007250 6c 65 6e 61 6d 65 20 61 73 20 46 69 6c 65 72 5f |lename as Filer_| 00007260 4f 70 65 6e 44 69 72 20 69 73 20 75 73 65 64 20 |OpenDir is used | 00007270 77 68 69 63 68 0a 69 73 20 72 61 74 68 65 72 20 |which.is rather | 00007280 73 70 65 63 69 66 69 63 2e 20 20 4e 6f 74 65 20 |specific. Note | 00007290 79 6f 75 20 63 61 6e 6e 6f 74 20 75 73 65 20 73 |you cannot use s| 000072a0 79 73 74 65 6d 20 76 61 72 69 61 62 6c 65 73 20 |ystem variables | 000072b0 28 66 75 74 75 72 65 20 76 65 72 73 69 6f 6e 73 |(future versions| 000072c0 0a 77 69 6c 6c 20 73 75 70 70 6f 72 74 20 74 68 |.will support th| 000072d0 69 73 29 2e 0a 0a 31 30 20 2d 20 53 6c 61 62 20 |is)...10 - Slab | 000072e0 69 63 6f 6e 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |icon.~~~~~~~~~~~| 000072f0 7e 7e 7e 0a 0a 45 6e 74 72 79 20 20 3a 0a 20 20 |~~~..Entry :. | 00007300 20 20 20 20 20 20 20 2b 30 20 77 69 6e 64 6f 77 | +0 window| 00007310 20 68 61 6e 64 6c 65 0a 20 20 20 20 20 20 20 20 | handle. | 00007320 20 2b 34 20 69 63 6f 6e 20 68 61 6e 64 6c 65 0a | +4 icon handle.| 00007330 20 20 20 20 20 20 20 20 20 2b 38 20 62 75 74 74 | +8 butt| 00007340 6f 6e 20 74 79 70 65 0a 45 78 69 74 20 20 20 3a |on type.Exit :| 00007350 0a 20 20 20 20 20 20 20 20 20 4e 6f 6e 65 0a 41 |. None.A| 00007360 63 74 69 6f 6e 20 3a 0a 20 20 20 20 20 20 20 20 |ction :. | 00007370 20 41 73 20 70 65 72 20 74 68 65 20 69 6e 74 65 | As per the inte| 00007380 72 66 61 63 65 20 6d 61 6e 61 67 65 72 2e 20 20 |rface manager. | 00007390 49 66 20 79 6f 75 20 68 61 76 65 20 68 61 64 20 |If you have had | 000073a0 61 20 6d 6f 75 73 65 20 63 6c 69 63 6b 0a 72 65 |a mouse click.re| 000073b0 70 6f 72 74 65 64 20 62 79 20 70 6f 6c 6c 20 63 |ported by poll c| 000073c0 6f 64 65 20 35 20 74 68 65 20 70 61 72 61 6d 65 |ode 5 the parame| 000073d0 74 65 72 20 62 6c 6f 63 6b 73 20 61 72 65 20 63 |ter blocks are c| 000073e0 6f 6d 70 61 74 61 62 6c 65 2c 20 73 6f 20 6a 75 |ompatable, so ju| 000073f0 73 74 20 73 65 6e 64 0a 69 74 20 6f 74 68 65 72 |st send.it other| 00007400 77 69 73 65 20 79 6f 75 20 77 69 6c 6c 20 68 61 |wise you will ha| 00007410 76 65 20 74 6f 20 70 72 65 70 61 72 65 20 6f 6e |ve to prepare on| 00007420 65 2e 20 20 54 6f 20 73 69 6d 75 6c 61 74 65 20 |e. To simulate | 00007430 61 20 63 6c 69 63 6b 20 77 69 74 68 20 73 65 6c |a click with sel| 00007440 65 63 74 0a 75 73 65 20 62 75 74 74 6f 6e 20 74 |ect.use button t| 00007450 79 70 65 20 34 2e 0a 0a 31 31 20 2d 20 44 65 74 |ype 4...11 - Det| 00007460 65 72 6d 69 6e 65 20 77 68 65 74 68 65 72 20 61 |ermine whether a| 00007470 6e 20 69 63 6f 6e 20 6f 66 20 74 68 65 20 67 69 |n icon of the gi| 00007480 76 65 6e 20 74 79 70 65 20 65 78 69 73 74 73 0a |ven type exists.| 00007490 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |~~~~~~~~~~~~~~~~| * 000074c0 7e 7e 7e 7e 7e 7e 7e 0a 0a 45 6e 74 72 79 20 20 |~~~~~~~..Entry | 000074d0 3a 0a 20 20 20 20 20 20 20 20 20 2b 30 20 69 6e |:. +0 in| 000074e0 74 65 72 6e 61 6c 20 74 79 70 65 0a 45 78 69 74 |ternal type.Exit| 000074f0 20 20 20 3a 0a 20 20 20 20 20 20 20 20 20 4e 6f | :. No| 00007500 6e 65 0a 41 63 74 69 6f 6e 20 3a 0a 20 20 20 20 |ne.Action :. | 00007510 20 20 20 20 20 52 65 74 75 72 6e 73 20 74 68 65 | Returns the| 00007520 20 69 63 6f 6e 20 68 61 6e 64 6c 65 20 6f 66 20 | icon handle of | 00007530 74 68 65 20 6c 61 73 74 20 69 63 6f 6e 20 6f 66 |the last icon of| 00007540 20 74 68 65 20 73 70 65 63 69 66 69 63 20 74 79 | the specific ty| 00007550 70 65 20 28 73 61 79 0a 74 68 65 72 65 20 77 65 |pe (say.there we| 00007560 72 65 20 74 77 6f 2c 20 6f 6e 65 20 77 69 74 68 |re two, one with| 00007570 20 68 61 6e 64 6c 65 20 35 20 61 6e 64 20 6f 6e | handle 5 and on| 00007580 65 20 77 69 74 68 20 68 61 6e 64 6c 65 20 31 30 |e with handle 10| 00007590 2e 20 20 54 68 65 20 6f 6e 65 20 77 69 74 68 0a |. The one with.| 000075a0 68 61 6e 64 6c 65 20 31 30 20 77 6f 75 6c 64 20 |handle 10 would | 000075b0 62 65 20 72 65 70 6f 72 74 65 64 29 2c 20 6f 72 |be reported), or| 000075c0 20 30 20 69 66 20 69 74 20 63 6f 75 6c 64 20 6e | 0 if it could n| 000075d0 6f 74 20 66 69 6e 64 20 61 6e 79 20 69 63 6f 6e |ot find any icon| 000075e0 73 20 6f 66 20 74 68 61 74 0a 74 79 70 65 2e 0a |s of that.type..| 000075f0 0a 31 32 20 2d 20 53 65 6e 64 20 4d 65 73 73 61 |.12 - Send Messa| 00007600 67 65 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |ge.~~~~~~~~~~~~~| 00007610 7e 7e 7e 7e 0a 0a 45 6e 74 72 79 20 20 3a 0a 20 |~~~~..Entry :. | 00007620 20 20 20 20 20 20 20 20 2b 30 20 6d 65 73 73 61 | +0 messa| 00007630 67 65 20 6e 75 6d 62 65 72 0a 20 20 20 20 20 20 |ge number. | 00007640 20 20 20 2b 34 20 70 6f 69 6e 74 65 72 20 74 6f | +4 pointer to| 00007650 20 6d 65 73 73 61 67 65 20 73 70 65 63 69 66 69 | message specifi| 00007660 63 20 70 61 72 61 6d 65 74 65 72 20 62 6c 6f 63 |c parameter bloc| 00007670 6b 0a 45 78 69 74 20 20 20 3a 0a 20 20 20 20 20 |k.Exit :. | 00007680 20 20 20 20 20 4e 6f 6e 65 0a 41 63 74 69 6f 6e | None.Action| 00007690 20 3a 0a 20 20 20 20 20 20 20 20 20 43 72 65 61 | :. Crea| 000076a0 74 65 73 20 61 20 6d 65 73 73 61 67 65 20 6f 66 |tes a message of| 000076b0 20 74 68 65 20 67 69 76 65 6e 20 74 79 70 65 2e | the given type.| 000076c0 20 20 54 68 69 73 20 6f 70 65 6e 73 20 74 68 65 | This opens the| 000076d0 20 77 61 79 20 66 6f 72 20 69 6e 74 65 72 2d 0a | way for inter-.| 000076e0 6d 6f 64 75 6c 65 20 63 6f 6d 6d 75 6e 69 63 61 |module communica| 000076f0 74 69 6f 6e 73 2e 20 20 57 72 69 74 65 20 74 6f |tions. Write to| 00007700 20 6d 65 20 66 6f 72 20 61 20 6d 65 73 73 61 67 | me for a messag| 00007710 65 20 6e 75 6d 62 65 72 20 69 66 20 79 6f 75 20 |e number if you | 00007720 70 72 6f 70 6f 73 65 20 74 6f 0a 75 73 65 20 74 |propose to.use t| 00007730 68 65 20 6d 65 73 73 61 67 69 6e 67 20 73 79 73 |he messaging sys| 00007740 74 65 6d 2e 0a 53 65 65 20 6c 61 74 65 72 20 66 |tem..See later f| 00007750 6f 72 20 6d 65 73 73 61 67 65 73 20 61 6c 72 65 |or messages alre| 00007760 61 64 79 20 69 6e 20 70 6c 61 63 65 2e 0a 0a 4d |ady in place...M| 00007770 65 73 73 61 67 65 73 20 61 72 65 20 72 65 63 65 |essages are rece| 00007780 69 76 65 64 20 69 6e 20 74 68 65 20 66 75 6e 63 |ived in the func| 00007790 74 69 6f 6e 3a 0a 0a 3c 6d 6f 64 75 6c 65 20 6e |tion:..<module n| 000077a0 61 6d 65 3e 5f 6d 65 73 73 61 67 65 0a 7e 7e 7e |ame>_message.~~~| 000077b0 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |~~~~~~~~~~~~~~~~| 000077c0 7e 7e 0a 0a 45 6e 74 72 79 20 20 3a 0a 20 20 20 |~~..Entry :. | 000077d0 20 20 20 20 20 20 6d 65 73 73 61 67 65 20 6e 75 | message nu| 000077e0 6d 62 65 72 2c 20 70 6f 69 6e 74 65 72 20 74 6f |mber, pointer to| 000077f0 20 70 61 72 61 6d 65 74 65 72 20 62 6c 6f 63 6b | parameter block| 00007800 0a 45 78 69 74 20 20 20 3a 0a 20 20 20 20 20 20 |.Exit :. | 00007810 20 20 20 4e 6f 6e 65 0a 41 63 74 69 6f 6e 20 3a | None.Action :| 00007820 0a 20 20 20 20 20 20 20 20 20 44 65 70 65 6e 64 |. Depend| 00007830 73 20 6f 6e 20 6d 65 73 73 61 67 65 0a 0a 31 33 |s on message..13| 00007840 20 2d 20 50 75 74 20 74 65 78 74 20 69 6e 20 69 | - Put text in i| 00007850 63 6f 6e 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |con.~~~~~~~~~~~~| 00007860 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a 45 6e 74 72 79 |~~~~~~~~~..Entry| 00007870 20 20 3a 0a 20 20 20 20 20 20 20 20 20 2b 30 20 | :. +0 | 00007880 77 69 6e 64 6f 77 20 68 61 6e 64 6c 65 0a 20 20 |window handle. | 00007890 20 20 20 20 20 20 20 2b 34 20 69 63 6f 6e 20 68 | +4 icon h| 000078a0 61 6e 64 6c 65 0a 20 20 20 20 20 20 20 20 20 2b |andle. +| 000078b0 38 20 74 65 78 74 20 73 74 72 69 6e 67 0a 45 78 |8 text string.Ex| 000078c0 69 74 20 20 20 3a 0a 20 20 20 20 20 20 20 20 20 |it :. | 000078d0 4e 6f 6e 65 0a 41 63 74 69 6f 6e 20 3a 0a 20 20 |None.Action :. | 000078e0 20 20 20 20 20 20 20 50 75 74 73 20 74 68 65 20 | Puts the | 000078f0 73 70 65 63 69 66 69 65 64 20 74 65 78 74 20 73 |specified text s| 00007900 74 72 69 6e 67 20 69 6e 20 74 68 65 20 69 6e 64 |tring in the ind| 00007910 69 72 65 63 74 65 64 20 69 63 6f 6e 20 73 70 65 |irected icon spe| 00007920 63 69 66 69 65 64 20 62 79 0a 74 68 65 20 66 69 |cified by.the fi| 00007930 72 73 74 20 74 77 6f 20 77 6f 72 64 73 20 6f 66 |rst two words of| 00007940 20 74 68 65 20 64 61 74 61 20 62 6c 6f 63 6b 2e | the data block.| 00007950 0a 0a 31 34 20 2d 20 52 65 61 64 20 74 65 78 74 |..14 - Read text| 00007960 20 66 72 6f 6d 20 69 63 6f 6e 0a 7e 7e 7e 7e 7e | from icon.~~~~~| 00007970 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |~~~~~~~~~~~~~~~~| 00007980 7e 7e 7e 0a 0a 45 6e 74 72 79 20 20 3a 0a 20 20 |~~~..Entry :. | 00007990 20 20 20 20 20 20 20 2b 30 20 77 69 6e 64 6f 77 | +0 window| 000079a0 20 68 61 6e 64 6c 65 0a 20 20 20 20 20 20 20 20 | handle. | 000079b0 20 2b 34 20 69 63 6f 6e 20 68 61 6e 64 6c 65 0a | +4 icon handle.| 000079c0 45 78 69 74 20 20 20 3a 0a 20 20 20 20 20 20 20 |Exit :. | 000079d0 20 20 70 6f 69 6e 74 65 72 20 74 6f 20 74 65 78 | pointer to tex| 000079e0 74 20 62 6c 6f 63 6b 0a 41 63 74 69 6f 6e 20 3a |t block.Action :| 000079f0 0a 20 20 20 20 20 20 20 20 20 52 65 61 64 73 20 |. Reads | 00007a00 74 68 65 20 74 65 78 74 20 66 72 6f 6d 20 74 68 |the text from th| 00007a10 65 20 73 70 65 63 69 66 69 65 64 20 69 6e 64 69 |e specified indi| 00007a20 72 65 63 74 65 64 20 69 63 6f 6e 20 61 6e 64 20 |rected icon and | 00007a30 72 65 74 75 72 6e 73 0a 70 6f 69 6e 74 69 6e 67 |returns.pointing| 00007a40 20 74 6f 20 74 68 65 20 74 65 78 74 20 73 74 72 | to the text str| 00007a50 69 6e 67 2e 20 20 4e 6f 74 65 20 74 68 61 74 20 |ing. Note that | 00007a60 74 68 65 73 65 20 74 77 6f 20 63 61 6c 6c 73 20 |these two calls | 00007a70 6f 6e 6c 79 20 77 6f 72 6b 20 77 69 74 68 0a 69 |only work with.i| 00007a80 6e 64 69 72 65 63 74 65 64 20 69 63 6f 6e 73 2e |ndirected icons.| 00007a90 0a 0a 31 35 20 2d 20 52 65 74 75 72 6e 20 6c 61 |..15 - Return la| 00007aa0 73 74 20 62 69 74 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e |st bit.~~~~~~~~~| 00007ab0 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a 45 6e |~~~~~~~~~~~~..En| 00007ac0 74 72 79 20 20 3a 0a 20 20 20 20 20 20 20 20 20 |try :. | 00007ad0 2b 30 20 74 65 78 74 20 73 74 72 69 6e 67 0a 45 |+0 text string.E| 00007ae0 78 69 74 20 20 20 3a 0a 20 20 20 20 20 20 20 20 |xit :. | 00007af0 20 70 6f 69 6e 74 65 72 20 74 6f 20 6c 61 73 74 | pointer to last| 00007b00 20 62 69 74 20 6f 66 20 6e 61 6d 65 0a 41 63 74 | bit of name.Act| 00007b10 69 6f 6e 20 3a 0a 20 20 20 20 20 20 20 20 20 54 |ion :. T| 00007b20 61 6b 65 73 20 61 20 66 69 6c 65 6e 61 6d 65 2c |akes a filename,| 00007b30 20 73 75 63 68 20 61 73 20 66 72 65 64 2e 73 6d | such as fred.sm| 00007b40 69 74 68 2c 20 61 6e 64 20 72 65 74 75 72 6e 73 |ith, and returns| 00007b50 20 74 68 65 20 6c 61 73 74 20 70 61 72 74 69 63 | the last partic| 00007b60 6c 65 0a 6f 66 20 69 74 2c 20 69 6e 20 74 68 69 |le.of it, in thi| 00007b70 73 20 63 61 73 65 20 73 6d 69 74 68 2e 0a 0a 31 |s case smith...1| 00007b80 36 20 2d 20 52 65 74 75 72 6e 20 66 69 72 73 74 |6 - Return first| 00007b90 20 62 69 74 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e | bit.~~~~~~~~~~~| 00007ba0 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a 45 6e 74 72 |~~~~~~~~~~..Entr| 00007bb0 79 20 20 3a 0a 20 20 20 20 20 20 20 20 20 2b 30 |y :. +0| 00007bc0 20 74 65 78 74 20 73 74 72 69 6e 67 0a 45 78 69 | text string.Exi| 00007bd0 74 20 20 20 3a 0a 20 20 20 20 20 20 20 20 20 70 |t :. p| 00007be0 6f 69 6e 74 65 72 20 74 6f 20 66 69 72 73 74 20 |ointer to first | 00007bf0 62 69 74 20 6f 66 20 6e 61 6d 65 0a 41 63 74 69 |bit of name.Acti| 00007c00 6f 6e 20 3a 0a 20 20 20 20 20 20 20 20 20 54 61 |on :. Ta| 00007c10 6b 65 73 20 61 20 66 69 6c 65 6e 61 6d 65 2c 20 |kes a filename, | 00007c20 61 73 20 69 6e 20 74 68 65 20 70 72 65 76 69 6f |as in the previo| 00007c30 75 73 20 63 61 6c 6c 2c 20 61 6e 64 20 72 65 74 |us call, and ret| 00007c40 75 72 6e 73 20 74 68 65 20 66 69 72 73 74 0a 73 |urns the first.s| 00007c50 65 63 74 69 6f 6e 20 6f 66 20 69 74 2e 20 20 41 |ection of it. A| 00007c60 73 20 61 6e 20 65 78 61 6d 70 6c 65 2c 20 74 61 |s an example, ta| 00007c70 6b 65 20 66 72 65 64 2e 6a 6f 65 2e 73 6d 69 74 |ke fred.joe.smit| 00007c80 68 2e 20 20 54 68 65 20 63 61 6c 6c 20 77 6f 75 |h. The call wou| 00007c90 6c 64 0a 72 65 74 75 72 6e 20 66 72 65 64 2e 6a |ld.return fred.j| 00007ca0 6f 65 2c 20 61 73 20 6f 70 70 6f 73 65 64 20 74 |oe, as opposed t| 00007cb0 6f 20 73 6d 69 74 68 20 77 68 69 63 68 20 77 6f |o smith which wo| 00007cc0 75 6c 64 20 62 65 20 72 65 74 75 72 6e 65 64 20 |uld be returned | 00007cd0 62 79 20 74 68 65 20 70 72 65 76 69 6f 75 73 0a |by the previous.| 00007ce0 63 61 6c 6c 2e 0a 0a 31 37 20 2d 20 53 65 74 20 |call...17 - Set | 00007cf0 69 63 6f 6e 20 73 70 72 69 74 65 0a 7e 7e 7e 7e |icon sprite.~~~~| 00007d00 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |~~~~~~~~~~~~~~~~| 00007d10 0a 0a 45 6e 74 72 79 20 20 3a 0a 20 20 20 20 20 |..Entry :. | 00007d20 20 20 20 20 2b 30 20 77 69 6e 64 6f 77 20 68 61 | +0 window ha| 00007d30 6e 64 6c 65 0a 20 20 20 20 20 20 20 20 20 2b 34 |ndle. +4| 00007d40 20 69 63 6f 6e 20 68 61 6e 64 6c 65 0a 20 20 20 | icon handle. | 00007d50 20 20 20 20 20 20 2b 38 20 73 70 72 69 74 65 20 | +8 sprite | 00007d60 6e 61 6d 65 0a 45 78 69 74 20 20 20 3a 0a 20 20 |name.Exit :. | 00007d70 20 20 20 20 20 20 20 4e 6f 6e 65 0a 41 63 74 69 | None.Acti| 00007d80 6f 6e 20 3a 0a 20 20 20 20 20 20 20 20 20 53 65 |on :. Se| 00007d90 74 73 20 74 68 65 20 73 70 72 69 74 65 20 6e 61 |ts the sprite na| 00007da0 6d 65 20 66 6f 72 20 61 20 6e 6f 6e 2d 69 6e 64 |me for a non-ind| 00007db0 69 72 65 63 74 65 64 20 69 63 6f 6e 2e 20 20 54 |irected icon. T| 00007dc0 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 |his procedure is| 00007dd0 0a 75 73 65 64 20 62 79 20 61 6c 6c 20 21 53 74 |.used by all !St| 00007de0 69 63 6b 79 42 72 64 20 73 70 72 69 74 65 20 70 |ickyBrd sprite p| 00007df0 6c 6f 74 20 72 6f 75 74 69 6e 65 73 20 61 6e 64 |lot routines and| 00007e00 20 69 74 20 61 6c 73 6f 20 73 65 74 73 20 74 68 | it also sets th| 00007e10 65 0a 61 70 70 72 6f 70 69 61 74 65 20 69 63 6f |e.appropiate ico| 00007e20 6e 20 66 6c 61 67 73 20 74 6f 20 6d 61 72 6b 20 |n flags to mark | 00007e30 69 74 20 61 73 20 61 20 73 70 72 69 74 65 20 69 |it as a sprite i| 00007e40 63 6f 6e 2e 0a 0a 4d 65 73 73 61 67 65 73 20 61 |con...Messages a| 00007e50 6c 72 65 61 64 79 20 73 65 74 20 75 70 0a 7e 7e |lready set up.~~| 00007e60 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |~~~~~~~~~~~~~~~~| 00007e70 7e 7e 7e 7e 7e 0a 0a 20 20 5f 5f 5f 5f 5f 5f 5f |~~~~~.. _______| 00007e80 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| * 00007ec0 5f 5f 0a 20 2f 20 20 20 20 20 20 20 20 20 20 20 |__. / | 00007ed0 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 | | | 00007ee0 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 | | | 00007ef0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00007f00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5c 0a | \.| 00007f10 7c 20 4d 65 73 73 61 67 65 20 6e 75 6d 62 65 72 || Message number| 00007f20 20 20 7c 20 44 65 73 63 72 69 70 74 69 6f 6e 20 | | Description | 00007f30 20 20 20 20 20 20 20 20 20 20 7c 20 50 61 72 61 | | Para| 00007f40 6d 65 74 65 72 20 62 6c 6f 63 6b 20 20 20 20 20 |meter block | 00007f50 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 7c 5f | |.|_| 00007f60 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| 00007f70 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f ||_______________| 00007f80 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f |________|_______| 00007f90 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| 00007fa0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 0a 7c 20 20 20 |__________|.| | 00007fb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 | | | 00007fc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00007fd0 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 | | | 00007fe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00007ff0 20 20 20 20 20 20 20 20 7c 0a 7c 20 20 20 20 20 | |.| | 00008000 20 20 30 20 20 20 20 20 20 20 20 20 7c 20 43 68 | 0 | Ch| 00008010 65 63 6b 20 6d 6f 64 75 6c 65 20 6c 6f 61 64 65 |eck module loade| 00008020 64 20 20 20 7c 20 2b 30 20 6d 6f 64 75 6c 65 20 |d | +0 module | 00008030 6e 61 6d 65 20 20 20 20 20 20 20 20 20 20 20 20 |name | 00008040 20 20 20 20 20 20 7c 0a 7c 5f 5f 5f 5f 5f 5f 5f | |.|_______| 00008050 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f |__________|_____| 00008060 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| 00008070 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |__|_____________| 00008080 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| 00008090 5f 5f 5f 5f 7c 0a 7c 20 20 20 20 20 20 20 20 20 |____|.| | 000080a0 20 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 | | | 000080b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000080c0 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 || | 000080d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000080e0 20 20 7c 0a 7c 20 20 20 20 20 20 20 31 20 20 20 | |.| 1 | 000080f0 20 20 20 20 20 20 7c 20 52 65 70 6c 79 20 74 6f | | Reply to| 00008100 20 28 30 29 20 20 20 20 20 20 20 20 20 20 7c 20 | (0) | | 00008110 2b 30 20 6d 6f 64 75 6c 65 20 6e 61 6d 65 20 20 |+0 module name | 00008120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00008130 7c 0a 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 ||.| | 00008140 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 20 | | | 00008150 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 2b 34 | | +4| 00008160 20 69 6e 66 6f 20 77 69 6e 64 6f 77 20 68 61 6e | info window han| 00008170 64 6c 65 20 20 20 20 20 20 20 20 20 20 20 7c 0a |dle |.| 00008180 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 || | 00008190 20 20 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 | | | 000081a0 20 20 20 20 20 20 20 20 20 20 7c 20 2b 38 20 6d | | +8 m| 000081b0 65 6e 75 20 62 6c 6f 63 6b 20 61 64 64 72 65 73 |enu block addres| 000081c0 73 20 20 20 20 20 20 20 20 20 20 20 7c 0a 7c 5f |s |.|_| 000081d0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| 000081e0 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f ||_______________| 000081f0 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f |________|_______| 00008200 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| 00008210 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 0a 7c 20 20 20 |__________|.| | 00008220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 | | | 00008230 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00008240 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 | | | 00008250 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00008260 20 20 20 20 20 20 20 20 7c 0a 7c 20 20 20 20 20 | |.| | 00008270 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 20 | | | 00008280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00008290 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 20 | | | 000082a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000082b0 20 20 20 20 20 20 7c 0a 20 5c 5f 5f 5f 5f 5f 5f | |. \______| 000082c0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 7c 5f 5f 5f 5f 5f |__________|_____| 000082d0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| 000082e0 5f 5f 7c 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |__|_____________| 000082f0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| 00008300 5f 5f 5f 2f 0a 0a 44 65 73 63 72 69 70 74 69 6f |___/..Descriptio| 00008310 6e 73 20 6f 66 20 74 68 65 20 6d 65 73 73 61 67 |ns of the messag| 00008320 65 73 20 66 6f 6c 6c 6f 77 3a 0a 0a 30 20 2d 20 |es follow:..0 - | 00008330 43 68 65 63 6b 20 6d 6f 64 75 6c 65 20 6c 6f 61 |Check module loa| 00008340 64 65 64 20 20 20 20 20 20 20 20 20 20 20 20 20 |ded | 00008350 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00008360 20 20 20 20 20 4d 65 73 73 61 67 65 5f 4d 6f 64 | Message_Mod| 00008370 75 6c 65 45 78 69 73 74 73 0a 7e 7e 7e 7e 7e 7e |uleExists.~~~~~~| 00008380 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |~~~~~~~~~~~~~~~~| 00008390 7e 0a 0a 45 6e 74 72 79 20 20 3a 0a 20 20 20 20 |~..Entry :. | 000083a0 20 20 20 20 20 2b 30 20 6d 6f 64 75 6c 65 20 6e | +0 module n| 000083b0 61 6d 65 0a 45 78 69 74 20 20 20 3a 0a 20 20 20 |ame.Exit :. | 000083c0 20 20 20 20 20 20 4e 6f 6e 65 0a 41 63 74 69 6f | None.Actio| 000083d0 6e 20 3a 0a 20 20 20 20 20 20 20 20 20 41 73 6b |n :. Ask| 000083e0 73 20 65 61 63 68 20 6d 6f 64 75 6c 65 20 69 6e |s each module in| 000083f0 20 74 75 72 6e 20 66 6f 72 20 69 74 27 73 20 6e | turn for it's n| 00008400 61 6d 65 2e 20 20 49 74 20 69 73 20 75 70 20 74 |ame. It is up t| 00008410 6f 20 74 68 65 20 6d 6f 64 75 6c 65 20 74 6f 0a |o the module to.| 00008420 61 63 6b 6e 6f 77 6c 65 64 67 65 20 74 68 69 73 |acknowledge this| 00008430 20 77 69 74 68 20 4d 65 73 73 61 67 65 5f 4d 6f | with Message_Mo| 00008440 64 75 6c 65 4c 6f 61 64 65 64 2c 20 6d 65 73 73 |duleLoaded, mess| 00008450 61 67 65 20 6e 75 6d 62 65 72 20 31 2e 20 20 54 |age number 1. T| 00008460 68 69 73 20 6d 65 73 73 61 67 65 0a 69 73 20 72 |his message.is r| 00008470 65 61 6c 6c 79 20 73 75 70 70 6c 69 65 64 20 74 |eally supplied t| 00008480 6f 20 63 68 65 63 6b 20 77 68 65 74 68 65 72 20 |o check whether | 00008490 61 20 67 69 76 65 6e 20 6d 6f 64 75 6c 65 20 69 |a given module i| 000084a0 73 20 6c 6f 61 64 65 64 2e 0a 0a 31 20 2d 20 4d |s loaded...1 - M| 000084b0 6f 64 75 6c 65 20 6c 6f 61 64 65 64 20 20 20 20 |odule loaded | 000084c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 000084e0 20 20 20 20 4d 65 73 73 61 67 65 5f 4d 6f 64 75 | Message_Modu| 000084f0 6c 65 4c 6f 61 64 65 64 0a 7e 7e 7e 7e 7e 7e 7e |leLoaded.~~~~~~~| 00008500 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a 45 6e 74 72 |~~~~~~~~~~..Entr| 00008510 79 20 20 3a 0a 20 20 20 20 20 20 20 20 20 2b 30 |y :. +0| 00008520 20 6d 6f 64 75 6c 65 20 6e 61 6d 65 0a 20 20 20 | module name. | 00008530 20 20 20 20 20 20 2b 31 32 20 69 6e 66 6f 20 77 | +12 info w| 00008540 69 6e 64 6f 77 20 68 61 6e 64 6c 65 0a 20 20 20 |indow handle. | 00008550 20 20 20 20 20 20 2b 31 36 20 6d 65 6e 75 20 62 | +16 menu b| 00008560 6c 6f 63 6b 20 61 64 64 72 65 73 73 0a 45 78 69 |lock address.Exi| 00008570 74 20 20 20 3a 0a 20 20 20 20 20 20 20 20 20 4e |t :. N| 00008580 6f 6e 65 0a 41 63 74 69 6f 6e 20 3a 0a 20 20 20 |one.Action :. | 00008590 20 20 20 20 20 20 49 66 20 79 6f 75 72 20 6d 6f | If your mo| 000085a0 64 75 6c 65 20 72 65 63 65 69 76 65 73 20 61 20 |dule receives a | 000085b0 4d 65 73 73 61 67 65 5f 4d 6f 64 75 6c 65 45 78 |Message_ModuleEx| 000085c0 69 73 74 73 20 74 68 65 6e 20 79 6f 75 20 73 68 |ists then you sh| 000085d0 6f 75 6c 64 20 72 65 70 6c 79 0a 28 69 66 20 74 |ould reply.(if t| 000085e0 68 65 20 6d 6f 64 75 6c 65 20 6e 61 6d 65 20 61 |he module name a| 000085f0 74 20 62 6c 6f 63 6b 2b 30 20 6d 61 74 63 68 65 |t block+0 matche| 00008600 73 20 79 6f 75 72 73 29 20 77 69 74 68 20 74 68 |s yours) with th| 00008610 69 73 20 6d 65 73 73 61 67 65 2e 20 20 57 68 61 |is message. Wha| 00008620 74 20 74 68 65 6e 0a 68 61 70 70 65 6e 73 20 69 |t then.happens i| 00008630 73 20 64 65 70 65 6e 64 61 6e 74 20 6f 6e 20 79 |s dependant on y| 00008640 6f 75 72 20 6d 6f 64 75 6c 65 28 73 29 0a 0a 59 |our module(s)..Y| 00008650 6f 75 20 73 68 6f 75 6c 64 20 6e 6f 74 65 20 74 |ou should note t| 00008660 68 61 74 20 61 6c 6c 20 70 6f 6c 6c 20 63 6f 64 |hat all poll cod| 00008670 65 73 20 61 6e 64 20 6d 65 73 73 61 67 65 73 20 |es and messages | 00008680 61 72 65 20 62 72 6f 61 64 63 61 73 74 20 72 61 |are broadcast ra| 00008690 74 68 65 72 20 74 68 61 6e 0a 64 69 72 65 63 74 |ther than.direct| 000086a0 65 64 2c 20 73 6f 20 79 6f 75 20 73 68 6f 75 6c |ed, so you shoul| 000086b0 64 20 6f 6e 6c 79 20 72 65 70 6c 79 20 6f 72 20 |d only reply or | 000086c0 61 63 63 65 70 74 20 6d 65 73 73 61 67 65 20 31 |accept message 1| 000086d0 20 69 66 20 69 74 20 69 73 20 64 69 72 65 63 74 | if it is direct| 000086e0 65 64 20 61 74 0a 79 6f 75 2e 20 20 54 68 69 73 |ed at.you. This| 000086f0 20 69 73 20 74 68 65 20 72 65 61 73 6f 6e 20 77 | is the reason w| 00008700 68 79 20 62 6c 6f 63 6b 2b 30 20 6f 66 20 4d 65 |hy block+0 of Me| 00008710 73 73 61 67 65 5f 4d 6f 64 75 6c 65 4c 6f 61 64 |ssage_ModuleLoad| 00008720 65 64 20 63 6f 6e 74 61 69 6e 73 20 74 68 65 0a |ed contains the.| 00008730 6d 6f 64 75 6c 65 20 6e 61 6d 65 2e 0a 0a 41 6c |module name...Al| 00008740 73 6f 20 79 6f 75 20 73 68 6f 75 6c 64 20 72 65 |so you should re| 00008750 70 6c 79 20 74 6f 20 4d 65 73 73 61 67 65 5f 4d |ply to Message_M| 00008760 6f 64 75 6c 65 45 78 69 73 74 73 20 77 69 74 68 |oduleExists with| 00008770 20 4d 65 73 73 61 67 65 4d 6f 64 75 6c 65 4c 6f | MessageModuleLo| 00008780 61 64 65 64 20 69 6e 0a 74 68 65 20 70 6f 6c 6c |aded in.the poll| 00008790 20 6c 6f 6f 70 2e 20 20 59 6f 75 20 77 69 6c 6c | loop. You will| 000087a0 20 72 65 63 65 69 76 65 20 4d 65 73 73 61 67 65 | receive Message| 000087b0 5f 4d 6f 64 75 6c 65 45 78 69 73 74 73 20 69 6e |_ModuleExists in| 000087c0 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 0a 3c 6d | the function.<m| 000087d0 6f 64 75 6c 65 20 6e 61 6d 65 3e 5f 6d 65 73 73 |odule name>_mess| 000087e0 61 67 65 2c 20 66 72 6f 6d 20 74 68 65 72 65 20 |age, from there | 000087f0 79 6f 75 20 73 68 6f 75 6c 64 20 73 65 74 20 61 |you should set a| 00008800 20 66 6c 61 67 20 61 6e 64 20 72 65 70 6c 79 20 | flag and reply | 00008810 69 6e 20 74 68 65 0a 70 6f 6c 6c 20 6c 6f 6f 70 |in the.poll loop| 00008820 2e 20 20 54 68 69 73 20 61 70 70 6c 69 65 73 20 |. This applies | 00008830 74 6f 20 61 6c 6c 20 6d 65 73 73 61 67 65 73 2e |to all messages.| 00008840 20 20 54 68 69 73 20 69 73 20 73 6f 20 74 68 61 | This is so tha| 00008850 74 20 21 53 74 69 63 6b 79 42 72 64 0a 63 61 6e |t !StickyBrd.can| 00008860 20 63 79 63 6c 65 20 74 68 72 6f 75 67 68 20 61 | cycle through a| 00008870 6c 6c 20 6d 6f 64 75 6c 65 73 20 77 69 74 68 6f |ll modules witho| 00008880 75 74 20 69 6e 74 65 72 72 75 70 74 69 6f 6e 20 |ut interruption | 00008890 61 73 20 6d 65 73 73 61 67 65 73 20 77 69 6c 6c |as messages will| 000088a0 20 67 6f 0a 74 68 72 6f 75 67 68 20 74 68 65 20 | go.through the | 000088b0 73 61 6d 65 20 66 75 6e 63 74 69 6f 6e 2e 20 20 |same function. | 000088c0 49 6e 20 74 68 65 20 72 65 63 6f 6d 6d 65 6e 64 |In the recommend| 000088d0 65 64 20 69 6e 69 74 69 61 6c 69 73 65 20 63 6f |ed initialise co| 000088e0 64 65 20 67 69 76 65 6e 0a 61 62 6f 76 65 20 74 |de given.above t| 000088f0 68 65 20 66 6c 61 67 20 69 73 20 63 61 6c 6c 65 |he flag is calle| 00008900 64 20 27 72 65 70 6c 79 27 2e 0a 0a 4f 74 68 65 |d 'reply'...Othe| 00008910 72 20 6e 6f 74 65 73 20 20 20 20 20 20 20 20 20 |r notes | 00008920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00008950 20 20 20 20 20 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e | .~~~~~~~~~~| 00008960 7e 0a 0a 41 20 77 6f 72 6b 73 70 61 63 65 20 61 |~..A workspace a| 00008970 72 65 61 2c 20 70 6f 69 6e 74 65 72 25 2c 20 69 |rea, pointer%, i| 00008980 73 20 73 65 74 20 75 70 20 66 6f 72 20 79 6f 75 |s set up for you| 00008990 20 74 6f 20 75 73 65 2c 20 70 6c 65 61 73 65 20 | to use, please | 000089a0 75 73 65 20 69 74 20 74 6f 0a 63 6f 6e 73 65 72 |use it to.conser| 000089b0 76 65 20 6d 65 6d 6f 72 79 2e 20 70 6f 69 6e 74 |ve memory. point| 000089c0 65 72 25 20 69 73 20 34 30 30 20 62 79 74 65 73 |er% is 400 bytes| 000089d0 20 6c 6f 6e 67 20 61 6e 64 20 63 61 6e 20 62 65 | long and can be| 000089e0 20 75 73 65 64 20 66 6f 72 20 61 6e 79 74 68 69 | used for anythi| 000089f0 6e 67 2c 0a 62 75 74 20 69 74 20 73 70 65 63 69 |ng,.but it speci| 00008a00 66 69 63 61 6c 6c 79 20 75 73 65 66 75 6c 20 61 |fically useful a| 00008a10 73 20 61 20 62 6c 6f 63 6b 20 66 6f 72 20 6d 65 |s a block for me| 00008a20 73 73 61 67 65 20 72 6f 75 74 69 6e 65 73 2e 0a |ssage routines..| 00008a30 21 53 74 69 63 6b 79 42 72 64 20 63 61 6e 20 63 |!StickyBrd can c| 00008a40 6f 70 65 20 77 69 74 68 20 31 30 20 6d 6f 64 75 |ope with 10 modu| 00008a50 6c 65 73 20 61 74 20 74 68 65 20 70 72 65 73 65 |les at the prese| 00008a60 6e 74 20 74 69 6d 65 2e 20 20 53 68 6f 75 6c 64 |nt time. Should| 00008a70 20 79 6f 75 20 74 72 79 20 61 6e 64 0a 6c 6f 61 | you try and.loa| 00008a80 64 20 6d 6f 72 65 2c 20 21 53 74 69 63 6b 79 42 |d more, !StickyB| 00008a90 72 64 20 77 69 6c 6c 20 70 72 6f 62 61 62 6c 79 |rd will probably| 00008aa0 20 63 72 61 73 68 20 77 69 74 68 20 61 6e 20 61 | crash with an a| 00008ab0 64 64 72 65 73 73 20 65 78 63 65 70 74 69 6f 6e |ddress exception| 00008ac0 20 65 72 72 6f 72 2c 0a 74 68 69 73 20 77 69 6c | error,.this wil| 00008ad0 6c 20 62 65 20 66 69 78 65 64 20 69 6e 20 74 68 |l be fixed in th| 00008ae0 65 20 6e 65 78 74 20 76 65 72 73 69 6f 6e 20 28 |e next version (| 00008af0 49 20 68 6f 70 65 29 2e 0a 0a 54 68 65 20 41 75 |I hope)...The Au| 00008b00 74 6f 52 75 6e 20 66 69 6c 65 0a 7e 7e 7e 7e 7e |toRun file.~~~~~| 00008b10 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a 49 6e 73 |~~~~~~~~~~~..Ins| 00008b20 69 64 65 20 74 68 65 20 45 78 74 4d 6f 64 6c 73 |ide the ExtModls| 00008b30 20 64 69 72 65 63 74 6f 72 79 20 74 68 65 72 65 | directory there| 00008b40 20 69 73 20 61 20 74 65 78 74 20 66 69 6c 65 20 | is a text file | 00008b50 63 61 6c 6c 65 64 20 41 75 74 6f 52 75 6e 2e 20 |called AutoRun. | 00008b60 20 54 68 69 73 20 69 73 0a 75 73 65 64 20 74 6f | This is.used to| 00008b70 20 72 75 6e 20 74 68 65 20 6d 6f 64 75 6c 65 73 | run the modules| 00008b80 20 69 6e 20 74 68 65 20 45 78 74 4d 6f 64 6c 73 | in the ExtModls| 00008b90 20 64 69 72 65 63 74 6f 72 79 2e 20 20 54 6f 20 | directory. To | 00008ba0 73 74 61 72 74 20 77 69 74 68 20 69 74 20 77 69 |start with it wi| 00008bb0 6c 6c 0a 63 6f 6e 74 61 69 6e 20 73 6f 6d 74 68 |ll.contain somth| 00008bc0 69 6e 67 20 6c 69 6b 65 20 74 68 65 20 66 6f 6c |ing like the fol| 00008bd0 6c 6f 77 69 6e 67 3a 0a 0a 7c 20 41 75 74 6f 72 |lowing:..| Autor| 00008be0 75 6e 20 66 69 6c 65 20 66 6f 72 20 21 53 74 69 |un file for !Sti| 00008bf0 63 6b 79 42 72 64 20 30 2e 38 30 0a 7c 0a 7b 72 |ckyBrd 0.80.|.{r| 00008c00 75 6e 7d 20 63 6f 6d 6d 61 6e 64 3b 0a 7b 72 75 |un} command;.{ru| 00008c10 6e 7d 20 64 69 72 63 68 61 6e 67 65 3b 0a 7b 65 |n} dirchange;.{e| 00008c20 6e 64 7d 0a 0a 54 68 65 20 41 75 74 6f 52 75 6e |nd}..The AutoRun| 00008c30 20 66 69 6c 65 20 75 73 65 73 20 61 20 73 63 72 | file uses a scr| 00008c40 69 70 74 20 6c 61 6e 67 75 61 67 65 2c 20 77 68 |ipt language, wh| 00008c50 69 63 68 20 72 65 63 6f 67 6e 69 7a 65 73 20 74 |ich recognizes t| 00008c60 68 72 65 65 20 63 6f 6d 6d 61 6e 64 73 3a 0a 7b |hree commands:.{| 00008c70 72 75 6e 7d 2c 7b 72 65 6d 7d 2c 20 61 6e 64 20 |run},{rem}, and | 00008c80 7b 65 6e 64 7d 2e 20 20 49 6e 20 61 64 64 69 74 |{end}. In addit| 00008c90 69 6f 6e 2c 20 7c 20 63 61 6e 20 62 65 20 75 73 |ion, | can be us| 00008ca0 65 64 20 74 6f 20 69 6e 74 72 6f 64 75 63 65 20 |ed to introduce | 00008cb0 61 20 63 6f 6d 6d 65 6e 74 2e 0a 42 6c 61 6e 6b |a comment..Blank| 00008cc0 20 6c 69 6e 65 73 20 63 61 6e 20 62 65 20 75 73 | lines can be us| 00008cd0 65 64 2c 20 61 6e 64 20 74 68 65 20 75 73 61 67 |ed, and the usag| 00008ce0 65 20 6f 66 20 74 68 65 20 74 68 72 65 65 20 63 |e of the three c| 00008cf0 6f 6d 6d 61 6e 64 73 20 69 73 20 6f 62 76 69 6f |ommands is obvio| 00008d00 75 73 2c 0a 49 20 68 6f 70 65 20 2d 20 7b 72 75 |us,.I hope - {ru| 00008d10 6e 7d 20 72 75 6e 73 20 61 20 6d 6f 64 75 6c 65 |n} runs a module| 00008d20 2c 20 7b 72 65 6d 7d 20 69 6e 73 65 72 74 73 20 |, {rem} inserts | 00008d30 61 20 63 6f 6d 6d 65 6e 74 2c 20 61 6e 64 20 7b |a comment, and {| 00008d40 65 6e 64 7d 20 65 6e 64 73 20 74 68 65 0a 66 69 |end} ends the.fi| 00008d50 6c 65 2e 0a 54 68 65 20 73 65 6d 69 63 6f 6c 6f |le..The semicolo| 00008d60 6e 20 61 66 74 65 72 20 65 61 63 68 20 7b 72 75 |n after each {ru| 00008d70 6e 7d 20 63 6f 6d 6d 61 6e 64 20 69 6e 64 69 63 |n} command indic| 00008d80 61 74 65 73 20 61 20 66 75 72 74 68 65 72 20 63 |ates a further c| 00008d90 6f 6d 6d 61 6e 64 20 2d 20 79 6f 75 0a 68 61 76 |ommand - you.hav| 00008da0 65 20 6e 6f 20 6e 65 65 64 20 74 6f 20 75 73 65 |e no need to use| 00008db0 20 74 68 69 73 20 61 66 74 65 72 20 61 20 7b 72 | this after a {r| 00008dc0 65 6d 7d 2c 20 62 6c 61 6e 6b 20 6c 69 6e 65 20 |em}, blank line | 00008dd0 6f 72 20 7c 20 61 73 20 74 68 65 73 65 20 61 72 |or | as these ar| 00008de0 65 20 69 67 6e 6f 72 65 64 2e 0a 54 6f 20 61 64 |e ignored..To ad| 00008df0 64 20 61 20 6d 6f 64 75 6c 65 20 74 6f 20 74 68 |d a module to th| 00008e00 65 20 6c 69 73 74 2c 20 69 6e 73 65 72 74 20 61 |e list, insert a| 00008e10 6e 20 65 78 74 72 61 20 7b 72 75 6e 7d 20 63 6f |n extra {run} co| 00008e20 6d 6d 61 6e 64 20 62 65 66 6f 72 65 20 74 68 65 |mmand before the| 00008e30 20 7b 65 6e 64 7d 2e 0a 52 65 6d 65 6d 62 65 72 | {end}..Remember| 00008e40 20 74 6f 20 73 75 66 66 69 78 20 69 74 20 77 69 | to suffix it wi| 00008e50 74 68 20 61 20 73 65 6d 69 2d 63 6f 6c 6f 6e 20 |th a semi-colon | 00008e60 28 3b 29 20 61 73 20 74 68 69 73 20 69 6e 64 69 |(;) as this indi| 00008e70 63 61 74 65 73 20 74 68 65 72 65 20 61 72 65 20 |cates there are | 00008e80 6d 6f 72 65 0a 63 6f 6d 6d 61 6e 64 73 2e 0a 0a |more.commands...| 00008e90 41 70 70 72 6f 76 69 6e 67 20 6d 6f 64 75 6c 65 |Approving module| 00008ea0 73 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |s.~~~~~~~~~~~~~~| 00008eb0 7e 7e 7e 0a 0a 50 6c 65 61 73 65 20 73 65 6e 64 |~~~..Please send| 00008ec0 20 61 6e 79 20 6d 6f 64 75 6c 65 73 20 79 6f 75 | any modules you| 00008ed0 20 77 72 69 74 65 20 74 6f 20 6d 65 2c 20 74 6f | write to me, to| 00008ee0 20 67 65 74 20 74 68 65 6d 20 61 70 70 72 6f 76 | get them approv| 00008ef0 65 64 20 61 6e 64 20 70 6f 73 73 69 62 6c 79 0a |ed and possibly.| 00008f00 69 6e 63 6c 75 64 65 64 20 69 6e 20 74 68 65 20 |included in the | 00008f10 6e 65 78 74 20 72 65 6c 65 61 73 65 2e 20 20 44 |next release. D| 00008f20 6f 6e 27 74 20 64 69 73 74 72 69 62 75 74 65 20 |on't distribute | 00008f30 6d 6f 64 75 6c 65 73 20 77 69 74 68 6f 75 74 20 |modules without | 00008f40 74 68 65 6d 0a 62 65 69 6e 67 20 61 70 70 72 6f |them.being appro| 00008f50 76 65 64 2c 20 61 6e 64 20 70 6c 65 61 73 65 20 |ved, and please | 00008f60 64 6f 6e 27 74 20 61 6c 74 65 72 20 74 68 65 20 |don't alter the | 00008f70 74 61 62 6c 65 20 69 6e 20 74 68 65 20 21 4d 61 |table in the !Ma| 00008f80 6e 75 61 6c 20 61 70 70 6c 69 63 61 74 69 6f 6e |nual application| 00008f90 2e 0a 54 72 79 20 61 6e 64 20 66 6f 6c 6c 6f 77 |..Try and follow| 00008fa0 20 61 6c 6c 20 74 68 65 20 67 75 69 64 65 6c 69 | all the guideli| 00008fb0 6e 65 73 20 67 69 76 65 6e 20 68 65 72 65 20 61 |nes given here a| 00008fc0 73 20 74 68 69 73 20 77 61 79 20 79 6f 75 72 20 |s this way your | 00008fd0 6d 6f 64 75 6c 65 20 73 74 61 6e 64 73 0a 61 20 |module stands.a | 00008fe0 62 65 74 74 65 72 20 63 68 61 6e 63 65 20 6f 66 |better chance of| 00008ff0 20 62 65 69 6e 67 20 61 70 70 72 6f 76 65 64 2e | being approved.| 00009000 20 20 54 68 65 20 6d 6f 64 75 6c 65 20 61 70 70 | The module app| 00009010 72 6f 76 69 6e 67 20 73 79 73 74 65 6d 20 69 73 |roving system is| 00009020 20 72 65 61 6c 6c 79 0a 62 61 73 65 64 20 6f 6e | really.based on| 00009030 20 21 50 6c 61 63 65 49 74 27 73 20 73 69 6d 69 | !PlaceIt's simi| 00009040 6c 61 72 20 73 79 73 74 65 6d 20 28 73 6f 72 72 |lar system (sorr| 00009050 79 20 49 61 6e 29 20 61 6e 64 20 49 27 76 65 20 |y Ian) and I've | 00009060 75 73 65 64 20 61 20 73 69 6d 69 6c 61 72 0a 69 |used a similar.i| 00009070 64 65 61 20 61 73 20 69 74 20 68 65 6c 70 73 20 |dea as it helps | 00009080 74 68 65 20 75 73 65 72 20 62 79 20 74 65 6c 6c |the user by tell| 00009090 69 6e 67 20 74 68 65 6d 20 77 68 61 74 20 6d 6f |ing them what mo| 000090a0 64 75 6c 65 73 20 72 65 61 6c 6c 79 20 64 6f 20 |dules really do | 000090b0 77 6f 72 6b 20 61 6e 64 0a 69 66 20 74 68 65 79 |work and.if they| 000090c0 20 66 6f 6c 6c 6f 77 20 61 6c 6c 20 74 68 65 20 | follow all the | 000090d0 73 74 61 6e 64 61 72 64 73 2e 20 20 49 20 68 6f |standards. I ho| 000090e0 70 65 20 74 6f 20 70 75 62 6c 69 73 68 20 61 20 |pe to publish a | 000090f0 63 72 69 74 65 72 69 61 20 73 6f 20 74 68 61 74 |criteria so that| 00009100 0a 77 72 69 74 65 72 73 20 63 61 6e 20 63 68 65 |.writers can che| 00009110 63 6b 20 74 68 65 69 72 20 6d 6f 64 75 6c 65 73 |ck their modules| 00009120 20 61 67 61 69 6e 73 74 20 74 68 61 74 2e 0a 0a | against that...| 00009130 53 79 73 74 65 6d 20 61 6e 64 20 6e 6f 72 6d 61 |System and norma| 00009140 6c 20 76 61 72 69 61 62 6c 65 73 0a 7e 7e 7e 7e |l variables.~~~~| 00009150 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |~~~~~~~~~~~~~~~~| 00009160 7e 7e 7e 7e 7e 7e 7e 0a 0a 53 65 76 65 72 61 6c |~~~~~~~..Several| 00009170 20 73 79 73 74 65 6d 20 76 61 72 69 61 62 6c 65 | system variable| 00009180 73 20 61 72 65 20 73 65 74 20 75 70 20 73 6f 20 |s are set up so | 00009190 61 73 20 74 6f 20 6d 61 6b 65 20 79 6f 75 72 20 |as to make your | 000091a0 74 61 73 6b 20 65 61 73 69 65 72 3b 20 74 68 65 |task easier; the| 000091b0 73 65 20 61 72 65 0a 0a 20 53 74 69 63 6b 79 42 |se are.. StickyB| 000091c0 72 64 24 44 69 72 20 20 20 20 20 20 20 20 20 3d |rd$Dir =| 000091d0 20 6d 61 69 6e 20 21 53 74 69 63 6b 79 42 72 64 | main !StickyBrd| 000091e0 20 64 69 72 65 63 74 6f 72 79 0a 20 53 74 69 63 | directory. Stic| 000091f0 6b 79 42 72 64 52 65 73 24 44 69 72 20 20 20 20 |kyBrdRes$Dir | 00009200 20 20 3d 20 21 53 74 69 63 6b 79 42 72 64 20 72 | = !StickyBrd r| 00009210 65 73 6f 75 72 63 65 20 64 69 72 65 63 74 6f 72 |esource director| 00009220 79 0a 20 53 74 69 63 6b 79 42 72 64 45 78 74 24 |y. StickyBrdExt$| 00009230 44 69 72 20 20 20 20 20 20 3d 20 21 53 74 69 63 |Dir = !Stic| 00009240 6b 79 42 72 64 20 65 78 74 65 6e 74 69 6f 6e 73 |kyBrd extentions| 00009250 20 64 69 72 65 63 74 6f 72 79 0a 0a 52 61 69 73 | directory..Rais| 00009260 69 6e 67 20 65 72 72 6f 72 73 0a 7e 7e 7e 7e 7e |ing errors.~~~~~| 00009270 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a 59 6f 75 72 20 |~~~~~~~~~..Your | 00009280 6d 6f 64 75 6c 65 73 20 6e 65 65 64 20 74 6f 20 |modules need to | 00009290 72 61 69 73 65 20 65 72 72 6f 72 73 20 69 6e 20 |raise errors in | 000092a0 61 20 75 6e 69 66 6f 72 6d 20 77 61 79 2e 20 20 |a uniform way. | 000092b0 54 68 69 73 20 65 6e 73 75 72 65 73 20 74 68 61 |This ensures tha| 000092c0 74 20 74 68 65 0a 75 73 65 72 20 64 6f 65 73 6e |t the.user doesn| 000092d0 27 74 20 67 65 74 20 63 6f 6e 66 75 73 65 64 20 |'t get confused | 000092e0 61 6e 64 20 74 68 61 74 20 74 68 69 6e 67 73 20 |and that things | 000092f0 61 72 65 20 70 72 65 73 65 6e 74 65 64 20 63 6c |are presented cl| 00009300 65 61 72 6c 79 20 61 6e 64 0a 77 69 74 68 20 74 |early and.with t| 00009310 68 65 20 6d 69 6e 69 6d 75 6d 20 6f 66 20 66 75 |he minimum of fu| 00009320 73 73 2e 0a 54 68 65 20 66 69 72 73 74 20 74 68 |ss..The first th| 00009330 69 6e 67 20 74 6f 20 64 6f 20 69 73 20 74 6f 20 |ing to do is to | 00009340 64 69 73 74 69 6e 67 75 69 73 68 20 62 65 74 77 |distinguish betw| 00009350 65 65 6e 20 66 61 74 61 6c 20 61 6e 64 20 6e 6f |een fatal and no| 00009360 6e 2d 66 61 74 61 6c 20 65 72 72 6f 72 73 2c 0a |n-fatal errors,.| 00009370 61 73 20 74 68 65 20 75 73 65 72 20 77 6f 75 6c |as the user woul| 00009380 64 20 70 72 6f 62 61 62 6c 79 20 6c 69 6b 65 20 |d probably like | 00009390 74 6f 20 74 72 79 20 61 6e 64 20 73 61 6c 76 61 |to try and salva| 000093a0 67 65 20 73 6f 6d 65 20 77 6f 72 6b 20 69 66 20 |ge some work if | 000093b0 74 68 65 20 77 6f 72 73 74 0a 68 61 70 70 65 6e |the worst.happen| 000093c0 73 2e 20 20 49 66 20 79 6f 75 20 63 61 6e 20 72 |s. If you can r| 000093d0 65 63 6f 76 65 72 20 66 72 6f 6d 20 61 6e 20 65 |ecover from an e| 000093e0 72 72 6f 72 2c 20 65 76 65 6e 20 69 66 20 69 74 |rror, even if it| 000093f0 20 6d 65 61 6e 73 20 6c 6f 73 69 6e 67 20 73 6f | means losing so| 00009400 6d 65 0a 76 61 72 69 61 62 6c 65 73 2c 20 73 65 |me.variables, se| 00009410 6e 64 20 61 20 6e 6f 6e 2d 66 61 74 61 6c 20 65 |nd a non-fatal e| 00009420 72 72 6f 72 2e 0a 49 66 20 74 68 65 72 65 20 69 |rror..If there i| 00009430 73 20 6e 6f 20 63 68 61 6e 63 65 20 6f 66 20 63 |s no chance of c| 00009440 6f 6d 69 6e 67 20 6f 75 74 20 6f 66 20 74 68 65 |oming out of the| 00009450 20 65 72 72 6f 72 20 73 65 6e 64 20 61 20 66 61 | error send a fa| 00009460 74 61 6c 20 65 72 72 6f 72 20 72 65 71 75 65 73 |tal error reques| 00009470 74 0a 62 65 63 61 75 73 65 20 74 68 65 20 63 6f |t.because the co| 00009480 6d 70 75 74 65 72 20 6d 69 67 68 74 20 6c 6f 63 |mputer might loc| 00009490 6b 20 75 70 20 69 66 20 79 6f 75 20 74 72 79 20 |k up if you try | 000094a0 74 6f 20 73 6f 72 74 20 69 74 20 6f 75 74 20 6f |to sort it out o| 000094b0 72 20 74 65 72 6d 69 6e 61 74 65 0a 79 6f 75 72 |r terminate.your| 000094c0 20 6d 6f 64 75 6c 65 2e 0a 44 6f 6e 27 74 20 61 | module..Don't a| 000094d0 64 64 20 74 68 65 20 77 6f 72 64 20 66 61 74 61 |dd the word fata| 000094e0 6c 20 74 6f 20 79 6f 75 72 20 65 72 72 6f 72 20 |l to your error | 000094f0 74 65 78 74 20 69 66 20 79 6f 75 20 61 72 65 20 |text if you are | 00009500 72 61 69 73 69 6e 67 20 61 20 66 61 74 61 6c 20 |raising a fatal | 00009510 65 72 72 6f 72 2c 0a 74 68 69 73 20 69 73 20 64 |error,.this is d| 00009520 6f 6e 65 20 66 6f 72 20 79 6f 75 2e 0a 41 20 6e |one for you..A n| 00009530 6f 6e 2d 66 61 74 61 6c 20 65 72 72 6f 72 20 73 |on-fatal error s| 00009540 68 6f 75 6c 64 20 72 65 61 64 20 73 6f 6d 74 68 |hould read somth| 00009550 69 6e 67 20 6c 69 6b 65 0a 20 3c 6d 6f 64 75 6c |ing like. <modul| 00009560 65 20 6e 61 6d 65 3e 3a 20 3c 65 72 72 6f 72 20 |e name>: <error | 00009570 64 65 73 63 72 69 70 74 69 6f 6e 3e 0a 73 6f 20 |description>.so | 00009580 74 68 61 74 20 70 65 72 68 61 70 73 20 69 74 20 |that perhaps it | 00009590 6d 69 67 68 74 20 63 6f 6d 65 20 6f 75 74 20 61 |might come out a| 000095a0 73 3a 0a 20 43 6f 6d 6d 61 6e 64 3a 20 43 61 6e |s:. Command: Can| 000095b0 6e 6f 74 20 65 78 65 63 75 74 65 20 63 6f 6d 6d |not execute comm| 000095c0 61 6e 64 2e 0a 46 61 74 61 6c 20 65 72 72 6f 72 |and..Fatal error| 000095d0 73 20 73 68 6f 75 6c 64 20 66 6f 6c 6c 6f 77 20 |s should follow | 000095e0 74 68 65 20 73 61 6d 65 20 72 75 6c 65 73 2c 20 |the same rules, | 000095f0 62 75 74 20 74 68 65 20 74 65 78 74 20 46 61 74 |but the text Fat| 00009600 61 6c 3b 20 69 73 20 61 64 64 65 64 0a 62 65 66 |al; is added.bef| 00009610 6f 72 65 20 74 68 65 20 65 72 72 6f 72 20 69 73 |ore the error is| 00009620 20 66 6c 61 67 67 65 64 2c 20 73 6f 20 69 6e 20 | flagged, so in | 00009630 67 65 6e 65 72 61 6c 20 66 61 74 61 6c 20 65 72 |general fatal er| 00009640 72 6f 72 73 20 77 69 6c 6c 20 72 65 61 64 20 73 |rors will read s| 00009650 6f 6d 65 74 68 69 6e 67 0a 6c 69 6b 65 3a 0a 20 |omething.like:. | 00009660 46 61 74 61 6c 3b 20 43 6f 6d 6d 61 6e 64 3a 20 |Fatal; Command: | 00009670 43 61 6e 6e 6f 74 20 65 78 65 63 75 74 65 20 63 |Cannot execute c| 00009680 6f 6d 6d 61 6e 64 2e 0a 59 6f 75 20 6d 61 79 20 |ommand..You may | 00009690 6e 6f 74 65 20 74 68 61 74 20 21 53 74 69 63 6b |note that !Stick| 000096a0 79 42 72 64 20 73 65 6e 64 73 20 72 6f 75 6e 64 |yBrd sends round| 000096b0 20 61 20 70 6f 6c 6c 20 6d 65 73 73 61 67 65 20 | a poll message | 000096c0 31 33 20 61 66 74 65 72 20 61 20 66 61 74 61 6c |13 after a fatal| 000096d0 0a 65 72 72 6f 72 2c 20 62 75 74 20 69 66 20 79 |.error, but if y| 000096e0 6f 75 72 20 6d 6f 64 75 6c 65 20 63 61 75 73 65 |our module cause| 000096f0 64 20 74 68 65 20 65 72 72 6f 72 20 64 6f 6e 27 |d the error don'| 00009700 74 20 72 65 73 70 6f 6e 64 2c 20 61 73 20 74 68 |t respond, as th| 00009710 69 73 20 63 6f 6c 75 6c 64 0a 73 74 61 72 74 20 |is coluld.start | 00009720 61 20 6e 65 76 65 72 20 65 6e 64 69 6e 67 20 63 |a never ending c| 00009730 79 63 6c 65 2e 0a 21 53 74 69 63 6b 79 42 72 64 |ycle..!StickyBrd| 00009740 20 64 6f 65 73 6e 27 74 20 61 63 74 75 61 6c 6c | doesn't actuall| 00009750 79 20 75 73 65 20 65 72 72 6f 72 20 6e 75 6d 62 |y use error numb| 00009760 65 72 73 20 61 73 20 73 75 63 68 2c 20 74 68 65 |ers as such, the| 00009770 20 6d 6f 64 75 6c 65 20 6e 61 6d 65 20 69 73 0a | module name is.| 00009780 75 73 65 64 20 74 6f 20 64 69 73 74 69 6e 67 75 |used to distingu| 00009790 69 73 68 20 65 72 72 6f 72 73 2e 20 20 54 68 65 |ish errors. The| 000097a0 72 65 66 6f 72 65 20 64 6f 6e 27 74 20 69 6e 63 |refore don't inc| 000097b0 6c 75 64 65 20 74 68 69 6e 67 73 20 6c 69 6b 65 |lude things like| 000097c0 20 28 69 6e 74 2e 20 65 72 72 6f 72 0a 63 6f 64 | (int. error.cod| 000097d0 65 20 78 78 78 29 20 69 6e 20 74 68 65 20 6d 65 |e xxx) in the me| 000097e0 73 73 61 67 65 2c 20 62 75 74 20 79 6f 75 20 63 |ssage, but you c| 000097f0 61 6e 20 75 73 65 20 28 74 79 70 65 20 3d 20 78 |an use (type = x| 00009800 29 20 61 73 20 74 68 69 73 20 73 65 70 65 72 61 |) as this sepera| 00009810 74 65 73 0a 73 69 6d 69 6c 61 72 20 65 72 72 6f |tes.similar erro| 00009820 72 73 20 61 6e 64 20 73 74 6f 70 73 20 28 68 6f |rs and stops (ho| 00009830 70 65 66 75 6c 6c 79 29 20 63 6f 6e 66 75 73 69 |pefully) confusi| 00009840 6f 6e 2e 0a 54 68 65 73 65 20 61 72 65 20 6f 6e |on..These are on| 00009850 6c 79 20 67 75 69 64 65 6c 69 6e 65 73 2c 20 70 |ly guidelines, p| 00009860 6c 65 61 73 65 20 64 6f 6e 27 74 20 74 61 6b 65 |lease don't take| 00009870 20 74 68 65 6d 20 61 73 20 61 20 73 74 72 61 69 | them as a strai| 00009880 67 68 74 2d 6a 61 63 6b 65 74 0a 61 73 20 74 68 |ght-jacket.as th| 00009890 69 73 20 77 69 6c 6c 20 64 6f 20 6d 6f 72 65 20 |is will do more | 000098a0 68 61 72 6d 20 74 68 61 6e 20 67 6f 6f 64 2e 0a |harm than good..| 000098b0 0a 57 68 65 6e 20 64 65 62 75 67 67 69 6e 67 20 |.When debugging | 000098c0 61 20 6d 6f 64 75 6c 65 2c 20 79 6f 75 20 6d 61 |a module, you ma| 000098d0 79 20 67 65 74 20 6f 64 64 20 65 72 72 6f 72 73 |y get odd errors| 000098e0 20 6c 69 6b 65 20 4e 6f 20 53 75 63 68 20 46 75 | like No Such Fu| 000098f0 6e 63 74 69 6f 6e 2f 0a 50 72 6f 63 65 64 75 72 |nction/.Procedur| 00009900 65 20 61 74 20 6c 69 6e 65 20 31 38 30 33 30 20 |e at line 18030 | 00009910 6f 72 20 73 6f 6d 65 20 6f 74 68 65 72 20 68 69 |or some other hi| 00009920 67 68 20 6e 75 6d 62 65 72 2e 20 20 54 68 69 73 |gh number. This| 00009930 20 69 73 20 62 65 63 75 61 73 65 0a 21 53 74 69 | is becuase.!Sti| 00009940 63 6b 79 42 72 64 20 6d 6f 64 75 6c 65 73 20 61 |ckyBrd modules a| 00009950 72 65 20 61 63 74 75 61 6c 6c 79 20 6c 69 62 72 |re actually libr| 00009960 61 72 69 65 73 20 61 70 70 65 6e 64 65 64 20 74 |aries appended t| 00009970 6f 20 42 41 53 49 43 2e 20 20 57 68 65 6e 0a 21 |o BASIC. When.!| 00009980 53 74 69 63 6b 79 42 72 64 20 63 61 6c 6c 73 20 |StickyBrd calls | 00009990 61 20 66 75 6e 63 74 69 6f 6e 20 6f 72 20 70 72 |a function or pr| 000099a0 6f 63 65 64 75 72 65 20 6e 6f 74 20 69 6e 20 74 |ocedure not in t| 000099b0 68 65 20 6d 61 69 6e 20 70 72 6f 67 72 61 6d 2c |he main program,| 000099c0 20 61 6c 6c 0a 6c 69 62 72 61 72 69 65 73 20 61 | all.libraries a| 000099d0 72 65 20 73 65 61 72 63 68 65 64 2c 20 61 6e 64 |re searched, and| 000099e0 20 69 66 20 74 68 65 20 70 72 6f 63 65 64 75 72 | if the procedur| 000099f0 65 20 73 74 69 6c 6c 20 63 61 6e 6e 6f 74 20 62 |e still cannot b| 00009a00 65 20 66 6f 75 6e 64 2c 20 74 68 65 0a 61 62 6f |e found, the.abo| 00009a10 76 65 20 65 72 72 6f 72 20 69 73 20 72 65 70 6f |ve error is repo| 00009a20 72 74 65 64 20 61 74 20 74 68 65 20 6c 61 73 74 |rted at the last| 00009a30 20 6c 69 6e 65 20 69 6e 20 74 68 65 20 6d 61 69 | line in the mai| 00009a40 6e 20 70 72 6f 67 72 61 6d 2e 0a 57 68 65 6e 20 |n program..When | 00009a50 79 6f 75 20 67 65 74 20 61 6e 20 65 72 72 6f 72 |you get an error| 00009a60 20 6c 69 6b 65 20 74 68 69 73 20 69 74 20 69 73 | like this it is| 00009a70 20 70 72 6f 62 61 62 6c 79 20 69 6e 20 61 20 6d | probably in a m| 00009a80 6f 64 75 6c 65 2c 20 73 6f 20 63 68 65 63 6b 20 |odule, so check | 00009a90 74 68 72 6f 75 67 68 0a 74 68 6f 72 6f 75 67 68 |through.thorough| 00009aa0 6c 79 2e 0a 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a |ly...***********| 00009ab0 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a |****************| * 00009af0 2a 2a 0a 0a 49 66 20 74 68 65 72 65 20 69 73 20 |**..If there is | 00009b00 61 20 66 65 61 74 75 72 65 20 79 6f 75 20 77 6f |a feature you wo| 00009b10 75 6c 64 20 6c 69 6b 65 20 74 6f 20 73 65 65 20 |uld like to see | 00009b20 69 6e 63 6c 75 64 65 64 20 69 6e 20 74 68 65 20 |included in the | 00009b30 6e 65 78 74 20 76 65 72 73 69 6f 6e 20 6f 66 0a |next version of.| 00009b40 21 53 74 69 63 6b 79 42 72 64 2c 20 70 6c 65 61 |!StickyBrd, plea| 00009b50 73 65 20 77 72 69 74 65 20 61 6e 64 20 74 65 6c |se write and tel| 00009b60 6c 20 6d 65 2e 20 20 41 6c 73 6f 2c 20 69 66 20 |l me. Also, if | 00009b70 79 6f 75 20 77 6f 75 6c 64 20 6c 69 6b 65 20 61 |you would like a| 00009b80 6e 79 20 6e 65 77 0a 70 6f 6c 6c 20 6d 65 73 73 |ny new.poll mess| 00009b90 61 67 65 73 2c 20 69 6e 74 65 72 66 61 63 65 20 |ages, interface | 00009ba0 63 61 6c 6c 73 20 6f 72 20 61 6e 79 74 68 69 6e |calls or anythin| 00009bb0 67 20 65 6c 73 65 20 61 64 64 65 64 20 66 6f 72 |g else added for| 00009bc0 20 74 68 65 20 6d 6f 64 75 6c 65 20 73 69 64 65 | the module side| 00009bd0 20 6f 66 0a 74 68 69 6e 67 73 2c 20 64 72 6f 70 | of.things, drop| 00009be0 20 6d 65 20 61 20 6c 69 6e 65 2e 20 49 20 77 6f | me a line. I wo| 00009bf0 6e 27 74 20 6b 6e 6f 77 20 77 68 61 74 20 79 6f |n't know what yo| 00009c00 75 20 77 61 6e 74 20 75 6e 6c 65 73 73 20 79 6f |u want unless yo| 00009c10 75 20 74 65 6c 6c 20 6d 65 2e 0a 49 27 6d 20 68 |u tell me..I'm h| 00009c20 6f 70 69 6e 67 20 77 65 20 77 69 6c 6c 20 62 65 |oping we will be| 00009c30 20 61 62 6c 65 20 74 6f 20 73 74 61 6e 64 61 72 | able to standar| 00009c40 64 69 73 65 20 6f 6e 20 73 6f 6d 65 20 6d 65 73 |dise on some mes| 00009c50 73 61 67 65 73 20 61 6e 64 20 77 61 79 73 20 6f |sages and ways o| 00009c60 66 20 64 6f 69 6e 67 0a 74 68 69 6e 67 73 2c 20 |f doing.things, | 00009c70 61 73 20 77 65 6c 6c 20 61 73 20 69 6e 63 6f 72 |as well as incor| 00009c80 70 6f 72 61 74 69 6e 67 20 66 61 63 69 6c 69 74 |porating facilit| 00009c90 69 65 73 20 74 6f 20 67 65 6e 65 72 61 74 65 20 |ies to generate | 00009ca0 6e 65 77 20 70 6f 6c 6c 20 63 6f 64 65 73 0a 28 |new poll codes.(| 00009cb0 61 63 74 75 61 6c 6c 79 20 74 68 69 73 20 63 61 |actually this ca| 00009cc0 6e 20 62 65 20 64 6f 6e 65 20 61 74 20 70 72 65 |n be done at pre| 00009cd0 73 65 6e 74 2c 20 62 75 74 20 69 74 27 73 20 62 |sent, but it's b| 00009ce0 65 74 74 65 72 20 74 6f 20 75 73 65 20 74 68 65 |etter to use the| 00009cf0 20 6d 65 73 73 61 67 65 0a 73 79 73 74 65 6d 29 | message.system)| 00009d00 20 61 6e 64 20 73 75 63 68 20 74 68 69 6e 67 73 | and such things| 00009d10 2e 0a 49 66 20 79 6f 75 20 61 72 65 20 77 72 69 |..If you are wri| 00009d20 74 69 6e 67 20 74 6f 20 67 65 74 20 61 6e 20 69 |ting to get an i| 00009d30 6e 74 65 72 6e 61 6c 20 74 79 70 65 20 6e 75 6d |nternal type num| 00009d40 62 65 72 20 61 6e 64 2f 6f 72 20 61 20 6d 65 73 |ber and/or a mes| 00009d50 73 61 67 65 20 6e 75 6d 62 65 72 28 73 29 0a 70 |sage number(s).p| 00009d60 6c 65 61 73 65 20 69 6e 63 6c 75 64 65 20 61 73 |lease include as| 00009d70 20 6d 61 6e 79 20 64 65 74 61 69 6c 73 20 61 62 | many details ab| 00009d80 6f 75 74 20 79 6f 75 72 20 6d 6f 64 75 6c 65 20 |out your module | 00009d90 61 73 20 70 6f 73 73 69 62 6c 65 20 2d 20 6e 61 |as possible - na| 00009da0 6d 65 2c 20 70 75 72 70 6f 73 65 0a 28 74 72 79 |me, purpose.(try| 00009db0 20 61 6e 64 20 65 78 70 6c 61 69 6e 20 65 78 61 | and explain exa| 00009dc0 63 74 6c 79 20 77 68 61 74 20 69 74 20 77 69 6c |ctly what it wil| 00009dd0 6c 20 64 6f 29 20 61 75 74 68 6f 72 2c 20 61 6e |l do) author, an| 00009de0 64 20 73 75 63 68 20 74 68 69 6e 67 73 2e 20 20 |d such things. | 00009df0 54 68 65 0a 70 6f 69 6e 74 20 61 62 6f 75 74 20 |The.point about | 00009e00 74 68 69 73 20 69 73 20 74 68 61 74 20 49 20 63 |this is that I c| 00009e10 61 6e 20 77 61 72 6e 20 79 6f 75 20 69 66 20 79 |an warn you if y| 00009e20 6f 75 72 20 6d 6f 64 75 6c 65 20 77 69 6c 6c 20 |our module will | 00009e30 63 6c 61 73 68 20 77 69 74 68 0a 61 6e 79 62 6f |clash with.anybo| 00009e40 64 79 20 65 6c 73 65 27 73 2e 20 20 49 20 73 75 |dy else's. I su| 00009e50 67 67 65 73 74 2c 20 77 68 65 6e 20 77 72 69 74 |ggest, when writ| 00009e60 69 6e 67 20 6d 6f 64 75 6c 65 73 2c 20 74 68 61 |ing modules, tha| 00009e70 74 20 79 6f 75 20 74 65 73 74 20 74 68 65 6d 20 |t you test them | 00009e80 77 69 74 68 0a 61 6e 20 61 72 62 69 74 61 72 79 |with.an arbitary| 00009e90 20 69 6e 74 65 72 6e 61 6c 20 74 79 70 65 20 6e | internal type n| 00009ea0 75 6d 62 65 72 2c 20 6f 72 20 6d 65 73 73 61 67 |umber, or messag| 00009eb0 65 20 6e 75 6d 62 65 72 2c 20 61 6e 64 20 6f 62 |e number, and ob| 00009ec0 74 61 69 6e 20 61 20 27 72 65 61 6c 27 20 6f 6e |tain a 'real' on| 00009ed0 65 0a 77 68 65 6e 20 69 74 20 5b 74 68 65 20 6d |e.when it [the m| 00009ee0 6f 64 75 6c 65 5d 20 69 73 20 66 69 6e 69 73 68 |odule] is finish| 00009ef0 65 64 2e 0a 52 45 4d 45 4d 42 45 52 3a 20 69 66 |ed..REMEMBER: if| 00009f00 20 79 6f 75 72 20 6d 6f 64 75 6c 65 20 64 6f 65 | your module doe| 00009f10 73 6e 27 74 20 63 6f 6d 65 20 6f 66 66 2c 20 77 |sn't come off, w| 00009f20 72 69 74 65 20 61 6e 64 20 74 65 6c 6c 20 6d 65 |rite and tell me| 00009f30 20 71 75 6f 74 69 6e 67 20 61 6e 79 0a 69 6e 74 | quoting any.int| 00009f40 65 72 6e 61 6c 20 74 79 70 65 20 61 6e 64 20 6d |ernal type and m| 00009f50 65 73 73 61 67 65 20 6e 75 6d 62 65 72 73 20 79 |essage numbers y| 00009f60 6f 75 20 6d 61 79 20 68 61 76 65 20 62 65 65 6e |ou may have been| 00009f70 20 61 6c 6c 6f 63 61 74 65 64 20 61 73 20 73 6f | allocated as so| 00009f80 6d 65 6f 6e 65 20 65 6c 73 65 0a 63 61 6e 20 75 |meone else.can u| 00009f90 73 65 20 74 68 65 6d 2e 0a 54 68 65 20 61 64 64 |se them..The add| 00009fa0 72 65 73 73 20 74 6f 20 73 65 6e 64 20 6d 6f 64 |ress to send mod| 00009fb0 75 6c 65 73 20 74 6f 2c 20 72 65 71 75 65 73 74 |ules to, request| 00009fc0 73 20 66 6f 72 20 69 6e 74 65 72 6e 61 6c 20 74 |s for internal t| 00009fd0 79 70 65 20 6e 75 6d 62 65 72 73 20 61 6e 64 0a |ype numbers and.| 00009fe0 6d 65 73 73 61 67 65 20 6e 75 6d 62 65 72 73 2c |message numbers,| 00009ff0 20 61 6e 64 20 74 68 65 20 61 64 64 72 65 73 73 | and the address| 0000a000 20 66 6f 72 20 67 65 6e 65 72 61 6c 20 63 6f 72 | for general cor| 0000a010 72 65 73 70 6f 6e 64 61 6e 63 65 20 69 73 3a 0a |respondance is:.| 0000a020 0a 4d 72 20 44 2e 20 53 65 65 72 79 2c 0a 31 35 |.Mr D. Seery,.15| 0000a030 20 46 61 72 6d 20 57 61 6c 6b 0a 42 65 6e 74 73 | Farm Walk.Bents| 0000a040 20 46 61 72 6d 20 45 73 74 61 74 65 0a 4c 69 74 | Farm Estate.Lit| 0000a050 74 6c 65 62 6f 72 6f 75 67 68 0a 4c 61 6e 63 61 |tleborough.Lanca| 0000a060 73 68 69 72 65 0a 4f 4c 31 35 20 38 4c 4a 0a 0a |shire.OL15 8LJ..| 0000a070 50 6c 65 61 73 65 20 6d 61 72 6b 20 79 6f 75 72 |Please mark your| 0000a080 20 65 6e 76 65 6c 6f 70 65 20 27 53 74 69 63 6b | envelope 'Stick| 0000a090 79 42 72 64 27 2e 0a 0a 49 66 20 79 6f 75 20 61 |yBrd'...If you a| 0000a0a0 72 65 20 73 65 6e 64 69 6e 67 20 61 20 64 69 73 |re sending a dis| 0000a0b0 63 2c 20 74 68 65 6e 20 70 6c 65 61 73 65 20 70 |c, then please p| 0000a0c0 61 63 6b 61 67 65 20 69 74 20 63 61 72 65 66 75 |ackage it carefu| 0000a0d0 6c 6c 79 2c 20 62 75 74 20 4e 4f 54 20 73 6f 0a |lly, but NOT so.| 0000a0e0 74 68 61 74 20 69 74 20 63 61 6e 20 77 69 74 68 |that it can with| 0000a0f0 73 74 61 6e 64 20 61 20 6e 75 63 6c 65 61 72 20 |stand a nuclear | 0000a100 68 6f 6c 6f 63 61 75 73 74 20 28 21 29 2e 20 20 |holocaust (!). | 0000a110 4b 65 65 70 20 61 20 62 61 63 6b 75 70 20 6f 66 |Keep a backup of| 0000a120 20 61 6e 79 20 70 72 6f 67 72 61 6d 73 0a 79 6f | any programs.yo| 0000a130 75 20 73 65 6e 64 2c 20 61 6e 64 20 73 74 61 74 |u send, and stat| 0000a140 65 20 77 68 65 74 68 65 72 20 79 6f 75 20 61 72 |e whether you ar| 0000a150 65 20 77 69 6c 6c 69 6e 67 20 74 6f 20 68 61 76 |e willing to hav| 0000a160 65 20 79 6f 75 72 20 6d 6f 64 75 6c 65 20 69 6e |e your module in| 0000a170 63 6c 75 64 65 64 20 69 6e 0a 61 6e 79 20 66 75 |cluded in.any fu| 0000a180 74 75 72 65 20 76 65 72 73 69 6f 6e 73 2c 20 6f |ture versions, o| 0000a190 74 68 65 72 77 69 73 65 20 49 20 77 6f 6e 27 74 |therwise I won't| 0000a1a0 20 6b 6e 6f 77 2e 20 20 54 68 65 20 63 6f 70 79 | know. The copy| 0000a1b0 72 69 67 68 74 20 74 6f 20 61 6c 6c 20 6d 6f 64 |right to all mod| 0000a1c0 75 6c 65 73 0a 72 65 6d 61 69 6e 73 20 79 6f 75 |ules.remains you| 0000a1d0 72 73 2c 20 61 6e 64 20 61 6c 74 68 6f 75 67 68 |rs, and although| 0000a1e0 20 49 20 77 6f 75 6c 64 20 65 6e 63 6f 75 72 61 | I would encoura| 0000a1f0 67 65 20 79 6f 75 20 74 6f 20 6b 65 65 70 20 74 |ge you to keep t| 0000a200 68 65 6d 20 50 44 2c 20 49 20 63 61 6e 6e 6f 74 |hem PD, I cannot| 0000a210 0a 66 6f 72 63 65 20 79 6f 75 20 74 6f 20 73 65 |.force you to se| 0000a220 74 20 74 68 65 6d 20 61 73 20 61 6e 79 74 68 69 |t them as anythi| 0000a230 6e 67 2e 0a 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a |ng...***********| 0000a240 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a |****************| * 0000a280 2a 2a 0a 0a 59 6f 75 72 73 2c 20 0a 20 20 20 20 |**..Yours, . | 0000a290 20 20 20 44 61 76 69 64 20 53 65 65 72 79 0a 0a | David Seery..| 0000a2a0 4f 74 68 65 72 20 73 6f 75 72 63 65 73 20 6f 66 |Other sources of| 0000a2b0 20 68 65 6c 70 20 61 72 65 3a 0a 20 21 4d 61 6e | help are:. !Man| 0000a2c0 75 61 6c 20 20 20 20 20 20 20 20 20 2d 20 75 73 |ual - us| 0000a2d0 65 72 20 67 75 69 64 65 0a 20 43 6f 6d 6d 61 6e |er guide. Comman| 0000a2e0 64 20 21 48 65 6c 70 20 20 20 2d 20 68 65 6c 70 |d !Help - help| 0000a2f0 20 6f 6e 20 6d 6f 64 75 6c 65 20 27 63 6f 6d 6d | on module 'comm| 0000a300 61 6e 64 27 0a 20 44 69 72 43 68 61 6e 67 65 20 |and'. DirChange | 0000a310 21 48 65 6c 70 20 2d 20 68 65 6c 70 20 6f 6e 20 |!Help - help on | 0000a320 6d 6f 64 75 6c 65 20 27 64 69 72 63 68 61 6e 67 |module 'dirchang| 0000a330 65 27 0a 0a a9 20 44 61 76 69 64 20 4a 2e 20 53 |e'... David J. S| 0000a340 65 65 72 79 20 31 39 39 32 0a 0a 49 20 68 6f 70 |eery 1992..I hop| 0000a350 65 20 79 6f 75 20 66 69 6e 64 20 74 68 69 73 20 |e you find this | 0000a360 6d 61 6e 75 61 6c 20 61 6e 64 20 21 53 74 69 63 |manual and !Stic| 0000a370 6b 79 42 72 64 20 69 74 73 65 6c 66 20 75 73 65 |kyBrd itself use| 0000a380 66 75 6c 2e 20 20 47 6f 64 20 62 6c 65 73 73 2e |ful. God bless.| 0000a390 0a |.| 0000a391