home *** CD-ROM | disk | FTP | other *** search
/ APDL Public Domain 1 / APDL_PD1A.iso / program / assembler / sasm / Docs / FrontEnd next >
Encoding:
Text File  |  1995-10-02  |  11.1 KB  |  214 lines

  1.                       =========================
  2.                        SAsm Front End program
  3.                       =========================
  4.  
  5.     This is supplied with all recent versions of SAsm. It is not of any use
  6.     on its own, it just provides a multi-tasking Desktop interface for SAsm.
  7.     This supplement does not describe the use of the SAsm assembler, you
  8.     should familiarise yourself with SAsm before you attempt to use this
  9.     program, and it will be assumed that you understand how SAsm works. In
  10.     order to distinguish between the front end and SAsm itself the former
  11.     will be referred to as '!SAsm' and the latter as 'SAsm'
  12.  
  13.     This description will be brief, because once you understand how SAsm
  14.     works you will not need detailed instructions as most functions will be
  15.     self-evident.
  16.  
  17.     Like the SAsm assembler !SAsm is Shareware and is © David Holden. For
  18.     details of how to register see the main SAsm Manual.
  19.  
  20.             Introduction
  21.  
  22.     !SAsm installs itself on the icon bar in the usual way. If you click
  23.     SELECT on the icon the Control Window will open. You will see that this
  24.     enables most of the filenames and parameters that are be used by SAsm to
  25.     be defined. 
  26.  
  27.     !SAsm does not operate by passing all the parameters to SAsm. It creates
  28.     a 'Make' file (filetype &2EF) which does the actual work. In order to
  29.     use !SAsm to best advantage you should understand how this was designed
  30.     to be used.
  31.  
  32.     It is assumed that your entire project is contained in its own directory
  33.     which I shall refer to as the 'project directory'. Inside this will be a
  34.     sub-directory holding the files to be assembled, and I shall refer to
  35.     this as the 'source directory', although other 'external' files eg.
  36.     containing sub-routines you regularly use, may also be included. The
  37.     Make file should be saved in the source directory. The names of these
  38.     directories is not important, they can be called anything you choose.
  39.  
  40.     The object code would normally be saved in the project directory,
  41.     although if it is an application then the application directory should
  42.     be placed here and the object file saved into the application directory.
  43.     Error files, x-ref files, etc. can be saved either in the source
  44.     directory or the project directory (or elsewhere if you prefer).
  45.  
  46.             The SAsmProj$Dir variable
  47.  
  48.     If you click on the Save button in the control window a 'Save' window
  49.     will open. When you drag the Make file icon to a directory (normally the
  50.     source directory) an OS variable 'SAsmProj$Dir'  is set. This can be
  51.     used as the 'anchor' for all other files. For example, to save the
  52.     object file as 'Runimage' in the application directory '!MyApp' in the
  53.     project directory (eg. the parent directory of the source directory) you
  54.     would set the object filename to '<SAsmProj$Dir>.^.!MyApp.Runimage. The
  55.     advantage of this system is that if you move the whole project elsewhere
  56.     or rename directories or drives everything will still work as it is
  57.     independent of absolute paths.
  58.  
  59.     As well as being set when you save a Make file this variable is set when
  60.     you load one. Make files are loaded into !SAsm by simply double-clicking
  61.     on them, and each time you do this SAsmProj$Dir will be reset to suit.
  62.  
  63.     Once the SAsmProj$Dir variable has been set the Make file can be
  64.     re-saved by clicking on 'Set' in the Control window. This updates the
  65.     Make file, but if you have changed some options temporarily you may want
  66.     to make sure that you don't do this by accident. Therefore the Set
  67.     button can be shaded to make it inoperative by clicking on 'Lock Set' on
  68.     the main menu. This toggles the state of the Set button. You can still
  69.     update the Make file by opening the Save window and clicking on 'OK'.
  70.  
  71.             The Control window
  72.  
  73.     The 'Type', 'Code size' and 'Origin' icons should need little
  74.     explanation. 'Memory' simply defines how much memory will initially be
  75.     allocated to SAsm when it is run, if it isn't enough SAsm can grab more,
  76.     but it's probably best to try to allocate as much as you expect it to
  77.     need. All of these are writeable, and some have menus from which you can
  78.     select the most useful options.
  79.  
  80.     The filenames in the bottom part of the control window should again be
  81.     self evident. They set the names for all the various files that SAsm
  82.     uses and creates. The Library filename can be set by either typing it in
  83.     manually or dragging a Library file to it.
  84.  
  85.     The buttons to the right of each filename set the functions on or off.
  86.     for example, if the button beside the object filename is off then no
  87.     object file will be created. If the button beside the Library filename
  88.     is off then the library will not be used even if it is named. The Cross
  89.     ref. and Labels buttons are mutually exclusive as you can't have both of
  90.     these enabled simultaneously.
  91.  
  92.     Each time you save the Make file all of these parameters are updated.
  93.  
  94.     Clicking on 'GO' begins assembly by starting up SAsm and passing the
  95.     parameters to it. The most important parameter passed is the name of the
  96.     Make file. The object and error filenames will be included in the Make
  97.     file but the ones shown in the Control window are also passed directly.
  98.     This enables you to change the name of these files for a 'single shot'
  99.     if required without updating the Make file.
  100.  
  101.     The filename passed to SAsm for the Make file is the name that was last
  102.     used to save the Make file, normally the name appearing in the Save
  103.     window. This therefore need not be 'Make', although it normally would
  104.     be, so you can have two or more different Make files to assemble
  105.     alternative object files.
  106.  
  107.     Don't forget - When you click on 'GO' it is the Make file that is passed
  108.     to SAsm and actually does the work. If you haven't saved or updated the
  109.     Make file then SAsm won't have the correct instructions so things will
  110.     go wrong!
  111.  
  112.             Interactions
  113.  
  114.     There may be interaction between options set in the last Make file you
  115.     saved and those set in the Command window when you carry out the
  116.     assembly. For example, if you had saved the Make file with X-ref
  117.     selected then the X-ref directive will be included in it, so
  118.     de-selecting later will have no effect. However, if the Make file was
  119.     saved with X-ref de-selected then selecting it before you assemble will
  120.     add the 'X' parameter to the command line so you will get a X-ref.
  121.  
  122.     I am sure you will be able to think of other instances, and I suggest
  123.     you look at Make files saved with various options in a text editor to
  124.     familiarise yourself with how it works. You can see the various command
  125.     line switches inserted by saving the Obey file as described later.
  126.  
  127.             File list
  128.  
  129.     Clicking ADJUST on the icon bar icon opens the file list window. This
  130.     will contain the list of filename to be assembled. To create the list
  131.     just drag the files, in he correct order, to this window.
  132.  
  133.     You might think this should be done before you save a new Make file, but
  134.     you should save your Make file BEFORE you create the file list. The
  135.     reason for this is that saving the Make file sets SAsmProj$Dir. Once
  136.     this is set any files which are 'downstream' of it will have their names
  137.     truncated to <SAsmProj$Dir>.[path.]<name>,which will make the whole
  138.     project position independent (as well as making the filenames shorter).
  139.     If the variable is not correctly set first then the filenames will be
  140.     absolute path/filenames. Similarly any filenames which cannot be
  141.     sucessfully truncated, eg. files of sub-routines taken from another
  142.     place, will be absolute.
  143.  
  144.     Clicking MENU on the File List window displays a menu enabling you to
  145.     manipulate the files. If you click SELECT on a file this menu will
  146.     enable you to delete it or move it up or down the list. You can also
  147.     delete all the files as sometimes it can be easier to wipe them all out
  148.     and start again if you need to change the order.
  149.  
  150.             Task window or CLI
  151.  
  152.     By default SAsm is run in a Task window in the desktop. This is slightly
  153.     slower than using the CLI and presupposes that you have enough RAM to
  154.     run the required modules. Speed can be increased by using the CLI
  155.     directly outside the desktop. This may be advantageous if you only have
  156.     an ARM 2 processor.
  157.  
  158.     'Taskwindow' on the main menu is normally ticked, and this means that
  159.     SAsm will be run in a Task window. However, if it is not ticked then
  160.     SAsm will be run from the CLI outside the desktop, as if you had pressed
  161.     F12 and typed the required command line.
  162.  
  163.             Saving the options
  164.  
  165.     'Save Opts' on the main menu saves the entire contents of the Control
  166.     Window, with the state of all the buttons (including the 'Set' button)
  167.     to an Options file. This will be reloaded the next time !SAsm is run.
  168.     Note that the contents of the File List are not saved, as they will
  169.     relate to a specific project, whereas many of the items in the Control
  170.     window will not be project specific.
  171.  
  172.             Saving an Obey file
  173.  
  174.     'Save Obey' from the main menu will enable you to save an 'Obey' file
  175.     which will reflect the command that is used by !SAsm to open a Task
  176.     window and run SAsm. This also has an additional line that sets
  177.     SAsmProj$Dir. If, instead of using the GO button in the Command window,
  178.     you save this file to the directory that your Make file is saved in then
  179.     you can run SAsm by double-clicking on this instead of running !SAsm.
  180.     Under some circumstances this might be more convenient, especially on a
  181.     1Mb machine where you will not need to have !SAsm loaded.
  182.  
  183.             The Make file
  184.  
  185.     Although this has its own filetype it is actually a plain text file and
  186.     can be edited. However, beware of changing it because when it is loaded
  187.     into !SAsm the file itself is not retained. !SAsm reads all the
  188.     parameters and #INCLUDE filenames and remembers them instead, so when
  189.     you save a Make file it is actully re-created. If you put commands in
  190.     the Make file which cannot be duplicated by !SAsm then you will be
  191.     warned that !SAsm doesn't understand them.
  192.  
  193.     The Make file produced by !SAsm is therefore rather basic. It can only
  194.     contain the normal pre-assembly directives and a list of #INCLUDE files.
  195.     If you do want to use other setup information or directives these must
  196.     be put in a separate file.
  197.  
  198.             Running SAsm
  199.  
  200.     As normally supplied !SAsm will load the Relocatable Module version of
  201.     SAsm which will be in its application directory. This is simply a
  202.     convenience. You may prefer to put SAsmMod in your System:Modules
  203.     directory and edit the !Run file, or use the Utility version of SAsm
  204.     from your Library directory, in which case you can delete the line which
  205.     loads the Module.
  206.  
  207.     Whichever version of SAsm you use the command line syntax is identical
  208.     so !SAsm will work with either.
  209.  
  210.     Because the registered version of SAsm contains the name of the person
  211.     to whom it is registered SAsmMod may not be included with !SAsm in the
  212.     application directory with the registered version. You will need to copy
  213.     it from the SAsm directory.
  214.