home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 15 / 15.iso / s / s140 / 1.img / SRIOEM.TMP / SAMPLE1.DEF < prev    next >
Encoding:
Text File  |  1990-09-18  |  17.0 KB  |  253 lines

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