
      ** Asm68k 68000 Macro Assembler **


 LINE   PC         CODE         -----CARD------->
    1 0000:                     ; startup-sequence
    2 0000:                          XREF _main
    3 0000:                     ; Exec entries
    4 0000:                     _LVOForbid        EQU -$84
    5 0000:                     _LVOAllocMem      EQU -$C6
    6 0000:                     _LVOFreeMem       EQU -$D2
    7 0000:                     _LVOFindTask      EQU -$126
    8 0000:                     _LVOSetSignal     EQU -$132
    9 0000:                     _LVOGetMsg        EQU -$174
   10 0000:                     _LVOReplyMsg      EQU -$17A
   11 0000:                     _LVOWaitPort      EQU -$180
   12 0000:                     _LVOCloseLibrary  EQU -$19E
   13 0000:                     _LVOOpenLibrary   EQU -$228
   14 0000:                     ; DOS entries
   15 0000:                     _LVOOpen          EQU -$1E
   16 0000:                     _LVOClose         EQU -$24
   17 0000:                     _LVORead          EQU -$2A
   18 0000:                     _LVOWrite         EQU -$30
   19 0000:                     _LVOInput         EQU -$36
   20 0000:                     _LVOOutput        EQU -$3C
   21 0000:                     _LVOSeek          EQU -$42
   22 0000:                     _LVODeleteFile    EQU -$48
   23 0000:                     _LVOLock          EQU -$54
   24 0000:                     _LVOUnLock        EQU -$5A
   25 0000:                     _LVOCurrentDir    EQU -$7E
   26 0000:                     _LVOIOErr         EQU -$84
   27 0000:                     ; Intuition entries
   28 0000:                     _LVOAutoRequest   EQU -$15C
   29 0000:                     ; Process defs
   30 0000:                     pr_MsgPort        EQU  $5C
   31 0000:                     pr_CurrentDir     EQU  $98
   32 0000:                     pr_ConsoleTask    EQU  $A4
   33 0000:                     pr_CLI            EQU  $AC
   34 0000:                     ; startup message defs
   35 0000:                     sm_ToolWindow     EQU  $20
   36 0000:                     sm_ArgList        EQU  $24
   37 0000:                     ; workbench arg def
   38 0000:                     wa_Lock           EQU  $0
   39 0000:                     ; file handle definition
   40 0000:                     fh_Type           EQU  $8
   41 0000:                     ; cli struct defs
   42 0000:                     cli_StandardInput   EQU $1C
   43 0000:                     cli_StandardOutput  EQU $38
   44 0000:                     ;
   45 0000:                     MODE_OLDFILE      EQU  1005
   46 0000:                     ;
   47 0000:2400                  move.l d0,d2
   48 0002:2448                  move.l a0,a2
   49 0004:43FA011A              lea    DosName,a1
   50 0008:7000                  moveq.l #0,d0
   51 000A:2C780004              move.l $4,a6
   52 000E:4EAEFDD8              jsr    _LVOOpenLibrary(a6)
   53 0012:23C00000012C          move.l d0,_DOSBase
   54 0018:670000F8              beq    WrapUp
   55 001C:93C9                  sub.l  a1,a1

      ** Asm68k 68000 Macro Assembler **


 LINE   PC         CODE         -----CARD------->
   56 001E:4EAEFEDA              jsr    _LVOFindTask(a6)
   57 0022:2640                  move.l d0,a3
   58 0024:4AAB00AC              tst.l  pr_CLI(a3)
   59 0028:673C                  beq.s  x.workbench
   60 002A:                     ; CLI startup
   61 002A:5342                  subq.w #1,d2
   62 002C:42322000              clr.b  $0(a2,d2)
   63 0030:23CA00000134         x.cli move.l a2,DosCmdBuf
   64 0036:101A                  move.b (a2)+,d0
   65 0038:0C000020              cmp.b  #' ',d0
   66 003C:6604                  bne.s  x.click
   67 003E:5342                  subq.w #1,d2
   68 0040:60EE                  bra.s  x.cli
   69 0042:                     x.click:
   70 0042:23C200000130          move.l d2,DosCmdLen
   71 0048:206B00AC              move.l pr_CLI(a3),a0
   72 004C:D1C8                  add.l  a0,a0
   73 004E:D1C8                  add.l  a0,a0
   74 0050:23E8001C00000118      move.l cli_StandardInput(a0),_stdin
   75 0058:23E800380000011C      move.l cli_StandardOutput(a0),_stdout
   76 0060:95CA                  sub.l  a2,a2
   77 0062:60000064              bra    x.begin
   78 0066:                     ;
   79 0066:                     x.workbench:
   80 0066:42B900000134          clr.l  DosCmdBuf
   81 006C:41EB005C              lea    pr_MsgPort(a3),a0
   82 0070:4EAEFE80              jsr    _LVOWaitPort(a6)
   83 0074:41EB005C              lea    pr_MsgPort(a3),a0
   84 0078:4EAEFE8C              jsr    _LVOGetMsg(a6)
   85 007C:2C7A00AE              move.l _DOSBase,a6
   86 0080:23C000000114          move.l d0,WBenchMsg
   87 0086:2440                  move.l d0,a2
   88 0088:4AAA0024              tst.l  sm_ArgList(a2)
   89 008C:670C                  beq.s  x.parm
   90 008E:206A0024               move.l sm_ArgList(a2),a0
   91 0092:22280000               move.l wa_Lock(a0),d1
   92 0096:4EAEFF82               jsr    _LVOCurrentDir(a6)
   93 009A:                     x.parm:
   94 009A:4AAA0020              tst.l  sm_ToolWindow(a2)
   95 009E:6728                  beq.s  x.begin
   96 00A0:222A0020               move.l sm_ToolWindow(a2),d1
   97 00A4:243C000003ED           move.l #MODE_OLDFILE,d2
   98 00AA:4EB9FFFFFFE2           jsr    _LVOOpen,a6
   99 00B0:23C000000118           move.l d0,_stdin
  100 00B6:23C00000011C           move.l d0,_stdout
  101 00BC:670A                   beq.s  x.begin
  102 00BE:E588                    lsl.l  #2,d0
  103 00C0:2040                    move.l d0,a0
  104 00C2:2768000800A4            move.l fh_Type(a0),pr_ConsoleTask(a3)
  105 00C8:                     x.begin:
  106 00C8:224B                  move.l a3,a1
  107 00CA:207A0068              move.l DosCmdBuf,a0
  108 00CE:203A0060              move.l DosCmdLen,d0
  109 00D2:2C7A0058              move.l _DOSBase,a6
  110 00D6:                     ; enter with:  a0,d0 = CLI parameters (a0=0 for WorkBench)

      ** Asm68k 68000 Macro Assembler **


 LINE   PC         CODE         -----CARD------->
  111 00D6:                     ;              a1,a2 = Process, WB message (a2=0 for CLI)
  112 00D6:                     ;              a6 - positioned for DOS library
  113 00D6:4EB900000000          jsr    _main
  114 00DC:                     
  115 00DC:4AB900000114          tst.l  WBenchMsg
  116 00E2:670E                  beq.s  DosWrap
  117 00E4:223A0036               move.l _stdout,d1
  118 00E8:6708                   beq.s  DosWrap
  119 00EA:2C7A0040                move.l _DOSBase,a6
  120 00EE:4EAEFFDC                jsr    _LVOClose(a6)
  121 00F2:                     DosWrap:
  122 00F2:227A0038              move.l _DOSBase,a1
  123 00F6:2C780004              move.l $4,a6
  124 00FA:4EAEFE62              jsr    _LVOCloseLibrary(a6)
  125 00FE:4AB900000114          tst.l  WBenchMsg
  126 0104:670C                  beq.s  WrapUp
  127 0106:4EAEFF7C               jsr    _LVOForbid(a6)
  128 010A:227A0008               move.l WBenchMsg,a1
  129 010E:4EAEFE86               jsr    _LVOReplyMsg(a6)
  130 0112:4E75                 WrapUp  rts
  131 0114:00000000             WBenchMsg  dc.l 0
  132 0118:00000000             _stdin     dc.l 0
  133 011C:00000000             _stdout    dc.l 0
  134 0120:E4EFF3AEECE9E2F2E1F2 DosName    dc.b "dos.library",0
  135 012C:                     
  136 012C:00000000             _DOSBase   ds.l 1
  137 0130:00000000             DosCmdLen  ds.l 1
  138 0134:00000000             DosCmdBuf  ds.l 1






