DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400 DFS Tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400 DFS Tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦6ad8006e6⟧ M200

    Length: 2560 (0xa00)
    Types: M200
    Notes: M200_PROGRAM
    Names: »GC.M200«

Derivation

└─⟦24d56d853⟧ Bits:30000744 8mm tape, Rational 1000, DFS, D_12_6_5 SEQ293
    └─ ⟦this⟧ »GC.M200« 

Disassembly

0x201a0


@ 201a0
        <LVAR  0x008 4(r)>
        <LVAR -0x008 @ 1(r)>
        <LVAR -0x00c @ 4(r)>
    <POP 201a0-2025c Body>                                              
        <POP 201a0-201b6 Prologue>                           Σ0         ↓
        <POP 201b6-201c6 RegCacheLoad>                       Σ0         ↓
        <POP 201c6-201e4 Naked>                              Σ0         ↓ →0x20254
            <MI 201c6  MOVE.L  (A6+0x8),-(A7)>               Δ-4                {[4, '(A6+0x8)']}
            <MI 201ca  CLR.B   -(A7)>                        Δ-2                {[4, '(A6+0x8)']|[#0]}
            <Const 0x201cc 0x1.2>                            Δ-2                {[4, '(A6+0x8)']|[#0]|[#1]}
            <Const 0x201d0 0x0.4>                            Δ-4                {[4, '(A6+0x8)']|[#0]|[#1]|[##0]}
            <Pointer.fp 0x201d4 <LVAR -0x008 @ 1(r)>>        Δ-4                {[4, '(A6+0x8)']|[#0]|[#1]|[##0]|[@@-8]}
            <Pointer.fp 0x201d6 <LVAR -0x00c @ 4(r)>>        Δ-4                {[4, '(A6+0x8)']|[#0]|[#1]|[##0]|[@@-8]|[@@-12]}
            <Call 0x201d8 0x10380>                                              {[4, '(A6+0x8)']|[#0]|[#1]|[##0]|[@@-8]|[@@-12]}
                OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
            <POP 201de-201e0 StackAdj>                       Δ+20               {}
            <MI 201e0  TST.B   (A6-0x8)>                                        {}
            <MI 201e2  BNE     0x20254>                                         {}
        <POP 201e4-201ec Naked>                              Σ0 Δ-4     ↓
            <MI 201e4  MOVEA.L (A6-0xc),A0>                                     {}
            <MI 201e6  MOVE.L  A0,-(A7)>                     Δ-4                {[4, 'A0']}
            <MI 201e8  MOVEQ.L #0x00,D6>                                        {[4, 'A0']}
            <MI 201ea  MOVEQ.L #0x00,D7>                                        {[4, 'A0']}
        <POP 201ec-201f0 Naked>                              Σ-4        ↓ →0x2021c ←0x2021a
            <MI 201ec  CMP.L   0x2485a,D6>                                      {[-4-]}
            <MI 201ee  BGE     0x2021c>                                         {[-4-]}
        <POP 201f0-201f4 Naked>                              Σ-4        ↓ →0x2021c
            <MI 201f0  TST.B   D7>                                              {[-4-]}
            <MI 201f2  BNE     0x2021c>                                         {[-4-]}
        <POP 201f4-20214 Naked>                              Σ-4        ↓ →0x20218
            <POP 0x201f4 LimitCheck 0x0 ≤ D6 ≤ 0x1fff>                          {[-4-]}
            <MI 201fe  MOVE.L  D6,D0>                                           {[-4-]}
            <MI 20200  ASL.L   #0x1,D0>                                         {[-4-]}
            <MI 20202  LEA.L   0x20852,A0>                                      {[-4-]}
            <MI 20208  MOVEA.L (A7),A1>                                         {[-4-]}
            <MI 2020a  MOVE.W  (A0+D0.L+#0x8),D0>                               {[-4-]}
            <MI 2020e  CMP.W   (A1+0x24),D0>                                    {[-4-]}
            <MI 20212  BNE     0x20218>                                         {[-4-]}
        <POP 20214-20218 Naked>                              Σ-4        →0x2021a
            <MI 20214  MOVEQ.L #0x01,D7>                                        {[-4-]}
            <MI 20216  BRA     0x2021a>                                         {[-4-]}
        <POP 20218-2021a Naked>                              Σ-4        ↓ ←0x201f4
            <MI 20218  ADDQ.L  #0x1,D6>                                         {[-4-]}
        <POP 2021a-2021c Naked>                              Σ-4        →0x201ec ←0x20214
            <MI 2021a  BRA     0x201ec>                                         {[-4-]}
        <POP 2021c-20220 Naked>                              Σ-4        ↓ →0x2023e ←0x201ec ←0x201f0
            <MI 2021c  TST.B   D7>                                              {[-4-]}
            <MI 2021e  BNE     0x2023e>                                         {[-4-]}
        <POP 20220-2023e Naked>                              Σ-4        ↓
            <POP 0x20220 LimitCheck 0x0 ≤ D6 ≤ 0x1fff>                          {[-4-]}
            <MI 2022a  MOVE.L  D6,D0>                                           {[-4-]}
            <MI 2022c  ASL.L   #0x1,D0>                                         {[-4-]}
            <MI 2022e  LEA.L   0x20852,A0>                                      {[-4-]}
            <MI 20234  MOVEA.L (A7),A1>                                         {[-4-]}
            <MI 20236  MOVE.W  (A1+0x24),(A0+D0.L+#0x8)>                        {[-4-]}
            <MI 2023c  ADDQ.L  #0x1,0x2485a>                                    {[-4-]}
        <POP 2023e-20254 Naked>                              Σ-4 Δ+4    ↓ ←0x2021c
            <MI 2023e  CLR.B   -(A7)>                        Δ-2                {[-4-]|[#0]}
            <Const 0x20240 0x2.2>                            Δ-2                {[-4-]|[#0]|[#2]}
            <Const 0x20244 0x1.4>                            Δ-4                {[-4-]|[#0]|[#2]|[##1]}
            <Pointer.fp 0x20248 <LVAR -0x008 @ 1(r)>>        Δ-4                {[-4-]|[#0]|[#2]|[##1]|[@@-8]}
            <Pointer.fp 0x2024a <LVAR -0x00c @ 4(r)>>        Δ-4                {[-4-]|[#0]|[#2]|[##1]|[@@-8]|[@@-12]}
            <Call 0x2024c 0x1038c>                                              {[-4-]|[#0]|[#2]|[##1]|[@@-8]|[@@-12]}
                CloseFile(a : L; VAR status : B; VAR file : File)
            <POP 20252-20254 StackAdj>                       Δ+20               {}
        <POP 20254-2025c Epilogue>                           Σ0         ←0x201c6

0x2025c


@ 2025c
        <LVAR  0x008 4(r)>
        <LVAR -0x003 @ 1(r)>
        <LVAR -0x004 @ 1(r)>
        <LVAR -0x008 @ 4(r)>
        <LVAR -0x00c @ 4(rw)>
        <LVAR -0x010 @ 4(rw)>
    <POP 2025c-203d8 Body>                                              
        <POP 2025c-20272 Prologue>                           Σ0         ↓
        <POP 20272-20286 RegCacheLoad>                       Σ0         ↓
        <POP 20286-2030e Naked>                              Σ0         ↓
            <MI 20286  MOVEQ.L #0x00,D7>                                        {}
            <Blob 0x20288 [14] @>                            Δ-14               {[«14""»]}
            <MI 2029a  MOVEA.L (A6+0x8),A0>                                     {[«14""»]}
            <POP 2029e-202a0 StackAdj>                       Δ-30               {[«14""»]|[-30-]}
            <MI 202a0  MOVEA.L A7,A1>                                           {[«14""»]|[-30-]}
            <BlockMove 30,A0,A1>                                                {[«14""»]|[-30-]}
            <POP 202aa-202ac StackAdj>                       Δ-8                {[«14""»]|[-38-]}
            <Lit 0x202ac 13>                                                    {[«14""»]|[-34-]|[$$Processing :_]}
            <Pointer.sp 0x202b8 16>                          Δ-4                {[«14""»]|[-34-]|[$$Processing :_]|[^^16]}
            <POP 202b6-202b8 StackAdj>                       Δ-8                {[«14""»]|[-34-]|[$$Processing :_]|[^^16]|[-8-]}
            <Const 0x202bc 0x1.2>                            Δ-2                {[«14""»]|[-34-]|[$$Processing :_]|[^^16]|[-8-]|[#1]}
            <Const 0x202be 0x1e.2>                           Δ-2                {[«14""»]|[-34-]|[$$Processing :_]|[^^16]|[-8-]|[#1]|[#30]}
            <Call 0x202c0 0x102c4>                                              {[«14""»]|[-34-]|[$$Processing :_]|[^^16]|[-8-]|[#1]|[#30]}
                StringLit(Src : Pointer; Offset: W; Len : W) : String
            <POP 202c2-202c4 StackAdj>                       Δ+8                {[«14""»]|[-34-]|[$$Processing :_]|[^^16]|[-4-]}
            <Const 0x202c4 0x20.4>                           Δ-4                {[«14""»]|[-34-]|[$$Processing :_]|[^^16]|[-4-]|[##32]}
            <Call 0x202c8 0x102f8>                                              {[«14""»]|[-34-]|[$$Processing :_]|[^^16]|[-4-]|[##32]}
                LeftPad(a : String; b : Long) : String
            <POP 202ce-202d0 StackAdj>                       Δ+8                {[«14""»]|[-34-]|[$$Processing :_]|[^^16]}
            <Call 0x202d0 0x102d0>                                              {[«14""»]|[-34-]|[$$Processing :_]|[^^16]}
                StringCat2(a, b : String) : String
            <POP 202d6-202d8 StackAdj>                       Δ+8                {[«14""»]|[-34-]}
            <Call 0x202d8 0x103d8>                                              {[«14""»]|[-34-]}
                WriteConsoleString(str : String)
            <POP 202de-202e2 StackAdj>                       Δ+48               {}
            <Pointer.fp 0x202e2 <LVAR -0x010 @ 4(rw)>>       Δ-4                {[@@-16]}
            <Call 0x202e4 0x102b8>                                              {[@@-16]}
                NewString(VAR a : String)
            <POP 202ea-202ec StackAdj>                       Δ+4                {}
            <Pointer.fp 0x202ec <LVAR -0x008 @ 4(r)>>        Δ-4                {[@@-8]}
            <Call 0x202ee 0x102b8>                                              {[@@-8]}
                NewString(VAR a : String)
            <POP 202f4-202f5 StackAdj>                       Δ+4                {}
            <Blob 0x202f5 [4] @>                             Δ-4                {[«4""»]}
            <POP 202f8-202fa StackAdj>                       Δ-4                {[«4""»]|[-4-]}
            <Lit 0x202fa 4>                                                     {[«4""»]|[$$LOAD]}
            <MI 20308  MOVE.L  (A7)+,(A6-0xc)>               Δ+4                {[«4""»]}
            <POP 2030c-2030e StackAdj>                       Δ+4                {}
        <POP 2030e-20326 Naked>                              Σ0         ↓ →0x20376 ←0x20376
            <MI 2030e  MOVE.L  (A6+0x8),-(A7)>               Δ-4                {[4, '(A6+0x8)']}
            <Pointer.fp 0x20312 <LVAR -0x010 @ 4(rw)>>       Δ-4                {[4, '(A6+0x8)']|[@@-16]}
            <Pointer.fp 0x20314 <LVAR -0x003 @ 1(r)>>        Δ-4                {[4, '(A6+0x8)']|[@@-16]|[@@-3]}
            <Call 0x20318 0x1043c>                                              {[4, '(A6+0x8)']|[@@-16]|[@@-3]}
                FileReadLine(file : File; VAR a : String; VAR b : Byte)
            <POP 2031e-20320 StackAdj>                       Δ+12               {}
            <MI 20320  MOVEA.L (A6-0x10),A0>                                    {}
            <MI 20322  TST.W   (A0)>                                            {}
            <MI 20324  BEQ     0x20376>                                         {}
        <POP 20326-20356 Naked>                              Σ0         ↓ →0x20376
            <POP 20326-20328 StackAdj>                       Δ-4                {[-4-]}
            <MI 20328  MOVE.L  (A6-0x10),-(A7)>              Δ-4                {[-4-]|[4, '(A6-0x10)']}
            <Call 0x2032a 0x102f0>                                              {[-4-]|[4, '(A6-0x10)']}
                ToUpper(a : String) : String
            <POP 20330-20332 StackAdj>                       Δ+4                {[-4-]}
            <MI 20332  MOVE.L  (A7)+,(A6-0x10)>              Δ+4                {}
            <MI 20334  MOVE.L  (A6-0x10),-(A7)>              Δ-4                {[4, '(A6-0x10)']}
            <MI 20336  MOVE.L  (A6-0x8),-(A7)>               Δ-4                {[4, '(A6-0x10)']|[4, '(A6-0x8)']}
            <Pointer.fp 0x20338 <LVAR -0x004 @ 1(r)>>        Δ-4                {[4, '(A6-0x10)']|[4, '(A6-0x8)']|[@@-4]}
            <Call 0x2033c 0x102fc>                                              {[4, '(A6-0x10)']|[4, '(A6-0x8)']|[@@-4]}
                FirstField(MOD input : String; MOD output : String; VAR c : Bool
            <POP 20342-20344 StackAdj>                       Δ+6                {[4, '(A6-0x10)']|[-2-]}
            <MI 20344  MOVE.L  (A6-0x8),(A7)>                                   {[-2-]|[4, '(A6-0x8)']}
            <MI 20346  MOVE.L  (A6-0xc),-(A7)>               Δ-4                {[-2-]|[4, '(A6-0x8)']|[4, '(A6-0xc)']}
            <Call 0x2034a 0x102c8>                                              {[-2-]|[4, '(A6-0x8)']|[4, '(A6-0xc)']}
                StringEqual(a, b : String) : Byte
            <POP 20350-20352 StackAdj>                       Δ+8                {[-2-]}
            <MI 20352  TST.B   (A7)+>                        Δ+2                {}
            <MI 20354  BEQ     0x20376>                                         {}
        <POP 20356-2036c Naked>                              Σ0         ↓ →0x20376
            <MI 20356  MOVE.L  (A6-0x10),-(A7)>              Δ-4                {[4, '(A6-0x10)']}
            <MI 20358  MOVE.L  (A6-0x8),-(A7)>               Δ-4                {[4, '(A6-0x10)']|[4, '(A6-0x8)']}
            <Pointer.fp 0x2035a <LVAR -0x004 @ 1(r)>>        Δ-4                {[4, '(A6-0x10)']|[4, '(A6-0x8)']|[@@-4]}
            <Call 0x2035e 0x102fc>                                              {[4, '(A6-0x10)']|[4, '(A6-0x8)']|[@@-4]}
                FirstField(MOD input : String; MOD output : String; VAR c : Bool
            <POP 20364-20366 StackAdj>                       Δ+12               {}
            <MI 20366  TST.B   (A6-0x4)>                                        {}
            <MI 2036a  BEQ     0x20376>                                         {}
        <POP 2036c-20376 Naked>                              Σ0         ↓
            <MI 2036c  MOVE.L  (A6-0x8),-(A7)>               Δ-4                {[4, '(A6-0x8)']}
            <Call 0x2036e 0x201a0>                                              {[4, '(A6-0x8)']}
            <POP 20372-20374 StackAdj>                       Δ+4                {}
            <MI 20374  ADDQ.L  #0x1,D7>                                         {}
        <POP 20376-2037c Naked>                              Σ0         ↓ →0x2030e ←0x2030e ←0x20326 ←0x20356
            <MI 20376  TST.B   (A6-0x3)>                                        {}
            <MI 2037a  BEQ     0x2030e>                                         {}
        <POP 2037c-203d0 Naked>                              Σ0         ↓
            <Pointer.fp 0x2037c <LVAR -0x00c @ 4(rw)>>       Δ-4                {[@@-12]}
            <Call 0x20380 0x102bc>                                              {[@@-12]}
                FreeString(VAR a : String)
            <POP 20386-20388 StackAdj>                       Δ+4                {}
            <Pointer.fp 0x20388 <LVAR -0x008 @ 4(r)>>        Δ-4                {[@@-8]}
            <Call 0x2038a 0x102bc>                                              {[@@-8]}
                FreeString(VAR a : String)
            <POP 20390-20392 StackAdj>                       Δ+4                {}
            <Pointer.fp 0x20392 <LVAR -0x010 @ 4(rw)>>       Δ-4                {[@@-16]}
            <Call 0x20394 0x102bc>                                              {[@@-16]}
                FreeString(VAR a : String)
            <POP 2039a-2039c StackAdj>                       Δ+4                {}
            <Blob 0x2039c [26] @>                            Δ-26               {[«26""»]}
            <POP 203a8-203aa StackAdj>                       Δ-8                {[«26""»]|[-8-]}
            <MI 203aa  MOVE.L  D7,-(A7)>                     Δ-4                {[«26""»]|[-8-]|[4, 'D7']}
            <Call 0x203ac 0x102e4>                                              {[«26""»]|[-8-]|[4, 'D7']}
                Long2String(a : Long) : String
            <Lit 0x203b2 26>                                                    {[«26""»]|[-8-]|[$$ segment files referenced.]}
            <Call 0x203c0 0x102d0>                                              {[«26""»]|[-8-]|[$$ segment files referenced.]}
                StringCat2(a, b : String) : String
            <POP 203c6-203c8 StackAdj>                       Δ+8                {[«26""»]|[-4-]}
            <Call 0x203c8 0x103e0>                                              {[«26""»]|[-4-]}
                WriteConsoleStringCrLf(str : String)
            <POP 203ce-203d0 StackAdj>                       Δ+30               {}
        <POP 203d0-203d8 Epilogue>                           Σ0         

0x203d8


@ 203d8
        <LVAR -0x004 @ 4(r)>
    <POP 203d8-204ae Body>                                              
        <POP 203d8-203ee Prologue>                           Σ0         ↓
        <POP 203ee-20402 RegCacheLoad>                       Σ0         ↓
        <POP 20402-20430 Naked>                              Σ0         ↓
            <MI 20402  CLR.L   0x2485a>                                         {}
            <Blob 0x20404 [8] @>                             Δ-8                {[«8""»]}
            <Const 0x20414 0x1.2>                            Δ-2                {[«8""»]|[#1]}
            <POP 20416-20418 StackAdj>                       Δ-4                {[«8""»]|[#1]|[-4-]}
            <Lit 0x20418 7>                                                     {[«8""»]|[#1]|[$$*.MLOAD]}
            <Pointer.fp 0x20426 <LVAR -0x004 @ 4(r)>>        Δ-4                {[«8""»]|[#1]|[$$*.MLOAD]|[@@-4]}
            <Call 0x20428 0x10458>                                              {[«8""»]|[#1]|[$$*.MLOAD]|[@@-4]}
                DirFirst(MOD c : Bool; a : String; VAR b : File)
            <POP 2042e-20430 StackAdj>                       Δ+18               {}
        <POP 20430-20436 Naked>                              Σ0         ↓ →0x2044c ←0x20436
            <MI 20430  MOVEA.L (A6-0x4),A0>                                     {}
            <MI 20432  CMPA.W  #0x01,A0>                                        {}
            <MI 20434  BEQ     0x2044c>                                         {}
        <POP 20436-2044c Naked>                              Σ0         →0x20430
            <MI 20436  MOVE.L  A0,-(A7)>                     Δ-4                {[4, 'A0']}
            <Call 0x20438 0x2025c>                                              {[4, 'A0']}
            <POP 2043c-2043e StackAdj>                       Δ+2                {[-2-]}
            <MI 2043e  CLR.B   (A7)>                                            {[-2-]}
            <Pointer.fp 0x20440 <LVAR -0x004 @ 4(r)>>        Δ-4                {[-2-]|[@@-4]}
            <Call 0x20442 0x1045c>                                              {[-2-]|[@@-4]}
                DirNext(MOD a : Bool; VAR b : File)
            <POP 20448-2044a StackAdj>                       Δ+6                {}
            <MI 2044a  BRA     0x20430>                                         {}
        <POP 2044c-204a6 Naked>                              Σ0         ↓ ←0x20430
            <Blob 0x2044c [20] @>                            Δ-20               {[«20""»]}
            <Blob 0x2045e [18] @>                            Δ-18               {[«20""»]|[«18""»]}
            <POP 2046e-20470 StackAdj>                       Δ-8                {[«20""»]|[«18""»]|[-8-]}
            <Lit 0x20470 19>                                                    {[«20""»]|[«18""»]|[-4-]|[$$*.MLOAD processed,_]}
            <POP 2047c-2047d StackAdj>                       Δ-4                {[«20""»]|[«18""»]|[-4-]|[$$*.MLOAD processed,_]|[-4-]}
            <Blob 0x2047d [4] 0x2485a>                       Δ-4                {[«20""»]|[«18""»]|[-4-]|[$$*.MLOAD processed,_]|[-4-]|[«4»]}
            <Call 0x2047e 0x102e4>                                              {[«20""»]|[«18""»]|[-4-]|[$$*.MLOAD processed,_]|[-4-]|[«4»]}
                Long2String(a : Long) : String
            <Lit 0x20484 17>                                                    {[«20""»]|[«18""»]|[-4-]|[$$*.MLOAD processed,_]|[-4-]|[$$ Segments active.]}
            <Call 0x20492 0x102d4>                                              {[«20""»]|[«18""»]|[-4-]|[$$*.MLOAD processed,_]|[-4-]|[$$ Segments active.]}
                StringCat3(a, b, c : String) : String
            <POP 20498-2049c StackAdj>                       Δ+12               {[«20""»]|[«18""»]|[-4-]}
            <Call 0x2049c 0x103e0>                                              {[«20""»]|[«18""»]|[-4-]}
                WriteConsoleStringCrLf(str : String)
            <POP 204a2-204a6 StackAdj>                       Δ+42               {}
        <POP 204a6-204ae Epilogue>                           Σ0         

0x204ae


@ 204ae
        <LVAR  0x00c 4(r)>
        <LVAR  0x008 4(r)>
        <LVAR -0x003 @>
    <POP 204ae-20538 Body>                                              
        <POP 204ae-204c4 Prologue>                           Σ0         ↓
        <POP 204c4-204d0 Naked>                              Σ0 Δ-4     ↓
            <MI 204c4  MOVEQ.L #0x00,D7>                                        {}
            <MI 204c6  MOVEQ.L #0x00,D6>                                        {}
            <MI 204c8  MOVEA.L (A6+0xc),A0>                                     {}
            <MI 204cc  MOVEA.L (A0),A0>                                         {}
            <MI 204ce  MOVE.L  A0,-(A7)>                     Δ-4                {[4, 'A0']}
        <POP 204d0-204d8 Naked>                              Σ-4        ↓ →0x20504 ←0x20502
            <MI 204d0  CMP.L   0x2485a,D7>                                      {[-4-]}
            <MI 204d6  BGE     0x20504>                                         {[-4-]}
        <POP 204d8-204dc Naked>                              Σ-4        ↓ →0x20504
            <MI 204d8  TST.B   D6>                                              {[-4-]}
            <MI 204da  BNE     0x20504>                                         {[-4-]}
        <POP 204dc-204fc Naked>                              Σ-4        ↓ →0x20500
            <POP 0x204dc LimitCheck 0x0 ≤ D7 ≤ 0x1fff>                          {[-4-]}
            <MI 204e6  MOVE.L  D7,D0>                                           {[-4-]}
            <MI 204e8  ASL.L   #0x1,D0>                                         {[-4-]}
            <MI 204ea  LEA.L   0x20852,A0>                                      {[-4-]}
            <MI 204f0  MOVEA.L (A7),A1>                                         {[-4-]}
            <MI 204f2  MOVE.W  (A0+D0.L+#0x8),D0>                               {[-4-]}
            <MI 204f6  CMP.W   (A1+0x24),D0>                                    {[-4-]}
            <MI 204fa  BNE     0x20500>                                         {[-4-]}
        <POP 204fc-20500 Naked>                              Σ-4        →0x20502
            <MI 204fc  MOVEQ.L #0x01,D6>                                        {[-4-]}
            <MI 204fe  BRA     0x20502>                                         {[-4-]}
        <POP 20500-20502 Naked>                              Σ-4        ↓ ←0x204dc
            <MI 20500  ADDQ.L  #0x1,D7>                                         {[-4-]}
        <POP 20502-20504 Naked>                              Σ-4        →0x204d0 ←0x204fc
            <MI 20502  BRA     0x204d0>                                         {[-4-]}
        <POP 20504-2050a Naked>                              Σ-4 Δ+4    ↓ →0x20530 ←0x204d0 ←0x204d8
            <POP 20504-20506 StackAdj>                       Δ+4                {}
            <MI 20506  TST.B   D6>                                              {}
            <MI 20508  BNE     0x20530>                                         {}
        <POP 2050a-20530 Naked>                              Σ0         ↓
            <Const 0x2050a 0x2.2>                            Δ-2                {[#2]}
            <Const 0x2050e 0x1.2>                            Δ-2                {[#2]|[#1]}
            <Const 0x20512 0x1.4>                            Δ-4                {[#2]|[#1]|[##1]}
            <Pointer.fp 0x20516 <LVAR -0x003 @>>             Δ-4                {[#2]|[#1]|[##1]|[@@-3]}
            <MI 2051a  MOVEA.L (A6+0xc),A0>                                     {[#2]|[#1]|[##1]|[@@-3]}
            <MI 2051e  PEA.L   (A0)>                         Δ-4                {[#2]|[#1]|[##1]|[@@-3]|[4, '^(A0)']}
            <Call 0x20520 0x1038c>                                              {[#2]|[#1]|[##1]|[@@-3]|[4, '^(A0)']}
                CloseFile(a : L; VAR status : B; VAR file : File)
            <POP 20526-2052a StackAdj>                       Δ+16               {}
            <MI 2052a  MOVEA.L (A6+0x8),A0>                                     {}
            <MI 2052e  ADDQ.L  #0x1,(A0)>                                       {}
        <POP 20530-20538 Epilogue>                           Σ0         ←0x20504

0x20538


@ 20538
        <LVAR -0x008 @ 4(r)>
        <LVAR -0x00c @ 4(r)>
    <POP 20538-205f4 Body>                                   Δ+6        
        <POP 20538-2054e Prologue>                           Σ0         ↓
        <POP 2054e-20558 RegCacheLoad>                       Σ0         ↓
        <POP 20558-2058c Naked>                              Σ0 Δ-6     ↓
            <MI 20558  CLR.L   (A6-0xc)>                                        {}
            <Blob 0x2055a [6] @>                             Δ-6                {[«6""»]}
            <Const 0x2056a 0x1.2>                            Δ-2                {[«6""»]|[#1]}
            <POP 2056c-2056e StackAdj>                       Δ-4                {[«6""»]|[#1]|[-4-]}
            <Lit 0x2056e 5>                                                     {[«6""»]|[#1]|[$$*.SEG]}
            <Pointer.fp 0x20580 <LVAR -0x008 @ 4(r)>>        Δ-4                {[«6""»]|[#1]|[$$*.SEG]|[@@-8]}
            <Call 0x20582 0x10458>                                              {[«6""»]|[#1]|[$$*.SEG]|[@@-8]}
                DirFirst(MOD c : Bool; a : String; VAR b : File)
            <POP 20588-2058c StackAdj>                       Δ+10               {[«6""»]}
        <POP 2058c-20594 Naked>                              Σ-6 Δ+6    ↓ →0x205b2 ←0x205a8
            <POP 2058c-2058e StackAdj>                       Δ+6                {}
            <MI 2058e  MOVEA.L (A6-0x8),A0>                                     {}
            <MI 20590  CMPA.W  #0x01,A0>                                        {}
            <MI 20592  BEQ     0x205b2>                                         {}
        <POP 20594-205a6 Naked>                              Σ0 Δ-2     ↓ →0x205a8
            <Pointer.fp 0x20594 <LVAR -0x008 @ 4(r)>>        Δ-4                {[@@-8]}
            <Pointer.fp 0x20596 <LVAR -0x00c @ 4(r)>>        Δ-4                {[@@-8]|[@@-12]}
            <Call 0x20598 0x204ae>                                              {[@@-8]|[@@-12]}
            <POP 2059c-2059e StackAdj>                       Δ+6                {[-2-]}
            <MI 2059e  CLR.B   (A7)>                                            {[-2-]}
            <MI 205a0  MOVEA.L (A6-0x8),A0>                                     {[-2-]}
            <MI 205a2  CMPA.W  #0x01,A0>                                        {[-2-]}
            <MI 205a4  BNE     0x205a8>                                         {[-2-]}
        <POP 205a6-205a8 Naked>                              Σ-2        ↓
            <MI 205a6  ADDQ.B  #0x1,(A7)>                                       {[-2-]}
        <POP 205a8-205b2 Naked>                              Σ-2 Δ-4    →0x2058c ←0x20594
            <Pointer.fp 0x205a8 <LVAR -0x008 @ 4(r)>>        Δ-4                {[-2-]|[@@-8]}
            <Call 0x205aa 0x1045c>                                              {[-2-]|[@@-8]}
                DirNext(MOD a : Bool; VAR b : File)
            <MI 205b0  BRA     0x2058c>                                         {[-2-]|[@@-8]}
        <POP 205b2-205ec Naked>                              Σ0         ↓ ←0x2058c
            <Blob 0x205b2 [18] @>                            Δ-18               {[«18""»]}
            <POP 205be-205c0 StackAdj>                       Δ-8                {[«18""»]|[-8-]}
            <MI 205c0  MOVE.L  (A6-0xc),-(A7)>               Δ-4                {[«18""»]|[-8-]|[4, '(A6-0xc)']}
            <Call 0x205c2 0x102e4>                                              {[«18""»]|[-8-]|[4, '(A6-0xc)']}
                Long2String(a : Long) : String
            <Lit 0x205c8 18>                                                    {[«18""»]|[-8-]|[$$ Segments deleted.]}
            <Call 0x205da 0x102d0>                                              {[«18""»]|[-8-]|[$$ Segments deleted.]}
                StringCat2(a, b : String) : String
            <POP 205e0-205e2 StackAdj>                       Δ+8                {[«18""»]|[-4-]}
            <Call 0x205e2 0x103e0>                                              {[«18""»]|[-4-]}
                WriteConsoleStringCrLf(str : String)
            <POP 205e8-205ec StackAdj>                       Δ+22               {}
        <POP 205ec-205f4 Epilogue>                           Σ0         

0x205f4


@ 205f4
START
    <POP 205f4--0001 Body>                                              
        <POP 205f4-205fe Prologue>                           Σ0         
        <POP 205fe-20646 Naked>                              Σ0         ↓
            <Call 0x205fe 0x10398>                                              {}
                FSCALL_10398
            <Blob 0x20604 [36] @>                            Δ-36               {[«36""»]}
            <POP 20610-20612 StackAdj>                       Δ-4                {[«36""»]|[-4-]}
            <Lit 0x20612 36>                                                    {[«36""»]|[$$R1000 Segment file garbage collector]}
            <Call 0x20626 0x103e0>                                              {[«36""»]|[$$R1000 Segment file garbage collector]}
                WriteConsoleStringCrLf(str : String)
            <POP 2062c-20630 StackAdj>                       Δ+40               {}
            <Call 0x20630 0x203d8>                                              {}
            <Call 0x20634 0x20538>                                              {}
            <MI 20638  CLR.B   -(A7)>                        Δ-2                {[#0]}
            <Const 0x2063a 0x1.4>                            Δ-4                {[#0]|[##1]}
            <Call 0x2063e 0x103b8>                                              {[#0]|[##1]}
                PopProgram(status : Byte; msg : String)
            <POP 20644-20646 StackAdj>                       Δ+6                {}
        <POP 20646-2064c Naked>                              Σ0         
            <Call 0x20646 0x10284>                                              {}
                ?exit

0x2065a


@ 2065a
PROG_FAIL
        <LVAR  0x008 1(r)>
    <POP 2065a-206c2 Body>                                              
        <POP 2065a-20670 Prologue>                           Σ0         ↓
        <POP 20670-206ba Naked>                              Σ0         ↓
            <Blob 0x20670 [14] @>                            Δ-14               {[«14""»]}
            <Const 0x2067c 0x3.2>                            Δ-2                {[«14""»]|[#3]}
            <POP 20680-20682 StackAdj>                       Δ-8                {[«14""»]|[#3]|[-8-]}
            <Lit 0x20682 14>                                                    {[«14""»]|[#3]|[-4-]|[$$Words error :_]}
            <POP 20694-20696 StackAdj>                       Δ-4                {[«14""»]|[#3]|[-4-]|[$$Words error :_]|[-4-]}
            <MI 20696  MOVE.B  (A6+0x8),D0>                                     {[«14""»]|[#3]|[-4-]|[$$Words error :_]|[-4-]}
            <MI 2069a  EXTB.W  D0>                                              {[«14""»]|[#3]|[-4-]|[$$Words error :_]|[-4-]}
            <MI 2069c  EXTW.L  D0>                                              {[«14""»]|[#3]|[-4-]|[$$Words error :_]|[-4-]}
            <MI 2069e  MOVE.L  D0,-(A7)>                     Δ-4                {[«14""»]|[#3]|[-4-]|[$$Words error :_]|[-4-]|[4, 'D0']}
            <Call 0x206a0 0x102e4>                                              {[«14""»]|[#3]|[-4-]|[$$Words error :_]|[-4-]|[4, 'D0']}
                Long2String(a : Long) : String
            <POP 206a6-206a8 StackAdj>                       Δ+4                {[«14""»]|[#3]|[-4-]|[$$Words error :_]|[-4-]}
            <Call 0x206a8 0x102d0>                                              {[«14""»]|[#3]|[-4-]|[$$Words error :_]|[-4-]}
                StringCat2(a, b : String) : String
            <POP 206ae-206b0 StackAdj>                       Δ+8                {[«14""»]|[#3]|[-4-]}
            <Call 0x206b0 0x103b8>                                              {[«14""»]|[#3]|[-4-]}
                PopProgram(status : Byte; msg : String)
            <POP 206b6-206ba StackAdj>                       Δ+20               {}
        <POP 206ba-206c2 Epilogue>                           Σ0         

0x20716


@ 20716
EXP_FAIL
        <LVAR  0x00e 1(r)>
        <LVAR  0x00a 4(r)>
        <LVAR  0x008 1(r)>
    <POP 20716-20852 Body>                                              
        <POP 20716-2072c Prologue>                           Σ0         ↓
        <POP 2072c-20742 RegCacheLoad>                       Σ0         ↓
        <POP 20742-207a2 Naked>                              Σ0         ↓ →0x207ea
            <Call 0x20742 0x103dc>                                              {}
                WriteConsoleCrLf(void)
            <Blob 0x20748 [18] @>                            Δ-18               {[«18""»]}
            <POP 20754-20756 StackAdj>                       Δ-4                {[«18""»]|[-4-]}
            <Lit 0x20756 18>                                                    {[«18""»]|[$$Experiment error :]}
            <Call 0x20762 0x103e0>                                              {[«18""»]|[$$Experiment error :]}
                WriteConsoleStringCrLf(str : String)
            <POP 20764-20765 StackAdj>                       Δ+22       ↓       {}
            <Blob 0x20765 [14] @>                            Δ-14               {[«14""»]}
            <POP 20774-20776 StackAdj>                       Δ-8                {[«14""»]|[-8-]}
            <Lit 0x20776 13>                                                    {[«14""»]|[-4-]|[$$Board      :_]}
            <POP 20780-20782 StackAdj>                       Δ-6                {[«14""»]|[-4-]|[$$Board      :_]|[-6-]}
            <MI 20782  MOVE.B  (A6+0xe),(A7)>                                   {[«14""»]|[-4-]|[$$Board      :_]|[-6-]}
            <Call 0x20786 0x1049c>                                              {[«14""»]|[-4-]|[$$Board      :_]|[-6-]}
                BoardName(address : B) : String
            <POP 2078c-2078e StackAdj>                       Δ+2                {[«14""»]|[-4-]|[$$Board      :_]|[-4-]}
            <Call 0x2078e 0x102d0>                                              {[«14""»]|[-4-]|[$$Board      :_]|[-4-]}
                StringCat2(a, b : String) : String
            <POP 20794-20796 StackAdj>                       Δ+8                {[«14""»]|[-4-]}
            <Call 0x20796 0x103e0>                                              {[«14""»]|[-4-]}
                WriteConsoleStringCrLf(str : String)
            <POP 20798-2079a StackAdj>                       Δ+18               {}
            <MI 2079a  MOVEA.L (A6+0xa),A0>                                     {}
            <MI 2079e  CMPA.W  #0x01,A0>                                        {}
            <MI 207a0  BEQ     0x207ea>                                         {}
        <POP 207a2-207ea Naked>                              Σ0         ↓
            <Blob 0x207a2 [14] @>                            Δ-14               {[«14""»]}
            <Blob 0x207b2 [30] (A0+0xfc)>                    Δ-30               {[«14""»]|[«30»]}
            <POP 207c2-207c4 StackAdj>                       Δ-8                {[«14""»]|[«30»]|[-8-]}
            <Lit 0x207c4 13>                                                    {[«14""»]|[«30»]|[-4-]|[$$Experiment :_]}
            <POP 207ce-207d0 StackAdj>                       Δ-4                {[«14""»]|[«30»]|[-4-]|[$$Experiment :_]|[-4-]}
            <Lit 0x207d0>                                                       {[«14""»]|[«30»]|[-4-]|[$$Experiment :_]|[$$…]}
                <Pointer.sp 0x207d0 12>                      Δ-4        
                <Const 0x207d4 0x1.2>                        Δ-2        
                <Const 0x207d6 0x1e.2>                       Δ-2        
                <Call 0x207d8 0x102c4>
                    StringLit(Src : Pointer; Offset: W; Len : W) : String
                <POP 207da-207dc StackAdj>                   Δ+8        
            <Call 0x207dc 0x102d0>                                              {[«14""»]|[«30»]|[-4-]|[$$Experiment :_]|[$$…]}
                StringCat2(a, b : String) : String
            <POP 207e2-207e4 StackAdj>                       Δ+8                {[«14""»]|[«30»]|[-4-]}
            <Call 0x207e4 0x103e0>                                              {[«14""»]|[«30»]|[-4-]}
                WriteConsoleStringCrLf(str : String)
            <POP 207e6-207ea StackAdj>                       Δ+48               {}
        <POP 207ea-2084a Naked>                              Σ0         ↓ ←0x20742
            <Blob 0x207ea [14] @>                            Δ-14               {[«14""»]}
            <POP 207fa-207fc StackAdj>                       Δ-8                {[«14""»]|[-8-]}
            <Lit 0x207fc 13>                                                    {[«14""»]|[-4-]|[$$Status     :_]}
            <POP 20806-20808 StackAdj>                       Δ-6                {[«14""»]|[-4-]|[$$Status     :_]|[-6-]}
            <MI 20808  MOVE.B  (A6+0x8),(A7)>                                   {[«14""»]|[-4-]|[$$Status     :_]|[-6-]}
            <Call 0x2080c 0x104a2>                                              {[«14""»]|[-4-]|[$$Status     :_]|[-6-]}
                ExpStatus2Text(status.B, &String)
            <POP 20812-20814 StackAdj>                       Δ+2                {[«14""»]|[-4-]|[$$Status     :_]|[-4-]}
            <Call 0x20814 0x102d0>                                              {[«14""»]|[-4-]|[$$Status     :_]|[-4-]}
                StringCat2(a, b : String) : String
            <POP 2081a-2081c StackAdj>                       Δ+8                {[«14""»]|[-4-]}
            <Call 0x2081c 0x103e0>                                              {[«14""»]|[-4-]}
                WriteConsoleStringCrLf(str : String)
            <POP 2081e-2081f StackAdj>                       Δ+18       ↓       {}
            <Blob 0x2081f [24] @>                            Δ-24               {[«24""»]}
            <Const 0x2082e 0x2.2>                            Δ-2                {[«24""»]|[#2]}
            <POP 20832-20834 StackAdj>                       Δ-4                {[«24""»]|[#2]|[-4-]}
            <Lit 0x20834 23>                                                    {[«24""»]|[#2]|[$$Fatal experiment error.]}
            <Call 0x20842 0x103b8>                                              {[«24""»]|[#2]|[$$Fatal experiment error.]}
                PopProgram(status : Byte; msg : String)
            <POP 20848-2084a StackAdj>                       Δ+30               {}
        <POP 2084a-20852 Epilogue>                           Σ0         

Raw from R1000.Disassembly/DFS

00020000 ; --------------------------------------------------------------------------------------
00020000 ; R1000.Disassembly modules:
00020000 ;   import all
00020000 ;   import kind.program
00020000 ;   no ident.3147df673b0bf2ee
00020000 ; --------------------------------------------------------------------------------------
00020000					stack.top:
00020000 00 04 00 00              |        |		.CODE	0x40000			; STACK.END
00020004 00 02 05 f4              |        |		.CODE	START
00020008 00 01 02 88              |        |		.CODE	FSCALL_10288
0002000c					heap.top:
0002000c 00 02 48 6e              |  Hn    |		.PTR	0x2486e
00020010					code.end:
00020010 00 02 08 52              |   R    |		.PTR	0x20852
00020014 00 00 00 00              |        |		.CONST	0x00000000
00020018					programfailurehandler:
00020018 00 02 06 5a              |   Z    |		.CODE	PROG_FAIL
0002001c					experimentfailurehandler:
0002001c 00 02 07 16              |        |		.CODE	EXP_FAIL
00020020 00 00 00 00              |        |		.CONST	0x00000000
00020024					exp_init_done:
00020024 00                       |        |		.CONST	0x00
00020025 00                       |        |		.CONST	0x00
00020026 00 00                    |        |		.CONST	0x0000
00020028 00 00                    |        |		.CONST	0x0000
0002002a 00 00                    |        |		.XXX[0x2]
0002002c 00 00                    |        |		.CONST	0x0000
0002002e 00 00                    |        |		.CONST	0x0000
00020030 00 00                    |        |		.CONST	0x0000
00020032 00 00 00 00 00 00        |        |		.XXX[0x6]
00020038 00 00 00 00 00 00 00 00  |        |		.BLANK	00[0xb0]
000200e8 00 00 00 00              |        |		.XXX[0x4]
000200ec 00 00 00 00              |        |		.PTR	0x0
000200f0					is_open_ERROR_LOG:
000200f0 00                       |        |		.CONST	0x0
000200f1					write_error_ERROR_LOG:
000200f1 00                       |        |		.CONST	0x0
000200f2 00 00 00 00              |        |		.CONST	0x00000000
000200f6 00 00 00 00              |        |		.CONST	0x00000000
000200fa 00                       |        |		.CONST	0x00
000200fb 00                       |        |		.CONST	0x00
000200fc					file_ERROR_LOG:
000200fc 00 00 00 00              |        |		.CONST	0x00000000
00020100 00 00 00 00              |        |		.CONST	0x00000000
00020104 00 00                    |        |		.CONST	0x0000
00020106 00 00                    |        |		.CONST	0x0000
00020108					somekindoffsflag:
00020108 00                       |        |		.CONST	0x00
00020109 00                       |        |		.CONST	0x00
0002010a 50 72 6f 63 65 73 73 69  |Processi|		.TXT	'Processing :_ '
00020118 4c 4f 41 44              |LOAD    |		.TXT	'LOAD'
0002011c 20 73 65 67 6d 65 6e 74  | segment|		.TXT	' segment files referenced.'
00020136 2a 2e 4d 4c 4f 41 44 20  |*.MLOAD |		.TXT	'*.MLOAD '
0002013e 2a 2e 4d 4c 4f 41 44 20  |*.MLOAD |		.TXT	'*.MLOAD processed,_ '
00020152 20 53 65 67 6d 65 6e 74  | Segment|		.TXT	' Segments active. '
00020164 2a 2e 53 45 47 20        |*.SEG   |		.TXT	'*.SEG '
0002016a 20 53 65 67 6d 65 6e 74  | Segment|		.TXT	' Segments deleted.'
0002017c 52 31 30 30 30 20 53 65  |R1000 Se|		.TXT	'R1000 Segment file garbage collector'
000201a0 ; --------------------------------------------------------------------------------------
000201a0 ; OMSI PASCAL Function
000201a0 ;    <LVAR  0x008 4(r)>
000201a0 ;    <LVAR -0x008 @ 1(r)>
000201a0 ;    <LVAR -0x00c @ 4(r)>
000201a0 ; --------------------------------------------------------------------------------------
000201a0 4e 56 ff b8              |NV      |		LINK.W	A6,#0xffb8
000201a4 bf d5                    |        |		CMPA.L	(A5),A7
000201a6 62 06                    |b       |		BHI	0x201ae
000201a8 44 fc 00 02              |D       |		MOVE.W	#0x2,CCR
000201ac 4e 76                    |Nv      |		TRAPV
000201ae de fc 00 3c              |   <    |		ADDA.W	#0x3c,A7
000201b2 48 e7 c3 f8              |H       |		MOVEM.L	A4+A3+A2+A1+A0+D7+D6+D1+D0,-(A7)
000201b6 45 ee ff f8              |E       |		LEA.L	(A6-0x8),A2
000201ba 47 ee ff f4              |G       |		LEA.L	(A6-0xc),A3
000201be 49 f9 00 02 48 5a        |I   HZ  |		LEA.L	0x2485a,A4
000201c4 72 14                    |r       |		MOVEQ.L	#0x14,D1
000201c6 2f 2e 00 08              |/.      |		MOVE.L	(A6+0x8),-(A7)
000201ca 42 27                    |B'      |		CLR.B	-(A7)
000201cc 1f 3c 00 01              | <      |		MOVE.B	#0x01,-(A7)
000201d0 48 78 00 00              |Hx      |		PEA.L	0x0
000201d4 48 52                    |HR      |		PEA.L	(A2)
000201d6 48 53                    |HS      |		PEA.L	(A3)
000201d8 4e b9 00 01 03 80        |N       |		JSR	OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
000201de de c1                    |        |		ADDA.W	D1,A7
000201e0 4a 12                    |J       |		TST.B	(A2)
000201e2 66 70                    |fp      |		BNE	0x20254
000201e4 20 53                    | S      |		MOVEA.L	(A3),A0
000201e6 2f 08                    |/       |		MOVE.L	A0,-(A7)
000201e8 7c 00                    ||       |		MOVEQ.L	#0x00,D6
000201ea 7e 00                    |~       |		MOVEQ.L	#0x00,D7
000201ec bc 94                    |        |		CMP.L	(A4),D6
000201ee 6c 2c                    |l,      |		BGE	0x2021c
000201f0 4a 07                    |J       |		TST.B	D7
000201f2 66 28                    |f(      |		BNE	0x2021c
000201f4 0c 86 00 00 1f ff        |        |		CMPI.L	#0x00001fff,D6
000201fa 63 02                    |c       |		BLS	0x201fe
000201fc 4e 4f                    |NO      |		TRAP	#15
000201fe 20 06                    |        |		MOVE.L	D6,D0
00020200 e3 80                    |        |		ASL.L	#0x1,D0
00020202 41 f9 00 02 08 52        |A    R  |		LEA.L	0x20852,A0
00020208 22 57                    |"W      |		MOVEA.L	(A7),A1
0002020a 30 30 08 08              |00      |		MOVE.W	(A0+D0.L+#0x8),D0
0002020e b0 69 00 24              | i $    |		CMP.W	(A1+0x24),D0
00020212 66 04                    |f       |		BNE	0x20218
00020214 7e 01                    |~       |		MOVEQ.L	#0x01,D7
00020216 60 02                    |`       |		BRA	0x2021a
00020218 52 86                    |R       |		ADDQ.L	#0x1,D6
0002021a 60 d0                    |`       |		BRA	0x201ec
0002021c 4a 07                    |J       |		TST.B	D7
0002021e 66 1e                    |f       |		BNE	0x2023e
00020220 0c 86 00 00 1f ff        |        |		CMPI.L	#0x00001fff,D6
00020226 63 02                    |c       |		BLS	0x2022a
00020228 4e 4f                    |NO      |		TRAP	#15
0002022a 20 06                    |        |		MOVE.L	D6,D0
0002022c e3 80                    |        |		ASL.L	#0x1,D0
0002022e 41 f9 00 02 08 52        |A    R  |		LEA.L	0x20852,A0
00020234 22 57                    |"W      |		MOVEA.L	(A7),A1
00020236 31 a9 00 24 08 08        |1  $    |		MOVE.W	(A1+0x24),(A0+D0.L+#0x8)
0002023c 52 94                    |R       |		ADDQ.L	#0x1,(A4)
0002023e 42 27                    |B'      |		CLR.B	-(A7)
00020240 1f 3c 00 02              | <      |		MOVE.B	#0x02,-(A7)
00020244 48 78 00 01              |Hx      |		PEA.L	0x1
00020248 48 52                    |HR      |		PEA.L	(A2)
0002024a 48 53                    |HS      |		PEA.L	(A3)
0002024c 4e b9 00 01 03 8c        |N       |		JSR	CloseFile(a : L; VAR status : B; VAR file : File)
00020252 de c1                    |        |		ADDA.W	D1,A7
00020254 4c df 1f c3              |L       |		MOVEM.L	(A7)+,D0+D1+D6+D7+A0+A1+A2+A3+A4
00020258 4e 5e                    |N^      |		UNLK	A6
0002025a 4e 75                    |Nu      |		RTS
0002025c ; --------------------------------------------------------------------------------------
0002025c ; OMSI PASCAL Function
0002025c ;    <LVAR  0x008 4(r)>
0002025c ;    <LVAR -0x003 @ 1(r)>
0002025c ;    <LVAR -0x004 @ 1(r)>
0002025c ;    <LVAR -0x008 @ 4(r)>
0002025c ;    <LVAR -0x00c @ 4(rw)>
0002025c ;    <LVAR -0x010 @ 4(rw)>
0002025c ; --------------------------------------------------------------------------------------
0002025c 4e 56 ff 7c              |NV |    |		LINK.W	A6,#0xff7c
00020260 bf d5                    |        |		CMPA.L	(A5),A7
00020262 62 06                    |b       |		BHI	0x2026a
00020264 44 fc 00 02              |D       |		MOVE.W	#0x2,CCR
00020268 4e 76                    |Nv      |		TRAPV
0002026a de fc 00 70              |   p    |		ADDA.W	#0x70,A7
0002026e 48 e7 f1 f8              |H       |		MOVEM.L	A4+A3+A2+A1+A0+D7+D3+D2+D1+D0,-(A7)
00020272 45 ee ff f0              |E       |		LEA.L	(A6-0x10),A2
00020276 47 ee ff f8              |G       |		LEA.L	(A6-0x8),A3
0002027a 49 f9 00 01 02 c4        |I       |		LEA.L	StringLit(Src : Pointer; Offset: W; Len : W) : String,A4
00020280 72 01                    |r       |		MOVEQ.L	#0x01,D1
00020282 74 1e                    |t       |		MOVEQ.L	#0x1e,D2
00020284 76 0c                    |v       |		MOVEQ.L	#0x0c,D3
00020286 7e 00                    |~       |		MOVEQ.L	#0x00,D7
00020288 9e fc 00 0e              |        |		SUBA.W	#0xe,A7
0002028c 20 4f                    | O      |		MOVEA.L	A7,A0
0002028e 43 fa fe 7a              |C  z    |		LEA.L	0x2010a,A1
00020292 70 0c                    |p       |		MOVEQ.L	#0x0c,D0
00020294 10 d9                    |        |		MOVE.B	(A1)+,(A0)+
00020296 51 c8 ff fc              |Q       |		DBF	D0,0x20294
0002029a 20 6e 00 08              | n      |		MOVEA.L	(A6+0x8),A0
0002029e 9e c2                    |        |		SUBA.W	D2,A7
000202a0 22 4f                    |"O      |		MOVEA.L	A7,A1
000202a2 70 1d                    |p       |		MOVEQ.L	#0x1d,D0
000202a4 12 d8                    |        |		MOVE.B	(A0)+,(A1)+
000202a6 51 c8 ff fc              |Q       |		DBF	D0,0x202a4
000202aa 51 4f                    |QO      |		SUBQ.L	#0x8,A7
000202ac 48 6f 00 26              |Ho &    |		PEA.L	(A7+0x26)
000202b0 3f 01                    |?       |		MOVE.W	D1,-(A7)
000202b2 3f 3c 00 0d              |?<      |		MOVE.W	#0xd,-(A7)
000202b6 4e 94                    |N       |		JSR	(A4)
000202b8 48 6f 00 10              |Ho      |		PEA.L	(A7+0x10)
000202bc 3f 01                    |?       |		MOVE.W	D1,-(A7)
000202be 3f 02                    |?       |		MOVE.W	D2,-(A7)
000202c0 4e 94                    |N       |		JSR	(A4)
000202c2 50 4f                    |PO      |		ADDQ.L	#0x8,A7
000202c4 48 78 00 20              |Hx      |		PEA.L	0x20
000202c8 4e b9 00 01 02 f8        |N       |		JSR	LeftPad(a : String; b : Long) : String
000202ce 50 4f                    |PO      |		ADDQ.L	#0x8,A7
000202d0 4e b9 00 01 02 d0        |N       |		JSR	StringCat2(a, b : String) : String
000202d6 50 4f                    |PO      |		ADDQ.L	#0x8,A7
000202d8 4e b9 00 01 03 d8        |N       |		JSR	WriteConsoleString(str : String)
000202de de fc 00 30              |   0    |		ADDA.W	#0x30,A7
000202e2 48 52                    |HR      |		PEA.L	(A2)
000202e4 4e b9 00 01 02 b8        |N       |		JSR	NewString(VAR a : String)
000202ea 58 4f                    |XO      |		ADDQ.L	#0x4,A7
000202ec 48 53                    |HS      |		PEA.L	(A3)
000202ee 4e b9 00 01 02 b8        |N       |		JSR	NewString(VAR a : String)
000202f4 2e ba fe 22              |.  "    |		MOVE.L	0x20118,(A7)
000202f8 59 4f                    |YO      |		SUBQ.L	#0x4,A7
000202fa 48 6f 00 04              |Ho      |		PEA.L	(A7+0x4)
000202fe 3f 01                    |?       |		MOVE.W	D1,-(A7)
00020300 3f 3c 00 04              |?<      |		MOVE.W	#0x4,-(A7)
00020304 4e 94                    |N       |		JSR	(A4)
00020306 50 4f                    |PO      |		ADDQ.L	#0x8,A7
00020308 2d 5f ff f4              |-_      |		MOVE.L	(A7)+,(A6-0xc)
0002030c 58 4f                    |XO      |		ADDQ.L	#0x4,A7
0002030e 2f 2e 00 08              |/.      |		MOVE.L	(A6+0x8),-(A7)
00020312 48 52                    |HR      |		PEA.L	(A2)
00020314 48 6e ff fd              |Hn      |		PEA.L	(A6-0x3)
00020318 4e b9 00 01 04 3c        |N    <  |		JSR	FileReadLine(file : File; VAR a : String; VAR b : Byte)
0002031e de c3                    |        |		ADDA.W	D3,A7
00020320 20 52                    | R      |		MOVEA.L	(A2),A0
00020322 4a 50                    |JP      |		TST.W	(A0)
00020324 67 50                    |gP      |		BEQ	0x20376
00020326 59 4f                    |YO      |		SUBQ.L	#0x4,A7
00020328 2f 12                    |/       |		MOVE.L	(A2),-(A7)
0002032a 4e b9 00 01 02 f0        |N       |		JSR	ToUpper(a : String) : String
00020330 58 4f                    |XO      |		ADDQ.L	#0x4,A7
00020332 24 9f                    |$       |		MOVE.L	(A7)+,(A2)
00020334 2f 12                    |/       |		MOVE.L	(A2),-(A7)
00020336 2f 13                    |/       |		MOVE.L	(A3),-(A7)
00020338 48 6e ff fc              |Hn      |		PEA.L	(A6-0x4)
0002033c 4e b9 00 01 02 fc        |N       |		JSR	FirstField(MOD input : String; MOD output : String; VAR c : Bool
00020342 5c 4f                    |\O      |		ADDQ.L	#0x6,A7
00020344 2e 93                    |.       |		MOVE.L	(A3),(A7)
00020346 2f 2e ff f4              |/.      |		MOVE.L	(A6-0xc),-(A7)
0002034a 4e b9 00 01 02 c8        |N       |		JSR	StringEqual(a, b : String) : Byte
00020350 50 4f                    |PO      |		ADDQ.L	#0x8,A7
00020352 4a 1f                    |J       |		TST.B	(A7)+
00020354 67 20                    |g       |		BEQ	0x20376
00020356 2f 12                    |/       |		MOVE.L	(A2),-(A7)
00020358 2f 13                    |/       |		MOVE.L	(A3),-(A7)
0002035a 48 6e ff fc              |Hn      |		PEA.L	(A6-0x4)
0002035e 4e b9 00 01 02 fc        |N       |		JSR	FirstField(MOD input : String; MOD output : String; VAR c : Bool
00020364 de c3                    |        |		ADDA.W	D3,A7
00020366 4a 2e ff fc              |J.      |		TST.B	(A6-0x4)
0002036a 67 0a                    |g       |		BEQ	0x20376
0002036c 2f 13                    |/       |		MOVE.L	(A3),-(A7)
0002036e 4e ba fe 30              |N  0    |		JSR	0x201a0
00020372 58 4f                    |XO      |		ADDQ.L	#0x4,A7
00020374 52 87                    |R       |		ADDQ.L	#0x1,D7
00020376 4a 2e ff fd              |J.      |		TST.B	(A6-0x3)
0002037a 67 92                    |g       |		BEQ	0x2030e
0002037c 48 6e ff f4              |Hn      |		PEA.L	(A6-0xc)
00020380 4e b9 00 01 02 bc        |N       |		JSR	FreeString(VAR a : String)
00020386 58 4f                    |XO      |		ADDQ.L	#0x4,A7
00020388 48 53                    |HS      |		PEA.L	(A3)
0002038a 4e b9 00 01 02 bc        |N       |		JSR	FreeString(VAR a : String)
00020390 58 4f                    |XO      |		ADDQ.L	#0x4,A7
00020392 48 52                    |HR      |		PEA.L	(A2)
00020394 4e b9 00 01 02 bc        |N       |		JSR	FreeString(VAR a : String)
0002039a 58 4f                    |XO      |		ADDQ.L	#0x4,A7
0002039c 41 fa fd 98              |A       |		LEA.L	0x20136,A0
000203a0 70 0c                    |p       |		MOVEQ.L	#0x0c,D0
000203a2 3f 20                    |?       |		MOVE.W	-(A0),-(A7)
000203a4 51 c8 ff fc              |Q       |		DBF	D0,0x203a2
000203a8 51 4f                    |QO      |		SUBQ.L	#0x8,A7
000203aa 2f 07                    |/       |		MOVE.L	D7,-(A7)
000203ac 4e b9 00 01 02 e4        |N       |		JSR	Long2String(a : Long) : String
000203b2 48 6f 00 0c              |Ho      |		PEA.L	(A7+0xc)
000203b6 3f 01                    |?       |		MOVE.W	D1,-(A7)
000203b8 3f 3c 00 1a              |?<      |		MOVE.W	#0x1a,-(A7)
000203bc 4e 94                    |N       |		JSR	(A4)
000203be 50 4f                    |PO      |		ADDQ.L	#0x8,A7
000203c0 4e b9 00 01 02 d0        |N       |		JSR	StringCat2(a, b : String) : String
000203c6 50 4f                    |PO      |		ADDQ.L	#0x8,A7
000203c8 4e b9 00 01 03 e0        |N       |		JSR	WriteConsoleStringCrLf(str : String)
000203ce de c2                    |        |		ADDA.W	D2,A7
000203d0 4c df 1f 8f              |L       |		MOVEM.L	(A7)+,D0+D1+D2+D3+D7+A0+A1+A2+A3+A4
000203d4 4e 5e                    |N^      |		UNLK	A6
000203d6 4e 75                    |Nu      |		RTS
000203d8 ; --------------------------------------------------------------------------------------
000203d8 ; OMSI PASCAL Function
000203d8 ;    <LVAR -0x004 @ 4(r)>
000203d8 ; --------------------------------------------------------------------------------------
000203d8 4e 56 ff 96              |NV      |		LINK.W	A6,#0xff96
000203dc bf d5                    |        |		CMPA.L	(A5),A7
000203de 62 06                    |b       |		BHI	0x203e6
000203e0 44 fc 00 02              |D       |		MOVE.W	#0x2,CCR
000203e4 4e 76                    |Nv      |		TRAPV
000203e6 de fc 00 62              |   b    |		ADDA.W	#0x62,A7
000203ea 48 e7 e0 f8              |H       |		MOVEM.L	A4+A3+A2+A1+A0+D2+D1+D0,-(A7)
000203ee 45 f9 00 02 48 5a        |E   HZ  |		LEA.L	0x2485a,A2
000203f4 47 f9 00 01 02 c4        |G       |		LEA.L	StringLit(Src : Pointer; Offset: W; Len : W) : String,A3
000203fa 49 ee ff fc              |I       |		LEA.L	(A6-0x4),A4
000203fe 72 01                    |r       |		MOVEQ.L	#0x01,D1
00020400 74 12                    |t       |		MOVEQ.L	#0x12,D2
00020402 42 92                    |B       |		CLR.L	(A2)
00020404 51 4f                    |QO      |		SUBQ.L	#0x8,A7
00020406 20 4f                    | O      |		MOVEA.L	A7,A0
00020408 43 fa fd 2c              |C  ,    |		LEA.L	0x20136,A1
0002040c 70 06                    |p       |		MOVEQ.L	#0x06,D0
0002040e 10 d9                    |        |		MOVE.B	(A1)+,(A0)+
00020410 51 c8 ff fc              |Q       |		DBF	D0,0x2040e
00020414 1f 01                    |        |		MOVE.B	D1,-(A7)
00020416 59 4f                    |YO      |		SUBQ.L	#0x4,A7
00020418 48 6f 00 06              |Ho      |		PEA.L	(A7+0x6)
0002041c 3f 01                    |?       |		MOVE.W	D1,-(A7)
0002041e 3f 3c 00 07              |?<      |		MOVE.W	#0x7,-(A7)
00020422 4e 93                    |N       |		JSR	(A3)
00020424 50 4f                    |PO      |		ADDQ.L	#0x8,A7
00020426 48 54                    |HT      |		PEA.L	(A4)
00020428 4e b9 00 01 04 58        |N    X  |		JSR	DirFirst(MOD c : Bool; a : String; VAR b : File)
0002042e de c2                    |        |		ADDA.W	D2,A7
00020430 20 54                    | T      |		MOVEA.L	(A4),A0
00020432 b0 c1                    |        |		CMPA.W	D1,A0
00020434 67 16                    |g       |		BEQ	0x2044c
00020436 2f 08                    |/       |		MOVE.L	A0,-(A7)
00020438 4e ba fe 22              |N  "    |		JSR	0x2025c
0002043c 54 4f                    |TO      |		ADDQ.L	#0x2,A7
0002043e 42 17                    |B       |		CLR.B	(A7)
00020440 48 54                    |HT      |		PEA.L	(A4)
00020442 4e b9 00 01 04 5c        |N    \  |		JSR	DirNext(MOD a : Bool; VAR b : File)
00020448 5c 4f                    |\O      |		ADDQ.L	#0x6,A7
0002044a 60 e4                    |`       |		BRA	0x20430
0002044c 9e fc 00 14              |        |		SUBA.W	#0x14,A7
00020450 20 4f                    | O      |		MOVEA.L	A7,A0
00020452 43 fa fc ea              |C       |		LEA.L	0x2013e,A1
00020456 70 12                    |p       |		MOVEQ.L	#0x12,D0
00020458 10 d9                    |        |		MOVE.B	(A1)+,(A0)+
0002045a 51 c8 ff fc              |Q       |		DBF	D0,0x20458
0002045e 9e c2                    |        |		SUBA.W	D2,A7
00020460 20 4f                    | O      |		MOVEA.L	A7,A0
00020462 43 fa fc ee              |C       |		LEA.L	0x20152,A1
00020466 70 10                    |p       |		MOVEQ.L	#0x10,D0
00020468 10 d9                    |        |		MOVE.B	(A1)+,(A0)+
0002046a 51 c8 ff fc              |Q       |		DBF	D0,0x20468
0002046e 51 4f                    |QO      |		SUBQ.L	#0x8,A7
00020470 48 6f 00 1a              |Ho      |		PEA.L	(A7+0x1a)
00020474 3f 01                    |?       |		MOVE.W	D1,-(A7)
00020476 3f 3c 00 13              |?<      |		MOVE.W	#0x13,-(A7)
0002047a 4e 93                    |N       |		JSR	(A3)
0002047c 2e 92                    |.       |		MOVE.L	(A2),(A7)
0002047e 4e b9 00 01 02 e4        |N       |		JSR	Long2String(a : Long) : String
00020484 48 6f 00 10              |Ho      |		PEA.L	(A7+0x10)
00020488 3f 01                    |?       |		MOVE.W	D1,-(A7)
0002048a 3f 3c 00 11              |?<      |		MOVE.W	#0x11,-(A7)
0002048e 4e 93                    |N       |		JSR	(A3)
00020490 50 4f                    |PO      |		ADDQ.L	#0x8,A7
00020492 4e b9 00 01 02 d4        |N       |		JSR	StringCat3(a, b, c : String) : String
00020498 de fc 00 0c              |        |		ADDA.W	#0xc,A7
0002049c 4e b9 00 01 03 e0        |N       |		JSR	WriteConsoleStringCrLf(str : String)
000204a2 de fc 00 2a              |   *    |		ADDA.W	#0x2a,A7
000204a6 4c df 1f 07              |L       |		MOVEM.L	(A7)+,D0+D1+D2+A0+A1+A2+A3+A4
000204aa 4e 5e                    |N^      |		UNLK	A6
000204ac 4e 75                    |Nu      |		RTS
000204ae ; --------------------------------------------------------------------------------------
000204ae ; OMSI PASCAL Function
000204ae ;    <LVAR  0x00c 4(r)>
000204ae ;    <LVAR  0x008 4(r)>
000204ae ;    <LVAR -0x003 @>
000204ae ; --------------------------------------------------------------------------------------
000204ae 4e 56 ff d0              |NV      |		LINK.W	A6,#0xffd0
000204b2 bf d5                    |        |		CMPA.L	(A5),A7
000204b4 62 06                    |b       |		BHI	0x204bc
000204b6 44 fc 00 02              |D       |		MOVE.W	#0x2,CCR
000204ba 4e 76                    |Nv      |		TRAPV
000204bc de fc 00 28              |   (    |		ADDA.W	#0x28,A7
000204c0 48 e7 83 c0              |H       |		MOVEM.L	A1+A0+D7+D6+D0,-(A7)
000204c4 7e 00                    |~       |		MOVEQ.L	#0x00,D7
000204c6 7c 00                    ||       |		MOVEQ.L	#0x00,D6
000204c8 20 6e 00 0c              | n      |		MOVEA.L	(A6+0xc),A0
000204cc 20 50                    | P      |		MOVEA.L	(A0),A0
000204ce 2f 08                    |/       |		MOVE.L	A0,-(A7)
000204d0 be b9 00 02 48 5a        |    HZ  |		CMP.L	0x2485a,D7
000204d6 6c 2c                    |l,      |		BGE	0x20504
000204d8 4a 06                    |J       |		TST.B	D6
000204da 66 28                    |f(      |		BNE	0x20504
000204dc 0c 87 00 00 1f ff        |        |		CMPI.L	#0x00001fff,D7
000204e2 63 02                    |c       |		BLS	0x204e6
000204e4 4e 4f                    |NO      |		TRAP	#15
000204e6 20 07                    |        |		MOVE.L	D7,D0
000204e8 e3 80                    |        |		ASL.L	#0x1,D0
000204ea 41 f9 00 02 08 52        |A    R  |		LEA.L	0x20852,A0
000204f0 22 57                    |"W      |		MOVEA.L	(A7),A1
000204f2 30 30 08 08              |00      |		MOVE.W	(A0+D0.L+#0x8),D0
000204f6 b0 69 00 24              | i $    |		CMP.W	(A1+0x24),D0
000204fa 66 04                    |f       |		BNE	0x20500
000204fc 7c 01                    ||       |		MOVEQ.L	#0x01,D6
000204fe 60 02                    |`       |		BRA	0x20502
00020500 52 87                    |R       |		ADDQ.L	#0x1,D7
00020502 60 cc                    |`       |		BRA	0x204d0
00020504 58 4f                    |XO      |		ADDQ.L	#0x4,A7
00020506 4a 06                    |J       |		TST.B	D6
00020508 66 26                    |f&      |		BNE	0x20530
0002050a 1f 3c 00 02              | <      |		MOVE.B	#0x02,-(A7)
0002050e 1f 3c 00 01              | <      |		MOVE.B	#0x01,-(A7)
00020512 48 78 00 01              |Hx      |		PEA.L	0x1
00020516 48 6e ff fd              |Hn      |		PEA.L	(A6-0x3)
0002051a 20 6e 00 0c              | n      |		MOVEA.L	(A6+0xc),A0
0002051e 48 50                    |HP      |		PEA.L	(A0)
00020520 4e b9 00 01 03 8c        |N       |		JSR	CloseFile(a : L; VAR status : B; VAR file : File)
00020526 de fc 00 10              |        |		ADDA.W	#0x10,A7
0002052a 20 6e 00 08              | n      |		MOVEA.L	(A6+0x8),A0
0002052e 52 90                    |R       |		ADDQ.L	#0x1,(A0)
00020530 4c df 03 c1              |L       |		MOVEM.L	(A7)+,D0+D6+D7+A0+A1
00020534 4e 5e                    |N^      |		UNLK	A6
00020536 4e 75                    |Nu      |		RTS
00020538 ; --------------------------------------------------------------------------------------
00020538 ; OMSI PASCAL Function
00020538 ;    <LVAR -0x008 @ 4(r)>
00020538 ;    <LVAR -0x00c @ 4(r)>
00020538 ; --------------------------------------------------------------------------------------
00020538 4e 56 ff b2              |NV      |		LINK.W	A6,#0xffb2
0002053c bf d5                    |        |		CMPA.L	(A5),A7
0002053e 62 06                    |b       |		BHI	0x20546
00020540 44 fc 00 02              |D       |		MOVE.W	#0x2,CCR
00020544 4e 76                    |Nv      |		TRAPV
00020546 de fc 00 42              |   B    |		ADDA.W	#0x42,A7
0002054a 48 e7 c0 f0              |H       |		MOVEM.L	A3+A2+A1+A0+D1+D0,-(A7)
0002054e 45 ee ff f8              |E       |		LEA.L	(A6-0x8),A2
00020552 47 ee ff f4              |G       |		LEA.L	(A6-0xc),A3
00020556 72 01                    |r       |		MOVEQ.L	#0x01,D1
00020558 42 93                    |B       |		CLR.L	(A3)
0002055a 5d 4f                    |]O      |		SUBQ.L	#0x6,A7
0002055c 20 4f                    | O      |		MOVEA.L	A7,A0
0002055e 43 fa fc 04              |C       |		LEA.L	0x20164,A1
00020562 70 04                    |p       |		MOVEQ.L	#0x04,D0
00020564 10 d9                    |        |		MOVE.B	(A1)+,(A0)+
00020566 51 c8 ff fc              |Q       |		DBF	D0,0x20564
0002056a 1f 01                    |        |		MOVE.B	D1,-(A7)
0002056c 59 4f                    |YO      |		SUBQ.L	#0x4,A7
0002056e 48 6f 00 06              |Ho      |		PEA.L	(A7+0x6)
00020572 3f 01                    |?       |		MOVE.W	D1,-(A7)
00020574 3f 3c 00 05              |?<      |		MOVE.W	#0x5,-(A7)
00020578 4e b9 00 01 02 c4        |N       |		JSR	StringLit(Src : Pointer; Offset: W; Len : W) : String
0002057e 50 4f                    |PO      |		ADDQ.L	#0x8,A7
00020580 48 52                    |HR      |		PEA.L	(A2)
00020582 4e b9 00 01 04 58        |N    X  |		JSR	DirFirst(MOD c : Bool; a : String; VAR b : File)
00020588 de fc 00 0a              |        |		ADDA.W	#0xa,A7
0002058c 5c 4f                    |\O      |		ADDQ.L	#0x6,A7
0002058e 20 52                    | R      |		MOVEA.L	(A2),A0
00020590 b0 c1                    |        |		CMPA.W	D1,A0
00020592 67 1e                    |g       |		BEQ	0x205b2
00020594 48 52                    |HR      |		PEA.L	(A2)
00020596 48 53                    |HS      |		PEA.L	(A3)
00020598 4e ba ff 14              |N       |		JSR	0x204ae
0002059c 5c 4f                    |\O      |		ADDQ.L	#0x6,A7
0002059e 42 17                    |B       |		CLR.B	(A7)
000205a0 20 52                    | R      |		MOVEA.L	(A2),A0
000205a2 b0 c1                    |        |		CMPA.W	D1,A0
000205a4 66 02                    |f       |		BNE	0x205a8
000205a6 52 17                    |R       |		ADDQ.B	#0x1,(A7)
000205a8 48 52                    |HR      |		PEA.L	(A2)
000205aa 4e b9 00 01 04 5c        |N    \  |		JSR	DirNext(MOD a : Bool; VAR b : File)
000205b0 60 da                    |`       |		BRA	0x2058c
000205b2 41 fa fb c8              |A       |		LEA.L	0x2017c,A0
000205b6 70 08                    |p       |		MOVEQ.L	#0x08,D0
000205b8 3f 20                    |?       |		MOVE.W	-(A0),-(A7)
000205ba 51 c8 ff fc              |Q       |		DBF	D0,0x205b8
000205be 51 4f                    |QO      |		SUBQ.L	#0x8,A7
000205c0 2f 13                    |/       |		MOVE.L	(A3),-(A7)
000205c2 4e b9 00 01 02 e4        |N       |		JSR	Long2String(a : Long) : String
000205c8 48 6f 00 0c              |Ho      |		PEA.L	(A7+0xc)
000205cc 3f 01                    |?       |		MOVE.W	D1,-(A7)
000205ce 3f 3c 00 12              |?<      |		MOVE.W	#0x12,-(A7)
000205d2 4e b9 00 01 02 c4        |N       |		JSR	StringLit(Src : Pointer; Offset: W; Len : W) : String
000205d8 50 4f                    |PO      |		ADDQ.L	#0x8,A7
000205da 4e b9 00 01 02 d0        |N       |		JSR	StringCat2(a, b : String) : String
000205e0 50 4f                    |PO      |		ADDQ.L	#0x8,A7
000205e2 4e b9 00 01 03 e0        |N       |		JSR	WriteConsoleStringCrLf(str : String)
000205e8 de fc 00 16              |        |		ADDA.W	#0x16,A7
000205ec 4c df 0f 03              |L       |		MOVEM.L	(A7)+,D0+D1+A0+A1+A2+A3
000205f0 4e 5e                    |N^      |		UNLK	A6
000205f2 4e 75                    |Nu      |		RTS
000205f4 ; --------------------------------------------------------------------------------------
000205f4 ; OMSI PASCAL Function
000205f4 ; --------------------------------------------------------------------------------------
000205f4					START:
000205f4 4f fa 00 08              |O       |		LEA.L	MAIN,A7
000205f8 4e f9 00 01 02 80        |N       |		JMP	?start_program
000205fe					MAIN:
000205fe 4e b9 00 01 03 98        |N       |		JSR	FSCALL_10398
00020604 41 fa fb 9a              |A       |		LEA.L	0x201a0,A0
00020608 70 08                    |p       |		MOVEQ.L	#0x08,D0
0002060a 2f 20                    |/       |		MOVE.L	-(A0),-(A7)
0002060c 51 c8 ff fc              |Q       |		DBF	D0,0x2060a
00020610 59 4f                    |YO      |		SUBQ.L	#0x4,A7
00020612 48 6f 00 04              |Ho      |		PEA.L	(A7+0x4)
00020616 3f 3c 00 01              |?<      |		MOVE.W	#0x1,-(A7)
0002061a 3f 3c 00 24              |?< $    |		MOVE.W	#0x24,-(A7)
0002061e 4e b9 00 01 02 c4        |N       |		JSR	StringLit(Src : Pointer; Offset: W; Len : W) : String
00020624 50 4f                    |PO      |		ADDQ.L	#0x8,A7
00020626 4e b9 00 01 03 e0        |N       |		JSR	WriteConsoleStringCrLf(str : String)
0002062c de fc 00 28              |   (    |		ADDA.W	#0x28,A7
00020630 4e ba fd a6              |N       |		JSR	0x203d8
00020634 4e ba ff 02              |N       |		JSR	0x20538
00020638 42 27                    |B'      |		CLR.B	-(A7)
0002063a 48 78 00 01              |Hx      |		PEA.L	0x1
0002063e 4e b9 00 01 03 b8        |N       |		JSR	PopProgram(status : Byte; msg : String)
00020644 5c 4f                    |\O      |		ADDQ.L	#0x6,A7
00020646 4e b9 00 01 02 84        |N       |		JSR	?exit
0002064c 57 6f 72 64 73 20 65 72  |Words er|		.TXT	'Words error :_'
0002065a ; --------------------------------------------------------------------------------------
0002065a ; OMSI PASCAL Function
0002065a ;    <LVAR  0x008 1(r)>
0002065a ; --------------------------------------------------------------------------------------
0002065a					PROG_FAIL:
0002065a 4e 56 ff d2              |NV      |		LINK.W	A6,#0xffd2
0002065e bf d5                    |        |		CMPA.L	(A5),A7
00020660 62 06                    |b       |		BHI	0x20668
00020662 44 fc 00 02              |D       |		MOVE.W	#0x2,CCR
00020666 4e 76                    |Nv      |		TRAPV
00020668 de fc 00 2c              |   ,    |		ADDA.W	#0x2c,A7
0002066c 48 e7 80 80              |H       |		MOVEM.L	A0+D0,-(A7)
00020670 41 fa ff e8              |A       |		LEA.L	PROG_FAIL,A0
00020674 70 06                    |p       |		MOVEQ.L	#0x06,D0
00020676 3f 20                    |?       |		MOVE.W	-(A0),-(A7)
00020678 51 c8 ff fc              |Q       |		DBF	D0,0x20676
0002067c 1f 3c 00 03              | <      |		MOVE.B	#0x03,-(A7)
00020680 51 4f                    |QO      |		SUBQ.L	#0x8,A7
00020682 48 6f 00 0a              |Ho      |		PEA.L	(A7+0xa)
00020686 3f 3c 00 01              |?<      |		MOVE.W	#0x1,-(A7)
0002068a 3f 3c 00 0e              |?<      |		MOVE.W	#0xe,-(A7)
0002068e 4e b9 00 01 02 c4        |N       |		JSR	StringLit(Src : Pointer; Offset: W; Len : W) : String
00020694 58 4f                    |XO      |		ADDQ.L	#0x4,A7
00020696 10 2e 00 08              | .      |		MOVE.B	(A6+0x8),D0
0002069a 48 80                    |H       |		EXTB.W	D0
0002069c 48 c0                    |H       |		EXTW.L	D0
0002069e 2f 00                    |/       |		MOVE.L	D0,-(A7)
000206a0 4e b9 00 01 02 e4        |N       |		JSR	Long2String(a : Long) : String
000206a6 58 4f                    |XO      |		ADDQ.L	#0x4,A7
000206a8 4e b9 00 01 02 d0        |N       |		JSR	StringCat2(a, b : String) : String
000206ae 50 4f                    |PO      |		ADDQ.L	#0x8,A7
000206b0 4e b9 00 01 03 b8        |N       |		JSR	PopProgram(status : Byte; msg : String)
000206b6 de fc 00 14              |        |		ADDA.W	#0x14,A7
000206ba 4c df 01 01              |L       |		MOVEM.L	(A7)+,D0+A0
000206be 4e 5e                    |N^      |		UNLK	A6
000206c0 4e 75                    |Nu      |		RTS
000206c2 42 6f 61 72 64 20 20 20  |Board   |		.TXT	'Board      :_ '
000206d0 45 78 70 65 72 69 6d 65  |Experime|		.TXT	'Experiment :_ '
000206de 53 74 61 74 75 73 20 20  |Status  |		.TXT	'Status     :_ '
000206ec 45 78 70 65 72 69 6d 65  |Experime|		.TXT	'Experiment error :'
000206fe 46 61 74 61 6c 20 65 78  |Fatal ex|		.TXT	'Fatal experiment error. '
00020716 ; --------------------------------------------------------------------------------------
00020716 ; OMSI PASCAL Function
00020716 ;    <LVAR  0x00e 1(r)>
00020716 ;    <LVAR  0x00a 4(r)>
00020716 ;    <LVAR  0x008 1(r)>
00020716 ; --------------------------------------------------------------------------------------
00020716					EXP_FAIL:
00020716 4e 56 ff 8c              |NV      |		LINK.W	A6,#0xff8c
0002071a bf d5                    |        |		CMPA.L	(A5),A7
0002071c 62 06                    |b       |		BHI	0x20724
0002071e 44 fc 00 02              |D       |		MOVE.W	#0x2,CCR
00020722 4e 76                    |Nv      |		TRAPV
00020724 de fc 00 74              |   t    |		ADDA.W	#0x74,A7
00020728 48 e7 fc f8              |H       |		MOVEM.L	A4+A3+A2+A1+A0+D5+D4+D3+D2+D1+D0,-(A7)
0002072c 47 f9 00 01 02 c4        |G       |		LEA.L	StringLit(Src : Pointer; Offset: W; Len : W) : String,A3
00020732 49 f9 00 01 03 e0        |I       |		LEA.L	WriteConsoleStringCrLf(str : String),A4
00020738 72 01                    |r       |		MOVEQ.L	#0x01,D1
0002073a 74 0d                    |t       |		MOVEQ.L	#0x0d,D2
0002073c 76 1e                    |v       |		MOVEQ.L	#0x1e,D3
0002073e 78 12                    |x       |		MOVEQ.L	#0x12,D4
00020740 7a 0e                    |z       |		MOVEQ.L	#0x0e,D5
00020742 4e b9 00 01 03 dc        |N       |		JSR	WriteConsoleCrLf(void)
00020748 41 fa ff b4              |A       |		LEA.L	0x206fe,A0
0002074c 70 08                    |p       |		MOVEQ.L	#0x08,D0
0002074e 3f 20                    |?       |		MOVE.W	-(A0),-(A7)
00020750 51 c8 ff fc              |Q       |		DBF	D0,0x2074e
00020754 59 4f                    |YO      |		SUBQ.L	#0x4,A7
00020756 48 6f 00 04              |Ho      |		PEA.L	(A7+0x4)
0002075a 3f 01                    |?       |		MOVE.W	D1,-(A7)
0002075c 3f 04                    |?       |		MOVE.W	D4,-(A7)
0002075e 4e 93                    |N       |		JSR	(A3)
00020760 50 4f                    |PO      |		ADDQ.L	#0x8,A7
00020762 4e 94                    |N       |		JSR	(A4)
00020764 50 4f                    |PO      |		ADDQ.L	#0x8,A7
00020766 20 4f                    | O      |		MOVEA.L	A7,A0
00020768 43 fa ff 58              |C  X    |		LEA.L	0x206c2,A1
0002076c 70 0c                    |p       |		MOVEQ.L	#0x0c,D0
0002076e 10 d9                    |        |		MOVE.B	(A1)+,(A0)+
00020770 51 c8 ff fc              |Q       |		DBF	D0,0x2076e
00020774 51 4f                    |QO      |		SUBQ.L	#0x8,A7
00020776 48 6f 00 08              |Ho      |		PEA.L	(A7+0x8)
0002077a 3f 01                    |?       |		MOVE.W	D1,-(A7)
0002077c 3f 02                    |?       |		MOVE.W	D2,-(A7)
0002077e 4e 93                    |N       |		JSR	(A3)
00020780 54 4f                    |TO      |		ADDQ.L	#0x2,A7
00020782 1e ae 00 0e              |        |		MOVE.B	(A6+0xe),(A7)
00020786 4e b9 00 01 04 9c        |N       |		JSR	BoardName(address : B) : String
0002078c 54 4f                    |TO      |		ADDQ.L	#0x2,A7
0002078e 4e b9 00 01 02 d0        |N       |		JSR	StringCat2(a, b : String) : String
00020794 50 4f                    |PO      |		ADDQ.L	#0x8,A7
00020796 4e 94                    |N       |		JSR	(A4)
00020798 de c4                    |        |		ADDA.W	D4,A7
0002079a 20 6e 00 0a              | n      |		MOVEA.L	(A6+0xa),A0
0002079e b0 c1                    |        |		CMPA.W	D1,A0
000207a0 67 48                    |gH      |		BEQ	0x207ea
000207a2 9e c5                    |        |		SUBA.W	D5,A7
000207a4 22 4f                    |"O      |		MOVEA.L	A7,A1
000207a6 45 fa ff 28              |E  (    |		LEA.L	0x206d0,A2
000207aa 70 0c                    |p       |		MOVEQ.L	#0x0c,D0
000207ac 12 da                    |        |		MOVE.B	(A2)+,(A1)+
000207ae 51 c8 ff fc              |Q       |		DBF	D0,0x207ac
000207b2 9e c3                    |        |		SUBA.W	D3,A7
000207b4 22 4f                    |"O      |		MOVEA.L	A7,A1
000207b6 41 e8 00 fc              |A       |		LEA.L	(A0+0xfc),A0
000207ba 70 1d                    |p       |		MOVEQ.L	#0x1d,D0
000207bc 12 d8                    |        |		MOVE.B	(A0)+,(A1)+
000207be 51 c8 ff fc              |Q       |		DBF	D0,0x207bc
000207c2 51 4f                    |QO      |		SUBQ.L	#0x8,A7
000207c4 48 6f 00 26              |Ho &    |		PEA.L	(A7+0x26)
000207c8 3f 01                    |?       |		MOVE.W	D1,-(A7)
000207ca 3f 02                    |?       |		MOVE.W	D2,-(A7)
000207cc 4e 93                    |N       |		JSR	(A3)
000207ce 58 4f                    |XO      |		ADDQ.L	#0x4,A7
000207d0 48 6f 00 0c              |Ho      |		PEA.L	(A7+0xc)
000207d4 3f 01                    |?       |		MOVE.W	D1,-(A7)
000207d6 3f 03                    |?       |		MOVE.W	D3,-(A7)
000207d8 4e 93                    |N       |		JSR	(A3)
000207da 50 4f                    |PO      |		ADDQ.L	#0x8,A7
000207dc 4e b9 00 01 02 d0        |N       |		JSR	StringCat2(a, b : String) : String
000207e2 50 4f                    |PO      |		ADDQ.L	#0x8,A7
000207e4 4e 94                    |N       |		JSR	(A4)
000207e6 de fc 00 30              |   0    |		ADDA.W	#0x30,A7
000207ea 9e c5                    |        |		SUBA.W	D5,A7
000207ec 20 4f                    | O      |		MOVEA.L	A7,A0
000207ee 43 fa fe ee              |C       |		LEA.L	0x206de,A1
000207f2 70 0c                    |p       |		MOVEQ.L	#0x0c,D0
000207f4 10 d9                    |        |		MOVE.B	(A1)+,(A0)+
000207f6 51 c8 ff fc              |Q       |		DBF	D0,0x207f4
000207fa 51 4f                    |QO      |		SUBQ.L	#0x8,A7
000207fc 48 6f 00 08              |Ho      |		PEA.L	(A7+0x8)
00020800 3f 01                    |?       |		MOVE.W	D1,-(A7)
00020802 3f 02                    |?       |		MOVE.W	D2,-(A7)
00020804 4e 93                    |N       |		JSR	(A3)
00020806 54 4f                    |TO      |		ADDQ.L	#0x2,A7
00020808 1e ae 00 08              |        |		MOVE.B	(A6+0x8),(A7)
0002080c 4e b9 00 01 04 a2        |N       |		JSR	ExpStatus2Text(status.B, &String)
00020812 54 4f                    |TO      |		ADDQ.L	#0x2,A7
00020814 4e b9 00 01 02 d0        |N       |		JSR	StringCat2(a, b : String) : String
0002081a 50 4f                    |PO      |		ADDQ.L	#0x8,A7
0002081c 4e 94                    |N       |		JSR	(A4)
0002081e 5d 4f                    |]O      |		SUBQ.L	#0x6,A7
00020820 20 4f                    | O      |		MOVEA.L	A7,A0
00020822 43 fa fe da              |C       |		LEA.L	0x206fe,A1
00020826 70 16                    |p       |		MOVEQ.L	#0x16,D0
00020828 10 d9                    |        |		MOVE.B	(A1)+,(A0)+
0002082a 51 c8 ff fc              |Q       |		DBF	D0,0x20828
0002082e 1f 3c 00 02              | <      |		MOVE.B	#0x02,-(A7)
00020832 59 4f                    |YO      |		SUBQ.L	#0x4,A7
00020834 48 6f 00 06              |Ho      |		PEA.L	(A7+0x6)
00020838 3f 01                    |?       |		MOVE.W	D1,-(A7)
0002083a 3f 3c 00 17              |?<      |		MOVE.W	#0x17,-(A7)
0002083e 4e 93                    |N       |		JSR	(A3)
00020840 50 4f                    |PO      |		ADDQ.L	#0x8,A7
00020842 4e b9 00 01 03 b8        |N       |		JSR	PopProgram(status : Byte; msg : String)
00020848 de c3                    |        |		ADDA.W	D3,A7
0002084a 4c df 1f 3f              |L  ?    |		MOVEM.L	(A7)+,D0+D1+D2+D3+D4+D5+A0+A1+A2+A3+A4
0002084e 4e 5e                    |N^      |		UNLK	A6
00020850 4e 75                    |Nu      |		RTS