home *** CD-ROM | disk | FTP | other *** search
/ Jason Aller Floppy Collection / 83.img / SRCER486.ZIP / TESTYN.DEF < prev    next >
Text File  |  1989-10-30  |  17KB  |  252 lines

  1.  
  2.                   ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  3.                       SOURCER DEFINITION FILE - TESTYN
  4.                   ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  5.  
  6.  
  7.  
  8.  
  9.  ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ Section 1: CONTROL INFORMATION   ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  10.  
  11.  comments are indented one or more spaces
  12.  ┌─── Section 1 instructions──────────────────────────────────────────────────┐
  13.  │                                                                            │
  14.  │ Enter any of the following options, starting in the 1st column             │
  15.  │  (for no options enter "none" )  Only the first letter of the              │
  16.  │  command is necessary.                                                     │
  17.  │                                                                            │
  18.  │  Analysis option    = xxxxx Any option letters A-Z can be used.  Upper     │
  19.  │                              case indicates turning option on, lower case  │
  20.  │                              turns the option off.   See manual for a      │
  21.  │                              complete list of options.                     │
  22.  │                               I - Inhibit graphics characters              │
  23.  │                               L - use for MASM versions prior to 4.5       │
  24.  │                               M - use for MASM versions prior to 4.5       │
  25.  │  Code style         = xxx   Code style types include:                      │
  26.  │                              com, exe, fragment, zero start,               │
  27.  │                              device driver, or overlay                     │
  28.  │  Drive              = x     Disk drive for output (letter a-z)             │
  29.  │  Format             = xxx   Output format ASM or LST for source code or    │
  30.  │                              listing output (LST is the default)           │
  31.  │  Go                         When the .def file has loaded, go              │
  32.  │  Header             = xxx   Enter the ascii header string (32 char max)    │
  33.  │  Input filename     = xxx   Filename for input (may include disk & path)   │
  34.  │  Keep segments      = xxx   When loading a file, use the file defined      │
  35.  │                              segments (FILE), use the def file segments    │
  36.  │                              in section 2 (DEF) or use both (BOTH)         │
  37.  │                              NOTE: Specify this option prior to file input │
  38.  │                              BOTH is the default, used in most cases       │
  39.  │  Label              = xxx   Select label type, Decimal, Zero fill,         │
  40.  │                              Segment & offset, Letter segment & offset     │
  41.  │  Math on                    Use the math co-processor instruction set      │
  42.  │  None                       Use default commands only                      │
  43.  │  Output filename    = xxx   Filename for output (may include drive & path) │
  44.  │  Passes             = x     Select the number of passes from 2 to 9        │
  45.  │  Remark             = xxx   Select remarks to be included: All, None,      │
  46.  │                              Data remarks only, Interrupts & I/O only,     │
  47.  │                              Others only, Except Data, Except Interrupts,  │
  48.  │                              Except Others                                 │
  49.  │  Segment display off        Turn off the display of segments on listings   │
  50.  │  Tabs off                   Only use spaces, no tabs                       │
  51.  │  uP                 = xxx   Select the uP from:                            │
  52.  │                              8088, V20/V30, 80186, 80286, P286, 80386,     │
  53.  │                              P386, 80486, P486 or AUTO for automatic       │
  54.  │  Vertical lines     = xxx   For listings, select the number of lines per   │
  55.  │                              page from 10 to 255 (default is 59)           │
  56.  │  Words to upper case        Set upper case style (lower case is default)   │
  57.  │  Xref               = xx    ON or OFF (selecting ON sets passes to 5)      │
  58.  │                                                                            │
  59.  └────────────────────────────────────────────────────────────────────────────┘
  60.   
  61.  ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ Section 1: CONTROL INFORMATION   ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  62.   
  63. uP                 = 8088
  64. Input filename     = testyn.exe
  65. Header             = TESTYN with definition file
  66. Xref               = ON
  67.   
  68.   
  69.  
  70.   
  71.  ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ Section 2: RANGE DEFINITION      ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  72.  
  73.  ┌─── Section 2 instructions──────────────────────────────────────────────────┐
  74.  │                                                                            │
  75.  │  segment:offset = start processing location (hex)                          │
  76.  │                     see note 3 at end on referencing loaded file segments  │
  77.  │                                                                            │
  78.  │  end offset     = ending location for segment                              │
  79.  │                                                                            │
  80.  │  default ds, es = default used when not overwritten by in-line code        │
  81.  │                                                                            │
  82.  │  segment type   = auto  - code/data, full data resolving                   │
  83.  │                   code  - code, limited data resolving                     │
  84.  │                   data  - data, no code processed                          │
  85.  │                   stack - stack, no code processed                         │
  86.  │                   rauto - ROM code/data (same as "auto") in ROM            │
  87.  │                   rcode - ROM code (same as "code") in ROM                 │
  88.  │                                                                            │
  89.  │  segment size   = use16 for 16 bit segments (this is the default)          │
  90.  │                   use32 for 32 bit segments. The text use32 may not be     │
  91.  │                   abbreviated.                                             │
  92.  │                                                                            │
  93.  └────────────────────────────────────────────────────────────────────────────┘
  94.  
  95.  
  96.  ▒▒▒▒ Segments ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  97.   
  98.   begin      end      default      seg   seg  
  99.  seg:off     off     ds     es     type  size  
  100.  -------     ----    ----   ----   ----- -----
  101. none                                           ; comments in this area ignored
  102.  
  103.  
  104.  
  105.    ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ Section 3  REFERENCE DEFINITIONS ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  106.  
  107.  ┌─── Section 3 instructions──────────────────────────────────────────────────┐
  108.  │                                                                            │
  109.  │  segment:offset = absolute location of item (hex)                          │
  110.  │                    see note 3 at end on referencing loaded file segments   │
  111.  │                                                                            │
  112.  │  typ            = type field                                               │
  113.  │                    DB = data byte                                          │
  114.  │                    DW = data word                                          │
  115.  │                    DD = double word                                        │
  116.  │                    DA = ascii text byte(s)                                 │
  117.  │                    DS = data structure                                     │
  118.  │                    SUB = subroutine reference (S can also be used)         │
  119.  │                    LOC = location reference   (L can also be used)         │
  120.  │                    FORCE = forced function    (F can also be used)         │
  121.  │                                                                            │
  122.  │  options (indicate one or more options with a comma separator)             │
  123.  │                                                                            │
  124.  │     data options:  , C xxx    comment number xxx (from 1 to 3FF)           │
  125.  │                    , EQU      treat label as an equate                     │
  126.  │                    , DUP      duplicate same bytes/words R times           │
  127.  │                    , INDEX    replace a index of the same value            │
  128.  │                    , MULTI    multi-defined label                          │
  129.  │                    , OSN      offset sub_xxx               (Sub Near)      │
  130.  │                    , OSF      offset sub_xxx, seg sub_xxx  (Sub Far)       │
  131.  │                    , OLN      offset loc_xxx               (Loc Near)      │
  132.  │                    , OLF      offset loc_xxx, seg loc_xxx  (Loc Far)       │
  133.  │                    , ODN      offset data_xxx              (Data Near)     │
  134.  │                    , ODF      offset data_xx, seg data_xx  (Data Far)      │
  135.  │                    , R xxxx   repeat 0 to FFFF, (FFFF bytes max)           │
  136.  │                                 (i.e. dw, R 4    indicates 8 bytes)        │
  137.  │                    , SEG      item is a segment name (dw only)             │
  138.  │                    , UNUSED   if item is never referenced, then do not use │
  139.  │                                                                            │
  140.  │      Location      , C xx     comment number xx (from 1 to FF)             │
  141.  │         options:   , EXT      external entry point to program              │
  142.  │                    , FAR      far procedure                                │
  143.  │                    , NEAR     near procedure                               │
  144.  │                              Note: EXT, FAR & NEAR all reset the simulator │
  145.  │                    , UNUSED   if item is never referenced, then do not use │
  146.  │                                                                            │
  147.  │      Subroutine    , C xx     comment number xx (from 1 to FF)             │
  148.  │         options:   , FAR      subroutine is defined as FAR                 │
  149.  │                    , TERM     subroutine terminates (does not return to    │
  150.  │                                 caller)                                    │
  151.  │                    , UNUSED   if item is never referenced, then do not use │
  152.  │                                                                            │
  153.  │       Forced       , CODE     switch to code mode                          │
  154.  │          options:  , DATA     switch to data mode                          │
  155.  │                    , CODE16   switch to 16 bit code mode                   │
  156.  │                    , CODE32   switch to 32 bit code mode                   │
  157.  │                    , ENDP     force a endp to appear after instruction     │
  158.  │                    , AX=xxxx  change the value of any simulation           │
  159.  │                               register ax/bx/cx/dx/bp/si/di/sp             │
  160.  │                                        ds/es/ss/fs/gs                      │
  161.  │                    , EAX=xxxx  change the value of any 32 bit simulation   │
  162.  │                                register eax/ebx/ecx/edx/ebp/esi/edi        │
  163.  │                    , EAx      LEA instruction's reference item type        │
  164.  │                                 EAS for sub, EAL for location, EAD for data│
  165.  │                                 optional segment follows                   │
  166.  │                    , Ox       convert immediate value to offset            │
  167.  │                               OS for sub, OL for location, OD for data     │
  168.  │                               optional segment follows (cs segment default)│
  169.  │                    , REG      display the internal simulation registers    │
  170.  │                                                                            │
  171.  │                            Forced index table analysis for calls & jumps   │
  172.  │                    , SN       table type "offset sub_xx"                   │
  173.  │                    , SF       table type "offset sub_xxx, seg sub_xxx"     │
  174.  │                    , LN       table type "offset loc_xx"                   │
  175.  │                    , LF       table type "offset loc_xxx, seg loc_xxx"     │
  176.  │                           format: "seg_a:xxxx  f, sn 1234:22 34"           │
  177.  │                               where 1234:22 is the location of the table   │
  178.  │                               with 34h entries                             │
  179.  │                                                                            │
  180.  │  label field    = enter label up to 15 characters long                     │
  181.  │                     (label ignored for forced functions;                   │
  182.  │                         do not place a comma before or inside label)       │
  183.  │                                                                            │
  184.  │  comment field  = a short comment can be included here (64 characters max) │
  185.  │                   if a semi-colon appears, the rest of the line is ignored │
  186.  └────────────────────────────────────────────────────────────────────────────┘
  187.                                                                                
  188.    ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ Section 3  REFERENCE DEFINITIONS ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  189.  
  190.  
  191.  ════ Subroutines ═══════════════════════
  192.   seg:off   type & options     label           comments
  193.   -------   --------------     --------------  --------------
  194. seg_c:0000  sub, far, c 02     beeper          ; beep subroutine (3rd segment)
  195.         
  196.  
  197.  ════ Locations        ═════════════════════════
  198.   seg:off   type & options     label           comments
  199.   -------   --------------     --------------  --------------
  200. seg_a:0028  loc, c 04          begin_program
  201. seg_a:0043  loc                exit
  202.  
  203.  
  204.  ════ Data Items ════════════════════════
  205.   seg:off   type & options     label           comments
  206.   -------   --------------     --------------  --------------
  207. seg_c:002C  da, r 0C           yes_no_message
  208. seg_c:0038  dw, c 6            speaker_port
  209. seg_c:003A  dw, c 7            on_off_time
  210. seg_c:003C  dw, c 8            beep_cycles
  211.  
  212.  
  213.  ┌─── General Notes ─────────────────────────────────────────────────────────┐
  214.  │  Notes:                                                                   │
  215.  │     1) Must have at least one entry in each section to operate properly.  │
  216.  │          Use "none" if no entries are needed for a section.               │
  217.  │          Separate each section with at least one line with a space in     │
  218.  │          column 1.                                                        │
  219.  │                                                                           │
  220.  │     2) Order of entries within each section is unimportant.               │
  221.  │                                                                           │
  222.  │     3) When a filename is specified in section 1, it is loaded and the    │
  223.  │         first 250 segments can be referenced as "seg_a" to "seg_z" and    │
  224.  │          "seg_aa" to "seg_az" through to the 250th segment "seg_io".      │
  225.  │          These can be used anywhere a segment is required.  For example   │
  226.  │          a location label can be defined as:                              │
  227.  │                                                                           │
  228.  │                        6234:0124  loc, Ext, C 2  temp_value_a             │
  229.  │                  or:   seg_b:0124 loc, Ext, C 2  temp_value_a             │
  230.  │                                                                           │
  231.  │          The second entry will use the 2nd segment within the loaded file │
  232.  │          An error will be generated if a segment is used beyond those     │
  233.  │          specified by the file load (Consult manual for more information).│
  234.  │                                                                           │
  235.  │     4) Section 3 ignores blank lines or lines starting with a space in    │
  236.  │          column 1, or the balance of a line where a semicolon occurs.     │
  237.  │                                                                           │
  238.  │     5) The following examples show acceptable forms for the same function,│
  239.  │          a location entry as a external entry point with comment #2:      │
  240.  │                                                                           │
  241.  │          seg_a:0124 loc, Ext, C 2  temp_value_a  ; prefered format        │
  242.  │          seg_a:0124 l, Ext, C 2  temp_value_a                             │
  243.  │          seg_a:0124 l, E, C=2  temp_value_a      ; notes can follow       │
  244.  │          seg_a:0124 l, External, C 2       temp_value_a                   │
  245.  │          seg_a:0124 Location, Ext, C 02   temp_value_a                    │
  246.  │          seg_a:0124 L, e, c 2 temp_value_a                                │
  247.  │                                                                           │
  248.  │     6) Upper and lower case will have no effect (except for analysis      │
  249.  │          options), but is preserved for labels.                           │
  250.  └───────────────────────────────────────────────────────────────────────────┘
  251.  
  252.