Assembled startup.asm to startup.o
Object size = 312
No Errors detected
Free Ram used = 16384 Bytes

      ** Asm68k 68000 Macro Assembler **





              Symbol Table:


  DosCmdBuf             ADDRESS  00000134
  DosCmdLen             ADDRESS  00000130
  DosName               ADDRESS  00000120
  DosWrap               ADDRESS  000000F2
  MODE_OLDFILE          NUMBER   000003ED
  WBenchMsg             ADDRESS  00000114
  WrapUp                ADDRESS  00000112
  _DOSBase              ADDRESS  0000012C
  _LVOAllocMem        ? NUMBER   FFFFFF3A
  _LVOAutoRequest     ? NUMBER   FFFFFEA4
  _LVOClose             NUMBER   FFFFFFDC
  _LVOCloseLibrary      NUMBER   FFFFFE62
  _LVOCurrentDir        NUMBER   FFFFFF82
  _LVODeleteFile      ? NUMBER   FFFFFFB8
  _LVOFindTask          NUMBER   FFFFFEDA
  _LVOForbid            NUMBER   FFFFFF7C
  _LVOFreeMem         ? NUMBER   FFFFFF2E
  _LVOGetMsg            NUMBER   FFFFFE8C
  _LVOIOErr           ? NUMBER   FFFFFF7C
  _LVOInput           ? NUMBER   FFFFFFCA
  _LVOLock            ? NUMBER   FFFFFFAC
  _LVOOpen              NUMBER   FFFFFFE2
  _LVOOpenLibrary       NUMBER   FFFFFDD8
  _LVOOutput          ? NUMBER   FFFFFFC4
  _LVORead            ? NUMBER   FFFFFFD6
  _LVOReplyMsg          NUMBER   FFFFFE86
  _LVOSeek            ? NUMBER   FFFFFFBE
  _LVOSetSignal       ? NUMBER   FFFFFECE
  _LVOUnLock          ? NUMBER   FFFFFFA6
  _LVOWaitPort          NUMBER   FFFFFE80
  _LVOWrite           ? NUMBER   FFFFFFD0
  _main                 EXTERN           
  _stdin                ADDRESS  00000118
  _stdout               ADDRESS  0000011C
  cli_StandardInput     NUMBER   0000001C
  cli_StandardOutput    NUMBER   00000038
  fh_Type               NUMBER   00000008
  pr_CLI                NUMBER   000000AC
  pr_ConsoleTask        NUMBER   000000A4
  pr_CurrentDir       ? NUMBER   00000098
  pr_MsgPort            NUMBER   0000005C
  sm_ArgList            NUMBER   00000024
  sm_ToolWindow         NUMBER   00000020
  wa_Lock               NUMBER   00000000
  x.begin               ADDRESS  000000C8
  x.cli                 ADDRESS  00000030
  x.click               ADDRESS  00000042
  x.parm                ADDRESS  0000009A
  x.workbench           ADDRESS  00000066




      ** Asm68k 68000 Macro Assembler **



  _LVOOpenLibrary       NUMBER   FFFFFDD8
  _LVOCloseLibrary      NUMBER   FFFFFE62
  _LVOWaitPort          NUMBER   FFFFFE80
  _LVOReplyMsg          NUMBER   FFFFFE86
  _LVOGetMsg            NUMBER   FFFFFE8C
  _LVOAutoRequest     ? NUMBER   FFFFFEA4
  _LVOSetSignal       ? NUMBER   FFFFFECE
  _LVOFindTask          NUMBER   FFFFFEDA
  _LVOFreeMem         ? NUMBER   FFFFFF2E
  _LVOAllocMem        ? NUMBER   FFFFFF3A
  _LVOIOErr           ? NUMBER   FFFFFF7C
  _LVOForbid            NUMBER   FFFFFF7C
  _LVOCurrentDir        NUMBER   FFFFFF82
  _LVOUnLock          ? NUMBER   FFFFFFA6
  _LVOLock            ? NUMBER   FFFFFFAC
  _LVODeleteFile      ? NUMBER   FFFFFFB8
  _LVOSeek            ? NUMBER   FFFFFFBE
  _LVOOutput          ? NUMBER   FFFFFFC4
  _LVOInput           ? NUMBER   FFFFFFCA
  _LVOWrite           ? NUMBER   FFFFFFD0
  _LVORead            ? NUMBER   FFFFFFD6
  _LVOClose             NUMBER   FFFFFFDC
  _LVOOpen              NUMBER   FFFFFFE2
  wa_Lock               NUMBER   00000000
  fh_Type               NUMBER   00000008
  cli_StandardInput     NUMBER   0000001C
  sm_ToolWindow         NUMBER   00000020
  sm_ArgList            NUMBER   00000024
  x.cli                 ADDRESS  00000030
  cli_StandardOutput    NUMBER   00000038
  x.click               ADDRESS  00000042
  pr_MsgPort            NUMBER   0000005C
  x.workbench           ADDRESS  00000066
  pr_CurrentDir       ? NUMBER   00000098
  x.parm                ADDRESS  0000009A
  pr_ConsoleTask        NUMBER   000000A4
  pr_CLI                NUMBER   000000AC
  x.begin               ADDRESS  000000C8
  DosWrap               ADDRESS  000000F2
  WrapUp                ADDRESS  00000112
  WBenchMsg             ADDRESS  00000114
  _stdin                ADDRESS  00000118
  _stdout               ADDRESS  0000011C
  DosName               ADDRESS  00000120
  _DOSBase              ADDRESS  0000012C
  DosCmdLen             ADDRESS  00000130
  DosCmdBuf             ADDRESS  00000134
  MODE_OLDFILE          NUMBER   000003ED
