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

⟦bcd107dc8⟧ M200

    Length: 2560 (0xa00)
    Types: M200
    Notes: @(#)GC,1.1,92/07/09,12:00:00, M200_PROGRAM
    Names: »GC.M200«

Derivation

└─⟦9031b0687⟧ Bits:30000407 8mm tape, Rational 1000, DFS, D_12_7_3
    └─ ⟦this⟧ »GC.M200« 

Disassembly

0x201be


@ 201be
        <LVAR  0x008 4(r)>
        <LVAR -0x008 @ 1(r)>
        <LVAR -0x00c @ 4(r)>
    <POP 201be-2027a Body>                                              
        <POP 201be-201d4 Prologue>                           Σ0         ↓
        <POP 201d4-201e4 RegCacheLoad>                       Σ0         ↓
        <POP 201e4-20202 Naked>                              Σ0         ↓ →0x20272
            <MI 201e4  MOVE.L  (A6+0x8),-(A7)>               Δ-4                {[4, '(A6+0x8)']}
            <MI 201e8  CLR.B   -(A7)>                        Δ-2                {[4, '(A6+0x8)']|[#0]}
            <Const 0x201ea 0x1.2>                            Δ-2                {[4, '(A6+0x8)']|[#0]|[#1]}
            <Const 0x201ee 0x0.4>                            Δ-4                {[4, '(A6+0x8)']|[#0]|[#1]|[##0]}
            <Pointer.fp 0x201f2 <LVAR -0x008 @ 1(r)>>        Δ-4                {[4, '(A6+0x8)']|[#0]|[#1]|[##0]|[@@-8]}
            <Pointer.fp 0x201f4 <LVAR -0x00c @ 4(r)>>        Δ-4                {[4, '(A6+0x8)']|[#0]|[#1]|[##0]|[@@-8]|[@@-12]}
            <Call 0x201f6 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 201fc-201fe StackAdj>                       Δ+20               {}
            <MI 201fe  TST.B   (A6-0x8)>                                        {}
            <MI 20200  BNE     0x20272>                                         {}
        <POP 20202-2020a Naked>                              Σ0 Δ-4     ↓
            <MI 20202  MOVEA.L (A6-0xc),A0>                                     {}
            <MI 20204  MOVE.L  A0,-(A7)>                     Δ-4                {[4, 'A0']}
            <MI 20206  MOVEQ.L #0x00,D6>                                        {[4, 'A0']}
            <MI 20208  MOVEQ.L #0x00,D7>                                        {[4, 'A0']}
        <POP 2020a-2020e Naked>                              Σ-4        ↓ →0x2023a ←0x20238
            <MI 2020a  CMP.L   0x24878,D6>                                      {[-4-]}
            <MI 2020c  BGE     0x2023a>                                         {[-4-]}
        <POP 2020e-20212 Naked>                              Σ-4        ↓ →0x2023a
            <MI 2020e  TST.B   D7>                                              {[-4-]}
            <MI 20210  BNE     0x2023a>                                         {[-4-]}
        <POP 20212-20232 Naked>                              Σ-4        ↓ →0x20236
            <POP 0x20212 LimitCheck 0x0 ≤ D6 ≤ 0x1fff>                          {[-4-]}
            <MI 2021c  MOVE.L  D6,D0>                                           {[-4-]}
            <MI 2021e  ASL.L   #0x1,D0>                                         {[-4-]}
            <MI 20220  LEA.L   0x20870,A0>                                      {[-4-]}
            <MI 20226  MOVEA.L (A7),A1>                                         {[-4-]}
            <MI 20228  MOVE.W  (A0+D0.L+#0x8),D0>                               {[-4-]}
            <MI 2022c  CMP.W   (A1+0x24),D0>                                    {[-4-]}
            <MI 20230  BNE     0x20236>                                         {[-4-]}
        <POP 20232-20236 Naked>                              Σ-4        →0x20238
            <MI 20232  MOVEQ.L #0x01,D7>                                        {[-4-]}
            <MI 20234  BRA     0x20238>                                         {[-4-]}
        <POP 20236-20238 Naked>                              Σ-4        ↓ ←0x20212
            <MI 20236  ADDQ.L  #0x1,D6>                                         {[-4-]}
        <POP 20238-2023a Naked>                              Σ-4        →0x2020a ←0x20232
            <MI 20238  BRA     0x2020a>                                         {[-4-]}
        <POP 2023a-2023e Naked>                              Σ-4        ↓ →0x2025c ←0x2020a ←0x2020e
            <MI 2023a  TST.B   D7>                                              {[-4-]}
            <MI 2023c  BNE     0x2025c>                                         {[-4-]}
        <POP 2023e-2025c Naked>                              Σ-4        ↓
            <POP 0x2023e LimitCheck 0x0 ≤ D6 ≤ 0x1fff>                          {[-4-]}
            <MI 20248  MOVE.L  D6,D0>                                           {[-4-]}
            <MI 2024a  ASL.L   #0x1,D0>                                         {[-4-]}
            <MI 2024c  LEA.L   0x20870,A0>                                      {[-4-]}
            <MI 20252  MOVEA.L (A7),A1>                                         {[-4-]}
            <MI 20254  MOVE.W  (A1+0x24),(A0+D0.L+#0x8)>                        {[-4-]}
            <MI 2025a  ADDQ.L  #0x1,0x24878>                                    {[-4-]}
        <POP 2025c-20272 Naked>                              Σ-4 Δ+4    ↓ ←0x2023a
            <MI 2025c  CLR.B   -(A7)>                        Δ-2                {[-4-]|[#0]}
            <Const 0x2025e 0x2.2>                            Δ-2                {[-4-]|[#0]|[#2]}
            <Const 0x20262 0x1.4>                            Δ-4                {[-4-]|[#0]|[#2]|[##1]}
            <Pointer.fp 0x20266 <LVAR -0x008 @ 1(r)>>        Δ-4                {[-4-]|[#0]|[#2]|[##1]|[@@-8]}
            <Pointer.fp 0x20268 <LVAR -0x00c @ 4(r)>>        Δ-4                {[-4-]|[#0]|[#2]|[##1]|[@@-8]|[@@-12]}
            <Call 0x2026a 0x1038c>                                              {[-4-]|[#0]|[#2]|[##1]|[@@-8]|[@@-12]}
                CloseFile(a : L; VAR status : B; VAR file : File)
            <POP 20270-20272 StackAdj>                       Δ+20               {}
        <POP 20272-2027a Epilogue>                           Σ0         ←0x201e4

0x2027a


@ 2027a
        <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 2027a-203f6 Body>                                              
        <POP 2027a-20290 Prologue>                           Σ0         ↓
        <POP 20290-202a4 RegCacheLoad>                       Σ0         ↓
        <POP 202a4-2032c Naked>                              Σ0         ↓
            <MI 202a4  MOVEQ.L #0x00,D7>                                        {}
            <Blob 0x202a6 [14] @>                            Δ-14               {[«14""»]}
            <MI 202b8  MOVEA.L (A6+0x8),A0>                                     {[«14""»]}
            <POP 202bc-202be StackAdj>                       Δ-30               {[«14""»]|[-30-]}
            <MI 202be  MOVEA.L A7,A1>                                           {[«14""»]|[-30-]}
            <BlockMove 30,A0,A1>                                                {[«14""»]|[-30-]}
            <POP 202c8-202ca StackAdj>                       Δ-8                {[«14""»]|[-38-]}
            <Lit 0x202ca 13>                                                    {[«14""»]|[-34-]|[$$Processing :_]}
            <Pointer.sp 0x202d6 16>                          Δ-4                {[«14""»]|[-34-]|[$$Processing :_]|[^^16]}
            <POP 202d4-202d6 StackAdj>                       Δ-8                {[«14""»]|[-34-]|[$$Processing :_]|[^^16]|[-8-]}
            <Const 0x202da 0x1.2>                            Δ-2                {[«14""»]|[-34-]|[$$Processing :_]|[^^16]|[-8-]|[#1]}
            <Const 0x202dc 0x1e.2>                           Δ-2                {[«14""»]|[-34-]|[$$Processing :_]|[^^16]|[-8-]|[#1]|[#30]}
            <Call 0x202de 0x102c4>                                              {[«14""»]|[-34-]|[$$Processing :_]|[^^16]|[-8-]|[#1]|[#30]}
                StringLit(Src : Pointer; Offset: W; Len : W) : String
            <POP 202e0-202e2 StackAdj>                       Δ+8                {[«14""»]|[-34-]|[$$Processing :_]|[^^16]|[-4-]}
            <Const 0x202e2 0x20.4>                           Δ-4                {[«14""»]|[-34-]|[$$Processing :_]|[^^16]|[-4-]|[##32]}
            <Call 0x202e6 0x102f8>                                              {[«14""»]|[-34-]|[$$Processing :_]|[^^16]|[-4-]|[##32]}
                LeftPad(a : String; b : Long) : String
            <POP 202ec-202ee StackAdj>                       Δ+8                {[«14""»]|[-34-]|[$$Processing :_]|[^^16]}
            <Call 0x202ee 0x102d0>                                              {[«14""»]|[-34-]|[$$Processing :_]|[^^16]}
                StringCat2(a, b : String) : String
            <POP 202f4-202f6 StackAdj>                       Δ+8                {[«14""»]|[-34-]}
            <Call 0x202f6 0x103d8>                                              {[«14""»]|[-34-]}
                WriteConsoleString(str : String)
            <POP 202fc-20300 StackAdj>                       Δ+48               {}
            <Pointer.fp 0x20300 <LVAR -0x010 @ 4(rw)>>       Δ-4                {[@@-16]}
            <Call 0x20302 0x102b8>                                              {[@@-16]}
                NewString(VAR a : String)
            <POP 20308-2030a StackAdj>                       Δ+4                {}
            <Pointer.fp 0x2030a <LVAR -0x008 @ 4(r)>>        Δ-4                {[@@-8]}
            <Call 0x2030c 0x102b8>                                              {[@@-8]}
                NewString(VAR a : String)
            <POP 20312-20313 StackAdj>                       Δ+4                {}
            <Blob 0x20313 [4] @>                             Δ-4                {[«4""»]}
            <POP 20316-20318 StackAdj>                       Δ-4                {[«4""»]|[-4-]}
            <Lit 0x20318 4>                                                     {[«4""»]|[$$LOAD]}
            <MI 20326  MOVE.L  (A7)+,(A6-0xc)>               Δ+4                {[«4""»]}
            <POP 2032a-2032c StackAdj>                       Δ+4                {}
        <POP 2032c-20344 Naked>                              Σ0         ↓ →0x20394 ←0x20394
            <MI 2032c  MOVE.L  (A6+0x8),-(A7)>               Δ-4                {[4, '(A6+0x8)']}
            <Pointer.fp 0x20330 <LVAR -0x010 @ 4(rw)>>       Δ-4                {[4, '(A6+0x8)']|[@@-16]}
            <Pointer.fp 0x20332 <LVAR -0x003 @ 1(r)>>        Δ-4                {[4, '(A6+0x8)']|[@@-16]|[@@-3]}
            <Call 0x20336 0x1043c>                                              {[4, '(A6+0x8)']|[@@-16]|[@@-3]}
                FileReadLine(file : File; VAR a : String; VAR b : Byte)
            <POP 2033c-2033e StackAdj>                       Δ+12               {}
            <MI 2033e  MOVEA.L (A6-0x10),A0>                                    {}
            <MI 20340  TST.W   (A0)>                                            {}
            <MI 20342  BEQ     0x20394>                                         {}
        <POP 20344-20374 Naked>                              Σ0         ↓ →0x20394
            <POP 20344-20346 StackAdj>                       Δ-4                {[-4-]}
            <MI 20346  MOVE.L  (A6-0x10),-(A7)>              Δ-4                {[-4-]|[4, '(A6-0x10)']}
            <Call 0x20348 0x102f0>                                              {[-4-]|[4, '(A6-0x10)']}
                ToUpper(a : String) : String
            <POP 2034e-20350 StackAdj>                       Δ+4                {[-4-]}
            <MI 20350  MOVE.L  (A7)+,(A6-0x10)>              Δ+4                {}
            <MI 20352  MOVE.L  (A6-0x10),-(A7)>              Δ-4                {[4, '(A6-0x10)']}
            <MI 20354  MOVE.L  (A6-0x8),-(A7)>               Δ-4                {[4, '(A6-0x10)']|[4, '(A6-0x8)']}
            <Pointer.fp 0x20356 <LVAR -0x004 @ 1(r)>>        Δ-4                {[4, '(A6-0x10)']|[4, '(A6-0x8)']|[@@-4]}
            <Call 0x2035a 0x102fc>                                              {[4, '(A6-0x10)']|[4, '(A6-0x8)']|[@@-4]}
                FirstField(MOD input : String; MOD output : String; VAR c : Bool
            <POP 20360-20362 StackAdj>                       Δ+6                {[4, '(A6-0x10)']|[-2-]}
            <MI 20362  MOVE.L  (A6-0x8),(A7)>                                   {[-2-]|[4, '(A6-0x8)']}
            <MI 20364  MOVE.L  (A6-0xc),-(A7)>               Δ-4                {[-2-]|[4, '(A6-0x8)']|[4, '(A6-0xc)']}
            <Call 0x20368 0x102c8>                                              {[-2-]|[4, '(A6-0x8)']|[4, '(A6-0xc)']}
                StringEqual(a, b : String) : Byte
            <POP 2036e-20370 StackAdj>                       Δ+8                {[-2-]}
            <MI 20370  TST.B   (A7)+>                        Δ+2                {}
            <MI 20372  BEQ     0x20394>                                         {}
        <POP 20374-2038a Naked>                              Σ0         ↓ →0x20394
            <MI 20374  MOVE.L  (A6-0x10),-(A7)>              Δ-4                {[4, '(A6-0x10)']}
            <MI 20376  MOVE.L  (A6-0x8),-(A7)>               Δ-4                {[4, '(A6-0x10)']|[4, '(A6-0x8)']}
            <Pointer.fp 0x20378 <LVAR -0x004 @ 1(r)>>        Δ-4                {[4, '(A6-0x10)']|[4, '(A6-0x8)']|[@@-4]}
            <Call 0x2037c 0x102fc>                                              {[4, '(A6-0x10)']|[4, '(A6-0x8)']|[@@-4]}
                FirstField(MOD input : String; MOD output : String; VAR c : Bool
            <POP 20382-20384 StackAdj>                       Δ+12               {}
            <MI 20384  TST.B   (A6-0x4)>                                        {}
            <MI 20388  BEQ     0x20394>                                         {}
        <POP 2038a-20394 Naked>                              Σ0         ↓
            <MI 2038a  MOVE.L  (A6-0x8),-(A7)>               Δ-4                {[4, '(A6-0x8)']}
            <Call 0x2038c 0x201be>                                              {[4, '(A6-0x8)']}
            <POP 20390-20392 StackAdj>                       Δ+4                {}
            <MI 20392  ADDQ.L  #0x1,D7>                                         {}
        <POP 20394-2039a Naked>                              Σ0         ↓ →0x2032c ←0x2032c ←0x20344 ←0x20374
            <MI 20394  TST.B   (A6-0x3)>                                        {}
            <MI 20398  BEQ     0x2032c>                                         {}
        <POP 2039a-203ee Naked>                              Σ0         ↓
            <Pointer.fp 0x2039a <LVAR -0x00c @ 4(rw)>>       Δ-4                {[@@-12]}
            <Call 0x2039e 0x102bc>                                              {[@@-12]}
                FreeString(VAR a : String)
            <POP 203a4-203a6 StackAdj>                       Δ+4                {}
            <Pointer.fp 0x203a6 <LVAR -0x008 @ 4(r)>>        Δ-4                {[@@-8]}
            <Call 0x203a8 0x102bc>                                              {[@@-8]}
                FreeString(VAR a : String)
            <POP 203ae-203b0 StackAdj>                       Δ+4                {}
            <Pointer.fp 0x203b0 <LVAR -0x010 @ 4(rw)>>       Δ-4                {[@@-16]}
            <Call 0x203b2 0x102bc>                                              {[@@-16]}
                FreeString(VAR a : String)
            <POP 203b8-203ba StackAdj>                       Δ+4                {}
            <Blob 0x203ba [26] @>                            Δ-26               {[«26""»]}
            <POP 203c6-203c8 StackAdj>                       Δ-8                {[«26""»]|[-8-]}
            <MI 203c8  MOVE.L  D7,-(A7)>                     Δ-4                {[«26""»]|[-8-]|[4, 'D7']}
            <Call 0x203ca 0x102e4>                                              {[«26""»]|[-8-]|[4, 'D7']}
                Long2String(a : Long) : String
            <Lit 0x203d0 26>                                                    {[«26""»]|[-8-]|[$$ segment files referenced.]}
            <Call 0x203de 0x102d0>                                              {[«26""»]|[-8-]|[$$ segment files referenced.]}
                StringCat2(a, b : String) : String
            <POP 203e4-203e6 StackAdj>                       Δ+8                {[«26""»]|[-4-]}
            <Call 0x203e6 0x103e0>                                              {[«26""»]|[-4-]}
                WriteConsoleStringCrLf(str : String)
            <POP 203ec-203ee StackAdj>                       Δ+30               {}
        <POP 203ee-203f6 Epilogue>                           Σ0         

0x203f6


@ 203f6
        <LVAR -0x004 @ 4(r)>
    <POP 203f6-204cc Body>                                              
        <POP 203f6-2040c Prologue>                           Σ0         ↓
        <POP 2040c-20420 RegCacheLoad>                       Σ0         ↓
        <POP 20420-2044e Naked>                              Σ0         ↓
            <MI 20420  CLR.L   0x24878>                                         {}
            <Blob 0x20422 [8] @>                             Δ-8                {[«8""»]}
            <Const 0x20432 0x1.2>                            Δ-2                {[«8""»]|[#1]}
            <POP 20434-20436 StackAdj>                       Δ-4                {[«8""»]|[#1]|[-4-]}
            <Lit 0x20436 7>                                                     {[«8""»]|[#1]|[$$*.MLOAD]}
            <Pointer.fp 0x20444 <LVAR -0x004 @ 4(r)>>        Δ-4                {[«8""»]|[#1]|[$$*.MLOAD]|[@@-4]}
            <Call 0x20446 0x10458>                                              {[«8""»]|[#1]|[$$*.MLOAD]|[@@-4]}
                DirFirst(MOD c : Bool; a : String; VAR b : File)
            <POP 2044c-2044e StackAdj>                       Δ+18               {}
        <POP 2044e-20454 Naked>                              Σ0         ↓ →0x2046a ←0x20454
            <MI 2044e  MOVEA.L (A6-0x4),A0>                                     {}
            <MI 20450  CMPA.W  #0x01,A0>                                        {}
            <MI 20452  BEQ     0x2046a>                                         {}
        <POP 20454-2046a Naked>                              Σ0         →0x2044e
            <MI 20454  MOVE.L  A0,-(A7)>                     Δ-4                {[4, 'A0']}
            <Call 0x20456 0x2027a>                                              {[4, 'A0']}
            <POP 2045a-2045c StackAdj>                       Δ+2                {[-2-]}
            <MI 2045c  CLR.B   (A7)>                                            {[-2-]}
            <Pointer.fp 0x2045e <LVAR -0x004 @ 4(r)>>        Δ-4                {[-2-]|[@@-4]}
            <Call 0x20460 0x1045c>                                              {[-2-]|[@@-4]}
                DirNext(MOD a : Bool; VAR b : File)
            <POP 20466-20468 StackAdj>                       Δ+6                {}
            <MI 20468  BRA     0x2044e>                                         {}
        <POP 2046a-204c4 Naked>                              Σ0         ↓ ←0x2044e
            <Blob 0x2046a [20] @>                            Δ-20               {[«20""»]}
            <Blob 0x2047c [18] @>                            Δ-18               {[«20""»]|[«18""»]}
            <POP 2048c-2048e StackAdj>                       Δ-8                {[«20""»]|[«18""»]|[-8-]}
            <Lit 0x2048e 19>                                                    {[«20""»]|[«18""»]|[-4-]|[$$*.MLOAD processed,_]}
            <POP 2049a-2049b StackAdj>                       Δ-4                {[«20""»]|[«18""»]|[-4-]|[$$*.MLOAD processed,_]|[-4-]}
            <Blob 0x2049b [4] 0x24878>                       Δ-4                {[«20""»]|[«18""»]|[-4-]|[$$*.MLOAD processed,_]|[-4-]|[«4»]}
            <Call 0x2049c 0x102e4>                                              {[«20""»]|[«18""»]|[-4-]|[$$*.MLOAD processed,_]|[-4-]|[«4»]}
                Long2String(a : Long) : String
            <Lit 0x204a2 17>                                                    {[«20""»]|[«18""»]|[-4-]|[$$*.MLOAD processed,_]|[-4-]|[$$ Segments active.]}
            <Call 0x204b0 0x102d4>                                              {[«20""»]|[«18""»]|[-4-]|[$$*.MLOAD processed,_]|[-4-]|[$$ Segments active.]}
                StringCat3(a, b, c : String) : String
            <POP 204b6-204ba StackAdj>                       Δ+12               {[«20""»]|[«18""»]|[-4-]}
            <Call 0x204ba 0x103e0>                                              {[«20""»]|[«18""»]|[-4-]}
                WriteConsoleStringCrLf(str : String)
            <POP 204c0-204c4 StackAdj>                       Δ+42               {}
        <POP 204c4-204cc Epilogue>                           Σ0         

0x204cc


@ 204cc
        <LVAR  0x00c 4(r)>
        <LVAR  0x008 4(r)>
        <LVAR -0x003 @>
    <POP 204cc-20556 Body>                                              
        <POP 204cc-204e2 Prologue>                           Σ0         ↓
        <POP 204e2-204ee Naked>                              Σ0 Δ-4     ↓
            <MI 204e2  MOVEQ.L #0x00,D7>                                        {}
            <MI 204e4  MOVEQ.L #0x00,D6>                                        {}
            <MI 204e6  MOVEA.L (A6+0xc),A0>                                     {}
            <MI 204ea  MOVEA.L (A0),A0>                                         {}
            <MI 204ec  MOVE.L  A0,-(A7)>                     Δ-4                {[4, 'A0']}
        <POP 204ee-204f6 Naked>                              Σ-4        ↓ →0x20522 ←0x20520
            <MI 204ee  CMP.L   0x24878,D7>                                      {[-4-]}
            <MI 204f4  BGE     0x20522>                                         {[-4-]}
        <POP 204f6-204fa Naked>                              Σ-4        ↓ →0x20522
            <MI 204f6  TST.B   D6>                                              {[-4-]}
            <MI 204f8  BNE     0x20522>                                         {[-4-]}
        <POP 204fa-2051a Naked>                              Σ-4        ↓ →0x2051e
            <POP 0x204fa LimitCheck 0x0 ≤ D7 ≤ 0x1fff>                          {[-4-]}
            <MI 20504  MOVE.L  D7,D0>                                           {[-4-]}
            <MI 20506  ASL.L   #0x1,D0>                                         {[-4-]}
            <MI 20508  LEA.L   0x20870,A0>                                      {[-4-]}
            <MI 2050e  MOVEA.L (A7),A1>                                         {[-4-]}
            <MI 20510  MOVE.W  (A0+D0.L+#0x8),D0>                               {[-4-]}
            <MI 20514  CMP.W   (A1+0x24),D0>                                    {[-4-]}
            <MI 20518  BNE     0x2051e>                                         {[-4-]}
        <POP 2051a-2051e Naked>                              Σ-4        →0x20520
            <MI 2051a  MOVEQ.L #0x01,D6>                                        {[-4-]}
            <MI 2051c  BRA     0x20520>                                         {[-4-]}
        <POP 2051e-20520 Naked>                              Σ-4        ↓ ←0x204fa
            <MI 2051e  ADDQ.L  #0x1,D7>                                         {[-4-]}
        <POP 20520-20522 Naked>                              Σ-4        →0x204ee ←0x2051a
            <MI 20520  BRA     0x204ee>                                         {[-4-]}
        <POP 20522-20528 Naked>                              Σ-4 Δ+4    ↓ →0x2054e ←0x204ee ←0x204f6
            <POP 20522-20524 StackAdj>                       Δ+4                {}
            <MI 20524  TST.B   D6>                                              {}
            <MI 20526  BNE     0x2054e>                                         {}
        <POP 20528-2054e Naked>                              Σ0         ↓
            <Const 0x20528 0x2.2>                            Δ-2                {[#2]}
            <Const 0x2052c 0x1.2>                            Δ-2                {[#2]|[#1]}
            <Const 0x20530 0x1.4>                            Δ-4                {[#2]|[#1]|[##1]}
            <Pointer.fp 0x20534 <LVAR -0x003 @>>             Δ-4                {[#2]|[#1]|[##1]|[@@-3]}
            <MI 20538  MOVEA.L (A6+0xc),A0>                                     {[#2]|[#1]|[##1]|[@@-3]}
            <MI 2053c  PEA.L   (A0)>                         Δ-4                {[#2]|[#1]|[##1]|[@@-3]|[4, '^(A0)']}
            <Call 0x2053e 0x1038c>                                              {[#2]|[#1]|[##1]|[@@-3]|[4, '^(A0)']}
                CloseFile(a : L; VAR status : B; VAR file : File)
            <POP 20544-20548 StackAdj>                       Δ+16               {}
            <MI 20548  MOVEA.L (A6+0x8),A0>                                     {}
            <MI 2054c  ADDQ.L  #0x1,(A0)>                                       {}
        <POP 2054e-20556 Epilogue>                           Σ0         ←0x20522

0x20556


@ 20556
        <LVAR -0x008 @ 4(r)>
        <LVAR -0x00c @ 4(r)>
    <POP 20556-20612 Body>                                   Δ+6        
        <POP 20556-2056c Prologue>                           Σ0         ↓
        <POP 2056c-20576 RegCacheLoad>                       Σ0         ↓
        <POP 20576-205aa Naked>                              Σ0 Δ-6     ↓
            <MI 20576  CLR.L   (A6-0xc)>                                        {}
            <Blob 0x20578 [6] @>                             Δ-6                {[«6""»]}
            <Const 0x20588 0x1.2>                            Δ-2                {[«6""»]|[#1]}
            <POP 2058a-2058c StackAdj>                       Δ-4                {[«6""»]|[#1]|[-4-]}
            <Lit 0x2058c 5>                                                     {[«6""»]|[#1]|[$$*.SEG]}
            <Pointer.fp 0x2059e <LVAR -0x008 @ 4(r)>>        Δ-4                {[«6""»]|[#1]|[$$*.SEG]|[@@-8]}
            <Call 0x205a0 0x10458>                                              {[«6""»]|[#1]|[$$*.SEG]|[@@-8]}
                DirFirst(MOD c : Bool; a : String; VAR b : File)
            <POP 205a6-205aa StackAdj>                       Δ+10               {[«6""»]}
        <POP 205aa-205b2 Naked>                              Σ-6 Δ+6    ↓ →0x205d0 ←0x205c6
            <POP 205aa-205ac StackAdj>                       Δ+6                {}
            <MI 205ac  MOVEA.L (A6-0x8),A0>                                     {}
            <MI 205ae  CMPA.W  #0x01,A0>                                        {}
            <MI 205b0  BEQ     0x205d0>                                         {}
        <POP 205b2-205c4 Naked>                              Σ0 Δ-2     ↓ →0x205c6
            <Pointer.fp 0x205b2 <LVAR -0x008 @ 4(r)>>        Δ-4                {[@@-8]}
            <Pointer.fp 0x205b4 <LVAR -0x00c @ 4(r)>>        Δ-4                {[@@-8]|[@@-12]}
            <Call 0x205b6 0x204cc>                                              {[@@-8]|[@@-12]}
            <POP 205ba-205bc StackAdj>                       Δ+6                {[-2-]}
            <MI 205bc  CLR.B   (A7)>                                            {[-2-]}
            <MI 205be  MOVEA.L (A6-0x8),A0>                                     {[-2-]}
            <MI 205c0  CMPA.W  #0x01,A0>                                        {[-2-]}
            <MI 205c2  BNE     0x205c6>                                         {[-2-]}
        <POP 205c4-205c6 Naked>                              Σ-2        ↓
            <MI 205c4  ADDQ.B  #0x1,(A7)>                                       {[-2-]}
        <POP 205c6-205d0 Naked>                              Σ-2 Δ-4    →0x205aa ←0x205b2
            <Pointer.fp 0x205c6 <LVAR -0x008 @ 4(r)>>        Δ-4                {[-2-]|[@@-8]}
            <Call 0x205c8 0x1045c>                                              {[-2-]|[@@-8]}
                DirNext(MOD a : Bool; VAR b : File)
            <MI 205ce  BRA     0x205aa>                                         {[-2-]|[@@-8]}
        <POP 205d0-2060a Naked>                              Σ0         ↓ ←0x205aa
            <Blob 0x205d0 [18] @>                            Δ-18               {[«18""»]}
            <POP 205dc-205de StackAdj>                       Δ-8                {[«18""»]|[-8-]}
            <MI 205de  MOVE.L  (A6-0xc),-(A7)>               Δ-4                {[«18""»]|[-8-]|[4, '(A6-0xc)']}
            <Call 0x205e0 0x102e4>                                              {[«18""»]|[-8-]|[4, '(A6-0xc)']}
                Long2String(a : Long) : String
            <Lit 0x205e6 18>                                                    {[«18""»]|[-8-]|[$$ Segments deleted.]}
            <Call 0x205f8 0x102d0>                                              {[«18""»]|[-8-]|[$$ Segments deleted.]}
                StringCat2(a, b : String) : String
            <POP 205fe-20600 StackAdj>                       Δ+8                {[«18""»]|[-4-]}
            <Call 0x20600 0x103e0>                                              {[«18""»]|[-4-]}
                WriteConsoleStringCrLf(str : String)
            <POP 20606-2060a StackAdj>                       Δ+22               {}
        <POP 2060a-20612 Epilogue>                           Σ0         

0x20612


@ 20612
START
    <POP 20612--0001 Body>                                              
        <POP 20612-2061c Prologue>                           Σ0         
        <POP 2061c-20664 Naked>                              Σ0         ↓
            <Call 0x2061c 0x10398>                                              {}
                FSCALL_10398
            <Blob 0x20622 [36] @>                            Δ-36               {[«36""»]}
            <POP 2062e-20630 StackAdj>                       Δ-4                {[«36""»]|[-4-]}
            <Lit 0x20630 36>                                                    {[«36""»]|[$$R1000 Segment file garbage collector]}
            <Call 0x20644 0x103e0>                                              {[«36""»]|[$$R1000 Segment file garbage collector]}
                WriteConsoleStringCrLf(str : String)
            <POP 2064a-2064e StackAdj>                       Δ+40               {}
            <Call 0x2064e 0x203f6>                                              {}
            <Call 0x20652 0x20556>                                              {}
            <MI 20656  CLR.B   -(A7)>                        Δ-2                {[#0]}
            <Const 0x20658 0x1.4>                            Δ-4                {[#0]|[##1]}
            <Call 0x2065c 0x103b8>                                              {[#0]|[##1]}
                PopProgram(status : Byte; msg : String)
            <POP 20662-20664 StackAdj>                       Δ+6                {}
        <POP 20664-2066a Naked>                              Σ0         
            <Call 0x20664 0x10284>                                              {}
                ?exit

0x20678


@ 20678
PROG_FAIL
        <LVAR  0x008 1(r)>
    <POP 20678-206e0 Body>                                              
        <POP 20678-2068e Prologue>                           Σ0         ↓
        <POP 2068e-206d8 Naked>                              Σ0         ↓
            <Blob 0x2068e [14] @>                            Δ-14               {[«14""»]}
            <Const 0x2069a 0x3.2>                            Δ-2                {[«14""»]|[#3]}
            <POP 2069e-206a0 StackAdj>                       Δ-8                {[«14""»]|[#3]|[-8-]}
            <Lit 0x206a0 14>                                                    {[«14""»]|[#3]|[-4-]|[$$Words error :_]}
            <POP 206b2-206b4 StackAdj>                       Δ-4                {[«14""»]|[#3]|[-4-]|[$$Words error :_]|[-4-]}
            <MI 206b4  MOVE.B  (A6+0x8),D0>                                     {[«14""»]|[#3]|[-4-]|[$$Words error :_]|[-4-]}
            <MI 206b8  EXTB.W  D0>                                              {[«14""»]|[#3]|[-4-]|[$$Words error :_]|[-4-]}
            <MI 206ba  EXTW.L  D0>                                              {[«14""»]|[#3]|[-4-]|[$$Words error :_]|[-4-]}
            <MI 206bc  MOVE.L  D0,-(A7)>                     Δ-4                {[«14""»]|[#3]|[-4-]|[$$Words error :_]|[-4-]|[4, 'D0']}
            <Call 0x206be 0x102e4>                                              {[«14""»]|[#3]|[-4-]|[$$Words error :_]|[-4-]|[4, 'D0']}
                Long2String(a : Long) : String
            <POP 206c4-206c6 StackAdj>                       Δ+4                {[«14""»]|[#3]|[-4-]|[$$Words error :_]|[-4-]}
            <Call 0x206c6 0x102d0>                                              {[«14""»]|[#3]|[-4-]|[$$Words error :_]|[-4-]}
                StringCat2(a, b : String) : String
            <POP 206cc-206ce StackAdj>                       Δ+8                {[«14""»]|[#3]|[-4-]}
            <Call 0x206ce 0x103b8>                                              {[«14""»]|[#3]|[-4-]}
                PopProgram(status : Byte; msg : String)
            <POP 206d4-206d8 StackAdj>                       Δ+20               {}
        <POP 206d8-206e0 Epilogue>                           Σ0         

0x20734


@ 20734
EXP_FAIL
        <LVAR  0x00e 1(r)>
        <LVAR  0x00a 4(r)>
        <LVAR  0x008 1(r)>
    <POP 20734-20870 Body>                                              
        <POP 20734-2074a Prologue>                           Σ0         ↓
        <POP 2074a-20760 RegCacheLoad>                       Σ0         ↓
        <POP 20760-207c0 Naked>                              Σ0         ↓ →0x20808
            <Call 0x20760 0x103dc>                                              {}
                WriteConsoleCrLf(void)
            <Blob 0x20766 [18] @>                            Δ-18               {[«18""»]}
            <POP 20772-20774 StackAdj>                       Δ-4                {[«18""»]|[-4-]}
            <Lit 0x20774 18>                                                    {[«18""»]|[$$Experiment error :]}
            <Call 0x20780 0x103e0>                                              {[«18""»]|[$$Experiment error :]}
                WriteConsoleStringCrLf(str : String)
            <POP 20782-20783 StackAdj>                       Δ+22       ↓       {}
            <Blob 0x20783 [14] @>                            Δ-14               {[«14""»]}
            <POP 20792-20794 StackAdj>                       Δ-8                {[«14""»]|[-8-]}
            <Lit 0x20794 13>                                                    {[«14""»]|[-4-]|[$$Board      :_]}
            <POP 2079e-207a0 StackAdj>                       Δ-6                {[«14""»]|[-4-]|[$$Board      :_]|[-6-]}
            <MI 207a0  MOVE.B  (A6+0xe),(A7)>                                   {[«14""»]|[-4-]|[$$Board      :_]|[-6-]}
            <Call 0x207a4 0x1049c>                                              {[«14""»]|[-4-]|[$$Board      :_]|[-6-]}
                BoardName(address : B) : String
            <POP 207aa-207ac StackAdj>                       Δ+2                {[«14""»]|[-4-]|[$$Board      :_]|[-4-]}
            <Call 0x207ac 0x102d0>                                              {[«14""»]|[-4-]|[$$Board      :_]|[-4-]}
                StringCat2(a, b : String) : String
            <POP 207b2-207b4 StackAdj>                       Δ+8                {[«14""»]|[-4-]}
            <Call 0x207b4 0x103e0>                                              {[«14""»]|[-4-]}
                WriteConsoleStringCrLf(str : String)
            <POP 207b6-207b8 StackAdj>                       Δ+18               {}
            <MI 207b8  MOVEA.L (A6+0xa),A0>                                     {}
            <MI 207bc  CMPA.W  #0x01,A0>                                        {}
            <MI 207be  BEQ     0x20808>                                         {}
        <POP 207c0-20808 Naked>                              Σ0         ↓
            <Blob 0x207c0 [14] @>                            Δ-14               {[«14""»]}
            <Blob 0x207d0 [30] (A0+0xfc)>                    Δ-30               {[«14""»]|[«30»]}
            <POP 207e0-207e2 StackAdj>                       Δ-8                {[«14""»]|[«30»]|[-8-]}
            <Lit 0x207e2 13>                                                    {[«14""»]|[«30»]|[-4-]|[$$Experiment :_]}
            <POP 207ec-207ee StackAdj>                       Δ-4                {[«14""»]|[«30»]|[-4-]|[$$Experiment :_]|[-4-]}
            <Lit 0x207ee>                                                       {[«14""»]|[«30»]|[-4-]|[$$Experiment :_]|[$$…]}
                <Pointer.sp 0x207ee 12>                      Δ-4        
                <Const 0x207f2 0x1.2>                        Δ-2        
                <Const 0x207f4 0x1e.2>                       Δ-2        
                <Call 0x207f6 0x102c4>
                    StringLit(Src : Pointer; Offset: W; Len : W) : String
                <POP 207f8-207fa StackAdj>                   Δ+8        
            <Call 0x207fa 0x102d0>                                              {[«14""»]|[«30»]|[-4-]|[$$Experiment :_]|[$$…]}
                StringCat2(a, b : String) : String
            <POP 20800-20802 StackAdj>                       Δ+8                {[«14""»]|[«30»]|[-4-]}
            <Call 0x20802 0x103e0>                                              {[«14""»]|[«30»]|[-4-]}
                WriteConsoleStringCrLf(str : String)
            <POP 20804-20808 StackAdj>                       Δ+48               {}
        <POP 20808-20868 Naked>                              Σ0         ↓ ←0x20760
            <Blob 0x20808 [14] @>                            Δ-14               {[«14""»]}
            <POP 20818-2081a StackAdj>                       Δ-8                {[«14""»]|[-8-]}
            <Lit 0x2081a 13>                                                    {[«14""»]|[-4-]|[$$Status     :_]}
            <POP 20824-20826 StackAdj>                       Δ-6                {[«14""»]|[-4-]|[$$Status     :_]|[-6-]}
            <MI 20826  MOVE.B  (A6+0x8),(A7)>                                   {[«14""»]|[-4-]|[$$Status     :_]|[-6-]}
            <Call 0x2082a 0x104a2>                                              {[«14""»]|[-4-]|[$$Status     :_]|[-6-]}
                ExpStatus2Text(status.B, &String)
            <POP 20830-20832 StackAdj>                       Δ+2                {[«14""»]|[-4-]|[$$Status     :_]|[-4-]}
            <Call 0x20832 0x102d0>                                              {[«14""»]|[-4-]|[$$Status     :_]|[-4-]}
                StringCat2(a, b : String) : String
            <POP 20838-2083a StackAdj>                       Δ+8                {[«14""»]|[-4-]}
            <Call 0x2083a 0x103e0>                                              {[«14""»]|[-4-]}
                WriteConsoleStringCrLf(str : String)
            <POP 2083c-2083d StackAdj>                       Δ+18       ↓       {}
            <Blob 0x2083d [24] @>                            Δ-24               {[«24""»]}
            <Const 0x2084c 0x2.2>                            Δ-2                {[«24""»]|[#2]}
            <POP 20850-20852 StackAdj>                       Δ-4                {[«24""»]|[#2]|[-4-]}
            <Lit 0x20852 23>                                                    {[«24""»]|[#2]|[$$Fatal experiment error.]}
            <Call 0x20860 0x103b8>                                              {[«24""»]|[#2]|[$$Fatal experiment error.]}
                PopProgram(status : Byte; msg : String)
            <POP 20866-20868 StackAdj>                       Δ+30               {}
        <POP 20868-20870 Epilogue>                           Σ0         

Raw from R1000.Disassembly/DFS

00020000 ; --------------------------------------------------------------------------------------
00020000 ; R1000.Disassembly modules:
00020000 ;   import all
00020000 ;   import kind.program
00020000 ;   no ident.948c0902b0c3517b
00020000 ; --------------------------------------------------------------------------------------
00020000					stack.top:
00020000 00 04 00 00              |        |		.CODE	0x40000			; STACK.END
00020004 00 02 06 12              |        |		.CODE	START
00020008 00 01 02 88              |        |		.CODE	FSCALL_10288
0002000c					heap.top:
0002000c 00 02 48 8c              |  H     |		.PTR	0x2488c
00020010					code.end:
00020010 00 02 08 70              |   p    |		.PTR	0x20870
00020014 00 00 00 00              |        |		.CONST	0x00000000
00020018					programfailurehandler:
00020018 00 02 06 78              |   x    |		.CODE	PROG_FAIL
0002001c					experimentfailurehandler:
0002001c 00 02 07 34              |   4    |		.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 40 28 23 29 47 43        |@(#)GC  |		.XXX[0x6]
00020110 2c 31 2e 31 2c 39 32 2f  |,1.1,92/|		.XXX[0x18]
00020118 30 37 2f 30 39 2c 31 32  |07/09,12|
00020120 3a 30 30 3a 30 30 5c 20  |:00:00\ |
00020128 50 72 6f 63 65 73 73 69  |Processi|		.TXT	'Processing :_ '
00020136 4c 4f 41 44              |LOAD    |		.TXT	'LOAD'
0002013a 20 73 65 67 6d 65 6e 74  | segment|		.TXT	' segment files referenced.'
00020154 2a 2e 4d 4c 4f 41 44 20  |*.MLOAD |		.TXT	'*.MLOAD '
0002015c 2a 2e 4d 4c 4f 41 44 20  |*.MLOAD |		.TXT	'*.MLOAD processed,_ '
00020170 20 53 65 67 6d 65 6e 74  | Segment|		.TXT	' Segments active. '
00020182 2a 2e 53 45 47 20        |*.SEG   |		.TXT	'*.SEG '
00020188 20 53 65 67 6d 65 6e 74  | Segment|		.TXT	' Segments deleted.'
0002019a 52 31 30 30 30 20 53 65  |R1000 Se|		.TXT	'R1000 Segment file garbage collector'
000201be ; --------------------------------------------------------------------------------------
000201be ; OMSI PASCAL Function
000201be ;    <LVAR  0x008 4(r)>
000201be ;    <LVAR -0x008 @ 1(r)>
000201be ;    <LVAR -0x00c @ 4(r)>
000201be ; --------------------------------------------------------------------------------------
000201be 4e 56 ff b8              |NV      |		LINK.W	A6,#0xffb8
000201c2 bf d5                    |        |		CMPA.L	(A5),A7
000201c4 62 06                    |b       |		BHI	0x201cc
000201c6 44 fc 00 02              |D       |		MOVE.W	#0x2,CCR
000201ca 4e 76                    |Nv      |		TRAPV
000201cc de fc 00 3c              |   <    |		ADDA.W	#0x3c,A7
000201d0 48 e7 c3 f8              |H       |		MOVEM.L	A4+A3+A2+A1+A0+D7+D6+D1+D0,-(A7)
000201d4 45 ee ff f8              |E       |		LEA.L	(A6-0x8),A2
000201d8 47 ee ff f4              |G       |		LEA.L	(A6-0xc),A3
000201dc 49 f9 00 02 48 78        |I   Hx  |		LEA.L	0x24878,A4
000201e2 72 14                    |r       |		MOVEQ.L	#0x14,D1
000201e4 2f 2e 00 08              |/.      |		MOVE.L	(A6+0x8),-(A7)
000201e8 42 27                    |B'      |		CLR.B	-(A7)
000201ea 1f 3c 00 01              | <      |		MOVE.B	#0x01,-(A7)
000201ee 48 78 00 00              |Hx      |		PEA.L	0x0
000201f2 48 52                    |HR      |		PEA.L	(A2)
000201f4 48 53                    |HS      |		PEA.L	(A3)
000201f6 4e b9 00 01 03 80        |N       |		JSR	OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
000201fc de c1                    |        |		ADDA.W	D1,A7
000201fe 4a 12                    |J       |		TST.B	(A2)
00020200 66 70                    |fp      |		BNE	0x20272
00020202 20 53                    | S      |		MOVEA.L	(A3),A0
00020204 2f 08                    |/       |		MOVE.L	A0,-(A7)
00020206 7c 00                    ||       |		MOVEQ.L	#0x00,D6
00020208 7e 00                    |~       |		MOVEQ.L	#0x00,D7
0002020a bc 94                    |        |		CMP.L	(A4),D6
0002020c 6c 2c                    |l,      |		BGE	0x2023a
0002020e 4a 07                    |J       |		TST.B	D7
00020210 66 28                    |f(      |		BNE	0x2023a
00020212 0c 86 00 00 1f ff        |        |		CMPI.L	#0x00001fff,D6
00020218 63 02                    |c       |		BLS	0x2021c
0002021a 4e 4f                    |NO      |		TRAP	#15
0002021c 20 06                    |        |		MOVE.L	D6,D0
0002021e e3 80                    |        |		ASL.L	#0x1,D0
00020220 41 f9 00 02 08 70        |A    p  |		LEA.L	0x20870,A0
00020226 22 57                    |"W      |		MOVEA.L	(A7),A1
00020228 30 30 08 08              |00      |		MOVE.W	(A0+D0.L+#0x8),D0
0002022c b0 69 00 24              | i $    |		CMP.W	(A1+0x24),D0
00020230 66 04                    |f       |		BNE	0x20236
00020232 7e 01                    |~       |		MOVEQ.L	#0x01,D7
00020234 60 02                    |`       |		BRA	0x20238
00020236 52 86                    |R       |		ADDQ.L	#0x1,D6
00020238 60 d0                    |`       |		BRA	0x2020a
0002023a 4a 07                    |J       |		TST.B	D7
0002023c 66 1e                    |f       |		BNE	0x2025c
0002023e 0c 86 00 00 1f ff        |        |		CMPI.L	#0x00001fff,D6
00020244 63 02                    |c       |		BLS	0x20248
00020246 4e 4f                    |NO      |		TRAP	#15
00020248 20 06                    |        |		MOVE.L	D6,D0
0002024a e3 80                    |        |		ASL.L	#0x1,D0
0002024c 41 f9 00 02 08 70        |A    p  |		LEA.L	0x20870,A0
00020252 22 57                    |"W      |		MOVEA.L	(A7),A1
00020254 31 a9 00 24 08 08        |1  $    |		MOVE.W	(A1+0x24),(A0+D0.L+#0x8)
0002025a 52 94                    |R       |		ADDQ.L	#0x1,(A4)
0002025c 42 27                    |B'      |		CLR.B	-(A7)
0002025e 1f 3c 00 02              | <      |		MOVE.B	#0x02,-(A7)
00020262 48 78 00 01              |Hx      |		PEA.L	0x1
00020266 48 52                    |HR      |		PEA.L	(A2)
00020268 48 53                    |HS      |		PEA.L	(A3)
0002026a 4e b9 00 01 03 8c        |N       |		JSR	CloseFile(a : L; VAR status : B; VAR file : File)
00020270 de c1                    |        |		ADDA.W	D1,A7
00020272 4c df 1f c3              |L       |		MOVEM.L	(A7)+,D0+D1+D6+D7+A0+A1+A2+A3+A4
00020276 4e 5e                    |N^      |		UNLK	A6
00020278 4e 75                    |Nu      |		RTS
0002027a ; --------------------------------------------------------------------------------------
0002027a ; OMSI PASCAL Function
0002027a ;    <LVAR  0x008 4(r)>
0002027a ;    <LVAR -0x003 @ 1(r)>
0002027a ;    <LVAR -0x004 @ 1(r)>
0002027a ;    <LVAR -0x008 @ 4(r)>
0002027a ;    <LVAR -0x00c @ 4(rw)>
0002027a ;    <LVAR -0x010 @ 4(rw)>
0002027a ; --------------------------------------------------------------------------------------
0002027a 4e 56 ff 7c              |NV |    |		LINK.W	A6,#0xff7c
0002027e bf d5                    |        |		CMPA.L	(A5),A7
00020280 62 06                    |b       |		BHI	0x20288
00020282 44 fc 00 02              |D       |		MOVE.W	#0x2,CCR
00020286 4e 76                    |Nv      |		TRAPV
00020288 de fc 00 70              |   p    |		ADDA.W	#0x70,A7
0002028c 48 e7 f1 f8              |H       |		MOVEM.L	A4+A3+A2+A1+A0+D7+D3+D2+D1+D0,-(A7)
00020290 45 ee ff f0              |E       |		LEA.L	(A6-0x10),A2
00020294 47 ee ff f8              |G       |		LEA.L	(A6-0x8),A3
00020298 49 f9 00 01 02 c4        |I       |		LEA.L	StringLit(Src : Pointer; Offset: W; Len : W) : String,A4
0002029e 72 01                    |r       |		MOVEQ.L	#0x01,D1
000202a0 74 1e                    |t       |		MOVEQ.L	#0x1e,D2
000202a2 76 0c                    |v       |		MOVEQ.L	#0x0c,D3
000202a4 7e 00                    |~       |		MOVEQ.L	#0x00,D7
000202a6 9e fc 00 0e              |        |		SUBA.W	#0xe,A7
000202aa 20 4f                    | O      |		MOVEA.L	A7,A0
000202ac 43 fa fe 7a              |C  z    |		LEA.L	0x20128,A1
000202b0 70 0c                    |p       |		MOVEQ.L	#0x0c,D0
000202b2 10 d9                    |        |		MOVE.B	(A1)+,(A0)+
000202b4 51 c8 ff fc              |Q       |		DBF	D0,0x202b2
000202b8 20 6e 00 08              | n      |		MOVEA.L	(A6+0x8),A0
000202bc 9e c2                    |        |		SUBA.W	D2,A7
000202be 22 4f                    |"O      |		MOVEA.L	A7,A1
000202c0 70 1d                    |p       |		MOVEQ.L	#0x1d,D0
000202c2 12 d8                    |        |		MOVE.B	(A0)+,(A1)+
000202c4 51 c8 ff fc              |Q       |		DBF	D0,0x202c2
000202c8 51 4f                    |QO      |		SUBQ.L	#0x8,A7
000202ca 48 6f 00 26              |Ho &    |		PEA.L	(A7+0x26)
000202ce 3f 01                    |?       |		MOVE.W	D1,-(A7)
000202d0 3f 3c 00 0d              |?<      |		MOVE.W	#0xd,-(A7)
000202d4 4e 94                    |N       |		JSR	(A4)
000202d6 48 6f 00 10              |Ho      |		PEA.L	(A7+0x10)
000202da 3f 01                    |?       |		MOVE.W	D1,-(A7)
000202dc 3f 02                    |?       |		MOVE.W	D2,-(A7)
000202de 4e 94                    |N       |		JSR	(A4)
000202e0 50 4f                    |PO      |		ADDQ.L	#0x8,A7
000202e2 48 78 00 20              |Hx      |		PEA.L	0x20
000202e6 4e b9 00 01 02 f8        |N       |		JSR	LeftPad(a : String; b : Long) : String
000202ec 50 4f                    |PO      |		ADDQ.L	#0x8,A7
000202ee 4e b9 00 01 02 d0        |N       |		JSR	StringCat2(a, b : String) : String
000202f4 50 4f                    |PO      |		ADDQ.L	#0x8,A7
000202f6 4e b9 00 01 03 d8        |N       |		JSR	WriteConsoleString(str : String)
000202fc de fc 00 30              |   0    |		ADDA.W	#0x30,A7
00020300 48 52                    |HR      |		PEA.L	(A2)
00020302 4e b9 00 01 02 b8        |N       |		JSR	NewString(VAR a : String)
00020308 58 4f                    |XO      |		ADDQ.L	#0x4,A7
0002030a 48 53                    |HS      |		PEA.L	(A3)
0002030c 4e b9 00 01 02 b8        |N       |		JSR	NewString(VAR a : String)
00020312 2e ba fe 22              |.  "    |		MOVE.L	0x20136,(A7)
00020316 59 4f                    |YO      |		SUBQ.L	#0x4,A7
00020318 48 6f 00 04              |Ho      |		PEA.L	(A7+0x4)
0002031c 3f 01                    |?       |		MOVE.W	D1,-(A7)
0002031e 3f 3c 00 04              |?<      |		MOVE.W	#0x4,-(A7)
00020322 4e 94                    |N       |		JSR	(A4)
00020324 50 4f                    |PO      |		ADDQ.L	#0x8,A7
00020326 2d 5f ff f4              |-_      |		MOVE.L	(A7)+,(A6-0xc)
0002032a 58 4f                    |XO      |		ADDQ.L	#0x4,A7
0002032c 2f 2e 00 08              |/.      |		MOVE.L	(A6+0x8),-(A7)
00020330 48 52                    |HR      |		PEA.L	(A2)
00020332 48 6e ff fd              |Hn      |		PEA.L	(A6-0x3)
00020336 4e b9 00 01 04 3c        |N    <  |		JSR	FileReadLine(file : File; VAR a : String; VAR b : Byte)
0002033c de c3                    |        |		ADDA.W	D3,A7
0002033e 20 52                    | R      |		MOVEA.L	(A2),A0
00020340 4a 50                    |JP      |		TST.W	(A0)
00020342 67 50                    |gP      |		BEQ	0x20394
00020344 59 4f                    |YO      |		SUBQ.L	#0x4,A7
00020346 2f 12                    |/       |		MOVE.L	(A2),-(A7)
00020348 4e b9 00 01 02 f0        |N       |		JSR	ToUpper(a : String) : String
0002034e 58 4f                    |XO      |		ADDQ.L	#0x4,A7
00020350 24 9f                    |$       |		MOVE.L	(A7)+,(A2)
00020352 2f 12                    |/       |		MOVE.L	(A2),-(A7)
00020354 2f 13                    |/       |		MOVE.L	(A3),-(A7)
00020356 48 6e ff fc              |Hn      |		PEA.L	(A6-0x4)
0002035a 4e b9 00 01 02 fc        |N       |		JSR	FirstField(MOD input : String; MOD output : String; VAR c : Bool
00020360 5c 4f                    |\O      |		ADDQ.L	#0x6,A7
00020362 2e 93                    |.       |		MOVE.L	(A3),(A7)
00020364 2f 2e ff f4              |/.      |		MOVE.L	(A6-0xc),-(A7)
00020368 4e b9 00 01 02 c8        |N       |		JSR	StringEqual(a, b : String) : Byte
0002036e 50 4f                    |PO      |		ADDQ.L	#0x8,A7
00020370 4a 1f                    |J       |		TST.B	(A7)+
00020372 67 20                    |g       |		BEQ	0x20394
00020374 2f 12                    |/       |		MOVE.L	(A2),-(A7)
00020376 2f 13                    |/       |		MOVE.L	(A3),-(A7)
00020378 48 6e ff fc              |Hn      |		PEA.L	(A6-0x4)
0002037c 4e b9 00 01 02 fc        |N       |		JSR	FirstField(MOD input : String; MOD output : String; VAR c : Bool
00020382 de c3                    |        |		ADDA.W	D3,A7
00020384 4a 2e ff fc              |J.      |		TST.B	(A6-0x4)
00020388 67 0a                    |g       |		BEQ	0x20394
0002038a 2f 13                    |/       |		MOVE.L	(A3),-(A7)
0002038c 4e ba fe 30              |N  0    |		JSR	0x201be
00020390 58 4f                    |XO      |		ADDQ.L	#0x4,A7
00020392 52 87                    |R       |		ADDQ.L	#0x1,D7
00020394 4a 2e ff fd              |J.      |		TST.B	(A6-0x3)
00020398 67 92                    |g       |		BEQ	0x2032c
0002039a 48 6e ff f4              |Hn      |		PEA.L	(A6-0xc)
0002039e 4e b9 00 01 02 bc        |N       |		JSR	FreeString(VAR a : String)
000203a4 58 4f                    |XO      |		ADDQ.L	#0x4,A7
000203a6 48 53                    |HS      |		PEA.L	(A3)
000203a8 4e b9 00 01 02 bc        |N       |		JSR	FreeString(VAR a : String)
000203ae 58 4f                    |XO      |		ADDQ.L	#0x4,A7
000203b0 48 52                    |HR      |		PEA.L	(A2)
000203b2 4e b9 00 01 02 bc        |N       |		JSR	FreeString(VAR a : String)
000203b8 58 4f                    |XO      |		ADDQ.L	#0x4,A7
000203ba 41 fa fd 98              |A       |		LEA.L	0x20154,A0
000203be 70 0c                    |p       |		MOVEQ.L	#0x0c,D0
000203c0 3f 20                    |?       |		MOVE.W	-(A0),-(A7)
000203c2 51 c8 ff fc              |Q       |		DBF	D0,0x203c0
000203c6 51 4f                    |QO      |		SUBQ.L	#0x8,A7
000203c8 2f 07                    |/       |		MOVE.L	D7,-(A7)
000203ca 4e b9 00 01 02 e4        |N       |		JSR	Long2String(a : Long) : String
000203d0 48 6f 00 0c              |Ho      |		PEA.L	(A7+0xc)
000203d4 3f 01                    |?       |		MOVE.W	D1,-(A7)
000203d6 3f 3c 00 1a              |?<      |		MOVE.W	#0x1a,-(A7)
000203da 4e 94                    |N       |		JSR	(A4)
000203dc 50 4f                    |PO      |		ADDQ.L	#0x8,A7
000203de 4e b9 00 01 02 d0        |N       |		JSR	StringCat2(a, b : String) : String
000203e4 50 4f                    |PO      |		ADDQ.L	#0x8,A7
000203e6 4e b9 00 01 03 e0        |N       |		JSR	WriteConsoleStringCrLf(str : String)
000203ec de c2                    |        |		ADDA.W	D2,A7
000203ee 4c df 1f 8f              |L       |		MOVEM.L	(A7)+,D0+D1+D2+D3+D7+A0+A1+A2+A3+A4
000203f2 4e 5e                    |N^      |		UNLK	A6
000203f4 4e 75                    |Nu      |		RTS
000203f6 ; --------------------------------------------------------------------------------------
000203f6 ; OMSI PASCAL Function
000203f6 ;    <LVAR -0x004 @ 4(r)>
000203f6 ; --------------------------------------------------------------------------------------
000203f6 4e 56 ff 96              |NV      |		LINK.W	A6,#0xff96
000203fa bf d5                    |        |		CMPA.L	(A5),A7
000203fc 62 06                    |b       |		BHI	0x20404
000203fe 44 fc 00 02              |D       |		MOVE.W	#0x2,CCR
00020402 4e 76                    |Nv      |		TRAPV
00020404 de fc 00 62              |   b    |		ADDA.W	#0x62,A7
00020408 48 e7 e0 f8              |H       |		MOVEM.L	A4+A3+A2+A1+A0+D2+D1+D0,-(A7)
0002040c 45 f9 00 02 48 78        |E   Hx  |		LEA.L	0x24878,A2
00020412 47 f9 00 01 02 c4        |G       |		LEA.L	StringLit(Src : Pointer; Offset: W; Len : W) : String,A3
00020418 49 ee ff fc              |I       |		LEA.L	(A6-0x4),A4
0002041c 72 01                    |r       |		MOVEQ.L	#0x01,D1
0002041e 74 12                    |t       |		MOVEQ.L	#0x12,D2
00020420 42 92                    |B       |		CLR.L	(A2)
00020422 51 4f                    |QO      |		SUBQ.L	#0x8,A7
00020424 20 4f                    | O      |		MOVEA.L	A7,A0
00020426 43 fa fd 2c              |C  ,    |		LEA.L	0x20154,A1
0002042a 70 06                    |p       |		MOVEQ.L	#0x06,D0
0002042c 10 d9                    |        |		MOVE.B	(A1)+,(A0)+
0002042e 51 c8 ff fc              |Q       |		DBF	D0,0x2042c
00020432 1f 01                    |        |		MOVE.B	D1,-(A7)
00020434 59 4f                    |YO      |		SUBQ.L	#0x4,A7
00020436 48 6f 00 06              |Ho      |		PEA.L	(A7+0x6)
0002043a 3f 01                    |?       |		MOVE.W	D1,-(A7)
0002043c 3f 3c 00 07              |?<      |		MOVE.W	#0x7,-(A7)
00020440 4e 93                    |N       |		JSR	(A3)
00020442 50 4f                    |PO      |		ADDQ.L	#0x8,A7
00020444 48 54                    |HT      |		PEA.L	(A4)
00020446 4e b9 00 01 04 58        |N    X  |		JSR	DirFirst(MOD c : Bool; a : String; VAR b : File)
0002044c de c2                    |        |		ADDA.W	D2,A7
0002044e 20 54                    | T      |		MOVEA.L	(A4),A0
00020450 b0 c1                    |        |		CMPA.W	D1,A0
00020452 67 16                    |g       |		BEQ	0x2046a
00020454 2f 08                    |/       |		MOVE.L	A0,-(A7)
00020456 4e ba fe 22              |N  "    |		JSR	0x2027a
0002045a 54 4f                    |TO      |		ADDQ.L	#0x2,A7
0002045c 42 17                    |B       |		CLR.B	(A7)
0002045e 48 54                    |HT      |		PEA.L	(A4)
00020460 4e b9 00 01 04 5c        |N    \  |		JSR	DirNext(MOD a : Bool; VAR b : File)
00020466 5c 4f                    |\O      |		ADDQ.L	#0x6,A7
00020468 60 e4                    |`       |		BRA	0x2044e
0002046a 9e fc 00 14              |        |		SUBA.W	#0x14,A7
0002046e 20 4f                    | O      |		MOVEA.L	A7,A0
00020470 43 fa fc ea              |C       |		LEA.L	0x2015c,A1
00020474 70 12                    |p       |		MOVEQ.L	#0x12,D0
00020476 10 d9                    |        |		MOVE.B	(A1)+,(A0)+
00020478 51 c8 ff fc              |Q       |		DBF	D0,0x20476
0002047c 9e c2                    |        |		SUBA.W	D2,A7
0002047e 20 4f                    | O      |		MOVEA.L	A7,A0
00020480 43 fa fc ee              |C       |		LEA.L	0x20170,A1
00020484 70 10                    |p       |		MOVEQ.L	#0x10,D0
00020486 10 d9                    |        |		MOVE.B	(A1)+,(A0)+
00020488 51 c8 ff fc              |Q       |		DBF	D0,0x20486
0002048c 51 4f                    |QO      |		SUBQ.L	#0x8,A7
0002048e 48 6f 00 1a              |Ho      |		PEA.L	(A7+0x1a)
00020492 3f 01                    |?       |		MOVE.W	D1,-(A7)
00020494 3f 3c 00 13              |?<      |		MOVE.W	#0x13,-(A7)
00020498 4e 93                    |N       |		JSR	(A3)
0002049a 2e 92                    |.       |		MOVE.L	(A2),(A7)
0002049c 4e b9 00 01 02 e4        |N       |		JSR	Long2String(a : Long) : String
000204a2 48 6f 00 10              |Ho      |		PEA.L	(A7+0x10)
000204a6 3f 01                    |?       |		MOVE.W	D1,-(A7)
000204a8 3f 3c 00 11              |?<      |		MOVE.W	#0x11,-(A7)
000204ac 4e 93                    |N       |		JSR	(A3)
000204ae 50 4f                    |PO      |		ADDQ.L	#0x8,A7
000204b0 4e b9 00 01 02 d4        |N       |		JSR	StringCat3(a, b, c : String) : String
000204b6 de fc 00 0c              |        |		ADDA.W	#0xc,A7
000204ba 4e b9 00 01 03 e0        |N       |		JSR	WriteConsoleStringCrLf(str : String)
000204c0 de fc 00 2a              |   *    |		ADDA.W	#0x2a,A7
000204c4 4c df 1f 07              |L       |		MOVEM.L	(A7)+,D0+D1+D2+A0+A1+A2+A3+A4
000204c8 4e 5e                    |N^      |		UNLK	A6
000204ca 4e 75                    |Nu      |		RTS
000204cc ; --------------------------------------------------------------------------------------
000204cc ; OMSI PASCAL Function
000204cc ;    <LVAR  0x00c 4(r)>
000204cc ;    <LVAR  0x008 4(r)>
000204cc ;    <LVAR -0x003 @>
000204cc ; --------------------------------------------------------------------------------------
000204cc 4e 56 ff d0              |NV      |		LINK.W	A6,#0xffd0
000204d0 bf d5                    |        |		CMPA.L	(A5),A7
000204d2 62 06                    |b       |		BHI	0x204da
000204d4 44 fc 00 02              |D       |		MOVE.W	#0x2,CCR
000204d8 4e 76                    |Nv      |		TRAPV
000204da de fc 00 28              |   (    |		ADDA.W	#0x28,A7
000204de 48 e7 83 c0              |H       |		MOVEM.L	A1+A0+D7+D6+D0,-(A7)
000204e2 7e 00                    |~       |		MOVEQ.L	#0x00,D7
000204e4 7c 00                    ||       |		MOVEQ.L	#0x00,D6
000204e6 20 6e 00 0c              | n      |		MOVEA.L	(A6+0xc),A0
000204ea 20 50                    | P      |		MOVEA.L	(A0),A0
000204ec 2f 08                    |/       |		MOVE.L	A0,-(A7)
000204ee be b9 00 02 48 78        |    Hx  |		CMP.L	0x24878,D7
000204f4 6c 2c                    |l,      |		BGE	0x20522
000204f6 4a 06                    |J       |		TST.B	D6
000204f8 66 28                    |f(      |		BNE	0x20522
000204fa 0c 87 00 00 1f ff        |        |		CMPI.L	#0x00001fff,D7
00020500 63 02                    |c       |		BLS	0x20504
00020502 4e 4f                    |NO      |		TRAP	#15
00020504 20 07                    |        |		MOVE.L	D7,D0
00020506 e3 80                    |        |		ASL.L	#0x1,D0
00020508 41 f9 00 02 08 70        |A    p  |		LEA.L	0x20870,A0
0002050e 22 57                    |"W      |		MOVEA.L	(A7),A1
00020510 30 30 08 08              |00      |		MOVE.W	(A0+D0.L+#0x8),D0
00020514 b0 69 00 24              | i $    |		CMP.W	(A1+0x24),D0
00020518 66 04                    |f       |		BNE	0x2051e
0002051a 7c 01                    ||       |		MOVEQ.L	#0x01,D6
0002051c 60 02                    |`       |		BRA	0x20520
0002051e 52 87                    |R       |		ADDQ.L	#0x1,D7
00020520 60 cc                    |`       |		BRA	0x204ee
00020522 58 4f                    |XO      |		ADDQ.L	#0x4,A7
00020524 4a 06                    |J       |		TST.B	D6
00020526 66 26                    |f&      |		BNE	0x2054e
00020528 1f 3c 00 02              | <      |		MOVE.B	#0x02,-(A7)
0002052c 1f 3c 00 01              | <      |		MOVE.B	#0x01,-(A7)
00020530 48 78 00 01              |Hx      |		PEA.L	0x1
00020534 48 6e ff fd              |Hn      |		PEA.L	(A6-0x3)
00020538 20 6e 00 0c              | n      |		MOVEA.L	(A6+0xc),A0
0002053c 48 50                    |HP      |		PEA.L	(A0)
0002053e 4e b9 00 01 03 8c        |N       |		JSR	CloseFile(a : L; VAR status : B; VAR file : File)
00020544 de fc 00 10              |        |		ADDA.W	#0x10,A7
00020548 20 6e 00 08              | n      |		MOVEA.L	(A6+0x8),A0
0002054c 52 90                    |R       |		ADDQ.L	#0x1,(A0)
0002054e 4c df 03 c1              |L       |		MOVEM.L	(A7)+,D0+D6+D7+A0+A1
00020552 4e 5e                    |N^      |		UNLK	A6
00020554 4e 75                    |Nu      |		RTS
00020556 ; --------------------------------------------------------------------------------------
00020556 ; OMSI PASCAL Function
00020556 ;    <LVAR -0x008 @ 4(r)>
00020556 ;    <LVAR -0x00c @ 4(r)>
00020556 ; --------------------------------------------------------------------------------------
00020556 4e 56 ff b2              |NV      |		LINK.W	A6,#0xffb2
0002055a bf d5                    |        |		CMPA.L	(A5),A7
0002055c 62 06                    |b       |		BHI	0x20564
0002055e 44 fc 00 02              |D       |		MOVE.W	#0x2,CCR
00020562 4e 76                    |Nv      |		TRAPV
00020564 de fc 00 42              |   B    |		ADDA.W	#0x42,A7
00020568 48 e7 c0 f0              |H       |		MOVEM.L	A3+A2+A1+A0+D1+D0,-(A7)
0002056c 45 ee ff f8              |E       |		LEA.L	(A6-0x8),A2
00020570 47 ee ff f4              |G       |		LEA.L	(A6-0xc),A3
00020574 72 01                    |r       |		MOVEQ.L	#0x01,D1
00020576 42 93                    |B       |		CLR.L	(A3)
00020578 5d 4f                    |]O      |		SUBQ.L	#0x6,A7
0002057a 20 4f                    | O      |		MOVEA.L	A7,A0
0002057c 43 fa fc 04              |C       |		LEA.L	0x20182,A1
00020580 70 04                    |p       |		MOVEQ.L	#0x04,D0
00020582 10 d9                    |        |		MOVE.B	(A1)+,(A0)+
00020584 51 c8 ff fc              |Q       |		DBF	D0,0x20582
00020588 1f 01                    |        |		MOVE.B	D1,-(A7)
0002058a 59 4f                    |YO      |		SUBQ.L	#0x4,A7
0002058c 48 6f 00 06              |Ho      |		PEA.L	(A7+0x6)
00020590 3f 01                    |?       |		MOVE.W	D1,-(A7)
00020592 3f 3c 00 05              |?<      |		MOVE.W	#0x5,-(A7)
00020596 4e b9 00 01 02 c4        |N       |		JSR	StringLit(Src : Pointer; Offset: W; Len : W) : String
0002059c 50 4f                    |PO      |		ADDQ.L	#0x8,A7
0002059e 48 52                    |HR      |		PEA.L	(A2)
000205a0 4e b9 00 01 04 58        |N    X  |		JSR	DirFirst(MOD c : Bool; a : String; VAR b : File)
000205a6 de fc 00 0a              |        |		ADDA.W	#0xa,A7
000205aa 5c 4f                    |\O      |		ADDQ.L	#0x6,A7
000205ac 20 52                    | R      |		MOVEA.L	(A2),A0
000205ae b0 c1                    |        |		CMPA.W	D1,A0
000205b0 67 1e                    |g       |		BEQ	0x205d0
000205b2 48 52                    |HR      |		PEA.L	(A2)
000205b4 48 53                    |HS      |		PEA.L	(A3)
000205b6 4e ba ff 14              |N       |		JSR	0x204cc
000205ba 5c 4f                    |\O      |		ADDQ.L	#0x6,A7
000205bc 42 17                    |B       |		CLR.B	(A7)
000205be 20 52                    | R      |		MOVEA.L	(A2),A0
000205c0 b0 c1                    |        |		CMPA.W	D1,A0
000205c2 66 02                    |f       |		BNE	0x205c6
000205c4 52 17                    |R       |		ADDQ.B	#0x1,(A7)
000205c6 48 52                    |HR      |		PEA.L	(A2)
000205c8 4e b9 00 01 04 5c        |N    \  |		JSR	DirNext(MOD a : Bool; VAR b : File)
000205ce 60 da                    |`       |		BRA	0x205aa
000205d0 41 fa fb c8              |A       |		LEA.L	0x2019a,A0
000205d4 70 08                    |p       |		MOVEQ.L	#0x08,D0
000205d6 3f 20                    |?       |		MOVE.W	-(A0),-(A7)
000205d8 51 c8 ff fc              |Q       |		DBF	D0,0x205d6
000205dc 51 4f                    |QO      |		SUBQ.L	#0x8,A7
000205de 2f 13                    |/       |		MOVE.L	(A3),-(A7)
000205e0 4e b9 00 01 02 e4        |N       |		JSR	Long2String(a : Long) : String
000205e6 48 6f 00 0c              |Ho      |		PEA.L	(A7+0xc)
000205ea 3f 01                    |?       |		MOVE.W	D1,-(A7)
000205ec 3f 3c 00 12              |?<      |		MOVE.W	#0x12,-(A7)
000205f0 4e b9 00 01 02 c4        |N       |		JSR	StringLit(Src : Pointer; Offset: W; Len : W) : String
000205f6 50 4f                    |PO      |		ADDQ.L	#0x8,A7
000205f8 4e b9 00 01 02 d0        |N       |		JSR	StringCat2(a, b : String) : String
000205fe 50 4f                    |PO      |		ADDQ.L	#0x8,A7
00020600 4e b9 00 01 03 e0        |N       |		JSR	WriteConsoleStringCrLf(str : String)
00020606 de fc 00 16              |        |		ADDA.W	#0x16,A7
0002060a 4c df 0f 03              |L       |		MOVEM.L	(A7)+,D0+D1+A0+A1+A2+A3
0002060e 4e 5e                    |N^      |		UNLK	A6
00020610 4e 75                    |Nu      |		RTS
00020612 ; --------------------------------------------------------------------------------------
00020612 ; OMSI PASCAL Function
00020612 ; --------------------------------------------------------------------------------------
00020612					START:
00020612 4f fa 00 08              |O       |		LEA.L	MAIN,A7
00020616 4e f9 00 01 02 80        |N       |		JMP	?start_program
0002061c					MAIN:
0002061c 4e b9 00 01 03 98        |N       |		JSR	FSCALL_10398
00020622 41 fa fb 9a              |A       |		LEA.L	0x201be,A0
00020626 70 08                    |p       |		MOVEQ.L	#0x08,D0
00020628 2f 20                    |/       |		MOVE.L	-(A0),-(A7)
0002062a 51 c8 ff fc              |Q       |		DBF	D0,0x20628
0002062e 59 4f                    |YO      |		SUBQ.L	#0x4,A7
00020630 48 6f 00 04              |Ho      |		PEA.L	(A7+0x4)
00020634 3f 3c 00 01              |?<      |		MOVE.W	#0x1,-(A7)
00020638 3f 3c 00 24              |?< $    |		MOVE.W	#0x24,-(A7)
0002063c 4e b9 00 01 02 c4        |N       |		JSR	StringLit(Src : Pointer; Offset: W; Len : W) : String
00020642 50 4f                    |PO      |		ADDQ.L	#0x8,A7
00020644 4e b9 00 01 03 e0        |N       |		JSR	WriteConsoleStringCrLf(str : String)
0002064a de fc 00 28              |   (    |		ADDA.W	#0x28,A7
0002064e 4e ba fd a6              |N       |		JSR	0x203f6
00020652 4e ba ff 02              |N       |		JSR	0x20556
00020656 42 27                    |B'      |		CLR.B	-(A7)
00020658 48 78 00 01              |Hx      |		PEA.L	0x1
0002065c 4e b9 00 01 03 b8        |N       |		JSR	PopProgram(status : Byte; msg : String)
00020662 5c 4f                    |\O      |		ADDQ.L	#0x6,A7
00020664 4e b9 00 01 02 84        |N       |		JSR	?exit
0002066a 57 6f 72 64 73 20 65 72  |Words er|		.TXT	'Words error :_'
00020678 ; --------------------------------------------------------------------------------------
00020678 ; OMSI PASCAL Function
00020678 ;    <LVAR  0x008 1(r)>
00020678 ; --------------------------------------------------------------------------------------
00020678					PROG_FAIL:
00020678 4e 56 ff d2              |NV      |		LINK.W	A6,#0xffd2
0002067c bf d5                    |        |		CMPA.L	(A5),A7
0002067e 62 06                    |b       |		BHI	0x20686
00020680 44 fc 00 02              |D       |		MOVE.W	#0x2,CCR
00020684 4e 76                    |Nv      |		TRAPV
00020686 de fc 00 2c              |   ,    |		ADDA.W	#0x2c,A7
0002068a 48 e7 80 80              |H       |		MOVEM.L	A0+D0,-(A7)
0002068e 41 fa ff e8              |A       |		LEA.L	PROG_FAIL,A0
00020692 70 06                    |p       |		MOVEQ.L	#0x06,D0
00020694 3f 20                    |?       |		MOVE.W	-(A0),-(A7)
00020696 51 c8 ff fc              |Q       |		DBF	D0,0x20694
0002069a 1f 3c 00 03              | <      |		MOVE.B	#0x03,-(A7)
0002069e 51 4f                    |QO      |		SUBQ.L	#0x8,A7
000206a0 48 6f 00 0a              |Ho      |		PEA.L	(A7+0xa)
000206a4 3f 3c 00 01              |?<      |		MOVE.W	#0x1,-(A7)
000206a8 3f 3c 00 0e              |?<      |		MOVE.W	#0xe,-(A7)
000206ac 4e b9 00 01 02 c4        |N       |		JSR	StringLit(Src : Pointer; Offset: W; Len : W) : String
000206b2 58 4f                    |XO      |		ADDQ.L	#0x4,A7
000206b4 10 2e 00 08              | .      |		MOVE.B	(A6+0x8),D0
000206b8 48 80                    |H       |		EXTB.W	D0
000206ba 48 c0                    |H       |		EXTW.L	D0
000206bc 2f 00                    |/       |		MOVE.L	D0,-(A7)
000206be 4e b9 00 01 02 e4        |N       |		JSR	Long2String(a : Long) : String
000206c4 58 4f                    |XO      |		ADDQ.L	#0x4,A7
000206c6 4e b9 00 01 02 d0        |N       |		JSR	StringCat2(a, b : String) : String
000206cc 50 4f                    |PO      |		ADDQ.L	#0x8,A7
000206ce 4e b9 00 01 03 b8        |N       |		JSR	PopProgram(status : Byte; msg : String)
000206d4 de fc 00 14              |        |		ADDA.W	#0x14,A7
000206d8 4c df 01 01              |L       |		MOVEM.L	(A7)+,D0+A0
000206dc 4e 5e                    |N^      |		UNLK	A6
000206de 4e 75                    |Nu      |		RTS
000206e0 42 6f 61 72 64 20 20 20  |Board   |		.TXT	'Board      :_ '
000206ee 45 78 70 65 72 69 6d 65  |Experime|		.TXT	'Experiment :_ '
000206fc 53 74 61 74 75 73 20 20  |Status  |		.TXT	'Status     :_ '
0002070a 45 78 70 65 72 69 6d 65  |Experime|		.TXT	'Experiment error :'
0002071c 46 61 74 61 6c 20 65 78  |Fatal ex|		.TXT	'Fatal experiment error. '
00020734 ; --------------------------------------------------------------------------------------
00020734 ; OMSI PASCAL Function
00020734 ;    <LVAR  0x00e 1(r)>
00020734 ;    <LVAR  0x00a 4(r)>
00020734 ;    <LVAR  0x008 1(r)>
00020734 ; --------------------------------------------------------------------------------------
00020734					EXP_FAIL:
00020734 4e 56 ff 8c              |NV      |		LINK.W	A6,#0xff8c
00020738 bf d5                    |        |		CMPA.L	(A5),A7
0002073a 62 06                    |b       |		BHI	0x20742
0002073c 44 fc 00 02              |D       |		MOVE.W	#0x2,CCR
00020740 4e 76                    |Nv      |		TRAPV
00020742 de fc 00 74              |   t    |		ADDA.W	#0x74,A7
00020746 48 e7 fc f8              |H       |		MOVEM.L	A4+A3+A2+A1+A0+D5+D4+D3+D2+D1+D0,-(A7)
0002074a 47 f9 00 01 02 c4        |G       |		LEA.L	StringLit(Src : Pointer; Offset: W; Len : W) : String,A3
00020750 49 f9 00 01 03 e0        |I       |		LEA.L	WriteConsoleStringCrLf(str : String),A4
00020756 72 01                    |r       |		MOVEQ.L	#0x01,D1
00020758 74 0d                    |t       |		MOVEQ.L	#0x0d,D2
0002075a 76 1e                    |v       |		MOVEQ.L	#0x1e,D3
0002075c 78 12                    |x       |		MOVEQ.L	#0x12,D4
0002075e 7a 0e                    |z       |		MOVEQ.L	#0x0e,D5
00020760 4e b9 00 01 03 dc        |N       |		JSR	WriteConsoleCrLf(void)
00020766 41 fa ff b4              |A       |		LEA.L	0x2071c,A0
0002076a 70 08                    |p       |		MOVEQ.L	#0x08,D0
0002076c 3f 20                    |?       |		MOVE.W	-(A0),-(A7)
0002076e 51 c8 ff fc              |Q       |		DBF	D0,0x2076c
00020772 59 4f                    |YO      |		SUBQ.L	#0x4,A7
00020774 48 6f 00 04              |Ho      |		PEA.L	(A7+0x4)
00020778 3f 01                    |?       |		MOVE.W	D1,-(A7)
0002077a 3f 04                    |?       |		MOVE.W	D4,-(A7)
0002077c 4e 93                    |N       |		JSR	(A3)
0002077e 50 4f                    |PO      |		ADDQ.L	#0x8,A7
00020780 4e 94                    |N       |		JSR	(A4)
00020782 50 4f                    |PO      |		ADDQ.L	#0x8,A7
00020784 20 4f                    | O      |		MOVEA.L	A7,A0
00020786 43 fa ff 58              |C  X    |		LEA.L	0x206e0,A1
0002078a 70 0c                    |p       |		MOVEQ.L	#0x0c,D0
0002078c 10 d9                    |        |		MOVE.B	(A1)+,(A0)+
0002078e 51 c8 ff fc              |Q       |		DBF	D0,0x2078c
00020792 51 4f                    |QO      |		SUBQ.L	#0x8,A7
00020794 48 6f 00 08              |Ho      |		PEA.L	(A7+0x8)
00020798 3f 01                    |?       |		MOVE.W	D1,-(A7)
0002079a 3f 02                    |?       |		MOVE.W	D2,-(A7)
0002079c 4e 93                    |N       |		JSR	(A3)
0002079e 54 4f                    |TO      |		ADDQ.L	#0x2,A7
000207a0 1e ae 00 0e              |        |		MOVE.B	(A6+0xe),(A7)
000207a4 4e b9 00 01 04 9c        |N       |		JSR	BoardName(address : B) : String
000207aa 54 4f                    |TO      |		ADDQ.L	#0x2,A7
000207ac 4e b9 00 01 02 d0        |N       |		JSR	StringCat2(a, b : String) : String
000207b2 50 4f                    |PO      |		ADDQ.L	#0x8,A7
000207b4 4e 94                    |N       |		JSR	(A4)
000207b6 de c4                    |        |		ADDA.W	D4,A7
000207b8 20 6e 00 0a              | n      |		MOVEA.L	(A6+0xa),A0
000207bc b0 c1                    |        |		CMPA.W	D1,A0
000207be 67 48                    |gH      |		BEQ	0x20808
000207c0 9e c5                    |        |		SUBA.W	D5,A7
000207c2 22 4f                    |"O      |		MOVEA.L	A7,A1
000207c4 45 fa ff 28              |E  (    |		LEA.L	0x206ee,A2
000207c8 70 0c                    |p       |		MOVEQ.L	#0x0c,D0
000207ca 12 da                    |        |		MOVE.B	(A2)+,(A1)+
000207cc 51 c8 ff fc              |Q       |		DBF	D0,0x207ca
000207d0 9e c3                    |        |		SUBA.W	D3,A7
000207d2 22 4f                    |"O      |		MOVEA.L	A7,A1
000207d4 41 e8 00 fc              |A       |		LEA.L	(A0+0xfc),A0
000207d8 70 1d                    |p       |		MOVEQ.L	#0x1d,D0
000207da 12 d8                    |        |		MOVE.B	(A0)+,(A1)+
000207dc 51 c8 ff fc              |Q       |		DBF	D0,0x207da
000207e0 51 4f                    |QO      |		SUBQ.L	#0x8,A7
000207e2 48 6f 00 26              |Ho &    |		PEA.L	(A7+0x26)
000207e6 3f 01                    |?       |		MOVE.W	D1,-(A7)
000207e8 3f 02                    |?       |		MOVE.W	D2,-(A7)
000207ea 4e 93                    |N       |		JSR	(A3)
000207ec 58 4f                    |XO      |		ADDQ.L	#0x4,A7
000207ee 48 6f 00 0c              |Ho      |		PEA.L	(A7+0xc)
000207f2 3f 01                    |?       |		MOVE.W	D1,-(A7)
000207f4 3f 03                    |?       |		MOVE.W	D3,-(A7)
000207f6 4e 93                    |N       |		JSR	(A3)
000207f8 50 4f                    |PO      |		ADDQ.L	#0x8,A7
000207fa 4e b9 00 01 02 d0        |N       |		JSR	StringCat2(a, b : String) : String
00020800 50 4f                    |PO      |		ADDQ.L	#0x8,A7
00020802 4e 94                    |N       |		JSR	(A4)
00020804 de fc 00 30              |   0    |		ADDA.W	#0x30,A7
00020808 9e c5                    |        |		SUBA.W	D5,A7
0002080a 20 4f                    | O      |		MOVEA.L	A7,A0
0002080c 43 fa fe ee              |C       |		LEA.L	0x206fc,A1
00020810 70 0c                    |p       |		MOVEQ.L	#0x0c,D0
00020812 10 d9                    |        |		MOVE.B	(A1)+,(A0)+
00020814 51 c8 ff fc              |Q       |		DBF	D0,0x20812
00020818 51 4f                    |QO      |		SUBQ.L	#0x8,A7
0002081a 48 6f 00 08              |Ho      |		PEA.L	(A7+0x8)
0002081e 3f 01                    |?       |		MOVE.W	D1,-(A7)
00020820 3f 02                    |?       |		MOVE.W	D2,-(A7)
00020822 4e 93                    |N       |		JSR	(A3)
00020824 54 4f                    |TO      |		ADDQ.L	#0x2,A7
00020826 1e ae 00 08              |        |		MOVE.B	(A6+0x8),(A7)
0002082a 4e b9 00 01 04 a2        |N       |		JSR	ExpStatus2Text(status.B, &String)
00020830 54 4f                    |TO      |		ADDQ.L	#0x2,A7
00020832 4e b9 00 01 02 d0        |N       |		JSR	StringCat2(a, b : String) : String
00020838 50 4f                    |PO      |		ADDQ.L	#0x8,A7
0002083a 4e 94                    |N       |		JSR	(A4)
0002083c 5d 4f                    |]O      |		SUBQ.L	#0x6,A7
0002083e 20 4f                    | O      |		MOVEA.L	A7,A0
00020840 43 fa fe da              |C       |		LEA.L	0x2071c,A1
00020844 70 16                    |p       |		MOVEQ.L	#0x16,D0
00020846 10 d9                    |        |		MOVE.B	(A1)+,(A0)+
00020848 51 c8 ff fc              |Q       |		DBF	D0,0x20846
0002084c 1f 3c 00 02              | <      |		MOVE.B	#0x02,-(A7)
00020850 59 4f                    |YO      |		SUBQ.L	#0x4,A7
00020852 48 6f 00 06              |Ho      |		PEA.L	(A7+0x6)
00020856 3f 01                    |?       |		MOVE.W	D1,-(A7)
00020858 3f 3c 00 17              |?<      |		MOVE.W	#0x17,-(A7)
0002085c 4e 93                    |N       |		JSR	(A3)
0002085e 50 4f                    |PO      |		ADDQ.L	#0x8,A7
00020860 4e b9 00 01 03 b8        |N       |		JSR	PopProgram(status : Byte; msg : String)
00020866 de c3                    |        |		ADDA.W	D3,A7
00020868 4c df 1f 3f              |L  ?    |		MOVEM.L	(A7)+,D0+D1+D2+D3+D4+D5+A0+A1+A2+A3+A4
0002086c 4e 5e                    |N^      |		UNLK	A6
0002086e 4e 75                    |Nu      |		RTS