|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 DFS Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 DFS Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 46080 (0xb400)
Types: M200
Notes: M200_FS
Names: »FS_0.M200«
└─⟦b4205821b⟧ Bits:30000743 8mm tape, Rational 1000, DFS, D_12_7_3 SEQ288
└─⟦this⟧ »FS_0.M200«
└─⟦this⟧ »FS_0.M200«
└─⟦bc1274df5⟧ Bits:30000750 8mm tape, Rational 1000, DFS backup from PAM's R1000
└─⟦this⟧ »FS_0.M200«
└─⟦this⟧ »FS_0.M200«
@ 10a50
_FSCALL_102b4
<LVAR 0x008 4(r)>
<POP 10a50-10c64 Body>
<POP 10a50-10a66 Prologue> Σ0 ↓
<POP 10a66-10a72 RegCacheLoad> Σ0 ↓
<POP 10a72-10aa6 Naked> Σ0 ↓ →0x10aba
<Const 0x10a72 0x0.4> Δ-4 {[##0]}
<MI 10a76 MOVEA.L (A7)+,A3> Δ+4 {}
<MI 10a78 MOVEA.L (A6+0x8),A0> {}
<MI 10a7c MOVEA.L (A0),A1> {}
<POP 10a7e-10a80 StackAdj> Δ-4 {[-4-]}
<MI 10a80 MOVE.B (A1+0x34),(A7)> {[-4-]}
<MI 10a84 MOVE.B (A1+0x35),(A7+0x1)> {[-4-]}
<MI 10a8a MOVE.B (A1+0x36),(A7+0x2)> {[-4-]}
<MI 10a90 MOVE.B (A1+0x37),(A7+0x3)> {[-4-]}
<MI 10a96 MOVEA.L (A7)+,A4> Δ+4 {}
<MI 10a98 MOVE.L (A1+0x3e),D6> {}
<MI 10a9c MOVE.W (A0+0x4),D0> {}
<MI 10aa0 ANDI.W #0x0200,D0> {}
<MI 10aa4 BEQ 0x10aba> {}
<POP 10aa6-10aba Naked> Σ0 ↓
<MI 10aa6 MOVE.L D6,-(A7)> Δ-4 {[4, 'D6']}
<MI 10aa8 LEA.L (A0+0x4),A1> {[4, 'D6']}
<MI 10aac MOVE.L A1,-(A7)> Δ-4 {[4, 'D6']|[4, 'A1']}
<Const 0x10aae 0x2.2> Δ-2 {[4, 'D6']|[4, 'A1']|[#2]}
<Call 0x10ab0 0x10238> {[4, 'D6']|[4, 'A1']|[#2]}
KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
<POP 10ab6-10aba StackAdj> Δ+10 {}
<POP 10aba-10b06 Naked> Σ0 Δ-14 ↓ ←0x10a72
<Call 0x10aba 0x1540a> {}
_WriteConsoleCrLf(void)
<Blob 0x10ac0 [14] @> Δ-14 {[«14""»]}
<MI 10acc MOVE.W (A0+0x4),D0> {[«14""»]}
<MI 10ad0 ANDI.W #0x00ff,D0> {[«14""»]}
<POP 10ad4-10ad6 StackAdj> Δ-8 {[«14""»]|[-8-]}
<Lit 0x10ad6 14> {[«14""»]|[-4-]|[$$PASCAL error #]}
<POP 10ae0-10ae2 StackAdj> Δ-4 {[«14""»]|[-4-]|[$$PASCAL error #]|[-4-]}
<MI 10ae2 CLR.L D1> {[«14""»]|[-4-]|[$$PASCAL error #]|[-4-]}
<MI 10ae4 MOVE.W D0,D1> {[«14""»]|[-4-]|[$$PASCAL error #]|[-4-]}
<MI 10ae6 MOVE.L D1,-(A7)> Δ-4 {[«14""»]|[-4-]|[$$PASCAL error #]|[-4-]|[4, 'D1']}
<Call 0x10ae8 0x110c0> {[«14""»]|[-4-]|[$$PASCAL error #]|[-4-]|[4, 'D1']}
_Long2String(a : Long) : String
<POP 10aee-10af0 StackAdj> Δ+4 {[«14""»]|[-4-]|[$$PASCAL error #]|[-4-]}
<Call 0x10af0 0x10f2c> {[«14""»]|[-4-]|[$$PASCAL error #]|[-4-]}
_StringCat2(a, b : String) : String
<POP 10af6-10af8 StackAdj> Δ+8 {[«14""»]|[-4-]}
<Call 0x10af8 0x15392> {[«14""»]|[-4-]}
_WriteConsoleString(str : String)
<POP 10afe-10b00 StackAdj> Δ+4 {[«14""»]}
<MI 10b00 CMPI.W #0x000a,D0> {[«14""»]}
<MI 10b04 BCC 0x10b12> {[«14""»]}
<POP 10b06-10b50 Naked> Σ-14 Δ+14 ↓
<Const 0x10b06 0x20.2> Δ-2 {[-14-]|[#32]}
<Call 0x10b0a 0x15210> {[-14-]|[#32]}
_WriteConsoleChar(chr : char)
<POP 10b10-10b11 StackAdj> Δ+16 ↓ {}
<Blob 0x10b11 [14] @> Δ-14 {[«14""»]}
<POP 10b20-10b22 StackAdj> Δ-8 {[«14""»]|[-8-]}
<Lit 0x10b22 13> {[«14""»]|[-4-]|[$$ at location_]}
<MI 10b2e MOVE.L D6,(A7)> {[«14""»]|[-4-]|[4, 'D6']}
<POP 10b2c-10b2e StackAdj> Δ-8 {[«14""»]|[-4-]|[4, 'D6']|[-8-]}
<Const 0x10b30 0x8.4> Δ-4 {[«14""»]|[-4-]|[4, 'D6']|[-8-]|[##8]}
<Call 0x10b34 0x111ce> {[«14""»]|[-4-]|[4, 'D6']|[-8-]|[##8]}
_Long2HexString(val : Long; ndig : Long) : String
<POP 10b3a-10b3c StackAdj> Δ+8 {[«14""»]|[-4-]|[4, 'D6']|[-4-]}
<Call 0x10b3c 0x10f2c> {[«14""»]|[-4-]|[4, 'D6']|[-4-]}
_StringCat2(a, b : String) : String
<POP 10b42-10b44 StackAdj> Δ+8 {[«14""»]|[-4-]}
<Call 0x10b44 0x15392> {[«14""»]|[-4-]}
_WriteConsoleString(str : String)
<POP 10b4a-10b4e StackAdj> Δ+18 {}
<MI 10b4e MOVEQ.L #0x01,D6> {}
<POP 10b50-10b56 Naked> Σ0 ↓ →0x10bfe ←0x10bb2
<MI 10b50 CMPA.L A3,A4> {}
<MI 10b52 BEQ 0x10bfe> {}
<POP 10b56-10b58 Naked> Σ0 ↓
<MI 10b56 MOVEQ.L #0x00,D7> {}
<POP 10b58-10b64 Naked> Σ0 ↓ →0x10b58 ←0x10b58
<MI 10b58 MOVE.L (A4+0x4),D5> {}
<MI 10b5c MOVEA.L (A4),A4> {}
<MI 10b5e ADDQ.L #0x1,D7> {}
<MI 10b60 CMP.L D6,D5> {}
<MI 10b62 BEQ 0x10b58> {}
<POP 10b64-10b6a Naked> Σ0 ↓ →0x10bb2
<MI 10b64 MOVE.L D5,D6> {}
<MI 10b66 CMP.L #0x01,D7> {}
<MI 10b68 BLE 0x10bb2> {}
<POP 10b6a-10bb2 Naked> Σ0 ↓
<Blob 0x10b6a [2] @> Δ-2 {[«2""»]}
<Blob 0x10b6e [8] @> Δ-8 {[«2""»]|[«8""»]}
<POP 10b7e-10b80 StackAdj> Δ-8 {[«2""»]|[«8""»]|[-8-]}
<Lit 0x10b80 2> {[«2""»]|[«8""»]|[-4-]|[$$ (]}
<MI 10b8a MOVE.L D7,(A7)> {[«2""»]|[«8""»]|[-4-]|[4, 'D7']}
<POP 10b88-10b8a StackAdj> Δ-8 {[«2""»]|[«8""»]|[-4-]|[4, 'D7']|[-8-]}
<Call 0x10b8c 0x110c0> {[«2""»]|[«8""»]|[-4-]|[4, 'D7']|[-8-]}
_Long2String(a : Long) : String
<Lit 0x10b92 7> {[«2""»]|[«8""»]|[-4-]|[4, 'D7']|[-4-]|[$$ times)]}
<Call 0x10ba0 0x10fca> {[«2""»]|[«8""»]|[-4-]|[4, 'D7']|[-4-]|[$$ times)]}
_StringCat3(a, b, c : String) : String
<POP 10ba6-10baa StackAdj> Δ+12 {[«2""»]|[«8""»]|[-4-]}
<Call 0x10baa 0x15392> {[«2""»]|[«8""»]|[-4-]}
_WriteConsoleString(str : String)
<POP 10bb0-10bb2 StackAdj> Δ+14 {}
<POP 10bb2-10bfe Naked> Σ0 →0x10b50 ←0x10b64
<Call 0x10bb2 0x1540a> {}
_WriteConsoleCrLf(void)
<Blob 0x10bb8 [30] @> Δ-30 {[«30""»]}
<POP 10bca-10bcc StackAdj> Δ-4 {[«30""»]|[-4-]}
<Lit 0x10bcc 29> {[«30""»]|[$$Last called from location_]}
<Call 0x10bda 0x15392> {[«30""»]|[$$Last called from location_]}
_WriteConsoleString(str : String)
<POP 10be0-10be4 StackAdj> Δ+26 {[-8-]}
<MI 10be4 MOVE.L D6,(A7)> {[-4-]|[4, 'D6']}
<Const 0x10be6 0x8.4> Δ-4 {[-4-]|[4, 'D6']|[##8]}
<Call 0x10bea 0x111ce> {[-4-]|[4, 'D6']|[##8]}
_Long2HexString(val : Long; ndig : Long) : String
<POP 10bf0-10bf2 StackAdj> Δ+8 {[-4-]}
<Call 0x10bf2 0x15392> {[-4-]}
_WriteConsoleString(str : String)
<POP 10bf8-10bfa StackAdj> Δ+4 {}
<MI 10bfa BRA 0x10b50> {}
<POP 10bfe-10c5c Naked> Σ0 ↓ ←0x10b50
<Call 0x10bfe 0x1540a> {}
_WriteConsoleCrLf(void)
<Const 0x10c04 0x9896.4> Δ-4 {[##39062]}
<Call 0x10c0a 0x10224> {[##39062]}
KC12_Sleep(dur: Long)
<POP 10c10-10c12 StackAdj> Δ+4 {}
<Blob 0x10c12 [14] @> Δ-14 {[«14""»]}
<Const 0x10c1e 0x7.2> Δ-2 {[«14""»]|[#7]}
<POP 10c22-10c24 StackAdj> Δ-8 {[«14""»]|[#7]|[-8-]}
<Lit 0x10c24 14> {[«14""»]|[#7]|[-4-]|[$$PASCAL error #]}
<POP 10c2e-10c30 StackAdj> Δ-4 {[«14""»]|[#7]|[-4-]|[$$PASCAL error #]|[-4-]}
<MI 10c30 MOVEA.L (A6+0x8),A0> {[«14""»]|[#7]|[-4-]|[$$PASCAL error #]|[-4-]}
<MI 10c34 MOVE.W (A0+0x4),D0> {[«14""»]|[#7]|[-4-]|[$$PASCAL error #]|[-4-]}
<MI 10c38 ANDI.W #0x00ff,D0> {[«14""»]|[#7]|[-4-]|[$$PASCAL error #]|[-4-]}
<MI 10c3c CLR.L D1> {[«14""»]|[#7]|[-4-]|[$$PASCAL error #]|[-4-]}
<MI 10c3e MOVE.W D0,D1> {[«14""»]|[#7]|[-4-]|[$$PASCAL error #]|[-4-]}
<MI 10c40 MOVE.L D1,-(A7)> Δ-4 {[«14""»]|[#7]|[-4-]|[$$PASCAL error #]|[-4-]|[4, 'D1']}
<Call 0x10c42 0x110c0> {[«14""»]|[#7]|[-4-]|[$$PASCAL error #]|[-4-]|[4, 'D1']}
_Long2String(a : Long) : String
<POP 10c48-10c4a StackAdj> Δ+4 {[«14""»]|[#7]|[-4-]|[$$PASCAL error #]|[-4-]}
<Call 0x10c4a 0x10f2c> {[«14""»]|[#7]|[-4-]|[$$PASCAL error #]|[-4-]}
_StringCat2(a, b : String) : String
<POP 10c50-10c52 StackAdj> Δ+8 {[«14""»]|[#7]|[-4-]}
<Call 0x10c52 0x14e18> {[«14""»]|[#7]|[-4-]}
_PopProgram(status : Byte; msg : String)
<POP 10c58-10c5c StackAdj> Δ+20 {}
<POP 10c5c-10c64 Epilogue> Σ0
@ 10cfa
_NewString(VAR a : String)
<LVAR 0x008 4(r)>
<POP 10cfa-10d36 Body>
<POP 10cfa-10d10 Prologue> Σ0 ↓
<POP 10d10-10d2e Naked> Σ0 ↓
<MI 10d10 MOVEA.L (A6+0x8),A0> {}
<MI 10d14 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Const 0x10d16 0x80.4> Δ-4 {[4, '^(A0)']|[##128]}
<Call 0x10d1a 0x10856> {[4, '^(A0)']|[##128]}
_Malloc1(length : Long) : Pointer
<POP 10d20-10d22 StackAdj> Δ+8 {}
<MI 10d22 MOVEA.L (A0),A0> {}
<MallocCheck 0x10d24 A0> {}
<MI 10d2c CLR.W (A0)> {}
<POP 10d2e-10d36 Epilogue> Σ0
@ 10d36
_FreeString(VAR a : String)
<LVAR 0x008 4(r)>
<POP 10d36-10d66 Body>
<POP 10d36-10d4c Prologue> Σ0 ↓
<POP 10d4c-10d5e Naked> Σ0 ↓
<MI 10d4c MOVEA.L (A6+0x8),A0> {}
<MI 10d50 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Const 0x10d52 0x80.4> Δ-4 {[4, '^(A0)']|[##128]}
<Call 0x10d56 0x108fa> {[4, '^(A0)']|[##128]}
_Free2(a : Pointer; b : Long)
<POP 10d5c-10d5e StackAdj> Δ+8 {}
<POP 10d5e-10d66 Epilogue> Σ0
@ 10d66
_AppendChar(MOD b : String; a : char)
<LVAR 0x00a 4(r)>
<LVAR 0x008 1(r)>
<POP 10d66-10da4 Body>
<POP 10d66-10d7c Prologue> Σ0 ↓
<POP 10d7c-10d90 Naked> Σ0 ↓ →0x10d9c
<MI 10d7c MOVEA.L (A6+0xa),A0> {}
<MallocCheck 0x10d80 A0> {}
<MI 10d88 MOVE.W (A0),D0> {}
<MI 10d8a CMPI.W #0x007e,D0> {}
<MI 10d8e BGE 0x10d9c> {}
<POP 10d90-10d9c Naked> Σ0 ↓
<MI 10d90 EXTW.L D0> {}
<MI 10d92 ADDQ.L #0x1,D0> {}
<MI 10d94 MOVE.W D0,(A0)> {}
<MI 10d96 MOVE.B (A6+0x8),(A0+D0.W+#0x1)> {}
<POP 10d9c-10da4 Epilogue> Σ0 ←0x10d7c
@ 10da4
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<LVAR 0x010 4(w)>
<LVAR 0x00c 4(r)>
<LVAR 0x00a 2(r)>
<LVAR 0x008 2(r)>
<LVAR -0x004 @ 4(r)>
<POP 10da4-10e62 Body>
<POP 10da4-10dba Prologue> Σ0 ↓
<POP 10dba-10dc6 RegCacheLoad> Σ0 ↓
<POP 10dc6-10de2 Naked> Σ0 Δ-8 ↓
<Pointer.fp 0x10dc6 <LVAR -0x004 @ 4(r)>> Δ-4 {[@@-4]}
<Call 0x10dc8 0x10cfa> {[@@-4]}
_NewString(VAR a : String)
<POP 10dcc-10dce StackAdj> Δ+4 {}
<MI 10dce MOVEA.L (A6-0x4),A0> {}
<MallocCheck 0x10dd0 A0> {}
<MI 10dd8 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 10dda MOVE.W (A6+0x8),D0> {[4, 'A0']}
<MI 10ddc EXTW.L D0> {[4, 'A0']}
<MI 10dde MOVE.L D0,-(A7)> Δ-4 {[4, 'A0']|[4, 'D0']}
<MI 10de0 MOVEQ.L #0x01,D7> {[4, 'A0']|[4, 'D0']}
<POP 10de2-10de6 Naked> Σ-8 ↓ →0x10e02 ←0x10de6
<MI 10de2 CMP.L (A7),D7> {[-8-]}
<MI 10de4 BGT 0x10e02> {[-8-]}
<POP 10de6-10e02 Naked> Σ-8 ↓ →0x10de2
<MI 10de6 MOVEA.L (A7+0x4),A0> {[-8-]}
<MI 10dea MOVEA.L (A6+0xc),A1> {[-8-]}
<MI 10dee MOVE.W (A6+0xa),D0> {[-8-]}
<MI 10df2 EXTW.L D0> {[-8-]}
<MI 10df4 NEG.L D0> {[-8-]}
<MI 10df6 ADD.L D7,D0> {[-8-]}
<MI 10df8 MOVE.B (A1+D0.L),(A0+D7.L+#0x1)> {[-8-]}
<MI 10dfe ADDQ.L #0x1,D7> {[-8-]}
<MI 10e00 BVC 0x10de2> {[-8-]}
<POP 10e02-10e0e Naked> Σ-8 Δ+4 ↓ ←0x10de2
<POP 10e02-10e04 StackAdj> Δ+4 {[-4-]}
<MI 10e04 MOVEA.L (A7),A0> {[-4-]}
<MI 10e06 MOVE.W (A6+0x8),(A0)> {[-4-]}
<MI 10e08 MOVE.W (A6+0x8),D0> {[-4-]}
<MI 10e0a EXTW.L D0> {[-4-]}
<MI 10e0c MOVE.L D0,D7> {[-4-]}
<POP 10e0e-10e12 Naked> Σ-4 ↓ →0x10e30 ←0x10e2c
<MI 10e0e CMP.L #0x01,D7> {[-4-]}
<MI 10e10 BLT 0x10e30> {[-4-]}
<POP 10e12-10e1c Naked> Σ-4 ↓ →0x10e20
<MI 10e12 MOVEA.L (A7),A0> {[-4-]}
<MI 10e14 MOVE.B (A0+D7.L+#0x1),D0> {[-4-]}
<MI 10e18 CMP.B #0x20,D0> {[-4-]}
<MI 10e1a BEQ 0x10e20> {[-4-]}
<POP 10e1c-10e20 Naked> Σ-4 ↓ →0x10e2a
<MI 10e1c TST.B D0> {[-4-]}
<MI 10e1e BNE 0x10e2a> {[-4-]}
<POP 10e20-10e2a Naked> Σ-4 →0x10e2c ←0x10e12
<MI 10e20 MOVE.W (A0),D0> {[-4-]}
<MI 10e22 EXTW.L D0> {[-4-]}
<MI 10e24 SUBQ.L #0x1,D0> {[-4-]}
<MI 10e26 MOVE.W D0,(A0)> {[-4-]}
<MI 10e28 BRA 0x10e2c> {[-4-]}
<POP 10e2a-10e2c Naked> Σ-4 →0x10e30 ←0x10e1c
<MI 10e2a BRA 0x10e30> {[-4-]}
<POP 10e2c-10e30 Naked> Σ-4 ↓ →0x10e0e ←0x10e20
<MI 10e2c SUBQ.L #0x1,D7> {[-4-]}
<MI 10e2e BVC 0x10e0e> {[-4-]}
<POP 10e30-10e38 Naked> Σ-4 ↓ ←0x10e0e ←0x10e2a
<MI 10e30 MOVEA.L (A7),A0> {[-4-]}
<MI 10e32 MOVE.W (A0),D0> {[-4-]}
<MI 10e34 EXTW.L D0> {[-4-]}
<MI 10e36 MOVE.L D0,D7> {[-4-]}
<POP 10e38-10e3c Naked> Σ-4 ↓ →0x10e54 ←0x10e50
<MI 10e38 CMP.L #0x01,D7> {[-4-]}
<MI 10e3a BLT 0x10e54> {[-4-]}
<POP 10e3c-10e48 Naked> Σ-4 ↓ →0x10e4e
<MI 10e3c MOVEA.L (A7),A0> {[-4-]}
<MI 10e3e MOVE.B (A0+D7.L+#0x1),D0> {[-4-]}
<MI 10e42 CMPI.B #0x5f,D0> {[-4-]}
<MI 10e46 BNE 0x10e4e> {[-4-]}
<POP 10e48-10e4e Naked> Σ-4 →0x10e50
<MI 10e48 MOVE.B #0x20,(A0+D7.L+#0x1)> {[-4-]}
<MI 10e4c BRA 0x10e50> {[-4-]}
<POP 10e4e-10e50 Naked> Σ-4 →0x10e54 ←0x10e3c
<MI 10e4e BRA 0x10e54> {[-4-]}
<POP 10e50-10e54 Naked> Σ-4 ↓ →0x10e38 ←0x10e48
<MI 10e50 SUBQ.L #0x1,D7> {[-4-]}
<MI 10e52 BVC 0x10e38> {[-4-]}
<POP 10e54-10e5a Naked> Σ-4 Δ+4 ↓ ←0x10e38 ←0x10e4e
<POP 10e54-10e56 StackAdj> Δ+4 {}
<MI 10e56 MOVE.L (A6-0x4),(A6+0x10)> {}
<POP 10e5a-10e62 Epilogue> Σ0
@ 10e62
_StringEqual(a, b : String) : Byte
<LVAR 0x010 1(rw)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 10e62-10eda Body> Δ-8
<POP 10e62-10e78 Prologue> Σ0 ↓
<POP 10e78-10e9c Naked> Σ0 Δ-4 ↓ →0x10ed0
<MI 10e78 CLR.B (A6+0x10)> {}
<MI 10e7c MOVEA.L (A6+0xc),A0> {}
<MallocCheck 0x10e80 A0> {}
<MI 10e88 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 10e8a MOVEA.L (A6+0x8),A1> {[4, 'A0']}
<MallocCheck 0x10e8e A1> {[4, 'A0']}
<MI 10e96 MOVE.W (A0),D0> {[4, 'A0']}
<MI 10e98 CMP.W (A1),D0> {[4, 'A0']}
<MI 10e9a BNE 0x10ed0> {[4, 'A0']}
<POP 10e9c-10ea2 Naked> Σ-4 Δ-4 ↓
<MI 10e9c EXTW.L D0> {[-4-]}
<MI 10e9e MOVE.L D0,-(A7)> Δ-4 {[-4-]|[4, 'D0']}
<MI 10ea0 MOVEQ.L #0x01,D7> {[-4-]|[4, 'D0']}
<POP 10ea2-10ea6 Naked> Σ-8 ↓ →0x10ec8 ←0x10ec4
<MI 10ea2 CMP.L (A7),D7> {[-8-]}
<MI 10ea4 BGT 0x10ec8> {[-8-]}
<POP 10ea6-10ec0 Naked> Σ-8 ↓ →0x10ec4
<MI 10ea6 MOVEA.L (A7+0x4),A0> {[-8-]}
<MI 10eaa MOVEA.L (A6+0x8),A1> {[-8-]}
<MallocCheck 0x10eae A1> {[-8-]}
<MI 10eb6 MOVE.B (A0+D7.L+#0x1),D0> {[-8-]}
<MI 10eba CMP.B (A1+D7.L+#0x1),D0> {[-8-]}
<MI 10ebe BEQ 0x10ec4> {[-8-]}
<POP 10ec0-10ec4 Naked> Σ-8 Δ+8 →0x10ed2
<POP 10ec0-10ec2 StackAdj> Δ+8 {}
<MI 10ec2 BRA 0x10ed2> {}
<POP 10ec4-10ec8 Naked> Σ-8 ↓ →0x10ea2 ←0x10ea6
<MI 10ec4 ADDQ.L #0x1,D7> {[-8-]}
<MI 10ec6 BVC 0x10ea2> {[-8-]}
<POP 10ec8-10ed0 Naked> Σ-8 Δ+4 ↓ ←0x10ea2
<POP 10ec8-10eca StackAdj> Δ+4 {[-4-]}
<MI 10eca MOVE.B #0x01,(A6+0x10)> {[-4-]}
<POP 10ed0-10ed2 Naked> Σ-4 Δ+4 ↓ ←0x10e78
<POP 10ed0-10ed2 StackAdj> Δ+4 {}
<POP 10ed2-10eda Epilogue> Σ0 ←0x10ec0
@ 10eda
_StringDup(a : String) : String
<LVAR 0x00c 4(w)>
<LVAR 0x008 4(r)>
<LVAR -0x004 @ 4(r)>
<POP 10eda-10f2c Body>
<POP 10eda-10ef0 Prologue> Σ0 ↓
<POP 10ef0-10ef4 RegCacheLoad> Σ0 ↓
<POP 10ef4-10f24 Naked> Σ0 ↓
<Pointer.fp 0x10ef4 <LVAR -0x004 @ 4(r)>> Δ-4 {[@@-4]}
<Const 0x10ef6 0x80.4> Δ-4 {[@@-4]|[##128]}
<Call 0x10efa 0x10856> {[@@-4]|[##128]}
_Malloc1(length : Long) : Pointer
<POP 10f00-10f02 StackAdj> Δ+8 {}
<MI 10f02 MOVEA.L (A6-0x4),A0> {}
<MallocCheck 0x10f04 A0> {}
<MI 10f0c MOVEA.L (A6+0x8),A1> {}
<MallocCheck 0x10f10 A1> {}
<BlockMove 128,A1,A0> {}
<MI 10f20 MOVE.L (A6-0x4),(A6+0xc)> {}
<POP 10f24-10f2c Epilogue> Σ0
@ 10f2c
_StringCat2(a, b : String) : String
<LVAR 0x010 4(w)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 @ 4(r)>
<POP 10f2c-10fca Body>
<POP 10f2c-10f42 Prologue> Σ0 ↓
<POP 10f42-10f48 RegCacheLoad> Σ0 ↓
<POP 10f48-10f70 Naked> Σ0 Δ-4 ↓ →0x10f78
<MI 10f48 MOVEA.L (A6+0xc),A0> {}
<MallocCheck 0x10f4c A0> {}
<MI 10f54 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 10f56 MOVEA.L (A6+0x8),A1> {[4, 'A0']}
<MallocCheck 0x10f58 A1> {[4, 'A0']}
<MI 10f60 MOVE.W (A0),D0> {[4, 'A0']}
<MI 10f62 EXTW.L D0> {[4, 'A0']}
<MI 10f64 MOVE.W (A1),D1> {[4, 'A0']}
<MI 10f66 EXTW.L D1> {[4, 'A0']}
<MI 10f68 MOVE.L D0,D2> {[4, 'A0']}
<MI 10f6a ADD.L D1,D2> {[4, 'A0']}
<MI 10f6c CMP.L #0x7e,D2> {[4, 'A0']}
<MI 10f6e BLE 0x10f78> {[4, 'A0']}
<POP 10f70-10f78 Naked> Σ-4 →0x10f7a
<MI 10f70 NEG.L D0> {[-4-]}
<MI 10f72 ADD.L #0x7e,D0> {[-4-]}
<MI 10f74 MOVE.L D0,D6> {[-4-]}
<MI 10f76 BRA 0x10f7a> {[-4-]}
<POP 10f78-10f7a Naked> Σ-4 ↓ ←0x10f48
<MI 10f78 MOVE.L D1,D6> {[-4-]}
<POP 10f7a-10f7e Naked> Σ-4 Δ-4 ↓ ←0x10f70
<MI 10f7a MOVE.L D6,-(A7)> Δ-4 {[-4-]|[4, 'D6']}
<MI 10f7c MOVEQ.L #0x01,D7> {[-4-]|[4, 'D6']}
<POP 10f7e-10f82 Naked> Σ-8 ↓ →0x10fa0 ←0x10f82
<MI 10f7e CMP.L (A7),D7> {[-8-]}
<MI 10f80 BGT 0x10fa0> {[-8-]}
<POP 10f82-10fa0 Naked> Σ-8 ↓ →0x10f7e
<MI 10f82 MOVEA.L (A7+0x4),A0> {[-8-]}
<MI 10f86 MOVE.W (A0),D0> {[-8-]}
<MI 10f88 EXTW.L D0> {[-8-]}
<MI 10f8a ADD.L D7,D0> {[-8-]}
<MI 10f8c MOVEA.L (A6+0x8),A1> {[-8-]}
<MallocCheck 0x10f8e A1> {[-8-]}
<MI 10f96 MOVE.B (A1+D7.L+#0x1),(A0+D0.L+#0x1)> {[-8-]}
<MI 10f9c ADDQ.L #0x1,D7> {[-8-]}
<MI 10f9e BVC 0x10f7e> {[-8-]}
<POP 10fa0-10fc2 Naked> Σ-8 Δ+8 ↓ ←0x10f7e
<POP 10fa0-10fa2 StackAdj> Δ+4 {[-4-]}
<MI 10fa2 MOVEA.L (A7),A0> {[-4-]}
<MI 10fa4 MOVE.W (A0),D0> {[-4-]}
<MI 10fa6 EXTW.L D0> {[-4-]}
<MI 10fa8 ADD.L D6,D0> {[-4-]}
<MI 10faa MOVE.W D0,(A0)> {[-4-]}
<Pointer.fp 0x10fac <LVAR 0x008 @ 4(r)>> Δ-4 {[-4-]|[@@8]}
<Const 0x10fae 0x80.4> Δ-4 {[-4-]|[@@8]|[##128]}
<Call 0x10fb2 0x108fa> {[-4-]|[@@8]|[##128]}
_Free2(a : Pointer; b : Long)
<POP 10fb8-10fba StackAdj> Δ+8 {[-4-]}
<MI 10fba MOVE.L (A6+0xc),(A6+0x10)> {[-4-]}
<POP 10fc0-10fc2 StackAdj> Δ+4 {}
<POP 10fc2-10fca Epilogue> Σ0
@ 10fca
_StringCat3(a, b, c : String) : String
<LVAR 0x014 4(w)>
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 10fca-11000 Body>
<POP 10fca-10fdc Prologue> Σ0 ↓
<POP 10fdc-10ffc Naked> Σ0 ↓
<POP 10fdc-10fde StackAdj> Δ-4 {[-4-]}
<MI 10fde MOVE.L (A6+0x10),-(A7)> Δ-4 {[-4-]|[4, '(A6+0x10)']}
<POP 10fe2-10fe4 StackAdj> Δ-4 {[-4-]|[4, '(A6+0x10)']|[-4-]}
<MI 10fe4 MOVE.L (A6+0xc),-(A7)> Δ-4 {[-4-]|[4, '(A6+0x10)']|[-4-]|[4, '(A6+0xc)']}
<MI 10fe8 MOVE.L (A6+0x8),-(A7)> Δ-4 {[-4-]|[4, '(A6+0x10)']|[-4-]|[4, '(A6+0xc)']|[4, '(A6+0x8)']}
<Call 0x10fec 0x10f2c> {[-4-]|[4, '(A6+0x10)']|[-4-]|[4, '(A6+0xc)']|[4, '(A6+0x8)']}
_StringCat2(a, b : String) : String
<POP 10ff0-10ff2 StackAdj> Δ+8 {[-4-]|[4, '(A6+0x10)']|[-4-]}
<Call 0x10ff2 0x10f2c> {[-4-]|[4, '(A6+0x10)']|[-4-]}
_StringCat2(a, b : String) : String
<POP 10ff6-10ff8 StackAdj> Δ+8 {[-4-]}
<MI 10ff8 MOVE.L (A7)+,(A6+0x14)> Δ+4 {}
<POP 10ffc-11000 Epilogue> Σ0
@ 11000
_StringCat4(a, b, c, d : String) : String
<LVAR 0x018 4(w)>
<LVAR 0x014 4(r)>
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 11000-1103c Body>
<POP 11000-11012 Prologue> Σ0 ↓
<POP 11012-11038 Naked> Σ0 ↓
<POP 11012-11014 StackAdj> Δ-4 {[-4-]}
<MI 11014 MOVE.L (A6+0x14),-(A7)> Δ-4 {[-4-]|[4, '(A6+0x14)']}
<POP 11018-1101a StackAdj> Δ-4 {[-4-]|[4, '(A6+0x14)']|[-4-]}
<MI 1101a MOVE.L (A6+0x10),-(A7)> Δ-4 {[-4-]|[4, '(A6+0x14)']|[-4-]|[4, '(A6+0x10)']}
<MI 1101e MOVE.L (A6+0xc),-(A7)> Δ-4 {[-4-]|[4, '(A6+0x14)']|[-4-]|[4, '(A6+0x10)']|[4, '(A6+0xc)']}
<MI 11022 MOVE.L (A6+0x8),-(A7)> Δ-4 {[-4-]|[4, '(A6+0x14)']|[-4-]|[4, '(A6+0x10)']|[4, '(A6+0xc)']|[4, '(A6+0x8)']}
<Call 0x11026 0x10fca> {[-4-]|[4, '(A6+0x14)']|[-4-]|[4, '(A6+0x10)']|[4, '(A6+0xc)']|[4, '(A6+0x8)']}
_StringCat3(a, b, c : String) : String
<POP 1102a-1102e StackAdj> Δ+12 {[-4-]|[4, '(A6+0x14)']|[-4-]}
<Call 0x1102e 0x10f2c> {[-4-]|[4, '(A6+0x14)']|[-4-]}
_StringCat2(a, b : String) : String
<POP 11032-11034 StackAdj> Δ+8 {[-4-]}
<MI 11034 MOVE.L (A7)+,(A6+0x18)> Δ+4 {}
<POP 11038-1103c Epilogue> Σ0
@ 1103c
_StringCat5(a, b, c, d, e : String) : String
<LVAR 0x01c 4(w)>
<LVAR 0x018 4(r)>
<LVAR 0x014 4(r)>
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 1103c-1107c Body>
<POP 1103c-1104e Prologue> Σ0 ↓
<POP 1104e-11078 Naked> Σ0 ↓
<POP 1104e-11050 StackAdj> Δ-4 {[-4-]}
<MI 11050 MOVE.L (A6+0x18),-(A7)> Δ-4 {[-4-]|[4, '(A6+0x18)']}
<POP 11054-11056 StackAdj> Δ-4 {[-4-]|[4, '(A6+0x18)']|[-4-]}
<MI 11056 MOVE.L (A6+0x14),-(A7)> Δ-4 {[-4-]|[4, '(A6+0x18)']|[-4-]|[4, '(A6+0x14)']}
<MI 1105a MOVE.L (A6+0x10),-(A7)> Δ-4 {[-4-]|[4, '(A6+0x18)']|[-4-]|[4, '(A6+0x14)']|[4, '(A6+0x10)']}
<MI 1105e MOVE.L (A6+0xc),-(A7)> Δ-4 {[-4-]|[4, '(A6+0x18)']|[-4-]|[4, '(A6+0x14)']|[4, '(A6+0x10)']|[4, '(A6+0xc)']}
<MI 11062 MOVE.L (A6+0x8),-(A7)> Δ-4 {[-4-]|[4, '(A6+0x18)']|[-4-]|[4, '(A6+0x14)']|[4, '(A6+0x10)']|[4, '(A6+0xc)']|[4, '(A6+0x8)']}
<Call 0x11066 0x11000> {[-4-]|[4, '(A6+0x18)']|[-4-]|[4, '(A6+0x14)']|[4, '(A6+0x10)']|[4, '(A6+0xc)']|[4, '(A6+0x8)']}
_StringCat4(a, b, c, d : String) : String
<POP 1106a-1106e StackAdj> Δ+16 {[-4-]|[4, '(A6+0x18)']|[-4-]}
<Call 0x1106e 0x10f2c> {[-4-]|[4, '(A6+0x18)']|[-4-]}
_StringCat2(a, b : String) : String
<POP 11072-11074 StackAdj> Δ+8 {[-4-]}
<MI 11074 MOVE.L (A7)+,(A6+0x1c)> Δ+4 {}
<POP 11078-1107c Epilogue> Σ0
@ 1107c
_StringCat6(a, b, c, d, e, f : String) : String
<LVAR 0x020 4(w)>
<LVAR 0x01c 4(r)>
<LVAR 0x018 4(r)>
<LVAR 0x014 4(r)>
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 1107c-110c0 Body>
<POP 1107c-1108e Prologue> Σ0 ↓
<POP 1108e-110bc Naked> Σ0 ↓
<POP 1108e-11090 StackAdj> Δ-4 {[-4-]}
<MI 11090 MOVE.L (A6+0x1c),-(A7)> Δ-4 {[-4-]|[4, '(A6+0x1c)']}
<POP 11094-11096 StackAdj> Δ-4 {[-4-]|[4, '(A6+0x1c)']|[-4-]}
<MI 11096 MOVE.L (A6+0x18),-(A7)> Δ-4 {[-4-]|[4, '(A6+0x1c)']|[-4-]|[4, '(A6+0x18)']}
<MI 1109a MOVE.L (A6+0x14),-(A7)> Δ-4 {[-4-]|[4, '(A6+0x1c)']|[-4-]|[4, '(A6+0x18)']|[4, '(A6+0x14)']}
<MI 1109e MOVE.L (A6+0x10),-(A7)> Δ-4 {[-4-]|[4, '(A6+0x1c)']|[-4-]|[4, '(A6+0x18)']|[4, '(A6+0x14)']|[4, '(A6+0x10)']}
<MI 110a2 MOVE.L (A6+0xc),-(A7)> Δ-4 {[-4-]|[4, '(A6+0x1c)']|[-4-]|[4, '(A6+0x18)']|[4, '(A6+0x14)']|[4, '(A6+0x10)']|[4, '(A6+0xc)']}
<MI 110a6 MOVE.L (A6+0x8),-(A7)> Δ-4 {[-4-]|[4, '(A6+0x1c)']|[-4-]|[4, '(A6+0x18)']|[4, '(A6+0x14)']|[4, '(A6+0x10)']|[4, '(A6+0xc)']|[4, '(A6+0x8)']}
<Call 0x110aa 0x1103c> {[-4-]|[4, '(A6+0x1c)']|[-4-]|[4, '(A6+0x18)']|[4, '(A6+0x14)']|[4, '(A6+0x10)']|[4, '(A6+0xc)']|[4, '(A6+0x8)']}
_StringCat5(a, b, c, d, e : String) : String
<POP 110ae-110b2 StackAdj> Δ+20 {[-4-]|[4, '(A6+0x1c)']|[-4-]}
<Call 0x110b2 0x10f2c> {[-4-]|[4, '(A6+0x1c)']|[-4-]}
_StringCat2(a, b : String) : String
<POP 110b6-110b8 StackAdj> Δ+8 {[-4-]}
<MI 110b8 MOVE.L (A7)+,(A6+0x20)> Δ+4 {}
<POP 110bc-110c0 Epilogue> Σ0
@ 110c0
_Long2String(a : Long) : String
<LVAR 0x00c 4(w)>
<LVAR 0x008 4(rw)>
<LVAR -0x008 @ 4(rw)>
<LVAR -0x00c @ 4(r)>
<POP 110c0-111ce Body>
<POP 110c0-110d6 Prologue> Σ0 ↓
<POP 110d6-110e6 RegCacheLoad> Σ0 ↓
<POP 110e6-110ea Naked> Σ0 ↓ →0x11108
<MI 110e6 TST.L (A6+0x8)> {}
<MI 110e8 BNE 0x11108> {}
<POP 110ea-11108 Naked> Σ0 →0x111c2
<Blob 0x110ea [2] @> Δ-2 {[«2""»]}
<POP 110ee-110f0 StackAdj> Δ-4 {[«2""»]|[-4-]}
<Lit 0x110f0 2> {[«2""»]|[$$0 ]}
<MI 11100 MOVE.L (A7)+,(A6-0x8)> Δ+4 {[«2""»]}
<POP 11102-11104 StackAdj> Δ+2 {}
<MI 11104 BRA 0x111c2> {}
<POP 11108-11112 Naked> Σ0 ↓ →0x1113c ←0x110e6
<MI 11108 MOVE.L (A6+0x8),D0> {}
<MI 1110a CMPI.L #0x80000000,D0> {}
<MI 11110 BNE 0x1113c> {}
<POP 11112-1113c Naked> Σ0 →0x111c2
<Blob 0x11112 [12] @> Δ-12 {[«12""»]}
<POP 11122-11124 StackAdj> Δ-4 {[«12""»]|[-4-]}
<Lit 0x11124 11> {[«12""»]|[$$-2147483648]}
<MI 11134 MOVE.L (A7)+,(A6-0x8)> Δ+4 {[«12""»]}
<POP 11136-11138 StackAdj> Δ+12 {}
<MI 11138 BRA 0x111c2> {}
<POP 1113c-11150 Naked> Σ0 ↓ →0x11160 ←0x11108
<Pointer.fp 0x1113c <LVAR -0x008 @ 4(rw)>> Δ-4 {[@@-8]}
<Call 0x1113e 0x10cfa> {[@@-8]}
_NewString(VAR a : String)
<POP 11142-11144 StackAdj> Δ+4 {}
<Pointer.fp 0x11144 <LVAR -0x00c @ 4(r)>> Δ-4 {[@@-12]}
<Call 0x11146 0x10cfa> {[@@-12]}
_NewString(VAR a : String)
<POP 1114a-1114c StackAdj> Δ+4 {}
<MI 1114c TST.L D0> {}
<MI 1114e BGE 0x11160> {}
<POP 11150-11160 Naked> Σ0 ↓
<MI 11150 MOVE.L (A6-0x8),-(A7)> Δ-4 {[4, '(A6-0x8)']}
<Const 0x11152 0x2d.2> Δ-2 {[4, '(A6-0x8)']|[#45]}
<Call 0x11156 0x10d66> {[4, '(A6-0x8)']|[#45]}
_AppendChar(MOD b : String; a : char)
<POP 1115a-1115c StackAdj> Δ+6 {}
<MI 1115c NEG.L D0> {}
<MI 1115e MOVE.L D0,(A6+0x8)> {}
<POP 11160-11180 Naked> Σ0 ↓ →0x11160 ←0x1113c ←0x11160
<MI 11160 MOVE.L (A6+0x8),D4> {}
<MI 11162 MOVEQ.L #0x0a,D3> {}
<Call 0x11164 0x1080a> {}
_?divs_d3_d4
<MI 1116a MOVE.L D3,D7> {}
<MI 1116c MOVE.L D4,(A6+0x8)> {}
<MI 1116e MOVE.L (A6-0xc),-(A7)> Δ-4 {[4, '(A6-0xc)']}
<MI 11170 MOVEQ.L #0x30,D0> {[4, '(A6-0xc)']}
<MI 11172 ADD.L D7,D0> {[4, '(A6-0xc)']}
<MI 11174 MOVE.B D0,-(A7)> Δ-2 {[4, '(A6-0xc)']|[2, 'D0']}
<Call 0x11176 0x10d66> {[4, '(A6-0xc)']|[2, 'D0']}
_AppendChar(MOD b : String; a : char)
<POP 1117a-1117c StackAdj> Δ+6 {}
<MI 1117c TST.L D4> {}
<MI 1117e BNE 0x11160> {}
<POP 11180-11196 Naked> Σ0 Δ-8 ↓
<MI 11180 MOVEA.L (A6-0xc),A0> {}
<MallocCheck 0x11182 A0> {}
<MI 1118a MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 1118c MOVE.W (A0),D0> {[4, 'A0']}
<MI 1118e EXTW.L D0> {[4, 'A0']}
<MI 11190 SUBQ.L #0x1,D0> {[4, 'A0']}
<MI 11192 MOVE.L D0,-(A7)> Δ-4 {[4, 'A0']|[4, 'D0']}
<MI 11194 MOVEQ.L #0x00,D7> {[4, 'A0']|[4, 'D0']}
<POP 11196-1119a Naked> Σ-8 ↓ →0x111b8 ←0x1119a
<MI 11196 CMP.L (A7),D7> {[-8-]}
<MI 11198 BGT 0x111b8> {[-8-]}
<POP 1119a-111b8 Naked> Σ-8 ↓ →0x11196
<MI 1119a MOVE.L (A6-0x8),-(A7)> Δ-4 {[-8-]|[4, '(A6-0x8)']}
<MI 1119c MOVEA.L (A7+0x8),A0> {[-8-]|[4, '(A6-0x8)']}
<MI 111a0 MOVE.W (A0),D0> {[-8-]|[4, '(A6-0x8)']}
<MI 111a2 EXTW.L D0> {[-8-]|[4, '(A6-0x8)']}
<MI 111a4 SUB.L D7,D0> {[-8-]|[4, '(A6-0x8)']}
<MI 111a6 MOVEA.L (A7+0x8),A0> {[-8-]|[4, '(A6-0x8)']}
<MI 111aa MOVE.B (A0+D0.L+#0x1),-(A7)> Δ-2 {[-8-]|[4, '(A6-0x8)']|[2, '(A0+D0.L+#0x1)']}
<Call 0x111ae 0x10d66> {[-8-]|[4, '(A6-0x8)']|[2, '(A0+D0.L+#0x1)']}
_AppendChar(MOD b : String; a : char)
<POP 111b2-111b4 StackAdj> Δ+6 {[-8-]}
<MI 111b4 ADDQ.L #0x1,D7> {[-8-]}
<MI 111b6 BVC 0x11196> {[-8-]}
<POP 111b8-111c2 Naked> Σ-8 Δ+8 ↓ ←0x11196
<POP 111b8-111ba StackAdj> Δ+8 {}
<Pointer.fp 0x111ba <LVAR -0x00c @ 4(r)>> Δ-4 {[@@-12]}
<Call 0x111bc 0x10d36> {[@@-12]}
_FreeString(VAR a : String)
<POP 111c0-111c2 StackAdj> Δ+4 {}
<POP 111c2-111c6 Naked> Σ0 ↓ ←0x110ea ←0x11112
<MI 111c2 MOVE.L (A6-0x8),(A6+0xc)> {}
<POP 111c6-111ce Epilogue> Σ0
@ 111ce
_Long2HexString(val : Long; ndig : Long) : String
<LVAR 0x010 4(w)>
<LVAR 0x00c 4(rw)>
<LVAR 0x00a 2(r)>
<LVAR 0x008 4(rw)>
<LVAR -0x00c @ 4(r)>
<POP 111ce-11258 Body>
<POP 111ce-111e4 Prologue> Σ0 ↓
<POP 111e4-111f2 RegCacheLoad> Σ0 ↓
<POP 111f2-1120e Naked> Σ0 Δ-4 ↓ →0x11212
<Pointer.fp 0x111f2 <LVAR -0x00c @ 4(r)>> Δ-4 {[@@-12]}
<Call 0x111f4 0x10cfa> {[@@-12]}
_NewString(VAR a : String)
<POP 111f8-111fa StackAdj> Δ+4 {}
<MI 111fa MOVEA.L (A6-0xc),A0> {}
<MallocCheck 0x111fc A0> {}
<MI 11204 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 11206 MOVEQ.L #0x08,D5> {[4, 'A0']}
<MI 11208 MOVE.L (A6+0x8),D0> {[4, 'A0']}
<MI 1120a CMP.L #0x01,D0> {[4, 'A0']}
<MI 1120c BLT 0x11212> {[4, 'A0']}
<POP 1120e-11212 Naked> Σ-4 ↓ →0x11214
<MI 1120e CMP.L D5,D0> {[-4-]}
<MI 11210 BLE 0x11214> {[-4-]}
<POP 11212-11214 Naked> Σ-4 ↓ ←0x111f2
<MI 11212 MOVE.L D5,(A6+0x8)> {[-4-]}
<POP 11214-1121c Naked> Σ-4 ↓ ←0x1120e
<MI 11214 MOVE.W (A6+0xa),(A0)> {[-4-]}
<MI 11218 MOVE.L (A6+0xc),D7> {[-4-]}
<MI 1121a MOVE.L (A6+0x8),D6> {[-4-]}
<POP 1121c-11220 Naked> Σ-4 ↓ →0x1124a ←0x11238
<MI 1121c CMP.L #0x01,D6> {[-4-]}
<MI 1121e BLT 0x1124a> {[-4-]}
<POP 11220-11234 Naked> Σ-4 ↓ →0x11238
<MI 11220 MOVE.L D7,(A6+0xc)> {[-4-]}
<MI 11222 ANDI.L #0x0000000f,(A6+0xc)> {[-4-]}
<MI 11228 LSR.L #0x4,D7> {[-4-]}
<MI 1122a MOVE.L (A6+0xc),D0> {[-4-]}
<MI 1122c CMPI.L #0x00000009,D0> {[-4-]}
<MI 11232 BLS 0x11238> {[-4-]}
<POP 11234-11238 Naked> Σ-4 ↓
<MI 11234 ADDQ.L #0x7,D0> {[-4-]}
<MI 11236 MOVE.L D0,(A6+0xc)> {[-4-]}
<POP 11238-1124a Naked> Σ-4 ↓ →0x1121c ←0x11220
<MI 11238 MOVEA.L (A7),A0> {[-4-]}
<MI 1123a MOVE.L (A6+0xc),D0> {[-4-]}
<MI 1123c ADDI.L #0x00000030,D0> {[-4-]}
<MI 11242 MOVE.B D0,(A0+D6.L+#0x1)> {[-4-]}
<MI 11246 SUBQ.L #0x1,D6> {[-4-]}
<MI 11248 BVC 0x1121c> {[-4-]}
<POP 1124a-11250 Naked> Σ-4 Δ+4 ↓ ←0x1121c
<POP 1124a-1124c StackAdj> Δ+4 {}
<MI 1124c MOVE.L (A6-0xc),(A6+0x10)> {}
<POP 11250-11258 Epilogue> Σ0
@ 11258
<LVAR 0x00c 1(rw)>
<LVAR 0x008 4(r)>
<POP 11258-1127c Body>
<POP 11258-1126a Prologue> Σ0 ↓
<POP 1126a-11274 Naked> Σ0 ↓ →0x11278
<MI 1126a CLR.B (A6+0xc)> {}
<MI 1126e TST.L (A6+0x8)> {}
<MI 11272 BLT 0x11278> {}
<POP 11274-11278 Naked> Σ0 ↓
<MI 11274 ADDQ.B #0x1,(A6+0xc)> {}
<POP 11278-1127c Epilogue> Σ0 ←0x1126a
@ 1127c
_String2Long(src : String; VAR status : Bool; VAR retval : Long)
<LVAR 0x010 @ 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x004 4(rw)>
<LVAR -0x008 4(rw)>
<LVAR -0x00e 2(rw)>
<POP 1127c-113b0 Body> Δ-20
<POP 1127c-11292 Prologue> Σ0 ↓
<POP 11292-1129e RegCacheLoad> Σ0 ↓
<POP 1129e-112c8 Naked> Σ0 Δ-4 ↓ →0x112ce
<MI 1129e MOVE.L #0xccccccc,(A6-0x8)> {}
<MI 112a6 MOVE.L #0xf3333334,(A6-0x4)> {}
<MI 112ae MOVEA.L (A6+0x10),A0> {}
<MallocCheck 0x112b2 A0> {}
<MI 112ba MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 112bc MOVEA.L (A6+0xc),A1> {[4, 'A0']}
<MI 112c0 CLR.B (A1)> {[4, 'A0']}
<MI 112c2 MOVEQ.L #0x01,D7> {[4, 'A0']}
<MI 112c4 TST.W (A0)> {[4, 'A0']}
<MI 112c6 BNE 0x112ce> {[4, 'A0']}
<POP 112c8-112ce Naked> Σ-4 Δ+4 →0x11398
<POP 112c8-112ca StackAdj> Δ+4 {}
<MI 112ca BRA 0x11398> {}
<POP 112ce-112d8 Naked> Σ-4 ↓ →0x112de ←0x1129e
<MI 112ce MOVEA.L (A7),A0> {[-4-]}
<MI 112d0 MOVE.B (A0+0x2),D0> {[-4-]}
<MI 112d4 CMP.B #0x2d,D0> {[-4-]}
<MI 112d6 BNE 0x112de> {[-4-]}
<POP 112d8-112de Naked> Σ-4 →0x112e0
<MI 112d8 MOVE.W #0xffff,(A6-0xe)> {[-4-]}
<MI 112dc BRA 0x112e0> {[-4-]}
<POP 112de-112e0 Naked> Σ-4 ↓ ←0x112ce
<MI 112de MOVE.W #0x01,(A6-0xe)> {[-4-]}
<POP 112e0-112ea Naked> Σ-4 ↓ →0x112ee ←0x112d8
<MI 112e0 MOVE.B (A0+0x2),D0> {[-4-]}
<MI 112e4 CMPI.B #0x2b,D0> {[-4-]}
<MI 112e8 BEQ 0x112ee> {[-4-]}
<POP 112ea-112ee Naked> Σ-4 ↓ →0x112fe
<MI 112ea CMP.B #0x2d,D0> {[-4-]}
<MI 112ec BNE 0x112fe> {[-4-]}
<POP 112ee-112f8 Naked> Σ-4 ↓ →0x112fe ←0x112e0
<MI 112ee ADDQ.L #0x1,D7> {[-4-]}
<MI 112f0 MOVE.W (A0),D0> {[-4-]}
<MI 112f2 EXTW.L D0> {[-4-]}
<MI 112f4 CMP.L D0,D7> {[-4-]}
<MI 112f6 BLE 0x112fe> {[-4-]}
<POP 112f8-112fe Naked> Σ-4 Δ+4 →0x11398
<POP 112f8-112fa StackAdj> Δ+4 {}
<MI 112fa BRA 0x11398> {}
<POP 112fe-11302 Naked> Σ-4 ↓ ←0x112ea ←0x112ee
<MI 112fe MOVEA.L (A6+0x8),A0> {[-4-]}
<MI 11300 CLR.L (A0)> {[-4-]}
<POP 11302-1131c Naked> Σ-4 ↓ →0x11322 ←0x1137c
<MI 11302 MOVE.L D7,D0> {[-4-]}
<MI 11304 SUBQ.L #0x1,D0> {[-4-]}
<POP 0x11306 LimitCheck 0x0 ≤ D0 ≤ 0x7d> {[-4-]}
<MI 11310 MOVEA.L (A7),A0> {[-4-]}
<MI 11312 MOVE.B (A0+D0.L+#0x2),D6> {[-4-]}
<MI 11316 CMPI.B #0x30,D6> {[-4-]}
<MI 1131a BCS 0x11322> {[-4-]}
<POP 1131c-11322 Naked> Σ-4 ↓ →0x11326
<MI 1131c CMPI.B #0x39,D6> {[-4-]}
<MI 11320 BLS 0x11326> {[-4-]}
<POP 11322-11326 Naked> Σ-4 Δ+4 →0x11398 ←0x11302
<POP 11322-11324 StackAdj> Δ+4 {}
<MI 11324 BRA 0x11398> {}
<POP 11326-1133c Naked> Σ-4 ↓ →0x11342 ←0x1131c
<MI 11326 CLR.L D0> {[-4-]}
<MI 11328 MOVE.B D6,D0> {[-4-]}
<MI 1132a SUBI.W #0x0030,D0> {[-4-]}
<MI 1132e MULS.W (A6-0xe),D0> {[-4-]}
<MI 11330 MOVE.L D0,D5> {[-4-]}
<MI 11332 MOVEA.L (A6+0x8),A0> {[-4-]}
<MI 11334 MOVE.L (A0),D0> {[-4-]}
<MI 11336 CMP.L (A6-0x4),D0> {[-4-]}
<MI 1133a BLT 0x11342> {[-4-]}
<POP 1133c-11342 Naked> Σ-4 ↓ →0x11346
<MI 1133c CMP.L (A6-0x8),D0> {[-4-]}
<MI 11340 BLE 0x11346> {[-4-]}
<POP 11342-11346 Naked> Σ-4 Δ+4 →0x11398 ←0x11326
<POP 11342-11344 StackAdj> Δ+4 {}
<MI 11344 BRA 0x11398> {}
<POP 11346-11358 Naked> Σ-4 ↓ →0x1135c ←0x1133c
<MI 11346 MOVEA.L (A6+0x8),A0> {[-4-]}
<MI 11348 MOVE.L (A0),D4> {[-4-]}
<MI 1134a MOVEQ.L #0x0a,D3> {[-4-]}
<Call 0x1134c 0x107ea> {[-4-]}
_?muls_d3_d4
<MI 11352 MOVE.L D4,(A0)> {[-4-]}
<MI 11354 TST.L D4> {[-4-]}
<MI 11356 BNE 0x1135c> {[-4-]}
<POP 11358-1135c Naked> Σ-4 Δ-2 →0x1137c
<POP 11358-1135a StackAdj> Δ-2 {[-6-]}
<MI 1135a BRA 0x1137c> {[-6-]}
<POP 1135c-11378 Naked> Σ-4 Δ-2 ↓ →0x1137c ←0x11346
<POP 1135c-1135e StackAdj> Δ-2 {[-6-]}
<MI 1135e MOVE.L D4,-(A7)> Δ-4 {[-6-]|[4, 'D4']}
<Call 0x11360 0x11258> {[-6-]|[4, 'D4']}
<POP 11364-11366 StackAdj> Δ+2 {[-6-]|[-2-]}
<MI 11366 MOVE.L D4,-(A7)> Δ-4 {[-6-]|[-2-]|[4, 'D4']}
<MI 11368 ADD.L D5,(A7)> {[-6-]|[-6-]}
<Call 0x1136a 0x11258> {[-6-]|[-6-]}
<POP 1136e-11370 StackAdj> Δ+4 {[-6-]|[-2-]}
<MI 11370 MOVE.B (A7+0x2),D0> {[-6-]|[-2-]}
<MI 11374 CMP.B (A7)+,D0> Δ+2 {[-6-]}
<MI 11376 BEQ 0x1137c> {[-6-]}
<POP 11378-1137c Naked> Σ-6 Δ+6 →0x11398
<POP 11378-1137a StackAdj> Δ+6 {}
<MI 1137a BRA 0x11398> {}
<POP 1137c-11390 Naked> Σ-6 Δ+2 ↓ →0x11302 ←0x11358 ←0x1135c
<POP 1137c-1137e StackAdj> Δ+2 {[-4-]}
<MI 1137e MOVEA.L (A6+0x8),A0> {[-4-]}
<MI 11380 ADD.L D5,(A0)> {[-4-]}
<MI 11382 ADDQ.L #0x1,D7> {[-4-]}
<MI 11384 MOVEA.L (A7),A0> {[-4-]}
<MI 11386 MOVE.W (A0),D0> {[-4-]}
<MI 11388 EXTW.L D0> {[-4-]}
<MI 1138a CMP.L D0,D7> {[-4-]}
<MI 1138c BLE 0x11302> {[-4-]}
<POP 11390-11398 Naked> Σ-4 Δ+4 ↓
<MI 11390 MOVEA.L (A6+0xc),A0> {[-4-]}
<MI 11394 MOVE.B #0x01,(A0)> {[-4-]}
<POP 11396-11398 StackAdj> Δ+4 {}
<POP 11398-113a8 Naked> Σ0 ↓ ←0x112c8 ←0x112f8 ←0x11322 ←0x11342 ←0x11378
<Pointer.fp 0x11398 <LVAR 0x010 @ 4(r)>> Δ-4 {[@@16]}
<Const 0x1139c 0x80.4> Δ-4 {[@@16]|[##128]}
<Call 0x113a0 0x108fa> {[@@16]|[##128]}
_Free2(a : Pointer; b : Long)
<POP 113a6-113a8 StackAdj> Δ+8 {}
<POP 113a8-113b0 Epilogue> Σ0
@ 113b0
_ToUpper(a : String) : String
<LVAR 0x00c 4(w)>
<LVAR 0x008 4(r)>
<POP 113b0-11426 Body>
<POP 113b0-113c6 Prologue> Σ0 ↓
<POP 113c6-113dc Naked> Σ0 Δ-8 ↓
<MI 113c6 MOVEA.L (A6+0x8),A0> {}
<MallocCheck 0x113ca A0> {}
<MI 113d2 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 113d4 MOVE.W (A0),D0> {[4, 'A0']}
<MI 113d6 EXTW.L D0> {[4, 'A0']}
<MI 113d8 MOVE.L D0,-(A7)> Δ-4 {[4, 'A0']|[4, 'D0']}
<MI 113da MOVEQ.L #0x01,D7> {[4, 'A0']|[4, 'D0']}
<POP 113dc-113e0 Naked> Σ-8 ↓ →0x11416 ←0x11412
<MI 113dc CMP.L (A7),D7> {[-8-]}
<MI 113de BGT 0x11416> {[-8-]}
<POP 113e0-113fc Naked> Σ-8 ↓ →0x11412
<MI 113e0 MOVE.L D7,D0> {[-8-]}
<MI 113e2 SUBQ.L #0x1,D0> {[-8-]}
<POP 0x113e4 LimitCheck 0x0 ≤ D0 ≤ 0x7d> {[-8-]}
<MI 113ee MOVEA.L (A7+0x4),A0> {[-8-]}
<MI 113f2 MOVE.B (A0+D0.L+#0x2),D6> {[-8-]}
<MI 113f6 CMPI.B #0x61,D6> {[-8-]}
<MI 113fa BCS 0x11412> {[-8-]}
<POP 113fc-11402 Naked> Σ-8 ↓ →0x11412
<MI 113fc CMPI.B #0x7a,D6> {[-8-]}
<MI 11400 BHI 0x11412> {[-8-]}
<POP 11402-11412 Naked> Σ-8 ↓
<MI 11402 CLR.L D1> {[-8-]}
<MI 11404 MOVE.B D6,D1> {[-8-]}
<MI 11406 SUBI.W #0x0020,D1> {[-8-]}
<POP 0x1140a LimitCheck 0x0 ≤ D1 ≤ 0xff> {[-8-]}
<MI 1140e MOVE.B D1,(A0+D0.L+#0x2)> {[-8-]}
<POP 11412-11416 Naked> Σ-8 ↓ →0x113dc ←0x113e0 ←0x113fc
<MI 11412 ADDQ.L #0x1,D7> {[-8-]}
<MI 11414 BVC 0x113dc> {[-8-]}
<POP 11416-1141e Naked> Σ-8 Δ+8 ↓ ←0x113dc
<POP 11416-11418 StackAdj> Δ+8 {}
<MI 11418 MOVE.L (A6+0x8),(A6+0xc)> {}
<POP 1141e-11426 Epilogue> Σ0
@ 11426
_RightPad(a : String; b : Long) : String
<LVAR 0x010 4(w)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x008 @ 4(r)>
<POP 11426-1148c Body>
<POP 11426-1143c Prologue> Σ0 ↓
<POP 1143c-11440 RegCacheLoad> Σ0 ↓
<POP 11440-11460 Naked> Σ0 Δ-4 ↓
<Pointer.fp 0x11440 <LVAR -0x008 @ 4(r)>> Δ-4 {[@@-8]}
<Call 0x11442 0x10cfa> {[@@-8]}
_NewString(VAR a : String)
<POP 11446-11448 StackAdj> Δ+4 {}
<MI 11448 MOVEA.L (A6+0xc),A0> {}
<MallocCheck 0x1144c A0> {}
<MI 11454 MOVE.W (A0),D0> {}
<MI 11456 EXTW.L D0> {}
<MI 11458 ADDQ.L #0x1,D0> {}
<MI 1145a MOVE.L (A6+0x8),-(A7)> Δ-4 {[4, '(A6+0x8)']}
<MI 1145e MOVE.L D0,D7> {[4, '(A6+0x8)']}
<POP 11460-11464 Naked> Σ-4 ↓ →0x11474 ←0x11464
<MI 11460 CMP.L (A7),D7> {[-4-]}
<MI 11462 BGT 0x11474> {[-4-]}
<POP 11464-11474 Naked> Σ-4 ↓ →0x11460
<MI 11464 MOVE.L (A6-0x8),-(A7)> Δ-4 {[-4-]|[4, '(A6-0x8)']}
<Const 0x11466 0x20.2> Δ-2 {[-4-]|[4, '(A6-0x8)']|[#32]}
<Call 0x1146a 0x10d66> {[-4-]|[4, '(A6-0x8)']|[#32]}
_AppendChar(MOD b : String; a : char)
<POP 1146e-11470 StackAdj> Δ+6 {[-4-]}
<MI 11470 ADDQ.L #0x1,D7> {[-4-]}
<MI 11472 BVC 0x11460> {[-4-]}
<POP 11474-11484 Naked> Σ-4 Δ+4 ↓ ←0x11460
<MI 11474 MOVE.L (A6-0x8),-(A7)> Δ-4 {[-4-]|[4, '(A6-0x8)']}
<MI 11476 MOVE.L (A6+0xc),-(A7)> Δ-4 {[-4-]|[4, '(A6-0x8)']|[4, '(A6+0xc)']}
<Call 0x1147a 0x10f2c> {[-4-]|[4, '(A6-0x8)']|[4, '(A6+0xc)']}
_StringCat2(a, b : String) : String
<POP 1147e-11480 StackAdj> Δ+8 {[-4-]}
<MI 11480 MOVE.L (A7)+,(A6+0x10)> Δ+4 {}
<POP 11484-1148c Epilogue> Σ0
@ 1148c
_LeftPad(a : String; b : Long) : String
<LVAR 0x010 4(w)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(rw)>
<POP 1148c-114ea Body>
<POP 1148c-114a2 Prologue> Σ0 ↓
<POP 114a2-114ac RegCacheLoad> Σ0 ↓
<POP 114ac-114b2 Naked> Σ0 ↓ →0x114b4
<MI 114ac MOVE.L (A6+0x8),D0> {}
<MI 114ae CMP.L #0x7e,D0> {}
<MI 114b0 BLE 0x114b4> {}
<POP 114b2-114b4 Naked> Σ0 ↓
<MI 114b2 MOVE.L #0x7e,(A6+0x8)> {}
<POP 114b4-114c8 Naked> Σ0 Δ-4 ↓ ←0x114ac
<MI 114b4 MOVEA.L (A6+0xc),A0> {}
<MallocCheck 0x114b6 A0> {}
<MI 114be MOVE.W (A0),D0> {}
<MI 114c0 EXTW.L D0> {}
<MI 114c2 ADDQ.L #0x1,D0> {}
<MI 114c4 MOVE.L (A6+0x8),-(A7)> Δ-4 {[4, '(A6+0x8)']}
<MI 114c6 MOVE.L D0,D7> {[4, '(A6+0x8)']}
<POP 114c8-114cc Naked> Σ-4 ↓ →0x114dc ←0x114cc
<MI 114c8 CMP.L (A7),D7> {[-4-]}
<MI 114ca BGT 0x114dc> {[-4-]}
<POP 114cc-114dc Naked> Σ-4 ↓ →0x114c8
<MI 114cc MOVE.L (A6+0xc),-(A7)> Δ-4 {[-4-]|[4, '(A6+0xc)']}
<Const 0x114ce 0x20.2> Δ-2 {[-4-]|[4, '(A6+0xc)']|[#32]}
<Call 0x114d2 0x10d66> {[-4-]|[4, '(A6+0xc)']|[#32]}
_AppendChar(MOD b : String; a : char)
<POP 114d6-114d8 StackAdj> Δ+6 {[-4-]}
<MI 114d8 ADDQ.L #0x1,D7> {[-4-]}
<MI 114da BVC 0x114c8> {[-4-]}
<POP 114dc-114e2 Naked> Σ-4 Δ+4 ↓ ←0x114c8
<POP 114dc-114de StackAdj> Δ+4 {}
<MI 114de MOVE.L (A6+0xc),(A6+0x10)> {}
<POP 114e2-114ea Epilogue> Σ0
@ 114ea
_FirstField(MOD input : String; MOD output : String; VAR c : Bool
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 114ea-115f4 Body> Δ-8
<POP 114ea-11500 Prologue> Σ0 ↓
<POP 11500-11504 RegCacheLoad> Σ0 ↓
<POP 11504-1151c Naked> Σ0 Δ-8 ↓
<MI 11504 MOVEQ.L #0x00,D6> {}
<MI 11506 MOVEA.L (A6+0x10),A0> {}
<MallocCheck 0x1150a A0> {}
<MI 11512 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 11514 MOVE.W (A0),D0> {[4, 'A0']}
<MI 11516 EXTW.L D0> {[4, 'A0']}
<MI 11518 MOVE.L D0,-(A7)> Δ-4 {[4, 'A0']|[4, 'D0']}
<MI 1151a MOVEQ.L #0x01,D7> {[4, 'A0']|[4, 'D0']}
<POP 1151c-11520 Naked> Σ-8 ↓ →0x11544 ←0x11540
<MI 1151c CMP.L (A7),D7> {[-8-]}
<MI 1151e BGT 0x11544> {[-8-]}
<POP 11520-11538 Naked> Σ-8 ↓ →0x1153c
<MI 11520 MOVEA.L (A7+0x4),A0> {[-8-]}
<MI 11524 CLR.L D0> {[-8-]}
<MI 11526 MOVE.B (A0+D7.L+#0x1),D0> {[-8-]}
<MI 1152a LEA.L 0x10cda,A0> {[-8-]}
<MI 1152e MOVE.W D0,D1> {[-8-]}
<MI 11530 LSR.W #0x3,D1> {[-8-]}
<MI 11532 BTST.B D0,(A0+D1.W)> {[-8-]}
<MI 11536 BEQ 0x1153c> {[-8-]}
<POP 11538-1153c Naked> Σ-8 →0x11540
<MI 11538 ADDQ.L #0x1,D6> {[-8-]}
<MI 1153a BRA 0x11540> {[-8-]}
<POP 1153c-11540 Naked> Σ-8 Δ+4 →0x11546 ←0x11520
<POP 1153c-1153e StackAdj> Δ+4 {[-4-]}
<MI 1153e BRA 0x11546> {[-4-]}
<POP 11540-11544 Naked> Σ-8 ↓ →0x1151c ←0x11538
<MI 11540 ADDQ.L #0x1,D7> {[-8-]}
<MI 11542 BVC 0x1151c> {[-8-]}
<POP 11544-11546 Naked> Σ-8 Δ+4 ↓ ←0x1151c
<POP 11544-11546 StackAdj> Δ+4 {[-4-]}
<POP 11546-11560 Naked> Σ-4 Δ-4 ↓ ←0x1153c
<MI 11546 MOVEA.L (A6+0xc),A0> {[-4-]}
<MallocCheck 0x11548 A0> {[-4-]}
<MI 11550 CLR.W (A0)> {[-4-]}
<MI 11552 MOVE.L D6,D0> {[-4-]}
<MI 11554 ADDQ.L #0x1,D0> {[-4-]}
<MI 11556 MOVEA.L (A7),A0> {[-4-]}
<MI 11558 MOVE.W (A0),D1> {[-4-]}
<MI 1155a EXTW.L D1> {[-4-]}
<MI 1155c MOVE.L D1,-(A7)> Δ-4 {[-4-]|[4, 'D1']}
<MI 1155e MOVE.L D0,D7> {[-4-]|[4, 'D1']}
<POP 11560-11564 Naked> Σ-8 ↓ →0x11592 ←0x11584
<MI 11560 CMP.L (A7),D7> {[-8-]}
<MI 11562 BGT 0x11592> {[-8-]}
<POP 11564-11572 Naked> Σ-8 ↓ →0x1157e
<MI 11564 MOVEA.L (A7+0x4),A0> {[-8-]}
<MI 11568 MOVE.B (A0+D7.L+#0x1),D0> {[-8-]}
<MI 1156c CMPI.B #0x20,D0> {[-8-]}
<MI 11570 BEQ 0x1157e> {[-8-]}
<POP 11572-11578 Naked> Σ-8 ↓ →0x1157e
<MI 11572 CMPI.B #0x2c,D0> {[-8-]}
<MI 11576 BEQ 0x1157e> {[-8-]}
<POP 11578-1157e Naked> Σ-8 ↓ →0x11584
<MI 11578 CMPI.B #0x09,D0> {[-8-]}
<MI 1157c BNE 0x11584> {[-8-]}
<POP 1157e-11582 Naked> Σ-8 Δ+4 →0x11594 ←0x11564 ←0x11572
<POP 1157e-11580 StackAdj> Δ+4 {[-4-]}
<MI 11580 BRA 0x11594> {[-4-]}
<POP 11584-11592 Naked> Σ-8 ↓ →0x11560 ←0x11578
<MI 11584 MOVE.L (A6+0xc),-(A7)> Δ-4 {[-8-]|[4, '(A6+0xc)']}
<MI 11586 MOVE.B D0,-(A7)> Δ-2 {[-8-]|[4, '(A6+0xc)']|[2, 'D0']}
<Call 0x11588 0x10d66> {[-8-]|[4, '(A6+0xc)']|[2, 'D0']}
_AppendChar(MOD b : String; a : char)
<POP 1158c-1158e StackAdj> Δ+6 {[-8-]}
<MI 1158e ADDQ.L #0x1,D7> {[-8-]}
<MI 11590 BVC 0x11560> {[-8-]}
<POP 11592-11594 Naked> Σ-8 Δ+4 ↓ ←0x11560
<POP 11592-11594 StackAdj> Δ+4 {[-4-]}
<POP 11594-115b2 Naked> Σ-4 Δ-4 ↓ ←0x1157e
<MI 11594 MOVEA.L (A6+0xc),A0> {[-4-]}
<MallocCheck 0x11596 A0> {[-4-]}
<MI 1159e MOVE.W (A0),D0> {[-4-]}
<MI 115a0 EXTW.L D0> {[-4-]}
<MI 115a2 ADD.L D6,D0> {[-4-]}
<MI 115a4 MOVE.L D0,D5> {[-4-]}
<MI 115a6 MOVEA.L (A7),A0> {[-4-]}
<MI 115a8 MOVE.W (A0),D0> {[-4-]}
<MI 115aa EXTW.L D0> {[-4-]}
<MI 115ac SUB.L D5,D0> {[-4-]}
<MI 115ae MOVE.L D0,-(A7)> Δ-4 {[-4-]|[4, 'D0']}
<MI 115b0 MOVEQ.L #0x01,D7> {[-4-]|[4, 'D0']}
<POP 115b2-115b6 Naked> Σ-8 ↓ →0x115c8 ←0x115b6
<MI 115b2 CMP.L (A7),D7> {[-8-]}
<MI 115b4 BGT 0x115c8> {[-8-]}
<POP 115b6-115c8 Naked> Σ-8 ↓ →0x115b2
<MI 115b6 MOVEA.L (A7+0x4),A0> {[-8-]}
<MI 115ba MOVE.L D7,D0> {[-8-]}
<MI 115bc ADD.L D5,D0> {[-8-]}
<MI 115be MOVE.B (A0+D0.L+#0x1),(A0+D7.L+#0x1)> {[-8-]}
<MI 115c4 ADDQ.L #0x1,D7> {[-8-]}
<MI 115c6 BVC 0x115b2> {[-8-]}
<POP 115c8-115ea Naked> Σ-8 Δ+8 ↓ →0x115ec ←0x115b2
<POP 115c8-115ca StackAdj> Δ+4 {[-4-]}
<MI 115ca MOVEA.L (A7),A0> {[-4-]}
<MI 115cc MOVE.W (A0),D0> {[-4-]}
<MI 115ce EXTW.L D0> {[-4-]}
<MI 115d0 SUB.L D5,D0> {[-4-]}
<MI 115d2 MOVE.W D0,(A0)> {[-4-]}
<POP 115d4-115d6 StackAdj> Δ+4 {}
<MI 115d6 MOVEA.L (A6+0x8),A0> {}
<MI 115da CLR.B (A0)> {}
<MI 115dc MOVEA.L (A6+0xc),A1> {}
<MallocCheck 0x115de A1> {}
<MI 115e6 TST.W (A1)> {}
<MI 115e8 BEQ 0x115ec> {}
<POP 115ea-115ec Naked> Σ0 ↓
<MI 115ea ADDQ.B #0x1,(A0)> {}
<POP 115ec-115f4 Epilogue> Σ0 ←0x115c8
@ 115f4
_FSCALL_10300
<LVAR 0x010 4(rw)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 115f4-116a8 Body> Δ-8
<POP 115f4-1160a Prologue> Σ0 ↓
<POP 1160a-1160c RegCacheLoad> Σ0 ↓
<POP 1160c-1163c Naked> Σ0 Δ-8 ↓
<MI 1160c CLR.L (A6+0x10)> {}
<MI 11610 MOVEA.L (A6+0x8),A0> {}
<MallocCheck 0x11614 A0> {}
<MI 1161c MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 1161e MOVEA.L (A6+0xc),A1> {[4, 'A0']}
<MallocCheck 0x11622 A1> {[4, 'A0']}
<MI 1162a MOVE.W (A1),D0> {[4, 'A0']}
<MI 1162c EXTW.L D0> {[4, 'A0']}
<MI 1162e MOVE.W (A0),D1> {[4, 'A0']}
<MI 11630 EXTW.L D1> {[4, 'A0']}
<MI 11632 NEG.L D1> {[4, 'A0']}
<MI 11634 ADD.L D0,D1> {[4, 'A0']}
<MI 11636 ADDQ.L #0x1,D1> {[4, 'A0']}
<MI 11638 MOVE.L D1,-(A7)> Δ-4 {[4, 'A0']|[4, 'D1']}
<MI 1163a MOVEQ.L #0x01,D5> {[4, 'A0']|[4, 'D1']}
<POP 1163c-11640 Naked> Σ-8 ↓ →0x1169e ←0x1169a
<MI 1163c CMP.L (A7),D5> {[-8-]}
<MI 1163e BGT 0x1169e> {[-8-]}
<POP 11640-11642 Naked> Σ-8 ↓
<MI 11640 MOVEQ.L #0x00,D7> {[-8-]}
<POP 11642-11678 Naked> Σ-8 ↓ →0x1167a ←0x1167e
<MI 11642 ADDQ.L #0x1,D7> {[-8-]}
<MI 11644 MOVEQ.L #0x00,D6> {[-8-]}
<MI 11646 MOVEA.L (A6+0xc),A0> {[-8-]}
<MallocCheck 0x1164a A0> {[-8-]}
<MI 11652 MOVE.L D5,D0> {[-8-]}
<MI 11654 ADD.L D7,D0> {[-8-]}
<MI 11656 SUBQ.L #0x1,D0> {[-8-]}
<MI 11658 SUBQ.L #0x1,D0> {[-8-]}
<POP 0x1165a LimitCheck 0x0 ≤ D0 ≤ 0x7d> {[-8-]}
<MI 11660 MOVE.L D7,D1> {[-8-]}
<MI 11662 SUBQ.L #0x1,D1> {[-8-]}
<POP 0x11664 LimitCheck 0x0 ≤ D1 ≤ 0x7d> {[-8-]}
<MI 1166a MOVEA.L (A7+0x4),A1> {[-8-]}
<MI 1166e MOVE.B (A0+D0.L+#0x2),D0> {[-8-]}
<MI 11672 CMP.B (A1+D1.L+#0x2),D0> {[-8-]}
<MI 11676 BNE 0x1167a> {[-8-]}
<POP 11678-1167a Naked> Σ-8 ↓
<MI 11678 ADDQ.B #0x1,D6> {[-8-]}
<POP 1167a-1167e Naked> Σ-8 ↓ →0x11686 ←0x11642
<MI 1167a TST.B D6> {[-8-]}
<MI 1167c BEQ 0x11686> {[-8-]}
<POP 1167e-11686 Naked> Σ-8 ↓ →0x11642
<MI 1167e MOVE.W (A1),D0> {[-8-]}
<MI 11680 EXTW.L D0> {[-8-]}
<MI 11682 CMP.L D0,D7> {[-8-]}
<MI 11684 BNE 0x11642> {[-8-]}
<POP 11686-1168e Naked> Σ-8 ↓ →0x1169a ←0x1167a
<MI 11686 MOVE.W (A1),D0> {[-8-]}
<MI 11688 EXTW.L D0> {[-8-]}
<MI 1168a CMP.L D0,D7> {[-8-]}
<MI 1168c BNE 0x1169a> {[-8-]}
<POP 1168e-11692 Naked> Σ-8 ↓ →0x1169a
<MI 1168e TST.B D6> {[-8-]}
<MI 11690 BEQ 0x1169a> {[-8-]}
<POP 11692-1169a Naked> Σ-8 Δ+8 →0x116a0
<MI 11692 MOVE.L D5,(A6+0x10)> {[-8-]}
<POP 11696-11698 StackAdj> Δ+8 {}
<MI 11698 BRA 0x116a0> {}
<POP 1169a-1169e Naked> Σ-8 ↓ →0x1163c ←0x11686 ←0x1168e
<MI 1169a ADDQ.L #0x1,D5> {[-8-]}
<MI 1169c BVC 0x1163c> {[-8-]}
<POP 1169e-116a0 Naked> Σ-8 Δ+8 ↓ ←0x1163c
<POP 1169e-116a0 StackAdj> Δ+8 {}
<POP 116a0-116a8 Epilogue> Σ0 ←0x11692
@ 116ee
_GetRtc() : TimeStamp
<LVAR 0x008 4(r)>
<LVAR -0x006 1(r)>
<LVAR -0x007 1(r)>
<LVAR -0x008 1(r)>
<LVAR -0x00a 1(r)>
<LVAR -0x00b 1(r)>
<LVAR -0x00c @ 1(r)>
<POP 116ee-117d4 Body>
<POP 116ee-11704 Prologue> Σ0 ↓
<POP 11704-11708 RegCacheLoad> Σ0 ↓
<POP 11708-1171c Naked> Σ0 ↓
<MI 11708 MOVEA.L (A6+0x8),A0> {}
<MI 1170a CLR.L (A0)> {}
<Pointer.fp 0x1170c <LVAR -0x00c @ 1(r)>> Δ-4 {[@@-12]}
<Call 0x11710 0x10226> {[@@-12]}
KC13_ReadRtc
<POP 11716-11718 StackAdj> Δ+4 {}
<MI 11718 MOVEQ.L #0x01,D7> {}
<MI 1171a MOVEQ.L #0x00,D6> {}
<POP 1171c-11720 Naked> Σ0 ↓ →0x1173c ←0x11760
<MI 1171c TST.B D6> {}
<MI 1171e BEQ 0x1173c> {}
<POP 11720-1173c Naked> Σ0 ↓
<MI 11720 MOVE.B D6,D0> {}
<MI 11722 EXTB.W D0> {}
<MI 11724 CLR.L D1> {}
<MI 11726 MOVE.B (A6+D0.W-#0xc),D1> {}
<MI 1172a MOVE.W D1,D2> {}
<MI 1172c ASR.W #0x4,D2> {}
<MI 1172e MULS.W #0xa,D2> {}
<MI 11732 ANDI.W #0x000f,D1> {}
<MI 11736 ADD.W D2,D1> {}
<MI 11738 MOVE.B D1,(A6+D0.W-#0xc)> {}
<POP 1173c-11742 Naked> Σ0 ↓ →0x11760 ←0x1171c
<MI 1173c CMPI.B #0x03,D6> {}
<MI 11740 BEQ 0x11760> {}
<POP 11742-11754 Naked> Σ0 ↓ →0x1175e
<MI 11742 MOVE.B D6,D0> {}
<MI 11744 EXTB.W D0> {}
<MI 11746 LEA.L 0x116c2,A0> {}
<MI 1174a MOVE.B (A6+D0.W-#0xc),D1> {}
<MI 1174e CMP.B (A0+D0.W),D1> {}
<MI 11752 BHI 0x1175e> {}
<POP 11754-1175e Naked> Σ0 ↓ →0x11760
<MI 11754 LEA.L 0x116ba,A0> {}
<MI 11758 CMP.B (A0+D0.W),D1> {}
<MI 1175c BCC 0x11760> {}
<POP 1175e-11760 Naked> Σ0 ↓ ←0x11742
<MI 1175e MOVEQ.L #0x00,D7> {}
<POP 11760-11768 Naked> Σ0 ↓ →0x1171c ←0x1173c ←0x11754
<MI 11760 ADDQ.B #0x1,D6> {}
<MI 11762 CMPI.B #0x07,D6> {}
<MI 11766 BLE 0x1171c> {}
<POP 11768-1176c Naked> Σ0 ↓ →0x11772
<MI 11768 TST.B D7> {}
<MI 1176a BNE 0x11772> {}
<POP 1176c-11772 Naked> Σ0 →0x117cc
<MI 1176c MOVEA.L (A6+0x8),A0> {}
<MI 1176e CLR.L (A0)> {}
<MI 11770 BRA 0x117cc> {}
<POP 11772-117cc Naked> Σ0 ↓ ←0x11768
<MI 11772 MOVEA.L (A6+0x8),A0> {}
<MI 11774 CLR.L D0> {}
<MI 11776 MOVE.B (A6-0x8),D0> {}
<MI 1177a MULU.W #0x708,D0> {}
<MI 1177e CLR.L D1> {}
<MI 11780 MOVE.B (A6-0x7),D1> {}
<MI 11784 MULU.W #0x1e,D1> {}
<MI 11788 CLR.L D2> {}
<MI 1178a MOVE.W D1,D2> {}
<MI 1178c ADD.L D0,D2> {}
<MI 1178e CLR.L D0> {}
<MI 11790 MOVE.B (A6-0x6),D0> {}
<MI 11794 ASR.W #0x1,D0> {}
<MI 11796 EXTW.L D0> {}
<MI 11798 ADD.L D2,D0> {}
<MI 1179a MOVE.W D0,(A0)> {}
<MI 1179c CLR.L D0> {}
<MI 1179e MOVE.B (A6-0xb),D0> {}
<MI 117a2 ANDI.W #0xfe1f,(A0+0x2)> {}
<MI 117a8 LSL.W #0x5,D0> {}
<MI 117aa OR.W D0,(A0+0x2)> {}
<MI 117ae MOVE.B (A6-0xa),D0> {}
<MI 117b2 ANDI.B #0xe0,(A0+0x3)> {}
<MI 117b8 OR.B D0,(A0+0x3)> {}
<MI 117bc MOVE.B (A6-0xc),D0> {}
<MI 117c0 ANDI.B #0x01,(A0+0x2)> {}
<MI 117c6 LSL.B #0x1,D0> {}
<MI 117c8 OR.B D0,(A0+0x2)> {}
<POP 117cc-117d4 Epilogue> Σ0 ←0x1176c
@ 117d4
_SetRtc(a: TimeStamp)
<LVAR 0x00b 1(r)>
<LVAR 0x00a 1(r) 2(r)>
<LVAR 0x008 2(r)>
<LVAR -0x005 1(r)>
<LVAR -0x006 1(w)>
<LVAR -0x007 1(w)>
<LVAR -0x008 1(w)>
<LVAR -0x009 1(w)>
<LVAR -0x00a 1(w)>
<LVAR -0x00b 1(w)>
<LVAR -0x00c @ 1(w)>
<POP 117d4-118a2 Body>
<POP 117d4-117ea Prologue> Σ0 ↓
<POP 117ea-117ec RegCacheLoad> Σ0 ↓
<POP 117ec-11848 Naked> Σ0 ↓
<MI 117ec MOVE.B (A6+0xa),D0> {}
<MI 117f0 LSR.B #0x1,D0> {}
<MI 117f2 MOVE.B D0,(A6-0xc)> {}
<MI 117f6 MOVE.W (A6+0xa),D0> {}
<MI 117fa LSL.W #0x7,D0> {}
<MI 117fc LSR.W #0x8,D0> {}
<MI 117fe LSR.W #0x4,D0> {}
<MI 11800 MOVE.B D0,(A6-0xb)> {}
<MI 11804 MOVE.B (A6+0xb),D0> {}
<MI 11808 LSL.B #0x3,D0> {}
<MI 1180a LSR.B #0x3,D0> {}
<MI 1180c MOVE.B D0,(A6-0xa)> {}
<MI 11810 MOVE.B #0x01,(A6-0x9)> {}
<MI 11816 CLR.L D0> {}
<MI 11818 MOVE.W (A6+0x8),D0> {}
<MI 1181c DIVU.W #0x708,D0> {}
<MI 11820 MOVE.B D0,(A6-0x8)> {}
<MI 11824 SWAP.W D0> {}
<MI 11826 CLR.L D1> {}
<MI 11828 MOVE.W D0,D1> {}
<MI 1182a DIVU.W #0x1e,D1> {}
<MI 1182c MOVE.B D1,(A6-0x7)> {}
<MI 11830 CLR.L D0> {}
<MI 11832 MOVE.W (A6+0x8),D0> {}
<MI 11836 DIVU.W #0x1e,D0> {}
<MI 11838 SWAP.W D0> {}
<MI 1183a ASL.W #0x1,D0> {}
<MI 1183c MOVE.B D0,(A6-0x6)> {}
<MI 11840 CLR.B (A6-0x5)> {}
<MI 11844 MOVEQ.L #0x01,D7> {}
<MI 11846 MOVEQ.L #0x01,D6> {}
<POP 11848-1185e Naked> Σ0 ↓ →0x1186c ←0x1186e
<MI 11848 MOVE.B D6,D0> {}
<MI 1184a EXTB.W D0> {}
<MI 1184c MOVE.B D6,D1> {}
<MI 1184e EXTB.W D1> {}
<MI 11850 LEA.L 0x116c2,A0> {}
<MI 11854 MOVE.B (A6+D0.W-#0xc),D2> {}
<MI 11858 CMP.B (A0+D1.W),D2> {}
<MI 1185c BHI 0x1186c> {}
<POP 1185e-1186c Naked> Σ0 ↓ →0x1186e
<MI 1185e MOVE.B D6,D1> {}
<MI 11860 EXTB.W D1> {}
<MI 11862 LEA.L 0x116ba,A0> {}
<MI 11866 CMP.B (A0+D1.W),D2> {}
<MI 1186a BCC 0x1186e> {}
<POP 1186c-1186e Naked> Σ0 ↓ ←0x11848
<MI 1186c MOVEQ.L #0x00,D7> {}
<POP 1186e-1188a Naked> Σ0 ↓ →0x11848 ←0x1185e
<MI 1186e CLR.L D1> {}
<MI 11870 MOVE.B D2,D1> {}
<MI 11872 DIVU.W #0xa,D1> {}
<MI 11876 MOVE.W D1,D2> {}
<MI 11878 ASL.W #0x4,D2> {}
<MI 1187a SWAP.W D1> {}
<MI 1187c ADD.W D2,D1> {}
<MI 1187e MOVE.B D1,(A6+D0.W-#0xc)> {}
<MI 11882 ADDQ.B #0x1,D6> {}
<MI 11884 CMPI.B #0x07,D6> {}
<MI 11888 BLE 0x11848> {}
<POP 1188a-1188e Naked> Σ0 ↓ →0x1189a
<MI 1188a TST.B D7> {}
<MI 1188c BEQ 0x1189a> {}
<POP 1188e-1189a Naked> Σ0 ↓
<Pointer.fp 0x1188e <LVAR -0x00c @ 1(w)>> Δ-4 {[@@-12]}
<Call 0x11892 0x10228> {[@@-12]}
KC14_WriteRtc
<POP 11898-1189a StackAdj> Δ+4 {}
<POP 1189a-118a2 Epilogue> Σ0 ←0x1188a
@ 118a2
<LVAR 0x00a 4(r)>
<LVAR 0x008 1(r)>
<POP 118a2-118fa Body>
<POP 118a2-118b8 Prologue> Σ0 ↓
<POP 118b8-118c0 RegCacheLoad> Σ0 ↓
<POP 118c0-118e8 Naked> Σ0 ↓ →0x118f2
<MI 118c0 MOVE.L (A6+0xa),D4> {}
<MI 118c4 MOVEQ.L #0x0a,D3> {}
<Call 0x118c6 0x1080a> {}
_?divs_d3_d4
<MI 118cc MOVE.L (A4),-(A7)> Δ-4 {[4, '(A4)']}
<MI 118ce MOVE.L D4,D0> {[4, '(A4)']}
<MI 118d0 ADD.L #0x30,D0> {[4, '(A4)']}
<MI 118d2 MOVE.B D0,-(A7)> Δ-2 {[4, '(A4)']|[2, 'D0']}
<Call 0x118d4 0x10d66> {[4, '(A4)']|[2, 'D0']}
_AppendChar(MOD b : String; a : char)
<POP 118d6-118d8 StackAdj> Δ+2 {[4, '(A4)']}
<MI 118d8 MOVE.L (A4),(A7)> {[4, '(A4)']}
<MI 118da ADD.W #0x30,D3> {[4, '(A4)']}
<MI 118dc MOVE.B D3,-(A7)> Δ-2 {[4, '(A4)']|[2, 'D3']}
<Call 0x118de 0x10d66> {[4, '(A4)']|[2, 'D3']}
_AppendChar(MOD b : String; a : char)
<POP 118e0-118e2 StackAdj> Δ+6 {}
<MI 118e2 TST.B (A6+0x8)> {}
<MI 118e6 BEQ 0x118f2> {}
<POP 118e8-118f2 Naked> Σ0 ↓
<MI 118e8 MOVE.L (A4),-(A7)> Δ-4 {[4, '(A4)']}
<MI 118ea MOVE.B (A6+0x8),-(A7)> Δ-2 {[4, '(A4)']|[2, '(A6+0x8)']}
<Call 0x118ee 0x10d66> {[4, '(A4)']|[2, '(A6+0x8)']}
_AppendChar(MOD b : String; a : char)
<POP 118f0-118f2 StackAdj> Δ+6 {}
<POP 118f2-118fa Epilogue> Σ0 ←0x118c0
@ 118fa
_TimeToText()
<LVAR 0x00c 4(w)>
<LVAR 0x00b 1(r)>
<LVAR 0x00a 1(r) 2(r)>
<LVAR 0x008 2(r)>
<LVAR -0x004 2(w)>
<LVAR -0x014 @ 4(rw)>
<POP 118fa-11a36 Body>
<POP 118fa-11910 Prologue> Σ0 ↓
<POP 11910-11922 RegCacheLoad> Σ0 ↓
<POP 11922-1192c Naked> Σ0 ↓ →0x11952
<MI 11922 MOVE.W (A6+0xa),D0> {}
<MI 11924 LSL.W #0x7,D0> {}
<MI 11926 LSR.W #0x8,D0> {}
<MI 11928 LSR.W #0x4,D0> {}
<MI 1192a BNE 0x11952> {}
<POP 1192c-11952 Naked> Σ0 →0x11a2a
<Blob 0x1192c [18] @> Δ-18 {[«18""»]}
<POP 11938-1193a StackAdj> Δ-4 {[«18""»]|[-4-]}
<Lit 0x1193a 18> {[«18""»]|[$$??:??:?? ??-???-??]}
<MI 1194a MOVE.L (A7)+,(A6-0x14)> Δ+4 {[«18""»]}
<POP 1194c-1194e StackAdj> Δ+18 {}
<MI 1194e BRA 0x11a2a> {}
<POP 11952-11a2a Naked> Σ0 ↓ ←0x11922
<Pointer.fp 0x11952 <LVAR -0x014 @ 4(rw)>> Δ-4 {[@@-20]}
<Call 0x11954 0x10cfa> {[@@-20]}
_NewString(VAR a : String)
<POP 1195a-1195c StackAdj> Δ+4 {}
<MI 1195c CLR.L D0> {}
<MI 1195e MOVE.W (A6+0x8),D0> {}
<MI 11962 DIVU.W #0x708,D0> {}
<MI 11966 CLR.L D1> {}
<MI 11968 MOVE.W D0,D1> {}
<MI 1196a MOVE.L D1,D7> {}
<MI 1196c SWAP.W D0> {}
<MI 1196e MOVE.W D0,(A6-0x4)> {}
<MI 11972 CLR.L D1> {}
<MI 11974 MOVE.W D0,D1> {}
<MI 11976 DIVU.W #0x1e,D1> {}
<MI 1197a CLR.L D0> {}
<MI 1197c MOVE.W D1,D0> {}
<MI 1197e MOVE.L D0,D6> {}
<MI 11980 SWAP.W D1> {}
<MI 11982 ASL.W #0x1,D1> {}
<MI 11984 CLR.L D0> {}
<MI 11986 MOVE.W D1,D0> {}
<MI 11988 MOVE.L D0,D5> {}
<MI 1198a MOVE.L D7,-(A7)> Δ-4 {[4, 'D7']}
<Const 0x1198c 0x3a.2> Δ-2 {[4, 'D7']|[#58]}
<MI 1198e LEA.L (A6-0x14),A4> {[4, 'D7']|[#58]}
<Call 0x11990 0x118a2> {[4, 'D7']|[#58]}
<POP 11992-11994 StackAdj> Δ+2 {[4, 'D7']}
<MI 11994 MOVE.L D6,(A7)> {[4, 'D6']}
<Const 0x11996 0x3a.2> Δ-2 {[4, 'D6']|[#58]}
<MI 11998 LEA.L (A6-0x14),A4> {[4, 'D6']|[#58]}
<Call 0x1199a 0x118a2> {[4, 'D6']|[#58]}
<POP 1199c-1199e StackAdj> Δ+2 {[4, 'D6']}
<MI 1199e MOVE.L D5,(A7)> {[4, 'D5']}
<Const 0x119a0 0x20.2> Δ-2 {[4, 'D5']|[#32]}
<MI 119a4 LEA.L (A6-0x14),A4> {[4, 'D5']|[#32]}
<Call 0x119a6 0x118a2> {[4, 'D5']|[#32]}
<POP 119a8-119aa StackAdj> Δ+6 {}
<MI 119aa CLR.L D0> {}
<MI 119ac MOVE.B (A6+0xb),D0> {}
<MI 119b0 LSL.B #0x3,D0> {}
<MI 119b2 LSR.B #0x3,D0> {}
<MI 119b4 MOVE.L D0,-(A7)> Δ-4 {[4, 'D0']}
<Const 0x119b6 0x2d.2> Δ-2 {[4, 'D0']|[#45]}
<MI 119ba LEA.L (A6-0x14),A4> {[4, 'D0']|[#45]}
<Call 0x119bc 0x118a2> {[4, 'D0']|[#45]}
<POP 119be-119c0 StackAdj> Δ+6 {}
<MI 119c0 MOVE.W (A6+0xa),D0> {}
<MI 119c2 LSL.W #0x7,D0> {}
<MI 119c4 LSR.W #0x8,D0> {}
<MI 119c6 LSR.W #0x4,D0> {}
<MI 119c8 MULU.W #0x3,D0> {}
<MI 119cc CLR.L D1> {}
<MI 119ce MOVE.W D0,D1> {}
<MI 119d0 LEA.L 0x116ca,A0> {}
<POP 119d4-119d6 StackAdj> Δ-4 {[-4-]}
<MI 119d6 MOVE.B (A0+D1.L-#0x3),(A7)> {[-4-]}
<MI 119da MOVE.B (A0+D1.L-#0x2),(A7+0x1)> {[-4-]}
<MI 119e0 MOVE.B (A0+D1.L-#0x1),(A7+0x2)> {[-4-]}
<POP 119e6-119e8 StackAdj> Δ-4 {[-8-]}
<MI 119e8 MOVE.L (A6-0x14),-(A7)> Δ-4 {[-8-]|[4, '(A6-0x14)']}
<POP 119ea-119ec StackAdj> Δ-4 {[-8-]|[4, '(A6-0x14)']|[-4-]}
<Lit 0x119ec> {[-8-]|[4, '(A6-0x14)']|[$$…]}
<Pointer.sp 0x119ec 12> Δ-4
<Const 0x119f0 0x1.2> Δ-2
<Const 0x119f2 0x3.2> Δ-2
<Call 0x119f6 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 119fc-119fe StackAdj> Δ+8
<Call 0x119fe 0x10f2c> {[-8-]|[4, '(A6-0x14)']|[$$…]}
_StringCat2(a, b : String) : String
<POP 11a04-11a06 StackAdj> Δ+8 {[-8-]}
<MI 11a06 MOVE.L (A7)+,(A6-0x14)> Δ+4 {[-4-]}
<MI 11a08 MOVE.L (A6-0x14),(A7)> {[4, '(A6-0x14)']}
<Const 0x11a0a 0x2d.2> Δ-2 {[4, '(A6-0x14)']|[#45]}
<Call 0x11a0e 0x10d66> {[4, '(A6-0x14)']|[#45]}
_AppendChar(MOD b : String; a : char)
<POP 11a14-11a16 StackAdj> Δ+6 {}
<MI 11a16 CLR.L D0> {}
<MI 11a18 MOVE.B (A6+0xa),D0> {}
<MI 11a1a LSR.B #0x1,D0> {}
<MI 11a1c ADDQ.W #0x1,D0> {}
<MI 11a1e EXTW.L D0> {}
<MI 11a20 MOVE.L D0,-(A7)> Δ-4 {[4, 'D0']}
<MI 11a22 CLR.B -(A7)> Δ-2 {[4, 'D0']|[#0]}
<MI 11a24 LEA.L (A6-0x14),A4> {[4, 'D0']|[#0]}
<Call 0x11a26 0x118a2> {[4, 'D0']|[#0]}
<POP 11a28-11a2a StackAdj> Δ+6 {}
<POP 11a2a-11a2e Naked> Σ0 ↓ ←0x1192c
<MI 11a2a MOVE.L (A6-0x14),(A6+0xc)> {}
<POP 11a2e-11a36 Epilogue> Σ0
@ 11a36
<LVAR 0x018 4(r)>
<LVAR 0x014 4(r)>
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x004 @ 4(r)>
<POP 11a36-11ab4 Body>
<POP 11a36-11a4c Prologue> Σ0 ↓
<POP 11a4c-11a52 RegCacheLoad> Σ0 ↓
<POP 11a52-11a74 Naked> Σ0 ↓ →0x11a80
<Pointer.fp 0x11a52 <LVAR -0x004 @ 4(r)>> Δ-4 {[@@-4]}
<Call 0x11a54 0x10cfa> {[@@-4]}
_NewString(VAR a : String)
<POP 11a5a-11a5c StackAdj> Δ+4 {}
<MI 11a5c MOVEA.L (A6+0x8),A0> {}
<MI 11a60 MOVE.L (A6+0x18),-(A7)> Δ-4 {[4, '(A6+0x18)']}
<MI 11a64 MOVE.L (A6-0x4),-(A7)> Δ-4 {[4, '(A6+0x18)']|[4, '(A6-0x4)']}
<MI 11a66 PEA.L (A0)> Δ-4 {[4, '(A6+0x18)']|[4, '(A6-0x4)']|[4, '^(A0)']}
<Call 0x11a68 0x114ea> {[4, '(A6+0x18)']|[4, '(A6-0x4)']|[4, '^(A0)']}
_FirstField(MOD input : String; MOD output : String; VAR c : Bool
<POP 11a6e-11a70 StackAdj> Δ+12 {}
<MI 11a70 TST.B (A0)> {}
<MI 11a72 BNE 0x11a80> {}
<POP 11a74-11a80 Naked> Σ0 →0x11aac
<Pointer.fp 0x11a74 <LVAR -0x004 @ 4(r)>> Δ-4 {[@@-4]}
<Call 0x11a76 0x10d36> {[@@-4]}
_FreeString(VAR a : String)
<POP 11a7c-11a7e StackAdj> Δ+4 {}
<MI 11a7e BRA 0x11aac> {}
<POP 11a80-11a98 Naked> Σ0 ↓ →0x11aaa ←0x11a52
<MI 11a80 MOVEA.L (A6+0x14),A1> {}
<MI 11a84 MOVE.L (A6-0x4),-(A7)> Δ-4 {[4, '(A6-0x4)']}
<MI 11a86 PEA.L (A0)> Δ-4 {[4, '(A6-0x4)']|[4, '^(A0)']}
<MI 11a88 PEA.L (A1)> Δ-4 {[4, '(A6-0x4)']|[4, '^(A0)']|[4, '^(A1)']}
<Call 0x11a8a 0x1127c> {[4, '(A6-0x4)']|[4, '^(A0)']|[4, '^(A1)']}
_String2Long(src : String; VAR status : Bool; VAR retval : Long)
<POP 11a90-11a92 StackAdj> Δ+12 {}
<MI 11a92 MOVEQ.L #0x00,D0> {}
<MI 11a94 TST.B (A0)> {}
<MI 11a96 BEQ 0x11aaa> {}
<POP 11a98-11aa0 Naked> Σ0 ↓ →0x11aaa
<MI 11a98 MOVE.L (A1),D1> {}
<MI 11a9a CMP.L (A6+0x10),D1> {}
<MI 11a9e BLT 0x11aaa> {}
<POP 11aa0-11aa8 Naked> Σ0 ↓ →0x11aaa
<MI 11aa0 MOVE.L (A1),D1> {}
<MI 11aa2 CMP.L (A6+0xc),D1> {}
<MI 11aa6 BGT 0x11aaa> {}
<POP 11aa8-11aaa Naked> Σ0 ↓
<MI 11aa8 ADDQ.B #0x1,D0> {}
<POP 11aaa-11aac Naked> Σ0 ↓ ←0x11a80 ←0x11a98 ←0x11aa0
<MI 11aaa MOVE.B D0,(A0)> {}
<POP 11aac-11ab4 Epilogue> Σ0 ←0x11a74
@ 11ab4
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x00c @ 4(rw)>
<LVAR -0x010 @ 4(rw)>
<POP 11ab4-11b84 Body>
<POP 11ab4-11aca Prologue> Σ0 ↓
<POP 11aca-11ad4 RegCacheLoad> Σ0 ↓
<POP 11ad4-11af6 Naked> Σ0 ↓ →0x11af8
<Pointer.fp 0x11ad4 <LVAR -0x010 @ 4(rw)>> Δ-4 {[@@-16]}
<Call 0x11ad6 0x10cfa> {[@@-16]}
_NewString(VAR a : String)
<POP 11adc-11ade StackAdj> Δ+4 {}
<MI 11ade MOVEA.L (A6+0x8),A0> {}
<MI 11ae2 MOVE.L (A6+0x10),-(A7)> Δ-4 {[4, '(A6+0x10)']}
<MI 11ae6 MOVE.L (A6-0x10),-(A7)> Δ-4 {[4, '(A6+0x10)']|[4, '(A6-0x10)']}
<MI 11ae8 PEA.L (A0)> Δ-4 {[4, '(A6+0x10)']|[4, '(A6-0x10)']|[4, '^(A0)']}
<Call 0x11aea 0x114ea> {[4, '(A6+0x10)']|[4, '(A6-0x10)']|[4, '^(A0)']}
_FirstField(MOD input : String; MOD output : String; VAR c : Bool
<POP 11af0-11af2 StackAdj> Δ+12 {}
<MI 11af2 TST.B (A0)> {}
<MI 11af4 BNE 0x11af8> {}
<POP 11af6-11af8 Naked> Σ0 →0x11b72
<MI 11af6 BRA 0x11b72> {}
<POP 11af8-11b08 Naked> Σ0 ↓ ←0x11ad4
<POP 11af8-11afa StackAdj> Δ-4 {[-4-]}
<MI 11afa MOVE.L (A6-0x10),-(A7)> Δ-4 {[-4-]|[4, '(A6-0x10)']}
<Call 0x11afc 0x113b0> {[-4-]|[4, '(A6-0x10)']}
_ToUpper(a : String) : String
<POP 11b02-11b04 StackAdj> Δ+4 {[-4-]}
<MI 11b04 MOVE.L (A7)+,(A6-0x10)> Δ+4 {}
<MI 11b06 MOVEQ.L #0x01,D6> {}
<POP 11b08-11b5e Naked> Σ0 ↓ →0x11b66 ←0x11b66
<MI 11b08 MOVE.L D6,D4> {}
<MI 11b0a MOVEQ.L #0x03,D3> {}
<Call 0x11b0c 0x107ea> {}
_?muls_d3_d4
<MI 11b12 LEA.L 0x116ca,A0> {}
<POP 11b16-11b18 StackAdj> Δ-4 {[-4-]}
<MI 11b18 MOVE.B (A0+D4.L-#0x3),(A7)> {[-4-]}
<MI 11b1c MOVE.B (A0+D4.L-#0x2),(A7+0x1)> {[-4-]}
<MI 11b22 MOVE.B (A0+D4.L-#0x1),(A7+0x2)> {[-4-]}
<POP 11b28-11b2a StackAdj> Δ-4 {[-8-]}
<Lit 0x11b2a> {[-4-]|[$$…]}
<Pointer.sp 0x11b2a 4> Δ-4
<Const 0x11b2e 0x1.2> Δ-2
<Const 0x11b32 0x3.2> Δ-2
<Call 0x11b36 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 11b3c-11b3e StackAdj> Δ+8
<MI 11b3e MOVE.L (A7)+,(A6-0xc)> Δ+4 {[-4-]}
<POP 11b40-11b42 StackAdj> Δ+2 {[-2-]}
<MI 11b42 MOVE.L (A6-0x10),-(A7)> Δ-4 {[-2-]|[4, '(A6-0x10)']}
<MI 11b44 MOVE.L (A6-0xc),-(A7)> Δ-4 {[-2-]|[4, '(A6-0x10)']|[4, '(A6-0xc)']}
<Call 0x11b46 0x10e62> {[-2-]|[4, '(A6-0x10)']|[4, '(A6-0xc)']}
_StringEqual(a, b : String) : Byte
<POP 11b4c-11b4e StackAdj> Δ+8 {[-2-]}
<MI 11b4e MOVE.B (A7)+,D7> Δ+2 {}
<Pointer.fp 0x11b50 <LVAR -0x00c @ 4(rw)>> Δ-4 {[@@-12]}
<Call 0x11b52 0x10d36> {[@@-12]}
_FreeString(VAR a : String)
<POP 11b58-11b5a StackAdj> Δ+4 {}
<MI 11b5a TST.B D7> {}
<MI 11b5c BEQ 0x11b66> {}
<POP 11b5e-11b66 Naked> Σ0 →0x11b72
<MI 11b5e MOVEA.L (A6+0xc),A0> {}
<MI 11b62 MOVE.L D6,(A0)> {}
<MI 11b64 BRA 0x11b72> {}
<POP 11b66-11b6c Naked> Σ0 ↓ →0x11b08 ←0x11b08
<MI 11b66 ADDQ.L #0x1,D6> {}
<MI 11b68 CMP.L #0x0c,D6> {}
<MI 11b6a BLE 0x11b08> {}
<POP 11b6c-11b72 Naked> Σ0 ↓
<MI 11b6c MOVEA.L (A6+0x8),A0> {}
<MI 11b70 CLR.B (A0)> {}
<POP 11b72-11b7c Naked> Σ0 ↓ ←0x11af6 ←0x11b5e
<Pointer.fp 0x11b72 <LVAR -0x010 @ 4(rw)>> Δ-4 {[@@-16]}
<Call 0x11b74 0x10d36> {[@@-16]}
_FreeString(VAR a : String)
<POP 11b7a-11b7c StackAdj> Δ+4 {}
<POP 11b7c-11b84 Epilogue> Σ0
@ 11b84
_ConvertTimestamp(MOD input : String; b : L; VAR status : Bool)
<LVAR 0x010 @ 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x008 @ 4(r)>
<LVAR -0x00c @ 4(r)>
<LVAR -0x010 @ 4(r)>
<LVAR -0x014 @ 4(r)>
<LVAR -0x018 @ 4(r)>
<LVAR -0x01c @ 4(r)>
<POP 11b84-11d04 Body>
<POP 11b84-11b9a Prologue> Σ0 ↓
<POP 11b9a-11bac RegCacheLoad> Σ0 ↓
<POP 11bac-11bb8 Naked> Σ0 Δ-8 ↓
<MI 11bac MOVEA.L (A6+0x10),A0> {}
<MI 11bae MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 11bb0 MOVE.W (A0),D0> {[4, 'A0']}
<MI 11bb2 EXTW.L D0> {[4, 'A0']}
<MI 11bb4 MOVE.L D0,-(A7)> Δ-4 {[4, 'A0']|[4, 'D0']}
<MI 11bb6 MOVEQ.L #0x01,D7> {[4, 'A0']|[4, 'D0']}
<POP 11bb8-11bbc Naked> Σ-8 ↓ →0x11bda ←0x11bd6
<MI 11bb8 CMP.L (A7),D7> {[-8-]}
<MI 11bba BGT 0x11bda> {[-8-]}
<POP 11bbc-11bca Naked> Σ-8 ↓ →0x11bd0
<MI 11bbc MOVEA.L (A7+0x4),A0> {[-8-]}
<MI 11bc0 MOVE.B (A0+D7.L+#0x1),D0> {[-8-]}
<MI 11bc4 CMPI.B #0x3a,D0> {[-8-]}
<MI 11bc8 BEQ 0x11bd0> {[-8-]}
<POP 11bca-11bd0 Naked> Σ-8 ↓ →0x11bd6
<MI 11bca CMPI.B #0x2d,D0> {[-8-]}
<MI 11bce BNE 0x11bd6> {[-8-]}
<POP 11bd0-11bd6 Naked> Σ-8 ↓ ←0x11bbc
<MI 11bd0 MOVE.B #0x20,(A0+D7.L+#0x1)> {[-8-]}
<POP 11bd6-11bda Naked> Σ-8 ↓ →0x11bb8 ←0x11bca
<MI 11bd6 ADDQ.L #0x1,D7> {[-8-]}
<MI 11bd8 BVC 0x11bb8> {[-8-]}
<POP 11bda-11bfa Naked> Σ-8 Δ+8 ↓ →0x11bfe ←0x11bb8
<POP 11bda-11bdc StackAdj> Δ+8 {}
<MI 11bdc MOVEA.L (A6+0xc),A0> {}
<MI 11be0 CLR.L (A0)> {}
<MI 11be2 MOVEA.L (A6+0x8),A0> {}
<MI 11be4 MOVE.L (A6+0x10),-(A7)> Δ-4 {[4, '(A6+0x10)']}
<Pointer.fp 0x11be6 <LVAR -0x01c @ 4(r)>> Δ-4 {[4, '(A6+0x10)']|[@@-28]}
<Const 0x11bea 0x0.4> Δ-4 {[4, '(A6+0x10)']|[@@-28]|[##0]}
<Const 0x11bec 0x17.4> Δ-4 {[4, '(A6+0x10)']|[@@-28]|[##0]|[##23]}
<MI 11bf0 PEA.L (A0)> Δ-4 {[4, '(A6+0x10)']|[@@-28]|[##0]|[##23]|[4, '^(A0)']}
<Call 0x11bf2 0x11a36> {[4, '(A6+0x10)']|[@@-28]|[##0]|[##23]|[4, '^(A0)']}
<POP 11bf4-11bf6 StackAdj> Δ+20 {}
<MI 11bf6 TST.B (A0)> {}
<MI 11bf8 BNE 0x11bfe> {}
<POP 11bfa-11bfe Naked> Σ0 →0x11cf2
<MI 11bfa BRA 0x11cf2> {}
<POP 11bfe-11c16 Naked> Σ0 ↓ →0x11c1a ←0x11bda
<MI 11bfe MOVEA.L (A6+0x8),A0> {}
<MI 11c00 MOVE.L (A6+0x10),-(A7)> Δ-4 {[4, '(A6+0x10)']}
<Pointer.fp 0x11c02 <LVAR -0x018 @ 4(r)>> Δ-4 {[4, '(A6+0x10)']|[@@-24]}
<Const 0x11c06 0x0.4> Δ-4 {[4, '(A6+0x10)']|[@@-24]|[##0]}
<Const 0x11c08 0x3b.4> Δ-4 {[4, '(A6+0x10)']|[@@-24]|[##0]|[##59]}
<MI 11c0c PEA.L (A0)> Δ-4 {[4, '(A6+0x10)']|[@@-24]|[##0]|[##59]|[4, '^(A0)']}
<Call 0x11c0e 0x11a36> {[4, '(A6+0x10)']|[@@-24]|[##0]|[##59]|[4, '^(A0)']}
<POP 11c10-11c12 StackAdj> Δ+20 {}
<MI 11c12 TST.B (A0)> {}
<MI 11c14 BNE 0x11c1a> {}
<POP 11c16-11c1a Naked> Σ0 →0x11cf2
<MI 11c16 BRA 0x11cf2> {}
<POP 11c1a-11c32 Naked> Σ0 ↓ →0x11c36 ←0x11bfe
<MI 11c1a MOVEA.L (A6+0x8),A0> {}
<MI 11c1c MOVE.L (A6+0x10),-(A7)> Δ-4 {[4, '(A6+0x10)']}
<Pointer.fp 0x11c1e <LVAR -0x014 @ 4(r)>> Δ-4 {[4, '(A6+0x10)']|[@@-20]}
<Const 0x11c22 0x0.4> Δ-4 {[4, '(A6+0x10)']|[@@-20]|[##0]}
<Const 0x11c24 0x3b.4> Δ-4 {[4, '(A6+0x10)']|[@@-20]|[##0]|[##59]}
<MI 11c28 PEA.L (A0)> Δ-4 {[4, '(A6+0x10)']|[@@-20]|[##0]|[##59]|[4, '^(A0)']}
<Call 0x11c2a 0x11a36> {[4, '(A6+0x10)']|[@@-20]|[##0]|[##59]|[4, '^(A0)']}
<POP 11c2c-11c2e StackAdj> Δ+20 {}
<MI 11c2e TST.B (A0)> {}
<MI 11c30 BNE 0x11c36> {}
<POP 11c32-11c36 Naked> Σ0 →0x11cf2
<MI 11c32 BRA 0x11cf2> {}
<POP 11c36-11c50 Naked> Σ0 ↓ →0x11c54 ←0x11c1a
<MI 11c36 MOVEA.L (A6+0x8),A0> {}
<MI 11c38 MOVE.L (A6+0x10),-(A7)> Δ-4 {[4, '(A6+0x10)']}
<Pointer.fp 0x11c3a <LVAR -0x010 @ 4(r)>> Δ-4 {[4, '(A6+0x10)']|[@@-16]}
<Const 0x11c3e 0x1.4> Δ-4 {[4, '(A6+0x10)']|[@@-16]|[##1]}
<Const 0x11c42 0x1f.4> Δ-4 {[4, '(A6+0x10)']|[@@-16]|[##1]|[##31]}
<MI 11c46 PEA.L (A0)> Δ-4 {[4, '(A6+0x10)']|[@@-16]|[##1]|[##31]|[4, '^(A0)']}
<Call 0x11c48 0x11a36> {[4, '(A6+0x10)']|[@@-16]|[##1]|[##31]|[4, '^(A0)']}
<POP 11c4a-11c4c StackAdj> Δ+20 {}
<MI 11c4c TST.B (A0)> {}
<MI 11c4e BNE 0x11c54> {}
<POP 11c50-11c54 Naked> Σ0 →0x11cf2
<MI 11c50 BRA 0x11cf2> {}
<POP 11c54-11c6a Naked> Σ0 ↓ →0x11c6e ←0x11c36
<MI 11c54 MOVEA.L (A6+0x8),A0> {}
<MI 11c56 MOVE.L (A6+0x10),-(A7)> Δ-4 {[4, '(A6+0x10)']}
<Pointer.fp 0x11c58 <LVAR -0x00c @ 4(r)>> Δ-4 {[4, '(A6+0x10)']|[@@-12]}
<MI 11c5c PEA.L (A0)> Δ-4 {[4, '(A6+0x10)']|[@@-12]|[4, '^(A0)']}
<Call 0x11c5e 0x11ab4> {[4, '(A6+0x10)']|[@@-12]|[4, '^(A0)']}
<POP 11c62-11c66 StackAdj> Δ+12 {}
<MI 11c66 TST.B (A0)> {}
<MI 11c68 BNE 0x11c6e> {}
<POP 11c6a-11c6e Naked> Σ0 →0x11cf2
<MI 11c6a BRA 0x11cf2> {}
<POP 11c6e-11c88 Naked> Σ0 ↓ →0x11c8a ←0x11c54
<MI 11c6e MOVEA.L (A6+0x8),A0> {}
<MI 11c70 MOVE.L (A6+0x10),-(A7)> Δ-4 {[4, '(A6+0x10)']}
<Pointer.fp 0x11c72 <LVAR -0x008 @ 4(r)>> Δ-4 {[4, '(A6+0x10)']|[@@-8]}
<Const 0x11c76 0x1.4> Δ-4 {[4, '(A6+0x10)']|[@@-8]|[##1]}
<Const 0x11c7a 0x63.4> Δ-4 {[4, '(A6+0x10)']|[@@-8]|[##1]|[##99]}
<MI 11c7e PEA.L (A0)> Δ-4 {[4, '(A6+0x10)']|[@@-8]|[##1]|[##99]|[4, '^(A0)']}
<Call 0x11c80 0x11a36> {[4, '(A6+0x10)']|[@@-8]|[##1]|[##99]|[4, '^(A0)']}
<POP 11c82-11c84 StackAdj> Δ+20 {}
<MI 11c84 TST.B (A0)> {}
<MI 11c86 BNE 0x11c8a> {}
<POP 11c88-11c8a Naked> Σ0 →0x11cf2
<MI 11c88 BRA 0x11cf2> {}
<POP 11c8a-11cf2 Naked> Σ0 ↓ ←0x11c6e
<MI 11c8a MOVEA.L (A6+0xc),A0> {}
<MI 11c8e MOVE.L (A6-0x8),D0> {}
<MI 11c92 SUBQ.L #0x1,D0> {}
<MI 11c94 ANDI.B #0x01,(A0+0x2)> {}
<MI 11c9a LSL.B #0x1,D0> {}
<MI 11c9c OR.B D0,(A0+0x2)> {}
<MI 11ca0 MOVE.L (A6-0xc),D0> {}
<MI 11ca4 ANDI.W #0xfe1f,(A0+0x2)> {}
<MI 11caa LSL.W #0x5,D0> {}
<MI 11cac OR.W D0,(A0+0x2)> {}
<MI 11cb0 MOVE.L (A6-0x10),D0> {}
<MI 11cb4 ANDI.B #0xe0,(A0+0x3)> {}
<MI 11cba OR.B D0,(A0+0x3)> {}
<MI 11cbe MOVE.L (A6-0x1c),D4> {}
<MI 11cc2 MOVE.L #0x708,D3> {}
<Call 0x11cc8 0x107ea> {}
_?muls_d3_d4
<MI 11cce MOVE.L D4,-(A7)> Δ-4 {[4, 'D4']}
<MI 11cd0 MOVE.L (A6-0x18),D4> {[4, 'D4']}
<MI 11cd4 MOVEQ.L #0x1e,D3> {[4, 'D4']}
<Call 0x11cd6 0x107ea> {[4, 'D4']}
_?muls_d3_d4
<MI 11cdc MOVE.L (A7),D0> {[4, 'D4']}
<MI 11cde ADD.L D4,D0> {[4, 'D4']}
<POP 11ce0-11ce2 StackAdj> Δ+4 {}
<MI 11ce2 MOVE.L (A6-0x14),D4> {}
<MI 11ce6 MOVEQ.L #0x02,D3> {}
<Call 0x11ce8 0x1080a> {}
_?divs_d3_d4
<MI 11cee ADD.L D0,D4> {}
<MI 11cf0 MOVE.W D4,(A0)> {}
<POP 11cf2-11cfc Naked> Σ0 ↓ ←0x11bfa ←0x11c16 ←0x11c32 ←0x11c50 ←0x11c6a ←0x11c88
<Pointer.fp 0x11cf2 <LVAR 0x010 @ 4(r)>> Δ-4 {[@@16]}
<Call 0x11cf4 0x10d36> {[@@16]}
_FreeString(VAR a : String)
<POP 11cfa-11cfc StackAdj> Δ+4 {}
<POP 11cfc-11d04 Epilogue> Σ0
@ 121da
_Modulus(a, b : Quad) : Quad
<LVAR 0x01c 4(w)>
<LVAR 0x018 4(w)>
<LVAR 0x014 4(r)>
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 121da-12240 Body>
<POP 121da-121f0 Prologue> Σ0 ↓
<POP 121f0-121f2 RegCacheLoad> Σ0 ↓
<POP 121f2-12238 Naked> Σ0 ↓
<POP 121f2-121f4 StackAdj> Δ-8 {[-8-]}
<MI 121f4 MOVE.L (A6+0x14),-(A7)> Δ-4 {[-8-]|[4, '(A6+0x14)']}
<MI 121f8 MOVE.L (A6+0x10),-(A7)> Δ-4 {[-8-]|[4, '(A6+0x14)']|[4, '(A6+0x10)']}
<POP 121fc-121fe StackAdj> Δ-16 {[-8-]|[4, '(A6+0x14)']|[4, '(A6+0x10)']|[-16-]}
<MI 121fe MOVE.L (A6+0x14),-(A7)> Δ-4 {[-8-]|[4, '(A6+0x14)']|[4, '(A6+0x10)']|[-16-]|[4, '(A6+0x14)']}
<MI 12202 MOVE.L (A6+0x10),-(A7)> Δ-4 {[-8-]|[4, '(A6+0x14)']|[4, '(A6+0x10)']|[-16-]|[4, '(A6+0x14)']|[4, '(A6+0x10)']}
<MI 12206 MOVE.L (A6+0xc),-(A7)> Δ-4 {[-8-]|[4, '(A6+0x14)']|[4, '(A6+0x10)']|[-16-]|[4, '(A6+0x14)']|[4, '(A6+0x10)']|[4, '(A6+0xc)']}
<MI 1220a MOVE.L (A6+0x8),-(A7)> Δ-4 {[-8-]|[4, '(A6+0x14)']|[4, '(A6+0x10)']|[-16-]|[4, '(A6+0x14)']|[4, '(A6+0x10)']|[4, '(A6+0xc)']|[4, '(A6+0x8)']}
<Call 0x1220e 0x11dec> {[-8-]|[4, '(A6+0x14)']|[4, '(A6+0x10)']|[-16-]|[4, '(A6+0x14)']|[4, '(A6+0x10)']|[4, '(A6+0xc)']|[4, '(A6+0x8)']}
_Divide(a, b : Quad) : Quad
<POP 12214-12218 StackAdj> Δ+12 {[-8-]|[4, '(A6+0x14)']|[4, '(A6+0x10)']|[-16-]|[4, '(A6+0x14)']}
<MI 12218 MOVE.L (A6+0xc),(A7)> {[-8-]|[4, '(A6+0x14)']|[4, '(A6+0x10)']|[-16-]|[4, '(A6+0xc)']}
<MI 1221c MOVE.L (A6+0x8),-(A7)> Δ-4 {[-8-]|[4, '(A6+0x14)']|[4, '(A6+0x10)']|[-16-]|[4, '(A6+0xc)']|[4, '(A6+0x8)']}
<Call 0x12220 0x11d78> {[-8-]|[4, '(A6+0x14)']|[4, '(A6+0x10)']|[-16-]|[4, '(A6+0xc)']|[4, '(A6+0x8)']}
_Multiply(a, b : Quad) : Quad
<POP 12226-12228 StackAdj> Δ+16 {[-8-]|[4, '(A6+0x14)']|[4, '(A6+0x10)']|[-8-]}
<Call 0x12228 0x11d3e> {[-8-]|[4, '(A6+0x14)']|[4, '(A6+0x10)']|[-8-]}
_Subtract(a, b : Quad) : Quad
<POP 1222e-12230 StackAdj> Δ+16 {[-8-]}
<MI 12230 MOVE.L (A7)+,(A6+0x18)> Δ+4 {[-4-]}
<MI 12234 MOVE.L (A7)+,(A6+0x1c)> Δ+4 {}
<POP 12238-12240 Epilogue> Σ0
@ 12240
_?StringToInt64()
<LVAR 0x014 4(w)>
<LVAR 0x010 4(w)>
<LVAR 0x00c @ 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x003 1(rw)>
<LVAR -0x00e 2(rw)>
<LVAR -0x010 4(rw)>
<LVAR -0x014 4(rw)>
<LVAR -0x018 4(rw)>
<LVAR -0x01c 4(rw)>
<LVAR -0x020 4(rw)>
<LVAR -0x024 4(rw)>
<LVAR -0x028 4(rw)>
<POP 12240-123d8 Body> Δ+8
<POP 12240-12256 Prologue> Σ0 ↓
<POP 12256-1226e RegCacheLoad> Σ0 ↓
<POP 1226e-12282 Naked> Σ0 ↓ →0x12286
<MI 1226e MOVE.L 0x1218e,(A6-0x24)> {}
<MI 12272 MOVE.L 0x12192,(A6-0x20)> {}
<MI 12276 MOVE.L (A6+0x8),D0> {}
<MI 1227a CMPI.L #0x00000002,D0> {}
<MI 12280 BCS 0x12286> {}
<POP 12282-12286 Naked> Σ0 ↓ →0x1228e
<MI 12282 CMP.L #0x10,D0> {}
<MI 12284 BLS 0x1228e> {}
<POP 12286-1228e Naked> Σ0 ↓ ←0x1226e
<Const 0x12286 0xb.2> Δ-2 {[#11]}
<Call 0x1228a 0x10704> {[#11]}
Program.Program_Failure()
<POP 1228c-1228e StackAdj> Δ+2 {}
<POP 1228e-122b0 Naked> Σ0 Δ-4 ↓ →0x122ba ←0x12282
<POP 0x1228e LimitCheck 0x0 ≤ D0 ≤ 0x10> {}
<MI 12294 MOVE.L D0,D1> {}
<MI 12296 ASL.L #0x2,D1> {}
<MI 12298 LEA.L 0x12196,A0> {}
<MI 1229c MOVE.L (A0+D1.L),(A6-0x28)> {}
<MI 122a0 MOVEA.L (A6+0xc),A0> {}
<MI 122a4 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 122a6 MOVE.B (A0+0x2),D1> {[4, 'A0']}
<MI 122aa CMPI.B #0x2d,D1> {[4, 'A0']}
<MI 122ae BNE 0x122ba> {[4, 'A0']}
<POP 122b0-122ba Naked> Σ-4 →0x122c0
<MI 122b0 MOVEQ.L #0x02,D5> {[-4-]}
<MI 122b2 MOVE.B #0x01,(A6-0x3)> {[-4-]}
<MI 122b8 BRA 0x122c0> {[-4-]}
<POP 122ba-122c0 Naked> Σ-4 ↓ ←0x1228e
<MI 122ba MOVEQ.L #0x01,D5> {[-4-]}
<MI 122bc CLR.B (A6-0x3)> {[-4-]}
<POP 122c0-122e8 Naked> Σ-4 Δ-4 ↓ ←0x122b0
<POP 122c0-122c2 StackAdj> Δ-8 {[-12-]}
<MI 122c2 MOVE.L D0,-(A7)> Δ-4 {[-12-]|[4, 'D0']}
<Call 0x122c4 0x1216a> {[-12-]|[4, 'D0']}
_Long2Quad(a : Long) : Quad
<POP 122ca-122cc StackAdj> Δ+4 {[-12-]}
<MI 122cc MOVE.L (A7)+,(A6-0x1c)> Δ+4 {[-8-]}
<MI 122d0 MOVE.L (A7)+,(A6-0x18)> Δ+4 {[-4-]}
<MI 122d4 MOVE.L 0x1218e,(A6-0x14)> {[-4-]}
<MI 122da MOVE.L 0x12192,(A6-0x10)> {[-4-]}
<MI 122e0 MOVE.W (A0),D0> {[-4-]}
<MI 122e2 EXTW.L D0> {[-4-]}
<MI 122e4 MOVE.L D0,-(A7)> Δ-4 {[-4-]|[4, 'D0']}
<MI 122e6 MOVE.L D5,D7> {[-4-]|[4, 'D0']}
<POP 122e8-122ee Naked> Σ-8 ↓ →0x123a2 ←0x12382
<MI 122e8 CMP.L (A7),D7> {[-8-]}
<MI 122ea BGT 0x123a2> {[-8-]}
<POP 122ee-122f2 Naked> Σ-8 ↓ →0x12306
<MI 122ee TST.L (A6-0x28)> {[-8-]}
<MI 122f0 BEQ 0x12306> {[-8-]}
<POP 122f2-12306 Naked> Σ-8 Δ-8 →0x1231c
<POP 122f2-122f4 StackAdj> Δ-8 {[-16-]}
<MI 122f4 MOVE.L (A6-0x20),-(A7)> Δ-4 {[-16-]|[4, '(A6-0x20)']}
<MI 122f6 MOVE.L (A6-0x24),-(A7)> Δ-4 {[-16-]|[4, '(A6-0x20)']|[4, '(A6-0x24)']}
<MI 122f8 MOVE.L (A6-0x28),-(A7)> Δ-4 {[-16-]|[4, '(A6-0x20)']|[4, '(A6-0x24)']|[4, '(A6-0x28)']}
<Call 0x122fa 0x12018> {[-16-]|[4, '(A6-0x20)']|[4, '(A6-0x24)']|[4, '(A6-0x28)']}
_BitShift(a : Quad ; howmuch : integer) : Quad
<POP 12300-12304 StackAdj> Δ+12 {[-16-]}
<MI 12304 BRA 0x1231c> {[-16-]}
<POP 12306-1231c Naked> Σ-8 Δ-8 ↓ ←0x122ee
<POP 12306-12308 StackAdj> Δ-8 {[-16-]}
<MI 12308 MOVE.L (A6-0x20),-(A7)> Δ-4 {[-16-]|[4, '(A6-0x20)']}
<MI 1230a MOVE.L (A6-0x24),-(A7)> Δ-4 {[-16-]|[4, '(A6-0x20)']|[4, '(A6-0x24)']}
<MI 1230c MOVE.L (A6-0x18),-(A7)> Δ-4 {[-16-]|[4, '(A6-0x20)']|[4, '(A6-0x24)']|[4, '(A6-0x18)']}
<MI 12310 MOVE.L (A6-0x1c),-(A7)> Δ-4 {[-16-]|[4, '(A6-0x20)']|[4, '(A6-0x24)']|[4, '(A6-0x18)']|[4, '(A6-0x1c)']}
<Call 0x12314 0x11d78> {[-16-]|[4, '(A6-0x20)']|[4, '(A6-0x24)']|[4, '(A6-0x18)']|[4, '(A6-0x1c)']}
_Multiply(a, b : Quad) : Quad
<POP 1231a-1231c StackAdj> Δ+16 {[-16-]}
<POP 1231c-1232c Naked> Σ-16 Δ+8 ↓ →0x1233e ←0x122f2
<MI 1231c MOVE.L (A7)+,(A6-0x24)> Δ+4 {[-12-]}
<MI 1231e MOVE.L (A7)+,(A6-0x20)> Δ+4 {[-8-]}
<MI 12320 MOVEA.L (A7+0x4),A0> {[-8-]}
<MI 12324 MOVE.B (A0+D7.L+#0x1),D6> {[-8-]}
<MI 12328 CMP.B #0x30,D6> {[-8-]}
<MI 1232a BCS 0x1233e> {[-8-]}
<POP 1232c-12332 Naked> Σ-8 ↓ →0x1233e
<MI 1232c CMPI.B #0x39,D6> {[-8-]}
<MI 12330 BHI 0x1233e> {[-8-]}
<POP 12332-12338 Naked> Σ-8 ↓
<MI 12332 CLR.L D0> {[-8-]}
<MI 12334 MOVE.B D6,D0> {[-8-]}
<MI 12336 SUB.W #0x30,D0> {[-8-]}
<POP 12338-1233e Naked> Σ-8 →0x12370 ←0x1234a ←0x12360
<MI 12338 MOVE.W D0,(A6-0xe)> {[-8-]}
<MI 1233c BRA 0x12370> {[-8-]}
<POP 1233e-12344 Naked> Σ-8 ↓ →0x12354 ←0x1231c ←0x1232c
<MI 1233e CMPI.B #0x41,D6> {[-8-]}
<MI 12342 BCS 0x12354> {[-8-]}
<POP 12344-1234a Naked> Σ-8 ↓ →0x12354
<MI 12344 CMPI.B #0x46,D6> {[-8-]}
<MI 12348 BHI 0x12354> {[-8-]}
<POP 1234a-12354 Naked> Σ-8 →0x12338
<MI 1234a CLR.L D0> {[-8-]}
<MI 1234c MOVE.B D6,D0> {[-8-]}
<MI 1234e SUBI.W #0x0037,D0> {[-8-]}
<MI 12352 BRA 0x12338> {[-8-]}
<POP 12354-1235a Naked> Σ-8 ↓ →0x1236a ←0x1233e ←0x12344
<MI 12354 CMPI.B #0x61,D6> {[-8-]}
<MI 12358 BCS 0x1236a> {[-8-]}
<POP 1235a-12360 Naked> Σ-8 ↓ →0x1236a
<MI 1235a CMPI.B #0x66,D6> {[-8-]}
<MI 1235e BHI 0x1236a> {[-8-]}
<POP 12360-1236a Naked> Σ-8 →0x12338
<MI 12360 CLR.L D0> {[-8-]}
<MI 12362 MOVE.B D6,D0> {[-8-]}
<MI 12364 SUBI.W #0x0057,D0> {[-8-]}
<MI 12368 BRA 0x12338> {[-8-]}
<POP 1236a-12370 Naked> Σ-8 ↓ ←0x12354 ←0x1235a
<Const 0x1236a 0xd.2> Δ-2 {[-8-]|[#13]}
<Call 0x1236c 0x10704> {[-8-]|[#13]}
Program.Program_Failure()
<POP 1236e-12370 StackAdj> Δ+2 {[-8-]}
<POP 12370-1237c Naked> Σ-8 ↓ →0x12382 ←0x12338
<MI 12370 CLR.L D0> {[-8-]}
<MI 12372 MOVE.W (A6-0xe),D0> {[-8-]}
<MI 12376 CMP.L (A6+0x8),D0> {[-8-]}
<MI 1237a BCS 0x12382> {[-8-]}
<POP 1237c-12382 Naked> Σ-8 ↓
<Const 0x1237c 0xd.2> Δ-2 {[-8-]|[#13]}
<Call 0x1237e 0x10704> {[-8-]|[#13]}
Program.Program_Failure()
<POP 12380-12382 StackAdj> Δ+2 {[-8-]}
<POP 12382-123a2 Naked> Σ-8 ↓ →0x122e8 ←0x12370
<POP 12382-12384 StackAdj> Δ-8 {[-16-]}
<MI 12384 MOVE.L (A6-0x20),-(A7)> Δ-4 {[-16-]|[4, '(A6-0x20)']}
<MI 12386 MOVE.L (A6-0x24),-(A7)> Δ-4 {[-16-]|[4, '(A6-0x20)']|[4, '(A6-0x24)']}
<MI 12388 MOVE.L (A6-0x10),-(A7)> Δ-4 {[-16-]|[4, '(A6-0x20)']|[4, '(A6-0x24)']|[4, '(A6-0x10)']}
<MI 1238c MOVE.L (A6-0x14),-(A7)> Δ-4 {[-16-]|[4, '(A6-0x20)']|[4, '(A6-0x24)']|[4, '(A6-0x10)']|[4, '(A6-0x14)']}
<Call 0x12390 0x11d04> {[-16-]|[4, '(A6-0x20)']|[4, '(A6-0x24)']|[4, '(A6-0x10)']|[4, '(A6-0x14)']}
_Add(a, b : Quad) : Quad
<POP 12396-12398 StackAdj> Δ+16 {[-16-]}
<MI 12398 MOVE.L (A7)+,(A6-0x24)> Δ+4 {[-12-]}
<MI 1239a MOVE.L (A7)+,(A6-0x20)> Δ+4 {[-8-]}
<MI 1239c ADDQ.L #0x1,D7> {[-8-]}
<MI 1239e BVC 0x122e8> {[-8-]}
<POP 123a2-123b6 Naked> Σ-8 Δ+8 ↓ →0x123c8 ←0x122e8
<POP 123a2-123a4 StackAdj> Δ+8 {}
<Pointer.fp 0x123a4 <LVAR 0x00c @ 4(r)>> Δ-4 {[@@12]}
<Call 0x123a8 0x10d36> {[@@12]}
_FreeString(VAR a : String)
<POP 123ae-123b0 StackAdj> Δ+4 {}
<MI 123b0 TST.B (A6-0x3)> {}
<MI 123b4 BEQ 0x123c8> {}
<POP 123b6-123c8 Naked> Σ0 ↓
<POP 123b6-123b8 StackAdj> Δ-8 {[-8-]}
<MI 123b8 MOVE.L (A6-0x20),-(A7)> Δ-4 {[-8-]|[4, '(A6-0x20)']}
<MI 123ba MOVE.L (A6-0x24),-(A7)> Δ-4 {[-8-]|[4, '(A6-0x20)']|[4, '(A6-0x24)']}
<Call 0x123bc 0x11fb4> {[-8-]|[4, '(A6-0x20)']|[4, '(A6-0x24)']}
_Negate(a : Quad) : Quad
<POP 123c2-123c4 StackAdj> Δ+8 {[-8-]}
<MI 123c4 MOVE.L (A7)+,(A6-0x24)> Δ+4 {[-4-]}
<MI 123c6 MOVE.L (A7)+,(A6-0x20)> Δ+4 {}
<POP 123c8-123d0 Naked> Σ0 ↓ ←0x123a2
<MI 123c8 MOVE.L (A6-0x24),(A6+0x10)> {}
<MI 123cc MOVE.L (A6-0x20),(A6+0x14)> {}
<POP 123d0-123d8 Epilogue> Σ0
@ 123d8
_Quad2String(a : Quad; radix : Long ) : String
<LVAR 0x014 4(w)>
<LVAR 0x010 4(rw)>
<LVAR 0x00c 2(r) 4(rw)>
<LVAR 0x008 4(r)>
<LVAR -0x002 2(rw)>
<LVAR -0x004 4(w)>
<LVAR -0x008 4(w)>
<LVAR -0x00c 4(rw)>
<LVAR -0x010 4(rw)>
<LVAR -0x014 @ 4(r)>
<LVAR -0x020 @ 4(r)>
<POP 123d8-125be Body>
<POP 123d8-123ee Prologue> Σ0 ↓
<POP 123ee-12406 RegCacheLoad> Σ0 ↓
<POP 12406-12412 Naked> Σ0 ↓ →0x12416
<MI 12406 MOVE.L (A6+0x8),D0> {}
<MI 1240a CMPI.L #0x00000002,D0> {}
<MI 12410 BCS 0x12416> {}
<POP 12412-12416 Naked> Σ0 ↓ →0x12420
<MI 12412 CMP.L #0x10,D0> {}
<MI 12414 BLS 0x12420> {}
<POP 12416-12420 Naked> Σ0 ↓ ←0x12406
<Const 0x12416 0xc.2> Δ-2 {[#12]}
<Call 0x12418 0x10704> {[#12]}
Program.Program_Failure()
<POP 1241e-12420 StackAdj> Δ+2 {}
<POP 12420-12430 Naked> Σ0 ↓ →0x124a4 ←0x12412
<Pointer.fp 0x12420 <LVAR -0x020 @ 4(r)>> Δ-4 {[@@-32]}
<Call 0x12422 0x10cfa> {[@@-32]}
_NewString(VAR a : String)
<POP 12428-1242a StackAdj> Δ+4 {}
<MI 1242a MOVEQ.L #0x01,D5> {}
<MI 1242c CMP.L #0x10,D0> {}
<MI 1242e BNE 0x124a4> {}
<POP 12430-12432 Naked> Σ0 ↓
<MI 12430 MOVEQ.L #0x00,D6> {}
<POP 12432-1243c Naked> Σ0 ↓ →0x1244e ←0x12480
<MI 12432 MOVE.W (A6+0xc),D7> {}
<MI 12434 LSR.W #0x8,D7> {}
<MI 12436 LSR.W #0x4,D7> {}
<MI 12438 CMP.W #0x09,D7> {}
<MI 1243a BLS 0x1244e> {}
<POP 1243c-1244e Naked> Σ0 ↓
<MI 1243c CLR.L D0> {}
<MI 1243e MOVE.W D7,D0> {}
<MI 12440 ADDQ.L #0x7,D0> {}
<POP 0x12442 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 1244c MOVE.W D0,D7> {}
<POP 1244e-12452 Naked> Σ0 ↓ →0x12458 ←0x12432
<MI 1244e TST.B D5> {}
<MI 12450 BEQ 0x12458> {}
<POP 12452-12456 Naked> Σ0 ↓ →0x12458
<MI 12452 TST.W D7> {}
<MI 12454 BEQ 0x12458> {}
<POP 12456-12458 Naked> Σ0 ↓
<MI 12456 MOVEQ.L #0x00,D5> {}
<POP 12458-1245c Naked> Σ0 ↓ →0x12464 ←0x1244e ←0x12452
<MI 12458 TST.B D5> {}
<MI 1245a BEQ 0x12464> {}
<POP 1245c-12464 Naked> Σ0 ↓ →0x12480
<MI 1245c CMPI.L #0x0000000f,D6> {}
<MI 12462 BNE 0x12480> {}
<POP 12464-12480 Naked> Σ0 ↓ ←0x12458
<MI 12464 MOVE.L (A6-0x20),-(A7)> Δ-4 {[4, '(A6-0x20)']}
<MI 12466 CLR.L D0> {[4, '(A6-0x20)']}
<MI 12468 MOVE.W D7,D0> {[4, '(A6-0x20)']}
<MI 1246a ADDI.L #0x00000030,D0> {[4, '(A6-0x20)']}
<POP 0x12470 LimitCheck 0x0 ≤ D0 ≤ 0xff> {[4, '(A6-0x20)']}
<MI 1247a MOVE.B D0,-(A7)> Δ-2 {[4, '(A6-0x20)']|[2, 'D0']}
<Call 0x1247c 0x10d66> {[4, '(A6-0x20)']|[2, 'D0']}
_AppendChar(MOD b : String; a : char)
<POP 1247e-12480 StackAdj> Δ+6 {}
<POP 12480-124a0 Naked> Σ0 ↓ →0x12432 ←0x1245c
<POP 12480-12482 StackAdj> Δ-8 {[-8-]}
<MI 12482 MOVE.L (A6+0x10),-(A7)> Δ-4 {[-8-]|[4, '(A6+0x10)']}
<MI 12484 MOVE.L (A6+0xc),-(A7)> Δ-4 {[-8-]|[4, '(A6+0x10)']|[4, '(A6+0xc)']}
<Const 0x12486 0x4.4> Δ-4 {[-8-]|[4, '(A6+0x10)']|[4, '(A6+0xc)']|[##4]}
<Call 0x1248a 0x12018> {[-8-]|[4, '(A6+0x10)']|[4, '(A6+0xc)']|[##4]}
_BitShift(a : Quad ; howmuch : integer) : Quad
<POP 12490-12492 StackAdj> Δ+12 {[-8-]}
<MI 12492 MOVE.L (A7)+,(A6+0xc)> Δ+4 {[-4-]}
<MI 12494 MOVE.L (A7)+,(A6+0x10)> Δ+4 {}
<MI 12496 ADDQ.L #0x1,D6> {}
<MI 12498 CMPI.L #0x0000000f,D6> {}
<MI 1249e BLE 0x12432> {}
<POP 124a0-124a4 Naked> Σ0 →0x125b2
<MI 124a0 BRA 0x125b2> {}
<POP 124a4-124a8 Naked> Σ0 →0x124c4 ←0x12420
<MI 124a4 TST.W (A6+0xc)> {}
<MI 124a6 BRA 0x124c4> {}
<POP 124c4-124e4 Naked> Σ0 ↓ ←0x124a4
<POP 124c4-124c6 StackAdj> Δ-8 {[-8-]}
<MI 124c6 MOVE.L D0,-(A7)> Δ-4 {[-8-]|[4, 'D0']}
<Call 0x124c8 0x1216a> {[-8-]|[4, 'D0']}
_Long2Quad(a : Long) : Quad
<POP 124ce-124d0 StackAdj> Δ+4 {[-8-]}
<MI 124d0 MOVE.L (A7)+,(A6-0x10)> Δ+4 {[-4-]}
<MI 124d4 MOVE.L (A7)+,(A6-0xc)> Δ+4 {}
<Pointer.fp 0x124d8 <LVAR -0x014 @ 4(r)>> Δ-4 {[@@-20]}
<Call 0x124dc 0x10cfa> {[@@-20]}
_NewString(VAR a : String)
<POP 124e2-124e4 StackAdj> Δ+4 {}
<POP 124e4-12508 Naked> Σ0 ↓ →0x1251c ←0x1251c
<POP 124e4-124e6 StackAdj> Δ-8 {[-8-]}
<MI 124e6 MOVE.L (A6+0x10),-(A7)> Δ-4 {[-8-]|[4, '(A6+0x10)']}
<MI 124e8 MOVE.L (A6+0xc),-(A7)> Δ-4 {[-8-]|[4, '(A6+0x10)']|[4, '(A6+0xc)']}
<MI 124ea MOVE.L (A6-0xc),-(A7)> Δ-4 {[-8-]|[4, '(A6+0x10)']|[4, '(A6+0xc)']|[4, '(A6-0xc)']}
<MI 124ee MOVE.L (A6-0x10),-(A7)> Δ-4 {[-8-]|[4, '(A6+0x10)']|[4, '(A6+0xc)']|[4, '(A6-0xc)']|[4, '(A6-0x10)']}
<Call 0x124f2 0x121da> {[-8-]|[4, '(A6+0x10)']|[4, '(A6+0xc)']|[4, '(A6-0xc)']|[4, '(A6-0x10)']}
_Modulus(a, b : Quad) : Quad
<POP 124f6-124f8 StackAdj> Δ+16 {[-8-]}
<MI 124f8 MOVE.L (A7)+,(A6-0x8)> Δ+4 {[-4-]}
<MI 124fc MOVE.L (A7)+,(A6-0x4)> Δ+4 {}
<MI 12500 MOVE.W (A6-0x2),D0> {}
<MI 12504 CMP.W #0x09,D0> {}
<MI 12506 BLS 0x1251c> {}
<POP 12508-1251c Naked> Σ0 ↓
<MI 12508 CLR.L D1> {}
<MI 1250a MOVE.W D0,D1> {}
<MI 1250c ADDQ.L #0x7,D1> {}
<POP 0x1250e LimitCheck 0x0 ≤ D1 ≤ 0xffff> {}
<MI 12518 MOVE.W D1,(A6-0x2)> {}
<POP 1251c-12570 Naked> Σ0 ↓ →0x124e4 ←0x124e4
<MI 1251c MOVE.L (A6-0x14),-(A7)> Δ-4 {[4, '(A6-0x14)']}
<MI 12520 CLR.L D0> {[4, '(A6-0x14)']}
<MI 12522 MOVE.W (A6-0x2),D0> {[4, '(A6-0x14)']}
<MI 12526 ADDI.L #0x00000030,D0> {[4, '(A6-0x14)']}
<POP 0x1252c LimitCheck 0x0 ≤ D0 ≤ 0xff> {[4, '(A6-0x14)']}
<MI 12536 MOVE.B D0,-(A7)> Δ-2 {[4, '(A6-0x14)']|[2, 'D0']}
<Call 0x12538 0x10d66> {[4, '(A6-0x14)']|[2, 'D0']}
_AppendChar(MOD b : String; a : char)
<POP 1253a-1253c StackAdj> Δ-2 {[4, '(A6-0x14)']|[2, 'D0']|[-2-]}
<MI 1253c MOVE.L (A6+0x10),-(A7)> Δ-4 {[4, '(A6-0x14)']|[2, 'D0']|[-2-]|[4, '(A6+0x10)']}
<MI 1253e MOVE.L (A6+0xc),-(A7)> Δ-4 {[4, '(A6-0x14)']|[2, 'D0']|[-2-]|[4, '(A6+0x10)']|[4, '(A6+0xc)']}
<MI 12540 MOVE.L (A6-0xc),-(A7)> Δ-4 {[4, '(A6-0x14)']|[2, 'D0']|[-2-]|[4, '(A6+0x10)']|[4, '(A6+0xc)']|[4, '(A6-0xc)']}
<MI 12544 MOVE.L (A6-0x10),-(A7)> Δ-4 {[4, '(A6-0x14)']|[2, 'D0']|[-2-]|[4, '(A6+0x10)']|[4, '(A6+0xc)']|[4, '(A6-0xc)']|[4, '(A6-0x10)']}
<Call 0x12548 0x11dec> {[4, '(A6-0x14)']|[2, 'D0']|[-2-]|[4, '(A6+0x10)']|[4, '(A6+0xc)']|[4, '(A6-0xc)']|[4, '(A6-0x10)']}
_Divide(a, b : Quad) : Quad
<POP 1254e-12550 StackAdj> Δ+16 {[4, '(A6-0x14)']|[2, 'D0']|[-2-]}
<MI 12550 MOVE.L (A7)+,(A6+0xc)> Δ+4 {[4, '(A6-0x14)']}
<MI 12552 MOVE.L (A7),(A6+0x10)> {[4, '(A6-0x14)']}
<POP 12554-12556 StackAdj> Δ+2 {[-2-]}
<MI 12556 MOVE.L (A6+0x10),-(A7)> Δ-4 {[-2-]|[4, '(A6+0x10)']}
<MI 12558 MOVE.L (A6+0xc),-(A7)> Δ-4 {[-2-]|[4, '(A6+0x10)']|[4, '(A6+0xc)']}
<Blob 0x1255a [4] @> Δ-4 {[-2-]|[4, '(A6+0x10)']|[4, '(A6+0xc)']|[«4""»]}
<Blob 0x1255e [4] @> Δ-4 {[-2-]|[4, '(A6+0x10)']|[4, '(A6+0xc)']|[«4""»]|[«4""»]}
<Call 0x12562 0x11f02> {[-2-]|[4, '(A6+0x10)']|[4, '(A6+0xc)']|[«4""»]|[«4""»]}
_IsEqual(a, b : Quad) : Bool
<POP 12568-1256a StackAdj> Δ+16 {[-2-]}
<MI 1256a TST.B (A7)+> Δ+2 {}
<MI 1256c BEQ 0x124e4> {}
<POP 12570-1257c Naked> Σ0 Δ-4 ↓
<MI 12570 MOVEA.L (A6-0x14),A0> {}
<MI 12574 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 12576 MOVE.W (A0),D0> {[4, 'A0']}
<MI 12578 EXTW.L D0> {[4, 'A0']}
<MI 1257a MOVE.L D0,D6> {[4, 'A0']}
<POP 1257c-12584 Naked> Σ-4 ↓ →0x125a4 ←0x12584
<MI 1257c CMPI.L #0x00000001,D6> {[-4-]}
<MI 12582 BLT 0x125a4> {[-4-]}
<POP 12584-125a4 Naked> Σ-4 ↓ →0x1257c
<MI 12584 MOVE.L (A6-0x20),-(A7)> Δ-4 {[-4-]|[4, '(A6-0x20)']}
<MI 12586 MOVE.L D6,D0> {[-4-]|[4, '(A6-0x20)']}
<MI 12588 SUBQ.L #0x1,D0> {[-4-]|[4, '(A6-0x20)']}
<POP 0x1258a LimitCheck 0x0 ≤ D0 ≤ 0x7d> {[-4-]|[4, '(A6-0x20)']}
<MI 12594 MOVEA.L (A7+0x4),A0> {[-4-]|[4, '(A6-0x20)']}
<MI 12598 MOVE.B (A0+D0.L+#0x2),-(A7)> Δ-2 {[-4-]|[4, '(A6-0x20)']|[2, '(A0+D0.L+#0x2)']}
<Call 0x1259c 0x10d66> {[-4-]|[4, '(A6-0x20)']|[2, '(A0+D0.L+#0x2)']}
_AppendChar(MOD b : String; a : char)
<POP 1259e-125a0 StackAdj> Δ+6 {[-4-]}
<MI 125a0 SUBQ.L #0x1,D6> {[-4-]}
<MI 125a2 BVC 0x1257c> {[-4-]}
<POP 125a4-125b2 Naked> Σ-4 Δ+4 ↓ ←0x1257c
<POP 125a4-125a6 StackAdj> Δ+4 {}
<Pointer.fp 0x125a6 <LVAR -0x014 @ 4(r)>> Δ-4 {[@@-20]}
<Call 0x125aa 0x10d36> {[@@-20]}
_FreeString(VAR a : String)
<POP 125b0-125b2 StackAdj> Δ+4 {}
<POP 125b2-125b6 Naked> Σ0 ↓ ←0x124a0
<MI 125b2 MOVE.L (A6-0x20),(A6+0x14)> {}
<POP 125b6-125be Epilogue> Σ0
@ 12610
_Lba2Chs(lba : W; VAR cyl : W ; VAR hd_sec : W)
<LVAR 0x010 2(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 12610-12674 Body>
<POP 12610-12626 Prologue> Σ0 ↓
<POP 12626-1266c Naked> Σ0 ↓
<MI 12626 MOVEA.L (A6+0xc),A0> {}
<MI 1262a CLR.L D0> {}
<MI 1262c MOVE.W (A6+0x10),D0> {}
<MI 12630 DIVU.W 0x1000c,D0> {}
<MI 12636 MOVE.W D0,(A0)> {}
<MI 12638 SWAP.W D0> {}
<MI 1263a CLR.L D1> {}
<MI 1263c MOVE.W D0,D1> {}
<MI 1263e MOVE.L D1,D5> {}
<MI 12640 MOVE.L D5,D4> {}
<MI 12642 CLR.L D3> {}
<MI 12644 MOVE.W 0x1000a,D3> {}
<Call 0x1264a 0x10816> {}
_?divu_d3_d4
<MI 12650 MOVE.L D4,D7> {}
<MI 12652 ASL.L #0x1,D3> {}
<MI 12654 MOVE.L D3,D6> {}
<MI 12656 MOVEA.L (A6+0x8),A0> {}
<MI 1265a MOVE.L D7,D0> {}
<MI 1265c ASL.L #0x8,D0> {}
<MI 1265e ADD.L D6,D0> {}
<POP 0x12660 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 1266a MOVE.W D0,(A0)> {}
<POP 1266c-12674 Epilogue> Σ0
@ 12674
<LVAR 0x008 1(r)>
<POP 12674-127c4 Body>
<POP 12674-1268a Prologue> Σ0 ↓
<POP 1268a-12696 RegCacheLoad> Σ0 ↓
<POP 12696-126f6 Naked> Σ0 ↓
<MI 12696 CLR.L D0> {}
<MI 12698 MOVE.W (A4+0xb8),D0> {}
<MI 1269c ADD.L (A4+0x96),D0> {}
<POP 0x126a0 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 126aa MOVE.W D0,-(A7)> Δ-2 {[2, 'D0']}
<MI 126ac PEA.L (A4+0x8c)> Δ-4 {[2, 'D0']|[4, '^(A4+0x8c)']}
<MI 126b0 PEA.L (A4+0x8e)> Δ-4 {[2, 'D0']|[4, '^(A4+0x8c)']|[4, '^(A4+0x8e)']}
<Call 0x126b4 0x12610> {[2, 'D0']|[4, '^(A4+0x8c)']|[4, '^(A4+0x8e)']}
_Lba2Chs(lba : W; VAR cyl : W ; VAR hd_sec : W)
<POP 126b8-126ba StackAdj> Δ+10 {}
<MI 126ba MOVE.W #0x100,(A4+0x2)> {}
<MI 126c0 CLR.W (A4+0x4)> {}
<MI 126c4 MOVE.W #0x02,(A4+0x6)> {}
<MI 126c8 CLR.W (A4+0x8)> {}
<MI 126cc MOVE.W #0x80,(A4+0xa)> {}
<MI 126d2 MOVE.W 0x10008,D0> {}
<MI 126d8 ASL.W #0x8,D0> {}
<MI 126da MOVE.B (A6+0x8),D1> {}
<MI 126de EXTB.W D1> {}
<MI 126e0 ADD.W D1,D0> {}
<MI 126e2 MOVE.W D0,(A4+0xc)> {}
<MI 126e4 MOVE.W (A4+0x8c),(A4+0xe)> {}
<MI 126ea MOVE.W (A4+0x8e),(A4+0x10)> {}
<MI 126f0 CLR.L (A4+0x90)> {}
<MI 126f2 MOVE.B D1,(A4+0x94)> {}
<POP 126f6-1271e Naked> Σ0 ↓ →0x127aa ←0x127b0
<MI 126f6 PEA.L (A4+0x2)> Δ-4 {[4, '^(A4+0x2)']}
<MI 126fa MOVE.L (A4+0x9e),-(A7)> Δ-4 {[4, '^(A4+0x2)']|[4, '(A4+0x9e)']}
<MI 126fe CLR.W -(A7)> Δ-2 {[4, '^(A4+0x2)']|[4, '(A4+0x9e)']|[#0]}
<Call 0x12700 0x10204> {[4, '^(A4+0x2)']|[4, '(A4+0x9e)']|[#0]}
KC02_Start_Disk_IO(desc : Pointer; dst : Pointer ; c : W)
<POP 12706-12708 StackAdj> Δ+10 {}
<MI 12708 MOVEA.L (A4+0xac),A0> {}
<MI 1270c CLR.W -(A7)> Δ-2 {[#0]}
<MI 1270e PEA.L (A0)> Δ-4 {[#0]|[4, '^(A0)']}
<Call 0x12710 0x10206> {[#0]|[4, '^(A0)']}
KC03_Wait_Disk_IO(a : W; VAR status : Byte)
<POP 12716-12718 StackAdj> Δ+6 {}
<MI 12718 TST.B (A0)> {}
<MI 1271a BNE 0x127aa> {}
<POP 1271e-12760 Naked> Σ0 ↓ →0x1276c
<MI 1271e MOVE.W #0x80,(A4+0xa)> {}
<MI 12724 MOVE.W (A4+0xc),D0> {}
<MI 12726 ANDI.W #0xff00,D0> {}
<MI 1272a CLR.L D1> {}
<MI 1272c MOVE.W D0,D1> {}
<MI 1272e ADDQ.L #0x1,D1> {}
<POP 0x12730 LimitCheck 0x0 ≤ D1 ≤ 0xffff> {}
<MI 1273a MOVE.W D1,(A4+0xc)> {}
<MI 1273c PEA.L (A4+0x2)> Δ-4 {[4, '^(A4+0x2)']}
<MI 12740 LEA.L (A4+0x12),A1> {[4, '^(A4+0x2)']}
<MI 12744 MOVE.L A1,-(A7)> Δ-4 {[4, '^(A4+0x2)']|[4, 'A1']}
<MI 12746 CLR.W -(A7)> Δ-2 {[4, '^(A4+0x2)']|[4, 'A1']|[#0]}
<Call 0x12748 0x10204> {[4, '^(A4+0x2)']|[4, 'A1']|[#0]}
KC02_Start_Disk_IO(desc : Pointer; dst : Pointer ; c : W)
<POP 1274e-12750 StackAdj> Δ+8 {[-2-]}
<MI 12750 CLR.W (A7)> {[-2-]}
<MI 12752 PEA.L (A4)> Δ-4 {[-2-]|[4, '^(A4)']}
<Call 0x12754 0x10206> {[-2-]|[4, '^(A4)']}
KC03_Wait_Disk_IO(a : W; VAR status : Byte)
<POP 1275a-1275c StackAdj> Δ+6 {}
<MI 1275c TST.B (A4)> {}
<MI 1275e BNE 0x1276c> {}
<POP 12760-1276c Naked> Σ0 ↓
<Const 0x12760 0x1.4> Δ-4 {[##1]}
<Call 0x12764 0x10220> {[##1]}
KC10_Panic(code : Long)
<POP 1276a-1276c StackAdj> Δ+4 {}
<POP 1276c-12782 Naked> Σ0 ↓ →0x127aa ←0x1271e
<MI 1276c CLR.B -(A7)> Δ-2 {[#0]}
<MI 1276e LEA.L (A4+0x12),A1> {[#0]}
<MI 12772 MOVE.L A1,-(A7)> Δ-4 {[#0]|[4, 'A1']}
<Call 0x12774 0x144e6> {[#0]|[4, 'A1']}
_Write_ERROR_LOG(VAR a : Bool; MOD b : Pointer)
<POP 1277a-1277c StackAdj> Δ+6 {}
<MI 1277c MOVE.L (A4+0x90),D0> {}
<MI 1277e CMP.L #0x0a,D0> {}
<MI 12780 BLT 0x127aa> {}
<POP 12782-1278a Naked> Σ0 ↓ →0x127aa
<MI 12782 MOVE.B (A4+0x94),D1> {}
<MI 12786 CMP.B #0x02,D1> {}
<MI 12788 BNE 0x127aa> {}
<POP 1278a-12792 Naked> Σ0 ↓ →0x1279e
<MI 1278a CMPI.L #0x0000000f,D0> {}
<MI 12790 BGE 0x1279e> {}
<POP 12792-1279e Naked> Σ0 →0x127a8
<MI 12792 MOVE.W 0x10008,D0> {}
<MI 12798 ASL.W #0x8,D0> {}
<MI 1279a ADDQ.W #0x6,D0> {}
<MI 1279c BRA 0x127a8> {}
<POP 1279e-127a8 Naked> Σ0 ↓ ←0x1278a
<MI 1279e MOVE.W 0x10008,D0> {}
<MI 127a4 ASL.W #0x8,D0> {}
<MI 127a6 ADDQ.W #0x5,D0> {}
<POP 127a8-127aa Naked> Σ0 ↓ ←0x12792
<MI 127a8 MOVE.W D0,(A4+0xc)> {}
<POP 127aa-127b0 Naked> Σ0 ↓ →0x127bc ←0x126f6 ←0x1276c ←0x12782
<MI 127aa ADDQ.L #0x1,(A4+0x90)> {}
<MI 127ac TST.B (A0)> {}
<MI 127ae BNE 0x127bc> {}
<POP 127b0-127bc Naked> Σ0 ↓ →0x126f6
<MI 127b0 MOVE.L (A4+0x90),D0> {}
<MI 127b2 CMPI.L #0x00000014,D0> {}
<MI 127b8 BNE 0x126f6> {}
<POP 127bc-127c4 Epilogue> Σ0 ←0x127aa
@ 127c4
_RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
<LVAR 0x016 1(r)>
<LVAR 0x014 2(r)>
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x006 4(w)>
<LVAR -0x00e 4(rw)>
<LVAR -0x010 1(rw)>
<LVAR -0x014 4(rw)>
<LVAR -0x016 @ 2(r)>
<LVAR -0x018 @ 2(r)>
<LVAR -0x092 @>
<LVAR -0x094 2(w)>
<LVAR -0x096 2(w)>
<LVAR -0x098 2(rw)>
<LVAR -0x09a 2(w)>
<LVAR -0x09c 2(r)>
<LVAR -0x09e 2(w)>
<LVAR -0x0a0 2(r)>
<LVAR -0x0a2 @ 2(rw)>
<LVAR -0x0a4 @ 1(r)>
<POP 127c4-12994 Body>
<POP 127c4-127da Prologue> Σ0 ↓
<POP 127da-127ec RegCacheLoad> Σ0 ↓
<POP 127ec-127f8 Naked> Σ0 ↓ →0x12850
<POP 127ec-127ee StackAdj> Δ-2 {[-2-]}
<Call 0x127ee 0x1afd0> {[-2-]}
_Is_machine_type_one_or_three() : Bool
<MI 127f4 TST.B (A7)+> Δ+2 {}
<MI 127f6 BEQ 0x12850> {}
<POP 127f8-127fe Naked> Σ0 ↓ →0x12804
<MI 127f8 MOVE.B (A6+0x16),D0> {}
<MI 127fa CMP.B #0x02,D0> {}
<MI 127fc BEQ 0x12804> {}
<POP 127fe-12804 Naked> Σ0 ↓ →0x12838
<MI 127fe CMPI.B #0x03,D0> {}
<MI 12802 BNE 0x12838> {}
<POP 12804-12812 Naked> Σ0 ↓ ←0x127f8
<MI 12804 MOVE.L (A6+0xc),(A6-0x6)> {}
<MI 1280a CLR.L (A6-0xe)> {}
<MI 1280e MOVE.L (A6+0x10),D7> {}
<POP 12812-12818 Naked> Σ0 ↓ →0x12832 ←0x12818
<MI 12812 CMP.L (A6-0xe),D7> {}
<MI 12816 BEQ 0x12832> {}
<POP 12818-12832 Naked> Σ0 →0x12812
<MI 12818 MOVE.B (A6+0x16),-(A7)> Δ-2 {[2, '(A6+0x16)']}
<MI 1281a LEA.L (A6-0xa4),A4> {[2, '(A6+0x16)']}
<Call 0x1281e 0x12674> {[2, '(A6+0x16)']}
<POP 12822-12824 StackAdj> Δ+2 {}
<MI 12824 ADDQ.L #0x1,(A6-0xe)> {}
<MI 12828 ADDI.L #0x00000400,(A6-0x6)> {}
<MI 12830 BRA 0x12812> {}
<POP 12832-12836 Naked> Σ0 →0x1298c ←0x12812
<MI 12832 BRA 0x1298c> {}
<POP 12838-12840 Naked> Σ0 ↓ →0x12850 ←0x127fe
<MI 12838 MOVE.W (A6-0xa2),D1> {}
<MI 1283a ANDI.W #0xfe00,D1> {}
<MI 1283e BEQ 0x12850> {}
<POP 12840-12844 Naked> Σ0 ↓ →0x12850
<MI 12840 CMP.B #0x13,D0> {}
<MI 12842 BEQ 0x12850> {}
<POP 12844-12850 Naked> Σ0 ↓
<Const 0x12844 0x63.4> Δ-4 {[##99]}
<Call 0x12848 0x10220> {[##99]}
KC10_Panic(code : Long)
<POP 1284e-12850 StackAdj> Δ+4 {}
<POP 12850-12898 Naked> Σ0 ↓ →0x128ae ←0x127ec ←0x12838 ←0x12840
<MI 12850 MOVE.W (A6+0x14),-(A7)> Δ-2 {[2, '(A6+0x14)']}
<Pointer.fp 0x12854 <LVAR -0x018 @ 2(r)>> Δ-4 {[2, '(A6+0x14)']|[@@-24]}
<Pointer.fp 0x12858 <LVAR -0x016 @ 2(r)>> Δ-4 {[2, '(A6+0x14)']|[@@-24]|[@@-22]}
<Call 0x1285c 0x12610> {[2, '(A6+0x14)']|[@@-24]|[@@-22]}
_Lba2Chs(lba : W; VAR cyl : W ; VAR hd_sec : W)
<POP 12860-12862 StackAdj> Δ+10 {}
<MI 12862 MOVE.L (A6+0x10),D0> {}
<MI 12866 ASL.L #0x8,D0> {}
<POP 0x12868 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 12872 MOVE.W D0,(A6-0xa2)> {}
<MI 12874 CLR.W (A6-0xa0)> {}
<MI 12878 MOVE.W #0x02,(A6-0x9e)> {}
<MI 1287c CLR.W (A6-0x9c)> {}
<MI 12880 MOVE.W #0x80,(A6-0x9a)> {}
<MI 12886 MOVE.W (A6-0x18),(A6-0x96)> {}
<MI 1288c MOVE.W (A6-0x16),(A6-0x94)> {}
<MI 12892 MOVE.B (A6+0x16),D0> {}
<MI 12894 CMP.B #0x13,D0> {}
<MI 12896 BNE 0x128ae> {}
<POP 12898-128ae Naked> Σ0 ↓
<MI 12898 MOVE.W 0x10008,D0> {}
<MI 1289e ASL.W #0x8,D0> {}
<MI 128a0 ADDQ.W #0x2,D0> {}
<MI 128a2 MOVE.W D0,(A6-0x98)> {}
<Pointer.fp 0x128a4 <LVAR -0x0a2 @ 2(rw)>> Δ-4 {[@@-162]}
<Call 0x128a6 0x1021e> {[@@-162]}
KC0f_ReInit
<POP 128ac-128ae StackAdj> Δ+4 {}
<POP 128ae-128b6 Naked> Σ0 ↓ ←0x12850
<MI 128ae MOVE.B (A6+0x16),(A6-0x10)> {}
<MI 128b2 CLR.L (A6-0x14)> {}
<POP 128b6-128ee Naked> Σ0 ↓ →0x12972 ←0x1297e
<MI 128b6 MOVE.W 0x10008,D0> {}
<MI 128bc ASL.W #0x8,D0> {}
<MI 128be MOVE.B (A6-0x10),D1> {}
<MI 128c2 EXTB.W D1> {}
<MI 128c4 ADD.W D0,D1> {}
<MI 128c6 MOVE.W D1,(A6-0x98)> {}
<Pointer.fp 0x128c8 <LVAR -0x0a2 @ 2(rw)>> Δ-4 {[@@-162]}
<MI 128ca MOVE.L (A6+0xc),-(A7)> Δ-4 {[@@-162]|[4, '(A6+0xc)']}
<MI 128ce CLR.W -(A7)> Δ-2 {[@@-162]|[4, '(A6+0xc)']|[#0]}
<Call 0x128d0 0x10204> {[@@-162]|[4, '(A6+0xc)']|[#0]}
KC02_Start_Disk_IO(desc : Pointer; dst : Pointer ; c : W)
<POP 128d6-128d8 StackAdj> Δ+10 {}
<MI 128d8 MOVEA.L (A6+0x8),A0> {}
<MI 128dc CLR.W -(A7)> Δ-2 {[#0]}
<MI 128de PEA.L (A0)> Δ-4 {[#0]|[4, '^(A0)']}
<Call 0x128e0 0x10206> {[#0]|[4, '^(A0)']}
KC03_Wait_Disk_IO(a : W; VAR status : Byte)
<POP 128e6-128e8 StackAdj> Δ+6 {}
<MI 128e8 TST.B (A0)> {}
<MI 128ea BNE 0x12972> {}
<POP 128ee-12932 Naked> Σ0 ↓ →0x1293e
<MI 128ee MOVE.W #0x80,(A6-0x9a)> {}
<MI 128f4 MOVE.W (A6-0x98),D0> {}
<MI 128f6 ANDI.W #0xff00,D0> {}
<MI 128fa CLR.L D1> {}
<MI 128fc MOVE.W D0,D1> {}
<MI 128fe ADDQ.L #0x1,D1> {}
<POP 0x12900 LimitCheck 0x0 ≤ D1 ≤ 0xffff> {}
<MI 1290a MOVE.W D1,(A6-0x98)> {}
<Pointer.fp 0x1290c <LVAR -0x0a2 @ 2(rw)>> Δ-4 {[@@-162]}
<MI 1290e LEA.L (A6-0x92),A0> {[@@-162]}
<MI 12912 MOVE.L A0,-(A7)> Δ-4 {[@@-162]|[4, 'A0']}
<MI 12914 CLR.W -(A7)> Δ-2 {[@@-162]|[4, 'A0']|[#0]}
<Call 0x12916 0x10204> {[@@-162]|[4, 'A0']|[#0]}
KC02_Start_Disk_IO(desc : Pointer; dst : Pointer ; c : W)
<POP 1291c-1291e StackAdj> Δ+8 {[-2-]}
<MI 1291e CLR.W (A7)> {[-2-]}
<Pointer.fp 0x12920 <LVAR -0x0a4 @ 1(r)>> Δ-4 {[-2-]|[@@-164]}
<Call 0x12924 0x10206> {[-2-]|[@@-164]}
KC03_Wait_Disk_IO(a : W; VAR status : Byte)
<POP 1292a-1292c StackAdj> Δ+6 {}
<MI 1292c TST.B (A6-0xa4)> {}
<MI 12930 BNE 0x1293e> {}
<POP 12932-1293e Naked> Σ0 ↓
<Const 0x12932 0x1.4> Δ-4 {[##1]}
<Call 0x12936 0x10220> {[##1]}
KC10_Panic(code : Long)
<POP 1293c-1293e StackAdj> Δ+4 {}
<POP 1293e-12956 Naked> Σ0 ↓ →0x12972 ←0x128ee
<MI 1293e CLR.B -(A7)> Δ-2 {[#0]}
<MI 12940 LEA.L (A6-0x92),A0> {[#0]}
<MI 12944 MOVE.L A0,-(A7)> Δ-4 {[#0]|[4, 'A0']}
<Call 0x12946 0x144e6> {[#0]|[4, 'A0']}
_Write_ERROR_LOG(VAR a : Bool; MOD b : Pointer)
<POP 1294c-1294e StackAdj> Δ+6 {}
<MI 1294e MOVE.L (A6-0x14),D0> {}
<MI 12952 CMP.L #0x0a,D0> {}
<MI 12954 BLT 0x12972> {}
<POP 12956-1295c Naked> Σ0 ↓ →0x12972
<MI 12956 MOVE.B (A6+0x16),D1> {}
<MI 12958 CMP.B #0x02,D1> {}
<MI 1295a BNE 0x12972> {}
<POP 1295c-12964 Naked> Σ0 ↓ →0x1296c
<MI 1295c CMPI.L #0x0000000f,D0> {}
<MI 12962 BGE 0x1296c> {}
<POP 12964-1296c Naked> Σ0 →0x12972
<MI 12964 MOVE.B #0x06,(A6-0x10)> {}
<MI 1296a BRA 0x12972> {}
<POP 1296c-12972 Naked> Σ0 ↓ ←0x1295c
<MI 1296c MOVE.B #0x05,(A6-0x10)> {}
<POP 12972-1297e Naked> Σ0 ↓ →0x1298c ←0x128b6 ←0x1293e ←0x12956 ←0x12964
<MI 12972 ADDQ.L #0x1,(A6-0x14)> {}
<MI 12976 MOVEA.L (A6+0x8),A0> {}
<MI 1297a TST.B (A0)> {}
<MI 1297c BNE 0x1298c> {}
<POP 1297e-1298c Naked> Σ0 ↓ →0x128b6
<MI 1297e MOVE.L (A6-0x14),D0> {}
<MI 12982 CMPI.L #0x00000014,D0> {}
<MI 12988 BNE 0x128b6> {}
<POP 1298c-12994 Epilogue> Σ0 ←0x12832 ←0x12972
@ 12994
_ReadWords(lba : W; offset : W; ptr : L; nwords : W; VAR status : B)
<LVAR 0x014 2(r)>
<LVAR 0x012 2(r)>
<LVAR 0x00e 4(r)>
<LVAR 0x00c 2(r)>
<LVAR 0x008 4(r)>
<LVAR -0x00e @ 4(rw)>
<POP 12994-12a5a Body>
<POP 12994-129aa Prologue> Σ0 ↓
<POP 129aa-129b6 RegCacheLoad> Σ0 ↓
<POP 129b6-129be Naked> Σ0 ↓ →0x129ce
<MI 129b6 MOVE.W (A6+0xc),D0> {}
<MI 129ba CMP.W #0x200,D0> {}
<MI 129bc BEQ 0x129ce> {}
<POP 129be-129ce Naked> Σ0 →0x129d2
<Pointer.fp 0x129be <LVAR -0x00e @ 4(rw)>> Δ-4 {[@@-14]}
<Const 0x129c0 0x400.4> Δ-4 {[@@-14]|[##1024]}
<Call 0x129c4 0x10856> {[@@-14]|[##1024]}
_Malloc1(length : Long) : Pointer
<POP 129ca-129cc StackAdj> Δ+8 {}
<MI 129cc BRA 0x129d2> {}
<POP 129ce-129d2 Naked> Σ0 ↓ ←0x129b6
<MI 129ce MOVE.L (A6+0xe),(A6-0xe)> {}
<POP 129d2-129f2 Naked> Σ0 ↓ →0x12a3c ←0x129be
<MI 129d2 MOVEA.L (A6+0x8),A0> {}
<Const 0x129d6 0x2.2> Δ-2 {[#2]}
<MI 129da MOVE.W (A6+0x14),-(A7)> Δ-2 {[#2]|[2, '(A6+0x14)']}
<Const 0x129de 0x1.4> Δ-4 {[#2]|[2, '(A6+0x14)']|[##1]}
<MI 129e2 MOVE.L (A6-0xe),-(A7)> Δ-4 {[#2]|[2, '(A6+0x14)']|[##1]|[4, '(A6-0xe)']}
<MI 129e4 PEA.L (A0)> Δ-4 {[#2]|[2, '(A6+0x14)']|[##1]|[4, '(A6-0xe)']|[4, '^(A0)']}
<Call 0x129e6 0x127c4> {[#2]|[2, '(A6+0x14)']|[##1]|[4, '(A6-0xe)']|[4, '^(A0)']}
_RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
<POP 129ea-129ee StackAdj> Δ+16 {}
<MI 129ee TST.B (A0)> {}
<MI 129f0 BEQ 0x12a3c> {}
<POP 129f2-129f6 Naked> Σ0 ↓ →0x12a3c
<MI 129f2 CMP.W #0x200,D0> {}
<MI 129f4 BEQ 0x12a3c> {}
<POP 129f6-12a08 Naked> Σ0 Δ-4 ↓
<MI 129f6 MOVEA.L (A6+0xe),A4> {}
<MI 129fa ADD.W (A6+0x12),D0> {}
<MI 129fc SUBQ.W #0x1,D0> {}
<MI 129fe EXTW.L D0> {}
<MI 12a00 MOVE.L D0,-(A7)> Δ-4 {[4, 'D0']}
<MI 12a02 MOVE.W (A6+0x12),D0> {[4, 'D0']}
<MI 12a04 EXTW.L D0> {[4, 'D0']}
<MI 12a06 MOVE.L D0,D7> {[4, 'D0']}
<POP 12a08-12a0c Naked> Σ-4 ↓ →0x12a3a ←0x12a0c
<MI 12a08 CMP.L (A7),D7> {[-4-]}
<MI 12a0a BGT 0x12a3a> {[-4-]}
<POP 12a0c-12a3a Naked> Σ-4 ↓ →0x12a08
<MI 12a0c MOVE.W (A6+0x12),D0> {[-4-]}
<MI 12a0e EXTW.L D0> {[-4-]}
<MI 12a10 NEG.L D0> {[-4-]}
<MI 12a12 ADD.L D7,D0> {[-4-]}
<POP 0x12a14 LimitCheck 0x0 ≤ D0 ≤ 0x1ff> {[-4-]}
<MI 12a1e ASL.L #0x1,D0> {[-4-]}
<MI 12a20 MOVEA.L (A6-0xe),A0> {[-4-]}
<POP 0x12a22 LimitCheck 0x0 ≤ D7 ≤ 0x1ff> {[-4-]}
<MI 12a2c MOVE.L D7,D1> {[-4-]}
<MI 12a2e ASL.L #0x1,D1> {[-4-]}
<MI 12a30 MOVE.W (A0+D1.L),(A4+D0.L)> {[-4-]}
<MI 12a36 ADDQ.L #0x1,D7> {[-4-]}
<MI 12a38 BVC 0x12a08> {[-4-]}
<POP 12a3a-12a3c Naked> Σ-4 Δ+4 ↓ ←0x12a08
<POP 12a3a-12a3c StackAdj> Δ+4 {}
<POP 12a3c-12a44 Naked> Σ0 ↓ →0x12a52 ←0x129d2 ←0x129f2
<MI 12a3c MOVE.W (A6+0xc),D0> {}
<MI 12a40 CMP.W #0x200,D0> {}
<MI 12a42 BEQ 0x12a52> {}
<POP 12a44-12a52 Naked> Σ0 ↓
<Pointer.fp 0x12a44 <LVAR -0x00e @ 4(rw)>> Δ-4 {[@@-14]}
<Const 0x12a46 0x400.4> Δ-4 {[@@-14]|[##1024]}
<Call 0x12a4a 0x108fa> {[@@-14]|[##1024]}
_Free2(a : Pointer; b : Long)
<POP 12a50-12a52 StackAdj> Δ+8 {}
<POP 12a52-12a5a Epilogue> Σ0 ←0x12a3c
@ 12a5a
_WriteWords(lba : W; offset : W; ptr : L; nwords : W; VAR status : B)
<LVAR 0x014 2(r)>
<LVAR 0x012 2(r)>
<LVAR 0x00e 4(r)>
<LVAR 0x00c 2(r)>
<LVAR 0x008 4(r)>
<LVAR -0x00a @ 4(rw)>
<POP 12a5a-12b3a Body>
<POP 12a5a-12a70 Prologue> Σ0 ↓
<POP 12a70-12a7e RegCacheLoad> Σ0 ↓
<POP 12a7e-12a86 Naked> Σ0 ↓ →0x12a8c
<MI 12a7e MOVE.W (A6+0xc),D0> {}
<MI 12a80 CMPI.W #0x0200,D0> {}
<MI 12a84 BNE 0x12a8c> {}
<POP 12a86-12a8c Naked> Σ0 →0x12b02
<MI 12a86 MOVE.L (A6+0xe),(A6-0xa)> {}
<MI 12a8a BRA 0x12b02> {}
<POP 12a8c-12ab8 Naked> Σ0 ↓ →0x12aba ←0x12a7e
<Pointer.fp 0x12a8c <LVAR -0x00a @ 4(rw)>> Δ-4 {[@@-10]}
<Const 0x12a8e 0x400.4> Δ-4 {[@@-10]|[##1024]}
<Call 0x12a92 0x10856> {[@@-10]|[##1024]}
_Malloc1(length : Long) : Pointer
<POP 12a98-12a9a StackAdj> Δ+8 {}
<MI 12a9a MOVEA.L (A6+0x8),A0> {}
<Const 0x12a9e 0x2.2> Δ-2 {[#2]}
<MI 12aa2 MOVE.W (A6+0x14),-(A7)> Δ-2 {[#2]|[2, '(A6+0x14)']}
<Const 0x12aa6 0x1.4> Δ-4 {[#2]|[2, '(A6+0x14)']|[##1]}
<MI 12aaa MOVE.L (A6-0xa),-(A7)> Δ-4 {[#2]|[2, '(A6+0x14)']|[##1]|[4, '(A6-0xa)']}
<MI 12aac PEA.L (A0)> Δ-4 {[#2]|[2, '(A6+0x14)']|[##1]|[4, '(A6-0xa)']|[4, '^(A0)']}
<Call 0x12aae 0x127c4> {[#2]|[2, '(A6+0x14)']|[##1]|[4, '(A6-0xa)']|[4, '^(A0)']}
_RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
<POP 12ab2-12ab4 StackAdj> Δ+16 {}
<MI 12ab4 TST.B (A0)> {}
<MI 12ab6 BNE 0x12aba> {}
<POP 12ab8-12aba Naked> Σ0 →0x12b1c
<MI 12ab8 BRA 0x12b1c> {}
<POP 12aba-12ace Naked> Σ0 Δ-4 ↓ ←0x12a8c
<MI 12aba MOVEA.L (A6+0xe),A4> {}
<MI 12abe MOVE.W (A6+0x12),D0> {}
<MI 12ac0 ADD.W (A6+0xc),D0> {}
<MI 12ac2 SUBQ.W #0x1,D0> {}
<MI 12ac4 EXTW.L D0> {}
<MI 12ac6 MOVE.L D0,-(A7)> Δ-4 {[4, 'D0']}
<MI 12ac8 MOVE.W (A6+0x12),D0> {[4, 'D0']}
<MI 12aca EXTW.L D0> {[4, 'D0']}
<MI 12acc MOVE.L D0,D7> {[4, 'D0']}
<POP 12ace-12ad2 Naked> Σ-4 ↓ →0x12b00 ←0x12ad2
<MI 12ace CMP.L (A7),D7> {[-4-]}
<MI 12ad0 BGT 0x12b00> {[-4-]}
<POP 12ad2-12b00 Naked> Σ-4 ↓ →0x12ace
<MI 12ad2 MOVEA.L (A6-0xa),A0> {[-4-]}
<POP 0x12ad4 LimitCheck 0x0 ≤ D7 ≤ 0x1ff> {[-4-]}
<MI 12ade MOVE.L D7,D0> {[-4-]}
<MI 12ae0 ASL.L #0x1,D0> {[-4-]}
<MI 12ae2 MOVE.W (A6+0x12),D1> {[-4-]}
<MI 12ae4 EXTW.L D1> {[-4-]}
<MI 12ae6 NEG.L D1> {[-4-]}
<MI 12ae8 ADD.L D7,D1> {[-4-]}
<POP 0x12aea LimitCheck 0x0 ≤ D1 ≤ 0x1ff> {[-4-]}
<MI 12af4 ASL.L #0x1,D1> {[-4-]}
<MI 12af6 MOVE.W (A4+D1.L),(A0+D0.L)> {[-4-]}
<MI 12afc ADDQ.L #0x1,D7> {[-4-]}
<MI 12afe BVC 0x12ace> {[-4-]}
<POP 12b00-12b02 Naked> Σ-4 Δ+4 ↓ ←0x12ace
<POP 12b00-12b02 StackAdj> Δ+4 {}
<POP 12b02-12b1c Naked> Σ0 ↓ ←0x12a86
<Const 0x12b02 0x3.2> Δ-2 {[#3]}
<MI 12b06 MOVE.W (A6+0x14),-(A7)> Δ-2 {[#3]|[2, '(A6+0x14)']}
<Const 0x12b0a 0x1.4> Δ-4 {[#3]|[2, '(A6+0x14)']|[##1]}
<MI 12b0e MOVE.L (A6-0xa),-(A7)> Δ-4 {[#3]|[2, '(A6+0x14)']|[##1]|[4, '(A6-0xa)']}
<MI 12b10 MOVEA.L (A6+0x8),A0> {[#3]|[2, '(A6+0x14)']|[##1]|[4, '(A6-0xa)']}
<MI 12b14 PEA.L (A0)> Δ-4 {[#3]|[2, '(A6+0x14)']|[##1]|[4, '(A6-0xa)']|[4, '^(A0)']}
<Call 0x12b16 0x127c4> {[#3]|[2, '(A6+0x14)']|[##1]|[4, '(A6-0xa)']|[4, '^(A0)']}
_RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
<POP 12b1a-12b1c StackAdj> Δ+16 {}
<POP 12b1c-12b24 Naked> Σ0 ↓ →0x12b32 ←0x12ab8
<MI 12b1c MOVE.W (A6+0xc),D0> {}
<MI 12b1e CMPI.W #0x0200,D0> {}
<MI 12b22 BEQ 0x12b32> {}
<POP 12b24-12b32 Naked> Σ0 ↓
<Pointer.fp 0x12b24 <LVAR -0x00a @ 4(rw)>> Δ-4 {[@@-10]}
<Const 0x12b26 0x400.4> Δ-4 {[@@-10]|[##1024]}
<Call 0x12b2a 0x108fa> {[@@-10]|[##1024]}
_Free2(a : Pointer; b : Long)
<POP 12b30-12b32 StackAdj> Δ+8 {}
<POP 12b32-12b3a Epilogue> Σ0 ←0x12b1c
@ 12b3a
<LVAR 0x010 2(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x004 2(r) 4(rw)>
<LVAR -0x006 2(rw)>
<LVAR -0x008 2(rw)>
<LVAR -0x00a 2(rw)>
<LVAR -0x00c @ 1(r)>
<LVAR -0x414 2(rw)>
<LVAR -0x416 @ 2(rw) 4(rw)>
<POP 12b3a-12d06 Body>
<POP 12b3a-12b50 Prologue> Σ0 ↓
<POP 12b50-12b5e RegCacheLoad> Σ0 ↓
<POP 12b5e-12b6c Naked> Σ0 ↓ →0x12b70
<MI 12b5e MOVEA.L (A6+0xc),A0> {}
<MI 12b62 CLR.W (A0)> {}
<MI 12b64 TST.W 0x10010> {}
<MI 12b6a BNE 0x12b70> {}
<POP 12b6c-12b70 Naked> Σ0 →0x12cfe
<MI 12b6c BRA 0x12cfe> {}
<POP 12b70-12b82 Naked> Σ0 ↓ ←0x12b5e
<MI 12b70 LEA.L (A6-0x416),A0> {}
<MI 12b72 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 12b74 MOVEA.L (A7)+,A4> Δ+4 {}
<MI 12b76 MOVE.W 0x10010,(A6-0x414)> {}
<MI 12b7c CLR.W (A6-0x416)> {}
<MI 12b7e CLR.W (A6-0x4)> {}
<POP 12b82-12b8a Naked> Σ0 ↓ →0x12be2 ←0x12be0
<MI 12b82 MOVE.W (A6-0x416),D0> {}
<MI 12b84 CMP.W (A6+0x10),D0> {}
<MI 12b88 BCC 0x12be2> {}
<POP 12b8a-12b8e Naked> Σ0 ↓ →0x12be2
<MI 12b8a TST.W (A6-0x414)> {}
<MI 12b8c BEQ 0x12be2> {}
<POP 12b8e-12bb0 Naked> Σ0 ↓ →0x12bb4
<POP 0x12b8e LimitCheck 0x0 ≤ D0 ≤ 0x4000> {}
<MI 12b92 MOVE.W D0,D5> {}
<MI 12b94 MOVE.W D7,D6> {}
<MI 12b96 MOVE.W (A6-0x414),D7> {}
<Const 0x12b98 0x2.2> Δ-2 {[#2]}
<MI 12b9c MOVE.W D7,-(A7)> Δ-2 {[#2]|[2, 'D7']}
<Const 0x12b9e 0x1.4> Δ-4 {[#2]|[2, 'D7']|[##1]}
<MI 12ba2 MOVE.L A4,-(A7)> Δ-4 {[#2]|[2, 'D7']|[##1]|[4, 'A4']}
<Pointer.fp 0x12ba4 <LVAR -0x00c @ 1(r)>> Δ-4 {[#2]|[2, 'D7']|[##1]|[4, 'A4']|[@@-12]}
<Call 0x12ba6 0x127c4> {[#2]|[2, 'D7']|[##1]|[4, 'A4']|[@@-12]}
_RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
<POP 12baa-12bac StackAdj> Δ+16 {}
<MI 12bac TST.B (A6-0xc)> {}
<MI 12bae BNE 0x12bb4> {}
<POP 12bb0-12bb4 Naked> Σ0 →0x12cfe
<MI 12bb0 BRA 0x12cfe> {}
<POP 12bb4-12bb8 Naked> Σ0 ↓ →0x12bc4 ←0x12b8e
<MI 12bb4 TST.W (A6-0x416)> {}
<MI 12bb6 BNE 0x12bc4> {}
<POP 12bb8-12bc4 Naked> Σ0 ↓
<Const 0x12bb8 0x15.4> Δ-4 {[##21]}
<Call 0x12bbc 0x10220> {[##21]}
KC10_Panic(code : Long)
<POP 12bc2-12bc4 StackAdj> Δ+4 {}
<POP 12bc4-12bcc Naked> Σ0 ↓ →0x12be0 ←0x12bb4
<MI 12bc4 MOVE.W (A6-0x416),D1> {}
<MI 12bc6 CMP.W (A6-0x4),D1> {}
<MI 12bca BLS 0x12be0> {}
<POP 12bcc-12be0 Naked> Σ0 ↓
<MI 12bcc MOVE.W D7,(A6-0x8)> {}
<MI 12bd0 MOVE.L (A6-0x416),(A6-0x4)> {}
<MI 12bd4 MOVE.W D6,(A6-0xa)> {}
<POP 0x12bd8 LimitCheck 0x0 ≤ D5 ≤ 0x4000> {}
<MI 12bdc MOVE.W D5,(A6-0x6)> {}
<POP 12be0-12be2 Naked> Σ0 →0x12b82 ←0x12bc4
<MI 12be0 BRA 0x12b82> {}
<POP 12be2-12be8 Naked> Σ0 ↓ →0x12c48 ←0x12b82 ←0x12b8a
<MI 12be2 CMP.W (A6+0x10),D0> {}
<MI 12be6 BLS 0x12c48> {}
<POP 12be8-12c32 Naked> Σ0 ↓ →0x12c3e
<MI 12be8 CLR.L D1> {}
<MI 12bea MOVE.W D0,D1> {}
<MI 12bec MOVE.W (A6+0x10),D0> {}
<MI 12bf0 EXTW.L D0> {}
<MI 12bf2 SUB.L D0,D1> {}
<POP 0x12bf4 LimitCheck 0x0 ≤ D1 ≤ 0xffff> {}
<MI 12bfe MOVE.W D1,(A6-0x416)> {}
<MI 12c00 MOVEA.L (A6+0x8),A0> {}
<MI 12c04 CLR.L D2> {}
<MI 12c06 MOVE.W D7,D2> {}
<MI 12c08 CLR.L D3> {}
<MI 12c0a MOVE.W D1,D3> {}
<MI 12c0c ADD.L D2,D3> {}
<POP 0x12c0e LimitCheck 0x0 ≤ D3 ≤ 0xffff> {}
<MI 12c18 MOVE.W D3,(A0)> {}
<Const 0x12c1a 0x3.2> Δ-2 {[#3]}
<MI 12c1e MOVE.W D2,-(A7)> Δ-2 {[#3]|[2, 'D2']}
<Const 0x12c20 0x1.4> Δ-4 {[#3]|[2, 'D2']|[##1]}
<MI 12c24 MOVE.L A4,-(A7)> Δ-4 {[#3]|[2, 'D2']|[##1]|[4, 'A4']}
<Pointer.fp 0x12c26 <LVAR -0x00c @ 1(r)>> Δ-4 {[#3]|[2, 'D2']|[##1]|[4, 'A4']|[@@-12]}
<Call 0x12c28 0x127c4> {[#3]|[2, 'D2']|[##1]|[4, 'A4']|[@@-12]}
_RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
<POP 12c2c-12c2e StackAdj> Δ+16 {}
<MI 12c2e TST.B (A6-0xc)> {}
<MI 12c30 BNE 0x12c3e> {}
<POP 12c32-12c3e Naked> Σ0 ↓
<Const 0x12c32 0x2.4> Δ-4 {[##2]}
<Call 0x12c36 0x10220> {[##2]}
KC10_Panic(code : Long)
<POP 12c3c-12c3e StackAdj> Δ+4 {}
<POP 12c3e-12c48 Naked> Σ0 →0x12cfe ←0x12be8
<MI 12c3e MOVEA.L (A6+0xc),A0> {}
<MI 12c42 MOVE.W D0,(A0)> {}
<MI 12c44 BRA 0x12cfe> {}
<POP 12c48-12c4e Naked> Σ0 ↓ →0x12c64 ←0x12be2
<MI 12c48 CMP.W (A6-0x4),D0> {}
<MI 12c4c BCC 0x12c64> {}
<POP 12c4e-12c64 Naked> Σ0 ↓
<MI 12c4e MOVE.L (A6-0x4),(A6-0x416)> {}
<MI 12c52 MOVE.W (A6-0x8),D7> {}
<MI 12c56 MOVE.W (A6-0x6),D0> {}
<POP 0x12c5a LimitCheck 0x0 ≤ D0 ≤ 0x4000> {}
<MI 12c5e MOVE.W D0,D5> {}
<MI 12c60 MOVE.W (A6-0xa),D6> {}
<POP 12c64-12c7e Naked> Σ0 ↓ →0x12cbc ←0x12c48
<MI 12c64 MOVEA.L (A6+0xc),A0> {}
<MI 12c68 MOVE.W (A6-0x416),D0> {}
<POP 0x12c6a LimitCheck 0x0 ≤ D0 ≤ 0x4000> {}
<MI 12c6e MOVE.W D0,(A0)> {}
<MI 12c70 MOVEA.L (A6+0x8),A0> {}
<MI 12c74 MOVE.W D7,(A0)> {}
<MI 12c76 CMP.W 0x10010,D7> {}
<MI 12c7c BNE 0x12cbc> {}
<POP 12c7e-12c88 Naked> Σ0 ↓ →0x12c90
<MI 12c7e MOVE.W (A6-0x414),0x10010> {}
<MI 12c84 TST.W (A6-0x414)> {}
<MI 12c86 BNE 0x12c90> {}
<POP 12c88-12c90 Naked> Σ0 →0x12cba
<MI 12c88 CLR.W 0x10022> {}
<MI 12c8e BRA 0x12cba> {}
<POP 12c90-12ca8 Naked> Σ0 ↓ →0x12cb4 ←0x12c7e
<Const 0x12c90 0x2.2> Δ-2 {[#2]}
<MI 12c94 MOVE.W (A6-0x414),-(A7)> Δ-2 {[#2]|[2, '(A6-0x414)']}
<Const 0x12c96 0x1.4> Δ-4 {[#2]|[2, '(A6-0x414)']|[##1]}
<MI 12c9a MOVE.L A4,-(A7)> Δ-4 {[#2]|[2, '(A6-0x414)']|[##1]|[4, 'A4']}
<Pointer.fp 0x12c9c <LVAR -0x00c @ 1(r)>> Δ-4 {[#2]|[2, '(A6-0x414)']|[##1]|[4, 'A4']|[@@-12]}
<Call 0x12c9e 0x127c4> {[#2]|[2, '(A6-0x414)']|[##1]|[4, 'A4']|[@@-12]}
_RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
<POP 12ca2-12ca4 StackAdj> Δ+16 {}
<MI 12ca4 TST.B (A6-0xc)> {}
<MI 12ca6 BNE 0x12cb4> {}
<POP 12ca8-12cb4 Naked> Σ0 ↓
<Const 0x12ca8 0x3.4> Δ-4 {[##3]}
<Call 0x12cac 0x10220> {[##3]}
KC10_Panic(code : Long)
<POP 12cb2-12cb4 StackAdj> Δ+4 {}
<POP 12cb4-12cba Naked> Σ0 ↓ ←0x12c90
<MI 12cb4 MOVE.L (A6-0x416),0x10022> {}
<POP 12cba-12cbc Naked> Σ0 →0x12cf8 ←0x12c88
<MI 12cba BRA 0x12cf8> {}
<POP 12cbc-12cde Naked> Σ0 ↓ →0x12cea ←0x12c64
<POP 0x12cbc LimitCheck 0x0 ≤ D5 ≤ 0xffff> {}
<MI 12cc4 MOVE.W D5,(A6-0x416)> {}
<Const 0x12cc6 0x3.2> Δ-2 {[#3]}
<MI 12cca MOVE.W D6,-(A7)> Δ-2 {[#3]|[2, 'D6']}
<Const 0x12ccc 0x1.4> Δ-4 {[#3]|[2, 'D6']|[##1]}
<MI 12cd0 MOVE.L A4,-(A7)> Δ-4 {[#3]|[2, 'D6']|[##1]|[4, 'A4']}
<Pointer.fp 0x12cd2 <LVAR -0x00c @ 1(r)>> Δ-4 {[#3]|[2, 'D6']|[##1]|[4, 'A4']|[@@-12]}
<Call 0x12cd4 0x127c4> {[#3]|[2, 'D6']|[##1]|[4, 'A4']|[@@-12]}
_RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
<POP 12cd8-12cda StackAdj> Δ+16 {}
<MI 12cda TST.B (A6-0xc)> {}
<MI 12cdc BNE 0x12cea> {}
<POP 12cde-12cea Naked> Σ0 ↓
<Const 0x12cde 0x4.4> Δ-4 {[##4]}
<Call 0x12ce2 0x10220> {[##4]}
KC10_Panic(code : Long)
<POP 12ce8-12cea StackAdj> Δ+4 {}
<POP 12cea-12cf2 Naked> Σ0 ↓ →0x12cfe ←0x12cbc
<MI 12cea CMP.W 0x10010,D6> {}
<MI 12cf0 BNE 0x12cfe> {}
<POP 12cf2-12cf8 Naked> Σ0 ↓
<MI 12cf2 MOVE.W (A6-0x414),0x10024> {}
<POP 12cf8-12cfe Naked> Σ0 ↓ ←0x12cba
<Call 0x12cf8 0x13e5c> {}
_WriteFreeList(void)
<POP 12cfe-12d06 Epilogue> Σ0 ←0x12b6c ←0x12bb0 ←0x12c3e ←0x12cea
@ 12d06
_FS10378(MOD a : File; b: Byte; VAR c: Bool)
<LVAR 0x00e 4(r)>
<LVAR 0x00c 1(r)>
<LVAR 0x008 4(r)>
<LVAR -0x008 @ 2(rw)>
<LVAR -0x00e @ 2(rw)>
<POP 12d06-12e2e Body>
<POP 12d06-12d1c Prologue> Σ0 ↓
<POP 12d1c-12d34 RegCacheLoad> Σ0 ↓
<POP 12d34-12d40 Naked> Σ0 ↓ →0x12d44
<MI 12d34 MOVEA.L (A6+0x8),A0> {}
<MI 12d36 CLR.B (A0)> {}
<MI 12d38 MOVEA.L (A6+0xe),A0> {}
<MI 12d3a TST.W (A0+0x20)> {}
<MI 12d3e BNE 0x12d44> {}
<POP 12d40-12d44 Naked> Σ0 →0x12e20
<MI 12d40 BRA 0x12e20> {}
<POP 12d44-12d4c Naked> Σ0 ↓ →0x12d54 ←0x12d34
<MI 12d44 TST.W 0x10010> {}
<MI 12d4a BNE 0x12d54> {}
<POP 12d4c-12d54 Naked> Σ0 →0x12e20
<MI 12d4c MOVEA.L (A6+0x8),A0> {}
<MI 12d4e MOVE.B #0x01,(A0)> {}
<MI 12d50 BRA 0x12e20> {}
<POP 12d54-12d5e Naked> Σ0 ↓ ←0x12d44
<MI 12d54 MOVEA.L (A6+0xe),A0> {}
<MI 12d56 MOVE.W (A0+0x20),D6> {}
<MI 12d5a MOVEQ.L #0x00,D7> {}
<MI 12d5c MOVEQ.L #0x00,D5> {}
<POP 12d5e-12d66 Naked> Σ0 ↓ →0x12d7a ←0x12e06
<MI 12d5e CMP.W 0x10022,D6> {}
<MI 12d64 BCS 0x12d7a> {}
<POP 12d66-12d7a Naked> Σ0 →0x12db8
<POP 0x12d66 LimitCheck 0x0 ≤ D6 ≤ 0x4000> {}
<MI 12d6a MOVE.W D6,-(A7)> Δ-2 {[2, 'D6']}
<Pointer.fp 0x12d6c <LVAR -0x008 @ 2(rw)>> Δ-4 {[2, 'D6']|[@@-8]}
<Pointer.fp 0x12d6e <LVAR -0x00e @ 2(rw)>> Δ-4 {[2, 'D6']|[@@-8]|[@@-14]}
<Call 0x12d70 0x12b3a> {[2, 'D6']|[@@-8]|[@@-14]}
<POP 12d74-12d78 StackAdj> Δ+10 {}
<MI 12d78 BRA 0x12db8> {}
<POP 12d7a-12db8 Naked> Σ0 ↓ ←0x12d5e
<POP 0x12d7a LimitCheck 0x0 ≤ D6 ≤ 0x4000> {}
<MI 12d7e MOVE.W D6,(A6-0x8)> {}
<MI 12d80 CLR.L D0> {}
<MI 12d82 MOVE.W 0x10022,D0> {}
<MI 12d88 CLR.L D1> {}
<MI 12d8a MOVE.W D6,D1> {}
<MI 12d8c NEG.L D1> {}
<MI 12d8e ADD.L D0,D1> {}
<POP 0x12d90 LimitCheck 0x0 ≤ D1 ≤ 0xffff> {}
<MI 12d96 MOVE.W D1,0x10022> {}
<MI 12d9c CLR.L D0> {}
<MI 12d9e MOVE.W 0x10010,D0> {}
<MI 12da4 CLR.L D2> {}
<MI 12da6 MOVE.W D1,D2> {}
<MI 12da8 ADD.L D0,D2> {}
<POP 0x12daa LimitCheck 0x0 ≤ D2 ≤ 0xffff> {}
<MI 12db0 MOVE.W D2,(A6-0xe)> {}
<Call 0x12db2 0x13e5c> {}
_WriteFreeList(void)
<POP 12db8-12ddc Naked> Σ0 ↓ →0x12df8 ←0x12d66
<MI 12db8 CLR.L D0> {}
<MI 12dba MOVE.W D6,D0> {}
<MI 12dbc MOVE.W (A6-0x8),D1> {}
<MI 12dbe EXTW.L D1> {}
<MI 12dc0 SUB.L D1,D0> {}
<POP 0x12dc2 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 12dc8 MOVE.W D0,D6> {}
<MI 12dca CLR.L D0> {}
<MI 12dcc MOVE.W D7,D0> {}
<MI 12dce ADD.L D1,D0> {}
<POP 0x12dd0 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 12dd6 MOVE.W D0,D7> {}
<MI 12dd8 TST.L D1> {}
<MI 12dda BEQ 0x12df8> {}
<POP 12ddc-12df8 Naked> Σ0 ↓
<MI 12ddc MOVEA.L (A6+0xe),A0> {}
<POP 0x12dde LimitCheck 0x0 ≤ D5 ≤ 0x5> {}
<MI 12de8 MOVE.L D5,D0> {}
<MI 12dea ASL.L #0x2,D0> {}
<MI 12dec MOVE.W (A6-0xe),(A0+D0.L+#0x24)> {}
<POP 0x12df0 LimitCheck 0x0 ≤ D7 ≤ 0x4000> {}
<MI 12df4 MOVE.W D7,(A0+D0.L+#0x22)> {}
<POP 12df8-12dfc Naked> Σ0 ↓ →0x12dfe ←0x12db8
<MI 12df8 TST.W D6> {}
<MI 12dfa BNE 0x12dfe> {}
<POP 12dfc-12dfe Naked> Σ0 →0x12e20
<MI 12dfc BRA 0x12e20> {}
<POP 12dfe-12e04 Naked> Σ0 ↓ →0x12e06 ←0x12df8
<MI 12dfe TST.B (A6+0xc)> {}
<MI 12e02 BEQ 0x12e06> {}
<POP 12e04-12e06 Naked> Σ0 →0x12e12
<MI 12e04 BRA 0x12e12> {}
<POP 12e06-12e12 Naked> Σ0 ↓ →0x12d5e ←0x12dfe
<MI 12e06 ADDQ.L #0x1,D5> {}
<MI 12e08 CMPI.L #0x00000005,D5> {}
<MI 12e0e BLE 0x12d5e> {}
<POP 12e12-12e20 Naked> Σ0 ↓ ←0x12e04
<MI 12e12 MOVEA.L (A6+0x8),A0> {}
<MI 12e14 MOVE.B #0x01,(A0)> {}
<MI 12e16 MOVE.L (A6+0xe),-(A7)> Δ-4 {[4, '(A6+0xe)']}
<Call 0x12e18 0x12e2e> {[4, '(A6+0xe)']}
_FS1037c(MOD a : File)
<POP 12e1e-12e20 StackAdj> Δ+4 {}
<POP 12e20-12e26 Naked> Σ0 ↓ ←0x12d40 ←0x12d4c ←0x12dfc
<MI 12e20 MOVEA.L (A6+0xe),A0> {}
<MI 12e22 MOVE.B #0x01,(A0+0x4c)> {}
<POP 12e26-12e2e Epilogue> Σ0
@ 12e2e
_FS1037c(MOD a : File)
<LVAR 0x008 4(r)>
<POP 12e2e-12eaa Body>
<POP 12e2e-12e44 Prologue> Σ0 ↓
<POP 12e44-12e46 RegCacheLoad> Σ0 ↓
<POP 12e46-12e4a Naked> Σ0 ↓
<MI 12e46 MOVEQ.L #0x00,D7> {}
<MI 12e48 MOVEQ.L #0x00,D6> {}
<POP 12e4a-12e5e Naked> Σ0 ↓ →0x12e9c ←0x12e9c
<MI 12e4a MOVEA.L (A6+0x8),A0> {}
<POP 0x12e4e LimitCheck 0x0 ≤ D6 ≤ 0x5> {}
<MI 12e54 MOVE.L D6,D0> {}
<MI 12e56 ASL.L #0x2,D0> {}
<MI 12e58 TST.W (A0+D0.L+#0x22)> {}
<MI 12e5c BEQ 0x12e9c> {}
<POP 12e5e-12e9c Naked> Σ0 ↓
<MI 12e5e MOVE.W (A0+D0.L+#0x22),D1> {}
<MI 12e62 SUB.W D7,D1> {}
<POP 0x12e64 LimitCheck 0x0 ≤ D1 ≤ 0xffff> {}
<MI 12e6c MOVE.W D1,0x10022> {}
<MI 12e72 MOVE.W 0x10010,0x10024> {}
<MI 12e7c MOVE.W (A0+D0.L+#0x24),0x10010> {}
<MI 12e84 MOVE.W (A0+D0.L+#0x22),D1> {}
<POP 0x12e88 LimitCheck 0x0 ≤ D1 ≤ 0x4000> {}
<MI 12e8c MOVE.W D1,D7> {}
<MI 12e8e CLR.W (A0+D0.L+#0x22)> {}
<MI 12e92 CLR.W (A0+D0.L+#0x24)> {}
<Call 0x12e96 0x13e5c> {}
_WriteFreeList(void)
<POP 12e9c-12ea2 Naked> Σ0 ↓ →0x12e4a ←0x12e4a
<MI 12e9c ADDQ.L #0x1,D6> {}
<MI 12e9e CMP.L #0x05,D6> {}
<MI 12ea0 BLE 0x12e4a> {}
<POP 12ea2-12eaa Epilogue> Σ0
@ 1330a
ReportError(Byte error, Byte mode, String)
<LVAR 0x00e 1(r)>
<LVAR 0x00c 1(r)>
<LVAR 0x008 @ 4(rw)>
<POP 1330a-13398 Body> Δ+4
<POP 1330a-13320 Prologue> Σ0 ↓
<POP 13320-13326 RegCacheLoad> Σ0 ↓
<POP 13326-1332c Naked> Σ0 ↓ →0x13336
<MI 13326 MOVEA.L (A6+0x8),A0> {}
<MI 13328 CMPA.W #0x01,A0> {}
<MI 1332a BNE 0x13336> {}
<POP 1332c-13336 Naked> Σ0 ↓
<Pointer.fp 0x1332c <LVAR 0x008 @ 4(rw)>> Δ-4 {[@@8]}
<Call 0x1332e 0x10cfa> {[@@8]}
_NewString(VAR a : String)
<POP 13334-13336 StackAdj> Δ+4 {}
<POP 13336-13368 Naked> Σ0 →0x1336e →0x1337a →0x13384 ←0x13326
<POP 13336-13338 StackAdj> Δ-8 {[-8-]}
<MI 13338 MOVE.B (A6+0xe),-(A7)> Δ-2 {[-8-]|[2, '(A6+0xe)']}
<Call 0x1333c 0x1430c> {[-8-]|[2, '(A6+0xe)']}
_FsErrMsgStr(err: Byte) : String
<POP 13342-13344 StackAdj> Δ+2 {[-8-]}
<MI 13344 MOVE.L (A6+0x8),-(A7)> Δ-4 {[-8-]|[4, '(A6+0x8)']}
<Call 0x13346 0x10f2c> {[-8-]|[4, '(A6+0x8)']}
_StringCat2(a, b : String) : String
<POP 1334c-1334e StackAdj> Δ+8 {[-4-]}
<MI 1334e MOVE.L (A7)+,(A6+0x8)> Δ+4 {}
<MI 13350 MOVE.B (A6+0xc),D0> {}
<MI 13354 EXTB.W D0> {}
<POP 0x13356 LimitCheck 0x0 ≤ D0 ≤ 0x2> {}
<MI 1335e ADD.W D0,D0> {}
<MI 13360 SWITCH D0.W> {}
<POP 1336e-13376 Naked> Σ0 Δ-4 ↓ ←0x13336
<Pointer.fp 0x1336e <LVAR 0x008 @ 4(rw)>> Δ-4 {[@@8]}
<Call 0x13370 0x10d36> {[@@8]}
_FreeString(VAR a : String)
<POP 13376-1337a Naked> Σ-4 Δ+4 →0x13390 ←0x1337a
<POP 13376-13378 StackAdj> Δ+4 {}
<MI 13378 BRA 0x13390> {}
<POP 1337a-13384 Naked> Σ0 Δ-4 →0x13376 ←0x13336
<MI 1337a MOVE.L (A6+0x8),-(A7)> Δ-4 {[4, '(A6+0x8)']}
<Call 0x1337c 0x154b0> {[4, '(A6+0x8)']}
_WriteConsoleStringCrLf(str : String)
<MI 13382 BRA 0x13376> {[4, '(A6+0x8)']}
<POP 13384-13390 Naked> Σ0 ↓ ←0x13336
<Const 0x13384 0x1.2> Δ-2 {[#1]}
<MI 13386 MOVE.L (A6+0x8),-(A7)> Δ-4 {[#1]|[4, '(A6+0x8)']}
<Call 0x13388 0x14e18> {[#1]|[4, '(A6+0x8)']}
_PopProgram(status : Byte; msg : String)
<POP 1338e-13390 StackAdj> Δ+6 {}
<POP 13390-13398 Epilogue> Σ0 ←0x13376
@ 13398
<LVAR 0x008 4(r)>
<LVAR -0x00c 4(rw)>
<POP 13398-13420 Body>
<POP 13398-133ae Prologue> Σ0 ↓
<POP 133ae-133b4 RegCacheLoad> Σ0 ↓
<POP 133b4-133be Naked> Σ0 ↓
<MI 133b4 MOVE.L 0x20020,(A6-0xc)> {}
<MI 133ba MOVEA.W #0x01,A4> {}
<MI 133bc MOVEQ.L #0x00,D7> {}
<POP 133be-133c4 Naked> Σ0 ↓ →0x133dc ←0x133da
<MI 133be MOVEA.L (A6-0xc),A0> {}
<MI 133c0 CMPA.W #0x01,A0> {}
<MI 133c2 BEQ 0x133dc> {}
<POP 133c4-133c8 Naked> Σ0 ↓ →0x133dc
<MI 133c4 TST.B D7> {}
<MI 133c6 BNE 0x133dc> {}
<POP 133c8-133d0 Naked> Σ0 ↓ →0x133d4
<MI 133c8 MOVEA.L (A6+0x8),A1> {}
<MI 133cc CMPA.L (A1),A0> {}
<MI 133ce BNE 0x133d4> {}
<POP 133d0-133d4 Naked> Σ0 →0x133da
<MI 133d0 MOVEQ.L #0x01,D7> {}
<MI 133d2 BRA 0x133da> {}
<POP 133d4-133da Naked> Σ0 ↓ ←0x133c8
<MI 133d4 MOVEA.L A0,A4> {}
<MI 133d6 MOVE.L (A0+0x44),(A6-0xc)> {}
<POP 133da-133dc Naked> Σ0 →0x133be ←0x133d0
<MI 133da BRA 0x133be> {}
<POP 133dc-133e0 Naked> Σ0 ↓ →0x133ec ←0x133be ←0x133c4
<MI 133dc TST.B D7> {}
<MI 133de BNE 0x133ec> {}
<POP 133e0-133ec Naked> Σ0 ↓
<Const 0x133e0 0x5.4> Δ-4 {[##5]}
<Call 0x133e4 0x10220> {[##5]}
KC10_Panic(code : Long)
<POP 133ea-133ec StackAdj> Δ+4 {}
<POP 133ec-133f0 Naked> Σ0 ↓ →0x133fc ←0x133dc
<MI 133ec CMPA.W #0x01,A4> {}
<MI 133ee BNE 0x133fc> {}
<POP 133f0-133fc Naked> Σ0 →0x13404
<MI 133f0 MOVEA.L (A6-0xc),A0> {}
<MI 133f2 MOVE.L (A0+0x44),0x20020> {}
<MI 133fa BRA 0x13404> {}
<POP 133fc-13404 Naked> Σ0 ↓ ←0x133ec
<MI 133fc MOVEA.L (A6-0xc),A0> {}
<MI 133fe MOVE.L (A0+0x44),(A4+0x44)> {}
<POP 13404-13418 Naked> Σ0 ↓ ←0x133f0
<MI 13404 MOVEA.L (A6+0x8),A0> {}
<MI 13408 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Const 0x1340a 0x4d.4> Δ-4 {[4, '^(A0)']|[##77]}
<Call 0x1340e 0x108fa> {[4, '^(A0)']|[##77]}
_Free2(a : Pointer; b : Long)
<POP 13414-13416 StackAdj> Δ+8 {}
<MI 13416 MOVE.L #0x01,(A0)> {}
<POP 13418-13420 Epilogue> Σ0
@ 13420
<LVAR 0x00c 1(w)>
<LVAR 0x008 4(r)>
<LVAR -0x008 4(rw)>
<POP 13420-1346a Body>
<POP 13420-13436 Prologue> Σ0 ↓
<POP 13436-1343a RegCacheLoad> Σ0 ↓
<POP 1343a-13442 Naked> Σ0 ↓
<MI 1343a MOVE.L 0x20020,(A6-0x8)> {}
<MI 13440 MOVEQ.L #0x01,D7> {}
<POP 13442-1344a Naked> Σ0 ↓ →0x1345e ←0x1345c
<MI 13442 MOVEA.L (A6-0x8),A0> {}
<MI 13444 CMPA.W #0x1,A0> {}
<MI 13448 BEQ 0x1345e> {}
<POP 1344a-1344e Naked> Σ0 ↓ →0x1345e
<MI 1344a TST.B D7> {}
<MI 1344c BEQ 0x1345e> {}
<POP 1344e-13454 Naked> Σ0 ↓ →0x13458
<MI 1344e CMPA.L (A6+0x8),A0> {}
<MI 13452 BNE 0x13458> {}
<POP 13454-13458 Naked> Σ0 →0x1345c
<MI 13454 MOVEQ.L #0x00,D7> {}
<MI 13456 BRA 0x1345c> {}
<POP 13458-1345c Naked> Σ0 ↓ ←0x1344e
<MI 13458 MOVE.L (A0+0x44),(A6-0x8)> {}
<POP 1345c-1345e Naked> Σ0 →0x13442 ←0x13454
<MI 1345c BRA 0x13442> {}
<POP 1345e-13462 Naked> Σ0 ↓ ←0x13442 ←0x1344a
<MI 1345e MOVE.B D7,(A6+0xc)> {}
<POP 13462-1346a Epilogue> Σ0
@ 1346a
CheckFilename()
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x00c 4(w)>
<POP 1346a-1359c Body> Δ-12
<POP 1346a-13480 Prologue> Σ0 ↓
<POP 13480-1348c RegCacheLoad> Σ0 ↓
<POP 1348c-134c0 Naked> Σ0 Δ-4 ↓ →0x134c4
<MI 1348c MOVEA.L (A6+0x8),A0> {}
<MI 13490 MOVE.B #0x01,(A0)> {}
<MI 13492 MOVEA.L (A6+0xc),A0> {}
<MI 13494 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Const 0x13496 0x4d.4> Δ-4 {[4, '^(A0)']|[##77]}
<Call 0x1349a 0x10856> {[4, '^(A0)']|[##77]}
_Malloc1(length : Long) : Pointer
<POP 134a0-134a2 StackAdj> Δ+8 {}
<MI 134a2 MOVEA.L (A0),A1> {}
<MI 134a4 MOVE.L 0x20020,(A1+0x44)> {}
<MI 134ac MOVE.L (A0),0x20020> {}
<MI 134b2 MOVEA.L (A6+0x10),A0> {}
<MI 134b6 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 134b8 MOVE.W (A0),D0> {[4, 'A0']}
<MI 134ba CMPI.W #0x001e,D0> {[4, 'A0']}
<MI 134be BGT 0x134c4> {[4, 'A0']}
<POP 134c0-134c4 Naked> Σ-4 ↓ →0x134ca
<MI 134c0 CMP.W #0x01,D0> {[-4-]}
<MI 134c2 BGE 0x134ca> {[-4-]}
<POP 134c4-134ca Naked> Σ-4 Δ+4 →0x13594 ←0x1348c
<POP 134c4-134c6 StackAdj> Δ+4 {}
<MI 134c6 BRA 0x13594> {}
<POP 134ca-134d6 Naked> Σ-4 Δ-4 ↓ ←0x134c0
<MI 134ca MOVEQ.L #0x00,D5> {[-4-]}
<MI 134cc MOVEA.L (A7),A0> {[-4-]}
<MI 134ce MOVE.W (A0),D0> {[-4-]}
<MI 134d0 EXTW.L D0> {[-4-]}
<MI 134d2 MOVE.L D0,-(A7)> Δ-4 {[-4-]|[4, 'D0']}
<MI 134d4 MOVEQ.L #0x01,D7> {[-4-]|[4, 'D0']}
<POP 134d6-134da Naked> Σ-8 ↓ →0x13556 ←0x1351e
<MI 134d6 CMP.L (A7),D7> {[-8-]}
<MI 134d8 BGT 0x13556> {[-8-]}
<POP 134da-134f6 Naked> Σ-8 ↓ →0x13508
<MI 134da MOVE.L D7,D0> {[-8-]}
<MI 134dc SUBQ.L #0x1,D0> {[-8-]}
<POP 0x134de LimitCheck 0x0 ≤ D0 ≤ 0x7d> {[-8-]}
<MI 134e8 MOVEA.L (A7+0x4),A0> {[-8-]}
<MI 134ec MOVE.B (A0+D0.L+#0x2),D6> {[-8-]}
<MI 134f0 CMPI.B #0x61,D6> {[-8-]}
<MI 134f4 BCS 0x13508> {[-8-]}
<POP 134f6-134fc Naked> Σ-8 ↓ →0x13508
<MI 134f6 CMPI.B #0x7a,D6> {[-8-]}
<MI 134fa BHI 0x13508> {[-8-]}
<POP 134fc-13508 Naked> Σ-8 →0x1351e
<MI 134fc CLR.L D0> {[-8-]}
<MI 134fe MOVE.B D6,D0> {[-8-]}
<MI 13500 SUBI.W #0x0020,D0> {[-8-]}
<MI 13504 MOVE.B D0,D6> {[-8-]}
<MI 13506 BRA 0x1351e> {[-8-]}
<POP 13508-1351a Naked> Σ-8 ↓ →0x1351e ←0x134da ←0x134f6
<MI 13508 CLR.L D0> {[-8-]}
<MI 1350a MOVE.B D6,D0> {[-8-]}
<MI 1350c LEA.L 0x130f2,A0> {[-8-]}
<MI 13510 MOVE.W D0,D1> {[-8-]}
<MI 13512 LSR.W #0x3,D1> {[-8-]}
<MI 13514 BTST.B D0,(A0+D1.W)> {[-8-]}
<MI 13518 BNE 0x1351e> {[-8-]}
<POP 1351a-1351e Naked> Σ-8 Δ+8 →0x13594
<POP 1351a-1351c StackAdj> Δ+8 {}
<MI 1351c BRA 0x13594> {}
<POP 1351e-13556 Naked> Σ-8 ↓ →0x134d6 ←0x134fc ←0x13508
<MI 1351e MOVEA.L (A6+0xc),A0> {[-8-]}
<MI 13520 MOVEA.L (A0),A0> {[-8-]}
<MI 13522 MOVE.L D7,D0> {[-8-]}
<MI 13524 SUBQ.L #0x1,D0> {[-8-]}
<POP 0x13526 LimitCheck 0x0 ≤ D0 ≤ 0x1d> {[-8-]}
<MI 13530 MOVE.B D6,(A0+D0.L)> {[-8-]}
<MI 13534 CLR.L D0> {[-8-]}
<MI 13536 MOVE.B D6,D0> {[-8-]}
<MI 13538 ANDI.W #0x003f,D0> {[-8-]}
<MI 1353c EXTW.L D0> {[-8-]}
<MI 1353e MOVE.L D0,(A6-0xc)> {[-8-]}
<MI 13542 MOVE.L D0,D4> {[-8-]}
<MI 13544 MOVE.L D0,D3> {[-8-]}
<Call 0x13546 0x107ea> {[-8-]}
_?muls_d3_d4
<MI 13548 MOVE.L D0,D3> {[-8-]}
<Call 0x1354a 0x107ea> {[-8-]}
_?muls_d3_d4
<MI 1354c MOVE.L D7,D3> {[-8-]}
<Call 0x1354e 0x107ea> {[-8-]}
_?muls_d3_d4
<MI 13550 ADD.L D4,D5> {[-8-]}
<MI 13552 ADDQ.L #0x1,D7> {[-8-]}
<MI 13554 BVC 0x134d6> {[-8-]}
<POP 13556-13562 Naked> Σ-8 Δ+4 ↓ ←0x134d6
<POP 13556-13558 StackAdj> Δ+4 {[-4-]}
<MI 13558 MOVEA.L (A7),A0> {[-4-]}
<MI 1355a MOVE.W (A0),D0> {[-4-]}
<MI 1355c EXTW.L D0> {[-4-]}
<MI 1355e ADDQ.L #0x1,D0> {[-4-]}
<MI 13560 MOVE.L D0,D7> {[-4-]}
<POP 13562-1356a Naked> Σ-4 ↓ →0x13584 ←0x1356a
<MI 13562 CMPI.L #0x0000001e,D7> {[-4-]}
<MI 13568 BGT 0x13584> {[-4-]}
<POP 1356a-13584 Naked> Σ-4 ↓ →0x13562
<MI 1356a MOVEA.L (A6+0xc),A0> {[-4-]}
<MI 1356c MOVEA.L (A0),A0> {[-4-]}
<MI 1356e MOVE.L D7,D0> {[-4-]}
<MI 13570 SUBQ.L #0x1,D0> {[-4-]}
<POP 0x13572 LimitCheck 0x0 ≤ D0 ≤ 0x1d> {[-4-]}
<MI 1357c CLR.B (A0+D0.L)> {[-4-]}
<MI 13580 ADDQ.L #0x1,D7> {[-4-]}
<MI 13582 BVC 0x13562> {[-4-]}
<POP 13584-13594 Naked> Σ-4 Δ+4 ↓ ←0x13562
<POP 13584-13586 StackAdj> Δ+4 {}
<MI 13586 MOVEA.L (A6+0xc),A0> {}
<MI 13588 MOVEA.L (A0),A0> {}
<MI 1358a MOVE.W D5,(A0+0x1e)> {}
<MI 1358e MOVEA.L (A6+0x8),A0> {}
<MI 13592 CLR.B (A0)> {}
<POP 13594-1359c Epilogue> Σ0 ←0x134c4 ←0x1351a
@ 1359c
<LVAR 0x008 4(r)>
<LVAR -0x004 @ 1(r)>
<LVAR -0x024 @>
<LVAR -0x026 2(w)>
<LVAR -0x044 @>
<POP 1359c-1363e Body>
<POP 1359c-135b2 Prologue> Σ0 ↓
<POP 135b2-135c0 Naked> Σ0 ↓ →0x135c6
<MI 135b2 MOVEA.L (A6+0x8),A0> {}
<MI 135b6 MOVE.B (A0+0x3f),D0> {}
<MI 135ba LSL.B #0x4,D0> {}
<MI 135bc LSR.B #0x7,D0> {}
<MI 135be BNE 0x135c6> {}
<POP 135c0-135c6 Naked> Σ0 ↓ →0x13636
<MI 135c0 TST.B (A0+0x4c)> {}
<MI 135c4 BEQ 0x13636> {}
<POP 135c6-13626 Naked> Σ0 ↓ →0x13632 ←0x135b2
<MI 135c6 ANDI.B #0xf7,(A0+0x3f)> {}
<MI 135cc LEA.L (A6-0x44),A1> {}
<MI 135d0 MOVEA.L A0,A2> {}
<BlockMove 30,A2,A1> {}
<MI 135da MOVE.W (A0+0x1e),(A6-0x26)> {}
<MI 135e0 LEA.L (A6-0x24),A1> {}
<MI 135e4 LEA.L (A0+0x20),A2> {}
<BlockMove 32,A2,A1> {}
<MI 135f0 MOVE.W (A0+0x40),-(A7)> Δ-2 {[2, '(A0+0x40)']}
<MI 135f4 MOVE.W (A0+0x42),D0> {[2, '(A0+0x40)']}
<MI 135f8 EXTW.L D0> {[2, '(A0+0x40)']}
<MI 135fa ASL.L #0x5,D0> {[2, '(A0+0x40)']}
<POP 0x135fc LimitCheck 0x0 ≤ D0 ≤ 0x1ff> {[2, '(A0+0x40)']}
<MI 13606 MOVE.W D0,-(A7)> Δ-2 {[2, '(A0+0x40)']|[2, 'D0']}
<MI 13608 LEA.L (A6-0x44),A1> {[2, '(A0+0x40)']|[2, 'D0']}
<MI 1360c MOVE.L A1,-(A7)> Δ-4 {[2, '(A0+0x40)']|[2, 'D0']|[4, 'A1']}
<Const 0x1360e 0x20.2> Δ-2 {[2, '(A0+0x40)']|[2, 'D0']|[4, 'A1']|[#32]}
<Pointer.fp 0x13612 <LVAR -0x004 @ 1(r)>> Δ-4 {[2, '(A0+0x40)']|[2, 'D0']|[4, 'A1']|[#32]|[@@-4]}
<Call 0x13616 0x12a5a> {[2, '(A0+0x40)']|[2, 'D0']|[4, 'A1']|[#32]|[@@-4]}
_WriteWords(lba : W; offset : W; ptr : L; nwords : W; VAR status : B)
<POP 1361c-13620 StackAdj> Δ+14 {}
<MI 13620 TST.B (A6-0x4)> {}
<MI 13624 BNE 0x13632> {}
<POP 13626-13632 Naked> Σ0 ↓
<Const 0x13626 0x8.4> Δ-4 {[##8]}
<Call 0x1362a 0x10220> {[##8]}
KC10_Panic(code : Long)
<POP 13630-13632 StackAdj> Δ+4 {}
<POP 13632-13636 Naked> Σ0 ↓ ←0x135c6
<MI 13632 CLR.B (A0+0x4c)> {}
<POP 13636-1363e Epilogue> Σ0 ←0x135c0
@ 1363e
<LVAR 0x008 4(r)>
<LVAR -0x002 @ 1(r)>
<LVAR -0x00d 1(w)>
<LVAR -0x40c @>
<POP 1363e-13718 Body>
<POP 1363e-13654 Prologue> Σ0 ↓
<POP 13654-13662 RegCacheLoad> Σ0 ↓
<POP 13662-13672 Naked> Σ0 ↓ →0x13710
<MI 13662 MOVEA.L (A6+0x8),A0> {}
<MI 13666 MOVE.B (A0+0x3f),D0> {}
<MI 1366a LSL.B #0x4,D0> {}
<MI 1366c LSR.B #0x7,D0> {}
<MI 1366e BNE 0x13710> {}
<POP 13672-13696 Naked> Σ0 ↓ →0x136a2
<MI 13672 MOVE.W (A0+0x40),D6> {}
<MI 13676 LEA.L (A6-0x40c),A1> {}
<MI 13678 MOVE.L A1,-(A7)> Δ-4 {[4, 'A1']}
<MI 1367a MOVEA.L (A7)+,A4> Δ+4 {}
<Const 0x1367c 0x2.2> Δ-2 {[#2]}
<MI 13680 MOVE.W D6,-(A7)> Δ-2 {[#2]|[2, 'D6']}
<Const 0x13682 0x1.4> Δ-4 {[#2]|[2, 'D6']|[##1]}
<MI 13686 MOVE.L A4,-(A7)> Δ-4 {[#2]|[2, 'D6']|[##1]|[4, 'A4']}
<Pointer.fp 0x13688 <LVAR -0x002 @ 1(r)>> Δ-4 {[#2]|[2, 'D6']|[##1]|[4, 'A4']|[@@-2]}
<Call 0x1368a 0x127c4> {[#2]|[2, 'D6']|[##1]|[4, 'A4']|[@@-2]}
_RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
<POP 13690-13692 StackAdj> Δ+16 {}
<MI 13692 TST.B (A6-0x2)> {}
<MI 13694 BNE 0x136a2> {}
<POP 13696-136a2 Naked> Σ0 ↓
<Const 0x13696 0x6.4> Δ-4 {[##6]}
<Call 0x1369a 0x10220> {[##6]}
KC10_Panic(code : Long)
<POP 136a0-136a2 StackAdj> Δ+4 {}
<POP 136a2-136ac Naked> Σ0 ↓ ←0x13672
<MI 136a2 MOVE.W (A0+0x42),D0> {}
<MI 136a6 EXTW.L D0> {}
<MI 136a8 ADDQ.L #0x1,D0> {}
<MI 136aa MOVE.L D0,D7> {}
<POP 136ac-136b0 Naked> Σ0 ↓ →0x136de ←0x136b0
<MI 136ac CMP.L #0x0f,D7> {}
<MI 136ae BGT 0x136de> {}
<POP 136b0-136de Naked> Σ0 ↓ →0x136ac
<MI 136b0 MOVE.L D7,D0> {}
<MI 136b2 SUBQ.L #0x1,D0> {}
<POP 0x136b4 LimitCheck 0x0 ≤ D0 ≤ 0xf> {}
<MI 136ba ASL.L #0x6,D0> {}
<MI 136bc LEA.L (A6-0x40c),A0> {}
<POP 0x136be LimitCheck 0x0 ≤ D7 ≤ 0xf> {}
<MI 136c4 MOVE.L D7,D1> {}
<MI 136c6 ASL.L #0x6,D1> {}
<MI 136c8 LEA.L (A6-0x40c),A1> {}
<MI 136ca LEA.L (A0+D0.L),A0> {}
<MI 136ce LEA.L (A1+D1.L),A1> {}
<BlockMove 64,A1,A0> {}
<MI 136da ADDQ.L #0x1,D7> {}
<MI 136dc BVC 0x136ac> {}
<POP 136de-136fc Naked> Σ0 ↓ →0x13708 ←0x136ac
<MI 136de OR.B #0x08,(A6-0xd)> {}
<Const 0x136e2 0x3.2> Δ-2 {[#3]}
<MI 136e6 MOVE.W D6,-(A7)> Δ-2 {[#3]|[2, 'D6']}
<Const 0x136e8 0x1.4> Δ-4 {[#3]|[2, 'D6']|[##1]}
<MI 136ec MOVE.L A4,-(A7)> Δ-4 {[#3]|[2, 'D6']|[##1]|[4, 'A4']}
<Pointer.fp 0x136ee <LVAR -0x002 @ 1(r)>> Δ-4 {[#3]|[2, 'D6']|[##1]|[4, 'A4']|[@@-2]}
<Call 0x136f0 0x127c4> {[#3]|[2, 'D6']|[##1]|[4, 'A4']|[@@-2]}
_RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
<POP 136f6-136f8 StackAdj> Δ+16 {}
<MI 136f8 TST.B (A6-0x2)> {}
<MI 136fa BNE 0x13708> {}
<POP 136fc-13708 Naked> Σ0 ↓
<Const 0x136fc 0x7.4> Δ-4 {[##7]}
<Call 0x13700 0x10220> {[##7]}
KC10_Panic(code : Long)
<POP 13706-13708 StackAdj> Δ+4 {}
<POP 13708-13710 Naked> Σ0 ↓ ←0x136de
<MI 13708 MOVEA.L (A6+0x8),A0> {}
<MI 1370c OR.B #0x08,(A0+0x3f)> {}
<POP 13710-13718 Epilogue> Σ0 ←0x13662
@ 13718
NameI(Char*, &void)
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x004 @ 1(r)>
<LVAR -0x005 1(r)>
<LVAR -0x006 1(r)>
<LVAR -0x007 1(r)>
<LVAR -0x008 @ 1(r)>
<LVAR -0x40c @>
<LVAR -0x410 @>
<POP 13718-138b4 Body>
<POP 13718-1372e Prologue> Σ0 ↓
<POP 1372e-1373a RegCacheLoad> Σ0 ↓
<POP 1373a-1379e Naked> Σ0 ↓ →0x137aa
<MI 1373a MOVEA.L (A6+0xc),A0> {}
<MI 1373c MOVE.W (A0+0x1e),D5> {}
<MI 13740 ANDI.W #0xffe0,D5> {}
<MI 13744 LSR.W #0x5,D5> {}
<MI 13746 MOVE.W D5,D0> {}
<MI 13748 ANDI.W #0x00ff,D0> {}
<MI 1374c MOVE.W D5,D1> {}
<MI 1374e LSR.W #0x8,D1> {}
<POP 0x13750 LimitCheck 0x0 ≤ D1 ≤ 0x7> {}
<MI 13754 ASL.W #0x1,D1> {}
<MI 13756 CLR.L D2> {}
<MI 13758 MOVE.W D1,D2> {}
<MI 1375a LEA.L 0x0,A0> {}
<MI 1375e LEA.L (A0+D2.L),A0> {}
<MI 13762 ADDA.L #0x10012,A0> {}
<MI 13768 CLR.L D1> {}
<MI 1376a MOVE.W (A0),D1> {}
<MI 1376c CLR.L D2> {}
<MI 1376e MOVE.W D0,D2> {}
<MI 13770 ADD.L D1,D2> {}
<POP 0x13772 LimitCheck 0x0 ≤ D2 ≤ 0xffff> {}
<MI 13778 MOVE.W D2,D6> {}
<Const 0x1377a 0x2.2> Δ-2 {[#2]}
<MI 1377e MOVE.W D6,-(A7)> Δ-2 {[#2]|[2, 'D6']}
<Const 0x13780 0x1.4> Δ-4 {[#2]|[2, 'D6']|[##1]}
<MI 13784 LEA.L (A6-0x40c),A0> {[#2]|[2, 'D6']|[##1]}
<MI 13788 MOVE.L A0,-(A7)> Δ-4 {[#2]|[2, 'D6']|[##1]|[4, 'A0']}
<Pointer.fp 0x1378a <LVAR -0x004 @ 1(r)>> Δ-4 {[#2]|[2, 'D6']|[##1]|[4, 'A0']|[@@-4]}
<Call 0x1378e 0x127c4> {[#2]|[2, 'D6']|[##1]|[4, 'A0']|[@@-4]}
_RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
<POP 13794-13798 StackAdj> Δ+16 {}
<MI 13798 TST.B (A6-0x4)> {}
<MI 1379c BNE 0x137aa> {}
<POP 1379e-137aa Naked> Σ0 ↓
<Const 0x1379e 0x6.4> Δ-4 {[##6]}
<Call 0x137a2 0x10220> {[##6]}
KC10_Panic(code : Long)
<POP 137a8-137aa StackAdj> Δ+4 {}
<POP 137aa-137ac Naked> Σ0 ↓ ←0x1373a
<MI 137aa MOVEQ.L #0x00,D7> {}
<POP 137ac-137c4 Naked> Σ0 ↓ →0x1383a ←0x13886
<POP 0x137ac LimitCheck 0x0 ≤ D7 ≤ 0xf> {}
<MI 137b2 MOVE.L D7,D0> {}
<MI 137b4 ASL.L #0x6,D0> {}
<MI 137b6 LEA.L (A6-0x410),A0> {}
<MI 137ba MOVE.B (A0+D0.L+#0x43),D1> {}
<MI 137be LSL.B #0x4,D1> {}
<MI 137c0 LSR.B #0x7,D1> {}
<MI 137c2 BEQ 0x1383a> {}
<POP 137c4-1383a Naked> Σ0 →0x13898
<Pointer.fp 0x137c4 <LVAR -0x008 @ 1(r)>> Δ-4 {[@@-8]}
<Call 0x137c8 0x116ee> {[@@-8]}
_GetRtc() : TimeStamp
<POP 137ce-137d0 StackAdj> Δ+4 {}
<MI 137d0 MOVEA.L (A6+0xc),A0> {}
<MI 137d2 LEA.L (A0+0x22),A1> {}
<MI 137d6 LEA.L 0x13112,A2> {}
<BlockMove 24,A2,A1> {}
<MI 137e2 CLR.W (A0+0x20)> {}
<MI 137e6 MOVE.B (A6-0x8),(A0+0x3a)> {}
<MI 137ec MOVE.B (A6-0x7),(A0+0x3b)> {}
<MI 137f2 MOVE.B (A6-0x6),(A0+0x3c)> {}
<MI 137f8 MOVE.B (A6-0x5),(A0+0x3d)> {}
<MI 137fe AND.W #0x0f,(A0+0x3e)> {}
<MI 13802 ORI.B #0x08,(A0+0x3f)> {}
<MI 13808 ANDI.B #0xfb,(A0+0x3f)> {}
<MI 1380e ANDI.B #0xfd,(A0+0x3f)> {}
<MI 13814 ANDI.B #0xfe,(A0+0x3f)> {}
<MI 1381a MOVEA.L (A6+0xc),A0> {}
<MI 1381c MOVE.B #0x01,(A0+0x4c)> {}
<POP 0x13822 LimitCheck -0x8000 ≤ D7 ≤ 0x7fff> {}
<MI 13834 MOVE.W D7,(A0+0x42)> {}
<MI 13838 BRA 0x13898> {}
<POP 1383a-13854 Naked> Σ0 ↓ →0x13886 ←0x137ac
<MI 1383a MOVEA.L (A6+0xc),A0> {}
<POP 0x1383c LimitCheck 0x0 ≤ D7 ≤ 0xf> {}
<MI 13842 MOVE.L D7,D0> {}
<MI 13844 ASL.L #0x6,D0> {}
<MI 13846 LEA.L (A6-0x410),A1> {}
<MI 1384a MOVE.W (A0+0x1e),D1> {}
<MI 1384e CMP.W (A1+D0.L+#0x22),D1> {}
<MI 13852 BNE 0x13886> {}
<POP 13854-1385c Naked> Σ0 ↓
<MI 13854 LEA.L (A1+D0.L+#0x4),A2> {}
<MI 13858 MOVEA.L A0,A3> {}
<MI 1385a MOVEQ.L #0x1d,D1> {}
<POP 1385c-13862 Naked> Σ0 ↓ →0x1385c ←0x1385c
<MI 1385c CMPM.B (A2)+,(A3)+> {}
<MI 1385e DBNE D1,0x1385c> {}
<POP 13862-13864 Naked> Σ0 ↓ →0x13886
<MI 13862 BNE 0x13886> {}
<POP 13864-13886 Naked> Σ0
<MI 13864 LEA.L (A0+0x20),A2> {}
<MI 13868 LEA.L (A1+D0.L+#0x24),A1> {}
<BlockMove 32,A1,A2> {}
<MI 13874 CLR.B (A0+0x4c)> {}
<MI 13878 SUBI.L #0xffff8000,D7> {}
<POP 0x1387e LimitCheck 0x0 ≤ D7 ≤ 0xffff> {}
<MI 13884 BRA 0x1382e> {}
<POP 13886-1388e Naked> Σ0 ↓ →0x137ac ←0x1383a ←0x13862
<MI 13886 ADDQ.L #0x1,D7> {}
<MI 13888 CMP.L #0x0f,D7> {}
<MI 1388a BLE 0x137ac> {}
<POP 1388e-13898 Naked> Σ0 →0x138ac
<MI 1388e MOVEA.L (A6+0x8),A0> {}
<MI 13892 MOVE.B #0x05,(A0)> {}
<MI 13896 BRA 0x138ac> {}
<POP 13898-138ac Naked> Σ0 ↓ ←0x137c4
<MI 13898 MOVEA.L (A6+0x8),A0> {}
<MI 1389c CLR.B (A0)> {}
<MI 1389e MOVEA.L (A6+0xc),A0> {}
<MI 138a0 MOVE.W D6,(A0+0x40)> {}
<MI 138a4 CLR.W (A0+0x48)> {}
<MI 138a8 CLR.W (A0+0x4a)> {}
<POP 138ac-138b4 Epilogue> Σ0 ←0x1388e
@ 138b4
_OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
<LVAR 0x018 4(r)>
<LVAR 0x016 1(r)>
<LVAR 0x014 1(r)>
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x001 @ 1(r)>
<LVAR -0x002 1(rw)>
<POP 138b4-13a70 Body> Δ-28
<POP 138b4-138ca Prologue> Σ0 ↓
<POP 138ca-138dc RegCacheLoad> Σ0 ↓
<POP 138dc-138e4 Naked> Σ0 ↓ →0x138f0
<MI 138dc TST.B 0x1b0a2> {}
<MI 138e2 BNE 0x138f0> {}
<POP 138e4-138f0 Naked> Σ0 ↓
<Const 0x138e4 0x19.4> Δ-4 {[##25]}
<Call 0x138e8 0x10220> {[##25]}
KC10_Panic(code : Long)
<POP 138ee-138f0 StackAdj> Δ+4 {}
<POP 138f0-138f4 Naked> Σ0 ↓ →0x138f8 ←0x138dc
<MI 138f0 TST.L (A6+0x10)> {}
<MI 138f2 BLT 0x138f8> {}
<POP 138f4-138f8 Naked> Σ0 →0x138fc
<MI 138f4 MOVEQ.L #0x00,D5> {}
<MI 138f6 BRA 0x138fc> {}
<POP 138f8-138fc Naked> Σ0 ↓ ←0x138f0
<MI 138f8 NEG.L (A6+0x10)> {}
<MI 138fa MOVEQ.L #0x01,D5> {}
<POP 138fc-13914 Naked> Σ0 ↓ →0x13918 ←0x138f4
<MI 138fc MOVEA.L (A6+0xc),A0> {}
<MI 138fe MOVE.L (A6+0x18),-(A7)> Δ-4 {[4, '(A6+0x18)']}
<MI 13902 MOVEA.L (A6+0x8),A1> {[4, '(A6+0x18)']}
<MI 13904 PEA.L (A1)> Δ-4 {[4, '(A6+0x18)']|[4, '^(A1)']}
<MI 13906 PEA.L (A0)> Δ-4 {[4, '(A6+0x18)']|[4, '^(A1)']|[4, '^(A0)']}
<Call 0x13908 0x1346a> {[4, '(A6+0x18)']|[4, '^(A1)']|[4, '^(A0)']}
CheckFilename()
<POP 1390c-13910 StackAdj> Δ+12 {}
<MI 13910 TST.B (A0)> {}
<MI 13912 BEQ 0x13918> {}
<POP 13914-13918 Naked> Σ0 →0x13a42
<MI 13914 BRA 0x13a42> {}
<POP 13918-1392a Naked> Σ0 ↓ →0x1392e ←0x138fc
<MI 13918 MOVEA.L (A6+0xc),A0> {}
<MI 1391a MOVEA.L (A6+0x8),A1> {}
<MI 1391c MOVE.L (A1),-(A7)> Δ-4 {[4, '(A1)']}
<MI 1391e PEA.L (A0)> Δ-4 {[4, '(A1)']|[4, '^(A0)']}
<Call 0x13920 0x13718> {[4, '(A1)']|[4, '^(A0)']}
NameI(Char*, &void)
<POP 13924-13926 StackAdj> Δ+8 {}
<MI 13926 TST.B (A0)> {}
<MI 13928 BEQ 0x1392e> {}
<POP 1392a-1392e Naked> Σ0 →0x13a42
<MI 1392a BRA 0x13a42> {}
<POP 1392e-1394a Naked> Σ0 Δ-4 ↓ →0x13960 ←0x13918
<MI 1392e MOVEA.L (A6+0x8),A0> {}
<MI 13930 MOVEA.L (A0),A0> {}
<MI 13932 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 13934 MOVE.B (A0+0x3f),D0> {[4, 'A0']}
<MI 13938 LSL.B #0x4,D0> {[4, 'A0']}
<MI 1393a LSR.B #0x7,D0> {[4, 'A0']}
<MI 1393c NEG.B D0> {[4, 'A0']}
<MI 1393e ADDQ.B #0x1,D0> {[4, 'A0']}
<MI 13940 MOVE.B D0,(A6-0x2)> {[4, 'A0']}
<MI 13944 TST.B (A6+0x16)> {[4, 'A0']}
<MI 13948 BNE 0x13960> {[4, 'A0']}
<POP 1394a-1394e Naked> Σ-4 ↓ →0x13956
<MI 1394a TST.B D0> {[-4-]}
<MI 1394c BEQ 0x13956> {[-4-]}
<POP 1394e-13954 Naked> Σ-4 Δ+4 →0x13a68
<POP 1394e-13950 StackAdj> Δ+4 {}
<MI 13950 BRA 0x13a68> {}
<POP 13956-13960 Naked> Σ-4 Δ+4 →0x13a42 ←0x1394a
<MI 13956 MOVEA.L (A6+0xc),A1> {[-4-]}
<MI 13958 MOVE.B #0x02,(A1)> {[-4-]}
<POP 1395a-1395c StackAdj> Δ+4 {}
<MI 1395c BRA 0x13a42> {}
<POP 13960-13968 Naked> Σ-4 ↓ →0x13986 ←0x1392e
<MI 13960 MOVE.B (A6+0x16),D0> {[-4-]}
<MI 13964 CMP.B #0x02,D0> {[-4-]}
<MI 13966 BNE 0x13986> {[-4-]}
<POP 13968-1396e Naked> Σ-4 ↓ →0x13986
<MI 13968 TST.B (A6-0x2)> {[-4-]}
<MI 1396c BEQ 0x13986> {[-4-]}
<POP 1396e-1397a Naked> Σ-4 ↓ →0x13986
<MI 1396e MOVEA.L (A7),A0> {[-4-]}
<MI 13970 MOVE.B (A0+0x3f),D0> {[-4-]}
<MI 13974 LSL.B #0x7,D0> {[-4-]}
<MI 13976 LSR.B #0x7,D0> {[-4-]}
<MI 13978 BNE 0x13986> {[-4-]}
<POP 1397a-13986 Naked> Σ-4 Δ+4 →0x13a42
<MI 1397a MOVEA.L (A6+0xc),A0> {[-4-]}
<MI 1397c MOVE.B #0x06,(A0)> {[-4-]}
<POP 13980-13982 StackAdj> Δ+4 {}
<MI 13982 BRA 0x13a42> {}
<POP 13986-13992 Naked> Σ-4 ↓ →0x13998 ←0x13960 ←0x13968 ←0x1396e
<MI 13986 MOVEA.L (A7),A0> {[-4-]}
<MI 13988 MOVE.W (A0+0x20),D0> {[-4-]}
<MI 1398c EXTW.L D0> {[-4-]}
<MI 1398e CMP.L (A6+0x10),D0> {[-4-]}
<MI 13990 BNE 0x13998> {[-4-]}
<POP 13992-13998 Naked> Σ-4 Δ+4 →0x13a68
<POP 13992-13994 StackAdj> Δ+4 {}
<MI 13994 BRA 0x13a68> {}
<POP 13998-139b2 Naked> Σ-4 ↓ ←0x13986
<MI 13998 MOVEA.L (A7),A0> {[-4-]}
<MI 1399a MOVE.B #0x01,(A0+0x4c)> {[-4-]}
<MI 1399e MOVE.L (A6+0x10),D0> {[-4-]}
<POP 0x139a0 LimitCheck 0x0 ≤ D0 ≤ 0x4000> {[-4-]}
<MI 139aa MOVE.W D0,(A0+0x20)> {[-4-]}
<MI 139ae MOVEQ.L #0x01,D7> {[-4-]}
<MI 139b0 MOVEQ.L #0x00,D6> {[-4-]}
<POP 139b2-139c8 Naked> Σ-4 ↓ →0x139ca ←0x139ca
<POP 0x139b2 LimitCheck 0x0 ≤ D6 ≤ 0x5> {[-4-]}
<MI 139b8 MOVE.L D6,D0> {[-4-]}
<MI 139ba ASL.L #0x2,D0> {[-4-]}
<MI 139bc MOVEA.L (A7),A0> {[-4-]}
<MI 139be MOVE.W (A0+D0.L+#0x22),D1> {[-4-]}
<MI 139c2 EXTW.L D1> {[-4-]}
<MI 139c4 CMP.L (A6+0x10),D1> {[-4-]}
<MI 139c6 BLT 0x139ca> {[-4-]}
<POP 139c8-139ca Naked> Σ-4 ↓
<MI 139c8 MOVEQ.L #0x00,D7> {[-4-]}
<POP 139ca-139d0 Naked> Σ-4 ↓ →0x139b2 ←0x139b2
<MI 139ca ADDQ.L #0x1,D6> {[-4-]}
<MI 139cc CMP.L #0x05,D6> {[-4-]}
<MI 139ce BLE 0x139b2> {[-4-]}
<POP 139d0-139d4 Naked> Σ-4 ↓ →0x13a36
<MI 139d0 TST.B D7> {[-4-]}
<MI 139d2 BEQ 0x13a36> {[-4-]}
<POP 139d4-139e0 Naked> Σ-4 ↓ →0x139ea
<MI 139d4 MOVEA.L (A7),A0> {[-4-]}
<MI 139d6 MOVE.B (A0+0x3f),D0> {[-4-]}
<MI 139da LSL.B #0x7,D0> {[-4-]}
<MI 139dc LSR.B #0x7,D0> {[-4-]}
<MI 139de BEQ 0x139ea> {[-4-]}
<POP 139e0-139ea Naked> Σ-4 Δ+4 →0x13a42
<MI 139e0 MOVEA.L (A6+0xc),A0> {[-4-]}
<MI 139e2 MOVE.B #0x08,(A0)> {[-4-]}
<POP 139e6-139e8 StackAdj> Δ+4 {}
<MI 139e8 BRA 0x13a42> {}
<POP 139ea-139f0 Naked> Σ-4 ↓ →0x139fc ←0x139d4
<MI 139ea TST.B (A6-0x2)> {[-4-]}
<MI 139ee BEQ 0x139fc> {[-4-]}
<POP 139f0-139fc Naked> Σ-4 ↓
<MI 139f0 MOVEA.L (A6+0x8),A0> {[-4-]}
<MI 139f2 MOVE.L (A0),-(A7)> Δ-4 {[-4-]|[4, '(A0)']}
<Call 0x139f4 0x12e2e> {[-4-]|[4, '(A0)']}
_FS1037c(MOD a : File)
<POP 139fa-139fc StackAdj> Δ+4 {[-4-]}
<POP 139fc-13a1c Naked> Σ-4 ↓ →0x13a36 ←0x139ea
<MI 139fc MOVEA.L (A6+0x8),A0> {[-4-]}
<MI 139fe MOVE.L (A0),-(A7)> Δ-4 {[-4-]|[4, '(A0)']}
<MI 13a00 MOVE.B D5,D0> {[-4-]|[4, '(A0)']}
<MI 13a02 EXTB.W D0> {[-4-]|[4, '(A0)']}
<POP 0x13a04 LimitCheck 0x0 ≤ D0 ≤ 0x1> {[-4-]|[4, '(A0)']}
<MI 13a06 MOVE.B D0,-(A7)> Δ-2 {[-4-]|[4, '(A0)']|[2, 'D0']}
<Pointer.fp 0x13a08 <LVAR -0x001 @ 1(r)>> Δ-4 {[-4-]|[4, '(A0)']|[2, 'D0']|[@@-1]}
<Call 0x13a0c 0x12d06> {[-4-]|[4, '(A0)']|[2, 'D0']|[@@-1]}
_FS10378(MOD a : File; b: Byte; VAR c: Bool)
<POP 13a12-13a16 StackAdj> Δ+10 {[-4-]}
<MI 13a16 TST.B (A6-0x1)> {[-4-]}
<MI 13a1a BEQ 0x13a36> {[-4-]}
<POP 13a1c-13a28 Naked> Σ-4 ↓ →0x13a32
<MI 13a1c MOVEA.L (A6+0xc),A1> {[-4-]}
<MI 13a1e MOVE.B #0x04,(A1)> {[-4-]}
<MI 13a22 TST.B (A6-0x2)> {[-4-]}
<MI 13a26 BEQ 0x13a32> {[-4-]}
<POP 13a28-13a32 Naked> Σ-4 Δ+4 →0x13a42
<MI 13a28 MOVE.L (A0),-(A7)> Δ-4 {[-4-]|[4, '(A0)']}
<Call 0x13a2a 0x1363e> {[-4-]|[4, '(A0)']}
<POP 13a2e-13a30 StackAdj> Δ+8 {}
<MI 13a30 BRA 0x13a42> {}
<POP 13a32-13a36 Naked> Σ-4 Δ+4 →0x13a42 ←0x13a1c
<POP 13a32-13a34 StackAdj> Δ+4 {}
<MI 13a34 BRA 0x13a42> {}
<POP 13a36-13a42 Naked> Σ-4 Δ+4 →0x13a68 ←0x139d0 ←0x139fc
<MI 13a36 MOVEA.L (A6+0x8),A0> {[-4-]}
<MI 13a38 MOVE.L (A0),-(A7)> Δ-4 {[-4-]|[4, '(A0)']}
<Call 0x13a3a 0x1359c> {[-4-]|[4, '(A0)']}
<POP 13a3e-13a40 StackAdj> Δ+8 {}
<MI 13a40 BRA 0x13a68> {}
<POP 13a42-13a68 Naked> Σ0 ↓ ←0x13914 ←0x1392a ←0x13956 ←0x1397a ←0x139e0 ←0x13a28 ←0x13a32
<MI 13a42 MOVEA.L (A6+0x8),A0> {}
<MI 13a44 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x13a46 0x13398> {[4, '^(A0)']}
<POP 13a4a-13a4c StackAdj> Δ+4 {}
<MI 13a4c MOVEA.L (A6+0xc),A0> {}
<MI 13a4e MOVE.B (A0),-(A7)> Δ-2 {[2, '(A0)']}
<MI 13a50 MOVE.B (A6+0x14),-(A7)> Δ-2 {[2, '(A0)']|[2, '(A6+0x14)']}
<POP 13a54-13a56 StackAdj> Δ-4 {[2, '(A0)']|[2, '(A6+0x14)']|[-4-]}
<MI 13a56 MOVE.L (A6+0x18),-(A7)> Δ-4 {[2, '(A0)']|[2, '(A6+0x14)']|[-4-]|[4, '(A6+0x18)']}
<Call 0x13a5a 0x10eda> {[2, '(A0)']|[2, '(A6+0x14)']|[-4-]|[4, '(A6+0x18)']}
_StringDup(a : String) : String
<POP 13a60-13a62 StackAdj> Δ+4 {[2, '(A0)']|[2, '(A6+0x14)']|[-4-]}
<Call 0x13a62 0x1330a> {[2, '(A0)']|[2, '(A6+0x14)']|[-4-]}
ReportError(Byte error, Byte mode, String)
<POP 13a66-13a68 StackAdj> Δ+8 {}
<POP 13a68-13a70 Epilogue> Σ0 ←0x1394e ←0x13992 ←0x13a36
@ 13a70
<LVAR 0x00e 2(w)>
<LVAR 0x00a 4(r)>
<LVAR 0x008 2(r)>
<POP 13a70-13ae6 Body>
<POP 13a70-13a86 Prologue> Σ0 ↓
<POP 13a86-13a90 Naked> Σ0 Δ-4 ↓
<MI 13a86 MOVEQ.L #0x00,D6> {}
<MI 13a88 MOVEQ.L #0x00,D7> {}
<MI 13a8a MOVEA.L (A6+0xa),A0> {}
<MI 13a8e MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<POP 13a90-13aaa Naked> Σ-4 ↓ →0x13ab8 ←0x13aaa
<POP 0x13a90 LimitCheck 0x0 ≤ D6 ≤ 0x5> {[-4-]}
<MI 13a9a MOVE.L D6,D0> {[-4-]}
<MI 13a9c ASL.L #0x2,D0> {[-4-]}
<MI 13a9e MOVEA.L (A7),A0> {[-4-]}
<MI 13aa0 MOVE.W (A0+D0.L+#0x22),D1> {[-4-]}
<MI 13aa4 CMP.W (A6+0x8),D1> {[-4-]}
<MI 13aa8 BGT 0x13ab8> {[-4-]}
<POP 13aaa-13ab8 Naked> Σ-4 →0x13a90
<POP 0x13aaa LimitCheck 0x0 ≤ D1 ≤ 0xffff> {[-4-]}
<MI 13ab2 MOVE.W D1,D7> {[-4-]}
<MI 13ab4 ADDQ.L #0x1,D6> {[-4-]}
<MI 13ab6 BRA 0x13a90> {[-4-]}
<POP 13ab8-13ade Naked> Σ-4 Δ+4 ↓ ←0x13a90
<MI 13ab8 MOVE.W (A6+0x8),D1> {[-4-]}
<MI 13abc EXTW.L D1> {[-4-]}
<MI 13abe CLR.L D2> {[-4-]}
<MI 13ac0 MOVE.W D7,D2> {[-4-]}
<MI 13ac2 NEG.L D2> {[-4-]}
<MI 13ac4 ADD.L D1,D2> {[-4-]}
<MI 13ac6 CLR.L D1> {[-4-]}
<MI 13ac8 MOVE.W (A0+D0.L+#0x24),D1> {[-4-]}
<MI 13acc ADD.L D1,D2> {[-4-]}
<POP 0x13ace LimitCheck 0x0 ≤ D2 ≤ 0xffff> {[-4-]}
<MI 13ad8 MOVE.W D2,(A6+0xe)> {[-4-]}
<POP 13adc-13ade StackAdj> Δ+4 {}
<POP 13ade-13ae6 Epilogue> Σ0
@ 13ae6
_ReadFile(file : File; w : W; x : W; a : W; b: B; c : L; d : L)
<LVAR 0x018 4(r)>
<LVAR 0x016 2(r)>
<LVAR 0x014 2(r)>
<LVAR 0x012 2(r)>
<LVAR 0x010 1(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x004 @ 1(r)>
<POP 13ae6-13bb8 Body>
<POP 13ae6-13afc Prologue> Σ0 ↓
<POP 13afc-13b06 RegCacheLoad> Σ0 ↓
<POP 13b06-13b18 Naked> Σ0 ↓ →0x13b1e
<MI 13b06 MOVEA.L (A6+0x8),A0> {}
<MI 13b08 CLR.B (A0)> {}
<POP 13b0a-13b0c StackAdj> Δ-2 {[-2-]}
<MI 13b0c MOVE.L (A6+0x18),-(A7)> Δ-4 {[-2-]|[4, '(A6+0x18)']}
<Call 0x13b0e 0x13420> {[-2-]|[4, '(A6+0x18)']}
<POP 13b12-13b14 StackAdj> Δ+4 {[-2-]}
<MI 13b14 TST.B (A7)+> Δ+2 {}
<MI 13b16 BEQ 0x13b1e> {}
<POP 13b18-13b1e Naked> Σ0 →0x13b7e
<MI 13b18 MOVE.B #0x03,(A0)> {}
<MI 13b1c BRA 0x13b7e> {}
<POP 13b1e-13b2a Naked> Σ0 ↓ →0x13b32 ←0x13b06
<MI 13b1e MOVEA.L (A6+0x18),A0> {}
<MI 13b20 MOVE.W (A6+0x16),D0> {}
<MI 13b24 CMP.W (A0+0x20),D0> {}
<MI 13b28 BLT 0x13b32> {}
<POP 13b2a-13b32 Naked> Σ0 →0x13b7e
<MI 13b2a MOVEA.L (A6+0x8),A0> {}
<MI 13b2c MOVE.B #0x09,(A0)> {}
<MI 13b30 BRA 0x13b7e> {}
<POP 13b32-13b40 Naked> Σ0 ↓ →0x13b48 ←0x13b1e
<MI 13b32 MOVE.W (A6+0x14),D0> {}
<MI 13b36 ADD.W (A6+0x12),D0> {}
<MI 13b3a CMPI.W #0x0200,D0> {}
<MI 13b3e BLE 0x13b48> {}
<POP 13b40-13b48 Naked> Σ0 →0x13b7e
<MI 13b40 MOVEA.L (A6+0x8),A0> {}
<MI 13b42 MOVE.B #0x0a,(A0)> {}
<MI 13b46 BRA 0x13b7e> {}
<POP 13b48-13b76 Naked> Σ0 ↓ →0x13b78 ←0x13b32
<POP 13b48-13b4a StackAdj> Δ-2 {[-2-]}
<MI 13b4a MOVE.L (A6+0x18),-(A7)> Δ-4 {[-2-]|[4, '(A6+0x18)']}
<MI 13b4c MOVE.W (A6+0x16),-(A7)> Δ-2 {[-2-]|[4, '(A6+0x18)']|[2, '(A6+0x16)']}
<Call 0x13b50 0x13a70> {[-2-]|[4, '(A6+0x18)']|[2, '(A6+0x16)']}
<POP 13b54-13b56 StackAdj> Δ+4 {[-2-]|[-2-]}
<MI 13b56 MOVE.W (A6+0x14),(A7)> {[-2-]|[2, '(A6+0x14)']}
<MI 13b5a MOVE.L (A6+0xc),-(A7)> Δ-4 {[-2-]|[2, '(A6+0x14)']|[4, '(A6+0xc)']}
<MI 13b5e MOVE.W (A6+0x12),-(A7)> Δ-2 {[-2-]|[2, '(A6+0x14)']|[4, '(A6+0xc)']|[2, '(A6+0x12)']}
<Pointer.fp 0x13b62 <LVAR -0x004 @ 1(r)>> Δ-4 {[-2-]|[2, '(A6+0x14)']|[4, '(A6+0xc)']|[2, '(A6+0x12)']|[@@-4]}
<Call 0x13b66 0x12994> {[-2-]|[2, '(A6+0x14)']|[4, '(A6+0xc)']|[2, '(A6+0x12)']|[@@-4]}
_ReadWords(lba : W; offset : W; ptr : L; nwords : W; VAR status : B)
<POP 13b6c-13b70 StackAdj> Δ+14 {}
<MI 13b70 TST.B (A6-0x4)> {}
<MI 13b74 BEQ 0x13b78> {}
<POP 13b76-13b78 Naked> Σ0 →0x13bb0
<MI 13b76 BRA 0x13bb0> {}
<POP 13b78-13b7e Naked> Σ0 ↓ ←0x13b48
<MI 13b78 MOVEA.L (A6+0x8),A0> {}
<MI 13b7a MOVE.B #0x0c,(A0)> {}
<POP 13b7e-13bb0 Naked> Σ0 ↓ ←0x13b18 ←0x13b2a ←0x13b40
<MI 13b7e MOVEA.L (A6+0x18),A0> {}
<POP 13b80-13b82 StackAdj> Δ-30 {[-30-]}
<MI 13b82 MOVEA.L A7,A1> {[-30-]}
<BlockMove 30,A0,A1> {[-30-]}
<MI 13b8c MOVEA.L (A6+0x8),A0> {[-30-]}
<MI 13b8e MOVE.B (A0),-(A7)> Δ-2 {[-30-]|[2, '(A0)']}
<MI 13b90 MOVE.B (A6+0x10),-(A7)> Δ-2 {[-30-]|[2, '(A0)']|[2, '(A6+0x10)']}
<POP 13b94-13b96 StackAdj> Δ-4 {[-30-]|[2, '(A0)']|[2, '(A6+0x10)']|[-4-]}
<Lit 0x13b96> {[-30-]|[2, '(A0)']|[2, '(A6+0x10)']|[$$…]}
<Pointer.sp 0x13b96 8> Δ-4
<Const 0x13b9a 0x1.2> Δ-2
<Const 0x13b9e 0x1e.2> Δ-2
<Call 0x13ba0 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 13ba6-13ba8 StackAdj> Δ+8
<Call 0x13ba8 0x1330a> {[-30-]|[2, '(A0)']|[2, '(A6+0x10)']|[$$…]}
ReportError(Byte error, Byte mode, String)
<POP 13bac-13bb0 StackAdj> Δ+38 {}
<POP 13bb0-13bb8 Epilogue> Σ0 ←0x13b76
@ 13bb8
_WriteFile(file : File; y : W; x : W; a : W; b: B; c: L; d: L)
<LVAR 0x018 4(r)>
<LVAR 0x016 2(r)>
<LVAR 0x014 2(r)>
<LVAR 0x012 2(r)>
<LVAR 0x010 1(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x004 @ 1(r)>
<POP 13bb8-13c8a Body>
<POP 13bb8-13bce Prologue> Σ0 ↓
<POP 13bce-13bd8 RegCacheLoad> Σ0 ↓
<POP 13bd8-13bea Naked> Σ0 ↓ →0x13bf0
<MI 13bd8 MOVEA.L (A6+0x8),A0> {}
<MI 13bda CLR.B (A0)> {}
<POP 13bdc-13bde StackAdj> Δ-2 {[-2-]}
<MI 13bde MOVE.L (A6+0x18),-(A7)> Δ-4 {[-2-]|[4, '(A6+0x18)']}
<Call 0x13be0 0x13420> {[-2-]|[4, '(A6+0x18)']}
<POP 13be4-13be6 StackAdj> Δ+4 {[-2-]}
<MI 13be6 TST.B (A7)+> Δ+2 {}
<MI 13be8 BEQ 0x13bf0> {}
<POP 13bea-13bf0 Naked> Σ0 →0x13c50
<MI 13bea MOVE.B #0x03,(A0)> {}
<MI 13bee BRA 0x13c50> {}
<POP 13bf0-13bfc Naked> Σ0 ↓ →0x13c04 ←0x13bd8
<MI 13bf0 MOVEA.L (A6+0x18),A0> {}
<MI 13bf2 MOVE.W (A6+0x16),D0> {}
<MI 13bf6 CMP.W (A0+0x20),D0> {}
<MI 13bfa BLT 0x13c04> {}
<POP 13bfc-13c04 Naked> Σ0 →0x13c50
<MI 13bfc MOVEA.L (A6+0x8),A0> {}
<MI 13bfe MOVE.B #0x09,(A0)> {}
<MI 13c02 BRA 0x13c50> {}
<POP 13c04-13c12 Naked> Σ0 ↓ →0x13c1a ←0x13bf0
<MI 13c04 MOVE.W (A6+0x14),D0> {}
<MI 13c08 ADD.W (A6+0x12),D0> {}
<MI 13c0c CMPI.W #0x0200,D0> {}
<MI 13c10 BLE 0x13c1a> {}
<POP 13c12-13c1a Naked> Σ0 →0x13c50
<MI 13c12 MOVEA.L (A6+0x8),A0> {}
<MI 13c14 MOVE.B #0x0a,(A0)> {}
<MI 13c18 BRA 0x13c50> {}
<POP 13c1a-13c48 Naked> Σ0 ↓ →0x13c4a ←0x13c04
<POP 13c1a-13c1c StackAdj> Δ-2 {[-2-]}
<MI 13c1c MOVE.L (A6+0x18),-(A7)> Δ-4 {[-2-]|[4, '(A6+0x18)']}
<MI 13c1e MOVE.W (A6+0x16),-(A7)> Δ-2 {[-2-]|[4, '(A6+0x18)']|[2, '(A6+0x16)']}
<Call 0x13c22 0x13a70> {[-2-]|[4, '(A6+0x18)']|[2, '(A6+0x16)']}
<POP 13c26-13c28 StackAdj> Δ+4 {[-2-]|[-2-]}
<MI 13c28 MOVE.W (A6+0x14),(A7)> {[-2-]|[2, '(A6+0x14)']}
<MI 13c2c MOVE.L (A6+0xc),-(A7)> Δ-4 {[-2-]|[2, '(A6+0x14)']|[4, '(A6+0xc)']}
<MI 13c30 MOVE.W (A6+0x12),-(A7)> Δ-2 {[-2-]|[2, '(A6+0x14)']|[4, '(A6+0xc)']|[2, '(A6+0x12)']}
<Pointer.fp 0x13c34 <LVAR -0x004 @ 1(r)>> Δ-4 {[-2-]|[2, '(A6+0x14)']|[4, '(A6+0xc)']|[2, '(A6+0x12)']|[@@-4]}
<Call 0x13c38 0x12a5a> {[-2-]|[2, '(A6+0x14)']|[4, '(A6+0xc)']|[2, '(A6+0x12)']|[@@-4]}
_WriteWords(lba : W; offset : W; ptr : L; nwords : W; VAR status : B)
<POP 13c3e-13c42 StackAdj> Δ+14 {}
<MI 13c42 TST.B (A6-0x4)> {}
<MI 13c46 BEQ 0x13c4a> {}
<POP 13c48-13c4a Naked> Σ0 →0x13c82
<MI 13c48 BRA 0x13c82> {}
<POP 13c4a-13c50 Naked> Σ0 ↓ ←0x13c1a
<MI 13c4a MOVEA.L (A6+0x8),A0> {}
<MI 13c4c MOVE.B #0x0c,(A0)> {}
<POP 13c50-13c82 Naked> Σ0 ↓ ←0x13bea ←0x13bfc ←0x13c12
<MI 13c50 MOVEA.L (A6+0x18),A0> {}
<POP 13c52-13c54 StackAdj> Δ-30 {[-30-]}
<MI 13c54 MOVEA.L A7,A1> {[-30-]}
<BlockMove 30,A0,A1> {[-30-]}
<MI 13c5e MOVEA.L (A6+0x8),A0> {[-30-]}
<MI 13c60 MOVE.B (A0),-(A7)> Δ-2 {[-30-]|[2, '(A0)']}
<MI 13c62 MOVE.B (A6+0x10),-(A7)> Δ-2 {[-30-]|[2, '(A0)']|[2, '(A6+0x10)']}
<POP 13c66-13c68 StackAdj> Δ-4 {[-30-]|[2, '(A0)']|[2, '(A6+0x10)']|[-4-]}
<Lit 0x13c68> {[-30-]|[2, '(A0)']|[2, '(A6+0x10)']|[$$…]}
<Pointer.sp 0x13c68 8> Δ-4
<Const 0x13c6c 0x1.2> Δ-2
<Const 0x13c70 0x1e.2> Δ-2
<Call 0x13c72 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 13c78-13c7a StackAdj> Δ+8
<Call 0x13c7a 0x1330a> {[-30-]|[2, '(A0)']|[2, '(A6+0x10)']|[$$…]}
ReportError(Byte error, Byte mode, String)
<POP 13c7e-13c82 StackAdj> Δ+38 {}
<POP 13c82-13c8a Epilogue> Σ0 ←0x13c48
@ 13c8a
_CloseFile(a : L; VAR status : B; VAR file : File)
<LVAR 0x016 1(r)>
<LVAR 0x014 1(r)>
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x004 @ 4(r)>
<POP 13c8a-13e5c Body> Δ-20
<POP 13c8a-13ca0 Prologue> Σ0 ↓
<POP 13ca0-13cac RegCacheLoad> Σ0 ↓
<POP 13cac-13cb4 Naked> Σ0 ↓ →0x13cc0
<MI 13cac TST.B 0x1b0a2> {}
<MI 13cb2 BNE 0x13cc0> {}
<POP 13cb4-13cc0 Naked> Σ0 ↓
<Const 0x13cb4 0x18.4> Δ-4 {[##24]}
<Call 0x13cb8 0x10220> {[##24]}
KC10_Panic(code : Long)
<POP 13cbe-13cc0 StackAdj> Δ+4 {}
<POP 13cc0-13cd0 Naked> Σ0 ↓ →0x13cea ←0x13cac
<POP 13cc0-13cc2 StackAdj> Δ-2 {[-2-]}
<MI 13cc2 MOVEA.L (A6+0x8),A0> {[-2-]}
<MI 13cc4 MOVE.L (A0),-(A7)> Δ-4 {[-2-]|[4, '(A0)']}
<Call 0x13cc6 0x13420> {[-2-]|[4, '(A0)']}
<POP 13cca-13ccc StackAdj> Δ+4 {[-2-]}
<MI 13ccc TST.B (A7)+> Δ+2 {}
<MI 13cce BEQ 0x13cea> {}
<POP 13cd0-13cea Naked> Σ0 →0x13e54
<MI 13cd0 MOVEA.L (A6+0xc),A0> {}
<MI 13cd2 MOVE.B #0x03,(A0)> {}
<MI 13cd6 MOVE.B (A0),-(A7)> Δ-2 {[2, '(A0)']}
<MI 13cd8 MOVE.B (A6+0x14),-(A7)> Δ-2 {[2, '(A0)']|[2, '(A6+0x14)']}
<Const 0x13cdc 0x1.4> Δ-4 {[2, '(A0)']|[2, '(A6+0x14)']|[##1]}
<Call 0x13ce0 0x1330a> {[2, '(A0)']|[2, '(A6+0x14)']|[##1]}
ReportError(Byte error, Byte mode, String)
<POP 13ce4-13ce6 StackAdj> Δ+8 {}
<MI 13ce6 BRA 0x13e54> {}
<POP 13cea-13cfa Naked> Σ0 ↓ →0x13d00 ←0x13cc0
<MI 13cea MOVEA.L (A6+0xc),A0> {}
<MI 13cec CLR.B (A0)> {}
<MI 13cee MOVEA.L (A6+0x8),A0> {}
<MI 13cf0 MOVEA.L (A0),A0> {}
<MI 13cf2 CMPA.L 0x10026,A0> {}
<MI 13cf8 BNE 0x13d00> {}
<POP 13cfa-13d00 Naked> Σ0 ↓
<MI 13cfa MOVE.L #0x01,0x10026> {}
<POP 13d00-13d06 Naked> Σ0 ↓ →0x13d0a ←0x13cea
<MI 13d00 TST.B (A6+0x16)> {}
<MI 13d04 BNE 0x13d0a> {}
<POP 13d06-13d0a Naked> Σ0 →0x13e40
<MI 13d06 BRA 0x13e40> {}
<POP 13d0a-13d1a Naked> Σ0 Δ-4 ↓ →0x13d26 ←0x13d00
<MI 13d0a MOVEA.L (A6+0x8),A0> {}
<MI 13d0c MOVEA.L (A0),A0> {}
<MI 13d0e MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 13d10 MOVE.B (A0+0x3f),D0> {[4, 'A0']}
<MI 13d14 LSL.B #0x7,D0> {[4, 'A0']}
<MI 13d16 LSR.B #0x7,D0> {[4, 'A0']}
<MI 13d18 BEQ 0x13d26> {[4, 'A0']}
<POP 13d1a-13d26 Naked> Σ-4 Δ+4 →0x13e0e
<MI 13d1a MOVEA.L (A6+0xc),A0> {[-4-]}
<MI 13d1c MOVE.B #0x08,(A0)> {[-4-]}
<POP 13d20-13d22 StackAdj> Δ+4 {}
<MI 13d22 BRA 0x13e0e> {}
<POP 13d26-13d30 Naked> Σ-4 ↓ →0x13d46 ←0x13d0a
<MI 13d26 MOVE.B (A6+0x16),D0> {[-4-]}
<MI 13d2a CMPI.B #0x02,D0> {[-4-]}
<MI 13d2e BNE 0x13d46> {[-4-]}
<POP 13d30-13d40 Naked> Σ-4 Δ-4 ↓
<MI 13d30 MOVEA.L (A6+0x8),A0> {[-4-]}
<MI 13d32 MOVE.L (A0),-(A7)> Δ-4 {[-4-]|[4, '(A0)']}
<Call 0x13d34 0x1363e> {[-4-]|[4, '(A0)']}
<MI 13d38 MOVE.L (A0),(A7)> {[-4-]|[4, '(A0)']}
<Call 0x13d3a 0x12e2e> {[-4-]|[4, '(A0)']}
_FS1037c(MOD a : File)
<POP 13d40-13d46 Naked> Σ-8 Δ+8 →0x13e4a ←0x13dac
<POP 13d40-13d42 StackAdj> Δ+8 {}
<MI 13d42 BRA 0x13e4a> {}
<POP 13d46-13d50 Naked> Σ-4 ↓ →0x13de4 ←0x13d26
<MI 13d46 MOVE.B (A6+0x16),D0> {[-4-]}
<MI 13d4a CMP.B #0x01,D0> {[-4-]}
<MI 13d4c BNE 0x13de4> {[-4-]}
<POP 13d50-13d58 Naked> Σ-4 ↓ →0x13d62
<MI 13d50 MOVEA.L (A6+0x10),A0> {[-4-]}
<MI 13d54 CMPA.W #0x01,A0> {[-4-]}
<MI 13d56 BNE 0x13d62> {[-4-]}
<POP 13d58-13d62 Naked> Σ-4 Δ+4 →0x13e0e
<MI 13d58 MOVEA.L (A6+0xc),A0> {[-4-]}
<MI 13d5a MOVE.B #0x01,(A0)> {[-4-]}
<POP 13d5c-13d5e StackAdj> Δ+4 {}
<MI 13d5e BRA 0x13e0e> {}
<POP 13d62-13d7a Naked> Σ-4 ↓ →0x13d7e ←0x13d50
<MI 13d62 MOVEA.L (A6+0xc),A0> {[-4-]}
<MI 13d64 MOVE.L (A6+0x10),-(A7)> Δ-4 {[-4-]|[4, '(A6+0x10)']}
<Pointer.fp 0x13d68 <LVAR -0x004 @ 4(r)>> Δ-4 {[-4-]|[4, '(A6+0x10)']|[@@-4]}
<MI 13d6c PEA.L (A0)> Δ-4 {[-4-]|[4, '(A6+0x10)']|[@@-4]|[4, '^(A0)']}
<Call 0x13d6e 0x1346a> {[-4-]|[4, '(A6+0x10)']|[@@-4]|[4, '^(A0)']}
CheckFilename()
<POP 13d72-13d76 StackAdj> Δ+12 {[-4-]}
<MI 13d76 TST.B (A0)> {[-4-]}
<MI 13d78 BEQ 0x13d7e> {[-4-]}
<POP 13d7a-13d7e Naked> Σ-4 Δ+4 →0x13de6
<POP 13d7a-13d7c StackAdj> Δ+4 {}
<MI 13d7c BRA 0x13de6> {}
<POP 13d7e-13d90 Naked> Σ-4 ↓ →0x13d94 ←0x13d62
<MI 13d7e MOVEA.L (A6+0xc),A0> {[-4-]}
<MI 13d80 MOVE.L (A6-0x4),-(A7)> Δ-4 {[-4-]|[4, '(A6-0x4)']}
<MI 13d84 PEA.L (A0)> Δ-4 {[-4-]|[4, '(A6-0x4)']|[4, '^(A0)']}
<Call 0x13d86 0x13718> {[-4-]|[4, '(A6-0x4)']|[4, '^(A0)']}
NameI(Char*, &void)
<POP 13d8a-13d8c StackAdj> Δ+8 {[-4-]}
<MI 13d8c TST.B (A0)> {[-4-]}
<MI 13d8e BEQ 0x13d94> {[-4-]}
<POP 13d90-13d94 Naked> Σ-4 Δ+4 →0x13de6
<POP 13d90-13d92 StackAdj> Δ+4 {}
<MI 13d92 BRA 0x13de6> {}
<POP 13d94-13da2 Naked> Σ-4 ↓ →0x13dac ←0x13d7e
<MI 13d94 MOVEA.L (A6-0x4),A0> {[-4-]}
<MI 13d98 MOVE.B (A0+0x3f),D0> {[-4-]}
<MI 13d9c LSL.B #0x4,D0> {[-4-]}
<MI 13d9e LSR.B #0x7,D0> {[-4-]}
<MI 13da0 BNE 0x13dac> {[-4-]}
<POP 13da2-13dac Naked> Σ-4 Δ+4 →0x13de6
<MI 13da2 MOVEA.L (A6+0xc),A0> {[-4-]}
<MI 13da4 MOVE.B #0x06,(A0)> {[-4-]}
<POP 13da8-13daa StackAdj> Δ+4 {}
<MI 13daa BRA 0x13de6> {}
<POP 13dac-13de4 Naked> Σ-4 Δ-4 →0x13d40 ←0x13d94
<MI 13dac MOVEA.L (A6-0x4),A0> {[-4-]}
<MI 13db0 MOVEA.L (A7),A1> {[-4-]}
<MI 13db2 LEA.L (A0+0x20),A2> {[-4-]}
<MI 13db6 LEA.L (A1+0x20),A1> {[-4-]}
<BlockMove 32,A1,A2> {[-4-]}
<MI 13dc2 MOVE.B #0x01,(A0+0x4c)> {[-4-]}
<MI 13dc6 MOVEA.L (A6+0x8),A0> {[-4-]}
<MI 13dc8 MOVE.L (A0),-(A7)> Δ-4 {[-4-]|[4, '(A0)']}
<Call 0x13dca 0x1363e> {[-4-]|[4, '(A0)']}
<MI 13dce MOVE.L (A6-0x4),(A7)> {[-4-]|[4, '(A6-0x4)']}
<Call 0x13dd2 0x1359c> {[-4-]|[4, '(A6-0x4)']}
<POP 13dd6-13dd8 StackAdj> Δ+4 {[-4-]}
<Pointer.fp 0x13dd8 <LVAR -0x004 @ 4(r)>> Δ-4 {[-4-]|[@@-4]}
<Call 0x13ddc 0x13398> {[-4-]|[@@-4]}
<MI 13de0 BRA 0x13d40> {[-4-]|[@@-4]}
<POP 13de4-13de6 Naked> Σ-4 Δ+4 ↓ ←0x13d46
<POP 13de4-13de6 StackAdj> Δ+4 {}
<POP 13de6-13e0e Naked> Σ0 →0x13e40 ←0x13d7a ←0x13d90 ←0x13da2
<MI 13de6 MOVEA.L (A6+0xc),A0> {}
<MI 13de8 MOVE.B (A0),-(A7)> Δ-2 {[2, '(A0)']}
<MI 13dea MOVE.B (A6+0x14),-(A7)> Δ-2 {[2, '(A0)']|[2, '(A6+0x14)']}
<POP 13dee-13df0 StackAdj> Δ-4 {[2, '(A0)']|[2, '(A6+0x14)']|[-4-]}
<MI 13df0 MOVE.L (A6+0x10),-(A7)> Δ-4 {[2, '(A0)']|[2, '(A6+0x14)']|[-4-]|[4, '(A6+0x10)']}
<Call 0x13df4 0x10eda> {[2, '(A0)']|[2, '(A6+0x14)']|[-4-]|[4, '(A6+0x10)']}
_StringDup(a : String) : String
<POP 13dfa-13dfc StackAdj> Δ+4 {[2, '(A0)']|[2, '(A6+0x14)']|[-4-]}
<Call 0x13dfc 0x1330a> {[2, '(A0)']|[2, '(A6+0x14)']|[-4-]}
ReportError(Byte error, Byte mode, String)
<POP 13e00-13e02 StackAdj> Δ+8 {}
<Pointer.fp 0x13e02 <LVAR -0x004 @ 4(r)>> Δ-4 {[@@-4]}
<Call 0x13e06 0x13398> {[@@-4]}
<POP 13e0a-13e0c StackAdj> Δ+4 {}
<MI 13e0c BRA 0x13e40> {}
<POP 13e0e-13e40 Naked> Σ0 ↓ ←0x13d1a ←0x13d58
<MI 13e0e MOVEA.L (A6+0x8),A0> {}
<MI 13e10 MOVEA.L (A0),A0> {}
<POP 13e12-13e14 StackAdj> Δ-30 {[-30-]}
<MI 13e14 MOVEA.L A7,A1> {[-30-]}
<BlockMove 30,A0,A1> {[-30-]}
<MI 13e1e MOVEA.L (A6+0xc),A0> {[-30-]}
<MI 13e20 MOVE.B (A0),-(A7)> Δ-2 {[-30-]|[2, '(A0)']}
<MI 13e22 MOVE.B (A6+0x14),-(A7)> Δ-2 {[-30-]|[2, '(A0)']|[2, '(A6+0x14)']}
<POP 13e26-13e28 StackAdj> Δ-4 {[-30-]|[2, '(A0)']|[2, '(A6+0x14)']|[-4-]}
<Lit 0x13e28> {[-30-]|[2, '(A0)']|[2, '(A6+0x14)']|[$$…]}
<Pointer.sp 0x13e28 8> Δ-4
<Const 0x13e2c 0x1.2> Δ-2
<Const 0x13e2e 0x1e.2> Δ-2
<Call 0x13e30 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 13e36-13e38 StackAdj> Δ+8
<Call 0x13e38 0x1330a> {[-30-]|[2, '(A0)']|[2, '(A6+0x14)']|[$$…]}
ReportError(Byte error, Byte mode, String)
<POP 13e3c-13e40 StackAdj> Δ+38 {}
<POP 13e40-13e4a Naked> Σ0 ↓ ←0x13d06 ←0x13de6
<MI 13e40 MOVEA.L (A6+0x8),A0> {}
<MI 13e42 MOVE.L (A0),-(A7)> Δ-4 {[4, '(A0)']}
<Call 0x13e44 0x1359c> {[4, '(A0)']}
<POP 13e48-13e4a StackAdj> Δ+4 {}
<POP 13e4a-13e54 Naked> Σ0 ↓ ←0x13d40
<MI 13e4a MOVEA.L (A6+0x8),A0> {}
<MI 13e4c PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x13e4e 0x13398> {[4, '^(A0)']}
<POP 13e52-13e54 StackAdj> Δ+4 {}
<POP 13e54-13e5c Epilogue> Σ0 ←0x13cd0
@ 13e5c
_WriteFreeList(void)
<LVAR -0x004 @ 1(r)>
<POP 13e5c-13ee4 Body>
<POP 13e5c-13e72 Prologue> Σ0 ↓
<POP 13e72-13e7a RegCacheLoad> Σ0 ↓
<POP 13e7a-13e82 Naked> Σ0 ↓ →0x13eb0
<MI 13e7a TST.W 0x10010> {}
<MI 13e80 BEQ 0x13eb0> {}
<POP 13e82-13ea4 Naked> Σ0 ↓ →0x13eb0
<Const 0x13e82 0x3.2> Δ-2 {[#3]}
<Blob 0x13e84 [2] @> Δ-2 {[#3]|[«2""»]}
<Const 0x13e8a 0x1.4> Δ-4 {[#3]|[«2""»]|[##1]}
<MI 13e8e LEA.L 0x10022,A0> {[#3]|[«2""»]|[##1]}
<MI 13e94 MOVE.L A0,-(A7)> Δ-4 {[#3]|[«2""»]|[##1]|[4, 'A0']}
<Pointer.fp 0x13e96 <LVAR -0x004 @ 1(r)>> Δ-4 {[#3]|[«2""»]|[##1]|[4, 'A0']|[@@-4]}
<Call 0x13e98 0x127c4> {[#3]|[«2""»]|[##1]|[4, 'A0']|[@@-4]}
_RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
<POP 13e9e-13ea0 StackAdj> Δ+16 {}
<MI 13ea0 TST.B (A6-0x4)> {}
<MI 13ea2 BNE 0x13eb0> {}
<POP 13ea4-13eb0 Naked> Σ0 ↓
<Const 0x13ea4 0xa.4> Δ-4 {[##10]}
<Call 0x13ea8 0x10220> {[##10]}
KC10_Panic(code : Long)
<POP 13eae-13eb0 StackAdj> Δ+4 {}
<POP 13eb0-13ed0 Naked> Σ0 ↓ →0x13edc ←0x13e7a ←0x13e82
<Const 0x13eb0 0x3.2> Δ-2 {[#3]}
<Const 0x13eb2 0x4.2> Δ-2 {[#3]|[#4]}
<Const 0x13eb6 0x1.4> Δ-4 {[#3]|[#4]|[##1]}
<MI 13eba LEA.L 0x1000e,A0> {[#3]|[#4]|[##1]}
<MI 13ec0 MOVE.L A0,-(A7)> Δ-4 {[#3]|[#4]|[##1]|[4, 'A0']}
<Pointer.fp 0x13ec2 <LVAR -0x004 @ 1(r)>> Δ-4 {[#3]|[#4]|[##1]|[4, 'A0']|[@@-4]}
<Call 0x13ec4 0x127c4> {[#3]|[#4]|[##1]|[4, 'A0']|[@@-4]}
_RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
<POP 13eca-13ecc StackAdj> Δ+16 {}
<MI 13ecc TST.B (A6-0x4)> {}
<MI 13ece BNE 0x13edc> {}
<POP 13ed0-13edc Naked> Σ0 ↓
<Const 0x13ed0 0x9.4> Δ-4 {[##9]}
<Call 0x13ed4 0x10220> {[##9]}
KC10_Panic(code : Long)
<POP 13eda-13edc StackAdj> Δ+4 {}
<POP 13edc-13ee4 Epilogue> Σ0 ←0x13eb0
@ 13ee4
_MountDisk(drive : Word ; VAR status : Byte)
<LVAR 0x00c 2(r)>
<LVAR 0x008 4(r)>
<LVAR -0x00a @ 1(r)>
<LVAR -0x408 2(r)>
<LVAR -0x40a @ 2(r)>
<POP 13ee4-14044 Body>
<POP 13ee4-13efa Prologue> Σ0 ↓
<POP 13efa-13f04 RegCacheLoad> Σ0 ↓
<POP 13f04-13f5e Naked> Σ0 ↓ →0x13f62
<MI 13f04 CLR.B -(A7)> Δ-2 {[#0]}
<Call 0x13f06 0x14740> {[#0]}
_Set_is_open_ERROR_LOG(a : Bool)
<POP 13f0c-13f0e StackAdj> Δ+2 {}
<MI 13f0e CLR.B 0x1b0a2> {}
<MI 13f14 MOVEA.L (A6+0x8),A0> {}
<MI 13f18 MOVE.B #0x0c,(A0)> {}
<MI 13f1c MOVE.W (A6+0xc),0x10008> {}
<MI 13f24 MOVE.L #0x01,0x10026> {}
<MI 13f2a MOVE.W #0x7fff,0x1000a> {}
<MI 13f32 MOVE.W #0x7fff,0x1000c> {}
<MI 13f3a MOVE.L #0x01,0x20020> {}
<Const 0x13f40 0x2.2> Δ-2 {[#2]}
<Const 0x13f42 0x2.2> Δ-2 {[#2]|[#2]}
<Const 0x13f44 0x1.4> Δ-4 {[#2]|[#2]|[##1]}
<MI 13f48 LEA.L (A6-0x40a),A0> {[#2]|[#2]|[##1]}
<MI 13f4a MOVE.L A0,-(A7)> Δ-4 {[#2]|[#2]|[##1]|[4, 'A0']}
<Pointer.fp 0x13f4c <LVAR -0x00a @ 1(r)>> Δ-4 {[#2]|[#2]|[##1]|[4, 'A0']|[@@-10]}
<Call 0x13f50 0x127c4> {[#2]|[#2]|[##1]|[4, 'A0']|[@@-10]}
_RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
<POP 13f56-13f58 StackAdj> Δ+16 {}
<MI 13f58 TST.B (A6-0xa)> {}
<MI 13f5c BNE 0x13f62> {}
<POP 13f5e-13f62 Naked> Σ0 →0x1403c
<MI 13f5e BRA 0x1403c> {}
<POP 13f62-13f72 Naked> Σ0 ↓ →0x13f7e ←0x13f04
<MI 13f62 LEA.L (A6-0x40a),A0> {}
<MI 13f64 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 13f66 MOVEA.L (A7)+,A3> Δ+4 {}
<MI 13f68 MOVE.W (A3+0x2),D0> {}
<MI 13f6c CMPI.W #0x7fed,D0> {}
<MI 13f70 BEQ 0x13f7e> {}
<POP 13f72-13f7e Naked> Σ0 →0x1403c
<MI 13f72 MOVEA.L (A6+0x8),A0> {}
<MI 13f76 MOVE.B #0x0d,(A0)> {}
<MI 13f7a BRA 0x1403c> {}
<POP 13f7e-13f84 Naked> Σ0 ↓ →0x13f90 ←0x13f62
<MI 13f7e TST.B (A3+0x34)> {}
<MI 13f82 BNE 0x13f90> {}
<POP 13f84-13f90 Naked> Σ0 →0x1403c
<MI 13f84 MOVEA.L (A6+0x8),A0> {}
<MI 13f88 MOVE.B #0x0e,(A0)> {}
<MI 13f8c BRA 0x1403c> {}
<POP 13f90-13fd6 Naked> Σ0 ↓ →0x13fd8 ←0x13f7e
<MI 13f90 CLR.L D0> {}
<MI 13f92 MOVE.B (A3+0xb),D0> {}
<MI 13f96 ASR.W #0x1,D0> {}
<MI 13f98 MOVE.W D0,0x1000a> {}
<MI 13f9e CLR.L D1> {}
<MI 13fa0 MOVE.B (A3+0xa),D1> {}
<MI 13fa4 MULU.W D1,D0> {}
<POP 0x13fa6 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 13fb0 MOVE.W D0,0x1000c> {}
<Const 0x13fb6 0x2.2> Δ-2 {[#2]}
<Const 0x13fb8 0x4.2> Δ-2 {[#2]|[#4]}
<Const 0x13fbc 0x1.4> Δ-4 {[#2]|[#4]|[##1]}
<MI 13fc0 LEA.L (A6-0x40a),A0> {[#2]|[#4]|[##1]}
<MI 13fc2 MOVE.L A0,-(A7)> Δ-4 {[#2]|[#4]|[##1]|[4, 'A0']}
<Pointer.fp 0x13fc4 <LVAR -0x00a @ 1(r)>> Δ-4 {[#2]|[#4]|[##1]|[4, 'A0']|[@@-10]}
<Call 0x13fc8 0x127c4> {[#2]|[#4]|[##1]|[4, 'A0']|[@@-10]}
_RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
<POP 13fce-13fd0 StackAdj> Δ+16 {}
<MI 13fd0 TST.B (A6-0xa)> {}
<MI 13fd4 BNE 0x13fd8> {}
<POP 13fd6-13fd8 Naked> Σ0 →0x1403c
<MI 13fd6 BRA 0x1403c> {}
<POP 13fd8-13ff6 Naked> Σ0 ↓ →0x13ffe ←0x13f90
<MI 13fd8 LEA.L (A6-0x40a),A0> {}
<MI 13fda MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 13fdc MOVEA.L (A7)+,A4> Δ+4 {}
<MI 13fde LEA.L 0x1000e,A0> {}
<MI 13fe4 MOVEA.L A4,A1> {}
<BlockMove 20,A1,A0> {}
<MI 13fee TST.W 0x10010> {}
<MI 13ff4 BNE 0x13ffe> {}
<POP 13ff6-13ffe Naked> Σ0 →0x14030
<MI 13ff6 CLR.W 0x10022> {}
<MI 13ffc BRA 0x14030> {}
<POP 13ffe-14020 Naked> Σ0 ↓ →0x14022 ←0x13fd8
<Const 0x13ffe 0x2.2> Δ-2 {[#2]}
<Blob 0x14000 [2] @> Δ-2 {[#2]|[«2""»]}
<Const 0x14006 0x1.4> Δ-4 {[#2]|[«2""»]|[##1]}
<MI 1400a LEA.L (A6-0x40a),A0> {[#2]|[«2""»]|[##1]}
<MI 1400c MOVE.L A0,-(A7)> Δ-4 {[#2]|[«2""»]|[##1]|[4, 'A0']}
<Pointer.fp 0x1400e <LVAR -0x00a @ 1(r)>> Δ-4 {[#2]|[«2""»]|[##1]|[4, 'A0']|[@@-10]}
<Call 0x14012 0x127c4> {[#2]|[«2""»]|[##1]|[4, 'A0']|[@@-10]}
_RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
<POP 14018-1401a StackAdj> Δ+16 {}
<MI 1401a TST.B (A6-0xa)> {}
<MI 1401e BNE 0x14022> {}
<POP 14020-14022 Naked> Σ0 →0x1403c
<MI 14020 BRA 0x1403c> {}
<POP 14022-14030 Naked> Σ0 ↓ ←0x13ffe
<MI 14022 MOVE.W (A6-0x40a),0x10022> {}
<MI 14028 MOVE.W (A6-0x408),0x10024> {}
<POP 14030-1403c Naked> Σ0 ↓ ←0x13ff6
<MI 14030 MOVEA.L (A6+0x8),A0> {}
<MI 14034 CLR.B (A0)> {}
<MI 14036 MOVE.B #0x01,0x1b0a2> {}
<POP 1403c-14044 Epilogue> Σ0 ←0x13f5e ←0x13f72 ←0x13f84 ←0x13fd6 ←0x14020
@ 14044
_FSCALL_10398
<LVAR -0x004 @ 1(r)>
<LVAR -0x006 @ 2(rw)>
<LVAR -0x008 @ 1(r)>
<POP 14044-1411a Body>
<POP 14044-1405a Prologue> Σ0 ↓
<POP 1405a-14066 RegCacheLoad> Σ0 ↓
<POP 14066-14084 Naked> Σ0 ↓ →0x140d8
<Call 0x14066 0x15b84> {}
_FSCALL_10400
<Pointer.fp 0x1406c <LVAR -0x008 @ 1(r)>> Δ-4 {[@@-8]}
<Pointer.fp 0x14070 <LVAR -0x006 @ 2(rw)>> Δ-4 {[@@-8]|[@@-6]}
<Call 0x14072 0x10200> {[@@-8]|[@@-6]}
KC00_GetBootDev(VAR a : Byte; VAR b : Word)
<POP 14078-1407a StackAdj> Δ+8 {}
<MI 1407a MOVE.B (A6-0x8),D0> {}
<MI 1407e CMPI.B #0x02,D0> {}
<MI 14082 BEQ 0x140d8> {}
<POP 14084-140d8 Naked> Σ0 ↓
<MI 14084 CLR.B -(A7)> Δ-2 {[#0]}
<Call 0x14086 0x15c7e> {[#0]}
_SetSomeKindOfFlag(a : Byte)
<POP 1408c-1408d StackAdj> Δ+2 {}
<Const 0x1408d 0x1.2> Δ-2 {[#1]}
<Const 0x1408e 0x1.2> Δ-2 {[#1]|[#1]}
<Call 0x14090 0x10210> {[#1]|[#1]}
KC08_PortSomething(port: Word; b: Byte)
<POP 14096-14098 StackAdj> Δ+4 {}
<Blob 0x14098 [42] @> Δ-42 {[«42""»]}
<POP 140a4-140a6 StackAdj> Δ-8 {[«42""»]|[-8-]}
<Lit 0x140a6 42> {[«42""»]|[-4-]|[$$Enter unit number of disk to initialize :_]}
<Const 0x140b6 0x0.4> Δ-4 {[«42""»]|[-4-]|[$$Enter unit number of disk to initialize :_]|[##0]}
<Const 0x140ba 0xf.4> Δ-4 {[«42""»]|[-4-]|[$$Enter unit number of disk to initialize :_]|[##0]|[##15]}
<Call 0x140be 0x15950> {[«42""»]|[-4-]|[$$Enter unit number of disk to initialize :_]|[##0]|[##15]}
_AskOnConsoleIntRange(prompt: String; low : Long; High : Long) : Long
<POP 140c4-140c8 StackAdj> Δ+12 {[«42""»]|[-4-]}
<MI 140c8 MOVE.L (A7)+,D0> Δ+4 {[«42""»]}
<POP 0x140ca LimitCheck 0x0 ≤ D0 ≤ 0xffff> {[«42""»]}
<POP 140d4-140d6 StackAdj> Δ+42 {}
<MI 140d6 MOVE.W D0,(A6-0x6)> {}
<POP 140d8-140ec Naked> Σ0 ↓ →0x1410c ←0x14066
<MI 140d8 MOVE.W (A6-0x6),D0> {}
<POP 0x140da LimitCheck 0x0 ≤ D0 ≤ 0xf> {}
<MI 140de MOVE.W D0,-(A7)> Δ-2 {[2, 'D0']}
<Pointer.fp 0x140e0 <LVAR -0x004 @ 1(r)>> Δ-4 {[2, 'D0']|[@@-4]}
<Call 0x140e2 0x13ee4> {[2, 'D0']|[@@-4]}
_MountDisk(drive : Word ; VAR status : Byte)
<POP 140e6-140e8 StackAdj> Δ+6 {}
<MI 140e8 TST.B (A6-0x4)> {}
<MI 140ea BEQ 0x1410c> {}
<POP 140ec-1410c Naked> Σ0 ↓
<POP 140ec-140ee StackAdj> Δ-4 {[-4-]}
<MI 140ee MOVE.B (A6-0x4),-(A7)> Δ-2 {[-4-]|[2, '(A6-0x4)']}
<Call 0x140f0 0x1430c> {[-4-]|[2, '(A6-0x4)']}
_FsErrMsgStr(err: Byte) : String
<POP 140f6-140f8 StackAdj> Δ+2 {[-4-]}
<Call 0x140f8 0x154b0> {[-4-]}
_WriteConsoleStringCrLf(str : String)
<POP 140fe-14100 StackAdj> Δ+4 {}
<Const 0x14100 0xf.4> Δ-4 {[##15]}
<Call 0x14104 0x10220> {[##15]}
KC10_Panic(code : Long)
<POP 1410a-1410c StackAdj> Δ+4 {}
<POP 1410c-14112 Naked> Σ0 ↓ ←0x140d8
<Call 0x1410c 0x14458> {}
_Open_ERROR_LOG(void)
<POP 14112-1411a Epilogue> Σ0
@ 1411a
<LVAR 0x010 1(rw)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 1411a-14192 Body>
<POP 1411a-14130 Prologue> Σ0 ↓
<POP 14130-14136 RegCacheLoad> Σ0 ↓
<POP 14136-14148 Naked> Σ0 ↓ →0x14152
<MI 14136 MOVEA.L (A6+0xc),A0> {}
<MI 1413a MOVEA.L (A6+0x8),A1> {}
<MI 1413e MOVE.W (A0+0x42),D0> {}
<MI 14142 CMP.W (A1+0x42),D0> {}
<MI 14146 BNE 0x14152> {}
<POP 14148-14152 Naked> Σ0 ↓ →0x14156
<MI 14148 MOVE.W (A0+0x20),D0> {}
<MI 1414c CMP.W (A1+0x20),D0> {}
<MI 14150 BEQ 0x14156> {}
<POP 14152-14156 Naked> Σ0 →0x1418a ←0x14136
<MI 14152 CLR.B (A6+0x10)> {}
<MI 14154 BRA 0x1418a> {}
<POP 14156-1415c Naked> Σ0 ↓ ←0x14148
<MI 14156 MOVE.B #0x01,(A6+0x10)> {}
<MI 1415a MOVEQ.L #0x00,D7> {}
<POP 1415c-14178 Naked> Σ0 ↓ →0x14182 ←0x14184
<MI 1415c MOVEA.L (A6+0xc),A0> {}
<POP 0x14160 LimitCheck 0x0 ≤ D7 ≤ 0x5> {}
<MI 14166 MOVE.L D7,D0> {}
<MI 14168 ASL.L #0x2,D0> {}
<MI 1416a MOVEA.L (A6+0x8),A1> {}
<MI 1416e MOVE.W (A0+D0.L+#0x22),D1> {}
<MI 14172 CMP.W (A1+D0.L+#0x22),D1> {}
<MI 14176 BNE 0x14182> {}
<POP 14178-14182 Naked> Σ0 ↓ →0x14184
<MI 14178 MOVE.W (A0+D0.L+#0x24),D1> {}
<MI 1417c CMP.W (A1+D0.L+#0x24),D1> {}
<MI 14180 BEQ 0x14184> {}
<POP 14182-14184 Naked> Σ0 ↓ ←0x1415c
<MI 14182 CLR.B (A6+0x10)> {}
<POP 14184-1418a Naked> Σ0 ↓ →0x1415c ←0x14178
<MI 14184 ADDQ.L #0x1,D7> {}
<MI 14186 CMP.L #0x05,D7> {}
<MI 14188 BLE 0x1415c> {}
<POP 1418a-14192 Epilogue> Σ0 ←0x14152
@ 14192
_InitProg(void)
<LVAR -0x006 @ 4(r)>
<LVAR -0x010 @ 1(r)>
<LVAR -0x018 @ 4(rw)>
<POP 14192-1430c Body>
<POP 14192-141a8 Prologue> Σ0 ↓
<POP 141a8-141b2 RegCacheLoad> Σ0 ↓
<POP 141b2-141d0 Naked> Σ0 ↓ →0x14216
<Call 0x141b2 0x15b84> {}
_FSCALL_10400
<MI 141b8 MOVEA.L 0x20020,A3> {}
<Blob 0x141be [2] @> Δ-2 {[«2""»]}
<Pointer.fp 0x141c4 <LVAR -0x010 @ 1(r)>> Δ-4 {[«2""»]|[@@-16]}
<Call 0x141c6 0x13ee4> {[«2""»]|[@@-16]}
_MountDisk(drive : Word ; VAR status : Byte)
<POP 141ca-141cc StackAdj> Δ+6 {}
<MI 141cc TST.B (A6-0x10)> {}
<MI 141ce BEQ 0x14216> {}
<POP 141d0-14216 Naked> Σ0 ↓
<Blob 0x141d0 [22] @> Δ-22 {[«22""»]}
<POP 141dc-141de StackAdj> Δ-8 {[«22""»]|[-8-]}
<Lit 0x141de 22> {[«22""»]|[-4-]|[$$Fatal restart error :_]}
<POP 141ee-141f0 StackAdj> Δ-6 {[«22""»]|[-4-]|[$$Fatal restart error :_]|[-6-]}
<MI 141f0 MOVE.B (A6-0x10),(A7)> {[«22""»]|[-4-]|[$$Fatal restart error :_]|[-6-]}
<Call 0x141f2 0x1430c> {[«22""»]|[-4-]|[$$Fatal restart error :_]|[-6-]}
_FsErrMsgStr(err: Byte) : String
<POP 141f8-141fa StackAdj> Δ+2 {[«22""»]|[-4-]|[$$Fatal restart error :_]|[-4-]}
<Call 0x141fa 0x10f2c> {[«22""»]|[-4-]|[$$Fatal restart error :_]|[-4-]}
_StringCat2(a, b : String) : String
<POP 14200-14202 StackAdj> Δ+8 {[«22""»]|[-4-]}
<Call 0x14202 0x154b0> {[«22""»]|[-4-]}
_WriteConsoleStringCrLf(str : String)
<POP 14208-1420a StackAdj> Δ+26 {}
<Const 0x1420a 0xb.4> Δ-4 {[##11]}
<Call 0x1420e 0x10220> {[##11]}
KC10_Panic(code : Long)
<POP 14214-14216 StackAdj> Δ+4 {}
<POP 14216-14218 Naked> Σ0 ↓ ←0x141b2
<MI 14216 MOVEA.L A3,A4> {}
<POP 14218-1421e Naked> Σ0 ↓ →0x142a4 ←0x14278
<MI 14218 CMPA.W #0x01,A4> {}
<MI 1421a BEQ 0x142a4> {}
<POP 1421e-14262 Naked> Σ0 ↓ →0x14264
<POP 1421e-14220 StackAdj> Δ-30 {[-30-]}
<MI 14220 MOVEA.L A7,A0> {[-30-]}
<MI 14222 MOVEA.L A4,A1> {[-30-]}
<BlockMove 30,A1,A0> {[-30-]}
<POP 1422c-1422e StackAdj> Δ-4 {[-34-]}
<Lit 0x1422e> {[-30-]|[$$…]}
<Pointer.sp 0x1422e 4> Δ-4
<Const 0x14232 0x1.2> Δ-2
<Const 0x14234 0x1e.2> Δ-2
<Call 0x14236 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 1423c-1423e StackAdj> Δ+8
<MI 1423e MOVE.L (A7)+,(A6-0x18)> Δ+4 {[-30-]}
<POP 14242-14244 StackAdj> Δ+26 {[-4-]}
<MI 14244 MOVE.L (A6-0x18),(A7)> {[4, '(A6-0x18)']}
<MI 14248 CLR.B -(A7)> Δ-2 {[4, '(A6-0x18)']|[#0]}
<Const 0x1424a 0x1.2> Δ-2 {[4, '(A6-0x18)']|[#0]|[#1]}
<Const 0x1424c 0x0.4> Δ-4 {[4, '(A6-0x18)']|[#0]|[#1]|[##0]}
<Pointer.fp 0x14250 <LVAR -0x010 @ 1(r)>> Δ-4 {[4, '(A6-0x18)']|[#0]|[#1]|[##0]|[@@-16]}
<Pointer.fp 0x14252 <LVAR -0x006 @ 4(r)>> Δ-4 {[4, '(A6-0x18)']|[#0]|[#1]|[##0]|[@@-16]|[@@-6]}
<Call 0x14256 0x138b4> {[4, '(A6-0x18)']|[#0]|[#1]|[##0]|[@@-16]|[@@-6]}
_OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
<POP 1425a-1425e StackAdj> Δ+20 {}
<MI 1425e TST.B (A6-0x10)> {}
<MI 14260 BEQ 0x14264> {}
<POP 14262-14264 Naked> Σ0 →0x142bc
<MI 14262 BRA 0x142bc> {}
<POP 14264-14276 Naked> Σ0 ↓ →0x14278 ←0x1421e
<POP 14264-14266 StackAdj> Δ-2 {[-2-]}
<MI 14266 MOVE.L A4,-(A7)> Δ-4 {[-2-]|[4, 'A4']}
<MI 14268 MOVE.L (A6-0x6),-(A7)> Δ-4 {[-2-]|[4, 'A4']|[4, '(A6-0x6)']}
<Call 0x1426c 0x1411a> {[-2-]|[4, 'A4']|[4, '(A6-0x6)']}
<POP 14270-14272 StackAdj> Δ+8 {[-2-]}
<MI 14272 TST.B (A7)+> Δ+2 {}
<MI 14274 BNE 0x14278> {}
<POP 14276-14278 Naked> Σ0 →0x142bc
<MI 14276 BRA 0x142bc> {}
<POP 14278-142a4 Naked> Σ0 →0x14218 ←0x14264
<MI 14278 CLR.B -(A7)> Δ-2 {[#0]}
<Const 0x1427a 0x2.2> Δ-2 {[#0]|[#2]}
<Const 0x1427e 0x1.4> Δ-4 {[#0]|[#2]|[##1]}
<Pointer.fp 0x14282 <LVAR -0x010 @ 1(r)>> Δ-4 {[#0]|[#2]|[##1]|[@@-16]}
<Pointer.fp 0x14284 <LVAR -0x006 @ 4(r)>> Δ-4 {[#0]|[#2]|[##1]|[@@-16]|[@@-6]}
<Call 0x14288 0x13c8a> {[#0]|[#2]|[##1]|[@@-16]|[@@-6]}
_CloseFile(a : L; VAR status : B; VAR file : File)
<POP 1428c-14290 StackAdj> Δ+16 {}
<Pointer.fp 0x14290 <LVAR -0x018 @ 4(rw)>> Δ-4 {[@@-24]}
<Call 0x14294 0x10d36> {[@@-24]}
_FreeString(VAR a : String)
<POP 1429a-1429c StackAdj> Δ+4 {}
<MI 1429c MOVEA.L (A4+0x44),A4> {}
<MI 142a0 BRA 0x14218> {}
<POP 142a4-142ae Naked> Σ0 ↓ →0x142ba ←0x14218
<MI 142a4 MOVEA.L 0x20020,A0> {}
<MI 142aa CMPA.W #0x01,A0> {}
<MI 142ac BEQ 0x142ba> {}
<POP 142ae-142ba Naked> Σ0 ↓
<Const 0x142ae 0x1b.4> Δ-4 {[##27]}
<Call 0x142b2 0x10220> {[##27]}
KC10_Panic(code : Long)
<POP 142b8-142ba StackAdj> Δ+4 {}
<POP 142ba-142bc Naked> Σ0 →0x142f4 ←0x142a4
<MI 142ba BRA 0x142f4> {}
<POP 142bc-142f4 Naked> Σ0 ↓ ←0x14262 ←0x14276
<Blob 0x142bc [40] @> Δ-40 {[«40""»]}
<Const 0x142c8 0x1.2> Δ-2 {[«40""»]|[#1]}
<POP 142ca-142cc StackAdj> Δ-8 {[«40""»]|[#1]|[-8-]}
<Lit 0x142cc 40> {[«40""»]|[#1]|[-4-]|[$$File control block obsolete after pop ->]}
<POP 142dc-142de StackAdj> Δ-4 {[«40""»]|[#1]|[-4-]|[$$File control block obsolete after pop ->]|[-4-]}
<MI 142de MOVE.L (A6-0x18),(A7)> {[«40""»]|[#1]|[-4-]|[$$File control block obsolete after pop ->]|[4, '(A6-0x18)']}
<Call 0x142e2 0x10f2c> {[«40""»]|[#1]|[-4-]|[$$File control block obsolete after pop ->]|[4, '(A6-0x18)']}
_StringCat2(a, b : String) : String
<POP 142e8-142ea StackAdj> Δ+8 {[«40""»]|[#1]|[-4-]}
<Call 0x142ea 0x14e18> {[«40""»]|[#1]|[-4-]}
_PopProgram(status : Byte; msg : String)
<POP 142f0-142f4 StackAdj> Δ+46 {}
<POP 142f4-14304 Naked> Σ0 ↓ ←0x142ba
<MI 142f4 MOVE.L A3,0x20020> {}
<Const 0x142fa 0x1.2> Δ-2 {[#1]}
<Call 0x142fc 0x14740> {[#1]}
_Set_is_open_ERROR_LOG(a : Bool)
<POP 14302-14304 StackAdj> Δ+2 {}
<POP 14304-1430c Epilogue> Σ0
@ 1430c
_FsErrMsgStr(err: Byte) : String
<LVAR 0x00a 4(w)>
<LVAR 0x008 1(r)>
<POP 1430c-1435e Body>
<POP 1430c-14322 Prologue> Σ0 ↓
<POP 14322-14324 RegCacheLoad> Σ0 ↓
<POP 14324-14356 Naked> Σ0 ↓
<MI 14324 MOVE.B (A6+0x8),D0> {}
<MI 14328 EXTB.W D0> {}
<MI 1432a MULS.W #0x1e,D0> {}
<MI 1432c LEA.L 0x1312a,A0> {}
<Blob 0x14330 [30] (A0+D0.W+#0x1e)> Δ-30 {[«30»]}
<POP 1433c-1433e StackAdj> Δ-4 {[«30»]|[-4-]}
<Lit 0x1433e> {[«30»]|[$$…]}
<Pointer.sp 0x1433e 4> Δ-4
<Const 0x14342 0x1.2> Δ-2
<Const 0x14346 0x1e.2> Δ-2
<Call 0x14348 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 1434e-14350 StackAdj> Δ+8
<MI 14350 MOVE.L (A7)+,(A6+0xa)> Δ+4 {[«30»]}
<POP 14354-14356 StackAdj> Δ+30 {}
<POP 14356-1435e Epilogue> Σ0
@ 14458
_Open_ERROR_LOG(void)
<LVAR -0x004 @ 1(r)>
<LVAR -0x008 @ 4(rw)>
<POP 14458-144e6 Body>
<POP 14458-1446e Prologue> Σ0 ↓
<POP 1446e-14474 RegCacheLoad> Σ0 ↓
<POP 14474-144d8 Naked> Σ0 ↓ →0x144de
<MI 14474 CLR.B 0x200f1> {}
<MI 1447a CLR.B 0x200f0> {}
<Blob 0x14480 [10] @> Δ-10 {[«10""»]}
<POP 14492-14494 StackAdj> Δ-4 {[«10""»]|[-4-]}
<Lit 0x14494 9> {[«10""»]|[$$ERROR_LOG]}
<MI 144a6 MOVE.L (A7)+,(A6-0x8)> Δ+4 {[«10""»]}
<POP 144a8-144aa StackAdj> Δ+6 {[-4-]}
<MI 144aa MOVE.L (A6-0x8),(A7)> {[4, '(A6-0x8)']}
<MI 144ac CLR.B -(A7)> Δ-2 {[4, '(A6-0x8)']|[#0]}
<Const 0x144ae 0x1.2> Δ-2 {[4, '(A6-0x8)']|[#0]|[#1]}
<Const 0x144b0 0x0.4> Δ-4 {[4, '(A6-0x8)']|[#0]|[#1]|[##0]}
<Pointer.fp 0x144b4 <LVAR -0x004 @ 1(r)>> Δ-4 {[4, '(A6-0x8)']|[#0]|[#1]|[##0]|[@@-4]}
<Const 0x144b8 0x200ec.4> Δ-4 {[4, '(A6-0x8)']|[#0]|[#1]|[##0]|[@@-4]|[##131308]}
<Call 0x144be 0x138b4> {[4, '(A6-0x8)']|[#0]|[#1]|[##0]|[@@-4]|[##131308]}
_OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
<POP 144c4-144c8 StackAdj> Δ+20 {}
<Pointer.fp 0x144c8 <LVAR -0x008 @ 4(rw)>> Δ-4 {[@@-8]}
<Call 0x144ca 0x10d36> {[@@-8]}
_FreeString(VAR a : String)
<POP 144d0-144d2 StackAdj> Δ+4 {}
<MI 144d2 TST.B (A6-0x4)> {}
<MI 144d6 BNE 0x144de> {}
<POP 144d8-144de Naked> Σ0 ↓
<MI 144d8 MOVE.B #0x01,0x200f0> {}
<POP 144de-144e6 Epilogue> Σ0 ←0x14474
@ 144e6
_Write_ERROR_LOG(VAR a : Bool; MOD b : Pointer)
<LVAR 0x00c 1(r)>
<LVAR 0x008 4(r)>
<LVAR -0x400 2(rw)>
<LVAR -0x405 1(r)>
<LVAR -0x406 2(rw)>
<LVAR -0x408 @ 2(rw)>
<LVAR -0x482 @>
<LVAR -0x486 @>
<LVAR -0x488 @ 1(w)>
<LVAR -0x48a @>
<POP 144e6-14740 Body>
<POP 144e6-144fc Prologue> Σ0 ↓
<POP 144fc-1450c RegCacheLoad> Σ0 ↓
<POP 1450c-14514 Naked> Σ0 ↓ →0x1453c
<MI 1450c TST.B 0x200f1> {}
<MI 14512 BEQ 0x1453c> {}
<POP 14514-1453c Naked> Σ0 ↓
<Blob 0x14514 [36] @> Δ-36 {[«36""»]}
<Const 0x14520 0x1.2> Δ-2 {[«36""»]|[#1]}
<POP 14522-14524 StackAdj> Δ-4 {[«36""»]|[#1]|[-4-]}
<Lit 0x14524 36> {[«36""»]|[#1]|[$$Disk errors while writing error log.]}
<Call 0x14532 0x14e18> {[«36""»]|[#1]|[$$Disk errors while writing error log.]}
_PopProgram(status : Byte; msg : String)
<POP 14538-1453c StackAdj> Δ+42 {}
<POP 1453c-14548 Naked> Σ0 ↓ →0x1462e ←0x1450c
<MI 1453c MOVE.B (A6+0xc),D0> {}
<MI 14540 EXTB.W D0> {}
<MI 14542 CMP.W #0x01,D0> {}
<MI 14544 BHI 0x1462e> {}
<POP 14548-14552 Naked> Σ0 →0x14556 →0x145c0
<MI 14548 ADD.W D0,D0> {}
<MI 1454a SWITCH D0.W> {}
<POP 14556-14558 Naked> Σ0 ↓ ←0x14548
<MI 14556 MOVEQ.L #0x00,D7> {}
<POP 14558-145be Naked> Σ0 ↓ →0x14558 ←0x14558
<MI 14558 MOVE.L D7,D4> {}
<MI 1455a MOVEQ.L #0x06,D3> {}
<Call 0x1455c 0x107ea> {}
_?muls_d3_d4
<MI 14562 LEA.L 0x143f2,A0> {}
<Blob 0x14566 [6] (A0+D4.L)> Δ-6 {[«6»]}
<POP 14576-14578 StackAdj> Δ-8 {[«6»]|[-8-]}
<Lit 0x14578> {[«6»]|[-4-]|[$$…]}
<Pointer.sp 0x14578 8> Δ-4
<Const 0x1457c 0x1.2> Δ-2
<Const 0x1457e 0x6.2> Δ-2
<Call 0x14582 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 14584-14586 StackAdj> Δ+8
<POP 14584-14586 StackAdj> Δ-4 {[«6»]|[-4-]|[$$…]|[-4-]}
<MI 14586 MOVEA.L (A6+0x8),A0> {[«6»]|[-4-]|[$$…]|[-4-]}
<MI 1458a MOVE.L D7,D0> {[«6»]|[-4-]|[$$…]|[-4-]}
<MI 1458c ASL.L #0x1,D0> {[«6»]|[-4-]|[$$…]|[-4-]}
<MI 1458e CLR.L D1> {[«6»]|[-4-]|[$$…]|[-4-]}
<MI 14590 MOVE.W (A0+D0.L),D1> {[«6»]|[-4-]|[$$…]|[-4-]}
<MI 14594 MOVE.L D1,-(A7)> Δ-4 {[«6»]|[-4-]|[$$…]|[-4-]|[4, 'D1']}
<Const 0x14596 0x4.4> Δ-4 {[«6»]|[-4-]|[$$…]|[-4-]|[4, 'D1']|[##4]}
<Call 0x1459a 0x111ce> {[«6»]|[-4-]|[$$…]|[-4-]|[4, 'D1']|[##4]}
_Long2HexString(val : Long; ndig : Long) : String
<POP 145a0-145a2 StackAdj> Δ+8 {[«6»]|[-4-]|[$$…]|[-4-]}
<Call 0x145a2 0x10f2c> {[«6»]|[-4-]|[$$…]|[-4-]}
_StringCat2(a, b : String) : String
<POP 145a8-145aa StackAdj> Δ+8 {[«6»]|[-4-]}
<Call 0x145aa 0x15392> {[«6»]|[-4-]}
_WriteConsoleString(str : String)
<POP 145b0-145b4 StackAdj> Δ+10 {}
<MI 145b4 ADDQ.L #0x1,D7> {}
<MI 145b6 CMPI.L #0x00000008,D7> {}
<MI 145bc BLE 0x14558> {}
<POP 145be-145c0 Naked> Σ0 →0x14628
<MI 145be BRA 0x14628> {}
<POP 145c0-145c2 Naked> Σ0 ↓ ←0x14548
<MI 145c0 MOVEQ.L #0x00,D7> {}
<POP 145c2-14628 Naked> Σ0 ↓ →0x145c2 ←0x145c2
<MI 145c2 MOVE.L D7,D4> {}
<MI 145c4 MOVEQ.L #0x06,D3> {}
<Call 0x145c6 0x107ea> {}
_?muls_d3_d4
<MI 145cc LEA.L 0x14428,A0> {}
<Blob 0x145d0 [6] (A0+D4.L)> Δ-6 {[«6»]}
<POP 145e0-145e2 StackAdj> Δ-8 {[«6»]|[-8-]}
<Lit 0x145e2> {[«6»]|[-4-]|[$$…]}
<Pointer.sp 0x145e2 8> Δ-4
<Const 0x145e6 0x1.2> Δ-2
<Const 0x145e8 0x6.2> Δ-2
<Call 0x145ec 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 145ee-145f0 StackAdj> Δ+8
<POP 145ee-145f0 StackAdj> Δ-4 {[«6»]|[-4-]|[$$…]|[-4-]}
<MI 145f0 MOVEA.L (A6+0x8),A0> {[«6»]|[-4-]|[$$…]|[-4-]}
<MI 145f4 MOVE.L D7,D0> {[«6»]|[-4-]|[$$…]|[-4-]}
<MI 145f6 ASL.L #0x1,D0> {[«6»]|[-4-]|[$$…]|[-4-]}
<MI 145f8 CLR.L D1> {[«6»]|[-4-]|[$$…]|[-4-]}
<MI 145fa MOVE.W (A0+D0.L),D1> {[«6»]|[-4-]|[$$…]|[-4-]}
<MI 145fe MOVE.L D1,-(A7)> Δ-4 {[«6»]|[-4-]|[$$…]|[-4-]|[4, 'D1']}
<Const 0x14600 0x4.4> Δ-4 {[«6»]|[-4-]|[$$…]|[-4-]|[4, 'D1']|[##4]}
<Call 0x14604 0x111ce> {[«6»]|[-4-]|[$$…]|[-4-]|[4, 'D1']|[##4]}
_Long2HexString(val : Long; ndig : Long) : String
<POP 1460a-1460c StackAdj> Δ+8 {[«6»]|[-4-]|[$$…]|[-4-]}
<Call 0x1460c 0x10f2c> {[«6»]|[-4-]|[$$…]|[-4-]}
_StringCat2(a, b : String) : String
<POP 14612-14614 StackAdj> Δ+8 {[«6»]|[-4-]}
<Call 0x14614 0x15392> {[«6»]|[-4-]}
_WriteConsoleString(str : String)
<POP 1461a-1461e StackAdj> Δ+10 {}
<MI 1461e ADDQ.L #0x1,D7> {}
<MI 14620 CMPI.L #0x00000007,D7> {}
<MI 14626 BLE 0x145c2> {}
<POP 14628-1462e Naked> Σ0 ↓ ←0x145be
<Call 0x14628 0x1540a> {}
_WriteConsoleCrLf(void)
<POP 1462e-14638 Naked> Σ0 ↓ →0x14738 ←0x1453c
<MI 1462e TST.B 0x200f0> {}
<MI 14634 BEQ 0x14738> {}
<POP 14638-14652 Naked> Σ0 ↓ →0x1465e
<MI 14638 MOVE.B (A6+0xc),(A6-0x488)> {}
<Pointer.fp 0x1463e <LVAR -0x486 @>> Δ-4 {[@@-1158]}
<Call 0x14642 0x116ee> {[@@-1158]}
_GetRtc() : TimeStamp
<POP 14648-1464a StackAdj> Δ+4 {}
<MI 1464a MOVEA.L (A6+0x8),A0> {}
<MI 1464e CMPA.W #0x01,A0> {}
<MI 14650 BEQ 0x1465e> {}
<POP 14652-1465e Naked> Σ0 ↓
<MI 14652 LEA.L (A6-0x482),A1> {}
<BlockMove 122,A0,A1> {}
<POP 1465e-1469a Naked> Σ0 ↓ →0x146a8 ←0x14638
<MI 1465e MOVE.B #0x01,0x200f1> {}
<Blob 0x14664 [4] 0x200ec> Δ-4 {[«4»]}
<MI 1466a CLR.W -(A7)> Δ-2 {[«4»]|[#0]}
<MI 1466c CLR.W -(A7)> Δ-2 {[«4»]|[#0]|[#0]}
<Const 0x1466e 0x200.2> Δ-2 {[«4»]|[#0]|[#0]|[#512]}
<Const 0x14672 0x2.2> Δ-2 {[«4»]|[#0]|[#0]|[#512]|[#2]}
<MI 14676 LEA.L (A6-0x408),A0> {[«4»]|[#0]|[#0]|[#512]|[#2]}
<MI 14678 MOVE.L A0,-(A7)> Δ-4 {[«4»]|[#0]|[#0]|[#512]|[#2]|[4, 'A0']}
<Pointer.fp 0x1467a <LVAR -0x48a @>> Δ-4 {[«4»]|[#0]|[#0]|[#512]|[#2]|[4, 'A0']|[@@-1162]}
<Call 0x1467e 0x13ae6> {[«4»]|[#0]|[#0]|[#512]|[#2]|[4, 'A0']|[@@-1162]}
_ReadFile(file : File; w : W; x : W; a : W; b: B; c : L; d : L)
<POP 14684-14688 StackAdj> Δ+20 {}
<MI 14688 CLR.L D0> {}
<MI 1468a MOVE.W (A6-0x406),D0> {}
<MI 1468c ADDQ.L #0x1,D0> {}
<MI 1468e ANDI.L #0x000007ff,D0> {}
<MI 14694 MOVE.W D0,(A6-0x406)> {}
<MI 14696 CMP.W (A6-0x408),D0> {}
<MI 14698 BNE 0x146a8> {}
<POP 1469a-146a8 Naked> Σ0 ↓
<MI 1469a CLR.L D0> {}
<MI 1469c MOVE.W (A6-0x408),D0> {}
<MI 1469e ADDQ.L #0x1,D0> {}
<MI 146a0 ANDI.L #0x000007ff,D0> {}
<MI 146a6 MOVE.W D0,(A6-0x408)> {}
<POP 146a8-146b0 Naked> Σ0 ↓ →0x146c2 ←0x1465e
<MI 146a8 MOVE.W (A6-0x406),D0> {}
<MI 146aa CMP.W (A6-0x400),D0> {}
<MI 146ae BNE 0x146c2> {}
<POP 146b0-146c2 Naked> Σ0 ↓
<MI 146b0 CLR.L D0> {}
<MI 146b2 MOVE.W (A6-0x400),D0> {}
<MI 146b6 ADDQ.L #0x1,D0> {}
<MI 146b8 ANDI.L #0x000007ff,D0> {}
<MI 146be MOVE.W D0,(A6-0x400)> {}
<POP 146c2-14738 Naked> Σ0 ↓ ←0x146a8
<MI 146c2 MOVE.W (A6-0x406),D0> {}
<MI 146c4 LSR.W #0x3,D0> {}
<MI 146c6 ADDQ.W #0x1,D0> {}
<MI 146c8 MOVE.W D0,D6> {}
<MI 146ca CLR.L D0> {}
<MI 146cc MOVE.B (A6-0x405),D0> {}
<MI 146d0 LSL.B #0x5,D0> {}
<MI 146d2 LSR.B #0x5,D0> {}
<MI 146d4 ASL.W #0x6,D0> {}
<MI 146d6 EXTW.L D0> {}
<MI 146d8 MOVE.L D0,D5> {}
<Blob 0x146da [4] 0x200ec> Δ-4 {[«4»]}
<POP 0x146e0 LimitCheck 0x0 ≤ D6 ≤ 0x4000> {[«4»]}
<MI 146e4 MOVE.W D6,-(A7)> Δ-2 {[«4»]|[2, 'D6']}
<POP 0x146e6 LimitCheck 0x0 ≤ D5 ≤ 0x1ff> {[«4»]|[2, 'D6']}
<MI 146f0 MOVE.W D5,-(A7)> Δ-2 {[«4»]|[2, 'D6']|[2, 'D5']}
<Const 0x146f2 0x40.2> Δ-2 {[«4»]|[2, 'D6']|[2, 'D5']|[#64]}
<Const 0x146f6 0x2.2> Δ-2 {[«4»]|[2, 'D6']|[2, 'D5']|[#64]|[#2]}
<MI 146fa LEA.L (A6-0x488),A0> {[«4»]|[2, 'D6']|[2, 'D5']|[#64]|[#2]}
<MI 146fe MOVE.L A0,-(A7)> Δ-4 {[«4»]|[2, 'D6']|[2, 'D5']|[#64]|[#2]|[4, 'A0']}
<Pointer.fp 0x14700 <LVAR -0x48a @>> Δ-4 {[«4»]|[2, 'D6']|[2, 'D5']|[#64]|[#2]|[4, 'A0']|[@@-1162]}
<Call 0x14704 0x13bb8> {[«4»]|[2, 'D6']|[2, 'D5']|[#64]|[#2]|[4, 'A0']|[@@-1162]}
_WriteFile(file : File; y : W; x : W; a : W; b: B; c: L; d: L)
<POP 1470a-1470e StackAdj> Δ+16 {[«4»]}
<POP 1470e-1470f StackAdj> Δ+4 {}
<Blob 0x1470f [4] 0x200ec> Δ-4 {[«4»]}
<MI 14714 CLR.W -(A7)> Δ-2 {[«4»]|[#0]}
<MI 14716 CLR.W -(A7)> Δ-2 {[«4»]|[#0]|[#0]}
<Const 0x14718 0x200.2> Δ-2 {[«4»]|[#0]|[#0]|[#512]}
<Const 0x1471c 0x2.2> Δ-2 {[«4»]|[#0]|[#0]|[#512]|[#2]}
<MI 14720 LEA.L (A6-0x408),A0> {[«4»]|[#0]|[#0]|[#512]|[#2]}
<MI 14722 MOVE.L A0,-(A7)> Δ-4 {[«4»]|[#0]|[#0]|[#512]|[#2]|[4, 'A0']}
<Pointer.fp 0x14724 <LVAR -0x48a @>> Δ-4 {[«4»]|[#0]|[#0]|[#512]|[#2]|[4, 'A0']|[@@-1162]}
<Call 0x14728 0x13bb8> {[«4»]|[#0]|[#0]|[#512]|[#2]|[4, 'A0']|[@@-1162]}
_WriteFile(file : File; y : W; x : W; a : W; b: B; c: L; d: L)
<POP 1472e-14732 StackAdj> Δ+20 {}
<MI 14732 CLR.B 0x200f1> {}
<POP 14738-14740 Epilogue> Σ0 ←0x1462e
@ 14740
_Set_is_open_ERROR_LOG(a : Bool)
<LVAR 0x008 1(r)>
<POP 14740-1475e Body>
<POP 14740-14752 Prologue> Σ0 ↓
<POP 14752-1475a Naked> Σ0 ↓
<MI 14752 MOVE.B (A6+0x8),0x200f0> {}
<POP 1475a-1475e Epilogue> Σ0
@ 14ba8
<LVAR 0x008 4(r)>
<LVAR -0x003 @>
<LVAR -0x004 @>
<LVAR -0x008 @ 4(r)>
<POP 14ba8-14c0c Body>
<POP 14ba8-14bbe Prologue> Σ0 ↓
<POP 14bbe-14c04 Naked> Σ0 ↓
<MI 14bbe MOVE.L (A6+0x8),-(A7)> Δ-4 {[4, '(A6+0x8)']}
<MI 14bc2 CLR.B -(A7)> Δ-2 {[4, '(A6+0x8)']|[#0]}
<Const 0x14bc4 0x2.2> Δ-2 {[4, '(A6+0x8)']|[#0]|[#2]}
<Const 0x14bc8 0x0.4> Δ-4 {[4, '(A6+0x8)']|[#0]|[#2]|[##0]}
<Pointer.fp 0x14bcc <LVAR -0x004 @>> Δ-4 {[4, '(A6+0x8)']|[#0]|[#2]|[##0]|[@@-4]}
<Pointer.fp 0x14bd0 <LVAR -0x008 @ 4(r)>> Δ-4 {[4, '(A6+0x8)']|[#0]|[#2]|[##0]|[@@-4]|[@@-8]}
<Call 0x14bd4 0x138b4> {[4, '(A6+0x8)']|[#0]|[#2]|[##0]|[@@-4]|[@@-8]}
_OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
<POP 14bda-14bde StackAdj> Δ+20 {}
<MI 14bde MOVEA.L (A6-0x8),A0> {}
<Const 0x14be2 0x13.2> Δ-2 {[#19]}
<MI 14be6 MOVE.W (A0+0x24),-(A7)> Δ-2 {[#19]|[2, '(A0+0x24)']}
<MI 14bea MOVE.W (A0+0x20),D0> {[#19]|[2, '(A0+0x24)']}
<MI 14bee EXTW.L D0> {[#19]|[2, '(A0+0x24)']}
<MI 14bf0 MOVE.L D0,-(A7)> Δ-4 {[#19]|[2, '(A0+0x24)']|[4, 'D0']}
<Const 0x14bf2 0x1.4> Δ-4 {[#19]|[2, '(A0+0x24)']|[4, 'D0']|[##1]}
<Pointer.fp 0x14bf6 <LVAR -0x003 @>> Δ-4 {[#19]|[2, '(A0+0x24)']|[4, 'D0']|[##1]|[@@-3]}
<Call 0x14bfa 0x127c4> {[#19]|[2, '(A0+0x24)']|[4, 'D0']|[##1]|[@@-3]}
_RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
<POP 14c00-14c04 StackAdj> Δ+16 {}
<POP 14c04-14c0c Epilogue> Σ0
@ 14c0c
_WriteProgToSwapFile(prog: String; args: String)
<LVAR 0x00c 4(rw)>
<LVAR 0x008 @ 4(r)>
<LVAR -0x006 @ 1(r)>
<LVAR -0x00a @ 4(r)>
<LVAR -0x00c @>
<LVAR -0x010 @ 4(rw)>
<POP 14c0c-14d74 Body>
<POP 14c0c-14c22 Prologue> Σ0 ↓
<POP 14c22-14c3a RegCacheLoad> Σ0 ↓
<POP 14c3a-14c40 Naked> Σ0 ↓ →0x14c4a
<MI 14c3a MOVEA.L (A6+0x8),A0> {}
<MI 14c3c CMPA.W #0x01,A0> {}
<MI 14c3e BNE 0x14c4a> {}
<POP 14c40-14c4a Naked> Σ0 ↓
<Pointer.fp 0x14c40 <LVAR 0x008 @ 4(r)>> Δ-4 {[@@8]}
<Call 0x14c42 0x10cfa> {[@@8]}
_NewString(VAR a : String)
<POP 14c48-14c4a StackAdj> Δ+4 {}
<POP 14c4a-14d02 Naked> Σ0 ↓ →0x14d2e ←0x14c3a
<MI 14c4a MOVEA.L (A6+0x8),A0> {}
<MI 14c4c LEA.L 0x1b0be,A1> {}
<BlockMove 128,A0,A1> {}
<Pointer.fp 0x14c5a <LVAR 0x008 @ 4(r)>> Δ-4 {[@@8]}
<Call 0x14c5c 0x10d36> {[@@8]}
_FreeString(VAR a : String)
<POP 14c62-14c64 StackAdj> Δ+4 {}
<Blob 0x14c64 [10] @> Δ-10 {[«10""»]}
<POP 14c70-14c72 StackAdj> Δ-8 {[«10""»]|[-8-]}
<Lit 0x14c72 10> {[«10""»]|[-4-]|[$$SWAP.M200.]}
<POP 14c7c-14c7d StackAdj> Δ-4 {[«10""»]|[-4-]|[$$SWAP.M200.]|[-4-]}
<Blob 0x14c7d [4] 0x1b0b8> Δ-4 {[«10""»]|[-4-]|[$$SWAP.M200.]|[-4-]|[«4»]}
<Call 0x14c7e 0x110c0> {[«10""»]|[-4-]|[$$SWAP.M200.]|[-4-]|[«4»]}
_Long2String(a : Long) : String
<POP 14c84-14c86 StackAdj> Δ+4 {[«10""»]|[-4-]|[$$SWAP.M200.]|[-4-]}
<Call 0x14c86 0x10f2c> {[«10""»]|[-4-]|[$$SWAP.M200.]|[-4-]}
_StringCat2(a, b : String) : String
<POP 14c8c-14c8e StackAdj> Δ+8 {[«10""»]|[-4-]}
<MI 14c8e MOVE.L (A7)+,(A6-0x10)> Δ+4 {[«10""»]}
<POP 14c92-14c94 StackAdj> Δ+10 {}
<MI 14c94 ADDQ.L #0x1,0x1b0b8> {}
<MI 14c96 MOVE.L (A6-0x10),-(A7)> Δ-4 {[4, '(A6-0x10)']}
<Const 0x14c9a 0x1.2> Δ-2 {[4, '(A6-0x10)']|[#1]}
<Const 0x14c9c 0x2.2> Δ-2 {[4, '(A6-0x10)']|[#1]|[#2]}
<Const 0x14c9e 0xffffff80.4> Δ-4 {[4, '(A6-0x10)']|[#1]|[#2]|[##4294967168]}
<Pointer.fp 0x14ca2 <LVAR -0x00c @>> Δ-4 {[4, '(A6-0x10)']|[#1]|[#2]|[##4294967168]|[@@-12]}
<Pointer.fp 0x14ca6 <LVAR -0x00a @ 4(r)>> Δ-4 {[4, '(A6-0x10)']|[#1]|[#2]|[##4294967168]|[@@-12]|[@@-10]}
<Call 0x14caa 0x138b4> {[4, '(A6-0x10)']|[#1]|[#2]|[##4294967168]|[@@-12]|[@@-10]}
_OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
<POP 14cb0-14cb4 StackAdj> Δ+20 {}
<MI 14cb4 MOVEA.L (A6-0xa),A0> {}
<MI 14cb8 MOVE.W (A0+0x24),D7> {}
<MI 14cbc CLR.B -(A7)> Δ-2 {[#0]}
<Const 0x14cbe 0x2.2> Δ-2 {[#0]|[#2]}
<Const 0x14cc0 0x1.4> Δ-4 {[#0]|[#2]|[##1]}
<Pointer.fp 0x14cc4 <LVAR -0x00c @>> Δ-4 {[#0]|[#2]|[##1]|[@@-12]}
<Pointer.fp 0x14cc8 <LVAR -0x00a @ 4(r)>> Δ-4 {[#0]|[#2]|[##1]|[@@-12]|[@@-10]}
<Call 0x14ccc 0x13c8a> {[#0]|[#2]|[##1]|[@@-12]|[@@-10]}
_CloseFile(a : L; VAR status : B; VAR file : File)
<POP 14cd2-14cd4 StackAdj> Δ+16 {}
<Pointer.fp 0x14cd4 <LVAR -0x010 @ 4(rw)>> Δ-4 {[@@-16]}
<Call 0x14cd8 0x10d36> {[@@-16]}
_FreeString(VAR a : String)
<POP 14cde-14ce0 StackAdj> Δ+2 {[-2-]}
<POP 14ce0-14ce1 StackAdj> Δ+2 {}
<Const 0x14ce1 0x3.2> Δ-2 {[#3]}
<MI 14ce4 MOVE.W D7,-(A7)> Δ-2 {[#3]|[2, 'D7']}
<Const 0x14ce6 0x80.4> Δ-4 {[#3]|[2, 'D7']|[##128]}
<Const 0x14cea 0x20000.4> Δ-4 {[#3]|[2, 'D7']|[##128]|[##131072]}
<Pointer.fp 0x14cf0 <LVAR -0x006 @ 1(r)>> Δ-4 {[#3]|[2, 'D7']|[##128]|[##131072]|[@@-6]}
<Call 0x14cf4 0x127c4> {[#3]|[2, 'D7']|[##128]|[##131072]|[@@-6]}
_RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
<POP 14cfa-14cfc StackAdj> Δ+16 {}
<MI 14cfc TST.B (A6-0x6)> {}
<MI 14d00 BNE 0x14d2e> {}
<POP 14d02-14d2e Naked> Σ0 ↓
<Blob 0x14d02 [16] @> Δ-16 {[«16""»]}
<Const 0x14d12 0x1.2> Δ-2 {[«16""»]|[#1]}
<POP 14d14-14d16 StackAdj> Δ-4 {[«16""»]|[#1]|[-4-]}
<Lit 0x14d16 15> {[«16""»]|[#1]|[$$PUSH disk error]}
<Call 0x14d24 0x14e18> {[«16""»]|[#1]|[$$PUSH disk error]}
_PopProgram(status : Byte; msg : String)
<POP 14d2a-14d2e StackAdj> Δ+22 {}
<POP 14d2e-14d6c Naked> Σ0 ↓ ←0x14c4a
<Blob 0x14d2e [6] @> Δ-6 {[«6""»]}
<POP 14d3e-14d40 StackAdj> Δ-4 {[«6""»]|[-4-]}
<MI 14d40 MOVE.L (A6+0xc),-(A7)> Δ-4 {[«6""»]|[-4-]|[4, '(A6+0xc)']}
<POP 14d44-14d46 StackAdj> Δ-4 {[«6""»]|[-4-]|[4, '(A6+0xc)']|[-4-]}
<Lit 0x14d46 5> {[«6""»]|[-4-]|[4, '(A6+0xc)']|[$$.M200]}
<Call 0x14d54 0x10f2c> {[«6""»]|[-4-]|[4, '(A6+0xc)']|[$$.M200]}
_StringCat2(a, b : String) : String
<POP 14d5a-14d5c StackAdj> Δ+8 {[«6""»]|[-4-]}
<MI 14d5c MOVE.L (A7)+,(A6+0xc)> Δ+4 {[«6""»]}
<POP 14d60-14d62 StackAdj> Δ+2 {[-4-]}
<MI 14d62 MOVE.L (A6+0xc),(A7)> {[4, '(A6+0xc)']}
<Call 0x14d66 0x14ba8> {[4, '(A6+0xc)']}
<POP 14d6a-14d6c StackAdj> Δ+4 {}
<POP 14d6c-14d74 Epilogue> Σ0
@ 14d74
<LVAR 0x00c 1(r)>
<LVAR 0x008 4(r)>
<POP 14d74-14dd6 Body>
<POP 14d74-14d86 Prologue> Σ0 ↓
<POP 14d86-14dd2 Naked> Σ0 ↓
<Call 0x14d86 0x1540a> {}
_WriteConsoleCrLf(void)
<Blob 0x14d8c [4] @> Δ-4 {[«4""»]}
<Blob 0x14d90 [4] @> Δ-4 {[«4""»]|[«4""»]}
<POP 14d94-14d96 StackAdj> Δ-8 {[«4""»]|[«4""»]|[-8-]}
<Lit 0x14d96 8> {[«4""»]|[«4""»]|[-4-]|[$$Abort :_]}
<POP 14da8-14daa StackAdj> Δ-6 {[«4""»]|[«4""»]|[-4-]|[$$Abort :_]|[-6-]}
<MI 14daa MOVE.B (A6+0xc),(A7)> {[«4""»]|[«4""»]|[-4-]|[$$Abort :_]|[-6-]}
<Call 0x14dae 0x15016> {[«4""»]|[«4""»]|[-4-]|[$$Abort :_]|[-6-]}
_ExpErrMsg(a: Byte) : String
<POP 14db4-14db6 StackAdj> Δ+2 {[«4""»]|[«4""»]|[-4-]|[$$Abort :_]|[-4-]}
<Call 0x14db6 0x10f2c> {[«4""»]|[«4""»]|[-4-]|[$$Abort :_]|[-4-]}
_StringCat2(a, b : String) : String
<POP 14dbc-14dbe StackAdj> Δ+8 {[«4""»]|[«4""»]|[-4-]}
<Call 0x14dbe 0x154b0> {[«4""»]|[«4""»]|[-4-]}
_WriteConsoleStringCrLf(str : String)
<POP 14dc4-14dc6 StackAdj> Δ+8 {[«4""»]}
<MI 14dc6 MOVE.L (A6+0x8),(A7)> {[4, '(A6+0x8)']}
<Call 0x14dca 0x154b0> {[4, '(A6+0x8)']}
_WriteConsoleStringCrLf(str : String)
<POP 14dd0-14dd2 StackAdj> Δ+4 {}
<POP 14dd2-14dd6 Epilogue> Σ0
@ 14dd6
<LVAR 0x010 1(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 14dd6-14e18 Body>
<POP 14dd6-14de8 Prologue> Σ0 ↓
<POP 14de8-14e14 Naked> Σ0 ↓
<MI 14de8 MOVE.B (A6+0x10),-(A7)> Δ-2 {[2, '(A6+0x10)']}
<MI 14dec MOVE.L (A6+0xc),-(A7)> Δ-4 {[2, '(A6+0x10)']|[4, '(A6+0xc)']}
<Call 0x14df0 0x14d74> {[2, '(A6+0x10)']|[4, '(A6+0xc)']}
<POP 14df4-14df6 StackAdj> Δ+2 {[2, '(A6+0x10)']|[-2-]}
<MI 14df6 MOVE.L (A6+0x8),(A7)> {[4, '(A6+0x8)']}
<Call 0x14dfa 0x154b0> {[4, '(A6+0x8)']}
_WriteConsoleStringCrLf(str : String)
<POP 14e00-14e02 StackAdj> Δ+4 {}
<Call 0x14e02 0x1540a> {}
_WriteConsoleCrLf(void)
<Const 0x14e08 0x1d.4> Δ-4 {[##29]}
<Call 0x14e0c 0x10220> {[##29]}
KC10_Panic(code : Long)
<POP 14e12-14e14 StackAdj> Δ+4 {}
<POP 14e14-14e18 Epilogue> Σ0
@ 14e18
_PopProgram(status : Byte; msg : String)
<LVAR 0x00c 1(r)>
<LVAR 0x008 @ 4(r)>
<LVAR -0x002 @>
<LVAR -0x004 @ 1(r)>
<LVAR -0x008 @ 4(w)>
<LVAR -0x00a @>
<POP 14e18-14f68 Body> Δ+28
<POP 14e18-14e2e Prologue> Σ0 ↓
<POP 14e2e-14e3c RegCacheLoad> Σ0 ↓
<POP 14e3c-14e44 Naked> Σ0 ↓ →0x14e52
<MI 14e3c TST.B 0x1b0b6> {}
<MI 14e42 BEQ 0x14e52> {}
<POP 14e44-14e52 Naked> Σ0 →0x14e58
<Const 0x14e44 0x16.4> Δ-4 {[##22]}
<Call 0x14e48 0x10220> {[##22]}
KC10_Panic(code : Long)
<POP 14e4e-14e50 StackAdj> Δ+4 {}
<MI 14e50 BRA 0x14e58> {}
<POP 14e52-14e58 Naked> Σ0 ↓ ←0x14e3c
<MI 14e52 MOVE.B #0x01,0x1b0b6> {}
<POP 14e58-14e5e Naked> Σ0 ↓ →0x14e68 ←0x14e44
<MI 14e58 MOVEA.L (A6+0x8),A0> {}
<MI 14e5a CMPA.W #0x01,A0> {}
<MI 14e5c BNE 0x14e68> {}
<POP 14e5e-14e68 Naked> Σ0 ↓
<Pointer.fp 0x14e5e <LVAR 0x008 @ 4(r)>> Δ-4 {[@@8]}
<Call 0x14e60 0x10cfa> {[@@8]}
_NewString(VAR a : String)
<POP 14e66-14e68 StackAdj> Δ+4 {}
<POP 14e68-14e72 Naked> Σ0 ↓ ←0x14e58
<MI 14e68 CLR.B -(A7)> Δ-2 {[#0]}
<Call 0x14e6a 0x14740> {[#0]}
_Set_is_open_ERROR_LOG(a : Bool)
<POP 14e70-14e72 StackAdj> Δ+2 {}
<POP 14e72-14e7c Naked> Σ0 ↓ →0x14ea0 ←0x14e7c
<MI 14e72 MOVEA.L 0x20020,A0> {}
<MI 14e78 CMPA.W #0x01,A0> {}
<MI 14e7a BEQ 0x14ea0> {}
<POP 14e7c-14ea0 Naked> Σ0 →0x14e72
<MI 14e7c MOVE.L 0x20020,(A6-0x8)> {}
<MI 14e84 CLR.B -(A7)> Δ-2 {[#0]}
<Const 0x14e86 0x1.2> Δ-2 {[#0]|[#1]}
<Const 0x14e88 0x1.4> Δ-4 {[#0]|[#1]|[##1]}
<Pointer.fp 0x14e8c <LVAR -0x00a @>> Δ-4 {[#0]|[#1]|[##1]|[@@-10]}
<Pointer.fp 0x14e90 <LVAR -0x008 @ 4(w)>> Δ-4 {[#0]|[#1]|[##1]|[@@-10]|[@@-8]}
<Call 0x14e94 0x13c8a> {[#0]|[#1]|[##1]|[@@-10]|[@@-8]}
_CloseFile(a : L; VAR status : B; VAR file : File)
<POP 14e9a-14e9e StackAdj> Δ+16 {}
<MI 14e9e BRA 0x14e72> {}
<POP 14ea0-14ea4 Naked> Σ0 ↓ →0x14f02 ←0x14e72
<MI 14ea0 TST.L 0x1b0b8> {}
<MI 14ea2 BNE 0x14f02> {}
<POP 14ea4-14ebe Naked> Σ0 ↓ →0x14ed0
<Pointer.fp 0x14ea4 <LVAR -0x004 @ 1(r)>> Δ-4 {[@@-4]}
<Pointer.fp 0x14ea8 <LVAR -0x002 @>> Δ-4 {[@@-4]|[@@-2]}
<Call 0x14eac 0x10200> {[@@-4]|[@@-2]}
KC00_GetBootDev(VAR a : Byte; VAR b : Word)
<POP 14eb2-14eb4 StackAdj> Δ+8 {}
<MI 14eb4 MOVE.B (A6-0x4),D0> {}
<MI 14eb8 CMPI.B #0x02,D0> {}
<MI 14ebc BEQ 0x14ed0> {}
<POP 14ebe-14ed0 Naked> Σ0 Δ-28 →0x14ee0
<Blob 0x14ebe [28] @> Δ-28 {[«28""»]}
<MI 14ece BRA 0x14ee0> {[«28""»]}
<POP 14ed0-14ee0 Naked> Σ0 Δ-28 ↓ ←0x14ea4
<Blob 0x14ed0 [28] @> Δ-28 {[«28""»]}
<POP 14ee0-14f02 Naked> Σ-28 Δ+28 ↓ ←0x14ebe
<MI 14ee0 MOVE.B (A6+0xc),-(A7)> Δ-2 {[-28-]|[2, '(A6+0xc)']}
<MI 14ee4 MOVE.L (A6+0x8),-(A7)> Δ-4 {[-28-]|[2, '(A6+0xc)']|[4, '(A6+0x8)']}
<POP 14ee6-14ee8 StackAdj> Δ-4 {[-28-]|[2, '(A6+0xc)']|[4, '(A6+0x8)']|[-4-]}
<Lit 0x14ee8> {[-28-]|[2, '(A6+0xc)']|[4, '(A6+0x8)']|[$$…]}
<Pointer.sp 0x14ee8 10> Δ-4
<Const 0x14eec 0x1.2> Δ-2
<Const 0x14eee 0x1b.2> Δ-2
<Call 0x14ef2 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 14ef8-14efa StackAdj> Δ+8
<Call 0x14efa 0x14dd6> {[-28-]|[2, '(A6+0xc)']|[4, '(A6+0x8)']|[$$…]}
<POP 14efe-14f02 StackAdj> Δ+38 {}
<POP 14f02-14f0e Naked> Σ0 ↓ →0x14f24 ←0x14ea0
<MI 14f02 SUBQ.L #0x1,0x1b0b8> {}
<MI 14f04 MOVE.B (A6+0xc),D0> {}
<MI 14f08 CMPI.B #0x06,D0> {}
<MI 14f0c BEQ 0x14f24> {}
<POP 14f0e-14f24 Naked> Σ0 ↓
<MI 14f0e MOVE.B D0,0x1b0bc> {}
<MI 14f14 MOVEA.L (A6+0x8),A0> {}
<MI 14f16 LEA.L 0x1b13e,A1> {}
<BlockMove 128,A0,A1> {}
<POP 14f24-14f60 Naked> Σ0 ↓ ←0x14f02
<Blob 0x14f24 [10] @> Δ-10 {[«10""»]}
<POP 14f30-14f32 StackAdj> Δ-8 {[«10""»]|[-8-]}
<Lit 0x14f32 10> {[«10""»]|[-4-]|[$$SWAP.M200.]}
<POP 14f42-14f43 StackAdj> Δ-4 {[«10""»]|[-4-]|[$$SWAP.M200.]|[-4-]}
<Blob 0x14f43 [4] 0x1b0b8> Δ-4 {[«10""»]|[-4-]|[$$SWAP.M200.]|[-4-]|[«4»]}
<Call 0x14f44 0x110c0> {[«10""»]|[-4-]|[$$SWAP.M200.]|[-4-]|[«4»]}
_Long2String(a : Long) : String
<POP 14f4a-14f4c StackAdj> Δ+4 {[«10""»]|[-4-]|[$$SWAP.M200.]|[-4-]}
<Call 0x14f4c 0x10f2c> {[«10""»]|[-4-]|[$$SWAP.M200.]|[-4-]}
_StringCat2(a, b : String) : String
<POP 14f52-14f54 StackAdj> Δ+8 {[«10""»]|[-4-]}
<MI 14f54 MOVEA.L (A7)+,A4> Δ+4 {[«10""»]}
<POP 14f56-14f58 StackAdj> Δ+6 {[-4-]}
<MI 14f58 MOVE.L A4,(A7)> {[4, 'A4']}
<Call 0x14f5a 0x14ba8> {[4, 'A4']}
<POP 14f5e-14f60 StackAdj> Δ+4 {}
<POP 14f60-14f68 Epilogue> Σ0
@ 14f68
_?FS103bc(MOD a: String; VAR b: Bool) : Bool
<LVAR 0x010 1(r)>
<LVAR 0x00c @ 4(r)>
<LVAR 0x008 4(r)>
<POP 14f68-15016 Body>
<POP 14f68-14f7e Prologue> Σ0 ↓
<POP 14f7e-14f9a Naked> Σ0 ↓ →0x14fa0
<MI 14f7e CLR.B 0x1b0b6> {}
<MI 14f84 MOVEA.L (A6+0x8),A0> {}
<MI 14f88 MOVE.B 0x1b0bc,D0> {}
<MI 14f8e EXTB.W D0> {}
<POP 0x14f90 LimitCheck 0x0 ≤ D0 ≤ 0xe> {}
<MI 14f94 MOVE.B D0,(A0)> {}
<MI 14f96 TST.B D0> {}
<MI 14f98 BEQ 0x14fa0> {}
<POP 14f9a-14fa0 Naked> Σ0 ↓ →0x14fae
<MI 14f9a TST.B (A6+0x10)> {}
<MI 14f9e BNE 0x14fae> {}
<POP 14fa0-14fae Naked> Σ0 →0x1500e ←0x14f7e
<Pointer.fp 0x14fa0 <LVAR 0x00c @ 4(r)>> Δ-4 {[@@12]}
<Call 0x14fa4 0x10d36> {[@@12]}
_FreeString(VAR a : String)
<POP 14faa-14fac StackAdj> Δ+4 {}
<MI 14fac BRA 0x1500e> {}
<POP 14fae-15000 Naked> Σ0 ↓ →0x1500e ←0x14f9a
<MI 14fae MOVE.B D0,-(A7)> Δ-2 {[2, 'D0']}
<POP 14fb0-14fb2 StackAdj> Δ-4 {[2, 'D0']|[-4-]}
<Call 0x14fb2 0x150a8> {[2, 'D0']|[-4-]}
_FSCALL_103c8
<Call 0x14fb8 0x14d74> {[2, 'D0']|[-4-]}
<MI 14fbc MOVEA.L A7,A0> {[2, 'D0']|[-4-]}
<MI 14fbe LEA.L 0x1481e,A1> {[2, 'D0']|[-4-]}
<BlockMove 5,A1,A0> {[2, 'D0']|[-4-]}
<POP 14fca-14fcc StackAdj> Δ-8 {[2, 'D0']|[-12-]}
<Lit 0x14fcc> {[2, 'D0']|[-8-]|[$$…]}
<Pointer.sp 0x14fcc 8> Δ-4
<Const 0x14fd0 0x1.2> Δ-2
<Const 0x14fd4 0x5.2> Δ-2
<Call 0x14fd8 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 14fde-14fe0 StackAdj> Δ+8
<POP 14fde-14fe0 StackAdj> Δ-4 {[2, 'D0']|[-8-]|[$$…]|[-4-]}
<MI 14fe0 MOVE.L (A6+0xc),(A7)> {[2, 'D0']|[-8-]|[$$…]|[4, '(A6+0xc)']}
<Call 0x14fe4 0x10f2c> {[2, 'D0']|[-8-]|[$$…]|[4, '(A6+0xc)']}
_StringCat2(a, b : String) : String
<POP 14fea-14fec StackAdj> Δ+8 {[2, 'D0']|[-8-]}
<Call 0x14fec 0x154b0> {[2, 'D0']|[-8-]}
_WriteConsoleStringCrLf(str : String)
<POP 14ff2-14ff6 StackAdj> Δ+10 {}
<MI 14ff6 MOVE.B (A6+0x10),D0> {}
<MI 14ffa CMPI.B #0x02,D0> {}
<MI 14ffe BNE 0x1500e> {}
<POP 15000-1500e Naked> Σ0 ↓
<Const 0x15000 0x6.2> Δ-2 {[#6]}
<Const 0x15004 0x1.4> Δ-4 {[#6]|[##1]}
<Call 0x15008 0x14e18> {[#6]|[##1]}
_PopProgram(status : Byte; msg : String)
<POP 1500c-1500e StackAdj> Δ+6 {}
<POP 1500e-15016 Epilogue> Σ0 ←0x14fa0 ←0x14fae
@ 15016
_ExpErrMsg(a: Byte) : String
<LVAR 0x00a 4(w)>
<LVAR 0x008 1(r)>
<POP 15016-15068 Body>
<POP 15016-1502c Prologue> Σ0 ↓
<POP 1502c-1502e RegCacheLoad> Σ0 ↓
<POP 1502e-15060 Naked> Σ0 ↓
<MI 1502e MOVE.B (A6+0x8),D0> {}
<MI 15032 EXTB.W D0> {}
<MI 15034 MULS.W #0x1e,D0> {}
<MI 15036 LEA.L 0x149e6,A0> {}
<Blob 0x1503a [30] (A0+D0.W+#0x1e)> Δ-30 {[«30»]}
<POP 15046-15048 StackAdj> Δ-4 {[«30»]|[-4-]}
<Lit 0x15048> {[«30»]|[$$…]}
<Pointer.sp 0x15048 4> Δ-4
<Const 0x1504c 0x1.2> Δ-2
<Const 0x15050 0x1e.2> Δ-2
<Call 0x15052 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 15058-1505a StackAdj> Δ+8
<MI 1505a MOVE.L (A7)+,(A6+0xa)> Δ+4 {[«30»]}
<POP 1505e-15060 StackAdj> Δ+30 {}
<POP 15060-15068 Epilogue> Σ0
@ 15068
_GetArgv() : String
<LVAR 0x008 4(w)>
<LVAR -0x004 @ 4(r)>
<POP 15068-150a8 Body>
<POP 15068-1507e Prologue> Σ0 ↓
<POP 1507e-15082 RegCacheLoad> Σ0 ↓
<POP 15082-150a0 Naked> Σ0 ↓
<Pointer.fp 0x15082 <LVAR -0x004 @ 4(r)>> Δ-4 {[@@-4]}
<Call 0x15084 0x10cfa> {[@@-4]}
_NewString(VAR a : String)
<POP 1508a-1508c StackAdj> Δ+4 {}
<MI 1508c MOVEA.L (A6-0x4),A0> {}
<MI 1508e LEA.L 0x1b0be,A1> {}
<BlockMove 128,A1,A0> {}
<MI 1509c MOVE.L (A6-0x4),(A6+0x8)> {}
<POP 150a0-150a8 Epilogue> Σ0
@ 150a8
_FSCALL_103c8
<LVAR 0x008 4(w)>
<LVAR -0x004 @ 4(r)>
<POP 150a8-150e8 Body>
<POP 150a8-150be Prologue> Σ0 ↓
<POP 150be-150c2 RegCacheLoad> Σ0 ↓
<POP 150c2-150e0 Naked> Σ0 ↓
<Pointer.fp 0x150c2 <LVAR -0x004 @ 4(r)>> Δ-4 {[@@-4]}
<Call 0x150c4 0x10cfa> {[@@-4]}
_NewString(VAR a : String)
<POP 150ca-150cc StackAdj> Δ+4 {}
<MI 150cc MOVEA.L (A6-0x4),A0> {}
<MI 150ce LEA.L 0x1b13e,A1> {}
<BlockMove 128,A1,A0> {}
<MI 150dc MOVE.L (A6-0x4),(A6+0x8)> {}
<POP 150e0-150e8 Epilogue> Σ0
@ 150e8
_GetPushLevel() : Long
<LVAR 0x008 4(w)>
<POP 150e8-15106 Body>
<POP 150e8-150fa Prologue> Σ0 ↓
<POP 150fa-15102 Naked> Σ0 ↓
<MI 150fa MOVE.L 0x1b0b8,(A6+0x8)> {}
<POP 15102-15106 Epilogue> Σ0
@ 15210
_WriteConsoleChar(chr : char)
<LVAR 0x008 1(r)>
<POP 15210-15286 Body>
<POP 15210-15226 Prologue> Σ0 ↓
<POP 15226-1522c RegCacheLoad> Σ0 ↓
<POP 1522c-15252 Naked> Σ0 ↓ →0x1527e
<MI 1522c MOVE.L 0x1b1c6,D0> {}
<POP 0x15232 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 15238 MOVE.W D0,-(A7)> Δ-2 {[2, 'D0']}
<MI 1523a CLR.L D0> {[2, 'D0']}
<MI 1523c MOVE.B (A6+0x8),D0> {[2, 'D0']}
<MI 15240 MOVE.W D0,-(A7)> Δ-2 {[2, 'D0']|[2, 'D0']}
<Call 0x15242 0x1020c> {[2, 'D0']|[2, 'D0']}
KC06_PortPutChar(port : Word ; b : char)
<POP 15248-1524a StackAdj> Δ+4 {}
<MI 1524a TST.B 0x1b1ca> {}
<MI 15250 BEQ 0x1527e> {}
<POP 15252-1527e Naked> Σ0 ↓
<MI 15252 MOVE.W 0x1b1cc,D0> {}
<POP 0x15258 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 1525e MOVE.W D0,-(A7)> Δ-2 {[2, 'D0']}
<MI 15260 MOVE.W 0x1b1ce,D0> {[2, 'D0']}
<POP 0x15266 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {[2, 'D0']}
<MI 1526c MOVE.W D0,-(A7)> Δ-2 {[2, 'D0']|[2, 'D0']}
<MI 1526e CLR.L D0> {[2, 'D0']|[2, 'D0']}
<MI 15270 MOVE.B (A6+0x8),D0> {[2, 'D0']|[2, 'D0']}
<MI 15274 MOVE.W D0,-(A7)> Δ-2 {[2, 'D0']|[2, 'D0']|[2, 'D0']}
<Call 0x15276 0x10218> {[2, 'D0']|[2, 'D0']|[2, 'D0']}
KC0c_Write_Modem_Char(a, b: Word ; c : char)
<POP 1527c-1527e StackAdj> Δ+6 {}
<POP 1527e-15286 Epilogue> Σ0 ←0x1522c
@ 15286
_ReadChar() : Byte
<LVAR 0x008 1(w)>
<LVAR -0x001 @>
<LVAR -0x002 @ 1(r)>
<LVAR -0x004 @ 2(r)>
<POP 15286-15392 Body>
<POP 15286-1529c Prologue> Σ0 ↓
<POP 1529c-152ae RegCacheLoad> Σ0 ↓
<POP 152ae-152b8 Naked> Σ0 ↓ →0x152c2
<MI 152ae MOVE.L 0x1b1c6,D0> {}
<MI 152b0 CMPI.L #0x00000003,D0> {}
<MI 152b6 BEQ 0x152c2> {}
<POP 152b8-152c2 Naked> Σ0 →0x15370
<POP 0x152b8 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 152be BRA 0x15370> {}
<POP 152c2-152da Naked> Σ0 ↓ →0x152c2 ←0x152ae ←0x152c2 ←0x15362
<MI 152c2 MOVE.L 0x1b1c6,D0> {}
<POP 0x152c4 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 152ca MOVE.W D0,-(A7)> Δ-2 {[2, 'D0']}
<Pointer.fp 0x152cc <LVAR -0x002 @ 1(r)>> Δ-4 {[2, 'D0']|[@@-2]}
<Call 0x152ce 0x10212> {[2, 'D0']|[@@-2]}
KC09_PortStatus(Port : Word; VAR b: Byte)
<POP 152d4-152d6 StackAdj> Δ+6 {}
<MI 152d6 TST.B (A6-0x2)> {}
<MI 152d8 BEQ 0x152c2> {}
<POP 152da-152e2 Naked> Σ0 ↓ →0x15362
<MI 152da MOVE.B (A6-0x2),D0> {}
<MI 152dc CMP.B #0x01,D0> {}
<MI 152de BEQ 0x15362> {}
<POP 152e2-152fa Naked> Σ0 Δ-2 ↓ →0x15330
<POP 152e2-152e4 StackAdj> Δ-2 {[-2-]}
<Const 0x152e4 0x180.4> Δ-4 {[-2-]|[##384]}
<Call 0x152e8 0x1a96a> {[-2-]|[##384]}
_ReadConfig(where : Long) : Word
<POP 152ee-152f0 StackAdj> Δ+4 {[-2-]}
<MI 152f0 MOVE.B (A7+0x1),D1> {[-2-]}
<MI 152f4 CMPI.B #0x58,D1> {[-2-]}
<MI 152f8 BNE 0x15330> {[-2-]}
<POP 152fa-15330 Naked> Σ-2 →0x15360
<Blob 0x152fa [2] @> Δ-2 {[-2-]|[«2""»]}
<Blob 0x152fe [2] @> Δ-2 {[-2-]|[«2""»]|[«2""»]}
<Blob 0x15302 [2] @> Δ-2 {[-2-]|[«2""»]|[«2""»]|[«2""»]}
<POP 15306-15308 StackAdj> Δ-4 {[-2-]|[«2""»]|[«2""»]|[«2""»]|[-4-]}
<Lit 0x15308 6> {[-2-]|[«2""»]|[«2""»]|[«2""»]|[$$FIXPAD]}
<Const 0x1531a 0x1.4> Δ-4 {[-2-]|[«2""»]|[«2""»]|[«2""»]|[$$FIXPAD]|[##1]}
<MI 1531e CLR.B -(A7)> Δ-2 {[-2-]|[«2""»]|[«2""»]|[«2""»]|[$$FIXPAD]|[##1]|[#0]}
<Pointer.fp 0x15320 <LVAR -0x001 @>> Δ-4 {[-2-]|[«2""»]|[«2""»]|[«2""»]|[$$FIXPAD]|[##1]|[#0]|[@@-1]}
<Call 0x15324 0x1475e> {[-2-]|[«2""»]|[«2""»]|[«2""»]|[$$FIXPAD]|[##1]|[#0]|[@@-1]}
_PushProgram(a : String; b : String; MOD c : B; VAR d : Bool)
<POP 1532a-1532e StackAdj> Δ+20 {[-2-]}
<MI 1532e BRA 0x15360> {[-2-]}
<POP 15330-15360 Naked> Σ-2 ↓ ←0x152e2
<Blob 0x15330 [4] @> Δ-4 {[-2-]|[«4""»]}
<Blob 0x15334 [4] @> Δ-4 {[-2-]|[«4""»]|[«4""»]}
<POP 15338-1533a StackAdj> Δ-4 {[-2-]|[«4""»]|[«4""»]|[-4-]}
<Lit 0x1533a 8> {[-2-]|[«4""»]|[«4""»]|[$$FIXMODEM]}
<Const 0x1534c 0x1.4> Δ-4 {[-2-]|[«4""»]|[«4""»]|[$$FIXMODEM]|[##1]}
<MI 15350 CLR.B -(A7)> Δ-2 {[-2-]|[«4""»]|[«4""»]|[$$FIXMODEM]|[##1]|[#0]}
<Pointer.fp 0x15352 <LVAR -0x001 @>> Δ-4 {[-2-]|[«4""»]|[«4""»]|[$$FIXMODEM]|[##1]|[#0]|[@@-1]}
<Call 0x15356 0x1475e> {[-2-]|[«4""»]|[«4""»]|[$$FIXMODEM]|[##1]|[#0]|[@@-1]}
_PushProgram(a : String; b : String; MOD c : B; VAR d : Bool)
<POP 1535c-15360 StackAdj> Δ+22 {[-2-]}
<POP 15360-15362 Naked> Σ-2 Δ+2 ↓ ←0x152fa
<POP 15360-15362 StackAdj> Δ+2 {}
<POP 15362-15368 Naked> Σ0 ↓ →0x152c2 ←0x152da
<MI 15362 CMP.B #0x01,D0> {}
<MI 15364 BNE 0x152c2> {}
<POP 15368-15370 Naked> Σ0 ↓
<MI 15368 MOVE.L 0x1b1c6,D0> {}
<POP 0x1536a LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<POP 15370-1538a Naked> Σ0 ↓ ←0x152b8
<MI 15370 MOVE.W D0,-(A7)> Δ-2 {[2, 'D0']}
<Pointer.fp 0x15372 <LVAR -0x004 @ 2(r)>> Δ-4 {[2, 'D0']|[@@-4]}
<Call 0x15376 0x1020e> {[2, 'D0']|[@@-4]}
KC07_PortGetChar(port : Word ; VAR ret : Word)
<POP 1537c-1537e StackAdj> Δ+6 {}
<MI 1537e MOVE.W (A6-0x4),D0> {}
<MI 15382 ANDI.W #0x00ff,D0> {}
<MI 15386 MOVE.B D0,(A6+0x8)> {}
<POP 1538a-15392 Epilogue> Σ0
@ 15392
_WriteConsoleString(str : String)
<LVAR 0x008 @ 4(r)>
<POP 15392-1540a Body>
<POP 15392-153a8 Prologue> Σ0 ↓
<POP 153a8-153b2 RegCacheLoad> Σ0 ↓
<POP 153b2-153d2 Naked> Σ0 ↓ →0x153f8
<MI 153b2 MOVE.L 0x1b1c6,D0> {}
<POP 0x153b8 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 153be MOVE.W D0,-(A7)> Δ-2 {[2, 'D0']}
<MI 153c0 MOVE.L (A6+0x8),-(A7)> Δ-4 {[2, 'D0']|[4, '(A6+0x8)']}
<Call 0x153c2 0x1020a> {[2, 'D0']|[4, '(A6+0x8)']}
KC05_PortWriteString(port : Word ; str : String)
<POP 153c8-153ca StackAdj> Δ+6 {}
<MI 153ca TST.B 0x1b1ca> {}
<MI 153d0 BEQ 0x153f8> {}
<POP 153d2-153f8 Naked> Σ0 ↓
<MI 153d2 MOVE.W 0x1b1cc,D0> {}
<POP 0x153d8 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 153de MOVE.W D0,-(A7)> Δ-2 {[2, 'D0']}
<MI 153e0 MOVE.W 0x1b1ce,D0> {[2, 'D0']}
<POP 0x153e6 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {[2, 'D0']}
<MI 153ec MOVE.W D0,-(A7)> Δ-2 {[2, 'D0']|[2, 'D0']}
<MI 153ee MOVE.L (A6+0x8),-(A7)> Δ-4 {[2, 'D0']|[2, 'D0']|[4, '(A6+0x8)']}
<Call 0x153f0 0x1021a> {[2, 'D0']|[2, 'D0']|[4, '(A6+0x8)']}
KC0d_Write_Modem_String(Word, Word, Char)
<POP 153f6-153f8 StackAdj> Δ+8 {}
<POP 153f8-15402 Naked> Σ0 ↓ ←0x153b2
<Pointer.fp 0x153f8 <LVAR 0x008 @ 4(r)>> Δ-4 {[@@8]}
<Call 0x153fa 0x10d36> {[@@8]}
_FreeString(VAR a : String)
<POP 15400-15402 StackAdj> Δ+4 {}
<POP 15402-1540a Epilogue> Σ0
@ 1540a
_WriteConsoleCrLf(void)
<POP 1540a-154b0 Body>
<POP 1540a-15420 Prologue> Σ0 ↓
<POP 15420-1543c RegCacheLoad> Σ0 ↓
<POP 1543c-1546c Naked> Σ0 ↓ →0x154a8
<MI 1543c MOVE.L 0x1b1c6,D0> {}
<POP 0x1543e LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 15444 MOVE.W D0,-(A7)> Δ-2 {[2, 'D0']}
<Const 0x15446 0xd.2> Δ-2 {[2, 'D0']|[#13]}
<Call 0x15448 0x1020c> {[2, 'D0']|[#13]}
KC06_PortPutChar(port : Word ; b : char)
<POP 1544e-15450 StackAdj> Δ+4 {}
<MI 15450 MOVE.L 0x1b1c6,D0> {}
<POP 0x15452 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 15458 MOVE.W D0,-(A7)> Δ-2 {[2, 'D0']}
<Const 0x1545a 0xa.2> Δ-2 {[2, 'D0']|[#10]}
<Call 0x1545c 0x1020c> {[2, 'D0']|[#10]}
KC06_PortPutChar(port : Word ; b : char)
<POP 15462-15464 StackAdj> Δ+4 {}
<MI 15464 TST.B 0x1b1ca> {}
<MI 1546a BEQ 0x154a8> {}
<POP 1546c-154a8 Naked> Σ0 ↓
<MI 1546c MOVE.W 0x1b1cc,D0> {}
<POP 0x1546e LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 15474 MOVE.W D0,-(A7)> Δ-2 {[2, 'D0']}
<MI 15476 MOVE.W 0x1b1ce,D0> {[2, 'D0']}
<POP 0x15478 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {[2, 'D0']}
<MI 1547e MOVE.W D0,-(A7)> Δ-2 {[2, 'D0']|[2, 'D0']}
<Const 0x15480 0xd.2> Δ-2 {[2, 'D0']|[2, 'D0']|[#13]}
<Call 0x15482 0x10218> {[2, 'D0']|[2, 'D0']|[#13]}
KC0c_Write_Modem_Char(a, b: Word ; c : char)
<POP 15488-1548a StackAdj> Δ+6 {}
<MI 1548a MOVE.W 0x1b1cc,D0> {}
<POP 0x1548c LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 15492 MOVE.W D0,-(A7)> Δ-2 {[2, 'D0']}
<MI 15494 MOVE.W 0x1b1ce,D0> {[2, 'D0']}
<POP 0x15496 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {[2, 'D0']}
<MI 1549c MOVE.W D0,-(A7)> Δ-2 {[2, 'D0']|[2, 'D0']}
<Const 0x1549e 0xa.2> Δ-2 {[2, 'D0']|[2, 'D0']|[#10]}
<Call 0x154a0 0x10218> {[2, 'D0']|[2, 'D0']|[#10]}
KC0c_Write_Modem_Char(a, b: Word ; c : char)
<POP 154a6-154a8 StackAdj> Δ+6 {}
<POP 154a8-154b0 Epilogue> Σ0 ←0x1543c
@ 154b0
_WriteConsoleStringCrLf(str : String)
<LVAR 0x008 4(r)>
<POP 154b0-154f6 Body>
<POP 154b0-154c6 Prologue> Σ0 ↓
<POP 154c6-154ca RegCacheLoad> Σ0 ↓
<POP 154ca-154ee Naked> Σ0 ↓
<MI 154ca MOVE.L (A6+0x8),-(A7)> Δ-4 {[4, '(A6+0x8)']}
<Const 0x154cc 0xd.2> Δ-2 {[4, '(A6+0x8)']|[#13]}
<Call 0x154d0 0x10d66> {[4, '(A6+0x8)']|[#13]}
_AppendChar(MOD b : String; a : char)
<POP 154d6-154d8 StackAdj> Δ+2 {[4, '(A6+0x8)']}
<MI 154d8 MOVE.L (A6+0x8),(A7)> {[4, '(A6+0x8)']}
<Const 0x154da 0xa.2> Δ-2 {[4, '(A6+0x8)']|[#10]}
<Call 0x154de 0x10d66> {[4, '(A6+0x8)']|[#10]}
_AppendChar(MOD b : String; a : char)
<POP 154e4-154e6 StackAdj> Δ+2 {[4, '(A6+0x8)']}
<MI 154e6 MOVE.L (A6+0x8),(A7)> {[4, '(A6+0x8)']}
<Call 0x154e8 0x15392> {[4, '(A6+0x8)']}
_WriteConsoleString(str : String)
<POP 154ec-154ee StackAdj> Δ+4 {}
<POP 154ee-154f6 Epilogue> Σ0
@ 154f6
HandleBackSpace(a : String)
<LVAR 0x008 4(r)>
<POP 154f6-155c0 Body>
<POP 154f6-1550c Prologue> Σ0 ↓
<POP 1550c-15522 RegCacheLoad> Σ0 ↓
<POP 15522-1552c Naked> Σ0 Δ-4 ↓ →0x15540
<MI 15522 MOVEA.L (A6+0x8),A0> {}
<MI 15526 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 15528 TST.W (A0)> {[4, 'A0']}
<MI 1552a BNE 0x15540> {[4, 'A0']}
<POP 1552c-15540 Naked> Σ-4 →0x155b6
<MI 1552c MOVE.L 0x1b1c6,D0> {[-4-]}
<POP 0x1552e LimitCheck 0x0 ≤ D0 ≤ 0xffff> {[-4-]}
<MI 15534 MOVE.W D0,-(A7)> Δ-2 {[-4-]|[2, 'D0']}
<Const 0x15536 0x7.2> Δ-2 {[-4-]|[2, 'D0']|[#7]}
<Call 0x1553a 0x1020c> {[-4-]|[2, 'D0']|[#7]}
KC06_PortPutChar(port : Word ; b : char)
<POP 1553c-1553e StackAdj> Δ+4 {[-4-]}
<MI 1553e BRA 0x155b6> {[-4-]}
<POP 15540-1555a Naked> Σ-4 ↓ →0x1555c ←0x15522
<MI 15540 MOVEQ.L #0x00,D6> {[-4-]}
<MI 15542 MOVE.W (A0),D0> {[-4-]}
<MI 15544 EXTW.L D0> {[-4-]}
<MI 15546 SUBQ.L #0x1,D0> {[-4-]}
<POP 0x15548 LimitCheck 0x0 ≤ D0 ≤ 0x7d> {[-4-]}
<MI 15552 MOVE.B (A0+D0.L+#0x2),D0> {[-4-]}
<MI 15556 CMP.B #0x20,D0> {[-4-]}
<MI 15558 BCC 0x1555c> {[-4-]}
<POP 1555a-1555c Naked> Σ-4 ↓
<MI 1555a MOVEQ.L #0x01,D6> {[-4-]}
<POP 1555c-15560 Naked> Σ-4 Δ-4 ↓ ←0x15540
<MI 1555c MOVE.L D6,-(A7)> Δ-4 {[-4-]|[4, 'D6']}
<MI 1555e MOVEQ.L #0x00,D7> {[-4-]|[4, 'D6']}
<POP 15560-15564 Naked> Σ-8 ↓ →0x15598 ←0x15564
<MI 15560 CMP.L (A7),D7> {[-8-]}
<MI 15562 BGT 0x15598> {[-8-]}
<POP 15564-15598 Naked> Σ-8 ↓ →0x15560
<MI 15564 MOVE.L 0x1b1c6,D0> {[-8-]}
<POP 0x15566 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {[-8-]}
<MI 1556c MOVE.W D0,-(A7)> Δ-2 {[-8-]|[2, 'D0']}
<Const 0x1556e 0x8.2> Δ-2 {[-8-]|[2, 'D0']|[#8]}
<Call 0x15570 0x1020c> {[-8-]|[2, 'D0']|[#8]}
KC06_PortPutChar(port : Word ; b : char)
<POP 15572-15574 StackAdj> Δ+4 {[-8-]}
<MI 15574 MOVE.L 0x1b1c6,D0> {[-8-]}
<POP 0x15576 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {[-8-]}
<MI 1557c MOVE.W D0,-(A7)> Δ-2 {[-8-]|[2, 'D0']}
<Const 0x1557e 0x20.2> Δ-2 {[-8-]|[2, 'D0']|[#32]}
<Call 0x15580 0x1020c> {[-8-]|[2, 'D0']|[#32]}
KC06_PortPutChar(port : Word ; b : char)
<POP 15582-15584 StackAdj> Δ+4 {[-8-]}
<MI 15584 MOVE.L 0x1b1c6,D0> {[-8-]}
<POP 0x15586 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {[-8-]}
<MI 1558c MOVE.W D0,-(A7)> Δ-2 {[-8-]|[2, 'D0']}
<Const 0x1558e 0x8.2> Δ-2 {[-8-]|[2, 'D0']|[#8]}
<Call 0x15590 0x1020c> {[-8-]|[2, 'D0']|[#8]}
KC06_PortPutChar(port : Word ; b : char)
<POP 15592-15594 StackAdj> Δ+4 {[-8-]}
<MI 15594 ADDQ.L #0x1,D7> {[-8-]}
<MI 15596 BVC 0x15560> {[-8-]}
<POP 15598-155b6 Naked> Σ-8 Δ+4 ↓ ←0x15560
<POP 15598-1559a StackAdj> Δ+4 {[-4-]}
<MI 1559a MOVEA.L (A7),A0> {[-4-]}
<MI 1559c MOVE.W (A0),D0> {[-4-]}
<MI 1559e EXTW.L D0> {[-4-]}
<MI 155a0 SUBQ.L #0x1,D0> {[-4-]}
<POP 0x155a2 LimitCheck -0x8000 ≤ D0 ≤ 0x7fff> {[-4-]}
<MI 155b4 MOVE.W D0,(A0)> {[-4-]}
<POP 155b6-155b8 Naked> Σ-4 Δ+4 ↓ ←0x1552c
<POP 155b6-155b8 StackAdj> Δ+4 {}
<POP 155b8-155c0 Epilogue> Σ0
@ 155c0
EraseEOL(void)
<POP 155c0-1564a Body>
<POP 155c0-155d6 Prologue> Σ0 ↓
<POP 155d6-155e8 RegCacheLoad> Σ0 ↓
<POP 155e8-15642 Naked> Σ0 ↓
<MI 155e8 MOVE.L 0x1b1c6,D0> {}
<POP 0x155ea LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 155f0 MOVE.W D0,-(A7)> Δ-2 {[2, 'D0']}
<Const 0x155f2 0xd.2> Δ-2 {[2, 'D0']|[#13]}
<Call 0x155f6 0x1020c> {[2, 'D0']|[#13]}
KC06_PortPutChar(port : Word ; b : char)
<POP 155f8-155fa StackAdj> Δ+4 {}
<MI 155fa MOVE.L 0x1b1c6,D0> {}
<POP 0x155fc LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 15602 MOVE.W D0,-(A7)> Δ-2 {[2, 'D0']}
<Const 0x15604 0x1b.2> Δ-2 {[2, 'D0']|[#27]}
<Call 0x15608 0x1020c> {[2, 'D0']|[#27]}
KC06_PortPutChar(port : Word ; b : char)
<POP 1560a-1560c StackAdj> Δ+4 {}
<MI 1560c MOVE.L 0x1b1c6,D0> {}
<POP 0x1560e LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 15614 MOVE.W D0,-(A7)> Δ-2 {[2, 'D0']}
<Const 0x15616 0x5b.2> Δ-2 {[2, 'D0']|[#91]}
<Call 0x1561a 0x1020c> {[2, 'D0']|[#91]}
KC06_PortPutChar(port : Word ; b : char)
<POP 1561c-1561e StackAdj> Δ+4 {}
<MI 1561e MOVE.L 0x1b1c6,D0> {}
<POP 0x15620 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 15626 MOVE.W D0,-(A7)> Δ-2 {[2, 'D0']}
<Const 0x15628 0x30.2> Δ-2 {[2, 'D0']|[#48]}
<Call 0x1562c 0x1020c> {[2, 'D0']|[#48]}
KC06_PortPutChar(port : Word ; b : char)
<POP 1562e-15630 StackAdj> Δ+4 {}
<MI 15630 MOVE.L 0x1b1c6,D0> {}
<POP 0x15632 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 15638 MOVE.W D0,-(A7)> Δ-2 {[2, 'D0']}
<Const 0x1563a 0x4b.2> Δ-2 {[2, 'D0']|[#75]}
<Call 0x1563e 0x1020c> {[2, 'D0']|[#75]}
KC06_PortPutChar(port : Word ; b : char)
<POP 15640-15642 StackAdj> Δ+4 {}
<POP 15642-1564a Epilogue> Σ0
@ 1564a
<LVAR 0x008 1(rw)>
<POP 1564a-15694 Body>
<POP 1564a-15660 Prologue> Σ0 ↓
<POP 15660-15664 RegCacheLoad> Σ0 ↓
<POP 15664-1566c Naked> Σ0 ↓ →0x15684
<MI 15664 MOVE.B (A6+0x8),D0> {}
<MI 15666 CMPI.B #0x20,D0> {}
<MI 1566a BCC 0x15684> {}
<POP 1566c-15684 Naked> Σ0 ↓
<Const 0x1566c 0x5e.2> Δ-2 {[#94]}
<Call 0x15670 0x15210> {[#94]}
_WriteConsoleChar(chr : char)
<POP 15674-15676 StackAdj> Δ+2 {}
<MI 15676 CLR.L D1> {}
<MI 15678 MOVE.B D0,D1> {}
<MI 1567a ADDI.W #0x0040,D1> {}
<POP 0x1567e LimitCheck 0x0 ≤ D1 ≤ 0xff> {}
<MI 15682 MOVE.B D1,(A6+0x8)> {}
<POP 15684-1568c Naked> Σ0 ↓ ←0x15664
<MI 15684 MOVE.B (A6+0x8),-(A7)> Δ-2 {[2, '(A6+0x8)']}
<Call 0x15686 0x15210> {[2, '(A6+0x8)']}
_WriteConsoleChar(chr : char)
<POP 1568a-1568c StackAdj> Δ+2 {}
<POP 1568c-15694 Epilogue> Σ0
@ 15694
_AskConsoleString(prompt : String) : String
<LVAR 0x00c 4(w)>
<LVAR 0x008 @ 4(r)>
<LVAR -0x004 1(rw)>
<LVAR -0x005 1(rw)>
<LVAR -0x010 @ 4(r)>
<POP 15694-158c0 Body>
<POP 15694-156aa Prologue> Σ0 ↓
<POP 156aa-156be RegCacheLoad> Σ0 ↓
<POP 156be-156ce Naked> Σ0 Δ-4 ↓
<MI 156be MOVE.W 0x1b5d0,D6> {}
<Pointer.fp 0x156c0 <LVAR -0x010 @ 4(r)>> Δ-4 {[@@-16]}
<Call 0x156c2 0x10cfa> {[@@-16]}
_NewString(VAR a : String)
<POP 156c8-156ca StackAdj> Δ+4 {}
<MI 156ca MOVEA.L (A6-0x10),A0> {}
<MI 156cc MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<POP 156ce-156d8 Naked> Σ-4 ↓ →0x156ea ←0x1571a ←0x157ca
<MI 156ce CLR.B (A6-0x5)> {[-4-]}
<MI 156d2 MOVEA.L (A6+0x8),A0> {[-4-]}
<MI 156d4 CMPA.W #0x01,A0> {[-4-]}
<MI 156d6 BEQ 0x156ea> {[-4-]}
<POP 156d8-156ea Naked> Σ-4 ↓
<POP 156d8-156da StackAdj> Δ-4 {[-8-]}
<MI 156da MOVE.L A0,-(A7)> Δ-4 {[-8-]|[4, 'A0']}
<Call 0x156dc 0x10eda> {[-8-]|[4, 'A0']}
_StringDup(a : String) : String
<POP 156e2-156e4 StackAdj> Δ+4 {[-8-]}
<Call 0x156e4 0x15392> {[-8-]}
_WriteConsoleString(str : String)
<POP 156e8-156ea StackAdj> Δ+4 {[-4-]}
<POP 156ea-156ee Naked> Σ-4 ↓ ←0x156ce
<MI 156ea MOVEA.L (A6-0x10),A0> {[-4-]}
<MI 156ec CLR.W (A0)> {[-4-]}
<POP 156ee-15702 Naked> Σ-4 ↓ →0x15708 ←0x1585c
<MI 156ee MOVEQ.L #0x00,D7> {[-4-]}
<POP 156f0-156f2 StackAdj> Δ-2 {[-6-]}
<Call 0x156f2 0x15286> {[-6-]}
_ReadChar() : Byte
<MI 156f6 MOVE.B (A7)+,D0> Δ+2 {[-4-]}
<MI 156f8 MOVE.B D0,(A6-0x4)> {[-4-]}
<MI 156fc CMPI.B #0x08,D0> {[-4-]}
<MI 15700 BEQ 0x15708> {[-4-]}
<POP 15702-15708 Naked> Σ-4 ↓ →0x15714
<MI 15702 CMPI.B #0x7f,D0> {[-4-]}
<MI 15706 BNE 0x15714> {[-4-]}
<POP 15708-15714 Naked> Σ-4 →0x15812 ←0x156ee
<MI 15708 MOVE.L (A6-0x10),-(A7)> Δ-4 {[-4-]|[4, '(A6-0x10)']}
<Call 0x1570a 0x154f6> {[-4-]|[4, '(A6-0x10)']}
HandleBackSpace(a : String)
<POP 1570e-15710 StackAdj> Δ+4 {[-4-]}
<MI 15710 BRA 0x15812> {[-4-]}
<POP 15714-1571a Naked> Σ-4 ↓ →0x15724 ←0x15702
<MI 15714 CMPI.B #0x15,D0> {[-4-]}
<MI 15718 BNE 0x15724> {[-4-]}
<POP 1571a-15720 Naked> Σ-4 →0x156ce
<Call 0x1571a 0x155c0> {[-4-]}
EraseEOL(void)
<MI 1571e BRA 0x156ce> {[-4-]}
<POP 15724-15728 Naked> Σ-4 ↓ →0x1572e ←0x15714
<MI 15724 CMP.B #0x12,D0> {[-4-]}
<MI 15726 BNE 0x1572e> {[-4-]}
<POP 15728-1572e Naked> Σ-4 →0x15812 ←0x157bc
<MI 15728 MOVEQ.L #0x01,D7> {[-4-]}
<MI 1572a BRA 0x15812> {[-4-]}
<POP 1572e-15734 Naked> Σ-4 ↓ →0x15772 ←0x15724
<MI 1572e CMPI.B #0x03,D0> {[-4-]}
<MI 15732 BNE 0x15772> {[-4-]}
<POP 15734-1573c Naked> Σ-4 ↓ →0x15772
<MI 15734 TST.B 0x20108> {[-4-]}
<MI 1573a BNE 0x15772> {[-4-]}
<POP 1573c-15772 Naked> Σ-4 →0x15812
<Blob 0x1573c [18] @> Δ-18 {[-4-]|[«18""»]}
<Const 0x1574c 0xe.2> Δ-2 {[-4-]|[«18""»]|[#14]}
<POP 15750-15752 StackAdj> Δ-4 {[-4-]|[«18""»]|[#14]|[-4-]}
<Lit 0x15752 17> {[-4-]|[«18""»]|[#14]|[$$Console interrupt]}
<Call 0x15764 0x14e18> {[-4-]|[«18""»]|[#14]|[$$Console interrupt]}
_PopProgram(status : Byte; msg : String)
<POP 1576a-1576e StackAdj> Δ+24 {[-4-]}
<MI 1576e BRA 0x15812> {[-4-]}
<POP 15772-15778 Naked> Σ-4 ↓ →0x15780 ←0x1572e ←0x15734
<MI 15772 CMPI.B #0x0d,D0> {[-4-]}
<MI 15776 BNE 0x15780> {[-4-]}
<POP 15778-15780 Naked> Σ-4 →0x15812
<MI 15778 MOVE.B #0x01,(A6-0x5)> {[-4-]}
<MI 1577c BRA 0x15812> {[-4-]}
<POP 15780-15786 Naked> Σ-4 ↓ →0x157c0 ←0x15772
<MI 15780 CMPI.B #0x10,D0> {[-4-]}
<MI 15784 BNE 0x157c0> {[-4-]}
<POP 15786-157a6 Naked> Σ-4 ↓ →0x157aa
<MI 15786 MOVEA.L (A6-0x10),A0> {[-4-]}
<POP 0x15788 LimitCheck 0x0 ≤ D6 ≤ 0x7> {[-4-]}
<MI 1578a CLR.L D0> {[-4-]}
<MI 1578c MOVE.W D6,D0> {[-4-]}
<MI 1578e ASL.L #0x7,D0> {[-4-]}
<MI 15790 LEA.L 0x1b1be,A1> {[-4-]}
<MI 15796 LEA.L (A1+D0.L+#0x12),A1> {[-4-]}
<BlockMove 128,A1,A0> {[-4-]}
<MI 157a2 TST.W D6> {[-4-]}
<MI 157a4 BNE 0x157aa> {[-4-]}
<POP 157a6-157aa Naked> Σ-4 →0x157bc
<MI 157a6 MOVEQ.L #0x07,D6> {[-4-]}
<MI 157a8 BRA 0x157bc> {[-4-]}
<POP 157aa-157bc Naked> Σ-4 ↓ ←0x15786
<MI 157aa CLR.L D0> {[-4-]}
<MI 157ac MOVE.W D6,D0> {[-4-]}
<MI 157ae SUBQ.L #0x1,D0> {[-4-]}
<POP 0x157b0 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {[-4-]}
<MI 157ba MOVE.W D0,D6> {[-4-]}
<POP 157bc-157c0 Naked> Σ-4 →0x15728 ←0x157a6
<MI 157bc BRA 0x15728> {[-4-]}
<POP 157c0-157ca Naked> Σ-4 ↓ →0x157fa ←0x15780
<MI 157c0 MOVEA.L (A7),A0> {[-4-]}
<MI 157c2 MOVE.W (A0),D0> {[-4-]}
<MI 157c4 CMPI.W #0x007e,D0> {[-4-]}
<MI 157c8 BNE 0x157fa> {[-4-]}
<POP 157ca-157fa Naked> Σ-4 →0x156ce
<Call 0x157ca 0x1540a> {[-4-]}
_WriteConsoleCrLf(void)
<Blob 0x157ce [22] @> Δ-22 {[-4-]|[«22""»]}
<POP 157da-157dc StackAdj> Δ-4 {[-4-]|[«22""»]|[-4-]}
<Lit 0x157dc 22> {[-4-]|[«22""»]|[$$Input string too long!]}
<Call 0x157ee 0x154b0> {[-4-]|[«22""»]|[$$Input string too long!]}
_WriteConsoleStringCrLf(str : String)
<POP 157f2-157f6 StackAdj> Δ+26 {[-4-]}
<MI 157f6 BRA 0x156ce> {[-4-]}
<POP 157fa-15812 Naked> Σ-4 ↓ ←0x157c0
<MI 157fa MOVE.L (A6-0x10),-(A7)> Δ-4 {[-4-]|[4, '(A6-0x10)']}
<MI 157fc MOVE.B (A6-0x4),-(A7)> Δ-2 {[-4-]|[4, '(A6-0x10)']|[2, '(A6-0x4)']}
<Call 0x15800 0x10d66> {[-4-]|[4, '(A6-0x10)']|[2, '(A6-0x4)']}
_AppendChar(MOD b : String; a : char)
<POP 15806-15808 StackAdj> Δ+4 {[-4-]|[-2-]}
<MI 15808 MOVE.B (A6-0x4),(A7)> {[-6-]}
<Call 0x1580c 0x1564a> {[-6-]}
<POP 15810-15812 StackAdj> Δ+2 {[-4-]}
<POP 15812-15816 Naked> Σ-4 ↓ →0x1585c ←0x15708 ←0x15728 ←0x1573c ←0x15778
<MI 15812 TST.B D7> {[-4-]}
<MI 15814 BEQ 0x1585c> {[-4-]}
<POP 15816-15836 Naked> Σ-4 Δ-4 ↓
<Call 0x15816 0x155c0> {[-4-]}
EraseEOL(void)
<POP 1581a-1581c StackAdj> Δ-4 {[-8-]}
<MI 1581c MOVE.L (A6+0x8),-(A7)> Δ-4 {[-8-]|[4, '(A6+0x8)']}
<Call 0x1581e 0x10eda> {[-8-]|[4, '(A6+0x8)']}
_StringDup(a : String) : String
<POP 15824-15826 StackAdj> Δ+4 {[-8-]}
<Call 0x15826 0x15392> {[-8-]}
_WriteConsoleString(str : String)
<POP 1582a-1582c StackAdj> Δ+4 {[-4-]}
<MI 1582c MOVEA.L (A7),A0> {[-4-]}
<MI 1582e MOVE.W (A0),D0> {[-4-]}
<MI 15830 EXTW.L D0> {[-4-]}
<MI 15832 MOVE.L D0,-(A7)> Δ-4 {[-4-]|[4, 'D0']}
<MI 15834 MOVEQ.L #0x01,D5> {[-4-]|[4, 'D0']}
<POP 15836-1583a Naked> Σ-8 ↓ →0x1585a ←0x1583a
<MI 15836 CMP.L (A7),D5> {[-8-]}
<MI 15838 BGT 0x1585a> {[-8-]}
<POP 1583a-1585a Naked> Σ-8 ↓ →0x15836
<MI 1583a MOVE.L D5,D0> {[-8-]}
<MI 1583c SUBQ.L #0x1,D0> {[-8-]}
<POP 0x1583e LimitCheck 0x0 ≤ D0 ≤ 0x7d> {[-8-]}
<MI 15848 MOVEA.L (A7+0x4),A0> {[-8-]}
<MI 1584c MOVE.B (A0+D0.L+#0x2),-(A7)> Δ-2 {[-8-]|[2, '(A0+D0.L+#0x2)']}
<Call 0x15850 0x1564a> {[-8-]|[2, '(A0+D0.L+#0x2)']}
<POP 15854-15856 StackAdj> Δ+2 {[-8-]}
<MI 15856 ADDQ.L #0x1,D5> {[-8-]}
<MI 15858 BVC 0x15836> {[-8-]}
<POP 1585a-1585c Naked> Σ-8 Δ+4 ↓ ←0x15836
<POP 1585a-1585c StackAdj> Δ+4 {[-4-]}
<POP 1585c-15864 Naked> Σ-4 ↓ →0x156ee ←0x15812
<MI 1585c TST.B (A6-0x5)> {[-4-]}
<MI 15860 BEQ 0x156ee> {[-4-]}
<POP 15864-1586c Naked> Σ-4 Δ+4 ↓ →0x15870
<POP 15864-15866 StackAdj> Δ+4 {}
<MI 15866 MOVE.W 0x1b5d0,D0> {}
<MI 15868 CMP.W #0x07,D0> {}
<MI 1586a BNE 0x15870> {}
<POP 1586c-15870 Naked> Σ0 →0x15882
<MI 1586c CLR.W 0x1b5d0> {}
<MI 1586e BRA 0x15882> {}
<POP 15870-15882 Naked> Σ0 ↓ ←0x15864
<MI 15870 CLR.L D1> {}
<MI 15872 MOVE.W D0,D1> {}
<MI 15874 ADDQ.L #0x1,D1> {}
<POP 0x15876 LimitCheck 0x0 ≤ D1 ≤ 0xffff> {}
<MI 15880 MOVE.W D1,0x1b5d0> {}
<POP 15882-158a6 Naked> Σ0 ↓ →0x158b0 ←0x1586c
<MI 15882 MOVE.W 0x1b5d0,D0> {}
<POP 0x15884 LimitCheck 0x0 ≤ D0 ≤ 0x7> {}
<MI 15886 CLR.L D1> {}
<MI 15888 MOVE.W D0,D1> {}
<MI 1588a ASL.L #0x7,D1> {}
<MI 1588c LEA.L 0x1b1be,A0> {}
<MI 15892 MOVEA.L (A6-0x10),A1> {}
<MI 15894 LEA.L (A0+D1.L+#0x12),A0> {}
<BlockMove 128,A1,A0> {}
<MI 158a0 MOVEA.L (A6+0x8),A0> {}
<MI 158a2 CMPA.W #0x01,A0> {}
<MI 158a4 BEQ 0x158b0> {}
<POP 158a6-158b0 Naked> Σ0 ↓
<Pointer.fp 0x158a6 <LVAR 0x008 @ 4(r)>> Δ-4 {[@@8]}
<Call 0x158a8 0x10d36> {[@@8]}
_FreeString(VAR a : String)
<POP 158ae-158b0 StackAdj> Δ+4 {}
<POP 158b0-158b8 Naked> Σ0 ↓ ←0x15882
<Call 0x158b0 0x1540a> {}
_WriteConsoleCrLf(void)
<MI 158b4 MOVE.L (A6-0x10),(A6+0xc)> {}
<POP 158b8-158c0 Epilogue> Σ0
@ 158c0
_AskOnConsoleInt(prompt: String) : Long
<LVAR 0x00c 4(w)>
<LVAR 0x008 @ 4(r)>
<LVAR -0x004 @ 1(r)>
<LVAR -0x008 @ 4(r)>
<POP 158c0-15950 Body>
<POP 158c0-158d6 Prologue> Σ0 ↓
<POP 158d6-158da RegCacheLoad> Σ0 ↓
<POP 158da-15902 Naked> Σ0 ↓ →0x15932 ←0x15932
<POP 158da-158dc StackAdj> Δ-8 {[-8-]}
<MI 158dc MOVE.L (A6+0x8),-(A7)> Δ-4 {[-8-]|[4, '(A6+0x8)']}
<Call 0x158e0 0x10eda> {[-8-]|[4, '(A6+0x8)']}
_StringDup(a : String) : String
<POP 158e6-158e8 StackAdj> Δ+4 {[-8-]}
<Call 0x158e8 0x15694> {[-8-]}
_AskConsoleString(prompt : String) : String
<POP 158ec-158ee StackAdj> Δ+4 {[-4-]}
<Pointer.fp 0x158ee <LVAR -0x004 @ 1(r)>> Δ-4 {[-4-]|[@@-4]}
<Pointer.fp 0x158f0 <LVAR -0x008 @ 4(r)>> Δ-4 {[-4-]|[@@-4]|[@@-8]}
<Call 0x158f4 0x1127c> {[-4-]|[@@-4]|[@@-8]}
_String2Long(src : String; VAR status : Bool; VAR retval : Long)
<POP 158fa-158fe StackAdj> Δ+12 {}
<MI 158fe TST.B (A6-0x4)> {}
<MI 15900 BNE 0x15932> {}
<POP 15902-15932 Naked> Σ0 ↓
<Blob 0x15902 [48] @> Δ-48 {[«48""»]}
<POP 15914-15916 StackAdj> Δ-4 {[«48""»]|[-4-]}
<Lit 0x15916 47> {[«48""»]|[$$Integer input expected, bad syntax, or too big.]}
<Call 0x1592a 0x154b0> {[«48""»]|[$$Integer input expected, bad syntax, or too big.]}
_WriteConsoleStringCrLf(str : String)
<POP 1592e-15932 StackAdj> Δ+52 {}
<POP 15932-15936 Naked> Σ0 ↓ →0x158da ←0x158da
<MI 15932 TST.B (A6-0x4)> {}
<MI 15934 BEQ 0x158da> {}
<POP 15936-15948 Naked> Σ0 ↓
<Pointer.fp 0x15936 <LVAR 0x008 @ 4(r)>> Δ-4 {[@@8]}
<Call 0x1593a 0x10d36> {[@@8]}
_FreeString(VAR a : String)
<POP 15940-15942 StackAdj> Δ+4 {}
<MI 15942 MOVE.L (A6-0x8),(A6+0xc)> {}
<POP 15948-15950 Epilogue> Σ0
@ 15950
_AskOnConsoleIntRange(prompt: String; low : Long; High : Long) : Long
<LVAR 0x014 4(w)>
<LVAR 0x010 @ 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 15950-15a16 Body>
<POP 15950-15966 Prologue> Σ0 ↓
<POP 15966-15970 RegCacheLoad> Σ0 ↓
<POP 15970-1598e Naked> Σ0 ↓ →0x15996 ←0x159f8
<POP 15970-15972 StackAdj> Δ-8 {[-8-]}
<MI 15972 MOVE.L (A6+0x10),-(A7)> Δ-4 {[-8-]|[4, '(A6+0x10)']}
<Call 0x15976 0x10eda> {[-8-]|[4, '(A6+0x10)']}
_StringDup(a : String) : String
<POP 1597c-1597e StackAdj> Δ+4 {[-8-]}
<Call 0x1597e 0x158c0> {[-8-]}
_AskOnConsoleInt(prompt: String) : Long
<POP 15982-15984 StackAdj> Δ+4 {[-4-]}
<MI 15984 MOVE.L (A7)+,D7> Δ+4 {}
<MI 15986 MOVEQ.L #0x00,D6> {}
<MI 15988 CMP.L (A6+0xc),D7> {}
<MI 1598c BLT 0x15996> {}
<POP 1598e-15994 Naked> Σ0 ↓ →0x15996
<MI 1598e CMP.L (A6+0x8),D7> {}
<MI 15992 BGT 0x15996> {}
<POP 15994-15996 Naked> Σ0 ↓
<MI 15994 ADDQ.B #0x1,D6> {}
<POP 15996-1599a Naked> Σ0 ↓ →0x159f8 ←0x15970 ←0x1598e
<MI 15996 TST.B D6> {}
<MI 15998 BNE 0x159f8> {}
<POP 1599a-159f8 Naked> Σ0 ↓
<Blob 0x1599a [34] @> Δ-34 {[«34""»]}
<Blob 0x159a6 [2] @> Δ-2 {[«34""»]|[«2""»]}
<Blob 0x159aa [2] @> Δ-2 {[«34""»]|[«2""»]|[«2""»]}
<POP 159ae-159b0 StackAdj> Δ-8 {[«34""»]|[«2""»]|[«2""»]|[-8-]}
<Lit 0x159b0 34> {[«34""»]|[«2""»]|[«2""»]|[-4-]|[$$Integer input expected, in range []}
<MI 159bc MOVE.L (A6+0xc),(A7)> {[«34""»]|[«2""»]|[«2""»]|[-4-]|[4, '(A6+0xc)']}
<POP 159ba-159bc StackAdj> Δ-8 {[«34""»]|[«2""»]|[«2""»]|[-4-]|[4, '(A6+0xc)']|[-8-]}
<Call 0x159c0 0x110c0> {[«34""»]|[«2""»]|[«2""»]|[-4-]|[4, '(A6+0xc)']|[-8-]}
_Long2String(a : Long) : String
<Lit 0x159c6 2> {[«34""»]|[«2""»]|[«2""»]|[-4-]|[4, '(A6+0xc)']|[-4-]|[$$..]}
<MI 159d0 MOVE.L (A6+0x8),(A7)> {[«34""»]|[«2""»]|[«2""»]|[-4-]|[4, '(A6+0xc)']|[-4-]|[4, '(A6+0x8)']}
<POP 159ce-159d0 StackAdj> Δ-8 {[«34""»]|[«2""»]|[«2""»]|[-4-]|[4, '(A6+0xc)']|[-4-]|[4, '(A6+0x8)']|[-8-]}
<Call 0x159d4 0x110c0> {[«34""»]|[«2""»]|[«2""»]|[-4-]|[4, '(A6+0xc)']|[-4-]|[4, '(A6+0x8)']|[-8-]}
_Long2String(a : Long) : String
<Lit 0x159da 2> {[«34""»]|[«2""»]|[«2""»]|[-4-]|[4, '(A6+0xc)']|[-4-]|[4, '(A6+0x8)']|[-4-]|[$$] ]}
<Call 0x159e6 0x1103c> {[«34""»]|[«2""»]|[«2""»]|[-4-]|[4, '(A6+0xc)']|[-4-]|[4, '(A6+0x8)']|[-4-]|[$$] ]}
_StringCat5(a, b, c, d, e : String) : String
<POP 159ec-159f0 StackAdj> Δ+20 {[«34""»]|[«2""»]|[«2""»]|[-4-]}
<Call 0x159f0 0x154b0> {[«34""»]|[«2""»]|[«2""»]|[-4-]}
_WriteConsoleStringCrLf(str : String)
<POP 159f4-159f8 StackAdj> Δ+42 {}
<POP 159f8-159fe Naked> Σ0 ↓ →0x15970 ←0x15996
<MI 159f8 TST.B D6> {}
<MI 159fa BEQ 0x15970> {}
<POP 159fe-15a0e Naked> Σ0 ↓
<Pointer.fp 0x159fe <LVAR 0x010 @ 4(r)>> Δ-4 {[@@16]}
<Call 0x15a02 0x10d36> {[@@16]}
_FreeString(VAR a : String)
<POP 15a08-15a0a StackAdj> Δ+4 {}
<MI 15a0a MOVE.L D7,(A6+0x14)> {}
<POP 15a0e-15a16 Epilogue> Σ0
@ 15a16
_AskOnConsoleYesNo(prompt : String; default : Bool) : Bool
<LVAR 0x00e 1(rw)>
<LVAR 0x00a @ 4(r)>
<LVAR 0x008 1(r)>
<LVAR -0x008 @ 4(rw)>
<POP 15a16-15b0c Body>
<POP 15a16-15a2c Prologue> Σ0 ↓
<POP 15a2c-15a38 RegCacheLoad> Σ0 ↓
<POP 15a38-15a96 Naked> Σ0 ↓ →0x15a9a ←0x15af2
<MI 15a38 MOVE.B (A6+0x8),D0> {}
<MI 15a3c EXTB.W D0> {}
<MI 15a3e MOVEQ.L #0x0a,D1> {}
<MI 15a40 MULS.W D0,D1> {}
<MI 15a42 LEA.L 0x151fc,A0> {}
<Blob 0x15a46 [10] (A0+D1.W)> Δ-10 {[«10»]}
<POP 15a56-15a5a StackAdj> Δ-16 {[«10»]|[-16-]}
<MI 15a5a MOVE.L (A6+0xa),-(A7)> Δ-4 {[«10»]|[-16-]|[4, '(A6+0xa)']}
<Call 0x15a5e 0x10eda> {[«10»]|[-16-]|[4, '(A6+0xa)']}
_StringDup(a : String) : String
<Lit 0x15a64> {[«10»]|[-16-]|[$$…]}
<Pointer.sp 0x15a64 20> Δ-4
<Const 0x15a68 0x1.2> Δ-2
<Const 0x15a6a 0xa.2> Δ-2
<Call 0x15a6c 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 15a72-15a74 StackAdj> Δ+8
<Call 0x15a74 0x10f2c> {[«10»]|[-16-]|[$$…]}
_StringCat2(a, b : String) : String
<POP 15a7a-15a7c StackAdj> Δ+8 {[«10»]|[-12-]}
<Call 0x15a7c 0x15694> {[«10»]|[-12-]}
_AskConsoleString(prompt : String) : String
<POP 15a80-15a82 StackAdj> Δ+4 {[«10»]|[-8-]}
<Call 0x15a82 0x113b0> {[«10»]|[-8-]}
_ToUpper(a : String) : String
<POP 15a88-15a8a StackAdj> Δ+4 {[«10»]|[-4-]}
<MI 15a8a MOVE.L (A7)+,(A6-0x8)> Δ+4 {[«10»]}
<POP 15a8c-15a8e StackAdj> Δ+10 {}
<MI 15a8e MOVEQ.L #0x01,D7> {}
<MI 15a90 MOVEA.L (A6-0x8),A0> {}
<MI 15a92 TST.W (A0)> {}
<MI 15a94 BNE 0x15a9a> {}
<POP 15a96-15a9a Naked> Σ0 →0x15abc
<MI 15a96 MOVE.B D0,(A6+0xe)> {}
<MI 15a98 BRA 0x15abc> {}
<POP 15a9a-15aa0 Naked> Σ0 ↓ →0x15aa2 ←0x15a38
<MI 15a9a MOVE.W (A0),D0> {}
<MI 15a9c CMP.W #0x01,D0> {}
<MI 15a9e BEQ 0x15aa2> {}
<POP 15aa0-15aa2 Naked> Σ0 →0x15aba
<MI 15aa0 BRA 0x15aba> {}
<POP 15aa2-15aac Naked> Σ0 ↓ →0x15ab0 ←0x15a9a
<MI 15aa2 MOVE.B (A0+0x2),D6> {}
<MI 15aa6 CMPI.B #0x59,D6> {}
<MI 15aaa BNE 0x15ab0> {}
<POP 15aac-15ab0 Naked> Σ0 →0x15abc
<MI 15aac MOVE.B #0x01,(A6+0xe)> {}
<MI 15aae BRA 0x15abc> {}
<POP 15ab0-15ab6 Naked> Σ0 ↓ →0x15aba ←0x15aa2
<MI 15ab0 CMPI.B #0x4e,D6> {}
<MI 15ab4 BNE 0x15aba> {}
<POP 15ab6-15aba Naked> Σ0 →0x15abc
<MI 15ab6 CLR.B (A6+0xe)> {}
<MI 15ab8 BRA 0x15abc> {}
<POP 15aba-15abc Naked> Σ0 ↓ ←0x15aa0 ←0x15ab0
<MI 15aba MOVEQ.L #0x00,D7> {}
<POP 15abc-15aca Naked> Σ0 ↓ →0x15af2 ←0x15a96 ←0x15aac ←0x15ab6
<Pointer.fp 0x15abc <LVAR -0x008 @ 4(rw)>> Δ-4 {[@@-8]}
<Call 0x15abe 0x10d36> {[@@-8]}
_FreeString(VAR a : String)
<POP 15ac4-15ac6 StackAdj> Δ+4 {}
<MI 15ac6 TST.B D7> {}
<MI 15ac8 BNE 0x15af2> {}
<POP 15aca-15af2 Naked> Σ0 ↓
<Blob 0x15aca [20] @> Δ-20 {[«20""»]}
<POP 15ad6-15ad8 StackAdj> Δ-4 {[«20""»]|[-4-]}
<Lit 0x15ad8 20> {[«20""»]|[$$Expected 'Y' or 'N'!]}
<Call 0x15aea 0x154b0> {[«20""»]|[$$Expected 'Y' or 'N'!]}
_WriteConsoleStringCrLf(str : String)
<POP 15aee-15af2 StackAdj> Δ+24 {}
<POP 15af2-15af8 Naked> Σ0 ↓ →0x15a38 ←0x15abc
<MI 15af2 TST.B D7> {}
<MI 15af4 BEQ 0x15a38> {}
<POP 15af8-15b04 Naked> Σ0 ↓
<Pointer.fp 0x15af8 <LVAR 0x00a @ 4(r)>> Δ-4 {[@@10]}
<Call 0x15afc 0x10d36> {[@@10]}
_FreeString(VAR a : String)
<POP 15b02-15b04 StackAdj> Δ+4 {}
<POP 15b04-15b0c Epilogue> Σ0
@ 15b0c
_SetConsoleConfig(a : Long)
<LVAR 0x008 4(r)>
<POP 15b0c-15b2a Body>
<POP 15b0c-15b1e Prologue> Σ0 ↓
<POP 15b1e-15b26 Naked> Σ0 ↓
<MI 15b1e MOVE.L (A6+0x8),0x1b1c6> {}
<POP 15b26-15b2a Epilogue> Σ0
@ 15b2a
_GetConsoleConfig() : Long
<LVAR 0x008 4(w)>
<POP 15b2a-15b48 Body>
<POP 15b2a-15b3c Prologue> Σ0 ↓
<POP 15b3c-15b44 Naked> Σ0 ↓
<MI 15b3c MOVE.L 0x1b1c6,(A6+0x8)> {}
<POP 15b44-15b48 Epilogue> Σ0
@ 15b48
_SetConsolePrinter(a: Byte; b: Word; c: Word)
<LVAR 0x00c 1(r)>
<LVAR 0x00a 2(r)>
<LVAR 0x008 2(r)>
<POP 15b48-15b84 Body>
<POP 15b48-15b5e Prologue> Σ0 ↓
<POP 15b5e-15b7c Naked> Σ0 ↓
<MI 15b5e MOVE.B (A6+0xc),0x1b1ca> {}
<MI 15b66 MOVE.W (A6+0xa),D0> {}
<POP 0x15b6a LimitCheck 0x0 ≤ D0 ≤ 0xff> {}
<MI 15b6e MOVE.W D0,0x1b1cc> {}
<MI 15b74 MOVE.W (A6+0x8),0x1b1ce> {}
<POP 15b7c-15b84 Epilogue> Σ0
@ 15b84
_FSCALL_10400
<LVAR -0x00a @>
<LVAR -0x00c @ 1(r)>
<POP 15b84-15c7e Body>
<POP 15b84-15b9a Prologue> Σ0 ↓
<POP 15b9a-15bac RegCacheLoad> Σ0 ↓
<POP 15bac-15bc6 Naked> Σ0 ↓ →0x15bd6
<Pointer.fp 0x15bac <LVAR -0x00c @ 1(r)>> Δ-4 {[@@-12]}
<Pointer.fp 0x15bb0 <LVAR -0x00a @>> Δ-4 {[@@-12]|[@@-10]}
<Call 0x15bb4 0x10200> {[@@-12]|[@@-10]}
KC00_GetBootDev(VAR a : Byte; VAR b : Word)
<POP 15bba-15bbc StackAdj> Δ+8 {}
<MI 15bbc MOVE.B (A6-0xc),D0> {}
<MI 15bc0 CMPI.B #0x02,D0> {}
<MI 15bc4 BNE 0x15bd6> {}
<POP 15bc6-15bd0 Naked> Σ0 ↓ →0x15bd2
<MI 15bc6 MOVE.L 0x1b1c6,D0> {}
<MI 15bc8 CMPI.L #0x00000003,D0> {}
<MI 15bce BEQ 0x15bd2> {}
<POP 15bd0-15bd2 Naked> Σ0 ↓
<MI 15bd0 MOVE.L #0x01,0x1b1c6> {}
<POP 15bd2-15bd6 Naked> Σ0 →0x15c76 ←0x15bc6
<MI 15bd2 BRA 0x15c76> {}
<POP 15bd6-15c10 Naked> Σ0 ↓ →0x15c64 ←0x15bac
<MI 15bd6 MOVE.L #0x01,0x1b1c6> {}
<Blob 0x15bd8 [38] @> Δ-38 {[«38""»]}
<POP 15be4-15be6 StackAdj> Δ-6 {[«38""»]|[-6-]}
<Lit 0x15be6 38> {[«38""»]|[-2-]|[$$Enable line printer for console output]}
<POP 15bf4-15bf6 StackAdj> Δ-2 {[«38""»]|[-2-]|[$$Enable line printer for console output]|[-2-]}
<MI 15bf6 CLR.B (A7)> {[«38""»]|[-2-]|[$$Enable line printer for console output]|[-2-]}
<Call 0x15bf8 0x15a16> {[«38""»]|[-2-]|[$$Enable line printer for console output]|[-2-]}
_AskOnConsoleYesNo(prompt : String; default : Bool) : Bool
<POP 15bfc-15bfe StackAdj> Δ+6 {[«38""»]|[-2-]}
<MI 15bfe MOVE.B (A7)+,D0> Δ+2 {[«38""»]}
<MI 15c00 EXTB.W D0> {[«38""»]}
<POP 0x15c02 LimitCheck 0x0 ≤ D0 ≤ 0x1> {[«38""»]}
<POP 15c04-15c06 StackAdj> Δ+38 {}
<MI 15c06 MOVE.B D0,0x1b1ca> {}
<MI 15c0c TST.B D0> {}
<MI 15c0e BEQ 0x15c64> {}
<POP 15c10-15c64 Naked> Σ0 ↓
<Blob 0x15c10 [28] @> Δ-28 {[«28""»]}
<POP 15c1c-15c1e StackAdj> Δ-8 {[«28""»]|[-8-]}
<Lit 0x15c1e 28> {[«28""»]|[-4-]|[$$Enter printer line number :_]}
<Const 0x15c2e 0x10.4> Δ-4 {[«28""»]|[-4-]|[$$Enter printer line number :_]|[##16]}
<Const 0x15c32 0xff.4> Δ-4 {[«28""»]|[-4-]|[$$Enter printer line number :_]|[##16]|[##255]}
<Call 0x15c36 0x15950> {[«28""»]|[-4-]|[$$Enter printer line number :_]|[##16]|[##255]}
_AskOnConsoleIntRange(prompt: String; low : Long; High : Long) : Long
<POP 15c3a-15c3e StackAdj> Δ+12 {[«28""»]|[-4-]}
<MI 15c3e MOVE.L (A7)+,D0> Δ+4 {[«28""»]}
<POP 0x15c40 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {[«28""»]}
<POP 15c4a-15c4c StackAdj> Δ+28 {}
<MI 15c4c MOVE.W D0,D7> {}
<MI 15c4e MOVE.W D7,D0> {}
<MI 15c50 LSR.W #0x4,D0> {}
<MI 15c52 SUBQ.W #0x1,D0> {}
<POP 0x15c54 LimitCheck 0x0 ≤ D0 ≤ 0xff> {}
<MI 15c58 MOVE.W D0,0x1b1cc> {}
<MI 15c5e MOVE.W D7,0x1b1ce> {}
<MI 15c60 ANDI.W #0x000f,0x1b1ce> {}
<POP 15c64-15c76 Naked> Σ0 ↓ ←0x15bd6
<MI 15c64 MOVE.B #0x01,0x20108> {}
<Const 0x15c6a 0x1.2> Δ-2 {[#1]}
<Const 0x15c6c 0x1.2> Δ-2 {[#1]|[#1]}
<Call 0x15c6e 0x10210> {[#1]|[#1]}
KC08_PortSomething(port: Word; b: Byte)
<POP 15c74-15c76 StackAdj> Δ+4 {}
<POP 15c76-15c7e Epilogue> Σ0 ←0x15bd2
@ 15c7e
_SetSomeKindOfFlag(a : Byte)
<LVAR 0x008 1(r)>
<POP 15c7e-15ca8 Body>
<POP 15c7e-15c90 Prologue> Σ0 ↓
<POP 15c90-15ca4 Naked> Σ0 ↓
<MI 15c90 MOVE.B (A6+0x8),0x20108> {}
<MI 15c98 NEG.B 0x20108> {}
<MI 15c9e ADDQ.B #0x1,0x20108> {}
<POP 15ca4-15ca8 Epilogue> Σ0
@ 16056
DiskIO(a: Byte; dst: Pointer; c: Word; wait: Byte; VAR status: Byte)
<LVAR 0x014 1(r)>
<LVAR 0x010 4(r)>
<LVAR 0x00e 2(r)>
<LVAR 0x00c 1(r)>
<LVAR 0x008 4(r)>
<LVAR -0x006 2(w)>
<LVAR -0x008 2(w)>
<LVAR -0x00e 2(w)>
<LVAR -0x012 @>
<POP 16056-160c8 Body>
<POP 16056-1606c Prologue> Σ0 ↓
<POP 1606c-1606e RegCacheLoad> Σ0 ↓
<POP 1606e-160b0 Naked> Σ0 ↓ →0x160c0
<MI 1606e MOVE.W #0x3,(A6-0xe)> {}
<MI 16074 MOVE.W 0x1b5ec,D0> {}
<MI 1607a ASL.W #0x8,D0> {}
<MI 1607c MOVE.B (A6+0x14),D1> {}
<MI 16080 EXTB.W D1> {}
<MI 16082 ADD.W D0,D1> {}
<POP 0x16084 LimitCheck 0x0 ≤ D1 ≤ 0xffff> {}
<MI 1608c MOVE.W D1,(A6-0x8)> {}
<MI 16090 MOVE.W (A6+0xe),(A6-0x6)> {}
<Pointer.fp 0x16096 <LVAR -0x012 @>> Δ-4 {[@@-18]}
<MI 1609a MOVE.L (A6+0x10),-(A7)> Δ-4 {[@@-18]|[4, '(A6+0x10)']}
<Const 0x1609e 0x1.2> Δ-2 {[@@-18]|[4, '(A6+0x10)']|[#1]}
<Call 0x160a0 0x10204> {[@@-18]|[4, '(A6+0x10)']|[#1]}
KC02_Start_Disk_IO(desc : Pointer; dst : Pointer ; c : W)
<POP 160a6-160aa StackAdj> Δ+10 {}
<MI 160aa TST.B (A6+0xc)> {}
<MI 160ae BEQ 0x160c0> {}
<POP 160b0-160c0 Naked> Σ0 ↓
<Const 0x160b0 0x1.2> Δ-2 {[#1]}
<MI 160b2 MOVEA.L (A6+0x8),A0> {[#1]}
<MI 160b6 PEA.L (A0)> Δ-4 {[#1]|[4, '^(A0)']}
<Call 0x160b8 0x10206> {[#1]|[4, '^(A0)']}
KC03_Wait_Disk_IO(a : W; VAR status : Byte)
<POP 160be-160c0 StackAdj> Δ+6 {}
<POP 160c0-160c8 Epilogue> Σ0 ←0x1606e
@ 160c8
<LVAR 0x008 1(rw)>
<LVAR -0x004 @ 1(r)>
<LVAR -0x00c 2(r)>
<LVAR -0x018 @>
<POP 160c8-16124 Body>
<POP 160c8-160de Prologue> Σ0 ↓
<POP 160de-160fe Naked> Σ0 ↓ →0x1610a
<MI 160de CLR.B -(A7)> Δ-2 {[#0]}
<MI 160e0 LEA.L (A6-0x18),A0> {[#0]}
<MI 160e4 MOVE.L A0,-(A7)> Δ-4 {[#0]|[4, 'A0']}
<MI 160e6 CLR.W -(A7)> Δ-2 {[#0]|[4, 'A0']|[#0]}
<Const 0x160e8 0x1.2> Δ-2 {[#0]|[4, 'A0']|[#0]|[#1]}
<Pointer.fp 0x160ec <LVAR -0x004 @ 1(r)>> Δ-4 {[#0]|[4, 'A0']|[#0]|[#1]|[@@-4]}
<Call 0x160f0 0x16056> {[#0]|[4, 'A0']|[#0]|[#1]|[@@-4]}
DiskIO(a: Byte; dst: Pointer; c: Word; wait: Byte; VAR status: Byte)
<POP 160f4-160f8 StackAdj> Δ+14 {}
<MI 160f8 TST.B (A6-0x4)> {}
<MI 160fc BNE 0x1610a> {}
<POP 160fe-1610a Naked> Σ0 ↓
<Const 0x160fe 0xc.4> Δ-4 {[##12]}
<Call 0x16102 0x10220> {[##12]}
KC10_Panic(code : Long)
<POP 16108-1610a StackAdj> Δ+4 {}
<POP 1610a-16118 Naked> Σ0 ↓ →0x1611c ←0x160de
<MI 1610a CLR.B (A6+0x8)> {}
<MI 1610e MOVE.W (A6-0xc),D0> {}
<MI 16112 ANDI.W #0x0004,D0> {}
<MI 16116 BEQ 0x1611c> {}
<POP 16118-1611c Naked> Σ0 ↓
<MI 16118 ADDQ.B #0x1,(A6+0x8)> {}
<POP 1611c-16124 Epilogue> Σ0 ←0x1610a
@ 16124
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 16124-16184 Body>
<POP 16124-1613a Prologue> Σ0 ↓
<POP 1613a-1614e Naked> Σ0 ↓ →0x16152
<MI 1613a MOVEA.L (A6+0x8),A0> {}
<MI 1613e CLR.B (A0)> {}
<MI 16140 MOVEA.L (A6+0xc),A1> {}
<MI 16144 MOVE.W (A1+0xe),D0> {}
<MI 16148 ANDI.W #0x0008,D0> {}
<MI 1614c BEQ 0x16152> {}
<POP 1614e-16152 Naked> Σ0 ↓
<MI 1614e MOVE.B #0x0a,(A0)> {}
<POP 16152-1615a Naked> Σ0 ↓ →0x1615e ←0x1613a
<MI 16152 MOVE.W (A1),D0> {}
<MI 16154 ANDI.W #0x0040,D0> {}
<MI 16158 BEQ 0x1615e> {}
<POP 1615a-1615e Naked> Σ0 ↓
<MI 1615a MOVE.B #0x05,(A0)> {}
<POP 1615e-16168 Naked> Σ0 ↓ →0x1617c ←0x16152
<MI 1615e MOVE.W (A1+0xa),D0> {}
<MI 16162 ANDI.W #0x0020,D0> {}
<MI 16166 BEQ 0x1617c> {}
<POP 16168-1617c Naked> Σ0 ↓
<MI 16168 MOVE.B #0x0b,(A0)> {}
<Const 0x1616c 0x1.2> Δ-2 {[#1]}
<MI 16170 MOVEA.L A1,A0> {[#1]}
<MI 16172 MOVE.L A0,-(A7)> Δ-4 {[#1]|[4, 'A0']}
<Call 0x16174 0x144e6> {[#1]|[4, 'A0']}
_Write_ERROR_LOG(VAR a : Bool; MOD b : Pointer)
<POP 1617a-1617c StackAdj> Δ+6 {}
<POP 1617c-16184 Epilogue> Σ0 ←0x1615e
@ 16184
Write_ERROR_LOG_true(a: Pointer)
<LVAR 0x008 4(r)>
<POP 16184-161b4 Body>
<POP 16184-1619a Prologue> Σ0 ↓
<POP 1619a-161ac Naked> Σ0 ↓
<Const 0x1619a 0x1.2> Δ-2 {[#1]}
<MI 1619e MOVEA.L (A6+0x8),A0> {[#1]}
<MI 161a2 MOVE.L A0,-(A7)> Δ-4 {[#1]|[4, 'A0']}
<Call 0x161a4 0x144e6> {[#1]|[4, 'A0']}
_Write_ERROR_LOG(VAR a : Bool; MOD b : Pointer)
<POP 161aa-161ac StackAdj> Δ+6 {}
<POP 161ac-161b4 Epilogue> Σ0
@ 161b4
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 161b4-1626e Body>
<POP 161b4-161ca Prologue> Σ0 ↓
<POP 161ca-161de RegCacheLoad> Σ0 ↓
<POP 161de-161f0 Naked> Σ0 ↓ →0x161f4
<MI 161de MOVEA.L (A6+0xc),A0> {}
<MI 161e2 MOVE.W (A0+0xe),D0> {}
<MI 161e6 AND.W #0x01,D0> {}
<MI 161e8 MOVE.W (A0+0x8),D1> {}
<MI 161ec AND.W #0x2003,D1> {}
<MI 161ee BNE 0x161f4> {}
<POP 161f0-161f4 Naked> Σ0 ↓ →0x161f8
<MI 161f0 TST.W D0> {}
<MI 161f2 BEQ 0x161f8> {}
<POP 161f4-161f8 Naked> Σ0 ↓ ←0x161de
<MI 161f4 MOVEA.L (A6+0x8),A1> {}
<MI 161f6 CLR.B (A1)> {}
<POP 161f8-16202 Naked> Σ0 ↓ →0x16208 ←0x161f0
<MI 161f8 MOVE.W (A0+0x8),D1> {}
<MI 161fc ANDI.W #0x1000,D1> {}
<MI 16200 BEQ 0x16208> {}
<POP 16202-16208 Naked> Σ0 ↓
<MI 16202 MOVEA.L (A6+0x8),A1> {}
<MI 16204 MOVE.B #0x08,(A1)> {}
<POP 16208-16212 Naked> Σ0 ↓ →0x16230 ←0x161f8
<MI 16208 MOVE.W (A0+0x8),D1> {}
<MI 1620c ANDI.W #0x4000,D1> {}
<MI 16210 BEQ 0x16230> {}
<POP 16212-16218 Naked> Σ0 ↓ →0x1621e
<MI 16212 MOVE.B 0x1b5ea,D1> {}
<MI 16214 CMP.B #0x07,D1> {}
<MI 16216 BEQ 0x1621e> {}
<POP 16218-1621e Naked> Σ0 ↓ →0x16224
<MI 16218 CMPI.B #0x09,D1> {}
<MI 1621c BNE 0x16224> {}
<POP 1621e-16224 Naked> Σ0 →0x16230 ←0x16212
<MI 1621e MOVEA.L (A6+0x8),A1> {}
<MI 16220 CLR.B (A1)> {}
<MI 16222 BRA 0x16230> {}
<POP 16224-16228 Naked> Σ0 ↓ →0x1622c ←0x16218
<MI 16224 CMP.B #0x02,D1> {}
<MI 16226 BEQ 0x1622c> {}
<POP 16228-1622c Naked> Σ0 ↓ →0x16230
<MI 16228 CMP.B #0x2003,D1> {}
<MI 1622a BNE 0x16230> {}
<POP 1622c-16230 Naked> Σ0 ↓ ←0x16224
<MI 1622c MOVEA.L (A6+0x8),A1> {}
<MI 1622e MOVE.B #0x07,(A1)> {}
<POP 16230-1623a Naked> Σ0 ↓ →0x1624c ←0x16208 ←0x1621e ←0x16228
<MI 16230 MOVE.W (A0+0x8),D1> {}
<MI 16234 ANDI.W #0x8000,D1> {}
<MI 16238 BEQ 0x1624c> {}
<POP 1623a-16240 Naked> Σ0 ↓ →0x16246
<MI 1623a MOVE.B 0x1b5ea,D1> {}
<MI 1623c CMP.B #0x02,D1> {}
<MI 1623e BEQ 0x16246> {}
<POP 16240-16246 Naked> Σ0 ↓ →0x1624c
<MI 16240 MOVE.B 0x1b5ea,D1> {}
<MI 16242 CMP.B #0x2003,D1> {}
<MI 16244 BNE 0x1624c> {}
<POP 16246-1624c Naked> Σ0 ↓ ←0x1623a
<MI 16246 MOVEA.L (A6+0x8),A1> {}
<MI 16248 MOVE.B #0x06,(A1)> {}
<POP 1624c-16256 Naked> Σ0 ↓ →0x16266 ←0x16230 ←0x16240
<MI 1624c MOVE.W (A0+0x8),D1> {}
<MI 16250 ANDI.W #0xf003,D1> {}
<MI 16254 BNE 0x16266> {}
<POP 16256-1625a Naked> Σ0 ↓ →0x16266
<MI 16256 TST.W D0> {}
<MI 16258 BNE 0x16266> {}
<POP 1625a-16266 Naked> Σ0 ↓
<Const 0x1625a 0x1.2> Δ-2 {[#1]}
<MI 1625c MOVE.L A0,-(A7)> Δ-4 {[#1]|[4, 'A0']}
<Call 0x1625e 0x144e6> {[#1]|[4, 'A0']}
_Write_ERROR_LOG(VAR a : Bool; MOD b : Pointer)
<POP 16264-16266 StackAdj> Δ+6 {}
<POP 16266-1626e Epilogue> Σ0 ←0x1624c ←0x16256
@ 1626e
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 1626e-162ee Body>
<POP 1626e-16284 Prologue> Σ0 ↓
<POP 16284-1628a RegCacheLoad> Σ0 ↓
<POP 1628a-16298 Naked> Σ0 ↓ →0x1629c
<MI 1628a MOVEA.L (A6+0xc),A0> {}
<MI 1628e MOVE.W (A0+0x8),D0> {}
<MI 16292 ANDI.W #0x0002,D0> {}
<MI 16296 BEQ 0x1629c> {}
<POP 16298-1629c Naked> Σ0 ↓
<MI 16298 MOVEA.L (A6+0x8),A1> {}
<MI 1629a CLR.B (A1)> {}
<POP 1629c-162a2 Naked> Σ0 ↓ →0x162ac ←0x1628a
<MI 1629c MOVE.W (A0),D0> {}
<MI 1629e AND.W #0x40,D0> {}
<MI 162a0 BNE 0x162ac> {}
<POP 162a2-162ac Naked> Σ0 ↓ →0x162b2
<MI 162a2 MOVE.W (A0+0x8),D1> {}
<MI 162a6 ANDI.W #0x0010,D1> {}
<MI 162aa BEQ 0x162b2> {}
<POP 162ac-162b2 Naked> Σ0 ↓ ←0x1629c
<MI 162ac MOVEA.L (A6+0x8),A1> {}
<MI 162ae MOVE.B #0x05,(A1)> {}
<POP 162b2-162bc Naked> Σ0 ↓ →0x162c2 ←0x162a2
<MI 162b2 MOVE.W (A0+0x8),D1> {}
<MI 162b6 ANDI.W #0x0800,D1> {}
<MI 162ba BEQ 0x162c2> {}
<POP 162bc-162c2 Naked> Σ0 ↓
<MI 162bc MOVEA.L (A6+0x8),A1> {}
<MI 162be MOVE.B #0x04,(A1)> {}
<POP 162c2-162c6 Naked> Σ0 ↓ →0x162e6 ←0x162b2
<MI 162c2 TST.W D0> {}
<MI 162c4 BNE 0x162e6> {}
<POP 162c6-162ce Naked> Σ0 ↓ →0x162e6
<MI 162c6 MOVE.W (A0+0x8),D0> {}
<MI 162ca AND.W #0x40,D0> {}
<MI 162cc BEQ 0x162e6> {}
<POP 162ce-162d8 Naked> Σ0 ↓ →0x162e6
<MI 162ce MOVE.W (A0+0x8),D0> {}
<MI 162d2 ANDI.W #0x0c12,D0> {}
<MI 162d6 BNE 0x162e6> {}
<POP 162d8-162e6 Naked> Σ0 ↓
<Const 0x162d8 0x1.2> Δ-2 {[#1]}
<MI 162dc MOVE.L A0,-(A7)> Δ-4 {[#1]|[4, 'A0']}
<Call 0x162de 0x144e6> {[#1]|[4, 'A0']}
_Write_ERROR_LOG(VAR a : Bool; MOD b : Pointer)
<POP 162e4-162e6 StackAdj> Δ+6 {}
<POP 162e6-162ee Epilogue> Σ0 ←0x162c2 ←0x162c6 ←0x162ce
@ 162ee
<LVAR 0x014 4(r)>
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 162ee-16392 Body>
<POP 162ee-16304 Prologue> Σ0 ↓
<POP 16304-1630a RegCacheLoad> Σ0 ↓
<POP 1630a-1631e Naked> Σ0 ↓ →0x16326
<MI 1630a MOVE.B 0x1b5ea,D0> {}
<MI 16310 EXTB.W D0> {}
<POP 0x16312 LimitCheck 0x0 ≤ D0 ≤ 0x1b> {}
<MI 16314 LEA.L 0x15e8a,A0> {}
<MI 16318 TST.B (A0+D0.W)> {}
<MI 1631c BNE 0x16326> {}
<POP 1631e-16326 Naked> Σ0 →0x1638a
<MI 1631e MOVEA.L (A6+0xc),A0> {}
<MI 16322 CLR.B (A0)> {}
<MI 16324 BRA 0x1638a> {}
<POP 16326-16342 Naked> Σ0 ↓ →0x1634a ←0x1630a
<MI 16326 MOVEA.L (A6+0x10),A0> {}
<MI 1632a MOVE.B #0x09,(A0)> {}
<MI 1632e MOVEA.L (A6+0xc),A0> {}
<MI 16332 MOVE.B #0x01,(A0)> {}
<MI 16336 MOVEA.L (A6+0x14),A0> {}
<MI 1633a MOVE.W (A0),D1> {}
<MI 1633c ANDI.W #0x0002,D1> {}
<MI 16340 BEQ 0x1634a> {}
<POP 16342-1634a Naked> Σ0 →0x1638a
<MI 16342 MOVEA.L (A6+0x8),A0> {}
<POP 0x16344 LimitCheck 0x0 ≤ D0 ≤ 0x1b> {}
<MI 16346 MOVE.B D0,(A0)> {}
<MI 16348 BRA 0x1638a> {}
<POP 1634a-1635e Naked> Σ0 →0x16374 →0x16374 →0x1637c →0x1637c →0x16384 →0x16384 ←0x16326
<MI 1634a SUBQ.W #0x2,D0> {}
<POP 0x1634c LimitCheck 0x0 ≤ D0 ≤ 0xa> {}
<MI 16354 ADD.W D0,D0> {}
<MI 16356 SWITCH D0.W> {}
<POP 16374-1637c Naked> Σ0 →0x1638a ←0x1634a ←0x1634a
<MI 16374 MOVEA.L (A6+0x8),A0> {}
<MI 16376 MOVE.B #0x03,(A0)> {}
<MI 1637a BRA 0x1638a> {}
<POP 1637c-16384 Naked> Σ0 →0x1638a ←0x1634a ←0x1634a
<MI 1637c MOVEA.L (A6+0x8),A0> {}
<MI 1637e MOVE.B #0x05,(A0)> {}
<MI 16382 BRA 0x1638a> {}
<POP 16384-1638a Naked> Σ0 ↓ ←0x1634a ←0x1634a
<MI 16384 MOVEA.L (A6+0x8),A0> {}
<MI 16386 MOVE.B #0x0c,(A0)> {}
<POP 1638a-16392 Epilogue> Σ0 ←0x1631e ←0x16342 ←0x16374 ←0x1637c
@ 16392
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 16392-163d4 Body>
<POP 16392-163a8 Prologue> Σ0 ↓
<POP 163a8-163b6 Naked> Σ0 ↓ →0x163be
<MI 163a8 MOVEA.L (A6+0xc),A0> {}
<MI 163ac MOVE.W (A0+0xe),D0> {}
<MI 163b0 ANDI.W #0x0008,D0> {}
<MI 163b4 BEQ 0x163be> {}
<POP 163b6-163be Naked> Σ0 ↓
<MI 163b6 MOVEA.L (A6+0x8),A1> {}
<MI 163ba MOVE.B #0x0a,(A1)> {}
<POP 163be-163cc Naked> Σ0 ↓ ←0x163a8
<Const 0x163be 0x1.2> Δ-2 {[#1]}
<MI 163c2 MOVE.L A0,-(A7)> Δ-4 {[#1]|[4, 'A0']}
<Call 0x163c4 0x144e6> {[#1]|[4, 'A0']}
_Write_ERROR_LOG(VAR a : Bool; MOD b : Pointer)
<POP 163ca-163cc StackAdj> Δ+6 {}
<POP 163cc-163d4 Epilogue> Σ0
@ 163d4
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 163d4-1640c Body>
<POP 163d4-163ea Prologue> Σ0 ↓
<POP 163ea-16404 Naked> Σ0 ↓
<MI 163ea MOVEA.L (A6+0x8),A0> {}
<MI 163ee MOVE.B #0x0c,(A0)> {}
<Const 0x163f2 0x1.2> Δ-2 {[#1]}
<MI 163f6 MOVEA.L (A6+0xc),A0> {[#1]}
<MI 163fa MOVE.L A0,-(A7)> Δ-4 {[#1]|[4, 'A0']}
<Call 0x163fc 0x144e6> {[#1]|[4, 'A0']}
_Write_ERROR_LOG(VAR a : Bool; MOD b : Pointer)
<POP 16402-16404 StackAdj> Δ+6 {}
<POP 16404-1640c Epilogue> Σ0
@ 1640c
_FSCALL_10408
<LVAR 0x008 4(r)>
<LVAR -0x00c 2(r)>
<LVAR -0x00e 2(r)>
<LVAR -0x014 @ 2(r)>
<LVAR -0x015 @ 1(r)>
<LVAR -0x016 @ 1(r)>
<LVAR -0x017 @ 1(r)>
<LVAR -0x018 @ 1(r)>
<POP 1640c-16570 Body> Δ+32
<POP 1640c-16422 Prologue> Σ0 ↓
<POP 16422-16434 RegCacheLoad> Σ0 ↓
<POP 16434-16436 Naked> Σ0 ↓
<MI 16434 MOVEQ.L #0x00,D7> {}
<POP 16436-16452 Naked> Σ0 ↓ →0x1655e ←0x16562
<MI 16436 MOVEA.L (A6+0x8),A0> {}
<MI 1643a CLR.B (A0)> {}
<MI 1643c CLR.B (A0+0x1)> {}
<Const 0x16440 0x1.2> Δ-2 {[#1]}
<Pointer.fp 0x16442 <LVAR -0x016 @ 1(r)>> Δ-4 {[#1]|[@@-22]}
<Call 0x16444 0x10206> {[#1]|[@@-22]}
KC03_Wait_Disk_IO(a : W; VAR status : Byte)
<POP 1644a-1644c StackAdj> Δ+6 {}
<MI 1644c TST.B (A6-0x16)> {}
<MI 1644e BNE 0x1655e> {}
<POP 16452-16470 Naked> Σ0 ↓ →0x1647c
<MI 16452 ADDQ.L #0x1,D7> {}
<MI 16454 CLR.B (A6-0x18)> {}
<Const 0x16456 0x1.2> Δ-2 {[#1]}
<MI 16458 LEA.L (A6-0x14),A1> {[#1]}
<MI 1645a MOVE.L A1,-(A7)> Δ-4 {[#1]|[4, 'A1']}
<MI 1645c CLR.W -(A7)> Δ-2 {[#1]|[4, 'A1']|[#0]}
<Const 0x1645e 0x1.2> Δ-2 {[#1]|[4, 'A1']|[#0]|[#1]}
<Pointer.fp 0x16460 <LVAR -0x015 @ 1(r)>> Δ-4 {[#1]|[4, 'A1']|[#0]|[#1]|[@@-21]}
<Call 0x16464 0x16056> {[#1]|[4, 'A1']|[#0]|[#1]|[@@-21]}
DiskIO(a: Byte; dst: Pointer; c: Word; wait: Byte; VAR status: Byte)
<POP 16468-1646a StackAdj> Δ+14 {}
<MI 1646a TST.B (A6-0x15)> {}
<MI 1646e BNE 0x1647c> {}
<POP 16470-1647c Naked> Σ0 ↓
<Const 0x16470 0xd.4> Δ-4 {[##13]}
<Call 0x16474 0x10220> {[##13]}
KC10_Panic(code : Long)
<POP 1647a-1647c StackAdj> Δ+4 {}
<POP 1647c-16494 Naked> Σ0 ↓ →0x16498 ←0x16452
<MI 1647c CLR.L D0> {}
<MI 1647e MOVE.W (A6-0xe),D0> {}
<MI 16482 MOVE.L D0,0x1b5dc> {}
<MI 16488 CLR.B (A0+0x1)> {}
<MI 1648c MOVE.W (A6-0xc),D0> {}
<MI 16490 AND.W #0x01,D0> {}
<MI 16492 BEQ 0x16498> {}
<POP 16494-16498 Naked> Σ0 ↓
<MI 16494 ADDQ.B #0x1,(A0+0x1)> {}
<POP 16498-164b4 Naked> Σ0 →0x164c4 →0x164ce →0x164d8 →0x164e2 →0x164ec →0x164ec →0x16500 →0x1650a ←0x1647c
<MI 16498 MOVE.B #0x0b,(A0)> {}
<MI 1649c MOVE.W (A6-0x14),D0> {}
<MI 1649e AND.W #0x0e,D0> {}
<MI 164a0 LSR.W #0x1,D0> {}
<POP 0x164a2 LimitCheck 0x0 ≤ D0 ≤ 0x7> {}
<MI 164aa ADD.W D0,D0> {}
<MI 164ac SWITCH D0.W> {}
<POP 164c4-164ce Naked> Σ0 Δ-8 →0x16512 ←0x16498
<Pointer.fp 0x164c4 <LVAR -0x014 @ 2(r)>> Δ-4 {[@@-20]}
<MI 164c6 PEA.L (A0)> Δ-4 {[@@-20]|[4, '^(A0)']}
<Call 0x164c8 0x16124> {[@@-20]|[4, '^(A0)']}
<MI 164cc BRA 0x16512> {[@@-20]|[4, '^(A0)']}
<POP 164ce-164d8 Naked> Σ0 →0x16514 ←0x16498
<Pointer.fp 0x164ce <LVAR -0x014 @ 2(r)>> Δ-4 {[@@-20]}
<Call 0x164d0 0x16184> {[@@-20]}
Write_ERROR_LOG_true(a: Pointer)
<POP 164d4-164d6 StackAdj> Δ+4 {}
<MI 164d6 BRA 0x16514> {}
<POP 164d8-164e2 Naked> Σ0 Δ-8 →0x16512 ←0x16498
<Pointer.fp 0x164d8 <LVAR -0x014 @ 2(r)>> Δ-4 {[@@-20]}
<MI 164da PEA.L (A0)> Δ-4 {[@@-20]|[4, '^(A0)']}
<Call 0x164dc 0x161b4> {[@@-20]|[4, '^(A0)']}
<MI 164e0 BRA 0x16512> {[@@-20]|[4, '^(A0)']}
<POP 164e2-164ec Naked> Σ0 Δ-8 →0x16512 ←0x16498
<Pointer.fp 0x164e2 <LVAR -0x014 @ 2(r)>> Δ-4 {[@@-20]}
<MI 164e4 PEA.L (A0)> Δ-4 {[@@-20]|[4, '^(A0)']}
<Call 0x164e6 0x1626e> {[@@-20]|[4, '^(A0)']}
<MI 164ea BRA 0x16512> {[@@-20]|[4, '^(A0)']}
<POP 164ec-16500 Naked> Σ0 →0x16514 ←0x16498 ←0x16498
<Pointer.fp 0x164ec <LVAR -0x014 @ 2(r)>> Δ-4 {[@@-20]}
<MI 164ee PEA.L (A0)> Δ-4 {[@@-20]|[4, '^(A0)']}
<Pointer.fp 0x164f0 <LVAR -0x018 @ 1(r)>> Δ-4 {[@@-20]|[4, '^(A0)']|[@@-24]}
<Pointer.fp 0x164f2 <LVAR -0x017 @ 1(r)>> Δ-4 {[@@-20]|[4, '^(A0)']|[@@-24]|[@@-23]}
<Call 0x164f6 0x162ee> {[@@-20]|[4, '^(A0)']|[@@-24]|[@@-23]}
<POP 164fa-164fe StackAdj> Δ+16 {}
<MI 164fe BRA 0x16514> {}
<POP 16500-1650a Naked> Σ0 Δ-8 →0x16512 ←0x16498
<Pointer.fp 0x16500 <LVAR -0x014 @ 2(r)>> Δ-4 {[@@-20]}
<MI 16502 PEA.L (A0)> Δ-4 {[@@-20]|[4, '^(A0)']}
<Call 0x16504 0x16392> {[@@-20]|[4, '^(A0)']}
<MI 16508 BRA 0x16512> {[@@-20]|[4, '^(A0)']}
<POP 1650a-16512 Naked> Σ0 Δ-8 ↓ ←0x16498
<Pointer.fp 0x1650a <LVAR -0x014 @ 2(r)>> Δ-4 {[@@-20]}
<MI 1650c PEA.L (A0)> Δ-4 {[@@-20]|[4, '^(A0)']}
<Call 0x1650e 0x163d4> {[@@-20]|[4, '^(A0)']}
<POP 16512-16514 Naked> Σ-8 Δ+8 ↓ ←0x164c4 ←0x164d8 ←0x164e2 ←0x16500
<POP 16512-16514 StackAdj> Δ+8 {}
<POP 16514-16518 Naked> Σ0 ↓ →0x1655e ←0x164ce ←0x164ec
<MI 16514 TST.B (A6-0x18)> {}
<MI 16516 BEQ 0x1655e> {}
<POP 16518-1652e Naked> Σ0 ↓ →0x1654e
<MI 16518 MOVE.B (A6-0x17),D0> {}
<MI 1651c EXTB.W D0> {}
<POP 0x1651e LimitCheck 0x0 ≤ D0 ≤ 0x1b> {}
<MI 16520 MOVE.B D0,0x1b5ea> {}
<MI 16526 CMPI.L #0x00000014,D7> {}
<MI 1652c BGT 0x1654e> {}
<POP 1652e-1654e Naked> Σ0 →0x1655e
<MI 1652e EXTB.W D0> {}
<POP 0x16530 LimitCheck 0x0 ≤ D0 ≤ 0x1b> {}
<MI 16532 MOVE.B D0,-(A7)> Δ-2 {[2, 'D0']}
<Blob 0x16534 [4] 0x1b5e6> Δ-4 {[2, 'D0']|[«4»]}
<Blob 0x1653a [2] 0x1b5e4> Δ-2 {[2, 'D0']|[«4»]|[«2»]}
<MI 16540 CLR.B -(A7)> Δ-2 {[2, 'D0']|[«4»]|[«2»]|[#0]}
<Pointer.fp 0x16542 <LVAR -0x015 @ 1(r)>> Δ-4 {[2, 'D0']|[«4»]|[«2»]|[#0]|[@@-21]}
<Call 0x16546 0x16056> {[2, 'D0']|[«4»]|[«2»]|[#0]|[@@-21]}
DiskIO(a: Byte; dst: Pointer; c: Word; wait: Byte; VAR status: Byte)
<POP 1654a-1654c StackAdj> Δ+14 {}
<MI 1654c BRA 0x1655e> {}
<POP 1654e-1655e Naked> Σ0 ↓ ←0x16518
<MI 1654e CLR.B (A6-0x18)> {}
<Const 0x16550 0x1.2> Δ-2 {[#1]}
<MI 16552 LEA.L (A6-0x14),A0> {[#1]}
<MI 16554 MOVE.L A0,-(A7)> Δ-4 {[#1]|[4, 'A0']}
<Call 0x16556 0x144e6> {[#1]|[4, 'A0']}
_Write_ERROR_LOG(VAR a : Bool; MOD b : Pointer)
<POP 1655c-1655e StackAdj> Δ+6 {}
<POP 1655e-16562 Naked> Σ0 ↓ →0x16568 ←0x16436 ←0x16514 ←0x1652e
<MI 1655e TST.B (A6-0x16)> {}
<MI 16560 BNE 0x16568> {}
<POP 16562-16568 Naked> Σ0 ↓ →0x16436
<MI 16562 TST.B (A6-0x18)> {}
<MI 16564 BNE 0x16436> {}
<POP 16568-16570 Epilogue> Σ0 ←0x1655e
@ 16570
_FSCALL_1040c
<LVAR 0x010 2(r)>
<LVAR 0x00e 1(r)>
<LVAR 0x00c 1(r)>
<LVAR 0x008 4(r)>
<LVAR -0x002 @ 1(r)>
<LVAR -0x012 2(r)>
<LVAR -0x016 @ 2(r)>
<POP 16570-16626 Body>
<POP 16570-16586 Prologue> Σ0 ↓
<POP 16586-16592 RegCacheLoad> Σ0 ↓
<POP 16592-165b8 Naked> Σ0 ↓ →0x165c4
<MI 16592 MOVE.W (A6+0x10),0x1b5ec> {}
<MI 1659a CLR.B -(A7)> Δ-2 {[#0]}
<MI 1659c LEA.L (A6-0x16),A0> {[#0]}
<MI 165a0 MOVE.L A0,-(A7)> Δ-4 {[#0]|[4, 'A0']}
<MI 165a2 CLR.W -(A7)> Δ-2 {[#0]|[4, 'A0']|[#0]}
<Const 0x165a4 0x1.2> Δ-2 {[#0]|[4, 'A0']|[#0]|[#1]}
<Pointer.fp 0x165a6 <LVAR -0x002 @ 1(r)>> Δ-4 {[#0]|[4, 'A0']|[#0]|[#1]|[@@-2]}
<Call 0x165aa 0x16056> {[#0]|[4, 'A0']|[#0]|[#1]|[@@-2]}
DiskIO(a: Byte; dst: Pointer; c: Word; wait: Byte; VAR status: Byte)
<POP 165ae-165b2 StackAdj> Δ+14 {}
<MI 165b2 TST.B (A6-0x2)> {}
<MI 165b6 BNE 0x165c4> {}
<POP 165b8-165c4 Naked> Σ0 ↓
<Const 0x165b8 0xc.4> Δ-4 {[##12]}
<Call 0x165bc 0x10220> {[##12]}
KC10_Panic(code : Long)
<POP 165c2-165c4 StackAdj> Δ+4 {}
<POP 165c4-165ca Naked> Σ0 ↓ →0x165d0 ←0x16592
<MI 165c4 TST.W (A6-0x16)> {}
<MI 165c8 BNE 0x165d0> {}
<POP 165ca-165d0 Naked> Σ0 →0x16614
<MI 165ca MOVEA.L (A6+0x8),A0> {}
<MI 165cc MOVE.B #0x01,(A0)> {}
<MI 165ce BRA 0x16614> {}
<POP 165d0-165da Naked> Σ0 ↓ →0x165e2 ←0x165c4
<MI 165d0 MOVE.W (A6-0x12),D0> {}
<MI 165d4 ANDI.W #0x0040,D0> {}
<MI 165d8 BEQ 0x165e2> {}
<POP 165da-165e2 Naked> Σ0 →0x16614
<MI 165da MOVEA.L (A6+0x8),A0> {}
<MI 165dc MOVE.B #0x05,(A0)> {}
<MI 165e0 BRA 0x16614> {}
<POP 165e2-165e8 Naked> Σ0 ↓ →0x165fa ←0x165d0
<MI 165e2 TST.B (A6+0xe)> {}
<MI 165e6 BEQ 0x165fa> {}
<POP 165e8-165f2 Naked> Σ0 ↓ →0x165fa
<POP 165e8-165ea StackAdj> Δ-2 {[-2-]}
<Call 0x165ea 0x160c8> {[-2-]}
<MI 165ee TST.B (A7)+> Δ+2 {}
<MI 165f0 BEQ 0x165fa> {}
<POP 165f2-165fa Naked> Σ0 →0x16614
<MI 165f2 MOVEA.L (A6+0x8),A0> {}
<MI 165f4 MOVE.B #0x04,(A0)> {}
<MI 165f8 BRA 0x16614> {}
<POP 165fa-16600 Naked> Σ0 ↓ →0x16610 ←0x165e2 ←0x165e8
<MI 165fa TST.B (A6+0xc)> {}
<MI 165fe BEQ 0x16610> {}
<POP 16600-16610 Naked> Σ0 →0x16614
<MI 16600 CLR.B -(A7)> Δ-2 {[#0]}
<MI 16602 MOVEA.L (A6+0x8),A0> {[#0]}
<MI 16604 PEA.L (A0)> Δ-4 {[#0]|[4, '^(A0)']}
<Call 0x16606 0x16642> {[#0]|[4, '^(A0)']}
_FSCALL_10414
<POP 1660c-1660e StackAdj> Δ+6 {}
<MI 1660e BRA 0x16614> {}
<POP 16610-16614 Naked> Σ0 ↓ ←0x165fa
<MI 16610 MOVEA.L (A6+0x8),A0> {}
<MI 16612 CLR.B (A0)> {}
<POP 16614-1661c Naked> Σ0 ↓ →0x1661e ←0x165ca ←0x165da ←0x165f2 ←0x16600
<MI 16614 CLR.B 0x1b5da> {}
<MI 16616 MOVEA.L (A6+0x8),A0> {}
<MI 16618 TST.B (A0)> {}
<MI 1661a BNE 0x1661e> {}
<POP 1661c-1661e Naked> Σ0 ↓
<MI 1661c ADDQ.B #0x1,0x1b5da> {}
<POP 1661e-16626 Epilogue> Σ0 ←0x16614
@ 16626
_FSCALL_10410
<POP 16626-16642 Body>
<POP 16626-16638 Prologue> Σ0 ↓
<POP 16638-1663e Naked> Σ0 ↓
<MI 16638 CLR.B 0x1b5da> {}
<POP 1663e-16642 Epilogue> Σ0
@ 16642
_FSCALL_10414
<LVAR 0x00c 1(r)>
<LVAR 0x008 4(r)>
<LVAR -0x002 @>
<POP 16642-16690 Body>
<POP 16642-16658 Prologue> Σ0 ↓
<POP 16658-16688 Naked> Σ0 ↓
<MI 16658 MOVE.B (A6+0xc),D0> {}
<MI 1665c EXTB.W D0> {}
<MI 1665e LEA.L 0x15ea6,A0> {}
<MI 16662 MOVE.B (A0+D0.W),-(A7)> Δ-2 {[2, '(A0+D0.W)']}
<Const 0x16666 0x0.4> Δ-4 {[2, '(A0+D0.W)']|[##0]}
<Const 0x1666a 0x1.2> Δ-2 {[2, '(A0+D0.W)']|[##0]|[#1]}
<MI 1666e CLR.B -(A7)> Δ-2 {[2, '(A0+D0.W)']|[##0]|[#1]|[#0]}
<Pointer.fp 0x16670 <LVAR -0x002 @>> Δ-4 {[2, '(A0+D0.W)']|[##0]|[#1]|[#0]|[@@-2]}
<Call 0x16674 0x16056> {[2, '(A0+D0.W)']|[##0]|[#1]|[#0]|[@@-2]}
DiskIO(a: Byte; dst: Pointer; c: Word; wait: Byte; VAR status: Byte)
<POP 16678-1667c StackAdj> Δ+14 {}
<MI 1667c MOVEA.L (A6+0x8),A0> {}
<MI 16680 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x16682 0x1640c> {[4, '^(A0)']}
_FSCALL_10408
<POP 16686-16688 StackAdj> Δ+4 {}
<POP 16688-16690 Epilogue> Σ0
@ 16690
_FSCALL_10418
<LVAR 0x00a 4(r)>
<LVAR 0x008 2(r)>
<LVAR -0x002 @>
<POP 16690-166de Body>
<POP 16690-166a6 Prologue> Σ0 ↓
<POP 166a6-166a8 RegCacheLoad> Σ0 ↓
<POP 166a8-166d6 Naked> Σ0 ↓
<MI 166a8 MOVE.B #0x02,0x1b5ea> {}
<MI 166ae MOVE.W (A6+0x8),0x1b5e4> {}
<MI 166b6 MOVE.L (A6+0xa),0x1b5e6> {}
<Const 0x166be 0x2.2> Δ-2 {[#2]}
<MI 166c0 MOVE.L (A6+0xa),-(A7)> Δ-4 {[#2]|[4, '(A6+0xa)']}
<MI 166c4 MOVE.W (A6+0x8),-(A7)> Δ-2 {[#2]|[4, '(A6+0xa)']|[2, '(A6+0x8)']}
<MI 166c8 CLR.B -(A7)> Δ-2 {[#2]|[4, '(A6+0xa)']|[2, '(A6+0x8)']|[#0]}
<Pointer.fp 0x166ca <LVAR -0x002 @>> Δ-4 {[#2]|[4, '(A6+0xa)']|[2, '(A6+0x8)']|[#0]|[@@-2]}
<Call 0x166ce 0x16056> {[#2]|[4, '(A6+0xa)']|[2, '(A6+0x8)']|[#0]|[@@-2]}
DiskIO(a: Byte; dst: Pointer; c: Word; wait: Byte; VAR status: Byte)
<POP 166d2-166d6 StackAdj> Δ+14 {}
<POP 166d6-166de Epilogue> Σ0
@ 166de
_FSCALL_1041c
<LVAR 0x00a 4(r)>
<LVAR 0x008 2(r)>
<LVAR -0x002 @>
<POP 166de-1672c Body>
<POP 166de-166f4 Prologue> Σ0 ↓
<POP 166f4-166f6 RegCacheLoad> Σ0 ↓
<POP 166f6-16724 Naked> Σ0 ↓
<MI 166f6 MOVE.B #0x04,0x1b5ea> {}
<MI 166fc MOVE.W (A6+0x8),0x1b5e4> {}
<MI 16704 MOVE.L (A6+0xa),0x1b5e6> {}
<Const 0x1670c 0x4.2> Δ-2 {[#4]}
<MI 1670e MOVE.L (A6+0xa),-(A7)> Δ-4 {[#4]|[4, '(A6+0xa)']}
<MI 16712 MOVE.W (A6+0x8),-(A7)> Δ-2 {[#4]|[4, '(A6+0xa)']|[2, '(A6+0x8)']}
<MI 16716 CLR.B -(A7)> Δ-2 {[#4]|[4, '(A6+0xa)']|[2, '(A6+0x8)']|[#0]}
<Pointer.fp 0x16718 <LVAR -0x002 @>> Δ-4 {[#4]|[4, '(A6+0xa)']|[2, '(A6+0x8)']|[#0]|[@@-2]}
<Call 0x1671c 0x16056> {[#4]|[4, '(A6+0xa)']|[2, '(A6+0x8)']|[#0]|[@@-2]}
DiskIO(a: Byte; dst: Pointer; c: Word; wait: Byte; VAR status: Byte)
<POP 16720-16724 StackAdj> Δ+14 {}
<POP 16724-1672c Epilogue> Σ0
@ 1672c
_FSCALL_10420
<LVAR -0x004 @>
<POP 1672c-16774 Body>
<POP 1672c-16742 Prologue> Σ0 ↓
<POP 16742-16744 RegCacheLoad> Σ0 ↓
<POP 16744-1676c Naked> Σ0 ↓
<MI 16744 MOVE.B #0x0b,0x1b5ea> {}
<MI 1674a CLR.W 0x1b5e4> {}
<MI 16750 CLR.L 0x1b5e6> {}
<Const 0x16756 0xb.2> Δ-2 {[#11]}
<Const 0x16758 0x0.4> Δ-4 {[#11]|[##0]}
<MI 1675c CLR.W -(A7)> Δ-2 {[#11]|[##0]|[#0]}
<MI 1675e CLR.B -(A7)> Δ-2 {[#11]|[##0]|[#0]|[#0]}
<Pointer.fp 0x16760 <LVAR -0x004 @>> Δ-4 {[#11]|[##0]|[#0]|[#0]|[@@-4]}
<Call 0x16764 0x16056> {[#11]|[##0]|[#0]|[#0]|[@@-4]}
DiskIO(a: Byte; dst: Pointer; c: Word; wait: Byte; VAR status: Byte)
<POP 16768-1676c StackAdj> Δ+14 {}
<POP 1676c-16774 Epilogue> Σ0
@ 16774
_TapeErrorMsg(a : Byte) : String
<LVAR 0x00a 4(w)>
<LVAR 0x008 1(r)>
<POP 16774-167c6 Body>
<POP 16774-1678a Prologue> Σ0 ↓
<POP 1678a-1678c RegCacheLoad> Σ0 ↓
<POP 1678c-167be Naked> Σ0 ↓
<MI 1678c MOVE.B (A6+0x8),D0> {}
<MI 16790 EXTB.W D0> {}
<MI 16792 MULS.W #0x1e,D0> {}
<MI 16794 LEA.L 0x15eb2,A0> {}
<Blob 0x16798 [30] (A0+D0.W+#0x1e)> Δ-30 {[«30»]}
<POP 167a4-167a6 StackAdj> Δ-4 {[«30»]|[-4-]}
<Lit 0x167a6> {[«30»]|[$$…]}
<Pointer.sp 0x167a6 4> Δ-4
<Const 0x167aa 0x1.2> Δ-2
<Const 0x167ae 0x1e.2> Δ-2
<Call 0x167b0 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 167b6-167b8 StackAdj> Δ+8
<MI 167b8 MOVE.L (A7)+,(A6+0xa)> Δ+4 {[«30»]}
<POP 167bc-167be StackAdj> Δ+30 {}
<POP 167be-167c6 Epilogue> Σ0
@ 167c6
_FSCALL_10428
<LVAR 0x00c 1(r)>
<LVAR 0x008 4(r)>
<LVAR -0x006 @ 4(rw)>
<POP 167c6-16884 Body> Δ+4
<POP 167c6-167dc Prologue> Σ0 ↓
<POP 167dc-167e0 RegCacheLoad> Σ0 ↓
<POP 167e0-16852 Naked> Σ0 →0x16858 →0x16864 →0x1686e
<Blob 0x167e0 [8] @> Δ-8 {[«8""»]}
<POP 167f0-167f2 StackAdj> Δ-8 {[«8""»]|[-8-]}
<MI 167f2 MOVEA.L (A6+0x8),A0> {[«8""»]|[-8-]}
<POP 167f6-167f8 StackAdj> Δ-2 {[«8""»]|[-10-]}
<MI 167f8 MOVE.B (A0),(A7)> {[«8""»]|[-10-]}
<MI 167fa MOVE.B (A0+0x1),(A7+0x1)> {[«8""»]|[-10-]}
<Call 0x16800 0x16774> {[«8""»]|[-10-]}
_TapeErrorMsg(a : Byte) : String
<POP 16804-16806 StackAdj> Δ-2 {[«8""»]|[-12-]}
<Lit 0x16806 7> {[«8""»]|[-8-]|[$$, unit_]}
<POP 16818-1681a StackAdj> Δ-4 {[«8""»]|[-8-]|[$$, unit_]|[-4-]}
<MI 1681a MOVE.W 0x1b5ec,D0> {[«8""»]|[-8-]|[$$, unit_]|[-4-]}
<MI 16820 EXTW.L D0> {[«8""»]|[-8-]|[$$, unit_]|[-4-]}
<MI 16822 MOVE.L D0,-(A7)> Δ-4 {[«8""»]|[-8-]|[$$, unit_]|[-4-]|[4, 'D0']}
<Call 0x16824 0x110c0> {[«8""»]|[-8-]|[$$, unit_]|[-4-]|[4, 'D0']}
_Long2String(a : Long) : String
<POP 1682a-1682c StackAdj> Δ+4 {[«8""»]|[-8-]|[$$, unit_]|[-4-]}
<Call 0x1682c 0x10fca> {[«8""»]|[-8-]|[$$, unit_]|[-4-]}
_StringCat3(a, b, c : String) : String
<POP 16832-16836 StackAdj> Δ+12 {[«8""»]|[-4-]}
<MI 16836 MOVE.L (A7)+,(A6-0x6)> Δ+4 {[«8""»]}
<POP 16838-1683a StackAdj> Δ+8 {}
<MI 1683a MOVE.B (A6+0xc),D0> {}
<MI 1683e EXTB.W D0> {}
<POP 0x16840 LimitCheck 0x0 ≤ D0 ≤ 0x2> {}
<MI 16848 ADD.W D0,D0> {}
<MI 1684a SWITCH D0.W> {}
<POP 16858-16860 Naked> Σ0 Δ-4 ↓ ←0x167e0
<Pointer.fp 0x16858 <LVAR -0x006 @ 4(rw)>> Δ-4 {[@@-6]}
<Call 0x1685a 0x10d36> {[@@-6]}
_FreeString(VAR a : String)
<POP 16860-16864 Naked> Σ-4 Δ+4 →0x1687c ←0x16864
<POP 16860-16862 StackAdj> Δ+4 {}
<MI 16862 BRA 0x1687c> {}
<POP 16864-1686e Naked> Σ0 Δ-4 →0x16860 ←0x167e0
<MI 16864 MOVE.L (A6-0x6),-(A7)> Δ-4 {[4, '(A6-0x6)']}
<Call 0x16866 0x154b0> {[4, '(A6-0x6)']}
_WriteConsoleStringCrLf(str : String)
<MI 1686c BRA 0x16860> {[4, '(A6-0x6)']}
<POP 1686e-1687c Naked> Σ0 ↓ ←0x167e0
<Const 0x1686e 0x4.2> Δ-2 {[#4]}
<MI 16872 MOVE.L (A6-0x6),-(A7)> Δ-4 {[#4]|[4, '(A6-0x6)']}
<Call 0x16874 0x14e18> {[#4]|[4, '(A6-0x6)']}
_PopProgram(status : Byte; msg : String)
<POP 1687a-1687c StackAdj> Δ+6 {}
<POP 1687c-16884 Epilogue> Σ0 ←0x16860
@ 16884
_FSCALL_1042c
<LVAR -0x006 @ 1(r)>
<POP 16884-16944 Body>
<POP 16884-1689a Prologue> Σ0 ↓
<POP 1689a-168a4 RegCacheLoad> Σ0 ↓
<POP 168a4-168c2 Naked> Σ0 ↓
<MI 168a4 MOVEQ.L #0x00,D7> {}
<POP 168a6-168a8 StackAdj> Δ-2 {[-2-]}
<Call 0x168a8 0x160c8> {[-2-]}
<MI 168ac MOVE.B (A7)+,D0> Δ+2 {}
<MI 168ae EXTB.W D0> {}
<POP 0x168b0 LimitCheck 0x0 ≤ D0 ≤ 0x1> {}
<MI 168b2 MOVE.B D0,D5> {}
<Const 0x168b4 0x1.2> Δ-2 {[#1]}
<Pointer.fp 0x168b6 <LVAR -0x006 @ 1(r)>> Δ-4 {[#1]|[@@-6]}
<Call 0x168b8 0x16642> {[#1]|[@@-6]}
_FSCALL_10414
<POP 168bc-168be StackAdj> Δ+6 {}
<Call 0x168be 0x16626> {}
_FSCALL_10410
<POP 168c2-1691e Naked> Σ0 ↓ →0x16922 ←0x16938
<Blob 0x168c2 [54] @> Δ-54 {[«54""»]}
<POP 168d2-168d4 StackAdj> Δ-8 {[«54""»]|[-8-]}
<Lit 0x168d4 53> {[«54""»]|[-4-]|[$$Reached EOT, mount next tape and enter unit number ?_]}
<Const 0x168e6 0x0.4> Δ-4 {[«54""»]|[-4-]|[$$Reached EOT, mount next tape and enter unit number ?_]|[##0]}
<Const 0x168ea 0x3.4> Δ-4 {[«54""»]|[-4-]|[$$Reached EOT, mount next tape and enter unit number ?_]|[##0]|[##3]}
<Call 0x168ee 0x15950> {[«54""»]|[-4-]|[$$Reached EOT, mount next tape and enter unit number ?_]|[##0]|[##3]}
_AskOnConsoleIntRange(prompt: String; low : Long; High : Long) : Long
<POP 168f4-168f8 StackAdj> Δ+12 {[«54""»]|[-4-]}
<MI 168f8 MOVE.L (A7)+,D0> Δ+4 {[«54""»]}
<POP 0x168fa LimitCheck 0x0 ≤ D0 ≤ 0x3> {[«54""»]}
<POP 16900-16902 StackAdj> Δ+54 {}
<MI 16902 MOVE.W D0,D6> {}
<POP 0x16904 LimitCheck 0x0 ≤ D6 ≤ 0x3> {}
<MI 16906 MOVE.W D6,-(A7)> Δ-2 {[2, 'D6']}
<MI 16908 MOVE.B D5,-(A7)> Δ-2 {[2, 'D6']|[2, 'D5']}
<MI 1690a NEG.B (A7)> {[2, 'D6']|[2, 'D5']}
<MI 1690c ADDQ.B #0x1,(A7)> {[2, 'D6']|[-2-]}
<Const 0x1690e 0x1.2> Δ-2 {[2, 'D6']|[-2-]|[#1]}
<Pointer.fp 0x16910 <LVAR -0x006 @ 1(r)>> Δ-4 {[2, 'D6']|[-2-]|[#1]|[@@-6]}
<Call 0x16912 0x16570> {[2, 'D6']|[-2-]|[#1]|[@@-6]}
_FSCALL_1040c
<POP 16916-1691a StackAdj> Δ+10 {}
<MI 1691a TST.B (A6-0x6)> {}
<MI 1691c BNE 0x16922> {}
<POP 1691e-16922 Naked> Σ0 →0x16938
<MI 1691e MOVEQ.L #0x01,D7> {}
<MI 16920 BRA 0x16938> {}
<POP 16922-16934 Naked> Σ0 ↓ →0x16938 ←0x168c2
<Const 0x16922 0x1.2> Δ-2 {[#1]}
<Pointer.fp 0x16924 <LVAR -0x006 @ 1(r)>> Δ-4 {[#1]|[@@-6]}
<Call 0x16926 0x167c6> {[#1]|[@@-6]}
_FSCALL_10428
<POP 1692a-1692c StackAdj> Δ+6 {}
<MI 1692c TST.B 0x1b5da> {}
<MI 16932 BEQ 0x16938> {}
<POP 16934-16938 Naked> Σ0 ↓
<Call 0x16934 0x16626> {}
_FSCALL_10410
<POP 16938-1693c Naked> Σ0 ↓ →0x168c2 ←0x1691e ←0x16922
<MI 16938 TST.B D7> {}
<MI 1693a BEQ 0x168c2> {}
<POP 1693c-16944 Epilogue> Σ0
@ 16944
_FSCALL_10430
<LVAR 0x008 4(w)>
<POP 16944-16962 Body>
<POP 16944-16956 Prologue> Σ0 ↓
<POP 16956-1695e Naked> Σ0 ↓
<MI 16956 MOVE.L 0x1b5dc,(A6+0x8)> {}
<POP 1695e-16962 Epilogue> Σ0
@ 169d4
<LVAR 0x008 4(r)>
<LVAR -0x008 4(rw)>
<POP 169d4-16a5a Body>
<POP 169d4-169ea Prologue> Σ0 ↓
<POP 169ea-16a52 Naked> Σ0 ↓
<MI 169ea LEA.L 0x1b5f6,A0> {}
<MI 169f0 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 169f2 MOVE.L (A7)+,(A6-0x8)> Δ+4 {}
<MI 169f6 MOVEA.L (A6-0x8),A0> {}
<MI 169fa MOVEA.L (A6+0x8),A1> {}
<MI 169fe MOVEA.L A0,A2> {}
<MI 16a00 MOVEA.L A1,A3> {}
<BlockMove 30,A3,A2> {}
<MI 16a0a MOVE.W (A1+0x20),D0> {}
<POP 0x16a0e LimitCheck 0x0 ≤ D0 ≤ 0x4000> {}
<MI 16a12 MOVE.W D0,(A0+0x1e)> {}
<MI 16a16 MOVE.B (A1+0x3a),(A0+0x24)> {}
<MI 16a1c MOVE.B (A1+0x3b),(A0+0x25)> {}
<MI 16a22 MOVE.B (A1+0x3c),(A0+0x26)> {}
<MI 16a28 MOVE.B (A1+0x3d),(A0+0x27)> {}
<MI 16a2e MOVE.W #0x400,(A0+0x20)> {}
<MI 16a34 MOVE.W #0x1,(A0+0x28)> {}
<MI 16a3a MOVE.B (A1+0x3f),D0> {}
<MI 16a3e LSL.B #0x6,D0> {}
<MI 16a40 LSR.B #0x7,D0> {}
<MI 16a42 MOVE.B D0,(A0+0x23)> {}
<MI 16a46 MOVE.B (A1+0x3f),D0> {}
<MI 16a4a LSL.B #0x5,D0> {}
<MI 16a4c LSR.B #0x7,D0> {}
<MI 16a4e MOVE.B D0,(A0+0x22)> {}
<POP 16a52-16a5a Epilogue> Σ0
@ 16a5a
_FSCALL_10434
<LVAR 0x010 1(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x004 1(rw)>
<LVAR -0x008 4(w)>
<LVAR -0x00c 4(w)>
<LVAR -0x012 @ 1(r)>
<LVAR -0x013 1(r)>
<LVAR -0x014 @ 1(r)>
<POP 16a5a-16c3c Body>
<POP 16a5a-16a70 Prologue> Σ0 ↓
<POP 16a70-16a84 RegCacheLoad> Σ0 ↓
<POP 16a84-16ab0 Naked> Σ0 ↓ →0x16b06
<MI 16a84 LEA.L 0x1b5f6,A0> {}
<MI 16a8a MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 16a8c MOVE.L (A7)+,(A6-0xc)> Δ+4 {}
<MI 16a90 LEA.L 0x1b9f6,A0> {}
<MI 16a96 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 16a98 MOVE.L (A7)+,(A6-0x8)> Δ+4 {}
<MI 16a9c MOVE.L (A6+0x8),-(A7)> Δ-4 {[4, '(A6+0x8)']}
<Call 0x16a9e 0x169d4> {[4, '(A6+0x8)']}
<POP 16aa2-16aa4 StackAdj> Δ+4 {}
<MI 16aa4 MOVEQ.L #0x00,D7> {}
<MI 16aa6 MOVEQ.L #0x01,D6> {}
<MI 16aa8 MOVEQ.L #0x40,D5> {}
<MI 16aaa TST.B (A6+0x10)> {}
<MI 16aae BEQ 0x16b06> {}
<POP 16ab0-16b06 Naked> Σ0 ↓
<Blob 0x16ab0 [12] @> Δ-12 {[«12""»]}
<MI 16ac2 MOVEA.L (A6+0x8),A0> {[«12""»]}
<POP 16ac4-16ac6 StackAdj> Δ-30 {[«12""»]|[-30-]}
<MI 16ac6 MOVEA.L A7,A1> {[«12""»]|[-30-]}
<BlockMove 30,A0,A1> {[«12""»]|[-30-]}
<POP 16ad0-16ad2 StackAdj> Δ-8 {[«12""»]|[-38-]}
<Lit 0x16ad2 11> {[«12""»]|[-34-]|[$$Writing ->_]}
<POP 16ae2-16ae4 StackAdj> Δ-4 {[«12""»]|[-34-]|[$$Writing ->_]|[-4-]}
<Lit 0x16ae4> {[«12""»]|[-34-]|[$$Writing ->_]|[$$…]}
<Pointer.sp 0x16ae4 12> Δ-4
<Const 0x16ae8 0x1.2> Δ-2
<Const 0x16aea 0x1e.2> Δ-2
<Call 0x16aec 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 16af2-16af4 StackAdj> Δ+8
<Call 0x16af4 0x10f2c> {[«12""»]|[-34-]|[$$Writing ->_]|[$$…]}
_StringCat2(a, b : String) : String
<POP 16afa-16afc StackAdj> Δ+8 {[«12""»]|[-34-]}
<Call 0x16afc 0x154b0> {[«12""»]|[-34-]}
_WriteConsoleStringCrLf(str : String)
<POP 16b02-16b06 StackAdj> Δ+46 {}
<POP 16b06-16b14 Naked> Σ0 ↓ →0x16b1c ←0x16a84
<MI 16b06 MOVEA.L (A6+0x8),A0> {}
<MI 16b08 MOVE.W (A0+0x20),D0> {}
<MI 16b0c EXTW.L D0> {}
<MI 16b0e CMP.L (A6+0xc),D0> {}
<MI 16b12 BLT 0x16b1c> {}
<POP 16b14-16b1c Naked> Σ0 →0x16b22
<MI 16b14 MOVE.B #0x06,(A6-0x4)> {}
<MI 16b1a BRA 0x16b22> {}
<POP 16b1c-16b22 Naked> Σ0 ↓ ←0x16b06
<MI 16b1c MOVE.B #0x07,(A6-0x4)> {}
<POP 16b22-16b3c Naked> Σ0 ↓ →0x16b44 ←0x16b14
<MI 16b22 MOVE.B (A6-0x4),D0> {}
<MI 16b26 EXTB.W D0> {}
<POP 0x16b28 LimitCheck 0x0 ≤ D0 ≤ 0xb> {}
<MI 16b2c MOVE.B D0,-(A7)> Δ-2 {[2, 'D0']}
<Pointer.fp 0x16b2e <LVAR -0x014 @ 1(r)>> Δ-4 {[2, 'D0']|[@@-20]}
<Call 0x16b30 0x16642> {[2, 'D0']|[@@-20]}
_FSCALL_10414
<POP 16b36-16b38 StackAdj> Δ+6 {}
<MI 16b38 TST.B (A6-0x14)> {}
<MI 16b3a BEQ 0x16b44> {}
<POP 16b3c-16b44 Naked> Σ0 ↓
<Const 0x16b3c 0x2.2> Δ-2 {[#2]}
<Pointer.fp 0x16b3e <LVAR -0x014 @ 1(r)>> Δ-4 {[#2]|[@@-20]}
<Call 0x16b40 0x167c6> {[#2]|[@@-20]}
_FSCALL_10428
<POP 16b42-16b44 StackAdj> Δ+6 {}
<POP 16b44-16b50 Naked> Σ0 Δ-4 ↓ ←0x16b22
<MI 16b44 MOVE.W (A0+0x20),D0> {}
<MI 16b48 SUBQ.W #0x1,D0> {}
<MI 16b4a EXTW.L D0> {}
<MI 16b4c MOVE.L D0,-(A7)> Δ-4 {[4, 'D0']}
<MI 16b4e MOVEQ.L #0x00,D0> {[4, 'D0']}
<POP 16b50-16b56 Naked> Σ-4 ↓ →0x16c06 ←0x16bfc
<MI 16b50 CMP.L (A7),D0> {[-4-]}
<MI 16b52 BGT 0x16c06> {[-4-]}
<POP 16b56-16baa Naked> Σ-4 ↓ →0x16bb2
<POP 0x16b56 LimitCheck 0x0 ≤ D7 ≤ 0x1> {[-4-]}
<MI 16b58 CLR.L D1> {[-4-]}
<MI 16b5a MOVE.W D7,D1> {[-4-]}
<MI 16b5c ASL.L #0x2,D1> {[-4-]}
<MI 16b5e MOVE.L (A6+D1.L-#0xc),-(A7)> Δ-4 {[-4-]|[4, '(A6+D1.L-#0xc)']}
<MI 16b62 MOVE.W D5,-(A7)> Δ-2 {[-4-]|[4, '(A6+D1.L-#0xc)']|[2, 'D5']}
<Call 0x16b64 0x166de> {[-4-]|[4, '(A6+D1.L-#0xc)']|[2, 'D5']}
_FSCALL_1041c
<POP 16b6a-16b6c StackAdj> Δ+2 {[-4-]|[4, '(A6+D1.L-#0xc)']}
<MI 16b6c MOVE.L (A6+0x8),(A7)> {[-4-]|[4, '(A6+0x8)']}
<POP 0x16b6e LimitCheck 0x0 ≤ D0 ≤ 0x4000> {[-4-]|[4, '(A6+0x8)']}
<MI 16b78 MOVE.W D0,-(A7)> Δ-2 {[-4-]|[4, '(A6+0x8)']|[2, 'D0']}
<MI 16b7a CLR.W -(A7)> Δ-2 {[-4-]|[4, '(A6+0x8)']|[2, 'D0']|[#0]}
<Const 0x16b7c 0x200.2> Δ-2 {[-4-]|[4, '(A6+0x8)']|[2, 'D0']|[#0]|[#512]}
<Const 0x16b80 0x1.2> Δ-2 {[-4-]|[4, '(A6+0x8)']|[2, 'D0']|[#0]|[#512]|[#1]}
<POP 0x16b82 LimitCheck 0x0 ≤ D6 ≤ 0x1> {[-4-]|[4, '(A6+0x8)']|[2, 'D0']|[#0]|[#512]|[#1]}
<MI 16b84 CLR.L D1> {[-4-]|[4, '(A6+0x8)']|[2, 'D0']|[#0]|[#512]|[#1]}
<MI 16b86 MOVE.W D6,D1> {[-4-]|[4, '(A6+0x8)']|[2, 'D0']|[#0]|[#512]|[#1]}
<MI 16b88 ASL.L #0x2,D1> {[-4-]|[4, '(A6+0x8)']|[2, 'D0']|[#0]|[#512]|[#1]}
<MI 16b8a MOVE.L (A6+D1.L-#0xc),-(A7)> Δ-4 {[-4-]|[4, '(A6+0x8)']|[2, 'D0']|[#0]|[#512]|[#1]|[4, '(A6+D1.L-#0xc)']}
<Pointer.fp 0x16b8e <LVAR -0x012 @ 1(r)>> Δ-4 {[-4-]|[4, '(A6+0x8)']|[2, 'D0']|[#0]|[#512]|[#1]|[4, '(A6+D1.L-#0xc)']|[@@-18]}
<Call 0x16b92 0x13ae6> {[-4-]|[4, '(A6+0x8)']|[2, 'D0']|[#0]|[#512]|[#1]|[4, '(A6+D1.L-#0xc)']|[@@-18]}
_ReadFile(file : File; w : W; x : W; a : W; b: B; c : L; d : L)
<POP 16b98-16b9c StackAdj> Δ+20 {[-4-]}
<Pointer.fp 0x16b9c <LVAR -0x014 @ 1(r)>> Δ-4 {[-4-]|[@@-20]}
<Call 0x16b9e 0x1640c> {[-4-]|[@@-20]}
_FSCALL_10408
<POP 16ba4-16ba6 StackAdj> Δ+4 {[-4-]}
<MI 16ba6 TST.B (A6-0x14)> {[-4-]}
<MI 16ba8 BEQ 0x16bb2> {[-4-]}
<POP 16baa-16bb2 Naked> Σ-4 ↓
<Const 0x16baa 0x2.2> Δ-2 {[-4-]|[#2]}
<Pointer.fp 0x16bac <LVAR -0x014 @ 1(r)>> Δ-4 {[-4-]|[#2]|[@@-20]}
<Call 0x16bae 0x167c6> {[-4-]|[#2]|[@@-20]}
_FSCALL_10428
<POP 16bb0-16bb2 StackAdj> Δ+6 {[-4-]}
<POP 16bb2-16bb8 Naked> Σ-4 ↓ →0x16bc6 ←0x16b56
<MI 16bb2 TST.B (A6-0x12)> {[-4-]}
<MI 16bb6 BEQ 0x16bc6> {[-4-]}
<POP 16bb8-16bc6 Naked> Σ-4 ↓
<Const 0x16bb8 0x1.2> Δ-2 {[-4-]|[#1]}
<Const 0x16bba 0x1.4> Δ-4 {[-4-]|[#1]|[##1]}
<Call 0x16bbe 0x14e18> {[-4-]|[#1]|[##1]}
_PopProgram(status : Byte; msg : String)
<POP 16bc4-16bc6 StackAdj> Δ+6 {[-4-]}
<POP 16bc6-16bcc Naked> Σ-4 ↓ →0x16bee ←0x16bb2
<MI 16bc6 TST.B (A6-0x13)> {[-4-]}
<MI 16bca BEQ 0x16bee> {[-4-]}
<POP 16bcc-16be0 Naked> Σ-4 ↓ →0x16be8
<Call 0x16bcc 0x1672c> {[-4-]}
_FSCALL_10420
<Pointer.fp 0x16bd2 <LVAR -0x014 @ 1(r)>> Δ-4 {[-4-]|[@@-20]}
<Call 0x16bd4 0x1640c> {[-4-]|[@@-20]}
_FSCALL_10408
<POP 16bda-16bdc StackAdj> Δ+4 {[-4-]}
<MI 16bdc TST.B (A6-0x14)> {[-4-]}
<MI 16bde BEQ 0x16be8> {[-4-]}
<POP 16be0-16be8 Naked> Σ-4 ↓
<Const 0x16be0 0x2.2> Δ-2 {[-4-]|[#2]}
<Pointer.fp 0x16be2 <LVAR -0x014 @ 1(r)>> Δ-4 {[-4-]|[#2]|[@@-20]}
<Call 0x16be4 0x167c6> {[-4-]|[#2]|[@@-20]}
_FSCALL_10428
<POP 16be6-16be8 StackAdj> Δ+6 {[-4-]}
<POP 16be8-16bee Naked> Σ-4 ↓ ←0x16bcc
<Call 0x16be8 0x16884> {[-4-]}
_FSCALL_1042c
<POP 16bee-16bf2 Naked> Σ-4 ↓ →0x16bf8 ←0x16bc6
<MI 16bee TST.W D7> {[-4-]}
<MI 16bf0 BNE 0x16bf8> {[-4-]}
<POP 16bf2-16bf8 Naked> Σ-4 →0x16bfc
<MI 16bf2 MOVEQ.L #0x01,D7> {[-4-]}
<MI 16bf4 MOVEQ.L #0x00,D6> {[-4-]}
<MI 16bf6 BRA 0x16bfc> {[-4-]}
<POP 16bf8-16bfc Naked> Σ-4 ↓ ←0x16bee
<MI 16bf8 MOVEQ.L #0x00,D7> {[-4-]}
<MI 16bfa MOVEQ.L #0x01,D6> {[-4-]}
<POP 16bfc-16c06 Naked> Σ-4 ↓ →0x16b50 ←0x16bf2
<MI 16bfc MOVE.W #0x400,D5> {[-4-]}
<MI 16c00 ADDQ.L #0x1,D0> {[-4-]}
<MI 16c02 BVC 0x16b50> {[-4-]}
<POP 16c06-16c2c Naked> Σ-4 Δ+4 ↓ →0x16c34 ←0x16b50
<POP 16c06-16c08 StackAdj> Δ+4 {}
<POP 0x16c08 LimitCheck 0x0 ≤ D7 ≤ 0x1> {}
<MI 16c0a CLR.L D0> {}
<MI 16c0c MOVE.W D7,D0> {}
<MI 16c0e ASL.L #0x2,D0> {}
<MI 16c10 MOVE.L (A6+D0.L-#0xc),-(A7)> Δ-4 {[4, '(A6+D0.L-#0xc)']}
<MI 16c14 MOVE.W D5,-(A7)> Δ-2 {[4, '(A6+D0.L-#0xc)']|[2, 'D5']}
<Call 0x16c16 0x166de> {[4, '(A6+D0.L-#0xc)']|[2, 'D5']}
_FSCALL_1041c
<POP 16c1c-16c1e StackAdj> Δ+6 {}
<Pointer.fp 0x16c1e <LVAR -0x014 @ 1(r)>> Δ-4 {[@@-20]}
<Call 0x16c20 0x1640c> {[@@-20]}
_FSCALL_10408
<POP 16c26-16c28 StackAdj> Δ+4 {}
<MI 16c28 TST.B (A6-0x14)> {}
<MI 16c2a BEQ 0x16c34> {}
<POP 16c2c-16c34 Naked> Σ0 ↓
<Const 0x16c2c 0x2.2> Δ-2 {[#2]}
<Pointer.fp 0x16c2e <LVAR -0x014 @ 1(r)>> Δ-4 {[#2]|[@@-20]}
<Call 0x16c30 0x167c6> {[#2]|[@@-20]}
_FSCALL_10428
<POP 16c32-16c34 StackAdj> Δ+6 {}
<POP 16c34-16c3c Epilogue> Σ0 ←0x16c06
@ 16c3c
_FSCALL_10438
<LVAR 0x012 1(r)>
<LVAR 0x010 1(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x004 1(rw)>
<LVAR -0x008 4(rw)>
<LVAR -0x00c 4(w)>
<LVAR -0x010 4(w)>
<LVAR -0x018 @ 4(r)>
<LVAR -0x01c @ 4(rw)>
<LVAR -0x034 2(r)>
<LVAR -0x035 1(r)>
<LVAR -0x036 1(r)>
<LVAR -0x037 1(r)>
<LVAR -0x038 1(r)>
<LVAR -0x039 1(r)>
<LVAR -0x03a 1(r)>
<LVAR -0x03e 2(r)>
<LVAR -0x05c @>
<LVAR -0x05d @ 1(r)>
<LVAR -0x05e 1(r)>
<LVAR -0x05f @ 1(r)>
<POP 16c3c-170c4 Body> Δ+2
<POP 16c3c-16c52 Prologue> Σ0 ↓
<POP 16c52-16c66 RegCacheLoad> Σ0 ↓
<POP 16c66-16cac Naked> Σ0 Δ-4 ↓ →0x16cc8
<MI 16c66 LEA.L 0x1b5f6,A0> {}
<MI 16c6c MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 16c6e MOVE.L (A7)+,(A6-0x10)> Δ+4 {}
<MI 16c72 LEA.L 0x1b9f6,A0> {}
<MI 16c78 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 16c7a MOVE.L (A7)+,(A6-0xc)> Δ+4 {}
<MI 16c7e MOVEQ.L #0x00,D7> {}
<MI 16c80 MOVEQ.L #0x01,D6> {}
<MI 16c82 MOVEA.L (A6+0x8),A0> {}
<MI 16c86 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 16c88 MOVE.B #0x01,(A0)> {[4, 'A0']}
<MI 16c8a LEA.L (A6-0x5c),A1> {[4, 'A0']}
<MI 16c8e MOVE.L A1,-(A7)> Δ-4 {[4, 'A0']|[4, 'A1']}
<Const 0x16c90 0x40.2> Δ-2 {[4, 'A0']|[4, 'A1']|[#64]}
<Call 0x16c94 0x16690> {[4, 'A0']|[4, 'A1']|[#64]}
_FSCALL_10418
<POP 16c9a-16c9c StackAdj> Δ+6 {[4, 'A0']}
<Pointer.fp 0x16c9c <LVAR -0x05f @ 1(r)>> Δ-4 {[4, 'A0']|[@@-95]}
<Call 0x16c9e 0x1640c> {[4, 'A0']|[@@-95]}
_FSCALL_10408
<POP 16ca4-16ca6 StackAdj> Δ+4 {[4, 'A0']}
<MI 16ca6 MOVE.B (A6-0x5f),D0> {[4, 'A0']}
<MI 16ca8 CMP.B #0x06,D0> {[4, 'A0']}
<MI 16caa BNE 0x16cc8> {[4, 'A0']}
<POP 16cac-16cc8 Naked> Σ-4 ↓
<MI 16cac LEA.L (A6-0x5c),A0> {[-4-]}
<MI 16cb0 MOVE.L A0,-(A7)> Δ-4 {[-4-]|[4, 'A0']}
<Const 0x16cb2 0x40.2> Δ-2 {[-4-]|[4, 'A0']|[#64]}
<Call 0x16cb6 0x16690> {[-4-]|[4, 'A0']|[#64]}
_FSCALL_10418
<POP 16cbc-16cbe StackAdj> Δ+6 {[-4-]}
<Pointer.fp 0x16cbe <LVAR -0x05f @ 1(r)>> Δ-4 {[-4-]|[@@-95]}
<Call 0x16cc0 0x1640c> {[-4-]|[@@-95]}
_FSCALL_10408
<POP 16cc6-16cc8 StackAdj> Δ+4 {[-4-]}
<POP 16cc8-16cce Naked> Σ-4 ↓ →0x16cf4 ←0x16c66
<MI 16cc8 MOVE.B (A6-0x5f),D0> {[-4-]}
<MI 16cca CMP.B #0x06,D0> {[-4-]}
<MI 16ccc BNE 0x16cf4> {[-4-]}
<POP 16cce-16ce0 Naked> Σ-4 ↓ →0x16cec
<Const 0x16cce 0x5.2> Δ-2 {[-4-]|[#5]}
<Pointer.fp 0x16cd2 <LVAR -0x05f @ 1(r)>> Δ-4 {[-4-]|[#5]|[@@-95]}
<Call 0x16cd4 0x16642> {[-4-]|[#5]|[@@-95]}
_FSCALL_10414
<POP 16cda-16cdc StackAdj> Δ+6 {[-4-]}
<MI 16cdc TST.B (A6-0x5f)> {[-4-]}
<MI 16cde BEQ 0x16cec> {[-4-]}
<POP 16ce0-16cec Naked> Σ-4 ↓
<Const 0x16ce0 0x2.2> Δ-2 {[-4-]|[#2]}
<Pointer.fp 0x16ce2 <LVAR -0x05f @ 1(r)>> Δ-4 {[-4-]|[#2]|[@@-95]}
<Call 0x16ce4 0x167c6> {[-4-]|[#2]|[@@-95]}
_FSCALL_10428
<POP 16cea-16cec StackAdj> Δ+6 {[-4-]}
<POP 16cec-16cf2 Naked> Σ-4 Δ+4 →0x170bc ←0x16cce ←0x16cfa
<POP 16cec-16cee StackAdj> Δ+4 {}
<MI 16cee BRA 0x170bc> {}
<POP 16cf4-16cfa Naked> Σ-4 ↓ →0x16cfc ←0x16cc8
<MI 16cf4 TST.B (A6-0x5e)> {[-4-]}
<MI 16cf8 BEQ 0x16cfc> {[-4-]}
<POP 16cfa-16cfc Naked> Σ-4 →0x16cec
<MI 16cfa BRA 0x16cec> {[-4-]}
<POP 16cfc-16d00 Naked> Σ-4 ↓ →0x16d0e ←0x16cf4
<MI 16cfc TST.B D0> {[-4-]}
<MI 16cfe BEQ 0x16d0e> {[-4-]}
<POP 16d00-16d0e Naked> Σ-4 →0x16d4a
<Const 0x16d00 0x2.2> Δ-2 {[-4-]|[#2]}
<Pointer.fp 0x16d02 <LVAR -0x05f @ 1(r)>> Δ-4 {[-4-]|[#2]|[@@-95]}
<Call 0x16d04 0x167c6> {[-4-]|[#2]|[@@-95]}
_FSCALL_10428
<POP 16d0a-16d0c StackAdj> Δ+6 {[-4-]}
<MI 16d0c BRA 0x16d4a> {[-4-]}
<POP 16d0e-16d1a Naked> Σ-4 ↓ →0x16d4a ←0x16cfc
<MI 16d0e MOVEA.L (A7),A0> {[-4-]}
<MI 16d10 CLR.B (A0)> {[-4-]}
<MI 16d12 MOVE.W (A6-0x34),D0> {[-4-]}
<MI 16d16 CMP.W #0x01,D0> {[-4-]}
<MI 16d18 BEQ 0x16d4a> {[-4-]}
<POP 16d1a-16d4a Naked> Σ-4 ↓
<Blob 0x16d1a [30] @> Δ-30 {[-4-]|[«30""»]}
<Const 0x16d2c 0x4.2> Δ-2 {[-4-]|[«30""»]|[#4]}
<POP 16d30-16d32 StackAdj> Δ-4 {[-4-]|[«30""»]|[#4]|[-4-]}
<Lit 0x16d32 29> {[-4-]|[«30""»]|[#4]|[$$Obsolete tape header version.]}
<Call 0x16d40 0x14e18> {[-4-]|[«30""»]|[#4]|[$$Obsolete tape header version.]}
_PopProgram(status : Byte; msg : String)
<POP 16d46-16d4a StackAdj> Δ+36 {[-4-]}
<POP 16d4a-16d52 Naked> Σ-4 Δ+4 ↓ →0x16d9e ←0x16d00 ←0x16d0e
<POP 16d4a-16d4c StackAdj> Δ+4 {}
<MI 16d4c TST.B (A6+0x12)> {}
<MI 16d50 BEQ 0x16d9e> {}
<POP 16d52-16d9e Naked> Σ0 ↓
<Blob 0x16d52 [12] @> Δ-12 {[«12""»]}
<Blob 0x16d64 [30] (A6-0x3e)> Δ-30 {[«12""»]|[«30»]}
<POP 16d6e-16d70 StackAdj> Δ-8 {[«12""»]|[«30»]|[-8-]}
<Lit 0x16d70 11> {[«12""»]|[«30»]|[-4-]|[$$Reading ->_]}
<POP 16d7c-16d7e StackAdj> Δ-4 {[«12""»]|[«30»]|[-4-]|[$$Reading ->_]|[-4-]}
<Lit 0x16d7e> {[«12""»]|[«30»]|[-4-]|[$$Reading ->_]|[$$…]}
<Pointer.sp 0x16d7e 12> Δ-4
<Const 0x16d82 0x1.2> Δ-2
<Const 0x16d84 0x1e.2> Δ-2
<Call 0x16d88 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 16d8a-16d8c StackAdj> Δ+8
<Call 0x16d8c 0x10f2c> {[«12""»]|[«30»]|[-4-]|[$$Reading ->_]|[$$…]}
_StringCat2(a, b : String) : String
<POP 16d92-16d94 StackAdj> Δ+8 {[«12""»]|[«30»]|[-4-]}
<Call 0x16d94 0x154b0> {[«12""»]|[«30»]|[-4-]}
_WriteConsoleStringCrLf(str : String)
<POP 16d9a-16d9e StackAdj> Δ+46 {}
<POP 16d9e-16da4 Naked> Σ0 ↓ →0x16db6 ←0x16d4a
<MI 16d9e TST.B (A6+0x10)> {}
<MI 16da2 BEQ 0x16db6> {}
<POP 16da4-16dae Naked> Σ0 ↓ →0x16db6
<MI 16da4 MOVE.W (A6-0x3e),D0> {}
<MI 16da6 EXTW.L D0> {}
<MI 16da8 CMP.L (A6+0xc),D0> {}
<MI 16dac BGE 0x16db6> {}
<POP 16dae-16db6 Naked> Σ0 →0x16dba
<MI 16dae MOVE.B #0x07,(A6-0x4)> {}
<MI 16db4 BRA 0x16dba> {}
<POP 16db6-16dba Naked> Σ0 ↓ ←0x16d9e ←0x16da4
<MI 16db6 MOVE.B #0x06,(A6-0x4)> {}
<POP 16dba-16dd4 Naked> Σ0 ↓ →0x16de0 ←0x16dae
<MI 16dba MOVE.B (A6-0x4),D0> {}
<MI 16dbe EXTB.W D0> {}
<POP 0x16dc0 LimitCheck 0x0 ≤ D0 ≤ 0xb> {}
<MI 16dc4 MOVE.B D0,-(A7)> Δ-2 {[2, 'D0']}
<Pointer.fp 0x16dc6 <LVAR -0x05f @ 1(r)>> Δ-4 {[2, 'D0']|[@@-95]}
<Call 0x16dc8 0x16642> {[2, 'D0']|[@@-95]}
_FSCALL_10414
<POP 16dce-16dd0 StackAdj> Δ+6 {}
<MI 16dd0 TST.B (A6-0x5f)> {}
<MI 16dd2 BEQ 0x16de0> {}
<POP 16dd4-16de0 Naked> Σ0 ↓
<Const 0x16dd4 0x2.2> Δ-2 {[#2]}
<Pointer.fp 0x16dd6 <LVAR -0x05f @ 1(r)>> Δ-4 {[#2]|[@@-95]}
<Call 0x16dd8 0x167c6> {[#2]|[@@-95]}
_FSCALL_10428
<POP 16dde-16de0 StackAdj> Δ+6 {}
<POP 16de0-16de6 Naked> Σ0 ↓ →0x16df6 ←0x16dba
<MI 16de0 TST.B (A6+0x10)> {}
<MI 16de4 BNE 0x16df6> {}
<POP 16de6-16df6 Naked> Σ0 →0x16ede
<Const 0x16de6 0x2.2> Δ-2 {[#2]}
<Pointer.fp 0x16de8 <LVAR -0x05f @ 1(r)>> Δ-4 {[#2]|[@@-95]}
<Call 0x16dea 0x16642> {[#2]|[@@-95]}
_FSCALL_10414
<POP 16df0-16df2 StackAdj> Δ+6 {}
<MI 16df2 BRA 0x16ede> {}
<POP 16df6-16e36 Naked> Σ0 ↓ →0x16e3c ←0x16de0
<POP 0x16df6 LimitCheck 0x0 ≤ D7 ≤ 0x1> {}
<MI 16df8 CLR.L D0> {}
<MI 16dfa MOVE.W D7,D0> {}
<MI 16dfc ASL.L #0x2,D0> {}
<MI 16dfe MOVE.L (A6+D0.L-#0x10),-(A7)> Δ-4 {[4, '(A6+D0.L-#0x10)']}
<Const 0x16e02 0x400.2> Δ-2 {[4, '(A6+D0.L-#0x10)']|[#1024]}
<Call 0x16e06 0x16690> {[4, '(A6+D0.L-#0x10)']|[#1024]}
_FSCALL_10418
<POP 16e0c-16e0e StackAdj> Δ+6 {}
<Blob 0x16e0e [30] (A6-0x3e)> Δ-30 {[«30»]}
<POP 16e18-16e1a StackAdj> Δ-4 {[«30»]|[-4-]}
<Lit 0x16e1a> {[«30»]|[$$…]}
<Pointer.sp 0x16e1a 4> Δ-4
<Const 0x16e1e 0x1.2> Δ-2
<Const 0x16e20 0x1e.2> Δ-2
<Call 0x16e24 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 16e26-16e28 StackAdj> Δ+8
<MI 16e28 MOVE.L (A7)+,(A6-0x1c)> Δ+4 {[«30»]}
<POP 16e2c-16e30 StackAdj> Δ+30 {}
<MI 16e30 TST.B (A6-0x39)> {}
<MI 16e34 BEQ 0x16e3c> {}
<POP 16e36-16e3c Naked> Σ0 →0x16e3e
<MI 16e36 MOVE.W (A6-0x3e),D0> {}
<MI 16e38 NEG.W D0> {}
<MI 16e3a BRA 0x16e3e> {}
<POP 16e3c-16e3e Naked> Σ0 ↓ ←0x16df6
<MI 16e3c MOVE.W (A6-0x3e),D0> {}
<POP 16e3e-16e68 Naked> Σ0 ↓ →0x16e9e ←0x16e36
<MI 16e3e EXTW.L D0> {}
<MI 16e40 MOVE.L D0,(A6-0x8)> {}
<MI 16e44 MOVE.L (A6-0x1c),-(A7)> Δ-4 {[4, '(A6-0x1c)']}
<Const 0x16e48 0x1.2> Δ-2 {[4, '(A6-0x1c)']|[#1]}
<Const 0x16e4a 0x1.2> Δ-2 {[4, '(A6-0x1c)']|[#1]|[#1]}
<MI 16e4c MOVE.L (A6-0x8),-(A7)> Δ-4 {[4, '(A6-0x1c)']|[#1]|[#1]|[4, '(A6-0x8)']}
<Pointer.fp 0x16e50 <LVAR -0x05d @ 1(r)>> Δ-4 {[4, '(A6-0x1c)']|[#1]|[#1]|[4, '(A6-0x8)']|[@@-93]}
<Pointer.fp 0x16e54 <LVAR -0x018 @ 4(r)>> Δ-4 {[4, '(A6-0x1c)']|[#1]|[#1]|[4, '(A6-0x8)']|[@@-93]|[@@-24]}
<Call 0x16e58 0x138b4> {[4, '(A6-0x1c)']|[#1]|[#1]|[4, '(A6-0x8)']|[@@-93]|[@@-24]}
_OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
<POP 16e5e-16e62 StackAdj> Δ+20 {}
<MI 16e62 TST.B (A6-0x5d)> {}
<MI 16e66 BEQ 0x16e9e> {}
<POP 16e68-16e9e Naked> Σ0 ↓
<Pointer.fp 0x16e68 <LVAR -0x05f @ 1(r)>> Δ-4 {[@@-95]}
<Call 0x16e6a 0x1640c> {[@@-95]}
_FSCALL_10408
<POP 16e70-16e71 StackAdj> Δ+4 {}
<Blob 0x16e71 [4] @> Δ-4 {[«4""»]}
<Blob 0x16e74 [4] @> Δ-4 {[«4""»]|[«4""»]}
<Blob 0x16e78 [4] @> Δ-4 {[«4""»]|[«4""»]|[«4""»]}
<Blob 0x16e7c [4] @> Δ-4 {[«4""»]|[«4""»]|[«4""»]|[«4""»]}
<Const 0x16e80 0xe.2> Δ-2 {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[#14]}
<POP 16e84-16e86 StackAdj> Δ-4 {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[#14]|[-4-]}
<Lit 0x16e86 16> {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[#14]|[$$File open error.]}
<Call 0x16e94 0x14e18> {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[#14]|[$$File open error.]}
_PopProgram(status : Byte; msg : String)
<POP 16e9a-16e9e StackAdj> Δ+22 {}
<POP 16e9e-16ede Naked> Σ0 ↓ ←0x16e3e
<MI 16e9e MOVEA.L (A6-0x18),A0> {}
<MI 16ea2 MOVE.B (A6-0x39),D0> {}
<MI 16ea6 ANDI.B #0xfd,(A0+0x3f)> {}
<MI 16eac LSL.B #0x1,D0> {}
<MI 16eae OR.B D0,(A0+0x3f)> {}
<MI 16eb2 MOVE.B (A6-0x3a),D0> {}
<MI 16eb6 ANDI.B #0xfb,(A0+0x3f)> {}
<MI 16ebc LSL.B #0x2,D0> {}
<MI 16ebe OR.B D0,(A0+0x3f)> {}
<MI 16ec2 MOVE.B (A6-0x38),(A0+0x3a)> {}
<MI 16ec8 MOVE.B (A6-0x37),(A0+0x3b)> {}
<MI 16ece MOVE.B (A6-0x36),(A0+0x3c)> {}
<MI 16ed4 MOVE.B (A6-0x35),(A0+0x3d)> {}
<MI 16eda MOVE.B #0x01,(A0+0x4c)> {}
<POP 16ede-16ee8 Naked> Σ0 Δ-4 ↓ ←0x16de6
<MI 16ede MOVE.W (A6-0x3e),D0> {}
<MI 16ee0 SUBQ.W #0x1,D0> {}
<MI 16ee2 EXTW.L D0> {}
<MI 16ee4 MOVE.L D0,-(A7)> Δ-4 {[4, 'D0']}
<MI 16ee6 MOVEQ.L #0x00,D0> {[4, 'D0']}
<POP 16ee8-16eec Naked> Σ-4 ↓ →0x16ef2 ←0x17026
<MI 16ee8 CMP.L (A7),D0> {[-4-]}
<MI 16eea BLE 0x16ef2> {[-4-]}
<POP 16eec-16ef2 Naked> Σ-4 Δ-4 →0x1702c
<POP 16eec-16eee StackAdj> Δ-4 {[-8-]}
<MI 16eee BRA 0x1702c> {[-8-]}
<POP 16ef2-16ef4 Naked> Σ-4 Δ-4 ↓ ←0x16ee8
<MI 16ef2 MOVE.L D0,-(A7)> Δ-4 {[-4-]|[4, 'D0']}
<POP 16ef4-16f02 Naked> Σ-8 ↓ →0x16f04 ←0x16f4e
<MI 16ef4 MOVEQ.L #0x00,D5> {[-8-]}
<MI 16ef6 MOVE.W (A6-0x3e),D0> {[-8-]}
<MI 16ef8 SUBQ.W #0x1,D0> {[-8-]}
<MI 16efa MOVE.L (A7),D1> {[-8-]}
<MI 16efc EXTW.L D0> {[-8-]}
<MI 16efe CMP.L D0,D1> {[-8-]}
<MI 16f00 BNE 0x16f04> {[-8-]}
<POP 16f02-16f04 Naked> Σ-8 ↓
<MI 16f02 ADDQ.B #0x1,D5> {[-8-]}
<POP 16f04-16f0a Naked> Σ-8 ↓ →0x16f14 ←0x16ef4
<MI 16f04 TST.B (A6+0x10)> {[-8-]}
<MI 16f08 BEQ 0x16f14> {[-8-]}
<POP 16f0a-16f14 Naked> Σ-8 ↓
<Pointer.fp 0x16f0a <LVAR -0x05f @ 1(r)>> Δ-4 {[-8-]|[@@-95]}
<Call 0x16f0c 0x1640c> {[-8-]|[@@-95]}
_FSCALL_10408
<POP 16f12-16f14 StackAdj> Δ+4 {[-8-]}
<POP 16f14-16f1a Naked> Σ-8 ↓ →0x16f52 ←0x16f04
<MI 16f14 MOVE.B (A6-0x5f),D0> {[-8-]}
<MI 16f16 CMP.B #0x06,D0> {[-8-]}
<MI 16f18 BNE 0x16f52> {[-8-]}
<POP 16f1a-16f26 Naked> Σ-8 ↓ →0x16f32
<Call 0x16f1a 0x16884> {[-8-]}
_FSCALL_1042c
<MI 16f20 TST.B (A6+0x10)> {[-8-]}
<MI 16f24 BNE 0x16f32> {[-8-]}
<POP 16f26-16f32 Naked> Σ-8 Δ-6 →0x16f4c
<Const 0x16f26 0x2.2> Δ-2 {[-8-]|[#2]}
<Pointer.fp 0x16f28 <LVAR -0x05f @ 1(r)>> Δ-4 {[-8-]|[#2]|[@@-95]}
<Call 0x16f2a 0x16642> {[-8-]|[#2]|[@@-95]}
_FSCALL_10414
<MI 16f30 BRA 0x16f4c> {[-8-]|[#2]|[@@-95]}
<POP 16f32-16f36 Naked> Σ-8 ↓ →0x16f4e ←0x16f1a
<MI 16f32 TST.B D5> {[-8-]}
<MI 16f34 BNE 0x16f4e> {[-8-]}
<POP 16f36-16f4c Naked> Σ-8 Δ-6 ↓
<POP 0x16f36 LimitCheck 0x0 ≤ D7 ≤ 0x1> {[-8-]}
<MI 16f38 CLR.L D0> {[-8-]}
<MI 16f3a MOVE.W D7,D0> {[-8-]}
<MI 16f3c ASL.L #0x2,D0> {[-8-]}
<MI 16f3e MOVE.L (A6+D0.L-#0x10),-(A7)> Δ-4 {[-8-]|[4, '(A6+D0.L-#0x10)']}
<Const 0x16f42 0x400.2> Δ-2 {[-8-]|[4, '(A6+D0.L-#0x10)']|[#1024]}
<Call 0x16f46 0x16690> {[-8-]|[4, '(A6+D0.L-#0x10)']|[#1024]}
_FSCALL_10418
<POP 16f4c-16f4e Naked> Σ-14 Δ+6 ↓ ←0x16f26
<POP 16f4c-16f4e StackAdj> Δ+6 {[-8-]}
<POP 16f4e-16f50 Naked> Σ-8 →0x16ef4 ←0x16f32
<MI 16f4e BRA 0x16ef4> {[-8-]}
<POP 16f52-16f56 Naked> Σ-8 ↓ →0x16f62 ←0x16f14
<MI 16f52 TST.B D0> {[-8-]}
<MI 16f54 BEQ 0x16f62> {[-8-]}
<POP 16f56-16f62 Naked> Σ-8 ↓
<Const 0x16f56 0x2.2> Δ-2 {[-8-]|[#2]}
<Pointer.fp 0x16f58 <LVAR -0x05f @ 1(r)>> Δ-4 {[-8-]|[#2]|[@@-95]}
<Call 0x16f5a 0x167c6> {[-8-]|[#2]|[@@-95]}
_FSCALL_10428
<POP 16f60-16f62 StackAdj> Δ+6 {[-8-]}
<POP 16f62-16f66 Naked> Σ-8 ↓ →0x16f6c ←0x16f52
<MI 16f62 TST.W D7> {[-8-]}
<MI 16f64 BNE 0x16f6c> {[-8-]}
<POP 16f66-16f6c Naked> Σ-8 →0x16f70
<MI 16f66 MOVEQ.L #0x01,D7> {[-8-]}
<MI 16f68 MOVEQ.L #0x00,D6> {[-8-]}
<MI 16f6a BRA 0x16f70> {[-8-]}
<POP 16f6c-16f70 Naked> Σ-8 ↓ ←0x16f62
<MI 16f6c MOVEQ.L #0x00,D7> {[-8-]}
<MI 16f6e MOVEQ.L #0x01,D6> {[-8-]}
<POP 16f70-16f78 Naked> Σ-8 ↓ →0x17010 ←0x16f66
<MI 16f70 TST.B (A6+0x10)> {[-8-]}
<MI 16f74 BEQ 0x17010> {[-8-]}
<POP 16f78-16f7c Naked> Σ-8 ↓ →0x16f94
<MI 16f78 TST.B D5> {[-8-]}
<MI 16f7a BNE 0x16f94> {[-8-]}
<POP 16f7c-16f94 Naked> Σ-8 ↓
<POP 0x16f7c LimitCheck 0x0 ≤ D7 ≤ 0x1> {[-8-]}
<MI 16f7e CLR.L D0> {[-8-]}
<MI 16f80 MOVE.W D7,D0> {[-8-]}
<MI 16f82 ASL.L #0x2,D0> {[-8-]}
<MI 16f84 MOVE.L (A6+D0.L-#0x10),-(A7)> Δ-4 {[-8-]|[4, '(A6+D0.L-#0x10)']}
<Const 0x16f88 0x400.2> Δ-2 {[-8-]|[4, '(A6+D0.L-#0x10)']|[#1024]}
<Call 0x16f8c 0x16690> {[-8-]|[4, '(A6+D0.L-#0x10)']|[#1024]}
_FSCALL_10418
<POP 16f92-16f94 StackAdj> Δ+6 {[-8-]}
<POP 16f94-16fd0 Naked> Σ-8 ↓ →0x1700e ←0x16f78
<MI 16f94 MOVE.L (A6-0x18),-(A7)> Δ-4 {[-8-]|[4, '(A6-0x18)']}
<MI 16f98 MOVE.L (A7+0x4),D0> {[-8-]|[4, '(A6-0x18)']}
<POP 0x16f9c LimitCheck 0x0 ≤ D0 ≤ 0x4000> {[-8-]|[4, '(A6-0x18)']}
<MI 16fa6 MOVE.W D0,-(A7)> Δ-2 {[-8-]|[4, '(A6-0x18)']|[2, 'D0']}
<MI 16fa8 CLR.W -(A7)> Δ-2 {[-8-]|[4, '(A6-0x18)']|[2, 'D0']|[#0]}
<Const 0x16faa 0x200.2> Δ-2 {[-8-]|[4, '(A6-0x18)']|[2, 'D0']|[#0]|[#512]}
<Const 0x16fae 0x1.2> Δ-2 {[-8-]|[4, '(A6-0x18)']|[2, 'D0']|[#0]|[#512]|[#1]}
<POP 0x16fb0 LimitCheck 0x0 ≤ D6 ≤ 0x1> {[-8-]|[4, '(A6-0x18)']|[2, 'D0']|[#0]|[#512]|[#1]}
<MI 16fb2 CLR.L D0> {[-8-]|[4, '(A6-0x18)']|[2, 'D0']|[#0]|[#512]|[#1]}
<MI 16fb4 MOVE.W D6,D0> {[-8-]|[4, '(A6-0x18)']|[2, 'D0']|[#0]|[#512]|[#1]}
<MI 16fb6 ASL.L #0x2,D0> {[-8-]|[4, '(A6-0x18)']|[2, 'D0']|[#0]|[#512]|[#1]}
<MI 16fb8 MOVE.L (A6+D0.L-#0x10),-(A7)> Δ-4 {[-8-]|[4, '(A6-0x18)']|[2, 'D0']|[#0]|[#512]|[#1]|[4, '(A6+D0.L-#0x10)']}
<Pointer.fp 0x16fbc <LVAR -0x05d @ 1(r)>> Δ-4 {[-8-]|[4, '(A6-0x18)']|[2, 'D0']|[#0]|[#512]|[#1]|[4, '(A6+D0.L-#0x10)']|[@@-93]}
<Call 0x16fc0 0x13bb8> {[-8-]|[4, '(A6-0x18)']|[2, 'D0']|[#0]|[#512]|[#1]|[4, '(A6+D0.L-#0x10)']|[@@-93]}
_WriteFile(file : File; y : W; x : W; a : W; b: B; c: L; d: L)
<POP 16fc6-16fca StackAdj> Δ+20 {[-8-]}
<MI 16fca TST.B (A6-0x5d)> {[-8-]}
<MI 16fce BEQ 0x1700e> {[-8-]}
<POP 16fd0-16fd4 Naked> Σ-8 ↓ →0x16fde
<MI 16fd0 TST.B D5> {[-8-]}
<MI 16fd2 BNE 0x16fde> {[-8-]}
<POP 16fd4-16fde Naked> Σ-8 ↓
<Pointer.fp 0x16fd4 <LVAR -0x05f @ 1(r)>> Δ-4 {[-8-]|[@@-95]}
<Call 0x16fd6 0x1640c> {[-8-]|[@@-95]}
_FSCALL_10408
<POP 16fdc-16fde StackAdj> Δ+4 {[-8-]}
<POP 16fde-1700e Naked> Σ-8 ↓ ←0x16fd0
<Blob 0x16fde [26] @> Δ-26 {[-8-]|[«26""»]}
<Const 0x16ff0 0xe.2> Δ-2 {[-8-]|[«26""»]|[#14]}
<POP 16ff4-16ff6 StackAdj> Δ-4 {[-8-]|[«26""»]|[#14]|[-4-]}
<Lit 0x16ff6 25> {[-8-]|[«26""»]|[#14]|[$$Unrecoverable file error.]}
<Call 0x17004 0x14e18> {[-8-]|[«26""»]|[#14]|[$$Unrecoverable file error.]}
_PopProgram(status : Byte; msg : String)
<POP 1700a-1700e StackAdj> Δ+32 {[-8-]}
<POP 1700e-17010 Naked> Σ-8 →0x17020 ←0x16f94
<MI 1700e BRA 0x17020> {[-8-]}
<POP 17010-17014 Naked> Σ-8 ↓ →0x17020 ←0x16f70
<MI 17010 TST.B D5> {[-8-]}
<MI 17012 BNE 0x17020> {[-8-]}
<POP 17014-17020 Naked> Σ-8 ↓
<Const 0x17014 0x2.2> Δ-2 {[-8-]|[#2]}
<Pointer.fp 0x17016 <LVAR -0x05f @ 1(r)>> Δ-4 {[-8-]|[#2]|[@@-95]}
<Call 0x17018 0x16642> {[-8-]|[#2]|[@@-95]}
_FSCALL_10414
<POP 1701e-17020 StackAdj> Δ+6 {[-8-]}
<POP 17020-17026 Naked> Σ-8 ↓ →0x1702c ←0x1700e ←0x17010
<MI 17020 MOVE.L (A7),D0> {[-8-]}
<MI 17022 ADDQ.L #0x1,D0> {[-8-]}
<MI 17024 BVS 0x1702c> {[-8-]}
<POP 17026-1702c Naked> Σ-8 Δ+4 →0x16ee8
<POP 17026-17028 StackAdj> Δ+4 {[-4-]}
<MI 17028 BRA 0x16ee8> {[-4-]}
<POP 1702c-17034 Naked> Σ-8 Δ+8 ↓ →0x1709e ←0x16eec ←0x17020
<POP 1702c-1702e StackAdj> Δ+8 {}
<MI 1702e TST.B (A6+0x10)> {}
<MI 17032 BEQ 0x1709e> {}
<POP 17034-1705e Naked> Σ0 ↓ →0x17068
<Pointer.fp 0x17034 <LVAR -0x01c @ 4(rw)>> Δ-4 {[@@-28]}
<Call 0x17038 0x10d36> {[@@-28]}
_FreeString(VAR a : String)
<POP 1703e-17040 StackAdj> Δ+2 {[-2-]}
<MI 17040 CLR.B (A7)> {[-2-]}
<Const 0x17042 0x1.2> Δ-2 {[-2-]|[#1]}
<Const 0x17044 0x1.4> Δ-4 {[-2-]|[#1]|[##1]}
<Pointer.fp 0x17048 <LVAR -0x05d @ 1(r)>> Δ-4 {[-2-]|[#1]|[##1]|[@@-93]}
<Pointer.fp 0x1704c <LVAR -0x018 @ 4(r)>> Δ-4 {[-2-]|[#1]|[##1]|[@@-93]|[@@-24]}
<Call 0x17050 0x13c8a> {[-2-]|[#1]|[##1]|[@@-93]|[@@-24]}
_CloseFile(a : L; VAR status : B; VAR file : File)
<POP 17056-1705a StackAdj> Δ+16 {}
<MI 1705a TST.B D5> {}
<MI 1705c BNE 0x17068> {}
<POP 1705e-17068 Naked> Σ0 ↓
<Pointer.fp 0x1705e <LVAR -0x05f @ 1(r)>> Δ-4 {[@@-95]}
<Call 0x17060 0x1640c> {[@@-95]}
_FSCALL_10408
<POP 17066-17068 StackAdj> Δ+4 {}
<POP 17068-1706e Naked> Σ0 ↓ →0x1709e ←0x17034
<MI 17068 TST.B (A6-0x5d)> {}
<MI 1706c BEQ 0x1709e> {}
<POP 1706e-1709e Naked> Σ0 ↓
<Blob 0x1706e [18] @> Δ-18 {[«18""»]}
<Const 0x17080 0xe.2> Δ-2 {[«18""»]|[#14]}
<POP 17084-17086 StackAdj> Δ-4 {[«18""»]|[#14]|[-4-]}
<Lit 0x17086 17> {[«18""»]|[#14]|[$$File close error.]}
<Call 0x17094 0x14e18> {[«18""»]|[#14]|[$$File close error.]}
_PopProgram(status : Byte; msg : String)
<POP 1709a-1709e StackAdj> Δ+24 {}
<POP 1709e-170b0 Naked> Σ0 ↓ →0x170bc ←0x1702c ←0x17068
<Const 0x1709e 0x7.2> Δ-2 {[#7]}
<Pointer.fp 0x170a2 <LVAR -0x05f @ 1(r)>> Δ-4 {[#7]|[@@-95]}
<Call 0x170a4 0x16642> {[#7]|[@@-95]}
_FSCALL_10414
<POP 170aa-170ac StackAdj> Δ+6 {}
<MI 170ac TST.B (A6-0x5f)> {}
<MI 170ae BEQ 0x170bc> {}
<POP 170b0-170bc Naked> Σ0 ↓
<Const 0x170b0 0x2.2> Δ-2 {[#2]}
<Pointer.fp 0x170b2 <LVAR -0x05f @ 1(r)>> Δ-4 {[#2]|[@@-95]}
<Call 0x170b4 0x167c6> {[#2]|[@@-95]}
_FSCALL_10428
<POP 170ba-170bc StackAdj> Δ+6 {}
<POP 170bc-170c4 Epilogue> Σ0 ←0x16cec ←0x1709e
@ 170c4
_FileReadLine(file : File; VAR a : String; VAR b : Byte)
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x002 @>
<POP 170c4-17228 Body> Δ-4
<POP 170c4-170da Prologue> Σ0 ↓
<POP 170da-170ea RegCacheLoad> Σ0 ↓
<POP 170ea-17102 Naked> Σ0 Δ-8 ↓
<MI 170ea LEA.L 0x1bdfe,A0> {}
<MI 170f0 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 170f2 MOVE.L (A7)+,D5> Δ+4 {}
<MI 170f4 MOVEA.L (A6+0xc),A0> {}
<MI 170f8 MOVEA.L (A0),A0> {}
<MI 170fa MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 170fc CLR.W (A0)> {[4, 'A0']}
<MI 170fe MOVEA.L (A6+0x10),A1> {[4, 'A0']}
<MI 17100 MOVE.L A1,-(A7)> Δ-4 {[4, 'A0']|[4, 'A1']}
<POP 17102-1710e Naked> Σ-8 ↓ →0x1711a ←0x17204
<MI 17102 MOVEA.L (A7),A0> {[-8-]}
<MI 17104 MOVEA.L 0x10026,A1> {[-8-]}
<MI 1710a CMPA.L (A6+0x10),A1> {[-8-]}
<MI 1710c BNE 0x1711a> {[-8-]}
<POP 1710e-1711a Naked> Σ-8 ↓ →0x17162
<MI 1710e MOVE.W 0x1002a,D0> {[-8-]}
<MI 17114 CMP.W (A0+0x48),D0> {[-8-]}
<MI 17118 BEQ 0x17162> {[-8-]}
<POP 1711a-17124 Naked> Σ-8 ↓ →0x1712e ←0x17102
<MI 1711a MOVE.W (A0+0x48),D0> {[-8-]}
<MI 1711e CMP.W (A0+0x20),D0> {[-8-]}
<MI 17122 BLT 0x1712e> {[-8-]}
<POP 17124-1712e Naked> Σ-8 Δ+4 →0x1720c
<MI 17124 MOVEA.L (A6+0x8),A1> {[-8-]}
<MI 17126 MOVE.B #0x01,(A1)> {[-8-]}
<POP 17128-1712a StackAdj> Δ+4 {[-4-]}
<MI 1712a BRA 0x1720c> {[-4-]}
<POP 1712e-17162 Naked> Σ-8 ↓ ←0x1711a
<MI 1712e MOVEA.L (A7),A1> {[-8-]}
<MI 17130 MOVE.W (A1+0x48),D0> {[-8-]}
<POP 0x17134 LimitCheck 0x0 ≤ D0 ≤ 0x4000> {[-8-]}
<MI 17138 MOVE.L (A6+0x10),-(A7)> Δ-4 {[-8-]|[4, '(A6+0x10)']}
<MI 1713a MOVE.W D0,-(A7)> Δ-2 {[-8-]|[4, '(A6+0x10)']|[2, 'D0']}
<MI 1713c CLR.W -(A7)> Δ-2 {[-8-]|[4, '(A6+0x10)']|[2, 'D0']|[#0]}
<Const 0x1713e 0x200.2> Δ-2 {[-8-]|[4, '(A6+0x10)']|[2, 'D0']|[#0]|[#512]}
<Const 0x17142 0x2.2> Δ-2 {[-8-]|[4, '(A6+0x10)']|[2, 'D0']|[#0]|[#512]|[#2]}
<MI 17146 MOVE.L D5,-(A7)> Δ-4 {[-8-]|[4, '(A6+0x10)']|[2, 'D0']|[#0]|[#512]|[#2]|[4, 'D5']}
<Pointer.fp 0x17148 <LVAR -0x002 @>> Δ-4 {[-8-]|[4, '(A6+0x10)']|[2, 'D0']|[#0]|[#512]|[#2]|[4, 'D5']|[@@-2]}
<Call 0x1714c 0x13ae6> {[-8-]|[4, '(A6+0x10)']|[2, 'D0']|[#0]|[#512]|[#2]|[4, 'D5']|[@@-2]}
_ReadFile(file : File; w : W; x : W; a : W; b: B; c : L; d : L)
<POP 17152-17156 StackAdj> Δ+20 {[-8-]}
<MI 17156 MOVE.L (A6+0x10),0x10026> {[-8-]}
<MI 1715c MOVE.W D0,0x1002a> {[-8-]}
<POP 17162-17178 Naked> Σ-8 ↓ →0x1717e ←0x1710e
<MI 17162 MOVEA.L (A7),A0> {[-8-]}
<MI 17164 MOVE.W (A0+0x4a),D0> {[-8-]}
<POP 0x17168 LimitCheck 0x0 ≤ D0 ≤ 0x3ff> {[-8-]}
<MI 1716c LEA.L 0x1bdf6,A1> {[-8-]}
<MI 17172 MOVE.B (A1+D0.W+#0x8),D6> {[-8-]}
<MI 17176 BNE 0x1717e> {[-8-]}
<POP 17178-1717e Naked> Σ-8 →0x171b4
<MI 17178 MOVEA.L (A6+0x8),A0> {[-8-]}
<MI 1717a MOVE.B #0x01,(A0)> {[-8-]}
<MI 1717c BRA 0x171b4> {[-8-]}
<POP 1717e-1719e Naked> Σ-8 ↓ →0x171b0 ←0x17162
<MI 1717e MOVE.W (A0+0x4a),D0> {[-8-]}
<MI 17182 EXTW.L D0> {[-8-]}
<MI 17184 ADDQ.L #0x1,D0> {[-8-]}
<POP 0x17186 LimitCheck -0x8000 ≤ D0 ≤ 0x7fff> {[-8-]}
<MI 17194 MOVE.W D0,(A0+0x4a)> {[-8-]}
<MI 17198 CMPI.W #0x0400,D0> {[-8-]}
<MI 1719c BNE 0x171b0> {[-8-]}
<POP 1719e-171b0 Naked> Σ-8 ↓
<MI 1719e MOVE.W (A0+0x48),D0> {[-8-]}
<MI 171a2 ADDQ.W #0x1,D0> {[-8-]}
<POP 0x171a4 LimitCheck 0x0 ≤ D0 ≤ 0x4000> {[-8-]}
<MI 171a8 MOVE.W D0,(A0+0x48)> {[-8-]}
<MI 171ac CLR.W (A0+0x4a)> {[-8-]}
<POP 171b0-171b4 Naked> Σ-8 ↓ ←0x1717e
<MI 171b0 MOVEA.L (A6+0x8),A0> {[-8-]}
<MI 171b2 CLR.B (A0)> {[-8-]}
<POP 171b4-171bc Naked> Σ-8 ↓ →0x171c2 ←0x17178
<MI 171b4 MOVEQ.L #0x00,D7> {[-8-]}
<MI 171b6 MOVEA.L (A6+0x8),A0> {[-8-]}
<MI 171b8 TST.B (A0)> {[-8-]}
<MI 171ba BNE 0x171c2> {[-8-]}
<POP 171bc-171c2 Naked> Σ-8 ↓ →0x171c4
<MI 171bc CMPI.B #0x0a,D6> {[-8-]}
<MI 171c0 BNE 0x171c4> {[-8-]}
<POP 171c2-171c4 Naked> Σ-8 ↓ ←0x171b4
<MI 171c2 ADDQ.B #0x1,D7> {[-8-]}
<POP 171c4-171c8 Naked> Σ-8 ↓ →0x17204 ←0x171bc
<MI 171c4 TST.B D7> {[-8-]}
<MI 171c6 BNE 0x17204> {[-8-]}
<POP 171c8-171ce Naked> Σ-8 ↓ →0x17204
<MI 171c8 CMPI.B #0x0d,D6> {[-8-]}
<MI 171cc BEQ 0x17204> {[-8-]}
<POP 171ce-17202 Naked> Σ-8 ↓ →0x17204
<MI 171ce MOVEA.L (A7+0x4),A0> {[-8-]}
<MI 171d2 MOVE.W (A0),D0> {[-8-]}
<MI 171d4 EXTW.L D0> {[-8-]}
<MI 171d6 ADDQ.L #0x1,D0> {[-8-]}
<POP 0x171d8 LimitCheck -0x8000 ≤ D0 ≤ 0x7fff> {[-8-]}
<MI 171e6 MOVE.W D0,(A0)> {[-8-]}
<MI 171e8 EXTW.L D0> {[-8-]}
<MI 171ea SUBQ.L #0x1,D0> {[-8-]}
<POP 0x171ec LimitCheck 0x0 ≤ D0 ≤ 0x7d> {[-8-]}
<MI 171f6 MOVE.B D6,(A0+D0.L+#0x2)> {[-8-]}
<MI 171fa MOVE.W (A0),D0> {[-8-]}
<MI 171fc CMPI.W #0x007e,D0> {[-8-]}
<MI 17200 BNE 0x17204> {[-8-]}
<POP 17202-17204 Naked> Σ-8 ↓
<MI 17202 MOVEQ.L #0x01,D7> {[-8-]}
<POP 17204-1720a Naked> Σ-8 ↓ →0x17102 ←0x171c4 ←0x171c8 ←0x171ce
<MI 17204 TST.B D7> {[-8-]}
<MI 17206 BEQ 0x17102> {[-8-]}
<POP 1720a-1720c Naked> Σ-8 Δ+4 ↓
<POP 1720a-1720c StackAdj> Δ+4 {[-4-]}
<POP 1720c-17214 Naked> Σ-4 ↓ →0x1721c ←0x17124
<MI 1720c MOVEA.L (A6+0x8),A0> {[-4-]}
<MI 1720e MOVEQ.L #0x00,D0> {[-4-]}
<MI 17210 TST.B (A0)> {[-4-]}
<MI 17212 BEQ 0x1721c> {[-4-]}
<POP 17214-1721a Naked> Σ-4 ↓ →0x1721c
<MI 17214 MOVEA.L (A7),A1> {[-4-]}
<MI 17216 TST.W (A1)> {[-4-]}
<MI 17218 BNE 0x1721c> {[-4-]}
<POP 1721a-1721c Naked> Σ-4 ↓
<MI 1721a ADDQ.B #0x1,D0> {[-4-]}
<POP 1721c-17220 Naked> Σ-4 Δ+4 ↓ ←0x1720c ←0x17214
<MI 1721c MOVE.B D0,(A0)> {[-4-]}
<POP 1721e-17220 StackAdj> Δ+4 {}
<POP 17220-17228 Epilogue> Σ0
@ 17228
_FSCALL_10440
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x006 4(rw)>
<LVAR -0x012 4(rw)>
<LVAR -0x017 @>
<POP 17228-17386 Body>
<POP 17228-1723e Prologue> Σ0 ↓
<POP 1723e-17250 RegCacheLoad> Σ0 ↓
<POP 17250-1725e Naked> Σ0 ↓ →0x1726c
<MI 17250 MOVEA.L (A6+0xc),A0> {}
<MI 17252 MOVE.W (A0),D0> {}
<MI 17254 EXTW.L D0> {}
<MI 17256 MOVE.L D0,(A6-0x6)> {}
<MI 1725a AND.W #0x01,D0> {}
<MI 1725c BNE 0x1726c> {}
<POP 1725e-1726c Naked> Σ0 ↓
<MI 1725e MOVE.L (A6+0xc),-(A7)> Δ-4 {[4, '(A6+0xc)']}
<Const 0x17260 0xd.2> Δ-2 {[4, '(A6+0xc)']|[#13]}
<Call 0x17264 0x10d66> {[4, '(A6+0xc)']|[#13]}
_AppendChar(MOD b : String; a : char)
<POP 1726a-1726c StackAdj> Δ+6 {}
<POP 1726c-172a4 Naked> Σ0 Δ-4 ↓ →0x172aa ←0x17250
<MI 1726c MOVE.L (A6+0xc),-(A7)> Δ-4 {[4, '(A6+0xc)']}
<Const 0x1726e 0xa.2> Δ-2 {[4, '(A6+0xc)']|[#10]}
<Call 0x17272 0x10d66> {[4, '(A6+0xc)']|[#10]}
_AppendChar(MOD b : String; a : char)
<POP 17278-1727a StackAdj> Δ+6 {}
<MI 1727a LEA.L (A0+0x2),A1> {}
<MI 1727e MOVE.L A1,-(A7)> Δ-4 {[4, 'A1']}
<MI 17280 MOVE.L (A7)+,D5> Δ+4 {}
<MI 17282 MOVE.W (A0),D0> {}
<MI 17284 EXTW.L D0> {}
<MI 17286 DIVS.W #0x02,D0> {}
<MI 17288 EXTW.L D0> {}
<MI 1728a MOVE.L D0,(A6-0x12)> {}
<MI 1728c MOVEA.L (A6+0x8),A0> {}
<MI 17290 CLR.B (A0)> {}
<MI 17292 MOVEA.L (A6+0x10),A1> {}
<MI 17296 MOVE.L A1,-(A7)> Δ-4 {[4, 'A1']}
<MI 17298 MOVEA.L 0x10026,A2> {[4, 'A1']}
<MI 1729e CMPA.L (A6+0x10),A2> {[4, 'A1']}
<MI 172a2 BNE 0x172aa> {[4, 'A1']}
<POP 172a4-172aa Naked> Σ-4 ↓
<MI 172a4 MOVE.L #0x01,0x10026> {[-4-]}
<POP 172aa-172b4 Naked> Σ-4 ↓ →0x172ba ←0x1726c
<MI 172aa MOVE.W (A1+0x48),D0> {[-4-]}
<MI 172ae CMP.W (A1+0x20),D0> {[-4-]}
<MI 172b2 BLT 0x172ba> {[-4-]}
<POP 172b4-172ba Naked> Σ-4 →0x17366
<MI 172b4 MOVE.B #0x01,(A0)> {[-4-]}
<MI 172b6 BRA 0x17366> {[-4-]}
<POP 172ba-172c8 Naked> Σ-4 ↓ ←0x172aa
<MI 172ba MOVEA.L (A7),A0> {[-4-]}
<MI 172bc MOVE.W (A0+0x4a),D0> {[-4-]}
<MI 172c0 EXTW.L D0> {[-4-]}
<MI 172c2 DIVS.W #0x02,D0> {[-4-]}
<MI 172c4 EXTW.L D0> {[-4-]}
<MI 172c6 MOVE.L D0,D7> {[-4-]}
<POP 172c8-172d4 Naked> Σ-4 ↓ →0x172d6 ←0x1734a
<MI 172c8 MOVE.L #0x200,D6> {[-4-]}
<MI 172ce SUB.L D7,D6> {[-4-]}
<MI 172d0 CMP.L (A6-0x12),D6> {[-4-]}
<MI 172d2 BLE 0x172d6> {[-4-]}
<POP 172d4-172d6 Naked> Σ-4 ↓
<MI 172d4 MOVE.L (A6-0x12),D6> {[-4-]}
<POP 172d6-17324 Naked> Σ-4 ↓ →0x17340 ←0x172c8
<MI 172d6 MOVEA.L (A7),A0> {[-4-]}
<MI 172d8 MOVE.L (A6+0x10),-(A7)> Δ-4 {[-4-]|[4, '(A6+0x10)']}
<MI 172dc MOVE.W (A0+0x48),D0> {[-4-]|[4, '(A6+0x10)']}
<POP 0x172e0 LimitCheck 0x0 ≤ D0 ≤ 0x4000> {[-4-]|[4, '(A6+0x10)']}
<MI 172e4 MOVE.W D0,-(A7)> Δ-2 {[-4-]|[4, '(A6+0x10)']|[2, 'D0']}
<POP 0x172e6 LimitCheck 0x0 ≤ D7 ≤ 0x1ff> {[-4-]|[4, '(A6+0x10)']|[2, 'D0']}
<MI 172f0 MOVE.W D7,-(A7)> Δ-2 {[-4-]|[4, '(A6+0x10)']|[2, 'D0']|[2, 'D7']}
<POP 0x172f2 LimitCheck 0x1 ≤ D6 ≤ 0x200> {[-4-]|[4, '(A6+0x10)']|[2, 'D0']|[2, 'D7']}
<MI 17300 MOVE.W D6,-(A7)> Δ-2 {[-4-]|[4, '(A6+0x10)']|[2, 'D0']|[2, 'D7']|[2, 'D6']}
<Const 0x17302 0x2.2> Δ-2 {[-4-]|[4, '(A6+0x10)']|[2, 'D0']|[2, 'D7']|[2, 'D6']|[#2]}
<MI 17304 MOVE.L D5,-(A7)> Δ-4 {[-4-]|[4, '(A6+0x10)']|[2, 'D0']|[2, 'D7']|[2, 'D6']|[#2]|[4, 'D5']}
<Pointer.fp 0x17306 <LVAR -0x017 @>> Δ-4 {[-4-]|[4, '(A6+0x10)']|[2, 'D0']|[2, 'D7']|[2, 'D6']|[#2]|[4, 'D5']|[@@-23]}
<Call 0x1730a 0x13bb8> {[-4-]|[4, '(A6+0x10)']|[2, 'D0']|[2, 'D7']|[2, 'D6']|[#2]|[4, 'D5']|[@@-23]}
_WriteFile(file : File; y : W; x : W; a : W; b: B; c: L; d: L)
<POP 17310-17314 StackAdj> Δ+20 {[-4-]}
<MI 17314 MOVE.L D6,D0> {[-4-]}
<MI 17316 ASL.L #0x1,D0> {[-4-]}
<MI 17318 ADD.L D0,D5> {[-4-]}
<MI 1731a ADD.L D6,D7> {[-4-]}
<MI 1731c CMPI.L #0x00000200,D7> {[-4-]}
<MI 17322 BNE 0x17340> {[-4-]}
<POP 17324-1733a Naked> Σ-4 ↓ →0x17340
<MI 17324 MOVE.W (A0+0x48),D0> {[-4-]}
<MI 17328 ADDQ.W #0x1,D0> {[-4-]}
<POP 0x1732a LimitCheck 0x0 ≤ D0 ≤ 0x4000> {[-4-]}
<MI 1732e MOVE.W D0,(A0+0x48)> {[-4-]}
<MI 17332 MOVEQ.L #0x00,D7> {[-4-]}
<MI 17334 CMP.W (A0+0x20),D0> {[-4-]}
<MI 17338 BLT 0x17340> {[-4-]}
<POP 1733a-17340 Naked> Σ-4 ↓
<MI 1733a MOVEA.L (A6+0x8),A1> {[-4-]}
<MI 1733e MOVE.B #0x01,(A1)> {[-4-]}
<POP 17340-1734a Naked> Σ-4 ↓ →0x17350 ←0x172d6 ←0x17324
<MI 17340 SUB.L D6,(A6-0x12)> {[-4-]}
<MI 17342 MOVEA.L (A6+0x8),A1> {[-4-]}
<MI 17346 TST.B (A1)> {[-4-]}
<MI 17348 BNE 0x17350> {[-4-]}
<POP 1734a-17350 Naked> Σ-4 ↓ →0x172c8
<MI 1734a TST.L (A6-0x12)> {[-4-]}
<MI 1734c BNE 0x172c8> {[-4-]}
<POP 17350-17366 Naked> Σ-4 ↓ ←0x17340
<MI 17350 MOVE.L D7,D0> {[-4-]}
<MI 17352 ASL.L #0x1,D0> {[-4-]}
<POP 0x17354 LimitCheck -0x8000 ≤ D0 ≤ 0x7fff> {[-4-]}
<MI 17362 MOVE.W D0,(A0+0x4a)> {[-4-]}
<POP 17366-1737e Naked> Σ-4 Δ+4 ↓ ←0x172b4
<POP 17366-17368 StackAdj> Δ+4 {}
<MI 17368 MOVEA.L (A6+0xc),A0> {}
<MI 1736a MOVE.L (A6-0x6),D0> {}
<POP 0x1736e LimitCheck -0x8000 ≤ D0 ≤ 0x7fff> {}
<MI 1737c MOVE.W D0,(A0)> {}
<POP 1737e-17386 Epilogue> Σ0
@ 17386
_FSCALL_10444
<LVAR 0x008 4(r)>
<POP 17386-173ce Body>
<POP 17386-1739c Prologue> Σ0 ↓
<POP 1739c-173b4 Naked> Σ0 ↓ →0x173c6
<MI 1739c MOVEA.L (A6+0x8),A0> {}
<MI 173a0 CLR.W (A0+0x48)> {}
<MI 173a4 CLR.W (A0+0x4a)> {}
<MI 173a8 MOVEA.L 0x10026,A0> {}
<MI 173ae CMPA.L (A6+0x8),A0> {}
<MI 173b2 BNE 0x173c6> {}
<POP 173b4-173bc Naked> Σ0 ↓ →0x173c6
<MI 173b4 TST.W 0x1002a> {}
<MI 173ba BEQ 0x173c6> {}
<POP 173bc-173c6 Naked> Σ0 ↓
<MI 173bc MOVE.L #0x1,0x10026> {}
<POP 173c6-173ce Epilogue> Σ0 ←0x1739c ←0x173b4
@ 173ce
_FSCALL_10448
<LVAR 0x008 4(r)>
<LVAR -0x004 @>
<LVAR -0x008 @ 4(r)>
<POP 173ce-1742e Body>
<POP 173ce-173e4 Prologue> Σ0 ↓
<POP 173e4-173e6 RegCacheLoad> Σ0 ↓
<POP 173e6-17426 Naked> Σ0 ↓
<MI 173e6 CLR.L (A6-0x8)> {}
<MI 173ea MOVEA.L (A6+0x8),A0> {}
<MI 173ee MOVE.L (A6+0x8),-(A7)> Δ-4 {[4, '(A6+0x8)']}
<MI 173f2 MOVE.W (A0+0x48),D0> {[4, '(A6+0x8)']}
<POP 0x173f6 LimitCheck 0x0 ≤ D0 ≤ 0x4000> {[4, '(A6+0x8)']}
<MI 173fa MOVE.W D0,-(A7)> Δ-2 {[4, '(A6+0x8)']|[2, 'D0']}
<MI 173fc MOVE.W (A0+0x4a),D0> {[4, '(A6+0x8)']|[2, 'D0']}
<MI 17400 EXTW.L D0> {[4, '(A6+0x8)']|[2, 'D0']}
<MI 17402 DIVS.W #0x02,D0> {[4, '(A6+0x8)']|[2, 'D0']}
<POP 17404-17406 StackAdj> Δ-2 {[4, '(A6+0x8)']|[2, 'D0']|[-2-]}
<POP 0x17406 LimitCheck 0x0 ≤ D0 ≤ 0x1ff> {[4, '(A6+0x8)']|[2, 'D0']|[-2-]}
<MI 1740a MOVE.W D0,(A7)> {[4, '(A6+0x8)']|[2, 'D0']|[2, 'D0']}
<Const 0x1740c 0x1.2> Δ-2 {[4, '(A6+0x8)']|[2, 'D0']|[2, 'D0']|[#1]}
<Const 0x17410 0x2.2> Δ-2 {[4, '(A6+0x8)']|[2, 'D0']|[2, 'D0']|[#1]|[#2]}
<MI 17412 LEA.L (A6-0x8),A0> {[4, '(A6+0x8)']|[2, 'D0']|[2, 'D0']|[#1]|[#2]}
<MI 17416 MOVE.L A0,-(A7)> Δ-4 {[4, '(A6+0x8)']|[2, 'D0']|[2, 'D0']|[#1]|[#2]|[4, 'A0']}
<Pointer.fp 0x17418 <LVAR -0x004 @>> Δ-4 {[4, '(A6+0x8)']|[2, 'D0']|[2, 'D0']|[#1]|[#2]|[4, 'A0']|[@@-4]}
<Call 0x1741c 0x13bb8> {[4, '(A6+0x8)']|[2, 'D0']|[2, 'D0']|[#1]|[#2]|[4, 'A0']|[@@-4]}
_WriteFile(file : File; y : W; x : W; a : W; b: B; c: L; d: L)
<POP 17422-17426 StackAdj> Δ+20 {}
<POP 17426-1742e Epilogue> Σ0
@ 17484
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x004 @ 4(rw)>
<POP 17484-1756a Body>
<POP 17484-1749a Prologue> Σ0 ↓
<POP 1749a-174ac RegCacheLoad> Σ0 ↓
<POP 174ac-174ea Naked> Σ0 ↓ →0x17562
<MI 174ac MOVEA.L (A6+0x8),A0> {}
<MI 174b0 MOVE.L #0x01,(A0)> {}
<Blob 0x174b2 [2] @> Δ-2 {[«2""»]}
<POP 174b6-174b8 StackAdj> Δ-4 {[«2""»]|[-4-]}
<Lit 0x174b8 2> {[«2""»]|[$$\ ]}
<MI 174ca MOVE.L (A7)+,(A6-0x4)> Δ+4 {[«2""»]}
<POP 174cc-174ce StackAdj> Δ-2 {[«2""»]|[-2-]}
<MI 174ce MOVE.L (A6+0xc),-(A7)> Δ-4 {[«2""»]|[-2-]|[4, '(A6+0xc)']}
<MI 174d0 MOVE.L (A6-0x4),-(A7)> Δ-4 {[«2""»]|[-2-]|[4, '(A6+0xc)']|[4, '(A6-0x4)']}
<Call 0x174d2 0x115f4> {[«2""»]|[-2-]|[4, '(A6+0xc)']|[4, '(A6-0x4)']}
_FSCALL_10300
<POP 174d8-174da StackAdj> Δ+8 {[«2""»]|[-2-]}
<MI 174da MOVE.L (A7)+,D6> Δ+4 {}
<Pointer.fp 0x174dc <LVAR -0x004 @ 4(rw)>> Δ-4 {[@@-4]}
<Call 0x174de 0x10d36> {[@@-4]}
_FreeString(VAR a : String)
<POP 174e4-174e6 StackAdj> Δ+4 {}
<MI 174e6 TST.L D6> {}
<MI 174e8 BEQ 0x17562> {}
<POP 174ea-1751e Naked> Σ0 Δ-8 ↓
<POP 174ea-174ec StackAdj> Δ-4 {[-4-]}
<MI 174ec MOVE.L (A6+0xc),-(A7)> Δ-4 {[-4-]|[4, '(A6+0xc)']}
<Call 0x174ee 0x10eda> {[-4-]|[4, '(A6+0xc)']}
_StringDup(a : String) : String
<POP 174f4-174f6 StackAdj> Δ+4 {[-4-]}
<MI 174f6 MOVE.L (A7)+,(A0)> Δ+4 {}
<MI 174f8 MOVEA.L (A0),A0> {}
<MI 174fa MOVE.L D6,D0> {}
<MI 174fc SUBQ.L #0x1,D0> {}
<POP 0x174fe LimitCheck -0x8000 ≤ D0 ≤ 0x7fff> {}
<MI 1750c MOVE.W D0,(A0)> {}
<MI 1750e MOVEA.L (A6+0xc),A0> {}
<MI 17510 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 17512 MOVE.L D6,D0> {[4, 'A0']}
<MI 17514 ADDQ.L #0x1,D0> {[4, 'A0']}
<MI 17516 MOVE.W (A0),D1> {[4, 'A0']}
<MI 17518 EXTW.L D1> {[4, 'A0']}
<MI 1751a MOVE.L D1,-(A7)> Δ-4 {[4, 'A0']|[4, 'D1']}
<MI 1751c MOVE.L D0,D7> {[4, 'A0']|[4, 'D1']}
<POP 1751e-17522 Naked> Σ-8 ↓ →0x17546 ←0x17522
<MI 1751e CMP.L (A7),D7> {[-8-]}
<MI 17520 BGT 0x17546> {[-8-]}
<POP 17522-17546 Naked> Σ-8 ↓ →0x1751e
<MI 17522 MOVE.L D7,D0> {[-8-]}
<MI 17524 SUB.L D6,D0> {[-8-]}
<MI 17526 SUBQ.L #0x1,D0> {[-8-]}
<POP 0x17528 LimitCheck 0x0 ≤ D0 ≤ 0x7d> {[-8-]}
<MI 1752e MOVEA.L (A7+0x4),A0> {[-8-]}
<MI 17532 MOVE.L D7,D1> {[-8-]}
<MI 17534 SUBQ.L #0x1,D1> {[-8-]}
<POP 0x17536 LimitCheck 0x0 ≤ D1 ≤ 0x7d> {[-8-]}
<MI 1753c MOVE.B (A0+D1.L+#0x2),(A0+D0.L+#0x2)> {[-8-]}
<MI 17542 ADDQ.L #0x1,D7> {[-8-]}
<MI 17544 BVC 0x1751e> {[-8-]}
<POP 17546-17562 Naked> Σ-8 Δ+8 ↓ ←0x1751e
<POP 17546-17548 StackAdj> Δ+4 {[-4-]}
<MI 17548 MOVEA.L (A7),A0> {[-4-]}
<MI 1754a MOVE.W (A0),D0> {[-4-]}
<MI 1754c EXTW.L D0> {[-4-]}
<MI 1754e SUB.L D6,D0> {[-4-]}
<POP 0x17550 LimitCheck -0x8000 ≤ D0 ≤ 0x7fff> {[-4-]}
<MI 1755e MOVE.W D0,(A0)> {[-4-]}
<POP 17560-17562 StackAdj> Δ+4 {}
<POP 17562-1756a Epilogue> Σ0 ←0x174ac
@ 1756a
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x004 @ 4(rw)>
<LVAR -0x00a @ 1(r)>
<LVAR -0x012 @ 4(r)>
<LVAR -0x01a @ 4(r)>
<POP 1756a-176d0 Body> Δ+8
<POP 1756a-17580 Prologue> Σ0 ↓
<POP 17580-17592 RegCacheLoad> Σ0 ↓
<POP 17592-175ac Naked> Σ0 Δ-8 ↓
<MI 17592 MOVEQ.L #0x00,D6> {}
<Pointer.fp 0x17594 <LVAR -0x004 @ 4(rw)>> Δ-4 {[@@-4]}
<Call 0x17596 0x10cfa> {[@@-4]}
_NewString(VAR a : String)
<POP 1759c-1759e StackAdj> Δ+4 {}
<MI 1759e MOVEA.L (A6+0xc),A0> {}
<MI 175a2 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 175a4 MOVE.W (A0),D0> {[4, 'A0']}
<MI 175a6 EXTW.L D0> {[4, 'A0']}
<MI 175a8 MOVE.L D0,-(A7)> Δ-4 {[4, 'A0']|[4, 'D0']}
<MI 175aa MOVEQ.L #0x02,D0> {[4, 'A0']|[4, 'D0']}
<POP 175ac-175b0 Naked> Σ-8 ↓ →0x175b6 ←0x1768c
<MI 175ac CMP.L (A7),D0> {[-8-]}
<MI 175ae BLE 0x175b6> {[-8-]}
<POP 175b0-175b6 Naked> Σ-8 Δ-4 →0x17692
<POP 175b0-175b2 StackAdj> Δ-4 {[-12-]}
<MI 175b2 BRA 0x17692> {[-12-]}
<POP 175b6-175d4 Naked> Σ-8 Δ-4 ↓ →0x175ec ←0x175ac
<MI 175b6 MOVE.L D0,-(A7)> Δ-4 {[-8-]|[4, 'D0']}
<MI 175b8 MOVE.L D0,D1> {[-8-]|[4, 'D0']}
<MI 175ba SUBQ.L #0x1,D1> {[-8-]|[4, 'D0']}
<POP 0x175bc LimitCheck 0x0 ≤ D1 ≤ 0x7d> {[-8-]|[4, 'D0']}
<MI 175c6 MOVEA.L (A7+0x8),A0> {[-8-]|[4, 'D0']}
<MI 175ca MOVE.B (A0+D1.L+#0x2),D5> {[-8-]|[4, 'D0']}
<MI 175ce CMPI.B #0x25,D5> {[-8-]|[4, 'D0']}
<MI 175d2 BEQ 0x175ec> {[-8-]|[4, 'D0']}
<POP 175d4-175d8 Naked> Σ-12 ↓ →0x175dc
<MI 175d4 TST.B D6> {[-12-]}
<MI 175d6 BEQ 0x175dc> {[-12-]}
<POP 175d8-175dc Naked> Σ-12 Δ-4 →0x175de
<MI 175d8 MOVE.L (A6-0x1a),-(A7)> Δ-4 {[-12-]|[4, '(A6-0x1a)']}
<MI 175da BRA 0x175de> {[-12-]|[4, '(A6-0x1a)']}
<POP 175dc-175de Naked> Σ-12 Δ-4 ↓ ←0x175d4
<MI 175dc MOVE.L (A6-0x4),-(A7)> Δ-4 {[-12-]|[4, '(A6-0x4)']}
<POP 175de-175ec Naked> Σ-16 Δ+4 →0x17686 ←0x175d8
<MI 175de MOVE.B D5,-(A7)> Δ-2 {[-16-]|[2, 'D5']}
<Call 0x175e0 0x10d66> {[-16-]|[2, 'D5']}
_AppendChar(MOD b : String; a : char)
<POP 175e6-175e8 StackAdj> Δ+6 {[-12-]}
<MI 175e8 BRA 0x17686> {[-12-]}
<POP 175ec-175f0 Naked> Σ-12 ↓ →0x175fe ←0x175b6
<MI 175ec TST.B D6> {[-12-]}
<MI 175ee BNE 0x175fe> {[-12-]}
<POP 175f0-175f8 Naked> Σ-12 Δ-4 ↓
<Pointer.fp 0x175f0 <LVAR -0x01a @ 4(r)>> Δ-4 {[-12-]|[@@-26]}
<Call 0x175f2 0x10cfa> {[-12-]|[@@-26]}
_NewString(VAR a : String)
<POP 175f8-175fe Naked> Σ-16 Δ+4 →0x17682 ←0x17606
<POP 175f8-175fa StackAdj> Δ+4 {[-12-]}
<MI 175fa BRA 0x17682> {[-12-]}
<POP 175fe-17606 Naked> Σ-12 ↓ →0x17610 ←0x175ec
<MI 175fe MOVEA.L (A6+0x8),A0> {[-12-]}
<MI 17602 CMPA.W #0x01,A0> {[-12-]}
<MI 17604 BNE 0x17610> {[-12-]}
<POP 17606-17610 Naked> Σ-12 Δ-4 →0x175f8
<Pointer.fp 0x17606 <LVAR -0x01a @ 4(r)>> Δ-4 {[-12-]|[@@-26]}
<Call 0x17608 0x10d36> {[-12-]|[@@-26]}
_FreeString(VAR a : String)
<MI 1760e BRA 0x175f8> {[-12-]|[@@-26]}
<POP 17610-17628 Naked> Σ-12 ↓ →0x17650 ←0x175fe
<MI 17610 MOVE.L (A6-0x1a),-(A7)> Δ-4 {[-12-]|[4, '(A6-0x1a)']}
<Pointer.fp 0x17612 <LVAR -0x00a @ 1(r)>> Δ-4 {[-12-]|[4, '(A6-0x1a)']|[@@-10]}
<Pointer.fp 0x17616 <LVAR -0x012 @ 4(r)>> Δ-4 {[-12-]|[4, '(A6-0x1a)']|[@@-10]|[@@-18]}
<Call 0x17618 0x1127c> {[-12-]|[4, '(A6-0x1a)']|[@@-10]|[@@-18]}
_String2Long(src : String; VAR status : Bool; VAR retval : Long)
<POP 1761e-17622 StackAdj> Δ+12 {[-12-]}
<MI 17622 TST.B (A6-0xa)> {[-12-]}
<MI 17626 BNE 0x17650> {[-12-]}
<POP 17628-17650 Naked> Σ-12 →0x17682
<Blob 0x17628 [14] @> Δ-14 {[-12-]|[«14""»]}
<POP 17634-17636 StackAdj> Δ-4 {[-12-]|[«14""»]|[-4-]}
<Lit 0x17636 14> {[-12-]|[«14""»]|[$$Illegal marker]}
<Call 0x17646 0x154b0> {[-12-]|[«14""»]|[$$Illegal marker]}
_WriteConsoleStringCrLf(str : String)
<POP 1764c-1764e StackAdj> Δ+18 {[-12-]}
<MI 1764e BRA 0x17682> {[-12-]}
<POP 17650-17654 Naked> Σ-12 ↓ ←0x17610
<MI 17650 MOVEA.L A0,A4> {[-12-]}
<MI 17652 MOVEQ.L #0x00,D7> {[-12-]}
<POP 17654-1765a Naked> Σ-12 ↓ →0x17676 ←0x1767e
<MI 17654 ADDQ.L #0x1,D7> {[-12-]}
<MI 17656 CMP.L (A6-0x12),D7> {[-12-]}
<MI 17658 BNE 0x17676> {[-12-]}
<POP 1765a-17676 Naked> Σ-12 →0x1767a
<POP 1765a-1765c StackAdj> Δ-4 {[-16-]}
<MI 1765c MOVE.L (A6-0x4),-(A7)> Δ-4 {[-16-]|[4, '(A6-0x4)']}
<POP 1765e-17660 StackAdj> Δ-4 {[-16-]|[4, '(A6-0x4)']|[-4-]}
<MI 17660 MOVE.L (A4),-(A7)> Δ-4 {[-16-]|[4, '(A6-0x4)']|[-4-]|[4, '(A4)']}
<Call 0x17662 0x10eda> {[-16-]|[4, '(A6-0x4)']|[-4-]|[4, '(A4)']}
_StringDup(a : String) : String
<POP 17668-1766a StackAdj> Δ+4 {[-16-]|[4, '(A6-0x4)']|[-4-]}
<Call 0x1766a 0x10f2c> {[-16-]|[4, '(A6-0x4)']|[-4-]}
_StringCat2(a, b : String) : String
<POP 17670-17672 StackAdj> Δ+8 {[-16-]}
<MI 17672 MOVE.L (A7)+,(A6-0x4)> Δ+4 {[-12-]}
<MI 17674 BRA 0x1767a> {[-12-]}
<POP 17676-1767a Naked> Σ-12 ↓ ←0x17654
<MI 17676 MOVEA.L (A4+0x4),A4> {[-12-]}
<POP 1767a-1767e Naked> Σ-12 ↓ →0x17682 ←0x1765a
<MI 1767a CMPA.W #0x01,A4> {[-12-]}
<MI 1767c BEQ 0x17682> {[-12-]}
<POP 1767e-17682 Naked> Σ-12 ↓ →0x17654
<MI 1767e CMP.L (A6-0x12),D7> {[-12-]}
<MI 17680 BNE 0x17654> {[-12-]}
<POP 17682-17686 Naked> Σ-12 ↓ ←0x175f8 ←0x17628 ←0x1767a
<MI 17682 NEG.B D6> {[-12-]}
<MI 17684 ADDQ.B #0x1,D6> {[-12-]}
<POP 17686-1768c Naked> Σ-12 ↓ →0x17692 ←0x175de
<MI 17686 MOVE.L (A7),D0> {[-12-]}
<MI 17688 ADDQ.L #0x1,D0> {[-12-]}
<MI 1768a BVS 0x17692> {[-12-]}
<POP 1768c-17692 Naked> Σ-12 Δ+4 →0x175ac
<POP 1768c-1768e StackAdj> Δ+4 {[-8-]}
<MI 1768e BRA 0x175ac> {[-8-]}
<POP 17692-176a2 Naked> Σ-12 Δ+12 ↓ →0x176c8 ←0x175b0 ←0x17686
<POP 17692-17694 StackAdj> Δ+8 {[-4-]}
<MI 17694 MOVE.L (A6-0x4),(A7)> {[4, '(A6-0x4)']}
<Call 0x17696 0x154b0> {[4, '(A6-0x4)']}
_WriteConsoleStringCrLf(str : String)
<POP 1769c-1769e StackAdj> Δ+4 {}
<MI 1769e TST.B D6> {}
<MI 176a0 BEQ 0x176c8> {}
<POP 176a2-176c8 Naked> Σ0 ↓
<Blob 0x176a2 [14] @> Δ-14 {[«14""»]}
<POP 176ae-176b0 StackAdj> Δ-4 {[«14""»]|[-4-]}
<Lit 0x176b0 14> {[«14""»]|[$$Illegal marker]}
<Call 0x176c0 0x154b0> {[«14""»]|[$$Illegal marker]}
_WriteConsoleStringCrLf(str : String)
<POP 176c6-176c8 StackAdj> Δ+18 {}
<POP 176c8-176d0 Epilogue> Σ0 ←0x17692
@ 176d0
_WriteErrorMessage(file : String; txt : String; number : Long) : Bool
<LVAR 0x010 @ 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x006 @ 4(rw)>
<LVAR -0x00a @ 4(rw)>
<LVAR -0x00e 4(rw)>
<LVAR -0x012 @ 4(r)>
<LVAR -0x016 @ 4(r)>
<LVAR -0x01a @ 4(r)>
<LVAR -0x01b @ 1(r)>
<LVAR -0x01d @ 1(r)>
<LVAR -0x022 @ 4(r)>
<LVAR -0x024 @ 1(r)>
<LVAR -0x028 @ 4(r)>
<LVAR -0x02c @ 4(r)>
<POP 176d0-17968 Body>
<POP 176d0-176e6 Prologue> Σ0 ↓
<POP 176e6-176fc RegCacheLoad> Σ0 ↓
<POP 176fc-1771e Naked> Σ0 ↓ →0x1775a
<MI 176fc MOVE.L (A6+0x10),-(A7)> Δ-4 {[4, '(A6+0x10)']}
<MI 17700 CLR.B -(A7)> Δ-2 {[4, '(A6+0x10)']|[#0]}
<Const 0x17702 0x1.2> Δ-2 {[4, '(A6+0x10)']|[#0]|[#1]}
<Const 0x17704 0x0.4> Δ-4 {[4, '(A6+0x10)']|[#0]|[#1]|[##0]}
<Pointer.fp 0x17708 <LVAR -0x024 @ 1(r)>> Δ-4 {[4, '(A6+0x10)']|[#0]|[#1]|[##0]|[@@-36]}
<Pointer.fp 0x1770c <LVAR -0x022 @ 4(r)>> Δ-4 {[4, '(A6+0x10)']|[#0]|[#1]|[##0]|[@@-36]|[@@-34]}
<Call 0x17710 0x138b4> {[4, '(A6+0x10)']|[#0]|[#1]|[##0]|[@@-36]|[@@-34]}
_OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
<POP 17716-17718 StackAdj> Δ+20 {}
<MI 17718 TST.B (A6-0x24)> {}
<MI 1771c BEQ 0x1775a> {}
<POP 1771e-1775a Naked> Σ0 →0x17954
<Blob 0x1771e [4] @> Δ-4 {[«4""»]}
<Blob 0x17722 [4] @> Δ-4 {[«4""»]|[«4""»]}
<Blob 0x17726 [4] @> Δ-4 {[«4""»]|[«4""»]|[«4""»]}
<Blob 0x1772a [4] @> Δ-4 {[«4""»]|[«4""»]|[«4""»]|[«4""»]}
<POP 1772e-17730 StackAdj> Δ-8 {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[-8-]}
<Lit 0x17730 16> {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[-4-]|[$$Unknown error :_]}
<MI 1773a MOVE.L (A6+0x8),(A7)> {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[-4-]|[4, '(A6+0x8)']}
<POP 17738-1773a StackAdj> Δ-8 {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[-4-]|[4, '(A6+0x8)']|[-8-]}
<Call 0x1773e 0x110c0> {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[-4-]|[4, '(A6+0x8)']|[-8-]}
_Long2String(a : Long) : String
<POP 17744-17746 StackAdj> Δ+4 {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[-4-]|[4, '(A6+0x8)']|[-4-]}
<Call 0x17746 0x10f2c> {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[-4-]|[4, '(A6+0x8)']|[-4-]}
_StringCat2(a, b : String) : String
<POP 1774c-1774e StackAdj> Δ+8 {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[-4-]}
<Call 0x1774e 0x154b0> {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[-4-]}
_WriteConsoleStringCrLf(str : String)
<POP 17754-17756 StackAdj> Δ+20 {}
<MI 17756 BRA 0x17954> {}
<POP 1775a-17764 Naked> Σ0 ↓ →0x177c6 ←0x176fc
<MI 1775a MOVE.L #0x01,(A6-0xe)> {}
<MI 1775c MOVEA.L (A6+0xc),A0> {}
<MI 17760 CMPA.W #0x01,A0> {}
<MI 17762 BEQ 0x177c6> {}
<POP 17764-17774 Naked> Σ0 ↓
<POP 17764-17766 StackAdj> Δ-4 {[-4-]}
<MI 17766 MOVE.L A0,-(A7)> Δ-4 {[-4-]|[4, 'A0']}
<Call 0x17768 0x10eda> {[-4-]|[4, 'A0']}
_StringDup(a : String) : String
<POP 1776e-17770 StackAdj> Δ+4 {[-4-]}
<MI 17770 MOVE.L (A7)+,(A6-0x6)> Δ+4 {}
<POP 17774-1778a Naked> Σ0 ↓ →0x177b6 ←0x177b6
<MI 17774 MOVE.L (A6-0x6),-(A7)> Δ-4 {[4, '(A6-0x6)']}
<Pointer.fp 0x17778 <LVAR -0x016 @ 4(r)>> Δ-4 {[4, '(A6-0x6)']|[@@-22]}
<Call 0x1777c 0x17484> {[4, '(A6-0x6)']|[@@-22]}
<POP 17780-17782 StackAdj> Δ+8 {}
<MI 17782 MOVEA.L (A6-0x16),A0> {}
<MI 17786 CMPA.W #0x01,A0> {}
<MI 17788 BEQ 0x177b6> {}
<POP 1778a-177a6 Naked> Σ0 ↓ →0x177aa
<Pointer.fp 0x1778a <LVAR -0x012 @ 4(r)>> Δ-4 {[@@-18]}
<Const 0x1778c 0x8.4> Δ-4 {[@@-18]|[##8]}
<Call 0x17790 0x10856> {[@@-18]|[##8]}
_Malloc1(length : Long) : Pointer
<POP 17796-17798 StackAdj> Δ+8 {}
<MI 17798 MOVEA.L (A6-0x12),A1> {}
<MI 1779a MOVE.L A0,(A1)> {}
<MI 1779c MOVE.L #0x01,(A1+0x4)> {}
<MI 177a0 MOVEA.L (A6-0xe),A1> {}
<MI 177a2 CMPA.W #0x01,A1> {}
<MI 177a4 BNE 0x177aa> {}
<POP 177a6-177aa Naked> Σ0 →0x177b2
<MI 177a6 MOVE.L (A6-0x12),(A6-0xe)> {}
<MI 177a8 BRA 0x177b2> {}
<POP 177aa-177b2 Naked> Σ0 ↓ ←0x1778a
<MI 177aa MOVEA.L (A6-0xa),A1> {}
<MI 177ae MOVE.L (A6-0x12),(A1+0x4)> {}
<POP 177b2-177b6 Naked> Σ0 ↓ ←0x177a6
<MI 177b2 MOVE.L (A6-0x12),(A6-0xa)> {}
<POP 177b6-177ba Naked> Σ0 ↓ →0x17774 ←0x17774
<MI 177b6 CMPA.W #0x01,A0> {}
<MI 177b8 BNE 0x17774> {}
<POP 177ba-177c6 Naked> Σ0 ↓
<Pointer.fp 0x177ba <LVAR -0x006 @ 4(rw)>> Δ-4 {[@@-6]}
<Call 0x177be 0x10d36> {[@@-6]}
_FreeString(VAR a : String)
<POP 177c4-177c6 StackAdj> Δ+4 {}
<POP 177c6-177d6 Naked> Σ0 ↓ ←0x1775a
<MI 177c6 MOVEQ.L #0x00,D7> {}
<MI 177c8 MOVEQ.L #0x00,D6> {}
<Pointer.fp 0x177ca <LVAR -0x02c @ 4(r)>> Δ-4 {[@@-44]}
<Call 0x177ce 0x10cfa> {[@@-44]}
_NewString(VAR a : String)
<POP 177d4-177d6 StackAdj> Δ+4 {}
<POP 177d6-177f0 Naked> Σ0 ↓ →0x177f6 ←0x17898
<MI 177d6 MOVE.L (A6-0x22),-(A7)> Δ-4 {[4, '(A6-0x22)']}
<Pointer.fp 0x177da <LVAR -0x02c @ 4(r)>> Δ-4 {[4, '(A6-0x22)']|[@@-44]}
<Pointer.fp 0x177de <LVAR -0x01d @ 1(r)>> Δ-4 {[4, '(A6-0x22)']|[@@-44]|[@@-29]}
<Call 0x177e2 0x170c4> {[4, '(A6-0x22)']|[@@-44]|[@@-29]}
_FileReadLine(file : File; VAR a : String; VAR b : Byte)
<POP 177e8-177ea StackAdj> Δ+12 {}
<MI 177ea TST.B (A6-0x1d)> {}
<MI 177ee BEQ 0x177f6> {}
<POP 177f0-177f6 Naked> Σ0 →0x17898 ←0x1781c
<MI 177f0 MOVEQ.L #0x01,D7> {}
<MI 177f2 BRA 0x17898> {}
<POP 177f6-17804 Naked> Σ0 ↓ →0x17818 ←0x177d6
<MI 177f6 MOVEA.L (A6-0x2c),A0> {}
<MI 177fa MOVE.B (A0+0x2),D0> {}
<MI 177fe CMPI.B #0x09,D0> {}
<MI 17802 BNE 0x17818> {}
<POP 17804-17808 Naked> Σ0 ↓ →0x17814
<MI 17804 TST.B D6> {}
<MI 17806 BEQ 0x17814> {}
<POP 17808-17814 Naked> Σ0 ↓
<MI 17808 MOVE.L (A6-0x2c),-(A7)> Δ-4 {[4, '(A6-0x2c)']}
<MI 1780c MOVE.L (A6-0xe),-(A7)> Δ-4 {[4, '(A6-0x2c)']|[4, '(A6-0xe)']}
<Call 0x1780e 0x1756a> {[4, '(A6-0x2c)']|[4, '(A6-0xe)']}
<POP 17812-17814 StackAdj> Δ+8 {}
<POP 17814-17818 Naked> Σ0 →0x17898 ←0x17804
<MI 17814 BRA 0x17898> {}
<POP 17818-1781c Naked> Σ0 ↓ →0x1781e ←0x177f6
<MI 17818 TST.B D6> {}
<MI 1781a BEQ 0x1781e> {}
<POP 1781c-1781e Naked> Σ0 →0x177f0
<MI 1781c BRA 0x177f0> {}
<POP 1781e-17856 Naked> Σ0 ↓ →0x17880 ←0x17818
<Pointer.fp 0x1781e <LVAR -0x028 @ 4(r)>> Δ-4 {[@@-40]}
<Call 0x17822 0x10cfa> {[@@-40]}
_NewString(VAR a : String)
<MI 17828 MOVE.L (A6-0x2c),(A7)> {[4, '(A6-0x2c)']}
<MI 1782c MOVE.L (A6-0x28),-(A7)> Δ-4 {[4, '(A6-0x2c)']|[4, '(A6-0x28)']}
<Pointer.fp 0x17830 <LVAR -0x01b @ 1(r)>> Δ-4 {[4, '(A6-0x2c)']|[4, '(A6-0x28)']|[@@-27]}
<Call 0x17834 0x114ea> {[4, '(A6-0x2c)']|[4, '(A6-0x28)']|[@@-27]}
_FirstField(MOD input : String; MOD output : String; VAR c : Bool
<POP 1783a-1783c StackAdj> Δ+8 {[4, '(A6-0x2c)']}
<MI 1783c MOVE.L (A6-0x28),(A7)> {[4, '(A6-0x28)']}
<Pointer.fp 0x17840 <LVAR -0x01b @ 1(r)>> Δ-4 {[4, '(A6-0x28)']|[@@-27]}
<Pointer.fp 0x17844 <LVAR -0x01a @ 4(r)>> Δ-4 {[4, '(A6-0x28)']|[@@-27]|[@@-26]}
<Call 0x17848 0x1127c> {[4, '(A6-0x28)']|[@@-27]|[@@-26]}
_String2Long(src : String; VAR status : Bool; VAR retval : Long)
<POP 1784e-17850 StackAdj> Δ+12 {}
<MI 17850 TST.B (A6-0x1b)> {}
<MI 17854 BNE 0x17880> {}
<POP 17856-17880 Naked> Σ0 ↓
<Blob 0x17856 [30] @> Δ-30 {[«30""»]}
<Const 0x17862 0xe.2> Δ-2 {[«30""»]|[#14]}
<POP 17866-17868 StackAdj> Δ-4 {[«30""»]|[#14]|[-4-]}
<Lit 0x17868 30> {[«30""»]|[#14]|[$$Bad error message file format.]}
<Call 0x17876 0x14e18> {[«30""»]|[#14]|[$$Bad error message file format.]}
_PopProgram(status : Byte; msg : String)
<POP 1787c-17880 StackAdj> Δ+36 {}
<POP 17880-1788a Naked> Σ0 ↓ →0x17898 ←0x1781e
<MI 17880 MOVE.L (A6-0x1a),D0> {}
<MI 17884 CMP.L (A6+0x8),D0> {}
<MI 17888 BNE 0x17898> {}
<POP 1788a-17898 Naked> Σ0 ↓
<MI 1788a MOVEQ.L #0x01,D6> {}
<MI 1788c MOVE.L (A6-0x2c),-(A7)> Δ-4 {[4, '(A6-0x2c)']}
<MI 17890 MOVE.L (A6-0xe),-(A7)> Δ-4 {[4, '(A6-0x2c)']|[4, '(A6-0xe)']}
<Call 0x17892 0x1756a> {[4, '(A6-0x2c)']|[4, '(A6-0xe)']}
<POP 17896-17898 StackAdj> Δ+8 {}
<POP 17898-1789e Naked> Σ0 ↓ →0x177d6 ←0x177f0 ←0x17814 ←0x17880
<MI 17898 TST.B D7> {}
<MI 1789a BEQ 0x177d6> {}
<POP 1789e-178a2 Naked> Σ0 ↓ →0x17904
<MI 1789e TST.B D6> {}
<MI 178a0 BNE 0x17904> {}
<POP 178a2-17904 Naked> Σ0 ↓
<Blob 0x178a2 [4] @> Δ-4 {[«4""»]}
<Blob 0x178a6 [4] @> Δ-4 {[«4""»]|[«4""»]}
<Blob 0x178aa [4] @> Δ-4 {[«4""»]|[«4""»]|[«4""»]}
<Blob 0x178ae [4] @> Δ-4 {[«4""»]|[«4""»]|[«4""»]|[«4""»]}
<Blob 0x178b2 [24] @> Δ-24 {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«24""»]}
<POP 178c4-178c6 StackAdj> Δ-8 {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«24""»]|[-8-]}
<Lit 0x178c6 16> {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«24""»]|[-4-]|[$$Unknown error :_]}
<MI 178d0 MOVE.L (A6+0x8),(A7)> {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«24""»]|[-4-]|[4, '(A6+0x8)']}
<POP 178ce-178d0 StackAdj> Δ-8 {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«24""»]|[-4-]|[4, '(A6+0x8)']|[-8-]}
<Call 0x178d4 0x110c0> {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«24""»]|[-4-]|[4, '(A6+0x8)']|[-8-]}
_Long2String(a : Long) : String
<Lit 0x178da 23> {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«24""»]|[-4-]|[4, '(A6+0x8)']|[-4-]|[$$, error message file :_]}
<MI 178e6 MOVE.L (A6+0x10),(A7)> {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«24""»]|[-4-]|[4, '(A6+0x8)']|[-4-]|[4, '(A6+0x10)']}
<POP 178e4-178e6 StackAdj> Δ-8 {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«24""»]|[-4-]|[4, '(A6+0x8)']|[-4-]|[4, '(A6+0x10)']|[-8-]}
<Call 0x178ea 0x10eda> {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«24""»]|[-4-]|[4, '(A6+0x8)']|[-4-]|[4, '(A6+0x10)']|[-8-]}
_StringDup(a : String) : String
<POP 178f0-178f2 StackAdj> Δ+4 {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«24""»]|[-4-]|[4, '(A6+0x8)']|[-4-]|[4, '(A6+0x10)']|[-4-]}
<Call 0x178f2 0x11000> {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«24""»]|[-4-]|[4, '(A6+0x8)']|[-4-]|[4, '(A6+0x10)']|[-4-]}
_StringCat4(a, b, c, d : String) : String
<POP 178f8-178fa StackAdj> Δ+16 {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«24""»]|[-4-]}
<Call 0x178fa 0x154b0> {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«24""»]|[-4-]}
_WriteConsoleStringCrLf(str : String)
<POP 17900-17904 StackAdj> Δ+44 {}
<POP 17904-1792a Naked> Σ0 ↓ ←0x1789e
<MI 17904 CLR.B -(A7)> Δ-2 {[#0]}
<Const 0x17906 0x2.2> Δ-2 {[#0]|[#2]}
<Const 0x1790a 0x1.4> Δ-4 {[#0]|[#2]|[##1]}
<Pointer.fp 0x1790e <LVAR -0x024 @ 1(r)>> Δ-4 {[#0]|[#2]|[##1]|[@@-36]}
<Pointer.fp 0x17912 <LVAR -0x022 @ 4(r)>> Δ-4 {[#0]|[#2]|[##1]|[@@-36]|[@@-34]}
<Call 0x17916 0x13c8a> {[#0]|[#2]|[##1]|[@@-36]|[@@-34]}
_CloseFile(a : L; VAR status : B; VAR file : File)
<POP 1791c-1791e StackAdj> Δ+16 {}
<Pointer.fp 0x1791e <LVAR -0x02c @ 4(r)>> Δ-4 {[@@-44]}
<Call 0x17922 0x10d36> {[@@-44]}
_FreeString(VAR a : String)
<POP 17928-1792a StackAdj> Δ+4 {}
<POP 1792a-17930 Naked> Σ0 ↓ →0x17954 ←0x17930
<MI 1792a MOVEA.L (A6-0xe),A0> {}
<MI 1792c CMPA.W #0x01,A0> {}
<MI 1792e BEQ 0x17954> {}
<POP 17930-17954 Naked> Σ0 →0x1792a
<MI 17930 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x17932 0x10d36> {[4, '^(A0)']}
_FreeString(VAR a : String)
<POP 17938-1793a StackAdj> Δ+4 {}
<MI 1793a MOVE.L A0,(A6-0xa)> {}
<MI 1793e MOVE.L (A0+0x4),(A6-0xe)> {}
<Pointer.fp 0x17942 <LVAR -0x00a @ 4(rw)>> Δ-4 {[@@-10]}
<Const 0x17946 0x8.4> Δ-4 {[@@-10]|[##8]}
<Call 0x1794a 0x108fa> {[@@-10]|[##8]}
_Free2(a : Pointer; b : Long)
<POP 17950-17952 StackAdj> Δ+8 {}
<MI 17952 BRA 0x1792a> {}
<POP 17954-17960 Naked> Σ0 ↓ ←0x1771e ←0x1792a
<Pointer.fp 0x17954 <LVAR 0x010 @ 4(r)>> Δ-4 {[@@16]}
<Call 0x17958 0x10d36> {[@@16]}
_FreeString(VAR a : String)
<POP 1795e-17960 StackAdj> Δ+4 {}
<POP 17960-17968 Epilogue> Σ0
@ 17968
_FS_10450(&, &)
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 17968-17992 Body>
<POP 17968-1797a Prologue> Σ0 ↓
<POP 1797a-1798e Naked> Σ0 ↓
<MI 1797a MOVE.L (A6+0xc),-(A7)> Δ-4 {[4, '(A6+0xc)']}
<Const 0x1797e 0x1.4> Δ-4 {[4, '(A6+0xc)']|[##1]}
<MI 17982 MOVE.L (A6+0x8),-(A7)> Δ-4 {[4, '(A6+0xc)']|[##1]|[4, '(A6+0x8)']}
<Call 0x17986 0x176d0> {[4, '(A6+0xc)']|[##1]|[4, '(A6+0x8)']}
_WriteErrorMessage(file : String; txt : String; number : Long) : Bool
<POP 1798a-1798e StackAdj> Δ+12 {}
<POP 1798e-17992 Epilogue> Σ0
@ 179c2
_Glob(input : String; pattern : String): Bool
<LVAR 0x010 1(rw)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x002 1(w)>
<LVAR -0x008 2(rw)>
<LVAR -0x00a 2(rw)>
<LVAR -0x010 4(w)>
<LVAR -0x014 4(w)>
<LVAR -0x018 2(rw)>
<LVAR -0x01a 2(rw)>
<LVAR -0x01c @ 2(rw)>
<LVAR -0x09c @>
<POP 179c2-17bde Body>
<POP 179c2-179d8 Prologue> Σ0 ↓
<POP 179d8-179e6 RegCacheLoad> Σ0 ↓
<POP 179e6-17a18 Naked> Σ0 ↓
<MI 179e6 MOVEQ.L #0x00,D6> {}
<MI 179e8 MOVEQ.L #0x00,D7> {}
<MI 179ea MOVE.W 0x179bc,(A6-0x1c)> {}
<MI 179ee MOVE.W 0x179be,(A6-0x1a)> {}
<MI 179f4 MOVE.W 0x179c0,(A6-0x18)> {}
<MI 179f8 MOVEA.L (A6+0xc),A0> {}
<MI 179fc MOVE.W (A0),D0> {}
<POP 0x179fe LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 17a04 MOVE.W D0,(A6-0xa)> {}
<MI 17a08 MOVEA.L (A6+0x8),A0> {}
<MI 17a0c MOVE.W (A0),D0> {}
<POP 0x17a0e LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 17a14 MOVE.W D0,(A6-0x8)> {}
<POP 17a18-17a1e Naked> Σ0 ↓ →0x17bc8 ←0x17bc4
<MI 17a18 TST.B D7> {}
<MI 17a1a BNE 0x17bc8> {}
<POP 17a1e-17a4c Naked> Σ0 ↓ →0x17a5a
<MI 17a1e CLR.L D0> {}
<MI 17a20 MOVE.W (A6-0xa),D0> {}
<MI 17a24 ADDQ.L #0x1,D0> {}
<MI 17a26 CLR.L D1> {}
<MI 17a28 MOVE.W (A6-0x1c),D1> {}
<MI 17a2a NEG.L D1> {}
<MI 17a2c ADD.L D0,D1> {}
<MI 17a2e MOVE.L D1,(A6-0x14)> {}
<MI 17a32 CLR.L D2> {}
<MI 17a34 MOVE.W (A6-0x8),D2> {}
<MI 17a38 ADDQ.L #0x1,D2> {}
<MI 17a3a CLR.L D3> {}
<MI 17a3c MOVE.W (A6-0x1a),D3> {}
<MI 17a40 NEG.L D3> {}
<MI 17a42 ADD.L D2,D3> {}
<MI 17a44 MOVE.L D3,(A6-0x10)> {}
<MI 17a48 TST.L D3> {}
<MI 17a4a BNE 0x17a5a> {}
<POP 17a4c-17a50 Naked> Σ0 ↓ →0x17a54
<MI 17a4c TST.L D1> {}
<MI 17a4e BNE 0x17a54> {}
<POP 17a50-17a54 Naked> Σ0 →0x17a56
<MI 17a50 MOVEQ.L #0x04,D7> {}
<MI 17a52 BRA 0x17a56> {}
<POP 17a54-17a56 Naked> Σ0 ↓ ←0x17a4c
<MI 17a54 MOVEQ.L #0x01,D7> {}
<POP 17a56-17a5a Naked> Σ0 →0x17b1a ←0x17a50
<MI 17a56 BRA 0x17b1a> {}
<POP 17a5a-17a80 Naked> Σ0 ↓ →0x17a96 ←0x17a1e
<MI 17a5a MOVE.W #0x1,(A6-0x18)> {}
<MI 17a5e MOVEQ.L #0x01,D7> {}
<MI 17a60 MOVEA.L (A6+0x8),A0> {}
<MI 17a64 CLR.L D2> {}
<MI 17a66 MOVE.W (A6-0x1a),D2> {}
<MI 17a6a SUBQ.L #0x1,D2> {}
<POP 0x17a6c LimitCheck 0x0 ≤ D2 ≤ 0x7d> {}
<MI 17a76 MOVE.B (A0+D2.L+#0x2),D3> {}
<MI 17a7a CMPI.B #0x2a,D3> {}
<MI 17a7e BNE 0x17a96> {}
<POP 17a80-17a90 Naked> Σ0 ↓
<MI 17a80 CLR.L D1> {}
<MI 17a82 MOVE.W (A6-0x1c),D1> {}
<MI 17a84 NEG.L D1> {}
<MI 17a86 ADD.L D0,D1> {}
<POP 0x17a88 LimitCheck 0x0 ≤ D1 ≤ 0xffff> {}
<MI 17a8e MOVE.W D1,(A6-0x18)> {}
<POP 17a90-17a96 Naked> Σ0 →0x17b1a ←0x17aea
<MI 17a90 MOVEQ.L #0x02,D7> {}
<MI 17a92 BRA 0x17b1a> {}
<POP 17a96-17a9c Naked> Σ0 ↓ →0x17aec ←0x17a5a
<MI 17a96 CMPI.B #0x2d,D3> {}
<MI 17a9a BNE 0x17aec> {}
<POP 17a9c-17aa4 Naked> Σ0 ↓
<MI 17a9c CLR.W (A6-0x18)> {}
<MI 17a9e CLR.L D0> {}
<MI 17aa0 MOVE.W (A6-0x1c),D0> {}
<MI 17aa2 MOVE.L D0,D5> {}
<POP 17aa4-17ac2 Naked> Σ0 ↓ →0x17ac4 ←0x17ae6
<MI 17aa4 MOVEQ.L #0x00,D0> {}
<MI 17aa6 MOVEA.L (A6+0xc),A0> {}
<MI 17aaa MOVE.L D5,D1> {}
<MI 17aac SUBQ.L #0x1,D1> {}
<POP 0x17aae LimitCheck 0x0 ≤ D1 ≤ 0x7d> {}
<MI 17ab8 MOVE.B (A0+D1.L+#0x2),D1> {}
<MI 17abc CMPI.B #0x2e,D1> {}
<MI 17ac0 BNE 0x17ac4> {}
<POP 17ac2-17ac4 Naked> Σ0 ↓
<MI 17ac2 ADDQ.B #0x1,D0> {}
<POP 17ac4-17acc Naked> Σ0 ↓ →0x17ada ←0x17aa4
<MI 17ac4 MOVE.B D0,(A6-0x2)> {}
<MI 17ac8 TST.B D0> {}
<MI 17aca BNE 0x17ada> {}
<POP 17acc-17ada Naked> Σ0 ↓
<MI 17acc CLR.L D1> {}
<MI 17ace MOVE.W (A6-0x18),D1> {}
<MI 17ad0 ADDQ.L #0x1,D1> {}
<POP 0x17ad2 LimitCheck 0x0 ≤ D1 ≤ 0xffff> {}
<MI 17ad8 MOVE.W D1,(A6-0x18)> {}
<POP 17ada-17ae6 Naked> Σ0 ↓ →0x17aea ←0x17ac4
<MI 17ada ADDQ.L #0x1,D5> {}
<MI 17adc CLR.L D1> {}
<MI 17ade MOVE.W (A6-0xa),D1> {}
<MI 17ae2 CMP.L D1,D5> {}
<MI 17ae4 BHI 0x17aea> {}
<POP 17ae6-17aea Naked> Σ0 ↓ →0x17aa4
<MI 17ae6 TST.B D0> {}
<MI 17ae8 BEQ 0x17aa4> {}
<POP 17aea-17aec Naked> Σ0 →0x17a90 ←0x17ada
<MI 17aea BRA 0x17a90> {}
<POP 17aec-17af2 Naked> Σ0 ↓ →0x17afa ←0x17a96
<MI 17aec CMPI.B #0x26,D3> {}
<MI 17af0 BNE 0x17afa> {}
<POP 17af2-17af6 Naked> Σ0 ↓ →0x17af8
<MI 17af2 TST.L D1> {}
<MI 17af4 BLE 0x17af8> {}
<POP 17af6-17af8 Naked> Σ0 ↓
<MI 17af6 MOVEQ.L #0x00,D7> {}
<POP 17af8-17afa Naked> Σ0 →0x17b1a ←0x17af2
<MI 17af8 BRA 0x17b1a> {}
<POP 17afa-17afe Naked> Σ0 ↓ →0x17b1a ←0x17aec
<MI 17afa TST.L D1> {}
<MI 17afc BLE 0x17b1a> {}
<POP 17afe-17b18 Naked> Σ0 ↓ →0x17b1a
<MI 17afe MOVEA.L (A6+0xc),A0> {}
<MI 17b02 CLR.L D0> {}
<MI 17b04 MOVE.W (A6-0x1c),D0> {}
<MI 17b06 SUBQ.L #0x1,D0> {}
<POP 0x17b08 LimitCheck 0x0 ≤ D0 ≤ 0x7d> {}
<MI 17b12 CMP.B (A0+D0.L+#0x2),D3> {}
<MI 17b16 BNE 0x17b1a> {}
<POP 17b18-17b1a Naked> Σ0 ↓
<MI 17b18 MOVEQ.L #0x00,D7> {}
<POP 17b1a-17b20 Naked> Σ0 ↓ →0x17b4a ←0x17a56 ←0x17a90 ←0x17af8 ←0x17afa ←0x17afe
<MI 17b1a CMPI.B #0x02,D7> {}
<MI 17b1e BNE 0x17b4a> {}
<POP 17b20-17b4a Naked> Σ0 ↓
<MI 17b20 CLR.L D0> {}
<MI 17b22 MOVE.W D6,D0> {}
<MI 17b24 ADDQ.L #0x1,D0> {}
<POP 0x17b26 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 17b2c MOVE.W D0,D6> {}
<POP 0x17b2e LimitCheck 0x0 ≤ D6 ≤ 0x14> {}
<MI 17b32 MOVEQ.L #0x06,D0> {}
<MI 17b34 MULU.W D6,D0> {}
<MI 17b36 LEA.L (A6-0x9c),A0> {}
<MI 17b3a LEA.L (A0+D0.L),A0> {}
<MI 17b3e LEA.L (A6-0x1c),A1> {}
<BlockMove 6,A1,A0> {}
<MI 17b48 MOVEQ.L #0x00,D7> {}
<POP 17b4a-17b50 Naked> Σ0 ↓ →0x17b9c ←0x17b1a ←0x17b9a
<MI 17b4a CMPI.B #0x01,D7> {}
<MI 17b4e BNE 0x17b9c> {}
<POP 17b50-17b6e Naked> Σ0 ↓ →0x17b72
<POP 0x17b50 LimitCheck 0x0 ≤ D6 ≤ 0x14> {}
<MI 17b54 MOVEQ.L #0x06,D0> {}
<MI 17b56 MULU.W D6,D0> {}
<MI 17b58 LEA.L (A6-0x9c),A0> {}
<MI 17b5c LEA.L (A6-0x1c),A1> {}
<MI 17b5e LEA.L (A0+D0.L),A2> {}
<BlockMove 6,A2,A1> {}
<MI 17b6a TST.W D6> {}
<MI 17b6c BNE 0x17b72> {}
<POP 17b6e-17b72 Naked> Σ0 →0x17b9a
<MI 17b6e MOVEQ.L #0x03,D7> {}
<MI 17b70 BRA 0x17b9a> {}
<POP 17b72-17b76 Naked> Σ0 ↓ →0x17b86 ←0x17b50
<MI 17b72 TST.W (A6-0x18)> {}
<MI 17b74 BNE 0x17b86> {}
<POP 17b76-17b86 Naked> Σ0 →0x17b98
<MI 17b76 CLR.L D0> {}
<MI 17b78 MOVE.W D6,D0> {}
<MI 17b7a SUBQ.L #0x1,D0> {}
<POP 0x17b7c LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 17b82 MOVE.W D0,D6> {}
<MI 17b84 BRA 0x17b98> {}
<POP 17b86-17b98 Naked> Σ0 ↓ ←0x17b72
<MI 17b86 CLR.L D1> {}
<MI 17b88 MOVE.W (A6-0x18),D1> {}
<MI 17b8a SUBQ.L #0x1,D1> {}
<POP 0x17b8c LimitCheck 0x0 ≤ D1 ≤ 0xffff> {}
<MI 17b92 MOVE.W D1,(A6-0x18)> {}
<MI 17b94 MOVE.W D1,(A0+D0.L+#0x4)> {}
<POP 17b98-17b9a Naked> Σ0 ↓ ←0x17b76
<MI 17b98 MOVEQ.L #0x00,D7> {}
<POP 17b9a-17b9c Naked> Σ0 →0x17b4a ←0x17b6e
<MI 17b9a BRA 0x17b4a> {}
<POP 17b9c-17ba0 Naked> Σ0 ↓ →0x17bc4 ←0x17b4a
<MI 17b9c TST.B D7> {}
<MI 17b9e BNE 0x17bc4> {}
<POP 17ba0-17bc4 Naked> Σ0 ↓
<MI 17ba0 CLR.L D0> {}
<MI 17ba2 MOVE.W (A6-0x1c),D0> {}
<MI 17ba4 CLR.L D1> {}
<MI 17ba6 MOVE.W (A6-0x18),D1> {}
<MI 17ba8 ADD.L D0,D1> {}
<POP 0x17baa LimitCheck 0x0 ≤ D1 ≤ 0xffff> {}
<MI 17bb0 MOVE.W D1,(A6-0x1c)> {}
<MI 17bb2 CLR.L D0> {}
<MI 17bb4 MOVE.W (A6-0x1a),D0> {}
<MI 17bb8 ADDQ.L #0x1,D0> {}
<POP 0x17bba LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 17bc0 MOVE.W D0,(A6-0x1a)> {}
<POP 17bc4-17bc8 Naked> Σ0 →0x17a18 ←0x17b9c
<MI 17bc4 BRA 0x17a18> {}
<POP 17bc8-17bd2 Naked> Σ0 ↓ →0x17bd6 ←0x17a18
<MI 17bc8 CLR.B (A6+0x10)> {}
<MI 17bcc CMPI.B #0x04,D7> {}
<MI 17bd0 BNE 0x17bd6> {}
<POP 17bd2-17bd6 Naked> Σ0 ↓
<MI 17bd2 ADDQ.B #0x1,(A6+0x10)> {}
<POP 17bd6-17bde Epilogue> Σ0 ←0x17bc8
@ 17bde
<LVAR 0x00c 1(rw)>
<LVAR 0x008 4(r)>
<POP 17bde-17c4a Body> Δ-8
<POP 17bde-17bf4 Prologue> Σ0 ↓
<POP 17bf4-17c08 Naked> Σ0 Δ-8 ↓
<MI 17bf4 MOVE.B #0x01,(A6+0xc)> {}
<MI 17bfa MOVEA.L (A6+0x8),A0> {}
<MI 17bfe MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 17c00 MOVE.W (A0),D0> {[4, 'A0']}
<MI 17c02 EXTW.L D0> {[4, 'A0']}
<MI 17c04 MOVE.L D0,-(A7)> Δ-4 {[4, 'A0']|[4, 'D0']}
<MI 17c06 MOVEQ.L #0x01,D7> {[4, 'A0']|[4, 'D0']}
<POP 17c08-17c0c Naked> Σ-8 ↓ →0x17c3c ←0x17c38
<MI 17c08 CMP.L (A7),D7> {[-8-]}
<MI 17c0a BGT 0x17c3c> {[-8-]}
<POP 17c0c-17c28 Naked> Σ-8 ↓ →0x17c34
<MI 17c0c MOVE.L D7,D0> {[-8-]}
<MI 17c0e SUBQ.L #0x1,D0> {[-8-]}
<POP 0x17c10 LimitCheck 0x0 ≤ D0 ≤ 0x7d> {[-8-]}
<MI 17c1a MOVEA.L (A7+0x4),A0> {[-8-]}
<MI 17c1e MOVE.B (A0+D0.L+#0x2),D1> {[-8-]}
<MI 17c22 CMPI.B #0x2a,D1> {[-8-]}
<MI 17c26 BEQ 0x17c34> {[-8-]}
<POP 17c28-17c2e Naked> Σ-8 ↓ →0x17c34
<MI 17c28 CMPI.B #0x26,D1> {[-8-]}
<MI 17c2c BEQ 0x17c34> {[-8-]}
<POP 17c2e-17c34 Naked> Σ-8 ↓ →0x17c38
<MI 17c2e CMPI.B #0x2d,D1> {[-8-]}
<MI 17c32 BNE 0x17c38> {[-8-]}
<POP 17c34-17c38 Naked> Σ-8 Δ+8 →0x17c42 ←0x17c0c ←0x17c28
<POP 17c34-17c36 StackAdj> Δ+8 {}
<MI 17c36 BRA 0x17c42> {}
<POP 17c38-17c3c Naked> Σ-8 ↓ →0x17c08 ←0x17c2e
<MI 17c38 ADDQ.L #0x1,D7> {[-8-]}
<MI 17c3a BVC 0x17c08> {[-8-]}
<POP 17c3c-17c42 Naked> Σ-8 Δ+8 ↓ ←0x17c08
<POP 17c3c-17c3e StackAdj> Δ+8 {}
<MI 17c3e CLR.B (A6+0xc)> {}
<POP 17c42-17c4a Epilogue> Σ0 ←0x17c34
@ 17c4a
<LVAR -0x004 @ 1(r)>
<POP 17c4a-17d1a Body>
<POP 17c4a-17c60 Prologue> Σ0 ↓
<POP 17c60-17c62 RegCacheLoad> Σ0 ↓
<POP 17c62-17cda Naked> Σ0 ↓ →0x17d0c
<MI 17c62 MOVE.L 0x200fc,D4> {}
<MI 17c68 MOVE.L #0x100,D3> {}
<Call 0x17c6e 0x1080a> {}
_?divs_d3_d4
<POP 0x17c74 LimitCheck 0x0 ≤ D4 ≤ 0x7> {}
<MI 17c7e ASL.L #0x1,D4> {}
<MI 17c80 LEA.L 0x0,A0> {}
<MI 17c84 ADDA.L #0x1000e,A0> {}
<MI 17c8a CLR.L D0> {}
<MI 17c8c MOVE.W (A0+D4.L+#0x4),D0> {}
<MI 17c90 ADD.L D0,D3> {}
<POP 0x17c92 LimitCheck 0x0 ≤ D3 ≤ 0xffff> {}
<MI 17c9c MOVE.W D3,D7> {}
<Const 0x17c9e 0x2.2> Δ-2 {[#2]}
<MI 17ca2 MOVE.W D7,-(A7)> Δ-2 {[#2]|[2, 'D7']}
<Const 0x17ca4 0x1.4> Δ-4 {[#2]|[2, 'D7']|[##1]}
<MI 17ca8 MOVEA.L 0x200f6,A0> {[#2]|[2, 'D7']|[##1]}
<MI 17cae MOVE.W 0x20104,D0> {[#2]|[2, 'D7']|[##1]}
<POP 0x17cb4 LimitCheck 0x0 ≤ D0 ≤ 0x3> {[#2]|[2, 'D7']|[##1]}
<MI 17cb8 CLR.L D1> {[#2]|[2, 'D7']|[##1]}
<MI 17cba MOVE.W D0,D1> {[#2]|[2, 'D7']|[##1]}
<MI 17cbc ASL.L #0x8,D1> {[#2]|[2, 'D7']|[##1]}
<MI 17cbe ASL.L #0x2,D1> {[#2]|[2, 'D7']|[##1]}
<MI 17cc0 LEA.L (A0+D1.L),A0> {[#2]|[2, 'D7']|[##1]}
<MI 17cc4 MOVE.L A0,-(A7)> Δ-4 {[#2]|[2, 'D7']|[##1]|[4, 'A0']}
<Pointer.fp 0x17cc6 <LVAR -0x004 @ 1(r)>> Δ-4 {[#2]|[2, 'D7']|[##1]|[4, 'A0']|[@@-4]}
<Call 0x17cca 0x127c4> {[#2]|[2, 'D7']|[##1]|[4, 'A0']|[@@-4]}
_RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
<POP 17cd0-17cd4 StackAdj> Δ+16 {}
<MI 17cd4 TST.B (A6-0x4)> {}
<MI 17cd8 BNE 0x17d0c> {}
<POP 17cda-17d0c Naked> Σ0 ↓
<Blob 0x17cda [22] @> Δ-22 {[«22""»]}
<Const 0x17cec 0x1.2> Δ-2 {[«22""»]|[#1]}
<POP 17cee-17cf0 StackAdj> Δ-4 {[«22""»]|[#1]|[-4-]}
<Lit 0x17cf0 21> {[«22""»]|[#1]|[$$Directory read error!]}
<Call 0x17d02 0x14e18> {[«22""»]|[#1]|[$$Directory read error!]}
_PopProgram(status : Byte; msg : String)
<POP 17d08-17d0c StackAdj> Δ+28 {}
<POP 17d0c-17d12 Naked> Σ0 ↓ ←0x17c62
<MI 17d0c SUBQ.L #0x1,0x20100> {}
<POP 17d12-17d1a Epilogue> Σ0
@ 17d1a
<LVAR -0x004 @ 1(r)>
<POP 17d1a-17e96 Body>
<POP 17d1a-17d30 Prologue> Σ0 ↓
<POP 17d30-17d38 RegCacheLoad> Σ0 ↓
<POP 17d38-17d4a Naked> Σ0 ↓ →0x17e42 ←0x17e80
<MI 17d38 ADDQ.L #0x1,0x20100> {}
<MI 17d3e MOVE.L 0x20100,D0> {}
<MI 17d44 CMP.L #0x0f,D0> {}
<MI 17d46 BLE 0x17e42> {}
<POP 17d4a-17d7a Naked> Σ0 ↓ →0x17d7e
<MI 17d4a ADDQ.L #0x1,0x200fc> {}
<MI 17d50 CLR.L D0> {}
<MI 17d52 MOVE.W 0x20104,D0> {}
<MI 17d58 ADDQ.L #0x1,D0> {}
<POP 0x17d5a LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 17d64 MOVE.W D0,0x20104> {}
<MI 17d6a CLR.L 0x20100> {}
<MI 17d70 MOVE.L 0x200fc,D0> {}
<MI 17d76 CMP.L #0x800,D0> {}
<MI 17d78 BLT 0x17d7e> {}
<POP 17d7a-17d7e Naked> Σ0 →0x17e84
<MI 17d7a BRA 0x17e84> {}
<POP 17d7e-17d8e Naked> Σ0 ↓ →0x17e42 ←0x17d4a
<MI 17d7e MOVE.W 0x20104,D0> {}
<MI 17d84 CMP.W 0x20106,D0> {}
<MI 17d8a BCS 0x17e42> {}
<POP 17d8e-17da2 Naked> Σ0 ↓ →0x17dac
<MI 17d8e CLR.L D0> {}
<MI 17d90 MOVE.W 0x20106,D0> {}
<MI 17d96 MOVE.L 0x200fc,D1> {}
<MI 17d9c ADD.L D0,D1> {}
<MI 17d9e CMP.L #0x800,D1> {}
<MI 17da0 BLE 0x17dac> {}
<POP 17da2-17dac Naked> Σ0 →0x17dae
<MI 17da2 MOVE.L #0x800,D7> {}
<MI 17da4 SUB.L 0x200fc,D7> {}
<MI 17daa BRA 0x17dae> {}
<POP 17dac-17dae Naked> Σ0 ↓ ←0x17d8e
<MI 17dac MOVE.L D0,D7> {}
<POP 17dae-17e0c Naked> Σ0 ↓ →0x17e3c ←0x17da2
<MI 17dae MOVE.L 0x200fc,D4> {}
<MI 17db4 MOVE.L #0x100,D3> {}
<Call 0x17dba 0x1080a> {}
_?divs_d3_d4
<POP 0x17dc0 LimitCheck 0x0 ≤ D4 ≤ 0x7> {}
<MI 17dca ASL.L #0x1,D4> {}
<MI 17dcc LEA.L 0x0,A0> {}
<MI 17dd0 ADDA.L #0x1000e,A0> {}
<MI 17dd6 CLR.L D0> {}
<MI 17dd8 MOVE.W (A0+D4.L+#0x4),D0> {}
<MI 17ddc ADD.L D0,D3> {}
<POP 0x17dde LimitCheck 0x0 ≤ D3 ≤ 0xffff> {}
<MI 17de8 MOVE.W D3,D6> {}
<Const 0x17dea 0x2.2> Δ-2 {[#2]}
<MI 17dee MOVE.W D6,-(A7)> Δ-2 {[#2]|[2, 'D6']}
<MI 17df0 MOVE.L D7,-(A7)> Δ-4 {[#2]|[2, 'D6']|[4, 'D7']}
<Blob 0x17df2 [4] 0x200f6> Δ-4 {[#2]|[2, 'D6']|[4, 'D7']|[«4»]}
<Pointer.fp 0x17df8 <LVAR -0x004 @ 1(r)>> Δ-4 {[#2]|[2, 'D6']|[4, 'D7']|[«4»]|[@@-4]}
<Call 0x17dfc 0x127c4> {[#2]|[2, 'D6']|[4, 'D7']|[«4»]|[@@-4]}
_RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
<POP 17e02-17e06 StackAdj> Δ+16 {}
<MI 17e06 TST.B (A6-0x4)> {}
<MI 17e0a BNE 0x17e3c> {}
<POP 17e0c-17e3c Naked> Σ0 ↓
<Blob 0x17e0c [20] @> Δ-20 {[«20""»]}
<Const 0x17e18 0x1.2> Δ-2 {[«20""»]|[#1]}
<POP 17e1c-17e1e StackAdj> Δ-4 {[«20""»]|[#1]|[-4-]}
<Lit 0x17e1e 20> {[«20""»]|[#1]|[$$Directory read error]}
<Call 0x17e32 0x14e18> {[«20""»]|[#1]|[$$Directory read error]}
_PopProgram(status : Byte; msg : String)
<POP 17e38-17e3c StackAdj> Δ+26 {}
<POP 17e3c-17e42 Naked> Σ0 ↓ ←0x17dae
<MI 17e3c CLR.W 0x20104> {}
<POP 17e42-17e76 Naked> Σ0 ↓ →0x17e7e ←0x17d38 ←0x17d7e
<MI 17e42 MOVEA.L 0x200f6,A0> {}
<MI 17e48 MOVE.W 0x20104,D0> {}
<POP 0x17e4e LimitCheck 0x0 ≤ D0 ≤ 0x3> {}
<MI 17e52 CLR.L D1> {}
<MI 17e54 MOVE.W D0,D1> {}
<MI 17e56 ASL.L #0x8,D1> {}
<MI 17e58 ASL.L #0x2,D1> {}
<MI 17e5a MOVE.L 0x20100,D0> {}
<POP 0x17e60 LimitCheck 0x0 ≤ D0 ≤ 0xf> {}
<MI 17e66 ASL.L #0x6,D0> {}
<MI 17e68 LEA.L (A0+D1.L),A0> {}
<MI 17e6c MOVE.B (A0+D0.L+#0x3f),D1> {}
<MI 17e70 LSL.B #0x4,D1> {}
<MI 17e72 LSR.B #0x7,D1> {}
<MI 17e74 BEQ 0x17e7e> {}
<POP 17e76-17e7e Naked> Σ0 →0x17e80
<MI 17e76 MOVE.L #0x0f,0x20100> {}
<MI 17e7c BRA 0x17e80> {}
<POP 17e7e-17e80 Naked> Σ0 →0x17e8e ←0x17e42
<MI 17e7e BRA 0x17e8e> {}
<POP 17e80-17e84 Naked> Σ0 →0x17d38 ←0x17e76
<MI 17e80 BRA 0x17d38> {}
<POP 17e84-17e8e Naked> Σ0 ↓ ←0x17d7a
<MI 17e84 MOVE.L #0xffffffff,0x20100> {}
<POP 17e8e-17e96 Epilogue> Σ0 ←0x17e7e
@ 17e96
<LVAR 0x008 4(r)>
<LVAR -0x006 @ 4(rw)>
<POP 17e96-1801e Body> Δ-8
<POP 17e96-17eac Prologue> Σ0 ↓
<POP 17eac-17eb0 RegCacheLoad> Σ0 ↓
<POP 17eb0-17ec2 Naked> Σ0 ↓ →0x17ec6 ←0x18004
<Call 0x17eb0 0x17d1a> {}
<MI 17eb4 MOVE.L 0x20100,D0> {}
<MI 17eba CMPI.L #0xffffffff,D0> {}
<MI 17ec0 BNE 0x17ec6> {}
<POP 17ec2-17ec6 Naked> Σ0 →0x1800a
<MI 17ec2 BRA 0x1800a> {}
<POP 17ec6-17f00 Naked> Σ0 Δ-8 ↓ →0x17f04 ←0x17eb0
<MI 17ec6 MOVEA.L 0x200f6,A0> {}
<MI 17ecc MOVE.W 0x20104,D0> {}
<POP 0x17ed2 LimitCheck 0x0 ≤ D0 ≤ 0x3> {}
<MI 17ed6 CLR.L D1> {}
<MI 17ed8 MOVE.W D0,D1> {}
<MI 17eda ASL.L #0x8,D1> {}
<MI 17edc ASL.L #0x2,D1> {}
<MI 17ede MOVE.L 0x20100,D0> {}
<POP 0x17ee4 LimitCheck 0x0 ≤ D0 ≤ 0xf> {}
<MI 17eee ASL.L #0x6,D0> {}
<MI 17ef0 LEA.L (A0+D1.L),A0> {}
<MI 17ef4 MOVE.L D0,-(A7)> Δ-4 {[4, 'D0']}
<MI 17ef6 MOVE.L A0,-(A7)> Δ-4 {[4, 'D0']|[4, 'A0']}
<MI 17ef8 TST.B 0x200fb> {[4, 'D0']|[4, 'A0']}
<MI 17efe BEQ 0x17f04> {[4, 'D0']|[4, 'A0']}
<POP 17f00-17f04 Naked> Σ-8 →0x17f52
<MI 17f00 MOVEQ.L #0x01,D7> {[-8-]}
<MI 17f02 BRA 0x17f52> {[-8-]}
<POP 17f04-17f52 Naked> Σ-8 ↓ ←0x17ec6
<Blob 0x17f04 [30] (A0+D0.L)> Δ-30 {[-8-]|[«30»]}
<POP 17f14-17f16 StackAdj> Δ-4 {[-8-]|[«30»]|[-4-]}
<Lit 0x17f16> {[-8-]|[«30»]|[$$…]}
<Pointer.sp 0x17f16 4> Δ-4
<Const 0x17f1a 0x1.2> Δ-2
<Const 0x17f1c 0x1e.2> Δ-2
<Call 0x17f1e 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 17f24-17f26 StackAdj> Δ+8
<MI 17f26 MOVE.L (A7)+,(A6-0x6)> Δ+4 {[-8-]|[«30»]}
<POP 17f2a-17f2e StackAdj> Δ+24 {[-8-]|[-6-]}
<MI 17f2e MOVE.L (A6-0x6),(A7)> {[-8-]|[-2-]|[4, '(A6-0x6)']}
<Blob 0x17f32 [4] 0x200f2> Δ-4 {[-8-]|[-2-]|[4, '(A6-0x6)']|[«4»]}
<Call 0x17f38 0x179c2> {[-8-]|[-2-]|[4, '(A6-0x6)']|[«4»]}
_Glob(input : String; pattern : String): Bool
<POP 17f3c-17f3e StackAdj> Δ+8 {[-8-]|[-2-]}
<MI 17f3e MOVE.B (A7)+,D0> Δ+2 {[-8-]}
<MI 17f40 EXTB.W D0> {[-8-]}
<POP 0x17f42 LimitCheck 0x0 ≤ D0 ≤ 0x1> {[-8-]}
<MI 17f44 MOVE.B D0,D7> {[-8-]}
<Pointer.fp 0x17f46 <LVAR -0x006 @ 4(rw)>> Δ-4 {[-8-]|[@@-6]}
<Call 0x17f4a 0x10d36> {[-8-]|[@@-6]}
_FreeString(VAR a : String)
<POP 17f50-17f52 StackAdj> Δ+4 {[-8-]}
<POP 17f52-17f58 Naked> Σ-8 ↓ →0x18004 ←0x17f00
<MI 17f52 TST.B D7> {[-8-]}
<MI 17f54 BEQ 0x18004> {[-8-]}
<POP 17f58-18004 Naked> Σ-8 Δ+8 →0x18016
<MI 17f58 MOVEA.L (A6+0x8),A0> {[-8-]}
<MI 17f5c MOVEA.L (A0),A1> {[-8-]}
<MI 17f5e MOVEA.L (A7),A2> {[-8-]}
<MI 17f60 MOVE.L (A7+0x4),D0> {[-8-]}
<MI 17f64 MOVEA.L A1,A3> {[-8-]}
<MI 17f66 LEA.L (A2+D0.L),A4> {[-8-]}
<BlockMove 30,A4,A3> {[-8-]}
<MI 17f72 MOVE.W (A2+D0.L+#0x1e),(A1+0x1e)> {[-8-]}
<MI 17f78 LEA.L (A1+0x20),A3> {[-8-]}
<MI 17f7c LEA.L (A2+D0.L+#0x20),A2> {[-8-]}
<BlockMove 32,A2,A3> {[-8-]}
<MI 17f88 CLR.B (A1+0x4c)> {[-8-]}
<MI 17f8c MOVE.L 0x20100,D0> {[-8-]}
<POP 0x17f92 LimitCheck -0x8000 ≤ D0 ≤ 0x7fff> {[-8-]}
<MI 17fa8 MOVE.W D0,(A1+0x42)> {[-8-]}
<MI 17fac MOVE.L 0x200fc,D4> {[-8-]}
<MI 17fb2 MOVE.L #0x100,D3> {[-8-]}
<Call 0x17fb8 0x1080a> {[-8-]}
_?divs_d3_d4
<POP 0x17fbe LimitCheck 0x0 ≤ D4 ≤ 0x7> {[-8-]}
<MI 17fc8 ASL.L #0x1,D4> {[-8-]}
<MI 17fca LEA.L 0x0,A2> {[-8-]}
<MI 17fce LEA.L (A2+D4.L),A3> {[-8-]}
<MI 17fd2 ADDA.L #0x10012,A3> {[-8-]}
<MI 17fd8 CLR.L D0> {[-8-]}
<MI 17fda MOVE.W (A3),D0> {[-8-]}
<MI 17fdc ADD.L D0,D3> {[-8-]}
<POP 0x17fde LimitCheck 0x0 ≤ D3 ≤ 0xffff> {[-8-]}
<MI 17fe8 MOVE.W D3,(A1+0x40)> {[-8-]}
<MI 17fec CLR.W (A1+0x48)> {[-8-]}
<MI 17ff0 CLR.W (A1+0x4a)> {[-8-]}
<MI 17ff4 ADDA.L #0x20020,A2> {[-8-]}
<MI 17ffa MOVE.L (A2),(A1+0x44)> {[-8-]}
<MI 17ffe MOVE.L (A0),(A2)> {[-8-]}
<POP 18000-18002 StackAdj> Δ+8 {}
<MI 18002 BRA 0x18016> {}
<POP 18004-1800a Naked> Σ-8 Δ+8 →0x17eb0 ←0x17f52
<POP 18004-18006 StackAdj> Δ+8 {}
<MI 18006 BRA 0x17eb0> {}
<POP 1800a-18016 Naked> Σ0 ↓ ←0x17ec2
<MI 1800a MOVEA.L (A6+0x8),A0> {}
<MI 1800e MOVEA.L (A0),A0> {}
<MI 18010 ORI.B #0x08,(A0+0x3f)> {}
<POP 18016-1801e Epilogue> Σ0 ←0x17f58
@ 1801e
_DirFirst(MOD c : Bool; a : String; VAR b : File)
<LVAR 0x010 1(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x002 @>
<POP 1801e-1811a Body>
<POP 1801e-18034 Prologue> Σ0 ↓
<POP 18034-1803a RegCacheLoad> Σ0 ↓
<POP 1803a-1805e Naked> Σ0 ↓ →0x18080
<POP 1803a-1803c StackAdj> Δ-2 {[-2-]}
<MI 1803c MOVE.L (A6+0xc),-(A7)> Δ-4 {[-2-]|[4, '(A6+0xc)']}
<Call 0x1803e 0x17bde> {[-2-]|[4, '(A6+0xc)']}
<POP 18042-18044 StackAdj> Δ+4 {[-2-]}
<MI 18044 MOVE.B (A7)+,D0> Δ+2 {}
<MI 18046 EXTB.W D0> {}
<POP 0x18048 LimitCheck 0x0 ≤ D0 ≤ 0x1> {}
<MI 1804a MOVE.B D0,0x200fa> {}
<MI 18050 MOVE.L (A6+0xc),0x200f2> {}
<MI 18056 TST.B 0x200fa> {}
<MI 1805c BNE 0x18080> {}
<POP 1805e-18080 Naked> Σ0 →0x18112
<MI 1805e MOVE.L (A6+0xc),-(A7)> Δ-4 {[4, '(A6+0xc)']}
<MI 18060 CLR.B -(A7)> Δ-2 {[4, '(A6+0xc)']|[#0]}
<Const 0x18062 0x1.2> Δ-2 {[4, '(A6+0xc)']|[#0]|[#1]}
<Const 0x18064 0x0.4> Δ-4 {[4, '(A6+0xc)']|[#0]|[#1]|[##0]}
<Pointer.fp 0x18068 <LVAR -0x002 @>> Δ-4 {[4, '(A6+0xc)']|[#0]|[#1]|[##0]|[@@-2]}
<MI 1806c MOVEA.L (A6+0x8),A0> {[4, '(A6+0xc)']|[#0]|[#1]|[##0]|[@@-2]}
<MI 18070 PEA.L (A0)> Δ-4 {[4, '(A6+0xc)']|[#0]|[#1]|[##0]|[@@-2]|[4, '^(A0)']}
<Call 0x18072 0x138b4> {[4, '(A6+0xc)']|[#0]|[#1]|[##0]|[@@-2]|[4, '^(A0)']}
_OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
<POP 18078-1807c StackAdj> Δ+20 {}
<MI 1807c BRA 0x18112> {}
<POP 18080-1808e Naked> Σ0 ↓ →0x1809e ←0x1803a
<MI 18080 MOVEA.L (A6+0xc),A0> {}
<MI 18082 CLR.B 0x200fb> {}
<MI 18088 MOVE.W (A0),D0> {}
<MI 1808a CMP.W #0x01,D0> {}
<MI 1808c BNE 0x1809e> {}
<POP 1808e-18098 Naked> Σ0 ↓ →0x1809e
<MI 1808e MOVE.B (A0+0x2),D0> {}
<MI 18092 CMPI.B #0x2a,D0> {}
<MI 18096 BNE 0x1809e> {}
<POP 18098-1809e Naked> Σ0 ↓
<MI 18098 ADDQ.B #0x1,0x200fb> {}
<POP 1809e-180a6 Naked> Σ0 ↓ →0x180b0 ←0x18080 ←0x1808e
<MI 1809e MOVE.B (A6+0x10),D0> {}
<MI 180a2 CMP.B #0x01,D0> {}
<MI 180a4 BNE 0x180b0> {}
<POP 180a6-180b0 Naked> Σ0 →0x180b6
<MI 180a6 MOVE.W #0x4,0x20106> {}
<MI 180ae BRA 0x180b6> {}
<POP 180b0-180b6 Naked> Σ0 ↓ ←0x1809e
<MI 180b0 MOVE.W #0x01,0x20106> {}
<POP 180b6-18112 Naked> Σ0 ↓ ←0x180a6
<MI 180b6 MOVE.L #0xffffffff,0x200fc> {}
<MI 180c0 MOVE.L #0xf,0x20100> {}
<MI 180ca CLR.L D0> {}
<MI 180cc MOVE.W 0x20106,D0> {}
<MI 180d2 SUBQ.L #0x1,D0> {}
<POP 0x180d4 LimitCheck 0x0 ≤ D0 ≤ 0xffff> {}
<MI 180de MOVE.W D0,0x20104> {}
<MI 180e4 MOVE.W 0x20106,D0> {}
<MI 180ea MULU.W #0x400,D0> {}
<POP 180ee-180f0 StackAdj> Δ-4 {[-4-]}
<MI 180f0 MOVE.L D0,-(A7)> Δ-4 {[-4-]|[4, 'D0']}
<Call 0x180f2 0x1083a> {[-4-]|[4, 'D0']}
_Malloc2(VAR dst : Pointer; length : Word)
<POP 180f8-180fa StackAdj> Δ+4 {[-4-]}
<MI 180fa MOVE.L (A7)+,0x200f6> Δ+4 {}
<MI 18100 MOVEA.L (A6+0x8),A0> {}
<MI 18104 MOVE.L #0x01,(A0)> {}
<MI 18106 CLR.B -(A7)> Δ-2 {[#0]}
<MI 18108 PEA.L (A0)> Δ-4 {[#0]|[4, '^(A0)']}
<Call 0x1810a 0x1811a> {[#0]|[4, '^(A0)']}
_DirNext(MOD a : Bool; VAR b : File)
<POP 18110-18112 StackAdj> Δ+6 {}
<POP 18112-1811a Epilogue> Σ0 ←0x1805e
@ 1811a
_DirNext(MOD a : Bool; VAR b : File)
<LVAR 0x00c 1(r)>
<LVAR 0x008 4(r)>
<LVAR -0x002 @>
<POP 1811a-181d8 Body>
<POP 1811a-18130 Prologue> Σ0 ↓
<POP 18130-18136 RegCacheLoad> Σ0 ↓
<POP 18136-1813e Naked> Σ0 ↓ →0x18158
<MI 18136 MOVEA.L (A6+0x8),A0> {}
<MI 18138 MOVEA.L (A0),A1> {}
<MI 1813a CMPA.W #0x01,A1> {}
<MI 1813c BEQ 0x18158> {}
<POP 1813e-18158 Naked> Σ0 ↓
<MI 1813e CLR.B -(A7)> Δ-2 {[#0]}
<Const 0x18140 0x2.2> Δ-2 {[#0]|[#2]}
<Const 0x18144 0x1.4> Δ-4 {[#0]|[#2]|[##1]}
<Pointer.fp 0x18148 <LVAR -0x002 @>> Δ-4 {[#0]|[#2]|[##1]|[@@-2]}
<MI 1814c PEA.L (A0)> Δ-4 {[#0]|[#2]|[##1]|[@@-2]|[4, '^(A0)']}
<Call 0x1814e 0x13c8a> {[#0]|[#2]|[##1]|[@@-2]|[4, '^(A0)']}
_CloseFile(a : L; VAR status : B; VAR file : File)
<POP 18154-18158 StackAdj> Δ+16 {}
<POP 18158-18160 Naked> Σ0 ↓ →0x18162 ←0x18136
<MI 18158 TST.B 0x200fa> {}
<MI 1815e BNE 0x18162> {}
<POP 18160-18162 Naked> Σ0 →0x181ba
<MI 18160 BRA 0x181ba> {}
<POP 18162-18168 Naked> Σ0 ↓ →0x1816c ←0x18158
<MI 18162 TST.B (A6+0xc)> {}
<MI 18166 BEQ 0x1816c> {}
<POP 18168-1816c Naked> Σ0 ↓
<Call 0x18168 0x17c4a> {}
<POP 1816c-18190 Naked> Σ0 ↓ →0x181ba ←0x18162
<MI 1816c MOVEA.L (A6+0x8),A0> {}
<MI 1816e PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Const 0x18170 0x4d.4> Δ-4 {[4, '^(A0)']|[##77]}
<Call 0x18174 0x10856> {[4, '^(A0)']|[##77]}
_Malloc1(length : Long) : Pointer
<POP 1817a-1817c StackAdj> Δ+8 {}
<MI 1817c PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x1817e 0x17e96> {[4, '^(A0)']}
<POP 18182-18184 StackAdj> Δ+4 {}
<MI 18184 MOVEA.L (A0),A1> {}
<MI 18186 MOVE.B (A1+0x3f),D0> {}
<MI 1818a LSL.B #0x4,D0> {}
<MI 1818c LSR.B #0x7,D0> {}
<MI 1818e BEQ 0x181ba> {}
<POP 18190-181ba Naked> Σ0 ↓
<MI 18190 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Const 0x18192 0x4d.4> Δ-4 {[4, '^(A0)']|[##77]}
<Call 0x18196 0x108fa> {[4, '^(A0)']|[##77]}
_Free2(a : Pointer; b : Long)
<POP 1819c-1819e StackAdj> Δ+8 {}
<MI 1819e MOVE.W 0x20106,D0> {}
<MI 181a4 MULU.W #0x400,D0> {}
<Blob 0x181a8 [4] 0x200f6> Δ-4 {[«4»]}
<MI 181ae MOVE.L D0,-(A7)> Δ-4 {[«4»]|[4, 'D0']}
<Call 0x181b0 0x108de> {[«4»]|[4, 'D0']}
_Free1(a : Pointer; b : Long)
<POP 181b6-181b8 StackAdj> Δ+8 {}
<MI 181b8 MOVE.L #0x01,(A0)> {}
<POP 181ba-181c2 Naked> Σ0 ↓ →0x181d0 ←0x18160 ←0x1816c
<MI 181ba MOVEA.L (A6+0x8),A0> {}
<MI 181bc MOVEA.L (A0),A0> {}
<MI 181be CMPA.W #0x01,A0> {}
<MI 181c0 BNE 0x181d0> {}
<POP 181c2-181d0 Naked> Σ0 ↓
<Const 0x181c2 0x200f2.4> Δ-4 {[##131314]}
<Call 0x181c8 0x10d36> {[##131314]}
_FreeString(VAR a : String)
<POP 181ce-181d0 StackAdj> Δ+4 {}
<POP 181d0-181d8 Epilogue> Σ0 ←0x181ba
@ 1857e
<LVAR 0x00a 4(w)>
<LVAR 0x008 1(r)>
<POP 1857e-18608 Body>
<POP 1857e-18594 Prologue> Σ0 ↓
<POP 18594-18596 RegCacheLoad> Σ0 ↓
<POP 18596-1859e Naked> Σ0 ↓ →0x185b0
<MI 18596 MOVE.B (A6+0x8),D0> {}
<MI 1859a CMP.B #0x30,D0> {}
<MI 1859c BCS 0x185b0> {}
<POP 1859e-185a4 Naked> Σ0 ↓ →0x185b0
<MI 1859e CMPI.B #0x39,D0> {}
<MI 185a2 BHI 0x185b0> {}
<POP 185a4-185aa Naked> Σ0 ↓
<MI 185a4 CLR.L D1> {}
<MI 185a6 MOVE.B D0,D1> {}
<MI 185a8 SUB.W #0x30,D1> {}
<POP 185aa-185b0 Naked> Σ0 →0x185fc ←0x185bc
<MI 185aa EXTW.L D1> {}
<MI 185ac MOVE.L D1,D7> {}
<MI 185ae BRA 0x185fc> {}
<POP 185b0-185b6 Naked> Σ0 ↓ →0x185c6 ←0x18596 ←0x1859e
<MI 185b0 CMPI.B #0x41,D0> {}
<MI 185b4 BCS 0x185c6> {}
<POP 185b6-185bc Naked> Σ0 ↓ →0x185c6
<MI 185b6 CMPI.B #0x46,D0> {}
<MI 185ba BHI 0x185c6> {}
<POP 185bc-185c6 Naked> Σ0 →0x185aa
<MI 185bc CLR.L D1> {}
<MI 185be MOVE.B D0,D1> {}
<MI 185c0 SUBI.W #0x0037,D1> {}
<MI 185c4 BRA 0x185aa> {}
<POP 185c6-185fc Naked> Σ0 ↓ ←0x185b0 ←0x185b6
<Blob 0x185c6 [18] @> Δ-18 {[«18""»]}
<Const 0x185d8 0xe.2> Δ-2 {[«18""»]|[#14]}
<POP 185dc-185de StackAdj> Δ-4 {[«18""»]|[#14]|[-4-]}
<Lit 0x185de 17> {[«18""»]|[#14]|[$$Illegal Hex data!]}
<Call 0x185f2 0x14e18> {[«18""»]|[#14]|[$$Illegal Hex data!]}
_PopProgram(status : Byte; msg : String)
<POP 185f8-185fc StackAdj> Δ+24 {}
<POP 185fc-18600 Naked> Σ0 ↓ ←0x185aa
<MI 185fc MOVE.L D7,(A6+0xa)> {}
<POP 18600-18608 Epilogue> Σ0
@ 18608
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 18608-1866c Body>
<POP 18608-1861e Prologue> Σ0 ↓
<POP 1861e-18620 RegCacheLoad> Σ0 ↓
<POP 18620-18664 Naked> Σ0 ↓
<MI 18620 MOVEA.L (A6+0xc),A0> {}
<Blob 0x18624 [30] (A0+0xfc)> Δ-30 {[«30»]}
<Const 0x18634 0x2.2> Δ-2 {[«30»]|[#2]}
<POP 18638-1863a StackAdj> Δ-4 {[«30»]|[#2]|[-4-]}
<MI 1863a MOVE.L (A6+0x8),-(A7)> Δ-4 {[«30»]|[#2]|[-4-]|[4, '(A6+0x8)']}
<POP 1863e-18640 StackAdj> Δ-4 {[«30»]|[#2]|[-4-]|[4, '(A6+0x8)']|[-4-]}
<Lit 0x18640> {[«30»]|[#2]|[-4-]|[4, '(A6+0x8)']|[$$…]}
<Pointer.sp 0x18640 14> Δ-4
<Const 0x18644 0x1.2> Δ-2
<Const 0x18648 0x1e.2> Δ-2
<Call 0x1864a 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 18650-18652 StackAdj> Δ+8
<Call 0x18652 0x10f2c> {[«30»]|[#2]|[-4-]|[4, '(A6+0x8)']|[$$…]}
_StringCat2(a, b : String) : String
<POP 18658-1865a StackAdj> Δ+8 {[«30»]|[#2]|[-4-]}
<Call 0x1865a 0x14e18> {[«30»]|[#2]|[-4-]}
_PopProgram(status : Byte; msg : String)
<POP 18660-18664 StackAdj> Δ+36 {}
<POP 18664-1866c Epilogue> Σ0
@ 1866c
_ExpLoad(a : String; b: Pointer)
<LVAR 0x00c @ 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x002 2(r)>
<LVAR -0x004 2(r)>
<LVAR -0x006 @ 2(r)>
<LVAR -0x008 1(rw)>
<LVAR -0x010 @ 4(w)>
<LVAR -0x014 @ 4(rw)>
<LVAR -0x016 @ 1(r)>
<LVAR -0x01a 4(w)>
<LVAR -0x026 @ 4(r)>
<LVAR -0x028 @>
<LVAR -0x02c @ 4(r)>
<POP 1866c-18b28 Body> Δ-16
<POP 1866c-18682 Prologue> Σ0 ↓
<POP 18682-1868a RegCacheLoad> Σ0 ↓
<POP 1868a-18692 Naked> Σ0 ↓ →0x186b4
<MI 1868a TST.B 0x20024> {}
<MI 18690 BEQ 0x186b4> {}
<POP 18692-186b4 Naked> Σ0 ↓
<POP 18692-18694 StackAdj> Δ-6 {[-6-]}
<Call 0x18694 0x15b2a> {[-6-]}
_GetConsoleConfig() : Long
<MI 1869a MOVE.L (A7)+,D0> Δ+4 {[-2-]}
<POP 0x1869c LimitCheck 0x0 ≤ D0 ≤ 0xffff> {[-2-]}
<MI 186a6 MOVE.W D0,(A7)> {[2, 'D0']}
<MI 186a8 MOVE.L (A6+0xc),-(A7)> Δ-4 {[2, 'D0']|[4, '(A6+0xc)']}
<Call 0x186ac 0x1020a> {[2, 'D0']|[4, '(A6+0xc)']}
KC05_PortWriteString(port : Word ; str : String)
<POP 186b2-186b4 StackAdj> Δ+6 {}
<POP 186b4-186bc Naked> Σ0 ↓ →0x186ea ←0x1868a
<MI 186b4 TST.B 0x20025> {}
<MI 186ba BNE 0x186ea> {}
<POP 186bc-186ea Naked> Σ0 ↓
<Blob 0x186bc [30] @> Δ-30 {[«30""»]}
<Const 0x186c8 0x2.2> Δ-2 {[«30""»]|[#2]}
<POP 186cc-186ce StackAdj> Δ-4 {[«30""»]|[#2]|[-4-]}
<Lit 0x186ce 30> {[«30""»]|[#2]|[$$Experiment io not initialized.]}
<Call 0x186e0 0x14e18> {[«30""»]|[#2]|[$$Experiment io not initialized.]}
_PopProgram(status : Byte; msg : String)
<POP 186e6-186ea StackAdj> Δ+36 {}
<POP 186ea-186f0 Naked> Σ0 ↓ ←0x186b4
<MI 186ea CLR.B (A6-0x8)> {}
<MI 186ee MOVEQ.L #-0x01,D6> {}
<POP 186f0-18710 Naked> Σ0 Δ-4 ↓ →0x18716 ←0x1878c
<MI 186f0 ADDQ.L #0x1,D6> {}
<MI 186f2 MOVE.L D6,D4> {}
<MI 186f4 MOVEQ.L #0x06,D3> {}
<Call 0x186f6 0x107ea> {}
_?muls_d3_d4
<MI 186f8 LEA.L 0x0,A0> {}
<MI 186fc LEA.L (A0+D4.L),A0> {}
<MI 18700 ADDA.L #0x2002c,A0> {}
<MI 18706 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 18708 MOVEA.L (A0+0x2),A1> {[4, 'A0']}
<MI 1870c CMPA.W #0x01,A1> {[4, 'A0']}
<MI 1870e BNE 0x18716> {[4, 'A0']}
<POP 18710-18716 Naked> Σ-4 Δ+4 →0x1879a
<POP 18710-18712 StackAdj> Δ+4 {}
<MI 18712 BRA 0x1879a> {}
<POP 18716-18724 Naked> Σ-4 Δ-8 ↓ ←0x186f0
<MI 18716 MOVEA.L (A6+0xc),A0> {[-4-]}
<MI 1871a MOVE.L A0,-(A7)> Δ-4 {[-4-]|[4, 'A0']}
<MI 1871c MOVE.W (A0),D0> {[-4-]|[4, 'A0']}
<MI 1871e EXTW.L D0> {[-4-]|[4, 'A0']}
<MI 18720 MOVE.L D0,-(A7)> Δ-4 {[-4-]|[4, 'A0']|[4, 'D0']}
<MI 18722 MOVEQ.L #0x01,D7> {[-4-]|[4, 'A0']|[4, 'D0']}
<POP 18724-18728 Naked> Σ-12 ↓ →0x1874c ←0x18748
<MI 18724 CMP.L (A7),D7> {[-12-]}
<MI 18726 BGT 0x1874c> {[-12-]}
<POP 18728-18742 Naked> Σ-12 ↓ →0x18748
<MI 18728 MOVEA.L (A7+0x8),A0> {[-12-]}
<MI 1872c MOVEA.L (A0+0x2),A0> {[-12-]}
<MI 18730 LEA.L (A0+D7.L),A0> {[-12-]}
<MI 18734 MOVEA.L (A7+0x4),A1> {[-12-]}
<MI 18738 MOVE.B (A0+0xfb),D0> {[-12-]}
<MI 1873c CMP.B (A1+D7.L+#0x1),D0> {[-12-]}
<MI 18740 BEQ 0x18748> {[-12-]}
<POP 18742-18748 Naked> Σ-12 Δ+12 →0x1878c
<POP 18742-18746 StackAdj> Δ+12 {}
<MI 18746 BRA 0x1878c> {}
<POP 18748-1874c Naked> Σ-12 ↓ →0x18724 ←0x18728
<MI 18748 ADDQ.L #0x1,D7> {[-12-]}
<MI 1874a BVC 0x18724> {[-12-]}
<POP 1874c-18756 Naked> Σ-12 Δ+4 ↓ →0x18782 ←0x18724
<POP 1874c-1874e StackAdj> Δ+4 {[-8-]}
<MI 1874e MOVEA.L (A7+0x4),A0> {[-8-]}
<MI 18752 TST.B (A0)> {[-8-]}
<MI 18754 BEQ 0x18782> {[-8-]}
<POP 18756-18782 Naked> Σ-8 ↓
<Blob 0x18756 [22] @> Δ-22 {[-8-]|[«22""»]}
<MI 18762 MOVE.L (A0+0x2),-(A7)> Δ-4 {[-8-]|[«22""»]|[4, '(A0+0x2)']}
<POP 18766-18768 StackAdj> Δ-4 {[-8-]|[«22""»]|[4, '(A0+0x2)']|[-4-]}
<Lit 0x18768 22> {[-8-]|[«22""»]|[4, '(A0+0x2)']|[$$Attempt to re-load ->_]}
<Call 0x1877a 0x18608> {[-8-]|[«22""»]|[4, '(A0+0x2)']|[$$Attempt to re-load ->_]}
<POP 1877e-18782 StackAdj> Δ+30 {[-8-]}
<POP 18782-1878a Naked> Σ-8 Δ+8 →0x1879a ←0x1874c
<MI 18782 MOVE.B #0x01,(A6-0x8)> {[-8-]}
<POP 18786-18788 StackAdj> Δ+8 {}
<MI 18788 BRA 0x1879a> {}
<POP 1878c-1879a Naked> Σ0 ↓ →0x186f0 ←0x18742
<MI 1878c CLR.L D0> {}
<MI 1878e MOVE.W 0x20026,D0> {}
<MI 18794 CMP.L D0,D6> {}
<MI 18796 BNE 0x186f0> {}
<POP 1879a-187a2 Naked> Σ0 ↓ →0x1882a ←0x18710 ←0x18782
<MI 1879a TST.B (A6-0x8)> {}
<MI 1879e BEQ 0x1882a> {}
<POP 187a2-187a6 Naked> Σ0 ↓ →0x1881c
<MI 187a2 TST.L D6> {}
<MI 187a4 BEQ 0x1881c> {}
<POP 187a6-187cc Naked> Σ0 ↓
<MI 187a6 MOVE.L D6,D4> {}
<MI 187a8 MOVEQ.L #0x06,D3> {}
<Call 0x187aa 0x107ea> {}
_?muls_d3_d4
<MI 187ac LEA.L 0x0,A0> {}
<MI 187b0 LEA.L (A0+D4.L),A0> {}
<MI 187b4 ADDA.L #0x2002c,A0> {}
<MI 187ba LEA.L (A6-0x6),A1> {}
<BlockMove 6,A0,A1> {}
<MI 187c6 MOVE.L D6,D0> {}
<MI 187c8 SUBQ.L #0x1,D0> {}
<MI 187ca MOVE.L D0,D7> {}
<POP 187cc-187d0 Naked> Σ0 ↓ →0x18804 ←0x187d0
<MI 187cc TST.L D7> {}
<MI 187ce BLT 0x18804> {}
<POP 187d0-18804 Naked> Σ0 ↓ →0x187cc
<MI 187d0 MOVE.L D7,D0> {}
<MI 187d2 ADDQ.L #0x1,D0> {}
<MI 187d4 MOVE.L D0,D4> {}
<MI 187d6 MOVEQ.L #0x06,D3> {}
<Call 0x187d8 0x107ea> {}
_?muls_d3_d4
<MI 187da LEA.L 0x0,A0> {}
<MI 187de LEA.L (A0+D4.L),A1> {}
<MI 187e2 ADDA.L #0x2002c,A1> {}
<MI 187e8 MOVE.L D7,D4> {}
<MI 187ea MOVEQ.L #0x06,D3> {}
<Call 0x187ec 0x107ea> {}
_?muls_d3_d4
<MI 187ee LEA.L (A0+D4.L),A0> {}
<MI 187f2 ADDA.L #0x2002c,A0> {}
<BlockMove 6,A0,A1> {}
<MI 18800 SUBQ.L #0x1,D7> {}
<MI 18802 BVC 0x187cc> {}
<POP 18804-1881c Naked> Σ0 ↓ ←0x187cc
<MI 18804 MOVE.W (A6-0x6),0x2002c> {}
<MI 1880c MOVE.W (A6-0x4),0x2002e> {}
<MI 18814 MOVE.W (A6-0x2),0x20030> {}
<POP 1881c-1882a Naked> Σ0 →0x18b02 ←0x187a2
<MI 1881c MOVEA.L (A6+0x8),A0> {}
<MI 18820 MOVE.L 0x2002e,(A0)> {}
<MI 18826 BRA 0x18b02> {}
<POP 1882a-18844 Naked> Σ0 ↓ →0x1887e ←0x1879a ←0x1887c
<MI 1882a MOVE.L D6,D4> {}
<MI 1882c MOVEQ.L #0x06,D3> {}
<Call 0x1882e 0x107ea> {}
_?muls_d3_d4
<MI 18830 LEA.L 0x0,A0> {}
<MI 18834 LEA.L (A0+D4.L),A0> {}
<MI 18838 MOVEA.L A0,A1> {}
<MI 1883a ADDA.L #0x2002c,A1> {}
<MI 18840 TST.B (A1)> {}
<MI 18842 BEQ 0x1887e> {}
<POP 18844-18848 Naked> Σ0 ↓ →0x1887c
<MI 18844 SUBQ.L #0x1,D6> {}
<MI 18846 BGE 0x1887c> {}
<POP 18848-1887c Naked> Σ0 ↓
<Blob 0x18848 [30] @> Δ-30 {[«30""»]}
<MI 1885a MOVEA.L (A6+0x8),A1> {[«30""»]}
<MI 1885e MOVE.L (A1),-(A7)> Δ-4 {[«30""»]|[4, '(A1)']}
<POP 18860-18862 StackAdj> Δ-4 {[«30""»]|[4, '(A1)']|[-4-]}
<Lit 0x18862 29> {[«30""»]|[4, '(A1)']|[$$Experiment cache overflow ->_]}
<Call 0x18874 0x18608> {[«30""»]|[4, '(A1)']|[$$Experiment cache overflow ->_]}
<POP 18878-1887c StackAdj> Δ+38 {}
<POP 1887c-1887e Naked> Σ0 →0x1882a ←0x18844
<MI 1887c BRA 0x1882a> {}
<POP 1887e-1888a Naked> Σ0 ↓ →0x188d6 ←0x1882a
<MI 1887e ADDA.L #0x2002e,A0> {}
<MI 18884 MOVEA.L (A0),A1> {}
<MI 18886 CMPA.W #0x01,A1> {}
<MI 18888 BEQ 0x188d6> {}
<POP 1888a-18890 Naked> Σ0 ↓
<MI 1888a MOVE.L (A1+0xf8),(A6-0x14)> {}
<POP 18890-18898 Naked> Σ0 ↓ →0x188b4 ←0x18898
<MI 18890 MOVEA.L (A6-0x14),A0> {}
<MI 18894 CMPA.W #0x01,A0> {}
<MI 18896 BEQ 0x188b4> {}
<POP 18898-188b4 Naked> Σ0 →0x18890
<MI 18898 MOVE.L A0,(A6-0x10)> {}
<MI 1889c MOVE.L (A0+0x2),(A6-0x14)> {}
<Pointer.fp 0x188a2 <LVAR -0x010 @ 4(w)>> Δ-4 {[@@-16]}
<Const 0x188a6 0x6.4> Δ-4 {[@@-16]|[##6]}
<Call 0x188aa 0x108fa> {[@@-16]|[##6]}
_Free2(a : Pointer; b : Long)
<POP 188b0-188b2 StackAdj> Δ+8 {}
<MI 188b2 BRA 0x18890> {}
<POP 188b4-188d6 Naked> Σ0 ↓ ←0x18890
<MI 188b4 MOVE.L D6,D4> {}
<MI 188b6 MOVEQ.L #0x06,D3> {}
<Call 0x188b8 0x107ea> {}
_?muls_d3_d4
<MI 188ba LEA.L 0x0,A0> {}
<MI 188be LEA.L (A0+D4.L),A0> {}
<MI 188c2 ADDA.L #0x2002e,A0> {}
<MI 188c8 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Const 0x188ca 0x11d.4> Δ-4 {[4, '^(A0)']|[##285]}
<Call 0x188ce 0x108fa> {[4, '^(A0)']|[##285]}
_Free2(a : Pointer; b : Long)
<POP 188d4-188d6 StackAdj> Δ+8 {}
<POP 188d6-188dc Naked> Σ0 ↓ ←0x1887e
<MI 188d6 MOVE.L D6,D0> {}
<MI 188d8 SUBQ.L #0x1,D0> {}
<MI 188da MOVE.L D0,D7> {}
<POP 188dc-188e0 Naked> Σ0 ↓ →0x18914 ←0x188e0
<MI 188dc TST.L D7> {}
<MI 188de BLT 0x18914> {}
<POP 188e0-18914 Naked> Σ0 ↓ →0x188dc
<MI 188e0 MOVE.L D7,D0> {}
<MI 188e2 ADDQ.L #0x1,D0> {}
<MI 188e4 MOVE.L D0,D4> {}
<MI 188e6 MOVEQ.L #0x06,D3> {}
<Call 0x188e8 0x107ea> {}
_?muls_d3_d4
<MI 188ea LEA.L 0x0,A0> {}
<MI 188ee LEA.L (A0+D4.L),A1> {}
<MI 188f2 ADDA.L #0x2002c,A1> {}
<MI 188f8 MOVE.L D7,D4> {}
<MI 188fa MOVEQ.L #0x06,D3> {}
<Call 0x188fc 0x107ea> {}
_?muls_d3_d4
<MI 188fe LEA.L (A0+D4.L),A0> {}
<MI 18902 ADDA.L #0x2002c,A0> {}
<BlockMove 6,A0,A1> {}
<MI 18910 SUBQ.L #0x1,D7> {}
<MI 18912 BVC 0x188dc> {}
<POP 18914-1898e Naked> Σ0 Δ-8 ↓ ←0x188dc
<MI 18914 MOVE.L (A6+0xc),-(A7)> Δ-4 {[4, '(A6+0xc)']}
<MI 18918 CLR.B -(A7)> Δ-2 {[4, '(A6+0xc)']|[#0]}
<Const 0x1891a 0x2.2> Δ-2 {[4, '(A6+0xc)']|[#0]|[#2]}
<Const 0x1891e 0x0.4> Δ-4 {[4, '(A6+0xc)']|[#0]|[#2]|[##0]}
<Pointer.fp 0x18922 <LVAR -0x028 @>> Δ-4 {[4, '(A6+0xc)']|[#0]|[#2]|[##0]|[@@-40]}
<Pointer.fp 0x18926 <LVAR -0x02c @ 4(r)>> Δ-4 {[4, '(A6+0xc)']|[#0]|[#2]|[##0]|[@@-40]|[@@-44]}
<Call 0x1892a 0x138b4> {[4, '(A6+0xc)']|[#0]|[#2]|[##0]|[@@-40]|[@@-44]}
_OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
<POP 18930-18934 StackAdj> Δ+20 {}
<MI 18934 MOVEA.L (A6+0x8),A0> {}
<MI 18938 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Const 0x1893a 0x11d.4> Δ-4 {[4, '^(A0)']|[##285]}
<Call 0x1893e 0x10856> {[4, '^(A0)']|[##285]}
_Malloc1(length : Long) : Pointer
<POP 18944-18946 StackAdj> Δ+8 {}
<MI 18946 MOVE.L (A0),0x2002e> {}
<MI 1894c MOVEA.L (A0),A0> {}
<MI 1894e MOVEA.L (A6-0x2c),A1> {}
<MI 18952 LEA.L (A0+0xfc),A2> {}
<BlockMove 30,A1,A2> {}
<MI 1895e MOVE.L #0x01,(A0+0xf8)> {}
<MI 18962 MOVE.B #0xff,(A0+0x11a)> {}
<MI 18968 CLR.B (A0+0x11b)> {}
<MI 1896c ANDI.B #0x7f,(A0+0x11c)> {}
<Pointer.fp 0x18972 <LVAR -0x026 @ 4(r)>> Δ-4 {[@@-38]}
<Call 0x18976 0x10cfa> {[@@-38]}
_NewString(VAR a : String)
<POP 1897c-1897e StackAdj> Δ+4 {}
<MI 1897e MOVEQ.L #0x10,D5> {}
<MI 18980 MOVEA.L (A6-0x26),A0> {}
<MI 18984 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 18986 MOVEA.L (A6+0x8),A1> {[4, 'A0']}
<MI 1898a MOVEA.L (A1),A1> {[4, 'A0']}
<MI 1898c MOVE.L A1,-(A7)> Δ-4 {[4, 'A0']|[4, 'A1']}
<POP 1898e-189ae Naked> Σ-8 ↓ →0x18ab4 ←0x18ab4
<MI 1898e MOVE.L (A6-0x2c),-(A7)> Δ-4 {[-8-]|[4, '(A6-0x2c)']}
<Pointer.fp 0x18992 <LVAR -0x026 @ 4(r)>> Δ-4 {[-8-]|[4, '(A6-0x2c)']|[@@-38]}
<Pointer.fp 0x18996 <LVAR -0x016 @ 1(r)>> Δ-4 {[-8-]|[4, '(A6-0x2c)']|[@@-38]|[@@-22]}
<Call 0x1899a 0x170c4> {[-8-]|[4, '(A6-0x2c)']|[@@-38]|[@@-22]}
_FileReadLine(file : File; VAR a : String; VAR b : Byte)
<POP 189a0-189a4 StackAdj> Δ+12 {[-8-]}
<MI 189a4 MOVEA.L (A7+0x4),A0> {[-8-]}
<MI 189a8 TST.W (A0)> {[-8-]}
<MI 189aa BEQ 0x18ab4> {[-8-]}
<POP 189ae-189ba Naked> Σ-8 ↓ →0x18a8c
<MI 189ae MOVE.B (A0+0x2),D0> {[-8-]}
<MI 189b2 CMPI.B #0x50,D0> {[-8-]}
<MI 189b6 BNE 0x18a8c> {[-8-]}
<POP 189ba-189dc Naked> Σ-8 ↓ →0x189e4
<Pointer.fp 0x189ba <LVAR -0x014 @ 4(rw)>> Δ-4 {[-8-]|[@@-20]}
<Const 0x189be 0x6.4> Δ-4 {[-8-]|[@@-20]|[##6]}
<Call 0x189c2 0x10856> {[-8-]|[@@-20]|[##6]}
_Malloc1(length : Long) : Pointer
<POP 189c8-189ca StackAdj> Δ+8 {[-8-]}
<MI 189ca MOVEA.L (A6-0x14),A1> {[-8-]}
<MI 189ce MOVE.L #0x01,(A1+0x2)> {[-8-]}
<MI 189d2 MOVEA.L (A7),A2> {[-8-]}
<MI 189d4 MOVEA.L (A2+0xf8),A3> {[-8-]}
<MI 189d8 CMPA.W #0x01,A3> {[-8-]}
<MI 189da BNE 0x189e4> {[-8-]}
<POP 189dc-189e4 Naked> Σ-8 →0x189ee
<MI 189dc MOVE.L (A6-0x14),(A2+0xf8)> {[-8-]}
<MI 189e2 BRA 0x189ee> {[-8-]}
<POP 189e4-189ee Naked> Σ-8 ↓ ←0x189ba
<MI 189e4 MOVEA.L (A2+0xf4),A3> {[-8-]}
<MI 189e8 MOVE.L (A6-0x14),(A3+0x2)> {[-8-]}
<POP 189ee-18a38 Naked> Σ-8 ↓ →0x18a3c ←0x189dc
<MI 189ee MOVE.L (A6-0x14),(A2+0xf4)> {[-8-]}
<POP 189f4-189f6 StackAdj> Δ-4 {[-12-]}
<MI 189f6 MOVE.B (A0+0x3),-(A7)> Δ-2 {[-12-]|[2, '(A0+0x3)']}
<Call 0x189fa 0x1857e> {[-12-]|[2, '(A0+0x3)']}
<POP 189fe-18a00 StackAdj> Δ+2 {[-12-]}
<MI 18a00 MOVE.L (A7)+,D0> Δ+4 {[-8-]}
<MI 18a02 ASL.L #0x4,D0> {[-8-]}
<POP 18a04-18a06 StackAdj> Δ-4 {[-12-]}
<MI 18a06 MOVE.B (A0+0x4),-(A7)> Δ-2 {[-12-]|[2, '(A0+0x4)']}
<Call 0x18a0a 0x1857e> {[-12-]|[2, '(A0+0x4)']}
<POP 18a0e-18a10 StackAdj> Δ+2 {[-12-]}
<MI 18a10 ADD.L (A7)+,D0> Δ+4 {[-8-]}
<MI 18a12 MOVE.B D0,(A1+0x1)> {[-8-]}
<POP 18a16-18a18 StackAdj> Δ-4 {[-12-]}
<MI 18a18 MOVE.B (A0+0x7),-(A7)> Δ-2 {[-12-]|[2, '(A0+0x7)']}
<Call 0x18a1c 0x1857e> {[-12-]|[2, '(A0+0x7)']}
<POP 18a20-18a22 StackAdj> Δ+2 {[-12-]}
<MI 18a22 MOVE.L (A7)+,D0> Δ+4 {[-8-]}
<MI 18a24 ANDI.B #0xc0,(A1)> {[-8-]}
<MI 18a28 OR.B D0,(A1)> {[-8-]}
<MI 18a2a ANDI.B #0xbf,(A1)> {[-8-]}
<MI 18a2e MOVE.B (A0+0x6),D0> {[-8-]}
<MI 18a32 CMPI.B #0x46,D0> {[-8-]}
<MI 18a36 BNE 0x18a3c> {[-8-]}
<POP 18a38-18a3c Naked> Σ-8 ↓
<MI 18a38 ORI.B #0x40,(A1)> {[-8-]}
<POP 18a3c-18a46 Naked> Σ-8 ↓ →0x18a4c ←0x189ee
<MI 18a3c MOVE.B (A0+0x5),D0> {[-8-]}
<MI 18a40 CMPI.B #0x49,D0> {[-8-]}
<MI 18a44 BNE 0x18a4c> {[-8-]}
<POP 18a46-18a4c Naked> Σ-8 →0x18a8a
<MI 18a46 ORI.B #0x80,(A1)> {[-8-]}
<MI 18a4a BRA 0x18a8a> {[-8-]}
<POP 18a4c-18a5e Naked> Σ-8 ↓ →0x18a8a ←0x18a3c
<MI 18a4c ORI.B #0x80,(A2+0x11c)> {[-8-]}
<MI 18a52 ANDI.B #0x7f,(A1)> {[-8-]}
<MI 18a56 MOVE.B (A1),D0> {[-8-]}
<MI 18a58 LSL.B #0x1,D0> {[-8-]}
<MI 18a5a LSR.B #0x7,D0> {[-8-]}
<MI 18a5c BNE 0x18a8a> {[-8-]}
<POP 18a5e-18a68 Naked> Σ-8 ↓ →0x18a6c
<MI 18a5e MOVE.B (A1+0x1),D0> {[-8-]}
<MI 18a62 CMP.B (A2+0x11a),D0> {[-8-]}
<MI 18a66 BCC 0x18a6c> {[-8-]}
<POP 18a68-18a6c Naked> Σ-8 ↓
<MI 18a68 MOVE.B D0,(A2+0x11a)> {[-8-]}
<POP 18a6c-18a86 Naked> Σ-8 ↓ →0x18a8a ←0x18a5e
<MI 18a6c CLR.L D1> {[-8-]}
<MI 18a6e MOVE.B D0,D1> {[-8-]}
<MI 18a70 CLR.L D0> {[-8-]}
<MI 18a72 MOVE.B (A1),D0> {[-8-]}
<MI 18a74 LSL.B #0x2,D0> {[-8-]}
<MI 18a76 LSR.B #0x2,D0> {[-8-]}
<MI 18a78 ADD.W D1,D0> {[-8-]}
<MI 18a7a SUBQ.W #0x1,D0> {[-8-]}
<MI 18a7c CLR.L D1> {[-8-]}
<MI 18a7e MOVE.B (A2+0x11b),D1> {[-8-]}
<MI 18a82 CMP.W D1,D0> {[-8-]}
<MI 18a84 BLS 0x18a8a> {[-8-]}
<POP 18a86-18a8a Naked> Σ-8 ↓
<MI 18a86 MOVE.B D0,(A2+0x11b)> {[-8-]}
<POP 18a8a-18a8c Naked> Σ-8 →0x18ab4 ←0x18a46 ←0x18a4c ←0x18a6c
<MI 18a8a BRA 0x18ab4> {[-8-]}
<POP 18a8c-18ab4 Naked> Σ-8 ↓ ←0x189ae
<POP 18a8c-18a8e StackAdj> Δ-4 {[-12-]}
<MI 18a8e MOVE.B D0,-(A7)> Δ-2 {[-12-]|[2, 'D0']}
<Call 0x18a90 0x1857e> {[-12-]|[2, 'D0']}
<POP 18a94-18a96 StackAdj> Δ+2 {[-12-]}
<MI 18a96 MOVE.L (A7)+,D0> Δ+4 {[-8-]}
<MI 18a98 ASL.L #0x4,D0> {[-8-]}
<POP 18a9a-18a9c StackAdj> Δ-4 {[-12-]}
<MI 18a9c MOVE.B (A0+0x3),-(A7)> Δ-2 {[-12-]|[2, '(A0+0x3)']}
<Call 0x18aa0 0x1857e> {[-12-]|[2, '(A0+0x3)']}
<POP 18aa4-18aa6 StackAdj> Δ+2 {[-12-]}
<MI 18aa6 ADD.L (A7)+,D0> Δ+4 {[-8-]}
<MI 18aa8 MOVE.L D0,(A6-0x1a)> {[-8-]}
<MI 18aac MOVEA.L (A7),A0> {[-8-]}
<MI 18aae MOVE.B D0,(A0+D5.L-#0xc)> {[-8-]}
<MI 18ab2 ADDQ.L #0x1,D5> {[-8-]}
<POP 18ab4-18abc Naked> Σ-8 ↓ →0x1898e ←0x1898e ←0x18a8a
<MI 18ab4 TST.B (A6-0x16)> {[-8-]}
<MI 18ab8 BEQ 0x1898e> {[-8-]}
<POP 18abc-18b02 Naked> Σ-8 Δ+8 ↓
<POP 18abc-18abe StackAdj> Δ+8 {}
<Pointer.fp 0x18abe <LVAR -0x026 @ 4(r)>> Δ-4 {[@@-38]}
<Call 0x18ac2 0x10d36> {[@@-38]}
_FreeString(VAR a : String)
<POP 18ac8-18aca StackAdj> Δ+2 {[-2-]}
<MI 18aca CLR.B (A7)> {[-2-]}
<Const 0x18acc 0x2.2> Δ-2 {[-2-]|[#2]}
<Const 0x18ad0 0x1.4> Δ-4 {[-2-]|[#2]|[##1]}
<Pointer.fp 0x18ad4 <LVAR -0x028 @>> Δ-4 {[-2-]|[#2]|[##1]|[@@-40]}
<Pointer.fp 0x18ad8 <LVAR -0x02c @ 4(r)>> Δ-4 {[-2-]|[#2]|[##1]|[@@-40]|[@@-44]}
<Call 0x18adc 0x13c8a> {[-2-]|[#2]|[##1]|[@@-40]|[@@-44]}
_CloseFile(a : L; VAR status : B; VAR file : File)
<POP 18ae2-18ae6 StackAdj> Δ+16 {}
<MI 18ae6 MOVEA.L (A6+0x8),A0> {}
<MI 18aea MOVEA.L (A0),A0> {}
<MI 18aec MOVE.L D5,D0> {}
<MI 18aee SUBI.L #0x0000000f,D0> {}
<POP 0x18af4 LimitCheck 0x0 ≤ D0 ≤ 0xff> {}
<MI 18afe MOVE.B D0,(A0+0x2)> {}
<POP 18b02-18b20 Naked> Σ0 ↓ ←0x1881c
<MI 18b02 MOVEA.L (A6+0x8),A0> {}
<MI 18b06 MOVEA.L (A0),A0> {}
<MI 18b08 MOVE.L (A0+0xf8),(A0+0xf4)> {}
<MI 18b0e MOVE.B #0x01,0x2002c> {}
<Pointer.fp 0x18b14 <LVAR 0x00c @ 4(r)>> Δ-4 {[@@12]}
<Call 0x18b18 0x10d36> {[@@12]}
_FreeString(VAR a : String)
<POP 18b1e-18b20 StackAdj> Δ+4 {}
<POP 18b20-18b28 Epilogue> Σ0
@ 18b28
_ExpInputParam(exp : Pointer; ptr : Pointer; len : L)
<LVAR 0x014 4(r)>
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 18b28-18b86 Body>
<POP 18b28-18b3e Prologue> Σ0 ↓
<POP 18b3e-18b5c Naked> Σ0 Δ-8 ↓
<MI 18b3e MOVEA.L (A6+0x14),A0> {}
<MI 18b42 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 18b44 MOVEA.L (A0+0xf4),A1> {[4, 'A0']}
<MI 18b48 CLR.L D0> {[4, 'A0']}
<MI 18b4a MOVE.B (A1+0x1),D0> {[4, 'A0']}
<MI 18b4e MOVE.L D0,D6> {[4, 'A0']}
<MI 18b50 MOVE.L (A1+0x2),(A0+0xf4)> {[4, 'A0']}
<MI 18b56 MOVE.L (A6+0x8),-(A7)> Δ-4 {[4, 'A0']|[4, '(A6+0x8)']}
<MI 18b5a MOVEQ.L #0x00,D7> {[4, 'A0']|[4, '(A6+0x8)']}
<POP 18b5c-18b60 Naked> Σ-8 ↓ →0x18b7c ←0x18b60
<MI 18b5c CMP.L (A7),D7> {[-8-]}
<MI 18b5e BGT 0x18b7c> {[-8-]}
<POP 18b60-18b7c Naked> Σ-8 ↓ →0x18b5c
<MI 18b60 MOVE.L D6,D0> {[-8-]}
<MI 18b62 ADD.L D7,D0> {[-8-]}
<MI 18b64 MOVEA.L (A7+0x4),A0> {[-8-]}
<MI 18b68 MOVEA.L (A6+0x10),A1> {[-8-]}
<MI 18b6c MOVE.L D7,D1> {[-8-]}
<MI 18b6e SUB.L (A6+0xc),D1> {[-8-]}
<MI 18b72 MOVE.B (A1+D1.L),(A0+D0.L-#0xc)> {[-8-]}
<MI 18b78 ADDQ.L #0x1,D7> {[-8-]}
<MI 18b7a BVC 0x18b5c> {[-8-]}
<POP 18b7c-18b7e Naked> Σ-8 Δ+8 ↓ ←0x18b5c
<POP 18b7c-18b7e StackAdj> Δ+8 {}
<POP 18b7e-18b86 Epilogue> Σ0
@ 18b86
_ExpInputFlag(exp : Pointer; val : Word)
<LVAR 0x00a 4(r)>
<LVAR 0x008 1(r)>
<POP 18b86-18bf4 Body>
<POP 18b86-18b9c Prologue> Σ0 ↓
<POP 18b9c-18bba Naked> Σ0 ↓ →0x18bd2
<MI 18b9c MOVEA.L (A6+0xa),A0> {}
<MI 18ba0 MOVEA.L (A0+0xf4),A1> {}
<MI 18ba4 CLR.L D0> {}
<MI 18ba6 MOVE.B (A1),D0> {}
<MI 18ba8 LSL.B #0x2,D0> {}
<MI 18baa LSR.B #0x2,D0> {}
<MI 18bac MOVE.L D0,D7> {}
<MI 18bae MOVE.L (A1+0x2),(A0+0xf4)> {}
<MI 18bb4 TST.B (A6+0x8)> {}
<MI 18bb8 BEQ 0x18bd2> {}
<POP 18bba-18bd2 Naked> Σ0 →0x18bec
<MI 18bba MOVE.L D7,D0> {}
<MI 18bbc ASL.L #0x1,D0> {}
<MI 18bbe LEA.L 0x18468,A1> {}
<MI 18bc2 CLR.L D1> {}
<MI 18bc4 MOVE.B (A0+0x5),D1> {}
<MI 18bc8 OR.W (A1+D0.L),D1> {}
<MI 18bcc MOVE.B D1,(A0+0x5)> {}
<MI 18bd0 BRA 0x18bec> {}
<POP 18bd2-18bec Naked> Σ0 ↓ ←0x18b9c
<MI 18bd2 MOVE.L D7,D0> {}
<MI 18bd4 ASL.L #0x1,D0> {}
<MI 18bd6 LEA.L 0x1846c,A1> {}
<MI 18bda MOVE.W (A1+D0.L),D0> {}
<MI 18bde NOT.W D0> {}
<MI 18be0 CLR.L D1> {}
<MI 18be2 MOVE.B (A0+0x5),D1> {}
<MI 18be6 AND.W D1,D0> {}
<MI 18be8 MOVE.B D0,(A0+0x5)> {}
<POP 18bec-18bf4 Epilogue> Σ0 ←0x18bba
@ 18bf4
_ExpOutputParam(exp : Pointer; b : Pointer; c : L; d : L)
<LVAR 0x014 4(r)>
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 18bf4-18c92 Body>
<POP 18bf4-18c0a Prologue> Σ0 ↓
<POP 18c0a-18c18 Naked> Σ0 ↓ →0x18c4c
<MI 18c0a MOVEA.L (A6+0x14),A0> {}
<MI 18c0e MOVEA.L (A0+0xf4),A1> {}
<MI 18c12 MOVE.B (A1),D0> {}
<MI 18c14 LSR.B #0x7,D0> {}
<MI 18c16 BEQ 0x18c4c> {}
<POP 18c18-18c4c Naked> Σ0 ↓
<Blob 0x18c18 [26] @> Δ-26 {[«26""»]}
<MI 18c2a MOVE.L (A6+0x14),-(A7)> Δ-4 {[«26""»]|[4, '(A6+0x14)']}
<POP 18c2e-18c30 StackAdj> Δ-4 {[«26""»]|[4, '(A6+0x14)']|[-4-]}
<Lit 0x18c30 25> {[«26""»]|[4, '(A6+0x14)']|[$$Parameter direction error]}
<Call 0x18c44 0x18608> {[«26""»]|[4, '(A6+0x14)']|[$$Parameter direction error]}
<POP 18c48-18c4c StackAdj> Δ+34 {}
<POP 18c4c-18c68 Naked> Σ0 Δ-8 ↓ ←0x18c0a
<MI 18c4c CLR.L D0> {}
<MI 18c4e MOVE.B (A1+0x1),D0> {}
<MI 18c52 MOVE.L D0,D6> {}
<MI 18c54 MOVE.L (A1+0x2),(A0+0xf4)> {}
<MI 18c5a MOVEA.L 0x20028,A0> {}
<MI 18c60 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 18c62 MOVE.L (A6+0x8),-(A7)> Δ-4 {[4, 'A0']|[4, '(A6+0x8)']}
<MI 18c66 MOVEQ.L #0x00,D7> {[4, 'A0']|[4, '(A6+0x8)']}
<POP 18c68-18c6c Naked> Σ-8 ↓ →0x18c88 ←0x18c6c
<MI 18c68 CMP.L (A7),D7> {[-8-]}
<MI 18c6a BGT 0x18c88> {[-8-]}
<POP 18c6c-18c88 Naked> Σ-8 ↓ →0x18c68
<MI 18c6c MOVEA.L (A6+0x10),A0> {[-8-]}
<MI 18c70 MOVE.L D7,D0> {[-8-]}
<MI 18c72 SUB.L (A6+0xc),D0> {[-8-]}
<MI 18c76 MOVE.L D6,D1> {[-8-]}
<MI 18c78 ADD.L D7,D1> {[-8-]}
<MI 18c7a MOVEA.L (A7+0x4),A1> {[-8-]}
<MI 18c7e MOVE.B (A1+D1.L-#0xc),(A0+D0.L)> {[-8-]}
<MI 18c84 ADDQ.L #0x1,D7> {[-8-]}
<MI 18c86 BVC 0x18c68> {[-8-]}
<POP 18c88-18c8a Naked> Σ-8 Δ+8 ↓ ←0x18c68
<POP 18c88-18c8a StackAdj> Δ+8 {}
<POP 18c8a-18c92 Epilogue> Σ0
@ 18c92
_ExpOutputFlag(exp : Pointer; VAR status : Bool)
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 18c92-18d24 Body>
<POP 18c92-18ca8 Prologue> Σ0 ↓
<POP 18ca8-18cb6 Naked> Σ0 ↓ →0x18cea
<MI 18ca8 MOVEA.L (A6+0xc),A0> {}
<MI 18cac MOVEA.L (A0+0xf4),A1> {}
<MI 18cb0 MOVE.B (A1),D0> {}
<MI 18cb2 LSR.B #0x7,D0> {}
<MI 18cb4 BEQ 0x18cea> {}
<POP 18cb6-18cea Naked> Σ0 ↓
<Blob 0x18cb6 [26] @> Δ-26 {[«26""»]}
<MI 18cc8 MOVE.L (A6+0xc),-(A7)> Δ-4 {[«26""»]|[4, '(A6+0xc)']}
<POP 18ccc-18cce StackAdj> Δ-4 {[«26""»]|[4, '(A6+0xc)']|[-4-]}
<Lit 0x18cce 25> {[«26""»]|[4, '(A6+0xc)']|[$$Parameter direction error]}
<Call 0x18ce2 0x18608> {[«26""»]|[4, '(A6+0xc)']|[$$Parameter direction error]}
<POP 18ce6-18cea StackAdj> Δ+34 {}
<POP 18cea-18d1a Naked> Σ0 ↓ →0x18d1c ←0x18ca8
<MI 18cea CLR.L D0> {}
<MI 18cec MOVE.B (A1),D0> {}
<MI 18cee LSL.B #0x2,D0> {}
<MI 18cf0 LSR.B #0x2,D0> {}
<MI 18cf2 MOVE.L D0,D7> {}
<MI 18cf4 MOVE.L (A1+0x2),(A0+0xf4)> {}
<MI 18cfa MOVEA.L (A6+0x8),A0> {}
<MI 18cfe CLR.B (A0)> {}
<MI 18d00 MOVEA.L 0x20028,A1> {}
<MI 18d06 MOVE.L D7,D0> {}
<MI 18d08 ASL.L #0x1,D0> {}
<MI 18d0a LEA.L 0x18470,A2> {}
<MI 18d0e CLR.L D1> {}
<MI 18d10 MOVE.B (A1+0x2),D1> {}
<MI 18d14 AND.W (A2+D0.L),D1> {}
<MI 18d18 BEQ 0x18d1c> {}
<POP 18d1a-18d1c Naked> Σ0 ↓
<MI 18d1a ADDQ.B #0x1,(A0)> {}
<POP 18d1c-18d24 Epilogue> Σ0 ←0x18cea
@ 18d24
_ExpXmit(adr : Byte; b : Pointer)
<LVAR 0x00c 1(r)>
<LVAR 0x008 4(r)>
<LVAR -0x002 @>
<POP 18d24-18d62 Body>
<POP 18d24-18d3a Prologue> Σ0 ↓
<POP 18d3a-18d5a Naked> Σ0 ↓
<MI 18d3a MOVEA.L (A6+0x8),A0> {}
<MI 18d3e MOVE.B (A6+0xc),(A0+0x1)> {}
<MI 18d44 MOVE.L (A6+0x8),-(A7)> Δ-4 {[4, '(A6+0x8)']}
<Const 0x18d48 0x5.2> Δ-2 {[4, '(A6+0x8)']|[#5]}
<Pointer.fp 0x18d4c <LVAR -0x002 @>> Δ-4 {[4, '(A6+0x8)']|[#5]|[@@-2]}
<Call 0x18d50 0x1022a> {[4, '(A6+0x8)']|[#5]|[@@-2]}
KC15_DiagBus(a : Word; b : Long) : Byte
<POP 18d56-18d5a StackAdj> Δ+10 {}
<POP 18d5a-18d62 Epilogue> Σ0
@ 18d62
_DiProcPing(adr : Byte; VAR status : Byte; VAR b80 : Bool; VAR b40 : Bool)
<LVAR 0x014 1(r)>
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x004 @ 2(r)>
<LVAR -0x005 1(w)>
<LVAR -0x006 @>
<POP 18d62-18df8 Body>
<POP 18d62-18d78 Prologue> Σ0 ↓
<POP 18d78-18d7c RegCacheLoad> Σ0 ↓
<POP 18d7c-18d8c Naked> Σ0 ↓ →0x18da2
<MI 18d7c MOVE.B (A6+0x14),D0> {}
<MI 18d80 EXTB.W D0> {}
<MI 18d82 LEA.L 0x18458,A0> {}
<MI 18d86 TST.B (A0+D0.W)> {}
<MI 18d8a BNE 0x18da2> {}
<POP 18d8c-18da2 Naked> Σ0 →0x18df0
<MI 18d8c MOVEA.L (A6+0x10),A0> {}
<MI 18d90 CLR.B (A0)> {}
<MI 18d92 MOVEA.L (A6+0x8),A0> {}
<MI 18d96 MOVE.B #0x01,(A0)> {}
<MI 18d9a MOVEA.L (A6+0xc),A0> {}
<MI 18d9e CLR.B (A0)> {}
<MI 18da0 BRA 0x18df0> {}
<POP 18da2-18dde Naked> Σ0 ↓ →0x18de0 ←0x18d7c
<MI 18da2 MOVE.B D0,(A6-0x5)> {}
<MI 18da6 LEA.L (A6-0x6),A0> {}
<MI 18daa MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 18dac CLR.W -(A7)> Δ-2 {[4, 'A0']|[#0]}
<Pointer.fp 0x18dae <LVAR -0x004 @ 2(r)>> Δ-4 {[4, 'A0']|[#0]|[@@-4]}
<Call 0x18db0 0x1022a> {[4, 'A0']|[#0]|[@@-4]}
KC15_DiagBus(a : Word; b : Long) : Byte
<POP 18db6-18dba StackAdj> Δ+10 {}
<MI 18dba MOVEA.L (A6+0x10),A0> {}
<MI 18dbe MOVE.W (A6-0x4),D0> {}
<MI 18dc0 ANDI.W #0x000f,D0> {}
<MI 18dc4 MOVE.B D0,-(A7)> Δ-2 {[2, 'D0']}
<MI 18dc6 CLR.L D0> {[2, 'D0']}
<MI 18dc8 MOVE.B (A7)+,D0> Δ+2 {}
<POP 0x18dca LimitCheck 0x0 ≤ D0 ≤ 0x9> {}
<MI 18dce MOVE.B D0,(A0)> {}
<MI 18dd0 MOVEA.L (A6+0x8),A0> {}
<MI 18dd4 CLR.B (A0)> {}
<MI 18dd6 MOVE.W (A6-0x4),D0> {}
<MI 18dd8 ANDI.W #0x0040,D0> {}
<MI 18ddc BNE 0x18de0> {}
<POP 18dde-18de0 Naked> Σ0 ↓
<MI 18dde ADDQ.B #0x1,(A0)> {}
<POP 18de0-18dee Naked> Σ0 ↓ →0x18df0 ←0x18da2
<MI 18de0 MOVEA.L (A6+0xc),A0> {}
<MI 18de4 CLR.B (A0)> {}
<MI 18de6 MOVE.W (A6-0x4),D0> {}
<MI 18de8 ANDI.W #0x0080,D0> {}
<MI 18dec BEQ 0x18df0> {}
<POP 18dee-18df0 Naked> Σ0 ↓
<MI 18dee ADDQ.B #0x1,(A0)> {}
<POP 18df0-18df8 Epilogue> Σ0 ←0x18d8c ←0x18de0
@ 18df8
_DiProcCmd(board : Byte; cmd : Byte)
<LVAR 0x00a 1(r)>
<LVAR 0x008 1(r)>
<LVAR -0x002 @>
<LVAR -0x003 1(w)>
<LVAR -0x004 @>
<POP 18df8-18e42 Body>
<POP 18df8-18e0e Prologue> Σ0 ↓
<POP 18e0e-18e3a Naked> Σ0 ↓
<MI 18e0e MOVE.B (A6+0xa),(A6-0x3)> {}
<MI 18e14 LEA.L (A6-0x4),A0> {}
<MI 18e18 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 18e1a MOVE.B (A6+0x8),D0> {[4, 'A0']}
<MI 18e1e EXTB.W D0> {[4, 'A0']}
<MI 18e20 LEA.L 0x18474,A0> {[4, 'A0']}
<MI 18e24 MOVE.B (A0+D0.W),D1> {[4, 'A0']}
<MI 18e28 EXTB.W D1> {[4, 'A0']}
<MI 18e2a MOVE.W D1,-(A7)> Δ-2 {[4, 'A0']|[2, 'D1']}
<Pointer.fp 0x18e2c <LVAR -0x002 @>> Δ-4 {[4, 'A0']|[2, 'D1']|[@@-2]}
<Call 0x18e30 0x1022a> {[4, 'A0']|[2, 'D1']|[@@-2]}
KC15_DiagBus(a : Word; b : Long) : Byte
<POP 18e36-18e3a StackAdj> Δ+10 {}
<POP 18e3a-18e42 Epilogue> Σ0
@ 18e42
_ExpUpload(adr: Byte; ptr: Pointer; VAR status : Byte)
<LVAR 0x010 1(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x002 @ 2(r)>
<POP 18e42-18eec Body>
<POP 18e42-18e58 Prologue> Σ0 ↓
<POP 18e58-18e68 Naked> Σ0 ↓ →0x18e70
<MI 18e58 MOVE.B (A6+0x10),D0> {}
<MI 18e5c EXTB.W D0> {}
<MI 18e5e LEA.L 0x18458,A0> {}
<MI 18e62 TST.B (A0+D0.W)> {}
<MI 18e66 BNE 0x18e70> {}
<POP 18e68-18e70 Naked> Σ0 →0x18ee4
<MI 18e68 MOVEA.L (A6+0x8),A0> {}
<MI 18e6c CLR.B (A0)> {}
<MI 18e6e BRA 0x18ee4> {}
<POP 18e70-18e7c Naked> Σ0 ↓ →0x18ee4 ←0x18e58
<MI 18e70 MOVEA.L (A6+0xc),A0> {}
<MI 18e74 MOVE.B (A0+0x11c),D1> {}
<MI 18e78 LSR.B #0x7,D1> {}
<MI 18e7a BEQ 0x18ee4> {}
<POP 18e7c-18e96 Naked> Σ0 ↓ →0x18e9c
<MI 18e7c MOVEA.L 0x20028,A1> {}
<MI 18e82 MOVE.B D0,(A1+0x1)> {}
<MI 18e86 MOVE.B (A0+0x11a),(A1+0x3)> {}
<MI 18e8c MOVE.B (A0+0x11a),D0> {}
<MI 18e90 CMP.B (A0+0x11b),D0> {}
<MI 18e94 BLS 0x18e9c> {}
<POP 18e96-18e9c Naked> Σ0 →0x18eb4
<MI 18e96 CLR.B (A1+0x2)> {}
<MI 18e9a BRA 0x18eb4> {}
<POP 18e9c-18eb4 Naked> Σ0 ↓ ←0x18e7c
<MI 18e9c CLR.L D1> {}
<MI 18e9e MOVE.B (A0+0x11b),D1> {}
<MI 18ea2 CLR.L D2> {}
<MI 18ea4 MOVE.B D0,D2> {}
<MI 18ea6 NEG.W D2> {}
<MI 18ea8 ADD.W D1,D2> {}
<MI 18eaa ADDQ.W #0x1,D2> {}
<POP 0x18eac LimitCheck 0x0 ≤ D2 ≤ 0xff> {}
<MI 18eb0 MOVE.B D2,(A1+0x2)> {}
<POP 18eb4-18ee4 Naked> Σ0 ↓ ←0x18e96
<Blob 0x18eb4 [4] 0x20028> Δ-4 {[«4»]}
<Const 0x18eba 0x1.2> Δ-2 {[«4»]|[#1]}
<Pointer.fp 0x18ebe <LVAR -0x002 @ 2(r)>> Δ-4 {[«4»]|[#1]|[@@-2]}
<Call 0x18ec2 0x1022a> {[«4»]|[#1]|[@@-2]}
KC15_DiagBus(a : Word; b : Long) : Byte
<POP 18ec8-18ecc StackAdj> Δ+10 {}
<MI 18ecc MOVEA.L (A6+0x8),A0> {}
<MI 18ed0 MOVE.W (A6-0x2),D0> {}
<MI 18ed4 ANDI.W #0x000f,D0> {}
<MI 18ed8 MOVE.B D0,-(A7)> Δ-2 {[2, 'D0']}
<MI 18eda CLR.L D0> {[2, 'D0']}
<MI 18edc MOVE.B (A7)+,D0> Δ+2 {}
<POP 0x18ede LimitCheck 0x0 ≤ D0 ≤ 0x9> {}
<MI 18ee2 MOVE.B D0,(A0)> {}
<POP 18ee4-18eec Epilogue> Σ0 ←0x18e68 ←0x18e70
@ 18eec
_ExpClose(exp : Pointer)
<LVAR 0x008 4(r)>
<LVAR -0x008 @ 4(rw)>
<POP 18eec-18ff2 Body> Δ-4
<POP 18eec-18f02 Prologue> Σ0 ↓
<POP 18f02-18f08 RegCacheLoad> Σ0 ↓
<POP 18f08-18f14 Naked> Σ0 Δ-4 ↓
<MI 18f08 CLR.L D0> {}
<MI 18f0a MOVE.W 0x20026,D0> {}
<MI 18f10 MOVE.L D0,-(A7)> Δ-4 {[4, 'D0']}
<MI 18f12 MOVEQ.L #0x00,D7> {[4, 'D0']}
<POP 18f14-18f18 Naked> Σ-4 ↓ →0x18f4c ←0x18f48
<MI 18f14 CMP.L (A7),D7> {[-4-]}
<MI 18f16 BGT 0x18f4c> {[-4-]}
<POP 18f18-18f3c Naked> Σ-4 ↓ →0x18f48
<MI 18f18 MOVE.L D7,D4> {[-4-]}
<MI 18f1a MOVEQ.L #0x06,D3> {[-4-]}
<Call 0x18f1c 0x107ea> {[-4-]}
_?muls_d3_d4
<MI 18f22 LEA.L 0x0,A0> {[-4-]}
<MI 18f26 LEA.L (A0+D4.L),A0> {[-4-]}
<MI 18f2a MOVEA.L A0,A1> {[-4-]}
<MI 18f2c ADDA.L #0x2002e,A1> {[-4-]}
<MI 18f32 MOVEA.L (A6+0x8),A2> {[-4-]}
<MI 18f36 MOVEA.L (A1),A1> {[-4-]}
<MI 18f38 CMPA.L (A2),A1> {[-4-]}
<MI 18f3a BNE 0x18f48> {[-4-]}
<POP 18f3c-18f48 Naked> Σ-4 Δ+4 →0x18f7c
<MI 18f3c ADDA.L #0x2002c,A0> {[-4-]}
<MI 18f42 CLR.B (A0)> {[-4-]}
<POP 18f44-18f46 StackAdj> Δ+4 {}
<MI 18f46 BRA 0x18f7c> {}
<POP 18f48-18f4c Naked> Σ-4 ↓ →0x18f14 ←0x18f18
<MI 18f48 ADDQ.L #0x1,D7> {[-4-]}
<MI 18f4a BVC 0x18f14> {[-4-]}
<POP 18f4c-18f7c Naked> Σ-4 Δ+4 ↓ ←0x18f14
<POP 18f4c-18f4e StackAdj> Δ+4 {}
<Blob 0x18f4e [38] @> Δ-38 {[«38""»]}
<Const 0x18f5a 0x2.2> Δ-2 {[«38""»]|[#2]}
<POP 18f5e-18f60 StackAdj> Δ-4 {[«38""»]|[#2]|[-4-]}
<Lit 0x18f60 38> {[«38""»]|[#2]|[$$Experiment CLOSE with invalid pointer.]}
<Call 0x18f72 0x14e18> {[«38""»]|[#2]|[$$Experiment CLOSE with invalid pointer.]}
_PopProgram(status : Byte; msg : String)
<POP 18f78-18f7c StackAdj> Δ+44 {}
<POP 18f7c-18f8a Naked> Σ0 ↓ →0x18fea ←0x18f3c
<MI 18f7c MOVEA.L (A6+0x8),A0> {}
<MI 18f80 MOVE.L #0x01,(A0)> {}
<MI 18f82 TST.B 0x20024> {}
<MI 18f88 BEQ 0x18fea> {}
<POP 18f8a-18fea Naked> Σ0 ↓
<Blob 0x18f8a [6] @> Δ-6 {[«6""»]}
<POP 18f9a-18f9c StackAdj> Δ-4 {[«6""»]|[-4-]}
<Lit 0x18f9c 5> {[«6""»]|[$$ [2K]}
<MI 18fae MOVE.L (A7)+,(A6-0x8)> Δ+4 {[«6""»]}
<POP 18fb0-18fb2 StackAdj> Δ+6 {}
<MI 18fb2 MOVEA.L (A6-0x8),A0> {}
<MI 18fb4 MOVE.B #0x0d,(A0+0x2)> {}
<MI 18fba MOVE.B #0x1b,(A0+0x3)> {}
<POP 18fc0-18fc2 StackAdj> Δ-6 {[-6-]}
<Call 0x18fc2 0x15b2a> {[-6-]}
_GetConsoleConfig() : Long
<MI 18fc8 MOVE.L (A7)+,D0> Δ+4 {[-2-]}
<POP 0x18fca LimitCheck 0x0 ≤ D0 ≤ 0xffff> {[-2-]}
<MI 18fd4 MOVE.W D0,(A7)> {[2, 'D0']}
<MI 18fd6 MOVE.L (A6-0x8),-(A7)> Δ-4 {[2, 'D0']|[4, '(A6-0x8)']}
<Call 0x18fd8 0x1020a> {[2, 'D0']|[4, '(A6-0x8)']}
KC05_PortWriteString(port : Word ; str : String)
<POP 18fde-18fe0 StackAdj> Δ+6 {}
<Pointer.fp 0x18fe0 <LVAR -0x008 @ 4(rw)>> Δ-4 {[@@-8]}
<Call 0x18fe2 0x10d36> {[@@-8]}
_FreeString(VAR a : String)
<POP 18fe8-18fea StackAdj> Δ+4 {}
<POP 18fea-18ff2 Epilogue> Σ0 ←0x18f7c
@ 18ff2
_BoardName(address : B) : String
<LVAR 0x00a 4(w)>
<LVAR 0x008 1(r)>
<POP 18ff2-190a4 Body>
<POP 18ff2-19008 Prologue> Σ0 ↓
<POP 19008-19016 RegCacheLoad> Σ0 ↓
<POP 19016-19020 Naked> Σ0 ↓ →0x19048
<MI 19016 MOVE.B (A6+0x8),D0> {}
<MI 1901a CMPI.B #0x04,D0> {}
<MI 1901e BNE 0x19048> {}
<POP 19020-19048 Naked> Σ0 →0x1909c
<POP 19020-19022 StackAdj> Δ-4 {[-4-]}
<POP 19022-19023 StackAdj> Δ+2 {[-2-]}
<Blob 0x19023 [2] @> Δ-2 {[-2-]|[«2""»]}
<MI 19026 MOVE.B 0x18323,(A7+0x1)> {[-2-]|[«2""»]}
<MI 1902c MOVE.B 0x18324,(A7+0x2)> {[-2-]|[«2""»]}
<POP 19032-19034 StackAdj> Δ-4 {[-2-]|[«2""»]|[-4-]}
<Lit 0x19034> {[-2-]|[«2""»]|[$$…]}
<Pointer.sp 0x19034 4> Δ-4
<Const 0x19038 0x1.2> Δ-2
<Const 0x1903a 0x3.2> Δ-2
<Call 0x1903e 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 19040-19042 StackAdj> Δ+8
<MI 19042 MOVE.L (A7)+,(A6+0xa)> Δ+4 {[-2-]|[«2""»]}
<POP 19044-19046 StackAdj> Δ+4 {}
<MI 19046 BRA 0x1909c> {}
<POP 19048-1904c Naked> Σ0 ↓ →0x19072 ←0x19016
<MI 19048 CMP.B #0x0a,D0> {}
<MI 1904a BNE 0x19072> {}
<POP 1904c-19072 Naked> Σ0 →0x1909c
<Blob 0x1904c [8] @> Δ-8 {[«8""»]}
<POP 1905c-1905e StackAdj> Δ-4 {[«8""»]|[-4-]}
<Lit 0x1905e 7> {[«8""»]|[$$T V I Q]}
<MI 1906c MOVE.L (A7)+,(A6+0xa)> Δ+4 {[«8""»]}
<POP 1906e-19070 StackAdj> Δ+8 {}
<MI 19070 BRA 0x1909c> {}
<POP 19072-1909c Naked> Σ0 ↓ ←0x19048
<MI 19072 EXTB.W D0> {}
<MI 19074 MULS.W #0x0a,D0> {}
<MI 19076 LEA.L 0x18479,A0> {}
<Blob 0x1907a [10] (A0+D0.W)> Δ-10 {[«10»]}
<POP 1908a-1908c StackAdj> Δ-4 {[«10»]|[-4-]}
<Lit 0x1908c> {[«10»]|[$$…]}
<Pointer.sp 0x1908c 4> Δ-4
<Const 0x19090 0x1.2> Δ-2
<Const 0x19092 0xa.2> Δ-2
<Call 0x19094 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 19096-19098 StackAdj> Δ+8
<MI 19098 MOVE.L (A7)+,(A6+0xa)> Δ+4 {[«10»]}
<POP 1909a-1909c StackAdj> Δ+10 {}
<POP 1909c-190a4 Epilogue> Σ0 ←0x19020 ←0x1904c
@ 190a4
_ExpStatus2Text(status.B, &String)
<LVAR 0x00a 4(w)>
<LVAR 0x008 1(r)>
<POP 190a4-190fa Body>
<POP 190a4-190ba Prologue> Σ0 ↓
<POP 190ba-190bc RegCacheLoad> Σ0 ↓
<POP 190bc-190f2 Naked> Σ0 ↓
<MI 190bc MOVE.B (A6+0x8),D0> {}
<MI 190c0 EXTB.W D0> {}
<MI 190c2 MULS.W #0x0a,D0> {}
<MI 190c4 LEA.L 0x18519,A0> {}
<Blob 0x190c8 [10] (A0+D0.W)> Δ-10 {[«10»]}
<POP 190d8-190da StackAdj> Δ-4 {[«10»]|[-4-]}
<Lit 0x190da> {[«10»]|[$$…]}
<Pointer.sp 0x190da 4> Δ-4
<Const 0x190de 0x1.2> Δ-2
<Const 0x190e2 0xa.2> Δ-2
<Call 0x190e4 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 190ea-190ec StackAdj> Δ+8
<MI 190ec MOVE.L (A7)+,(A6+0xa)> Δ+4 {[«10»]}
<POP 190f0-190f2 StackAdj> Δ+10 {}
<POP 190f2-190fa Epilogue> Σ0
@ 190fa
_?FS104a8(VAR : Pointer; b : L; c : L ; VAR : Pointer; e: L; f : L) : Bool
<LVAR 0x020 1(rw)>
<LVAR 0x01c 4(r)>
<LVAR 0x018 4(r)>
<LVAR 0x014 4(r)>
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 190fa-1916a Body> Δ-4
<POP 190fa-19110 Prologue> Σ0 ↓
<POP 19110-1911a Naked> Σ0 ↓ →0x19162
<MI 19110 CLR.B (A6+0x20)> {}
<MI 19114 TST.L (A6+0x18)> {}
<MI 19118 BNE 0x19162> {}
<POP 1911a-19120 Naked> Σ0 ↓ →0x19162
<MI 1911a TST.L (A6+0xc)> {}
<MI 1911e BNE 0x19162> {}
<POP 19120-1912a Naked> Σ0 ↓ →0x19162
<MI 19120 MOVE.L (A6+0x14),D0> {}
<MI 19124 CMP.L (A6+0x8),D0> {}
<MI 19128 BNE 0x19162> {}
<POP 1912a-19130 Naked> Σ0 Δ-4 ↓
<MI 1912a MOVE.L (A6+0x14),-(A7)> Δ-4 {[4, '(A6+0x14)']}
<MI 1912e MOVEQ.L #0x00,D7> {[4, '(A6+0x14)']}
<POP 19130-19134 Naked> Σ-4 ↓ →0x1915a ←0x19156
<MI 19130 CMP.L (A7),D7> {[-4-]}
<MI 19132 BGT 0x1915a> {[-4-]}
<POP 19134-19152 Naked> Σ-4 ↓ →0x19156
<MI 19134 MOVEA.L (A6+0x1c),A0> {[-4-]}
<MI 19138 MOVE.L D7,D0> {[-4-]}
<MI 1913a SUB.L (A6+0x18),D0> {[-4-]}
<MI 1913e MOVEA.L (A6+0x10),A1> {[-4-]}
<MI 19142 MOVE.L D7,D1> {[-4-]}
<MI 19144 SUB.L (A6+0xc),D1> {[-4-]}
<MI 19148 MOVE.B (A0+D0.L),D0> {[-4-]}
<MI 1914c CMP.B (A1+D1.L),D0> {[-4-]}
<MI 19150 BEQ 0x19156> {[-4-]}
<POP 19152-19156 Naked> Σ-4 Δ+4 →0x19162
<POP 19152-19154 StackAdj> Δ+4 {}
<MI 19154 BRA 0x19162> {}
<POP 19156-1915a Naked> Σ-4 ↓ →0x19130 ←0x19134
<MI 19156 ADDQ.L #0x1,D7> {[-4-]}
<MI 19158 BVC 0x19130> {[-4-]}
<POP 1915a-19162 Naked> Σ-4 Δ+4 ↓ ←0x19130
<POP 1915a-1915c StackAdj> Δ+4 {}
<MI 1915c MOVE.B #0x01,(A6+0x20)> {}
<POP 19162-1916a Epilogue> Σ0 ←0x19110 ←0x1911a ←0x19120 ←0x19152
@ 1916a
_FSCALL_104ae
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 1916a-191d6 Body>
<POP 1916a-19180 Prologue> Σ0 ↓
<POP 19180-19182 Naked> Σ0 ↓
<MI 19180 MOVEQ.L #0x00,D7> {}
<POP 19182-191a6 Naked> Σ0 ↓ →0x19182 ←0x19182
<MI 19182 MOVE.L D7,D0> {}
<MI 19184 ASL.L #0x1,D0> {}
<MI 19186 MOVE.W (A6+D0.L+#0x14),D1> {}
<MI 1918a LSR.W #0x8,D1> {}
<MI 1918c MOVE.B D1,(A6+D0.L-#0xc)> {}
<MI 19190 MOVE.W (A6+D0.L+#0x14),D1> {}
<MI 19194 ANDI.W #0x00ff,D1> {}
<MI 19198 MOVE.B D1,(A6+D0.L-#0xb)> {}
<MI 1919c ADDQ.L #0x1,D7> {}
<MI 1919e CMPI.L #0x00000003,D7> {}
<MI 191a4 BLE 0x19182> {}
<POP 191a6-191ac Naked> Σ0 Δ-4 ↓
<MI 191a6 MOVE.L (A6+0x8),-(A7)> Δ-4 {[4, '(A6+0x8)']}
<MI 191aa MOVEQ.L #0x00,D7> {[4, '(A6+0x8)']}
<POP 191ac-191b0 Naked> Σ-4 ↓ →0x191cc ←0x191b0
<MI 191ac CMP.L (A7),D7> {[-4-]}
<MI 191ae BGT 0x191cc> {[-4-]}
<POP 191b0-191cc Naked> Σ-4 ↓ →0x191ac
<MI 191b0 MOVEA.L (A6+0x10),A0> {[-4-]}
<MI 191b4 MOVE.L D7,D0> {[-4-]}
<MI 191b6 SUB.L (A6+0xc),D0> {[-4-]}
<MI 191ba MOVEQ.L #0x07,D1> {[-4-]}
<MI 191bc SUB.L (A6+0x8),D1> {[-4-]}
<MI 191c0 ADD.L D7,D1> {[-4-]}
<MI 191c2 MOVE.B (A6+D1.L-#0xc),(A0+D0.L)> {[-4-]}
<MI 191c8 ADDQ.L #0x1,D7> {[-4-]}
<MI 191ca BVC 0x191ac> {[-4-]}
<POP 191cc-191ce Naked> Σ-4 Δ+4 ↓ ←0x191ac
<POP 191cc-191ce StackAdj> Δ+4 {}
<POP 191ce-191d6 Epilogue> Σ0
@ 191d6
_?FS104b4(VAR a: Long; b: L; MOD c: L; VAR d : Q)
<LVAR 0x014 4(r)>
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x005 1(r)>
<LVAR -0x006 1(r)>
<LVAR -0x007 1(r)>
<LVAR -0x008 1(r)>
<LVAR -0x009 1(r)>
<LVAR -0x00a 1(r)>
<LVAR -0x00b 1(r)>
<LVAR -0x00c 1(r)>
<POP 191d6-1927e Body>
<POP 191d6-191ec Prologue> Σ0 ↓
<POP 191ec-191ee Naked> Σ0 ↓
<MI 191ec MOVEQ.L #0x00,D7> {}
<POP 191ee-191fc Naked> Σ0 ↓ →0x191ee ←0x191ee
<MI 191ee CLR.B (A6+D7.L-#0xc)> {}
<MI 191f2 ADDQ.L #0x1,D7> {}
<MI 191f4 CMPI.L #0x00000007,D7> {}
<MI 191fa BLE 0x191ee> {}
<POP 191fc-19202 Naked> Σ0 Δ-4 ↓
<MI 191fc MOVE.L (A6+0xc),-(A7)> Δ-4 {[4, '(A6+0xc)']}
<MI 19200 MOVEQ.L #0x00,D7> {[4, '(A6+0xc)']}
<POP 19202-19206 Naked> Σ-4 ↓ →0x19222 ←0x19206
<MI 19202 CMP.L (A7),D7> {[-4-]}
<MI 19204 BGT 0x19222> {[-4-]}
<POP 19206-19222 Naked> Σ-4 ↓ →0x19202
<MI 19206 MOVEQ.L #0x07,D0> {[-4-]}
<MI 19208 SUB.L (A6+0xc),D0> {[-4-]}
<MI 1920c ADD.L D7,D0> {[-4-]}
<MI 1920e MOVEA.L (A6+0x14),A0> {[-4-]}
<MI 19212 MOVE.L D7,D1> {[-4-]}
<MI 19214 SUB.L (A6+0x10),D1> {[-4-]}
<MI 19218 MOVE.B (A0+D1.L),(A6+D0.L-#0xc)> {[-4-]}
<MI 1921e ADDQ.L #0x1,D7> {[-4-]}
<MI 19220 BVC 0x19202> {[-4-]}
<POP 19222-19276 Naked> Σ-4 Δ+4 ↓ ←0x19202
<POP 19222-19224 StackAdj> Δ+4 {}
<MI 19224 MOVEA.L (A6+0x8),A0> {}
<MI 19228 CLR.L D0> {}
<MI 1922a MOVE.B (A6-0xc),D0> {}
<MI 1922e ASL.W #0x8,D0> {}
<MI 19230 CLR.L D1> {}
<MI 19232 MOVE.B (A6-0xb),D1> {}
<MI 19236 ADD.W D0,D1> {}
<MI 19238 MOVE.W D1,(A0)> {}
<MI 1923a CLR.L D0> {}
<MI 1923c MOVE.B (A6-0xa),D0> {}
<MI 19240 ASL.W #0x8,D0> {}
<MI 19242 CLR.L D1> {}
<MI 19244 MOVE.B (A6-0x9),D1> {}
<MI 19248 ADD.W D0,D1> {}
<MI 1924a MOVE.W D1,(A0+0x2)> {}
<MI 1924e CLR.L D0> {}
<MI 19250 MOVE.B (A6-0x8),D0> {}
<MI 19254 ASL.W #0x8,D0> {}
<MI 19256 CLR.L D1> {}
<MI 19258 MOVE.B (A6-0x7),D1> {}
<MI 1925c ADD.W D0,D1> {}
<MI 1925e MOVE.W D1,(A0+0x4)> {}
<MI 19262 CLR.L D0> {}
<MI 19264 MOVE.B (A6-0x6),D0> {}
<MI 19268 ASL.W #0x8,D0> {}
<MI 1926a CLR.L D1> {}
<MI 1926c MOVE.B (A6-0x5),D1> {}
<MI 19270 ADD.W D0,D1> {}
<MI 19272 MOVE.W D1,(A0+0x6)> {}
<POP 19276-1927e Epilogue> Σ0
@ 1927e
_ExpRun(a: Bool; adr: Byte; b: Pointer)
<LVAR 0x00e 1(r)>
<LVAR 0x00c 1(r)>
<LVAR 0x008 4(r)>
<LVAR -0x002 @ 1(r)>
<LVAR -0x003 @ 1(r)>
<LVAR -0x004 @>
<POP 1927e-194f6 Body> Δ+24
<POP 1927e-19294 Prologue> Σ0 ↓
<POP 19294-192ac RegCacheLoad> Σ0 ↓
<POP 192ac-192bc Naked> Σ0 ↓ →0x192c4
<MI 192ac MOVE.B (A6+0xc),-(A7)> Δ-2 {[2, '(A6+0xc)']}
<MI 192ae MOVE.L (A6+0x8),-(A7)> Δ-4 {[2, '(A6+0xc)']|[4, '(A6+0x8)']}
<Call 0x192b0 0x18d24> {[2, '(A6+0xc)']|[4, '(A6+0x8)']}
_ExpXmit(adr : Byte; b : Pointer)
<POP 192b4-192b6 StackAdj> Δ+6 {}
<MI 192b6 TST.B (A6+0xe)> {}
<MI 192ba BNE 0x192c4> {}
<POP 192bc-192c4 Naked> Σ0 →0x192ca
<MI 192bc MOVE.L #0x11170,D7> {}
<MI 192c2 BRA 0x192ca> {}
<POP 192c4-192ca Naked> Σ0 ↓ ←0x192ac
<MI 192c4 MOVE.L #0x493e0,D7> {}
<POP 192ca-192e6 Naked> Σ0 ↓ →0x193b4 ←0x192bc
<MI 192ca MOVE.B (A6+0xc),-(A7)> Δ-2 {[2, '(A6+0xc)']}
<Pointer.fp 0x192cc <LVAR -0x002 @ 1(r)>> Δ-4 {[2, '(A6+0xc)']|[@@-2]}
<Pointer.fp 0x192d0 <LVAR -0x004 @>> Δ-4 {[2, '(A6+0xc)']|[@@-2]|[@@-4]}
<Pointer.fp 0x192d4 <LVAR -0x003 @ 1(r)>> Δ-4 {[2, '(A6+0xc)']|[@@-2]|[@@-4]|[@@-3]}
<Call 0x192d8 0x18d62> {[2, '(A6+0xc)']|[@@-2]|[@@-4]|[@@-3]}
_DiProcPing(adr : Byte; VAR status : Byte; VAR b80 : Bool; VAR b40 : Bool)
<POP 192dc-192de StackAdj> Δ+14 {}
<MI 192de TST.B (A6-0x3)> {}
<MI 192e2 BNE 0x193b4> {}
<POP 192e6-19394 Naked> Σ0 Δ-24 ↓
<Call 0x192e6 0x1540a> {}
_WriteConsoleCrLf(void)
<Blob 0x192ec [44] @> Δ-44 {[«44""»]}
<POP 192fe-19300 StackAdj> Δ-4 {[«44""»]|[-4-]}
<Lit 0x19300 43> {[«44""»]|[$$Experiment error: got a NAK from a Download]}
<Call 0x1930e 0x154b0> {[«44""»]|[$$Experiment error: got a NAK from a Download]}
_WriteConsoleStringCrLf(str : String)
<POP 19314-19318 StackAdj> Δ+44 {[-4-]}
<POP 19318-19319 StackAdj> Δ+4 {}
<Blob 0x19319 [4] @> Δ-4 {[«4""»]}
<Blob 0x1931c [4] @> Δ-4 {[«4""»]|[«4""»]}
<Blob 0x19320 [4] @> Δ-4 {[«4""»]|[«4""»]|[«4""»]}
<Blob 0x19324 [4] @> Δ-4 {[«4""»]|[«4""»]|[«4""»]|[«4""»]}
<MI 19328 MOVEA.L (A6+0x8),A0> {[«4""»]|[«4""»]|[«4""»]|[«4""»]}
<Blob 0x1932a [30] (A0+0xfc)> Δ-30 {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«30»]}
<Blob 0x1933a [10] @> Δ-10 {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«30»]|[«10""»]}
<POP 19346-19348 StackAdj> Δ-8 {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«30»]|[«10""»]|[-8-]}
<Lit 0x19348 16> {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«30»]|[«10""»]|[-4-]|[$$ of experiment_]}
<POP 19352-19354 StackAdj> Δ-4 {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«30»]|[«10""»]|[-4-]|[$$ of experiment_]|[-4-]}
<Lit 0x19354> {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«30»]|[«10""»]|[-4-]|[$$ of experiment_]|[$$…]}
<Pointer.sp 0x19354 22> Δ-4
<Const 0x19358 0x1.2> Δ-2
<Const 0x1935a 0x1e.2> Δ-2
<Call 0x1935c 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 1935e-19360 StackAdj> Δ+8
<POP 1935e-19360 StackAdj> Δ-4 {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«30»]|[«10""»]|[-4-]|[$$ of experiment_]|[$$…]|[-4-]}
<Lit 0x19360 10> {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«30»]|[«10""»]|[-4-]|[$$ of experiment_]|[$$…]|[$$ to board_]}
<POP 1936a-1936c StackAdj> Δ-6 {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«30»]|[«10""»]|[-4-]|[$$ of experiment_]|[$$…]|[$$ to board_]|[-6-]}
<MI 1936c MOVE.B (A6+0xc),(A7)> {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«30»]|[«10""»]|[-4-]|[$$ of experiment_]|[$$…]|[$$ to board_]|[-6-]}
<Call 0x1936e 0x18ff2> {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«30»]|[«10""»]|[-4-]|[$$ of experiment_]|[$$…]|[$$ to board_]|[-6-]}
_BoardName(address : B) : String
<POP 19372-19374 StackAdj> Δ+2 {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«30»]|[«10""»]|[-4-]|[$$ of experiment_]|[$$…]|[$$ to board_]|[-4-]}
<Call 0x19374 0x11000> {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«30»]|[«10""»]|[-4-]|[$$ of experiment_]|[$$…]|[$$ to board_]|[-4-]}
_StringCat4(a, b, c, d : String) : String
<POP 1937a-1937c StackAdj> Δ+16 {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«30»]|[«10""»]|[-4-]}
<Call 0x1937c 0x154b0> {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[«30»]|[«10""»]|[-4-]}
_WriteConsoleStringCrLf(str : String)
<POP 19382-19383 StackAdj> Δ+60 ↓ {}
<Blob 0x19383 [24] @> Δ-24 {[«24""»]}
<POP 19394-193b4 Naked> Σ-24 Δ+24 →0x194ee ←0x1945c
<Const 0x19394 0x2.2> Δ-2 {[-24-]|[#2]}
<POP 19398-1939a StackAdj> Δ-4 {[-24-]|[#2]|[-4-]}
<Lit 0x1939a> {[-24-]|[#2]|[$$…]}
<Pointer.sp 0x1939a 6> Δ-4
<Const 0x1939e 0x1.2> Δ-2
<Const 0x193a0 0x17.2> Δ-2
<Call 0x193a4 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 193a6-193a8 StackAdj> Δ+8
<Call 0x193a8 0x14e18> {[-24-]|[#2]|[$$…]}
_PopProgram(status : Byte; msg : String)
<POP 193ae-193b0 StackAdj> Δ+30 {}
<MI 193b0 BRA 0x194ee> {}
<POP 193b4-193be Naked> Σ0 ↓ →0x193e6 ←0x192ca ←0x193c2
<MI 193b4 MOVE.B (A6-0x2),D0> {}
<MI 193b8 CMPI.B #0x06,D0> {}
<MI 193bc BNE 0x193e6> {}
<POP 193be-193c2 Naked> Σ0 ↓ →0x193e6
<MI 193be TST.L D7> {}
<MI 193c0 BEQ 0x193e6> {}
<POP 193c2-193e6 Naked> Σ0 →0x193b4
<MI 193c2 SUBQ.L #0x1,D7> {}
<Const 0x193c4 0x4e.4> Δ-4 {[##78]}
<Call 0x193c8 0x10224> {[##78]}
KC12_Sleep(dur: Long)
<POP 193ce-193d0 StackAdj> Δ+2 {[-2-]}
<MI 193d0 MOVE.B (A6+0xc),(A7)> {[-2-]}
<Pointer.fp 0x193d2 <LVAR -0x002 @ 1(r)>> Δ-4 {[-2-]|[@@-2]}
<Pointer.fp 0x193d6 <LVAR -0x004 @>> Δ-4 {[-2-]|[@@-2]|[@@-4]}
<Pointer.fp 0x193da <LVAR -0x003 @ 1(r)>> Δ-4 {[-2-]|[@@-2]|[@@-4]|[@@-3]}
<Call 0x193de 0x18d62> {[-2-]|[@@-2]|[@@-4]|[@@-3]}
_DiProcPing(adr : Byte; VAR status : Byte; VAR b80 : Bool; VAR b40 : Bool)
<POP 193e2-193e4 StackAdj> Δ+14 {}
<MI 193e4 BRA 0x193b4> {}
<POP 193e6-193ec Naked> Σ0 ↓ →0x194d6 ←0x193b4 ←0x193be
<MI 193e6 CMP.B #0x01,D0> {}
<MI 193e8 BEQ 0x194d6> {}
<POP 193ec-193f8 Naked> Σ0 ↓ →0x19420
<Call 0x193ec 0x1540a> {}
_WriteConsoleCrLf(void)
<MI 193f2 CMPI.B #0x06,D0> {}
<MI 193f6 BNE 0x19420> {}
<POP 193f8-19420 Naked> Σ0 →0x1945c
<Blob 0x193f8 [34] @> Δ-34 {[«34""»]}
<POP 19404-19406 StackAdj> Δ-4 {[«34""»]|[-4-]}
<Lit 0x19406 34> {[«34""»]|[$$ERROR: experiment running too long]}
<Call 0x19414 0x154b0> {[«34""»]|[$$ERROR: experiment running too long]}
_WriteConsoleStringCrLf(str : String)
<POP 1941a-1941e StackAdj> Δ+38 {}
<MI 1941e BRA 0x1945c> {}
<POP 19420-1945c Naked> Σ0 ↓ ←0x193ec
<Blob 0x19420 [28] @> Δ-28 {[«28""»]}
<POP 19432-19434 StackAdj> Δ-8 {[«28""»]|[-8-]}
<Lit 0x19434 27> {[«28""»]|[-4-]|[$$Experiment error: status =_]}
<POP 19440-19442 StackAdj> Δ-6 {[«28""»]|[-4-]|[$$Experiment error: status =_]|[-6-]}
<MI 19442 MOVE.B D0,(A7)> {[«28""»]|[-4-]|[$$Experiment error: status =_]|[-6-]}
<Call 0x19444 0x190a4> {[«28""»]|[-4-]|[$$Experiment error: status =_]|[-6-]}
_ExpStatus2Text(status.B, &String)
<POP 19448-1944a StackAdj> Δ+2 {[«28""»]|[-4-]|[$$Experiment error: status =_]|[-4-]}
<Call 0x1944a 0x10f2c> {[«28""»]|[-4-]|[$$Experiment error: status =_]|[-4-]}
_StringCat2(a, b : String) : String
<POP 19450-19452 StackAdj> Δ+8 {[«28""»]|[-4-]}
<Call 0x19452 0x154b0> {[«28""»]|[-4-]}
_WriteConsoleStringCrLf(str : String)
<POP 19458-1945c StackAdj> Δ+32 {}
<POP 1945c-194d6 Naked> Σ0 Δ-24 →0x19394 ←0x193f8
<Blob 0x1945c [4] @> Δ-4 {[«4""»]}
<Blob 0x19460 [4] @> Δ-4 {[«4""»]|[«4""»]}
<MI 19464 MOVEA.L (A6+0x8),A0> {[«4""»]|[«4""»]}
<Blob 0x19466 [30] (A0+0xfc)> Δ-30 {[«4""»]|[«4""»]|[«30»]}
<Blob 0x19476 [10] @> Δ-10 {[«4""»]|[«4""»]|[«30»]|[«10""»]}
<POP 19482-19484 StackAdj> Δ-8 {[«4""»]|[«4""»]|[«30»]|[«10""»]|[-8-]}
<Lit 0x19484 8> {[«4""»]|[«4""»]|[«30»]|[«10""»]|[-4-]|[$$ from_]}
<POP 19490-19492 StackAdj> Δ-4 {[«4""»]|[«4""»]|[«30»]|[«10""»]|[-4-]|[$$ from_]|[-4-]}
<Lit 0x19492> {[«4""»]|[«4""»]|[«30»]|[«10""»]|[-4-]|[$$ from_]|[$$…]}
<Pointer.sp 0x19492 22> Δ-4
<Const 0x19496 0x1.2> Δ-2
<Const 0x19498 0x1e.2> Δ-2
<Call 0x1949a 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 1949c-1949e StackAdj> Δ+8
<POP 1949c-1949e StackAdj> Δ-4 {[«4""»]|[«4""»]|[«30»]|[«10""»]|[-4-]|[$$ from_]|[$$…]|[-4-]}
<Lit 0x1949e 10> {[«4""»]|[«4""»]|[«30»]|[«10""»]|[-4-]|[$$ from_]|[$$…]|[$$ on board_]}
<POP 194a8-194aa StackAdj> Δ-6 {[«4""»]|[«4""»]|[«30»]|[«10""»]|[-4-]|[$$ from_]|[$$…]|[$$ on board_]|[-6-]}
<MI 194aa MOVE.B (A6+0xc),(A7)> {[«4""»]|[«4""»]|[«30»]|[«10""»]|[-4-]|[$$ from_]|[$$…]|[$$ on board_]|[-6-]}
<Call 0x194ac 0x18ff2> {[«4""»]|[«4""»]|[«30»]|[«10""»]|[-4-]|[$$ from_]|[$$…]|[$$ on board_]|[-6-]}
_BoardName(address : B) : String
<POP 194b0-194b2 StackAdj> Δ+2 {[«4""»]|[«4""»]|[«30»]|[«10""»]|[-4-]|[$$ from_]|[$$…]|[$$ on board_]|[-4-]}
<Call 0x194b2 0x11000> {[«4""»]|[«4""»]|[«30»]|[«10""»]|[-4-]|[$$ from_]|[$$…]|[$$ on board_]|[-4-]}
_StringCat4(a, b, c, d : String) : String
<POP 194b8-194ba StackAdj> Δ+16 {[«4""»]|[«4""»]|[«30»]|[«10""»]|[-4-]}
<Call 0x194ba 0x154b0> {[«4""»]|[«4""»]|[«30»]|[«10""»]|[-4-]}
_WriteConsoleStringCrLf(str : String)
<POP 194c0-194c1 StackAdj> Δ+52 ↓ {}
<Blob 0x194c1 [24] @> Δ-24 {[«24""»]}
<MI 194d2 BRA 0x19394> {[«24""»]}
<POP 194d6-194e0 Naked> Σ0 ↓ →0x194ee ←0x193e6
<MI 194d6 MOVEA.L (A6+0x8),A0> {}
<MI 194d8 MOVE.B (A0+0x11c),D0> {}
<MI 194dc LSR.B #0x7,D0> {}
<MI 194de BEQ 0x194ee> {}
<POP 194e0-194ee Naked> Σ0 ↓
<MI 194e0 MOVE.B (A6+0xc),-(A7)> Δ-2 {[2, '(A6+0xc)']}
<MI 194e2 MOVE.L (A6+0x8),-(A7)> Δ-4 {[2, '(A6+0xc)']|[4, '(A6+0x8)']}
<Pointer.fp 0x194e4 <LVAR -0x002 @ 1(r)>> Δ-4 {[2, '(A6+0xc)']|[4, '(A6+0x8)']|[@@-2]}
<Call 0x194e8 0x18e42> {[2, '(A6+0xc)']|[4, '(A6+0x8)']|[@@-2]}
_ExpUpload(adr: Byte; ptr: Pointer; VAR status : Byte)
<POP 194ec-194ee StackAdj> Δ+10 {}
<POP 194ee-194f6 Epilogue> Σ0 ←0x19394 ←0x194d6
@ 194f6
_HasBoard(diproc_addr: Byte) : Byte
<LVAR 0x00a 1(rw)>
<LVAR 0x008 1(r)>
<POP 194f6-19582 Body>
<POP 194f6-1950c Prologue> Σ0 ↓
<POP 1950c-1951c Naked> Σ0 ↓ →0x19522
<MI 1950c MOVE.B (A6+0x8),D0> {}
<MI 19510 EXTB.W D0> {}
<MI 19512 LEA.L 0x18458,A0> {}
<MI 19516 TST.B (A0+D0.W)> {}
<MI 1951a BNE 0x19522> {}
<POP 1951c-19522 Naked> Σ0 →0x1957a
<MI 1951c CLR.B (A6+0xa)> {}
<MI 19520 BRA 0x1957a> {}
<POP 19522-1952c Naked> Σ0 ↓ →0x19568 ←0x1950c
<MI 19522 SUBI.W #0x000c,D0> {}
<MI 19526 CMPI.W #0x0003,D0> {}
<MI 1952a BHI 0x19568> {}
<POP 1952c-19536 Naked> Σ0 →0x1953e →0x1954c →0x19556 →0x19560
<MI 1952c ADD.W D0,D0> {}
<MI 1952e SWITCH D0.W> {}
<POP 1953e-19546 Naked> Σ0 ↓ ←0x1952c
<MI 1953e MOVE.B 0x1c216,D0> {}
<MI 19544 LSL.B #0x3,D0> {}
<POP 19546-1954c Naked> Σ0 →0x1956a ←0x1954c ←0x19556 ←0x19560
<MI 19546 LSR.B #0x7,D0> {}
<MI 19548 MOVE.B D0,D7> {}
<MI 1954a BRA 0x1956a> {}
<POP 1954c-19556 Naked> Σ0 →0x19546 ←0x1952c
<MI 1954c MOVE.B 0x1c216,D0> {}
<MI 19552 LSL.B #0x2,D0> {}
<MI 19554 BRA 0x19546> {}
<POP 19556-19560 Naked> Σ0 →0x19546 ←0x1952c
<MI 19556 MOVE.B 0x1c216,D0> {}
<MI 1955c LSL.B #0x1,D0> {}
<MI 1955e BRA 0x19546> {}
<POP 19560-19568 Naked> Σ0 →0x19546 ←0x1952c
<MI 19560 MOVE.B 0x1c216,D0> {}
<MI 19566 BRA 0x19546> {}
<POP 19568-1956a Naked> Σ0 ↓ ←0x19522
<MI 19568 MOVEQ.L #0x01,D7> {}
<POP 1956a-1957a Naked> Σ0 ↓ ←0x19546
<MI 1956a MOVE.B 0x1c217,D0> {}
<MI 19570 LSL.B #0x4,D0> {}
<MI 19572 LSR.B #0x7,D0> {}
<MI 19574 AND.B D7,D0> {}
<MI 19576 MOVE.B D0,(A6+0xa)> {}
<POP 1957a-19582 Epilogue> Σ0 ←0x1951c
@ 19582
_EQ_1c218(a : Byte) : Bool
<LVAR 0x00a 1(rw)>
<LVAR 0x008 1(r)>
<POP 19582-195b4 Body>
<POP 19582-19598 Prologue> Σ0 ↓
<POP 19598-195a8 Naked> Σ0 ↓ →0x195ac
<MI 19598 CLR.B (A6+0xa)> {}
<MI 1959c MOVE.B (A6+0x8),D0> {}
<MI 195a0 CMP.B 0x1c218,D0> {}
<MI 195a6 BNE 0x195ac> {}
<POP 195a8-195ac Naked> Σ0 ↓
<MI 195a8 ADDQ.B #0x1,(A6+0xa)> {}
<POP 195ac-195b4 Epilogue> Σ0 ←0x19598
@ 195b4
_MemOnly2MB() : Bool
<LVAR 0x008 1(w)>
<POP 195b4-195e0 Body>
<POP 195b4-195ca Prologue> Σ0 ↓
<POP 195ca-195d8 Naked> Σ0 ↓
<MI 195ca MOVE.B 0x1c216,D0> {}
<MI 195d0 LSL.B #0x4,D0> {}
<MI 195d2 LSR.B #0x7,D0> {}
<MI 195d4 MOVE.B D0,(A6+0x8)> {}
<POP 195d8-195e0 Epilogue> Σ0
@ 195e0
_SetExpInitDone(a : Byte)
<LVAR 0x008 1(r)>
<POP 195e0-195fe Body>
<POP 195e0-195f2 Prologue> Σ0 ↓
<POP 195f2-195fa Naked> Σ0 ↓
<MI 195f2 MOVE.B (A6+0x8),0x20024> {}
<POP 195fa-195fe Epilogue> Σ0
@ 195fe
_ExpInit(a : Long)
<POP 195fe-196a6 Body>
<POP 195fe-19614 Prologue> Σ0 ↓
<POP 19614-1961e RegCacheLoad> Σ0 ↓
<POP 1961e-19632 Naked> Σ0 ↓
<MI 1961e MOVE.B #0x01,0x20024> {}
<MI 19624 MOVE.B #0x01,0x20025> {}
<MI 1962a MOVE.W #0x1f,0x20026> {}
<MI 19630 MOVEQ.L #0x00,D7> {}
<POP 19632-19656 Naked> Σ0 ↓ →0x19632 ←0x19632
<MI 19632 MOVE.L D7,D4> {}
<MI 19634 MOVEQ.L #0x06,D3> {}
<Call 0x19636 0x107ea> {}
_?muls_d3_d4
<MI 1963c LEA.L 0x0,A0> {}
<MI 19640 LEA.L (A0+D4.L),A0> {}
<MI 19644 ADDA.L #0x2002c,A0> {}
<MI 1964a MOVE.L #0x01,(A0+0x2)> {}
<MI 1964e CLR.B (A0)> {}
<MI 19650 ADDQ.L #0x1,D7> {}
<MI 19652 CMP.L #0x1f,D7> {}
<MI 19654 BLE 0x19632> {}
<POP 19656-19684 Naked> Σ0 ↓ →0x1969e
<Const 0x19656 0x20028.4> Δ-4 {[##131112]}
<Const 0x1965c 0x11d.4> Δ-4 {[##131112]|[##285]}
<Call 0x19660 0x10856> {[##131112]|[##285]}
_Malloc1(length : Long) : Pointer
<POP 19666-19668 StackAdj> Δ+8 {}
<Const 0x19668 0x1c216.4> Δ-4 {[##115222]}
<Call 0x1966e 0x1aa98> {[##115222]}
_Read_fc0c() : Word
<POP 19674-19676 StackAdj> Δ+4 {}
<MI 19676 MOVE.B #0x01,0x1c218> {}
<MI 19678 MOVE.B 0x1c217,D0> {}
<MI 1967e LSL.B #0x4,D0> {}
<MI 19680 LSR.B #0x7,D0> {}
<MI 19682 BEQ 0x1969e> {}
<POP 19684-19686 Naked> Σ0 ↓
<MI 19684 MOVEQ.L #0x0f,D6> {}
<POP 19686-19694 Naked> Σ0 ↓ →0x19696 ←0x19696
<POP 19686-19688 StackAdj> Δ-2 {[-2-]}
<MI 19688 MOVE.B D6,-(A7)> Δ-2 {[-2-]|[2, 'D6']}
<Call 0x1968a 0x194f6> {[-2-]|[2, 'D6']}
_HasBoard(diproc_addr: Byte) : Byte
<POP 1968e-19690 StackAdj> Δ+2 {[-2-]}
<MI 19690 TST.B (A7)+> Δ+2 {}
<MI 19692 BEQ 0x19696> {}
<POP 19694-19696 Naked> Σ0 ↓
<MI 19694 MOVE.B D6,0x1c218> {}
<POP 19696-1969e Naked> Σ0 ↓ →0x19686 ←0x19686
<MI 19696 SUBQ.B #0x1,D6> {}
<MI 19698 CMPI.B #0x0c,D6> {}
<MI 1969c BGE 0x19686> {}
<POP 1969e-196a6 Epilogue> Σ0 ←0x19656
@ 196a6
_Get20028(void) : L
<LVAR 0x008 4(w)>
<POP 196a6-196c4 Body>
<POP 196a6-196b8 Prologue> Σ0 ↓
<POP 196b8-196c0 Naked> Σ0 ↓
<MI 196b8 MOVE.L 0x20028,(A6+0x8)> {}
<POP 196c0-196c4 Epilogue> Σ0
@ 197a4
_IPC_PutVar(src : Pointer; length : Long ; type : Long)
<LVAR 0x010 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x00c @ 4(w)>
<POP 197a4-19820 Body>
<POP 197a4-197ba Prologue> Σ0 ↓
<POP 197ba-197ca RegCacheLoad> Σ0 ↓
<POP 197ca-197d2 Naked> Σ0 Δ-4 ↓
<MI 197ca MOVE.L (A6+0x8),(A6-0xc)> {}
<MI 197cc ADDQ.L #0x1,(A6-0xc)> {}
<MI 197ce MOVE.L (A6+0x8),-(A7)> Δ-4 {[4, '(A6+0x8)']}
<MI 197d0 MOVEQ.L #0x00,D7> {[4, '(A6+0x8)']}
<POP 197d2-197d6 Naked> Σ-4 ↓ →0x19802 ←0x197f0
<MI 197d2 CMP.L (A7),D7> {[-4-]}
<MI 197d4 BGT 0x19802> {[-4-]}
<POP 197d6-197f0 Naked> Σ-4 ↓
<MI 197d6 MOVEQ.L #0x07,D0> {[-4-]}
<MI 197d8 SUB.L (A6+0x8),D0> {[-4-]}
<MI 197da ADD.L D7,D0> {[-4-]}
<POP 0x197dc LimitCheck 0x0 ≤ D0 ≤ 0x7> {[-4-]}
<MI 197e6 MOVEA.L (A6+0x10),A0> {[-4-]}
<MI 197ea MOVE.L D7,D1> {[-4-]}
<MI 197ec CMP.L (A6+0x8),D1> {[-4-]}
<MI 197ee BGT 0x197f6> {[-4-]}
<POP 197f0-19802 Naked> Σ-4 ↓ →0x197d2
<POP 0x197f0 LimitCheck> {[-4-]}
<MI 197f0 SUB.L (A6+0xc),D1>
<MI 197f4 BGE 0x197f8>
<MI 197f6 TRAP #15>
<MI 197f8 MOVE.B (A0+D1.L),(A6+D0.L-#0x8)> {[-4-]}
<MI 197fe ADDQ.L #0x1,D7> {[-4-]}
<MI 19800 BVC 0x197d2> {[-4-]}
<POP 19802-19818 Naked> Σ-4 Δ+4 ↓ ←0x197d2
<POP 19802-19804 StackAdj> Δ+4 {}
<MI 19804 LEA.L (A6-0xc),A0> {}
<MI 19806 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<Blob 0x19808 [4] 0x1c222> Δ-4 {[4, 'A0']|[«4»]}
<Const 0x1980a 0xc.2> Δ-2 {[4, 'A0']|[«4»]|[#12]}
<Call 0x1980c 0x19752> {[4, 'A0']|[«4»]|[#12]}
_CopyBytes(src : Pointer; dst : Pointer; bytes : Word)
<POP 19812-19816 StackAdj> Δ+10 {}
<MI 19816 ADD.L #0x0c,0x1c222> {}
<POP 19818-19820 Epilogue> Σ0
@ 19820
_IPC_PutBool(a : Bool)
<LVAR 0x008 1(r)>
<LVAR -0x006 4(rw)>
<LVAR -0x00a @ 4(r)>
<POP 19820-19874 Body>
<POP 19820-19836 Prologue> Σ0 ↓
<POP 19836-1983c RegCacheLoad> Σ0 ↓
<POP 1983c-19846 Naked> Σ0 ↓ →0x19850
<MI 1983c CLR.L (A6-0xa)> {}
<MI 19840 TST.B (A6+0x8)> {}
<MI 19844 BEQ 0x19850> {}
<POP 19846-19850 Naked> Σ0 →0x19854
<MI 19846 MOVE.L #0x1,(A6-0x6)> {}
<MI 1984e BRA 0x19854> {}
<POP 19850-19854 Naked> Σ0 ↓ ←0x1983c
<MI 19850 CLR.L (A6-0x6)> {}
<POP 19854-1986c Naked> Σ0 ↓ ←0x19846
<MI 19854 LEA.L (A6-0xa),A0> {}
<MI 19858 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<Blob 0x1985a [4] 0x1c222> Δ-4 {[4, 'A0']|[«4»]}
<Const 0x1985c 0x8.2> Δ-2 {[4, 'A0']|[«4»]|[#8]}
<Call 0x19860 0x19752> {[4, 'A0']|[«4»]|[#8]}
_CopyBytes(src : Pointer; dst : Pointer; bytes : Word)
<POP 19866-1986a StackAdj> Δ+10 {}
<MI 1986a ADDQ.L #0x8,0x1c222> {}
<POP 1986c-19874 Epilogue> Σ0
@ 19874
_IPC_PutString(a : String)
<LVAR 0x008 @ 4(r)>
<LVAR -0x080 @>
<LVAR -0x084 @ 4(w)>
<POP 19874-198d8 Body>
<POP 19874-1988a Prologue> Σ0 ↓
<POP 1988a-19890 RegCacheLoad> Σ0 ↓
<POP 19890-198d0 Naked> Σ0 ↓
<MI 19890 MOVE.L #0x9,(A6-0x84)> {}
<MI 19898 MOVEA.L (A6+0x8),A0> {}
<MI 1989c LEA.L (A6-0x80),A1> {}
<BlockMove 128,A0,A1> {}
<Pointer.fp 0x198a8 <LVAR 0x008 @ 4(r)>> Δ-4 {[@@8]}
<Call 0x198ac 0x10d36> {[@@8]}
_FreeString(VAR a : String)
<POP 198b2-198b4 StackAdj> Δ+4 {}
<MI 198b4 LEA.L (A6-0x84),A0> {}
<MI 198b8 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<Blob 0x198ba [4] 0x1c222> Δ-4 {[4, 'A0']|[«4»]}
<Const 0x198bc 0x84.2> Δ-2 {[4, 'A0']|[«4»]|[#132]}
<Call 0x198c0 0x19752> {[4, 'A0']|[«4»]|[#132]}
_CopyBytes(src : Pointer; dst : Pointer; bytes : Word)
<POP 198c6-198ca StackAdj> Δ+10 {}
<MI 198ca ADDI.L #0x00000084,0x1c222> {}
<POP 198d0-198d8 Epilogue> Σ0
@ 198d8
_IPC_PutLong(a : L)
<LVAR 0x008 4(r)>
<LVAR -0x004 4(w)>
<LVAR -0x008 @ 4(w)>
<POP 198d8-1991e Body>
<POP 198d8-198ee Prologue> Σ0 ↓
<POP 198ee-198f6 RegCacheLoad> Σ0 ↓
<POP 198f6-19916 Naked> Σ0 ↓
<MI 198f6 MOVE.L #0x0a,(A6-0x8)> {}
<MI 198fa MOVE.L (A6+0x8),(A6-0x4)> {}
<MI 19900 LEA.L (A6-0x8),A0> {}
<MI 19904 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<Blob 0x19906 [4] 0x1c222> Δ-4 {[4, 'A0']|[«4»]}
<Const 0x19908 0x8.2> Δ-2 {[4, 'A0']|[«4»]|[#8]}
<Call 0x1990c 0x19752> {[4, 'A0']|[«4»]|[#8]}
_CopyBytes(src : Pointer; dst : Pointer; bytes : Word)
<POP 19912-19914 StackAdj> Δ+10 {}
<MI 19914 ADDQ.L #0x8,0x1c222> {}
<POP 19916-1991e Epilogue> Σ0
@ 1991e
_IPC_PutEnd(void)
<LVAR -0x004 @ 4(w)>
<POP 1991e-19962 Body>
<POP 1991e-19934 Prologue> Σ0 ↓
<POP 19934-1993a RegCacheLoad> Σ0 ↓
<POP 1993a-1995a Naked> Σ0 ↓
<MI 1993a MOVE.L #0xffffffff,(A6-0x4)> {}
<MI 19942 LEA.L (A6-0x4),A0> {}
<MI 19946 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<Blob 0x19948 [4] 0x1c222> Δ-4 {[4, 'A0']|[«4»]}
<Const 0x1994a 0x4.2> Δ-2 {[4, 'A0']|[«4»]|[#4]}
<Call 0x1994e 0x19752> {[4, 'A0']|[«4»]|[#4]}
_CopyBytes(src : Pointer; dst : Pointer; bytes : Word)
<POP 19954-19958 StackAdj> Δ+10 {}
<MI 19958 ADDQ.L #0x4,0x1c222> {}
<POP 1995a-19962 Epilogue> Σ0
@ 19962
_IPC_GetEnd(void)
<LVAR -0x004 @ 4(r)>
<POP 19962-199da Body>
<POP 19962-19978 Prologue> Σ0 ↓
<POP 19978-1999e Naked> Σ0 ↓ →0x199d2
<Blob 0x19978 [4] 0x1c222> Δ-4 {[«4»]}
<MI 1997e LEA.L (A6-0x4),A0> {[«4»]}
<MI 19982 MOVE.L A0,-(A7)> Δ-4 {[«4»]|[4, 'A0']}
<Const 0x19984 0x4.2> Δ-2 {[«4»]|[4, 'A0']|[#4]}
<Call 0x19988 0x19752> {[«4»]|[4, 'A0']|[#4]}
_CopyBytes(src : Pointer; dst : Pointer; bytes : Word)
<POP 1998e-19992 StackAdj> Δ+10 {}
<MI 19992 MOVE.L (A6-0x4),D0> {}
<MI 19996 CMPI.L #0xffffffff,D0> {}
<MI 1999c BEQ 0x199d2> {}
<POP 1999e-199d2 Naked> Σ0 ↓
<Blob 0x1999e [4] @> Δ-4 {[«4""»]}
<Blob 0x199a2 [4] @> Δ-4 {[«4""»]|[«4""»]}
<Blob 0x199a6 [4] @> Δ-4 {[«4""»]|[«4""»]|[«4""»]}
<Blob 0x199aa [4] @> Δ-4 {[«4""»]|[«4""»]|[«4""»]|[«4""»]}
<Const 0x199ae 0x5.2> Δ-2 {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[#5]}
<POP 199b2-199b4 StackAdj> Δ-4 {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[#5]|[-4-]}
<Lit 0x199b4 16> {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[#5]|[$$Not enough gets.]}
<Call 0x199c8 0x14e18> {[«4""»]|[«4""»]|[«4""»]|[«4""»]|[#5]|[$$Not enough gets.]}
_PopProgram(status : Byte; msg : String)
<POP 199ce-199d2 StackAdj> Δ+22 {}
<POP 199d2-199da Epilogue> Σ0 ←0x19978
@ 199da
_IPC_GetVar(MOD dst : Pointer; length : Long ; type : Long)
<LVAR 0x010 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x010 @ 4(r)>
<POP 199da-19a8a Body>
<POP 199da-199f0 Prologue> Σ0 ↓
<POP 199f0-199fc RegCacheLoad> Σ0 ↓
<POP 199fc-19a1c Naked> Σ0 ↓ →0x19a4c
<Blob 0x199fc [4] 0x1c222> Δ-4 {[«4»]}
<MI 199fe LEA.L (A6-0x10),A0> {[«4»]}
<MI 19a02 MOVE.L A0,-(A7)> Δ-4 {[«4»]|[4, 'A0']}
<Const 0x19a04 0xc.2> Δ-2 {[«4»]|[4, 'A0']|[#12]}
<Call 0x19a06 0x19752> {[«4»]|[4, 'A0']|[#12]}
_CopyBytes(src : Pointer; dst : Pointer; bytes : Word)
<POP 19a0c-19a10 StackAdj> Δ+10 {}
<MI 19a10 ADD.L #0x0c,0x1c222> {}
<MI 19a12 MOVE.L (A6+0x8),D0> {}
<MI 19a14 ADDQ.L #0x1,D0> {}
<MI 19a16 CMP.L (A6-0x10),D0> {}
<MI 19a1a BEQ 0x19a4c> {}
<POP 19a1c-19a4c Naked> Σ0 ↓
<Blob 0x19a1c [24] @> Δ-24 {[«24""»]}
<Const 0x19a28 0x5.2> Δ-2 {[«24""»]|[#5]}
<POP 19a2c-19a2e StackAdj> Δ-4 {[«24""»]|[#5]|[-4-]}
<Lit 0x19a2e 24> {[«24""»]|[#5]|[$$Incorrect parameter type]}
<Call 0x19a42 0x14e18> {[«24""»]|[#5]|[$$Incorrect parameter type]}
_PopProgram(status : Byte; msg : String)
<POP 19a48-19a4c StackAdj> Δ+30 {}
<POP 19a4c-19a50 Naked> Σ0 Δ-4 ↓ ←0x199fc
<MI 19a4c MOVE.L (A6+0x8),-(A7)> Δ-4 {[4, '(A6+0x8)']}
<MI 19a4e MOVEQ.L #0x00,D7> {[4, '(A6+0x8)']}
<POP 19a50-19a54 Naked> Σ-4 ↓ →0x19a80 ←0x19a5e
<MI 19a50 CMP.L (A7),D7> {[-4-]}
<MI 19a52 BGT 0x19a80> {[-4-]}
<POP 19a54-19a5e Naked> Σ-4 ↓
<MI 19a54 MOVEA.L (A6+0x10),A0> {[-4-]}
<MI 19a58 MOVE.L D7,D0> {[-4-]}
<MI 19a5a CMP.L (A6+0x8),D0> {[-4-]}
<MI 19a5c BGT 0x19a64> {[-4-]}
<POP 19a5e-19a80 Naked> Σ-4 ↓ →0x19a50
<POP 0x19a5e LimitCheck> {[-4-]}
<MI 19a5e SUB.L (A6+0xc),D0>
<MI 19a62 BGE 0x19a66>
<MI 19a64 TRAP #15>
<MI 19a66 MOVEQ.L #0x07,D1> {[-4-]}
<MI 19a68 SUB.L (A6+0x8),D1> {[-4-]}
<MI 19a6a ADD.L D7,D1> {[-4-]}
<POP 0x19a6c LimitCheck 0x0 ≤ D1 ≤ 0x7> {[-4-]}
<MI 19a76 MOVE.B (A6+D1.L-#0xc),(A0+D0.L)> {[-4-]}
<MI 19a7c ADDQ.L #0x1,D7> {[-4-]}
<MI 19a7e BVC 0x19a50> {[-4-]}
<POP 19a80-19a82 Naked> Σ-4 Δ+4 ↓ ←0x19a50
<POP 19a80-19a82 StackAdj> Δ+4 {}
<POP 19a82-19a8a Epilogue> Σ0
@ 19a8a
_IPC_GetBool() : Bool
<LVAR 0x008 4(r)>
<LVAR -0x004 4(r)>
<LVAR -0x008 @ 4(r)>
<POP 19a8a-19b0c Body>
<POP 19a8a-19aa0 Prologue> Σ0 ↓
<POP 19aa0-19aa8 RegCacheLoad> Σ0 ↓
<POP 19aa8-19ac6 Naked> Σ0 ↓ →0x19af4
<Blob 0x19aa8 [4] 0x1c222> Δ-4 {[«4»]}
<MI 19aaa LEA.L (A6-0x8),A0> {[«4»]}
<MI 19aae MOVE.L A0,-(A7)> Δ-4 {[«4»]|[4, 'A0']}
<Const 0x19ab0 0x8.2> Δ-2 {[«4»]|[4, 'A0']|[#8]}
<Call 0x19ab4 0x19752> {[«4»]|[4, 'A0']|[#8]}
_CopyBytes(src : Pointer; dst : Pointer; bytes : Word)
<POP 19aba-19abe StackAdj> Δ+10 {}
<MI 19abe ADDQ.L #0x8,0x1c222> {}
<MI 19ac0 TST.L (A6-0x8)> {}
<MI 19ac4 BEQ 0x19af4> {}
<POP 19ac6-19af4 Naked> Σ0 ↓
<Blob 0x19ac6 [24] @> Δ-24 {[«24""»]}
<Const 0x19ad2 0x5.2> Δ-2 {[«24""»]|[#5]}
<POP 19ad6-19ad8 StackAdj> Δ-4 {[«24""»]|[#5]|[-4-]}
<Lit 0x19ad8 24> {[«24""»]|[#5]|[$$Incorrect parameter type]}
<Call 0x19aea 0x14e18> {[«24""»]|[#5]|[$$Incorrect parameter type]}
_PopProgram(status : Byte; msg : String)
<POP 19af0-19af4 StackAdj> Δ+30 {}
<POP 19af4-19b02 Naked> Σ0 ↓ →0x19b04 ←0x19aa8
<MI 19af4 MOVEA.L (A6+0x8),A0> {}
<MI 19af8 CLR.B (A0)> {}
<MI 19afa MOVE.L (A6-0x4),D0> {}
<MI 19afe CMP.L #0x01,D0> {}
<MI 19b00 BNE 0x19b04> {}
<POP 19b02-19b04 Naked> Σ0 ↓
<MI 19b02 ADDQ.B #0x1,(A0)> {}
<POP 19b04-19b0c Epilogue> Σ0 ←0x19af4
@ 19b0c
_IPC_GetString(VAR retval : String)
<LVAR 0x008 4(r)>
<LVAR -0x080 @>
<LVAR -0x084 @ 4(r)>
<POP 19b0c-19ba4 Body>
<POP 19b0c-19b22 Prologue> Σ0 ↓
<POP 19b22-19b28 RegCacheLoad> Σ0 ↓
<POP 19b28-19b50 Naked> Σ0 ↓ →0x19b80
<Blob 0x19b28 [4] 0x1c222> Δ-4 {[«4»]}
<MI 19b2a LEA.L (A6-0x84),A0> {[«4»]}
<MI 19b2e MOVE.L A0,-(A7)> Δ-4 {[«4»]|[4, 'A0']}
<Const 0x19b30 0x84.2> Δ-2 {[«4»]|[4, 'A0']|[#132]}
<Call 0x19b34 0x19752> {[«4»]|[4, 'A0']|[#132]}
_CopyBytes(src : Pointer; dst : Pointer; bytes : Word)
<POP 19b3a-19b3e StackAdj> Δ+10 {}
<MI 19b3e ADDI.L #0x00000084,0x1c222> {}
<MI 19b44 MOVE.L (A6-0x84),D0> {}
<MI 19b48 CMPI.L #0x00000009,D0> {}
<MI 19b4e BEQ 0x19b80> {}
<POP 19b50-19b80 Naked> Σ0 ↓
<Blob 0x19b50 [24] @> Δ-24 {[«24""»]}
<Const 0x19b5c 0x5.2> Δ-2 {[«24""»]|[#5]}
<POP 19b60-19b62 StackAdj> Δ-4 {[«24""»]|[#5]|[-4-]}
<Lit 0x19b62 24> {[«24""»]|[#5]|[$$Incorrect parameter type]}
<Call 0x19b76 0x14e18> {[«24""»]|[#5]|[$$Incorrect parameter type]}
_PopProgram(status : Byte; msg : String)
<POP 19b7c-19b80 StackAdj> Δ+30 {}
<POP 19b80-19b9c Naked> Σ0 ↓ ←0x19b28
<MI 19b80 MOVEA.L (A6+0x8),A0> {}
<MI 19b84 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x19b86 0x10cfa> {[4, '^(A0)']}
_NewString(VAR a : String)
<POP 19b8c-19b8e StackAdj> Δ+4 {}
<MI 19b8e MOVEA.L (A0),A0> {}
<MI 19b90 LEA.L (A6-0x80),A1> {}
<BlockMove 128,A1,A0> {}
<POP 19b9c-19ba4 Epilogue> Σ0
@ 19ba4
_IPC_GetLong() : Long
<LVAR 0x008 4(r)>
<LVAR -0x004 4(r)>
<LVAR -0x008 @ 4(r)>
<POP 19ba4-19c20 Body>
<POP 19ba4-19bba Prologue> Σ0 ↓
<POP 19bba-19bc2 RegCacheLoad> Σ0 ↓
<POP 19bc2-19be0 Naked> Σ0 ↓ →0x19c10
<Blob 0x19bc2 [4] 0x1c222> Δ-4 {[«4»]}
<MI 19bc4 LEA.L (A6-0x8),A0> {[«4»]}
<MI 19bc8 MOVE.L A0,-(A7)> Δ-4 {[«4»]|[4, 'A0']}
<Const 0x19bca 0x8.2> Δ-2 {[«4»]|[4, 'A0']|[#8]}
<Call 0x19bce 0x19752> {[«4»]|[4, 'A0']|[#8]}
_CopyBytes(src : Pointer; dst : Pointer; bytes : Word)
<POP 19bd4-19bd6 StackAdj> Δ+10 {}
<MI 19bd6 ADDQ.L #0x8,0x1c222> {}
<MI 19bd8 MOVE.L (A6-0x8),D0> {}
<MI 19bdc CMP.L #0x0a,D0> {}
<MI 19bde BEQ 0x19c10> {}
<POP 19be0-19c10 Naked> Σ0 ↓
<Blob 0x19be0 [24] @> Δ-24 {[«24""»]}
<Const 0x19bec 0x5.2> Δ-2 {[«24""»]|[#5]}
<POP 19bf0-19bf2 StackAdj> Δ-4 {[«24""»]|[#5]|[-4-]}
<Lit 0x19bf2 24> {[«24""»]|[#5]|[$$Incorrect parameter type]}
<Call 0x19c06 0x14e18> {[«24""»]|[#5]|[$$Incorrect parameter type]}
_PopProgram(status : Byte; msg : String)
<POP 19c0c-19c10 StackAdj> Δ+30 {}
<POP 19c10-19c18 Naked> Σ0 ↓ ←0x19bc2
<MI 19c10 MOVEA.L (A6+0x8),A0> {}
<MI 19c14 MOVE.L (A6-0x4),(A0)> {}
<POP 19c18-19c20 Epilogue> Σ0
@ 19c20
_IPC_Init(void)
<POP 19c20-19c40 Body>
<POP 19c20-19c32 Prologue> Σ0 ↓
<POP 19c32-19c3c Naked> Σ0 ↓
<MI 19c32 MOVE.L #0x1fc00,0x1c222> {}
<POP 19c3c-19c40 Epilogue> Σ0
@ 19c4c
_FSCALL_1053e
<LVAR 0x020 4(r)>
<LVAR 0x01e 1(r)>
<LVAR 0x01c 1(r)>
<LVAR 0x018 4(r)>
<LVAR 0x014 4(r)>
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x004 @>
<POP 19c4c-19d42 Body>
<POP 19c4c-19c62 Prologue> Σ0 ↓
<POP 19c62-19c68 RegCacheLoad> Σ0 ↓
<POP 19c68-19d3a Naked> Σ0 ↓
<Call 0x19c68 0x19c20> {}
_IPC_Init(void)
<MI 19c6e MOVE.B (A6+0x1e),-(A7)> Δ-2 {[2, '(A6+0x1e)']}
<Call 0x19c72 0x19820> {[2, '(A6+0x1e)']}
_IPC_PutBool(a : Bool)
<MI 19c78 MOVE.B (A6+0x1c),(A7)> {[-2-]}
<Call 0x19c7c 0x19820> {[-2-]}
_IPC_PutBool(a : Bool)
<POP 19c82-19c84 StackAdj> Δ+2 {}
<Call 0x19c84 0x1991e> {}
_IPC_PutEnd(void)
<Blob 0x19c8a [4] @> Δ-4 {[«4""»]}
<Blob 0x19c8e [4] @> Δ-4 {[«4""»]|[«4""»]}
<Blob 0x19c92 [4] @> Δ-4 {[«4""»]|[«4""»]|[«4""»]}
<POP 19c96-19c98 StackAdj> Δ-8 {[«4""»]|[«4""»]|[«4""»]|[-8-]}
<Lit 0x19c98 12> {[«4""»]|[«4""»]|[«4""»]|[-4-]|[$$Running FRU_]}
<MI 19ca8 MOVE.L (A6+0x20),(A7)> {[«4""»]|[«4""»]|[«4""»]|[-4-]|[4, '(A6+0x20)']}
<POP 19ca2-19ca8 StackAdj> Δ-8 {[«4""»]|[«4""»]|[«4""»]|[-4-]|[4, '(A6+0x20)']|[-8-]}
<Call 0x19cac 0x10eda> {[«4""»]|[«4""»]|[«4""»]|[-4-]|[4, '(A6+0x20)']|[-8-]}
_StringDup(a : String) : String
<POP 19cb2-19cb4 StackAdj> Δ+4 {[«4""»]|[«4""»]|[«4""»]|[-4-]|[4, '(A6+0x20)']|[-4-]}
<Call 0x19cb4 0x10f2c> {[«4""»]|[«4""»]|[«4""»]|[-4-]|[4, '(A6+0x20)']|[-4-]}
_StringCat2(a, b : String) : String
<POP 19cba-19cbc StackAdj> Δ+8 {[«4""»]|[«4""»]|[«4""»]|[-4-]}
<Call 0x19cbc 0x154b0> {[«4""»]|[«4""»]|[«4""»]|[-4-]}
_WriteConsoleStringCrLf(str : String)
<POP 19cc2-19cc4 StackAdj> Δ+12 {[«4""»]}
<MI 19cc4 MOVE.L (A6+0x20),(A7)> {[4, '(A6+0x20)']}
<Const 0x19cc8 0x1.4> Δ-4 {[4, '(A6+0x20)']|[##1]}
<Const 0x19ccc 0x2.2> Δ-2 {[4, '(A6+0x20)']|[##1]|[#2]}
<Pointer.fp 0x19cd0 <LVAR -0x004 @>> Δ-4 {[4, '(A6+0x20)']|[##1]|[#2]|[@@-4]}
<Call 0x19cd4 0x1475e> {[4, '(A6+0x20)']|[##1]|[#2]|[@@-4]}
_PushProgram(a : String; b : String; MOD c : B; VAR d : Bool)
<POP 19cda-19cde StackAdj> Δ+14 {}
<Call 0x19cde 0x19c20> {}
_IPC_Init(void)
<MI 19ce4 MOVEA.L (A6+0x18),A0> {}
<MI 19ce8 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x19cea 0x19a8a> {[4, '^(A0)']}
_IPC_GetBool() : Bool
<POP 19cf0-19cf2 StackAdj> Δ+4 {}
<MI 19cf2 MOVEA.L (A6+0x14),A0> {}
<MI 19cf6 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x19cf8 0x19b0c> {[4, '^(A0)']}
_IPC_GetString(VAR retval : String)
<POP 19cfe-19d00 StackAdj> Δ+4 {}
<MI 19d00 MOVEA.L (A6+0x10),A0> {}
<MI 19d04 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x19d06 0x19b0c> {[4, '^(A0)']}
_IPC_GetString(VAR retval : String)
<POP 19d0c-19d0e StackAdj> Δ+4 {}
<MI 19d0e MOVEA.L (A6+0xc),A0> {}
<MI 19d12 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Const 0x19d14 0x0.4> Δ-4 {[4, '^(A0)']|[##0]}
<Const 0x19d16 0x0.4> Δ-4 {[4, '^(A0)']|[##0]|[##0]}
<Call 0x19d18 0x199da> {[4, '^(A0)']|[##0]|[##0]}
_IPC_GetVar(MOD dst : Pointer; length : Long ; type : Long)
<POP 19d1e-19d20 StackAdj> Δ+12 {}
<MI 19d20 MOVEA.L (A6+0x8),A0> {}
<MI 19d24 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Const 0x19d26 0x0.4> Δ-4 {[4, '^(A0)']|[##0]}
<Const 0x19d28 0x7.4> Δ-4 {[4, '^(A0)']|[##0]|[##7]}
<Call 0x19d2c 0x199da> {[4, '^(A0)']|[##0]|[##7]}
_IPC_GetVar(MOD dst : Pointer; length : Long ; type : Long)
<POP 19d32-19d34 StackAdj> Δ+12 {}
<Call 0x19d34 0x19962> {}
_IPC_GetEnd(void)
<POP 19d3a-19d42 Epilogue> Σ0
@ 19d42
_IPC_InitGetTwoBools(VAR a : Bool; VAR b : Bool)
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 19d42-19d88 Body>
<POP 19d42-19d58 Prologue> Σ0 ↓
<POP 19d58-19d80 Naked> Σ0 ↓
<Call 0x19d58 0x19c20> {}
_IPC_Init(void)
<MI 19d5e MOVEA.L (A6+0xc),A0> {}
<MI 19d62 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x19d64 0x19a8a> {[4, '^(A0)']}
_IPC_GetBool() : Bool
<POP 19d6a-19d6c StackAdj> Δ+4 {}
<MI 19d6c MOVEA.L (A6+0x8),A0> {}
<MI 19d70 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x19d72 0x19a8a> {[4, '^(A0)']}
_IPC_GetBool() : Bool
<POP 19d78-19d7a StackAdj> Δ+4 {}
<Call 0x19d7a 0x19962> {}
_IPC_GetEnd(void)
<POP 19d80-19d88 Epilogue> Σ0
@ 19d88
_?IPC_Puts(a : Bool; b : String; c : String; d: Bool; e : Long; f : Long)
<LVAR 0x01a 1(r)>
<LVAR 0x016 4(r)>
<LVAR 0x012 4(r)>
<LVAR 0x010 1(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 19d88-19e14 Body>
<POP 19d88-19d9e Prologue> Σ0 ↓
<POP 19d9e-19da2 RegCacheLoad> Σ0 ↓
<POP 19da2-19e0c Naked> Σ0 ↓
<Call 0x19da2 0x19c20> {}
_IPC_Init(void)
<MI 19da8 MOVE.B (A6+0x1a),-(A7)> Δ-2 {[2, '(A6+0x1a)']}
<Call 0x19dac 0x19820> {[2, '(A6+0x1a)']}
_IPC_PutBool(a : Bool)
<POP 19db2-19db4 StackAdj> Δ+2 {}
<MI 19db4 MOVE.L (A6+0x16),-(A7)> Δ-4 {[4, '(A6+0x16)']}
<Call 0x19db8 0x19874> {[4, '(A6+0x16)']}
_IPC_PutString(a : String)
<MI 19dbe MOVE.L (A6+0x12),(A7)> {[4, '(A6+0x12)']}
<Call 0x19dc2 0x19874> {[4, '(A6+0x12)']}
_IPC_PutString(a : String)
<POP 19dc8-19dca StackAdj> Δ+2 {[-2-]}
<MI 19dca MOVE.B (A6+0x10),(A7)> {[-2-]}
<MI 19dce PEA.L (A7)> Δ-4 {[-2-]|[4, '^(A7)']}
<Const 0x19dd0 0x0.4> Δ-4 {[-2-]|[4, '^(A7)']|[##0]}
<Const 0x19dd2 0x0.4> Δ-4 {[-2-]|[4, '^(A7)']|[##0]|[##0]}
<Call 0x19dd4 0x197a4> {[-2-]|[4, '^(A7)']|[##0]|[##0]}
_IPC_PutVar(src : Pointer; length : Long ; type : Long)
<POP 19dda-19dde StackAdj> Δ+10 {[-2-]|[-2-]}
<MI 19dde MOVE.L (A6+0xc),(A7)> {[4, '(A6+0xc)']}
<MI 19de2 MOVE.L (A6+0x8),-(A7)> Δ-4 {[4, '(A6+0xc)']|[4, '(A6+0x8)']}
<MI 19de6 PEA.L (A7)> Δ-4 {[4, '(A6+0xc)']|[4, '(A6+0x8)']|[4, '^(A7)']}
<Const 0x19de8 0x0.4> Δ-4 {[4, '(A6+0xc)']|[4, '(A6+0x8)']|[4, '^(A7)']|[##0]}
<Const 0x19dea 0x7.4> Δ-4 {[4, '(A6+0xc)']|[4, '(A6+0x8)']|[4, '^(A7)']|[##0]|[##7]}
<Call 0x19dee 0x197a4> {[4, '(A6+0xc)']|[4, '(A6+0x8)']|[4, '^(A7)']|[##0]|[##7]}
_IPC_PutVar(src : Pointer; length : Long ; type : Long)
<POP 19df4-19df8 StackAdj> Δ+20 {}
<Call 0x19df8 0x1991e> {}
_IPC_PutEnd(void)
<MI 19dfe CLR.B -(A7)> Δ-2 {[#0]}
<Const 0x19e00 0x1.4> Δ-4 {[#0]|[##1]}
<Call 0x19e04 0x14e18> {[#0]|[##1]}
_PopProgram(status : Byte; msg : String)
<POP 19e0a-19e0c StackAdj> Δ+6 {}
<POP 19e0c-19e14 Epilogue> Σ0
@ 19e14
_?ExecFRU(VAR a : L; VAR b : W; VAR c: L; VAR d : L; VAR e: B)
<LVAR 0x024 1(r)>
<LVAR 0x020 4(r)>
<LVAR 0x01e 1(r)>
<LVAR 0x01c 1(r)>
<LVAR 0x018 4(r)>
<LVAR 0x014 4(r)>
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x002 @>
<POP 19e14-19f1c Body>
<POP 19e14-19e2a Prologue> Σ0 ↓
<POP 19e2a-19e30 RegCacheLoad> Σ0 ↓
<POP 19e30-19f14 Naked> Σ0 ↓
<Call 0x19e30 0x19c20> {}
_IPC_Init(void)
<MI 19e36 MOVE.B (A6+0x24),-(A7)> Δ-2 {[2, '(A6+0x24)']}
<MI 19e3a PEA.L (A7)> Δ-4 {[2, '(A6+0x24)']|[4, '^(A7)']}
<Const 0x19e3c 0x0.4> Δ-4 {[2, '(A6+0x24)']|[4, '^(A7)']|[##0]}
<Const 0x19e3e 0x0.4> Δ-4 {[2, '(A6+0x24)']|[4, '^(A7)']|[##0]|[##0]}
<Call 0x19e40 0x197a4> {[2, '(A6+0x24)']|[4, '^(A7)']|[##0]|[##0]}
_IPC_PutVar(src : Pointer; length : Long ; type : Long)
<POP 19e46-19e48 StackAdj> Δ+12 {[2, '(A6+0x24)']}
<MI 19e48 MOVE.B (A6+0x1e),(A7)> {[-2-]}
<Call 0x19e4c 0x19820> {[-2-]}
_IPC_PutBool(a : Bool)
<MI 19e52 MOVE.B (A6+0x1c),(A7)> {[-2-]}
<Call 0x19e56 0x19820> {[-2-]}
_IPC_PutBool(a : Bool)
<POP 19e5c-19e5e StackAdj> Δ+2 {}
<Call 0x19e5e 0x1991e> {}
_IPC_PutEnd(void)
<Blob 0x19e64 [4] @> Δ-4 {[«4""»]}
<Blob 0x19e68 [4] @> Δ-4 {[«4""»]|[«4""»]}
<Blob 0x19e6c [4] @> Δ-4 {[«4""»]|[«4""»]|[«4""»]}
<POP 19e70-19e72 StackAdj> Δ-8 {[«4""»]|[«4""»]|[«4""»]|[-8-]}
<Lit 0x19e72 12> {[«4""»]|[«4""»]|[«4""»]|[-4-]|[$$Running FRU_]}
<MI 19e82 MOVE.L (A6+0x20),(A7)> {[«4""»]|[«4""»]|[«4""»]|[-4-]|[4, '(A6+0x20)']}
<POP 19e7c-19e82 StackAdj> Δ-8 {[«4""»]|[«4""»]|[«4""»]|[-4-]|[4, '(A6+0x20)']|[-8-]}
<Call 0x19e86 0x10eda> {[«4""»]|[«4""»]|[«4""»]|[-4-]|[4, '(A6+0x20)']|[-8-]}
_StringDup(a : String) : String
<POP 19e8c-19e8e StackAdj> Δ+4 {[«4""»]|[«4""»]|[«4""»]|[-4-]|[4, '(A6+0x20)']|[-4-]}
<Call 0x19e8e 0x10f2c> {[«4""»]|[«4""»]|[«4""»]|[-4-]|[4, '(A6+0x20)']|[-4-]}
_StringCat2(a, b : String) : String
<POP 19e94-19e96 StackAdj> Δ+8 {[«4""»]|[«4""»]|[«4""»]|[-4-]}
<Call 0x19e96 0x154b0> {[«4""»]|[«4""»]|[«4""»]|[-4-]}
_WriteConsoleStringCrLf(str : String)
<POP 19e9c-19e9e StackAdj> Δ+12 {[«4""»]}
<MI 19e9e MOVE.L (A6+0x20),(A7)> {[4, '(A6+0x20)']}
<Const 0x19ea2 0x1.4> Δ-4 {[4, '(A6+0x20)']|[##1]}
<Const 0x19ea6 0x2.2> Δ-2 {[4, '(A6+0x20)']|[##1]|[#2]}
<Pointer.fp 0x19eaa <LVAR -0x002 @>> Δ-4 {[4, '(A6+0x20)']|[##1]|[#2]|[@@-2]}
<Call 0x19eae 0x1475e> {[4, '(A6+0x20)']|[##1]|[#2]|[@@-2]}
_PushProgram(a : String; b : String; MOD c : B; VAR d : Bool)
<POP 19eb4-19eb8 StackAdj> Δ+14 {}
<Call 0x19eb8 0x19c20> {}
_IPC_Init(void)
<MI 19ebe MOVEA.L (A6+0x18),A0> {}
<MI 19ec2 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x19ec4 0x19a8a> {[4, '^(A0)']}
_IPC_GetBool() : Bool
<POP 19eca-19ecc StackAdj> Δ+4 {}
<MI 19ecc MOVEA.L (A6+0x14),A0> {}
<MI 19ed0 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x19ed2 0x19b0c> {[4, '^(A0)']}
_IPC_GetString(VAR retval : String)
<POP 19ed8-19eda StackAdj> Δ+4 {}
<MI 19eda MOVEA.L (A6+0x10),A0> {}
<MI 19ede PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x19ee0 0x19b0c> {[4, '^(A0)']}
_IPC_GetString(VAR retval : String)
<POP 19ee6-19ee8 StackAdj> Δ+4 {}
<MI 19ee8 MOVEA.L (A6+0xc),A0> {}
<MI 19eec PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Const 0x19eee 0x0.4> Δ-4 {[4, '^(A0)']|[##0]}
<Const 0x19ef0 0x0.4> Δ-4 {[4, '^(A0)']|[##0]|[##0]}
<Call 0x19ef2 0x199da> {[4, '^(A0)']|[##0]|[##0]}
_IPC_GetVar(MOD dst : Pointer; length : Long ; type : Long)
<POP 19ef8-19efa StackAdj> Δ+12 {}
<MI 19efa MOVEA.L (A6+0x8),A0> {}
<MI 19efe PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Const 0x19f00 0x0.4> Δ-4 {[4, '^(A0)']|[##0]}
<Const 0x19f02 0x7.4> Δ-4 {[4, '^(A0)']|[##0]|[##7]}
<Call 0x19f06 0x199da> {[4, '^(A0)']|[##0]|[##7]}
_IPC_GetVar(MOD dst : Pointer; length : Long ; type : Long)
<POP 19f0c-19f0e StackAdj> Δ+12 {}
<Call 0x19f0e 0x19962> {}
_IPC_GetEnd(void)
<POP 19f14-19f1c Epilogue> Σ0
@ 19f1c
_?IPC_GetStd(MOD a : Pointer; VAR b : Bool ; VAR c : Bool)
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 19f1c-19f7a Body>
<POP 19f1c-19f32 Prologue> Σ0 ↓
<POP 19f32-19f72 Naked> Σ0 ↓
<Call 0x19f32 0x19c20> {}
_IPC_Init(void)
<MI 19f38 MOVEA.L (A6+0x10),A0> {}
<MI 19f3c PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Const 0x19f3e 0x0.4> Δ-4 {[4, '^(A0)']|[##0]}
<Const 0x19f42 0x0.4> Δ-4 {[4, '^(A0)']|[##0]|[##0]}
<Call 0x19f46 0x199da> {[4, '^(A0)']|[##0]|[##0]}
_IPC_GetVar(MOD dst : Pointer; length : Long ; type : Long)
<POP 19f4c-19f50 StackAdj> Δ+12 {}
<MI 19f50 MOVEA.L (A6+0xc),A0> {}
<MI 19f54 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x19f56 0x19a8a> {[4, '^(A0)']}
_IPC_GetBool() : Bool
<POP 19f5c-19f5e StackAdj> Δ+4 {}
<MI 19f5e MOVEA.L (A6+0x8),A0> {}
<MI 19f62 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x19f64 0x19a8a> {[4, '^(A0)']}
_IPC_GetBool() : Bool
<POP 19f6a-19f6c StackAdj> Δ+4 {}
<Call 0x19f6c 0x19962> {}
_IPC_GetEnd(void)
<POP 19f72-19f7a Epilogue> Σ0
@ 19f7a
_FSCALL_1055c
<LVAR 0x028 1(r)>
<LVAR 0x024 4(r)>
<LVAR 0x022 1(r)>
<LVAR 0x020 1(r)>
<LVAR 0x01e 1(r)>
<LVAR 0x01c 1(r)>
<LVAR 0x018 4(r)>
<LVAR 0x014 4(r)>
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x002 @>
<POP 19f7a-1a08c Body>
<POP 19f7a-19f90 Prologue> Σ0 ↓
<POP 19f90-19f9c RegCacheLoad> Σ0 ↓
<POP 19f9c-1a084 Naked> Σ0 ↓
<Call 0x19f9c 0x19c20> {}
_IPC_Init(void)
<MI 19fa2 MOVE.B (A6+0x28),-(A7)> Δ-2 {[2, '(A6+0x28)']}
<MI 19fa6 PEA.L (A7)> Δ-4 {[2, '(A6+0x28)']|[4, '^(A7)']}
<Const 0x19fa8 0x0.4> Δ-4 {[2, '(A6+0x28)']|[4, '^(A7)']|[##0]}
<Const 0x19faa 0x0.4> Δ-4 {[2, '(A6+0x28)']|[4, '^(A7)']|[##0]|[##0]}
<Call 0x19fac 0x197a4> {[2, '(A6+0x28)']|[4, '^(A7)']|[##0]|[##0]}
_IPC_PutVar(src : Pointer; length : Long ; type : Long)
<POP 19fb2-19fb4 StackAdj> Δ+12 {[2, '(A6+0x28)']}
<MI 19fb4 MOVE.B (A6+0x22),(A7)> {[-2-]}
<Call 0x19fb8 0x19820> {[-2-]}
_IPC_PutBool(a : Bool)
<MI 19fba MOVE.B (A6+0x20),(A7)> {[-2-]}
<Call 0x19fbe 0x19820> {[-2-]}
_IPC_PutBool(a : Bool)
<MI 19fc0 MOVE.B (A6+0x1e),(A7)> {[-2-]}
<Call 0x19fc4 0x19820> {[-2-]}
_IPC_PutBool(a : Bool)
<MI 19fc6 MOVE.B (A6+0x1c),(A7)> {[-2-]}
<Call 0x19fca 0x19820> {[-2-]}
_IPC_PutBool(a : Bool)
<POP 19fcc-19fce StackAdj> Δ+2 {}
<Call 0x19fce 0x1991e> {}
_IPC_PutEnd(void)
<Blob 0x19fd4 [4] @> Δ-4 {[«4""»]}
<Blob 0x19fd8 [4] @> Δ-4 {[«4""»]|[«4""»]}
<Blob 0x19fdc [4] @> Δ-4 {[«4""»]|[«4""»]|[«4""»]}
<POP 19fe0-19fe2 StackAdj> Δ-8 {[«4""»]|[«4""»]|[«4""»]|[-8-]}
<Lit 0x19fe2 12> {[«4""»]|[«4""»]|[«4""»]|[-4-]|[$$Running FRU_]}
<MI 19ff2 MOVE.L (A6+0x24),(A7)> {[«4""»]|[«4""»]|[«4""»]|[-4-]|[4, '(A6+0x24)']}
<POP 19fec-19ff2 StackAdj> Δ-8 {[«4""»]|[«4""»]|[«4""»]|[-4-]|[4, '(A6+0x24)']|[-8-]}
<Call 0x19ff6 0x10eda> {[«4""»]|[«4""»]|[«4""»]|[-4-]|[4, '(A6+0x24)']|[-8-]}
_StringDup(a : String) : String
<POP 19ffc-19ffe StackAdj> Δ+4 {[«4""»]|[«4""»]|[«4""»]|[-4-]|[4, '(A6+0x24)']|[-4-]}
<Call 0x19ffe 0x10f2c> {[«4""»]|[«4""»]|[«4""»]|[-4-]|[4, '(A6+0x24)']|[-4-]}
_StringCat2(a, b : String) : String
<POP 1a004-1a006 StackAdj> Δ+8 {[«4""»]|[«4""»]|[«4""»]|[-4-]}
<Call 0x1a006 0x154b0> {[«4""»]|[«4""»]|[«4""»]|[-4-]}
_WriteConsoleStringCrLf(str : String)
<POP 1a00c-1a00e StackAdj> Δ+12 {[«4""»]}
<MI 1a00e MOVE.L (A6+0x24),(A7)> {[4, '(A6+0x24)']}
<Const 0x1a012 0x1.4> Δ-4 {[4, '(A6+0x24)']|[##1]}
<Const 0x1a016 0x2.2> Δ-2 {[4, '(A6+0x24)']|[##1]|[#2]}
<Pointer.fp 0x1a01a <LVAR -0x002 @>> Δ-4 {[4, '(A6+0x24)']|[##1]|[#2]|[@@-2]}
<Call 0x1a01e 0x1475e> {[4, '(A6+0x24)']|[##1]|[#2]|[@@-2]}
_PushProgram(a : String; b : String; MOD c : B; VAR d : Bool)
<POP 1a024-1a028 StackAdj> Δ+14 {}
<Call 0x1a028 0x19c20> {}
_IPC_Init(void)
<MI 1a02e MOVEA.L (A6+0x18),A0> {}
<MI 1a032 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x1a034 0x19a8a> {[4, '^(A0)']}
_IPC_GetBool() : Bool
<POP 1a03a-1a03c StackAdj> Δ+4 {}
<MI 1a03c MOVEA.L (A6+0x14),A0> {}
<MI 1a040 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x1a042 0x19b0c> {[4, '^(A0)']}
_IPC_GetString(VAR retval : String)
<POP 1a048-1a04a StackAdj> Δ+4 {}
<MI 1a04a MOVEA.L (A6+0x10),A0> {}
<MI 1a04e PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x1a050 0x19b0c> {[4, '^(A0)']}
_IPC_GetString(VAR retval : String)
<POP 1a056-1a058 StackAdj> Δ+4 {}
<MI 1a058 MOVEA.L (A6+0xc),A0> {}
<MI 1a05c PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Const 0x1a05e 0x0.4> Δ-4 {[4, '^(A0)']|[##0]}
<Const 0x1a060 0x0.4> Δ-4 {[4, '^(A0)']|[##0]|[##0]}
<Call 0x1a062 0x199da> {[4, '^(A0)']|[##0]|[##0]}
_IPC_GetVar(MOD dst : Pointer; length : Long ; type : Long)
<POP 1a068-1a06a StackAdj> Δ+12 {}
<MI 1a06a MOVEA.L (A6+0x8),A0> {}
<MI 1a06e PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Const 0x1a070 0x0.4> Δ-4 {[4, '^(A0)']|[##0]}
<Const 0x1a072 0x7.4> Δ-4 {[4, '^(A0)']|[##0]|[##7]}
<Call 0x1a076 0x199da> {[4, '^(A0)']|[##0]|[##7]}
_IPC_GetVar(MOD dst : Pointer; length : Long ; type : Long)
<POP 1a07c-1a07e StackAdj> Δ+12 {}
<Call 0x1a07e 0x19962> {}
_IPC_GetEnd(void)
<POP 1a084-1a08c Epilogue> Σ0
@ 1a08c
_?IPC_GetVar4xBool(VAR a : Pointer; VAR b : Bool ; VAR c : Bool; VAR d: Bool; VAR e: Bool)
<LVAR 0x018 4(r)>
<LVAR 0x014 4(r)>
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 1a08c-1a0fc Body>
<POP 1a08c-1a0a2 Prologue> Σ0 ↓
<POP 1a0a2-1a0a8 RegCacheLoad> Σ0 ↓
<POP 1a0a8-1a0f4 Naked> Σ0 ↓
<Call 0x1a0a8 0x19c20> {}
_IPC_Init(void)
<MI 1a0ae MOVEA.L (A6+0x18),A0> {}
<MI 1a0b2 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Const 0x1a0b4 0x0.4> Δ-4 {[4, '^(A0)']|[##0]}
<Const 0x1a0b8 0x0.4> Δ-4 {[4, '^(A0)']|[##0]|[##0]}
<Call 0x1a0bc 0x199da> {[4, '^(A0)']|[##0]|[##0]}
_IPC_GetVar(MOD dst : Pointer; length : Long ; type : Long)
<POP 1a0c2-1a0c6 StackAdj> Δ+12 {}
<MI 1a0c6 MOVEA.L (A6+0x14),A0> {}
<MI 1a0ca PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x1a0cc 0x19a8a> {[4, '^(A0)']}
_IPC_GetBool() : Bool
<POP 1a0ce-1a0d0 StackAdj> Δ+4 {}
<MI 1a0d0 MOVEA.L (A6+0x10),A0> {}
<MI 1a0d4 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x1a0d6 0x19a8a> {[4, '^(A0)']}
_IPC_GetBool() : Bool
<POP 1a0d8-1a0da StackAdj> Δ+4 {}
<MI 1a0da MOVEA.L (A6+0xc),A0> {}
<MI 1a0de PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x1a0e0 0x19a8a> {[4, '^(A0)']}
_IPC_GetBool() : Bool
<POP 1a0e2-1a0e4 StackAdj> Δ+4 {}
<MI 1a0e4 MOVEA.L (A6+0x8),A0> {}
<MI 1a0e8 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x1a0ea 0x19a8a> {[4, '^(A0)']}
_IPC_GetBool() : Bool
<POP 1a0ec-1a0ee StackAdj> Δ+4 {}
<Call 0x1a0ee 0x19962> {}
_IPC_GetEnd(void)
<POP 1a0f4-1a0fc Epilogue> Σ0
@ 1a43a
<LVAR 0x00c 4(rw)>
<LVAR 0x008 4(r)>
<POP 1a43a-1a482 Body>
<POP 1a43a-1a450 Prologue> Σ0 ↓
<POP 1a450-1a456 Naked> Σ0 Δ-4 ↓
<MI 1a450 MOVE.L (A6+0x8),-(A7)> Δ-4 {[4, '(A6+0x8)']}
<MI 1a454 MOVEQ.L #0x01,D7> {[4, '(A6+0x8)']}
<POP 1a456-1a45a Naked> Σ-4 ↓ →0x1a478 ←0x1a45a
<MI 1a456 CMP.L (A7),D7> {[-4-]}
<MI 1a458 BGT 0x1a478> {[-4-]}
<POP 1a45a-1a478 Naked> Σ-4 ↓ →0x1a456
<MI 1a45a MOVEA.L (A6+0xc),A4> {[-4-]}
<MI 1a45e CLR.L D0> {[-4-]}
<MI 1a460 MOVE.B (A4),D0> {[-4-]}
<MI 1a462 MOVE.W D0,D6> {[-4-]}
<MI 1a464 MOVE.B (A4+0x1),(A4)> {[-4-]}
<POP 0x1a468 LimitCheck 0x0 ≤ D6 ≤ 0xff> {[-4-]}
<MI 1a46c MOVE.B D6,(A4+0x1)> {[-4-]}
<MI 1a470 ADDQ.L #0x2,(A6+0xc)> {[-4-]}
<MI 1a474 ADDQ.L #0x1,D7> {[-4-]}
<MI 1a476 BVC 0x1a456> {[-4-]}
<POP 1a478-1a47a Naked> Σ-4 Δ+4 ↓ ←0x1a456
<POP 1a478-1a47a StackAdj> Δ+4 {}
<POP 1a47a-1a482 Epilogue> Σ0
@ 1a482
<LVAR 0x008 4(r)>
<POP 1a482-1a4be Body>
<POP 1a482-1a498 Prologue> Σ0 ↓
<POP 1a498-1a4b6 Naked> Σ0 ↓
<MI 1a498 MOVEA.L (A6+0x8),A0> {}
<MI 1a49c MOVE.W (A0),D7> {}
<MI 1a49e MOVE.W (A0+0x28),D6> {}
<MI 1a4a2 MOVEA.L A0,A1> {}
<MI 1a4a4 MOVE.L A1,-(A7)> Δ-4 {[4, 'A1']}
<Const 0x1a4a6 0xc9.4> Δ-4 {[4, 'A1']|[##201]}
<Call 0x1a4aa 0x1a43a> {[4, 'A1']|[##201]}
<POP 1a4ae-1a4b0 StackAdj> Δ+8 {}
<MI 1a4b0 MOVE.W D7,(A0)> {}
<MI 1a4b2 MOVE.W D6,(A0+0x28)> {}
<POP 1a4b6-1a4be Epilogue> Σ0
@ 1a4be
_Read_ConfigFile(name: String; version: Long; dst: Pointer; VAR status: Bool)
<LVAR 0x014 4(r)>
<LVAR 0x010 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x012 4(r)>
<LVAR -0x016 @ 4(r)>
<LVAR -0x018 @ 1(r)>
<POP 1a4be-1a616 Body> Δ-4
<POP 1a4be-1a4d4 Prologue> Σ0 ↓
<POP 1a4d4-1a4e8 RegCacheLoad> Σ0 ↓
<POP 1a4e8-1a4f6 Naked> Σ0 ↓ →0x1a524
<MI 1a4e8 MOVEA.L (A6+0x8),A0> {}
<MI 1a4ec CLR.B (A0)> {}
<MI 1a4ee MOVE.L (A6+0x10),D0> {}
<MI 1a4f2 CMP.L #0x03,D0> {}
<MI 1a4f4 BEQ 0x1a524> {}
<POP 1a4f6-1a524 Naked> Σ0 →0x1a60e
<Blob 0x1a4f6 [46] @> Δ-46 {[«46""»]}
<POP 1a502-1a504 StackAdj> Δ-4 {[«46""»]|[-4-]}
<Lit 0x1a504 46> {[«46""»]|[$$Program expects obsolete configuration version]}
<Call 0x1a516 0x154b0> {[«46""»]|[$$Program expects obsolete configuration version]}
_WriteConsoleStringCrLf(str : String)
<POP 1a51c-1a520 StackAdj> Δ+50 {}
<MI 1a520 BRA 0x1a60e> {}
<POP 1a524-1a54c Naked> Σ0 ↓ →0x1a60e ←0x1a4e8
<MI 1a524 MOVEA.L (A6+0xc),A0> {}
<MI 1a526 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 1a528 MOVE.L (A7)+,D6> Δ+4 {}
<MI 1a52a CLR.L (A6-0x12)> {}
<MI 1a52c MOVE.L (A6+0x14),-(A7)> Δ-4 {[4, '(A6+0x14)']}
<MI 1a530 CLR.B -(A7)> Δ-2 {[4, '(A6+0x14)']|[#0]}
<Const 0x1a532 0x1.2> Δ-2 {[4, '(A6+0x14)']|[#0]|[#1]}
<Const 0x1a534 0x0.4> Δ-4 {[4, '(A6+0x14)']|[#0]|[#1]|[##0]}
<Pointer.fp 0x1a538 <LVAR -0x018 @ 1(r)>> Δ-4 {[4, '(A6+0x14)']|[#0]|[#1]|[##0]|[@@-24]}
<Pointer.fp 0x1a53a <LVAR -0x016 @ 4(r)>> Δ-4 {[4, '(A6+0x14)']|[#0]|[#1]|[##0]|[@@-24]|[@@-22]}
<Call 0x1a53e 0x138b4> {[4, '(A6+0x14)']|[#0]|[#1]|[##0]|[@@-24]|[@@-22]}
_OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
<POP 1a544-1a546 StackAdj> Δ+20 {}
<MI 1a546 TST.B (A6-0x18)> {}
<MI 1a548 BNE 0x1a60e> {}
<POP 1a54c-1a550 Naked> Σ0 Δ-4 ↓
<MI 1a54c MOVE.L (A6-0x12),-(A7)> Δ-4 {[4, '(A6-0x12)']}
<MI 1a54e MOVEQ.L #0x00,D5> {[4, '(A6-0x12)']}
<POP 1a550-1a556 Naked> Σ-4 ↓ →0x1a5e4 ←0x1a5de
<MI 1a550 CMP.L (A7),D5> {[-4-]}
<MI 1a552 BGT 0x1a5e4> {[-4-]}
<POP 1a556-1a55a Naked> Σ-4 ↓ →0x1a562
<MI 1a556 CMP.L (A6-0x12),D5> {[-4-]}
<MI 1a558 BNE 0x1a562> {[-4-]}
<POP 1a55a-1a562 Naked> Σ-4 →0x1a568
<MI 1a55a MOVE.L #0xc9,D7> {[-4-]}
<MI 1a560 BRA 0x1a568> {[-4-]}
<POP 1a562-1a568 Naked> Σ-4 ↓ ←0x1a556
<MI 1a562 MOVE.L #0x200,D7> {[-4-]}
<POP 1a568-1a5a2 Naked> Σ-4 ↓ →0x1a5de ←0x1a55a
<MI 1a568 MOVE.L (A6-0x16),-(A7)> Δ-4 {[-4-]|[4, '(A6-0x16)']}
<POP 0x1a56c LimitCheck 0x0 ≤ D5 ≤ 0x4000> {[-4-]|[4, '(A6-0x16)']}
<MI 1a576 MOVE.W D5,-(A7)> Δ-2 {[-4-]|[4, '(A6-0x16)']|[2, 'D5']}
<MI 1a578 CLR.W -(A7)> Δ-2 {[-4-]|[4, '(A6-0x16)']|[2, 'D5']|[#0]}
<POP 0x1a57a LimitCheck 0x1 ≤ D7 ≤ 0x200> {[-4-]|[4, '(A6-0x16)']|[2, 'D5']|[#0]}
<MI 1a588 MOVE.W D7,-(A7)> Δ-2 {[-4-]|[4, '(A6-0x16)']|[2, 'D5']|[#0]|[2, 'D7']}
<Const 0x1a58a 0x2.2> Δ-2 {[-4-]|[4, '(A6-0x16)']|[2, 'D5']|[#0]|[2, 'D7']|[#2]}
<MI 1a58c MOVE.L D6,-(A7)> Δ-4 {[-4-]|[4, '(A6-0x16)']|[2, 'D5']|[#0]|[2, 'D7']|[#2]|[4, 'D6']}
<Pointer.fp 0x1a58e <LVAR -0x018 @ 1(r)>> Δ-4 {[-4-]|[4, '(A6-0x16)']|[2, 'D5']|[#0]|[2, 'D7']|[#2]|[4, 'D6']|[@@-24]}
<Call 0x1a590 0x13ae6> {[-4-]|[4, '(A6-0x16)']|[2, 'D5']|[#0]|[2, 'D7']|[#2]|[4, 'D6']|[@@-24]}
_ReadFile(file : File; w : W; x : W; a : W; b: B; c : L; d : L)
<POP 1a596-1a598 StackAdj> Δ+20 {[-4-]}
<MI 1a598 ADDI.L #0x00000400,D6> {[-4-]}
<MI 1a59e TST.L D5> {[-4-]}
<MI 1a5a0 BNE 0x1a5de> {[-4-]}
<POP 1a5a2-1a5aa Naked> Σ-4 ↓ →0x1a5de
<MI 1a5a2 MOVEA.L (A6+0xc),A0> {[-4-]}
<MI 1a5a4 MOVE.W (A0),D0> {[-4-]}
<MI 1a5a6 CMP.W #0x03,D0> {[-4-]}
<MI 1a5a8 BEQ 0x1a5de> {[-4-]}
<POP 1a5aa-1a5de Naked> Σ-4 Δ+4 →0x1a5f6
<Blob 0x1a5aa [32] @> Δ-32 {[-4-]|[«32""»]}
<POP 1a5bc-1a5be StackAdj> Δ-4 {[-4-]|[«32""»]|[-4-]}
<Lit 0x1a5be 31> {[-4-]|[«32""»]|[$$Incorrect configuration version]}
<Call 0x1a5d0 0x154b0> {[-4-]|[«32""»]|[$$Incorrect configuration version]}
_WriteConsoleStringCrLf(str : String)
<POP 1a5d6-1a5da StackAdj> Δ+36 {[-4-]}
<POP 1a5da-1a5dc StackAdj> Δ+4 {}
<MI 1a5dc BRA 0x1a5f6> {}
<POP 1a5de-1a5e4 Naked> Σ-4 ↓ →0x1a550 ←0x1a568 ←0x1a5a2
<MI 1a5de ADDQ.L #0x1,D5> {[-4-]}
<MI 1a5e0 BVC 0x1a550> {[-4-]}
<POP 1a5e4-1a5f6 Naked> Σ-4 Δ+4 ↓ ←0x1a550
<POP 1a5e4-1a5e6 StackAdj> Δ+4 {}
<MI 1a5e6 MOVEA.L (A6+0xc),A0> {}
<MI 1a5e8 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x1a5ea 0x1a482> {[4, '^(A0)']}
<POP 1a5ee-1a5f0 StackAdj> Δ+4 {}
<MI 1a5f0 MOVEA.L (A6+0x8),A0> {}
<MI 1a5f4 MOVE.B #0x01,(A0)> {}
<POP 1a5f6-1a60e Naked> Σ0 ↓ ←0x1a5aa
<MI 1a5f6 CLR.B -(A7)> Δ-2 {[#0]}
<Const 0x1a5f8 0x2.2> Δ-2 {[#0]|[#2]}
<Const 0x1a5fa 0x1.4> Δ-4 {[#0]|[#2]|[##1]}
<Pointer.fp 0x1a5fe <LVAR -0x018 @ 1(r)>> Δ-4 {[#0]|[#2]|[##1]|[@@-24]}
<Pointer.fp 0x1a600 <LVAR -0x016 @ 4(r)>> Δ-4 {[#0]|[#2]|[##1]|[@@-24]|[@@-22]}
<Call 0x1a604 0x13c8a> {[#0]|[#2]|[##1]|[@@-24]|[@@-22]}
_CloseFile(a : L; VAR status : B; VAR file : File)
<POP 1a60a-1a60e StackAdj> Δ+16 {}
<POP 1a60e-1a616 Epilogue> Σ0 ←0x1a4f6 ←0x1a524
@ 1a616
_Write_ConfigFile(name: String; dst: Pointer)
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x012 4(r)>
<LVAR -0x016 @ 4(r)>
<LVAR -0x018 @>
<POP 1a616-1a6e8 Body>
<POP 1a616-1a62c Prologue> Σ0 ↓
<POP 1a62c-1a63c RegCacheLoad> Σ0 ↓
<POP 1a63c-1a66e Naked> Σ0 Δ-4 ↓
<MI 1a63c MOVEA.L (A6+0x8),A0> {}
<MI 1a640 MOVE.W #0x3,(A0)> {}
<MI 1a644 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x1a646 0x1a482> {[4, '^(A0)']}
<MI 1a64a MOVE.L A0,(A7)> {[4, 'A0']}
<MI 1a64c MOVE.L (A7)+,D6> Δ+4 {}
<MI 1a64e CLR.L (A6-0x12)> {}
<MI 1a650 MOVE.L (A6+0xc),-(A7)> Δ-4 {[4, '(A6+0xc)']}
<Const 0x1a654 0x1.2> Δ-2 {[4, '(A6+0xc)']|[#1]}
<Const 0x1a658 0x2.2> Δ-2 {[4, '(A6+0xc)']|[#1]|[#2]}
<MI 1a65a MOVE.L (A6-0x12),-(A7)> Δ-4 {[4, '(A6+0xc)']|[#1]|[#2]|[4, '(A6-0x12)']}
<MI 1a65c ADDQ.L #0x1,(A7)> {[4, '(A6+0xc)']|[#1]|[#2]|[-4-]}
<Pointer.fp 0x1a65e <LVAR -0x018 @>> Δ-4 {[4, '(A6+0xc)']|[#1]|[#2]|[-4-]|[@@-24]}
<Pointer.fp 0x1a660 <LVAR -0x016 @ 4(r)>> Δ-4 {[4, '(A6+0xc)']|[#1]|[#2]|[-4-]|[@@-24]|[@@-22]}
<Call 0x1a662 0x138b4> {[4, '(A6+0xc)']|[#1]|[#2]|[-4-]|[@@-24]|[@@-22]}
_OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
<POP 1a668-1a66a StackAdj> Δ+16 {[4, '(A6+0xc)']}
<MI 1a66a MOVE.L (A6-0x12),(A7)> {[4, '(A6-0x12)']}
<MI 1a66c MOVEQ.L #0x00,D5> {[4, '(A6-0x12)']}
<POP 1a66e-1a672 Naked> Σ-4 ↓ →0x1a6be ←0x1a684
<MI 1a66e CMP.L (A7),D5> {[-4-]}
<MI 1a670 BGT 0x1a6be> {[-4-]}
<POP 1a672-1a676 Naked> Σ-4 ↓ →0x1a67e
<MI 1a672 CMP.L (A6-0x12),D5> {[-4-]}
<MI 1a674 BNE 0x1a67e> {[-4-]}
<POP 1a676-1a67e Naked> Σ-4 →0x1a684
<MI 1a676 MOVE.L #0xc9,D7> {[-4-]}
<MI 1a67c BRA 0x1a684> {[-4-]}
<POP 1a67e-1a684 Naked> Σ-4 ↓ ←0x1a672
<MI 1a67e MOVE.L #0x200,D7> {[-4-]}
<POP 1a684-1a6be Naked> Σ-4 ↓ →0x1a66e ←0x1a676
<MI 1a684 MOVE.L (A6-0x16),-(A7)> Δ-4 {[-4-]|[4, '(A6-0x16)']}
<POP 0x1a686 LimitCheck 0x0 ≤ D5 ≤ 0x4000> {[-4-]|[4, '(A6-0x16)']}
<MI 1a690 MOVE.W D5,-(A7)> Δ-2 {[-4-]|[4, '(A6-0x16)']|[2, 'D5']}
<MI 1a692 CLR.W -(A7)> Δ-2 {[-4-]|[4, '(A6-0x16)']|[2, 'D5']|[#0]}
<POP 0x1a694 LimitCheck 0x1 ≤ D7 ≤ 0x200> {[-4-]|[4, '(A6-0x16)']|[2, 'D5']|[#0]}
<MI 1a6a2 MOVE.W D7,-(A7)> Δ-2 {[-4-]|[4, '(A6-0x16)']|[2, 'D5']|[#0]|[2, 'D7']}
<Const 0x1a6a4 0x2.2> Δ-2 {[-4-]|[4, '(A6-0x16)']|[2, 'D5']|[#0]|[2, 'D7']|[#2]}
<MI 1a6a6 MOVE.L D6,-(A7)> Δ-4 {[-4-]|[4, '(A6-0x16)']|[2, 'D5']|[#0]|[2, 'D7']|[#2]|[4, 'D6']}
<Pointer.fp 0x1a6a8 <LVAR -0x018 @>> Δ-4 {[-4-]|[4, '(A6-0x16)']|[2, 'D5']|[#0]|[2, 'D7']|[#2]|[4, 'D6']|[@@-24]}
<Call 0x1a6aa 0x13bb8> {[-4-]|[4, '(A6-0x16)']|[2, 'D5']|[#0]|[2, 'D7']|[#2]|[4, 'D6']|[@@-24]}
_WriteFile(file : File; y : W; x : W; a : W; b: B; c: L; d: L)
<POP 1a6b0-1a6b4 StackAdj> Δ+20 {[-4-]}
<MI 1a6b4 ADDI.L #0x00000400,D6> {[-4-]}
<MI 1a6ba ADDQ.L #0x1,D5> {[-4-]}
<MI 1a6bc BVC 0x1a66e> {[-4-]}
<POP 1a6be-1a6e0 Naked> Σ-4 Δ+4 ↓ ←0x1a66e
<POP 1a6be-1a6c0 StackAdj> Δ+2 {[-2-]}
<MI 1a6c0 CLR.B (A7)> {[-2-]}
<Const 0x1a6c2 0x2.2> Δ-2 {[-2-]|[#2]}
<Const 0x1a6c4 0x1.4> Δ-4 {[-2-]|[#2]|[##1]}
<Pointer.fp 0x1a6c8 <LVAR -0x018 @>> Δ-4 {[-2-]|[#2]|[##1]|[@@-24]}
<Pointer.fp 0x1a6ca <LVAR -0x016 @ 4(r)>> Δ-4 {[-2-]|[#2]|[##1]|[@@-24]|[@@-22]}
<Call 0x1a6cc 0x13c8a> {[-2-]|[#2]|[##1]|[@@-24]|[@@-22]}
_CloseFile(a : L; VAR status : B; VAR file : File)
<POP 1a6d2-1a6d4 StackAdj> Δ+16 {}
<MI 1a6d4 MOVEA.L (A6+0x8),A0> {}
<MI 1a6d8 PEA.L (A0)> Δ-4 {[4, '^(A0)']}
<Call 0x1a6da 0x1a482> {[4, '^(A0)']}
<POP 1a6de-1a6e0 StackAdj> Δ+4 {}
<POP 1a6e0-1a6e8 Epilogue> Σ0
@ 1a6e8
_Read_HARDWARE.M200_CONFIG(a : Pointer; VAR status : Bool)
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<LVAR -0x006 @ 4(rw)>
<LVAR -0x012 @ 4(r)>
<LVAR -0x014 @ 1(r)>
<POP 1a6e8-1a7b6 Body>
<POP 1a6e8-1a6fe Prologue> Σ0 ↓
<POP 1a6fe-1a710 RegCacheLoad> Σ0 ↓
<POP 1a710-1a75c Naked> Σ0 ↓ →0x1a7a4
<Blob 0x1a710 [20] @> Δ-20 {[«20""»]}
<POP 1a71c-1a71e StackAdj> Δ-4 {[«20""»]|[-4-]}
<Lit 0x1a71e 20> {[«20""»]|[$$HARDWARE.M200_CONFIG]}
<MI 1a72e MOVE.L (A7)+,(A6-0x6)> Δ+4 {[«20""»]}
<POP 1a730-1a732 StackAdj> Δ+20 {}
<MI 1a732 MOVEA.L (A6+0x8),A0> {}
<MI 1a736 CLR.B (A0)> {}
<MI 1a738 MOVEA.L (A6+0xc),A1> {}
<MI 1a73c MOVE.L A1,-(A7)> Δ-4 {[4, 'A1']}
<MI 1a73e MOVE.L (A7)+,D7> Δ+4 {}
<MI 1a740 MOVEQ.L #0x03,D6> {}
<MI 1a742 MOVE.L (A6-0x6),-(A7)> Δ-4 {[4, '(A6-0x6)']}
<MI 1a744 CLR.B -(A7)> Δ-2 {[4, '(A6-0x6)']|[#0]}
<Const 0x1a746 0x1.2> Δ-2 {[4, '(A6-0x6)']|[#0]|[#1]}
<Const 0x1a748 0x0.4> Δ-4 {[4, '(A6-0x6)']|[#0]|[#1]|[##0]}
<Pointer.fp 0x1a74c <LVAR -0x014 @ 1(r)>> Δ-4 {[4, '(A6-0x6)']|[#0]|[#1]|[##0]|[@@-20]}
<Pointer.fp 0x1a74e <LVAR -0x012 @ 4(r)>> Δ-4 {[4, '(A6-0x6)']|[#0]|[#1]|[##0]|[@@-20]|[@@-18]}
<Call 0x1a750 0x138b4> {[4, '(A6-0x6)']|[#0]|[#1]|[##0]|[@@-20]|[@@-18]}
_OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
<POP 1a756-1a758 StackAdj> Δ+20 {}
<MI 1a758 TST.B (A6-0x14)> {}
<MI 1a75a BNE 0x1a7a4> {}
<POP 1a75c-1a7a4 Naked> Σ0 ↓
<MI 1a75c MOVE.L (A6-0x12),-(A7)> Δ-4 {[4, '(A6-0x12)']}
<MI 1a75e CLR.W -(A7)> Δ-2 {[4, '(A6-0x12)']|[#0]}
<MI 1a760 CLR.W -(A7)> Δ-2 {[4, '(A6-0x12)']|[#0]|[#0]}
<POP 0x1a762 LimitCheck 0x1 ≤ D6 ≤ 0x200> {[4, '(A6-0x12)']|[#0]|[#0]}
<MI 1a770 MOVE.W D6,-(A7)> Δ-2 {[4, '(A6-0x12)']|[#0]|[#0]|[2, 'D6']}
<Const 0x1a772 0x2.2> Δ-2 {[4, '(A6-0x12)']|[#0]|[#0]|[2, 'D6']|[#2]}
<MI 1a774 MOVE.L D7,-(A7)> Δ-4 {[4, '(A6-0x12)']|[#0]|[#0]|[2, 'D6']|[#2]|[4, 'D7']}
<Pointer.fp 0x1a776 <LVAR -0x014 @ 1(r)>> Δ-4 {[4, '(A6-0x12)']|[#0]|[#0]|[2, 'D6']|[#2]|[4, 'D7']|[@@-20]}
<Call 0x1a778 0x13ae6> {[4, '(A6-0x12)']|[#0]|[#0]|[2, 'D6']|[#2]|[4, 'D7']|[@@-20]}
_ReadFile(file : File; w : W; x : W; a : W; b: B; c : L; d : L)
<POP 1a77e-1a782 StackAdj> Δ+18 {[-2-]}
<MI 1a782 CLR.B (A7)> {[-2-]}
<Const 0x1a784 0x2.2> Δ-2 {[-2-]|[#2]}
<Const 0x1a786 0x1.4> Δ-4 {[-2-]|[#2]|[##1]}
<Pointer.fp 0x1a78a <LVAR -0x014 @ 1(r)>> Δ-4 {[-2-]|[#2]|[##1]|[@@-20]}
<Pointer.fp 0x1a78c <LVAR -0x012 @ 4(r)>> Δ-4 {[-2-]|[#2]|[##1]|[@@-20]|[@@-18]}
<Call 0x1a78e 0x13c8a> {[-2-]|[#2]|[##1]|[@@-20]|[@@-18]}
_CloseFile(a : L; VAR status : B; VAR file : File)
<POP 1a794-1a798 StackAdj> Δ+12 {[-2-]|[#2]}
<MI 1a798 MOVE.L D7,(A7)> {[4, 'D7']}
<MI 1a79a MOVE.L D6,-(A7)> Δ-4 {[4, 'D7']|[4, 'D6']}
<Call 0x1a79c 0x1a43a> {[4, 'D7']|[4, 'D6']}
<POP 1a7a0-1a7a2 StackAdj> Δ+8 {}
<MI 1a7a2 MOVE.B #0x01,(A0)> {}
<POP 1a7a4-1a7ae Naked> Σ0 ↓ ←0x1a710
<Pointer.fp 0x1a7a4 <LVAR -0x006 @ 4(rw)>> Δ-4 {[@@-6]}
<Call 0x1a7a6 0x10d36> {[@@-6]}
_FreeString(VAR a : String)
<POP 1a7ac-1a7ae StackAdj> Δ+4 {}
<POP 1a7ae-1a7b6 Epilogue> Σ0
@ 1a7b6
_Write_HARDWARE.M200_CONFIG(a : Pointer)
<LVAR 0x008 4(r)>
<LVAR -0x006 @ 4(rw)>
<LVAR -0x012 @ 4(r)>
<LVAR -0x014 @>
<POP 1a7b6-1a884 Body>
<POP 1a7b6-1a7cc Prologue> Σ0 ↓
<POP 1a7cc-1a7de RegCacheLoad> Σ0 ↓
<POP 1a7de-1a87c Naked> Σ0 ↓
<Blob 0x1a7de [20] @> Δ-20 {[«20""»]}
<POP 1a7ea-1a7ec StackAdj> Δ-4 {[«20""»]|[-4-]}
<Lit 0x1a7ec 20> {[«20""»]|[$$HARDWARE.M200_CONFIG]}
<MI 1a7fc MOVE.L (A7)+,(A6-0x6)> Δ+4 {[«20""»]}
<POP 1a7fe-1a800 StackAdj> Δ+20 {}
<MI 1a800 MOVEA.L (A6+0x8),A0> {}
<MI 1a804 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 1a806 MOVE.L (A7)+,D7> Δ+4 {}
<MI 1a808 MOVEQ.L #0x03,D6> {}
<MI 1a80a MOVE.L D7,-(A7)> Δ-4 {[4, 'D7']}
<MI 1a80c MOVE.L D6,-(A7)> Δ-4 {[4, 'D7']|[4, 'D6']}
<Call 0x1a80e 0x1a43a> {[4, 'D7']|[4, 'D6']}
<POP 1a812-1a814 StackAdj> Δ+4 {[4, 'D7']}
<MI 1a814 MOVE.L (A6-0x6),(A7)> {[4, '(A6-0x6)']}
<Const 0x1a816 0x1.2> Δ-2 {[4, '(A6-0x6)']|[#1]}
<Const 0x1a818 0x2.2> Δ-2 {[4, '(A6-0x6)']|[#1]|[#2]}
<Const 0x1a81a 0x1.4> Δ-4 {[4, '(A6-0x6)']|[#1]|[#2]|[##1]}
<Pointer.fp 0x1a81e <LVAR -0x014 @>> Δ-4 {[4, '(A6-0x6)']|[#1]|[#2]|[##1]|[@@-20]}
<Pointer.fp 0x1a820 <LVAR -0x012 @ 4(r)>> Δ-4 {[4, '(A6-0x6)']|[#1]|[#2]|[##1]|[@@-20]|[@@-18]}
<Call 0x1a822 0x138b4> {[4, '(A6-0x6)']|[#1]|[#2]|[##1]|[@@-20]|[@@-18]}
_OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
<POP 1a828-1a82c StackAdj> Δ+16 {[4, '(A6-0x6)']}
<MI 1a82c MOVE.L (A6-0x12),(A7)> {[4, '(A6-0x12)']}
<MI 1a82e CLR.W -(A7)> Δ-2 {[4, '(A6-0x12)']|[#0]}
<MI 1a830 CLR.W -(A7)> Δ-2 {[4, '(A6-0x12)']|[#0]|[#0]}
<POP 0x1a832 LimitCheck 0x1 ≤ D6 ≤ 0x200> {[4, '(A6-0x12)']|[#0]|[#0]}
<MI 1a840 MOVE.W D6,-(A7)> Δ-2 {[4, '(A6-0x12)']|[#0]|[#0]|[2, 'D6']}
<Const 0x1a842 0x2.2> Δ-2 {[4, '(A6-0x12)']|[#0]|[#0]|[2, 'D6']|[#2]}
<MI 1a844 MOVE.L D7,-(A7)> Δ-4 {[4, '(A6-0x12)']|[#0]|[#0]|[2, 'D6']|[#2]|[4, 'D7']}
<Pointer.fp 0x1a846 <LVAR -0x014 @>> Δ-4 {[4, '(A6-0x12)']|[#0]|[#0]|[2, 'D6']|[#2]|[4, 'D7']|[@@-20]}
<Call 0x1a848 0x13bb8> {[4, '(A6-0x12)']|[#0]|[#0]|[2, 'D6']|[#2]|[4, 'D7']|[@@-20]}
_WriteFile(file : File; y : W; x : W; a : W; b: B; c: L; d: L)
<POP 1a84e-1a852 StackAdj> Δ+18 {[-2-]}
<MI 1a852 CLR.B (A7)> {[-2-]}
<Const 0x1a854 0x2.2> Δ-2 {[-2-]|[#2]}
<Const 0x1a856 0x1.4> Δ-4 {[-2-]|[#2]|[##1]}
<Pointer.fp 0x1a85a <LVAR -0x014 @>> Δ-4 {[-2-]|[#2]|[##1]|[@@-20]}
<Pointer.fp 0x1a85c <LVAR -0x012 @ 4(r)>> Δ-4 {[-2-]|[#2]|[##1]|[@@-20]|[@@-18]}
<Call 0x1a85e 0x13c8a> {[-2-]|[#2]|[##1]|[@@-20]|[@@-18]}
_CloseFile(a : L; VAR status : B; VAR file : File)
<POP 1a864-1a868 StackAdj> Δ+12 {[-2-]|[#2]}
<MI 1a868 MOVE.L D7,(A7)> {[4, 'D7']}
<MI 1a86a MOVE.L D6,-(A7)> Δ-4 {[4, 'D7']|[4, 'D6']}
<Call 0x1a86c 0x1a43a> {[4, 'D7']|[4, 'D6']}
<POP 1a870-1a872 StackAdj> Δ+8 {}
<Pointer.fp 0x1a872 <LVAR -0x006 @ 4(rw)>> Δ-4 {[@@-6]}
<Call 0x1a874 0x10d36> {[@@-6]}
_FreeString(VAR a : String)
<POP 1a87a-1a87c StackAdj> Δ+4 {}
<POP 1a87c-1a884 Epilogue> Σ0
@ 1a884
_Config_Entry_Name(a : Byte) : String
<LVAR 0x00a 4(w)>
<LVAR 0x008 1(r)>
<POP 1a884-1a8d6 Body>
<POP 1a884-1a89a Prologue> Σ0 ↓
<POP 1a89a-1a89c RegCacheLoad> Σ0 ↓
<POP 1a89c-1a8ce Naked> Σ0 ↓
<MI 1a89c MOVE.B (A6+0x8),D0> {}
<MI 1a8a0 EXTB.W D0> {}
<MI 1a8a2 MULS.W #0x14,D0> {}
<MI 1a8a4 LEA.L 0x1a372,A0> {}
<Blob 0x1a8a8 [20] (A0+D0.W+#0x14)> Δ-20 {[«20»]}
<POP 1a8b4-1a8b6 StackAdj> Δ-4 {[«20»]|[-4-]}
<Lit 0x1a8b6> {[«20»]|[$$…]}
<Pointer.sp 0x1a8b6 4> Δ-4
<Const 0x1a8ba 0x1.2> Δ-2
<Const 0x1a8be 0x14.2> Δ-2
<Call 0x1a8c0 0x10da4>
_StringLit(Src : Pointer; Offset: W; Len : W) : String
<POP 1a8c6-1a8c8 StackAdj> Δ+8
<MI 1a8c8 MOVE.L (A7)+,(A6+0xa)> Δ+4 {[«20»]}
<POP 1a8cc-1a8ce StackAdj> Δ+20 {}
<POP 1a8ce-1a8d6 Epilogue> Σ0
@ 1a8d6
_FSCALL_1058c
<LVAR 0x010 @ 4(r)>
<LVAR 0x00c 4(r)>
<LVAR 0x008 4(r)>
<POP 1a8d6-1a96a Body>
<POP 1a8d6-1a8ec Prologue> Σ0 ↓
<POP 1a8ec-1a8f0 RegCacheLoad> Σ0 ↓
<POP 1a8f0-1a8fc Naked> Σ0 Δ-4 ↓ →0x1a904
<MI 1a8f0 MOVEA.L (A6+0x10),A0> {}
<MI 1a8f4 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 1a8f6 MOVE.W (A0),D0> {[4, 'A0']}
<MI 1a8f8 CMP.W #0x1e,D0> {[4, 'A0']}
<MI 1a8fa BLE 0x1a904> {[4, 'A0']}
<POP 1a8fc-1a904 Naked> Σ-4 →0x1a954
<MI 1a8fc MOVEA.L (A6+0x8),A0> {[-4-]}
<MI 1a900 CLR.B (A0)> {[-4-]}
<MI 1a902 BRA 0x1a954> {[-4-]}
<POP 1a904-1a906 Naked> Σ-4 ↓ ←0x1a8f0
<MI 1a904 MOVEQ.L #0x01,D7> {[-4-]}
<POP 1a906-1a910 Naked> Σ-4 ↓ →0x1a924 ←0x1a946
<MI 1a906 MOVEA.L (A7),A0> {[-4-]}
<MI 1a908 MOVE.W (A0),D0> {[-4-]}
<MI 1a90a EXTW.L D0> {[-4-]}
<MI 1a90c CMP.L D0,D7> {[-4-]}
<MI 1a90e BLE 0x1a924> {[-4-]}
<POP 1a910-1a924 Naked> Σ-4 →0x1a946
<MI 1a910 MOVEA.L (A6+0xc),A0> {[-4-]}
<MI 1a914 MOVE.L D7,D0> {[-4-]}
<MI 1a916 SUBQ.L #0x1,D0> {[-4-]}
<POP 0x1a918 LimitCheck 0x0 ≤ D0 ≤ 0x1d> {[-4-]}
<MI 1a91e CLR.B (A0+D0.L)> {[-4-]}
<MI 1a922 BRA 0x1a946> {[-4-]}
<POP 1a924-1a946 Naked> Σ-4 ↓ ←0x1a906
<MI 1a924 MOVEA.L (A6+0xc),A1> {[-4-]}
<MI 1a928 MOVE.L D7,D0> {[-4-]}
<MI 1a92a SUBQ.L #0x1,D0> {[-4-]}
<POP 0x1a92c LimitCheck 0x0 ≤ D0 ≤ 0x1d> {[-4-]}
<MI 1a932 MOVE.L D7,D1> {[-4-]}
<MI 1a934 SUBQ.L #0x1,D1> {[-4-]}
<POP 0x1a936 LimitCheck 0x0 ≤ D1 ≤ 0x7d> {[-4-]}
<MI 1a940 MOVE.B (A0+D1.L+#0x2),(A1+D0.L)> {[-4-]}
<POP 1a946-1a94c Naked> Σ-4 ↓ →0x1a906 ←0x1a910
<MI 1a946 ADDQ.L #0x1,D7> {[-4-]}
<MI 1a948 CMP.L #0x1e,D7> {[-4-]}
<MI 1a94a BLE 0x1a906> {[-4-]}
<POP 1a94c-1a954 Naked> Σ-4 ↓
<MI 1a94c MOVEA.L (A6+0x8),A0> {[-4-]}
<MI 1a950 MOVE.B #0x01,(A0)> {[-4-]}
<POP 1a954-1a962 Naked> Σ-4 Δ+4 ↓ ←0x1a8fc
<POP 1a954-1a956 StackAdj> Δ+4 {}
<Pointer.fp 0x1a956 <LVAR 0x010 @ 4(r)>> Δ-4 {[@@16]}
<Call 0x1a95a 0x10d36> {[@@16]}
_FreeString(VAR a : String)
<POP 1a960-1a962 StackAdj> Δ+4 {}
<POP 1a962-1a96a Epilogue> Σ0
@ 1a96a
_ReadConfig(where : Long) : Word
<LVAR 0x00c 2(w)>
<LVAR 0x008 4(rw)>
<LVAR -0x004 @ 2(r)>
<POP 1a96a-1a9bc Body>
<POP 1a96a-1a980 Prologue> Σ0 ↓
<POP 1a980-1a984 RegCacheLoad> Σ0 ↓
<POP 1a984-1a9b4 Naked> Σ0 ↓
<MI 1a984 ANDI.L #0x000001ff,(A6+0x8)> {}
<MI 1a98a ADDI.L #0x80007e00,(A6+0x8)> {}
<MI 1a990 MOVE.L (A6+0x8),-(A7)> Δ-4 {[4, '(A6+0x8)']}
<MI 1a992 LEA.L (A6-0x4),A0> {[4, '(A6+0x8)']}
<MI 1a996 MOVE.L A0,-(A7)> Δ-4 {[4, '(A6+0x8)']|[4, 'A0']}
<MI 1a998 ADDQ.L #0x1,(A7)> {[4, '(A6+0x8)']|[-4-]}
<Const 0x1a99a 0x1.2> Δ-2 {[4, '(A6+0x8)']|[-4-]|[#1]}
<Call 0x1a99e 0x10238> {[4, '(A6+0x8)']|[-4-]|[#1]}
KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
<POP 1a9a4-1a9a8 StackAdj> Δ+10 {}
<MI 1a9a8 MOVE.W (A6-0x4),(A6+0xc)> {}
<MI 1a9ae ANDI.W #0x00ff,(A6+0xc)> {}
<POP 1a9b4-1a9bc Epilogue> Σ0
@ 1a9bc
_WriteConfig(what: Word; where : Long)
<LVAR 0x00a 4(rw)>
<LVAR 0x008 2(r)>
<LVAR -0x002 @ 2(w)>
<POP 1a9bc-1aa14 Body>
<POP 1a9bc-1a9d2 Prologue> Σ0 ↓
<POP 1a9d2-1a9d6 RegCacheLoad> Σ0 ↓
<POP 1a9d6-1aa0c Naked> Σ0 ↓
<MI 1a9d6 MOVE.W (A6+0x8),(A6-0x2)> {}
<MI 1a9dc ANDI.L #0x000001ff,(A6+0xa)> {}
<MI 1a9e2 ADDI.L #0x80007e00,(A6+0xa)> {}
<MI 1a9e8 LEA.L (A6-0x2),A0> {}
<MI 1a9ec MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 1a9ee ADDQ.L #0x1,(A7)> {[-4-]}
<MI 1a9f0 MOVE.L (A6+0xa),-(A7)> Δ-4 {[-4-]|[4, '(A6+0xa)']}
<Const 0x1a9f2 0x1.2> Δ-2 {[-4-]|[4, '(A6+0xa)']|[#1]}
<Call 0x1a9f6 0x10238> {[-4-]|[4, '(A6+0xa)']|[#1]}
KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
<POP 1a9fc-1aa00 StackAdj> Δ+10 {}
<Const 0x1aa00 0x3d0.4> Δ-4 {[##976]}
<Call 0x1aa04 0x10224> {[##976]}
KC12_Sleep(dur: Long)
<POP 1aa0a-1aa0c StackAdj> Δ+4 {}
<POP 1aa0c-1aa14 Epilogue> Σ0
@ 1aa14
_ReadClusterNo(VAR a : Long)
<LVAR 0x008 4(r)>
<POP 1aa14-1aa5e Body>
<POP 1aa14-1aa2a Prologue> Σ0 ↓
<POP 1aa2a-1aa2c RegCacheLoad> Σ0 ↓
<POP 1aa2c-1aa2e Naked> Σ0 ↓
<MI 1aa2c MOVEQ.L #0x00,D7> {}
<POP 1aa2e-1aa56 Naked> Σ0 ↓ →0x1aa2e ←0x1aa2e
<MI 1aa2e MOVEA.L (A6+0x8),A0> {}
<POP 0x1aa32 LimitCheck 0x0 ≤ D7 ≤ 0x3> {}
<POP 1aa38-1aa3a StackAdj> Δ-2 {[-2-]}
<Const 0x1aa3a 0x84.4> Δ-4 {[-2-]|[##132]}
<MI 1aa3e ADD.L D7,(A7)> {[-6-]}
<Call 0x1aa40 0x1a96a> {[-6-]}
_ReadConfig(where : Long) : Word
<POP 1aa44-1aa46 StackAdj> Δ+4 {[-2-]}
<MI 1aa46 MOVE.W (A7)+,D0> Δ+2 {}
<POP 0x1aa48 LimitCheck 0x0 ≤ D0 ≤ 0xff> {}
<MI 1aa4c MOVE.B D0,(A0+D7.L)> {}
<MI 1aa50 ADDQ.L #0x1,D7> {}
<MI 1aa52 CMP.L #0x03,D7> {}
<MI 1aa54 BLE 0x1aa2e> {}
<POP 1aa56-1aa5e Epilogue> Σ0
@ 1aa5e
_Write_fc0c(VAR a: Word)
<LVAR 0x008 4(r)>
<POP 1aa5e-1aa98 Body>
<POP 1aa5e-1aa74 Prologue> Σ0 ↓
<POP 1aa74-1aa90 Naked> Σ0 ↓
<MI 1aa74 MOVEA.L (A6+0x8),A0> {}
<MI 1aa78 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 1aa7a LEA.L 0xfc0c,A0> {[4, 'A0']}
<MI 1aa80 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']|[4, 'A0']}
<Const 0x1aa82 0x2.2> Δ-2 {[4, 'A0']|[4, 'A0']|[#2]}
<Call 0x1aa86 0x10238> {[4, 'A0']|[4, 'A0']|[#2]}
KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
<POP 1aa8c-1aa90 StackAdj> Δ+10 {}
<POP 1aa90-1aa98 Epilogue> Σ0
@ 1aa98
_Read_fc0c() : Word
<LVAR 0x008 4(r)>
<POP 1aa98-1aad2 Body>
<POP 1aa98-1aaae Prologue> Σ0 ↓
<POP 1aaae-1aaca Naked> Σ0 ↓
<MI 1aaae LEA.L 0xfc0c,A0> {}
<MI 1aab4 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 1aab6 MOVEA.L (A6+0x8),A0> {[4, 'A0']}
<MI 1aaba MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']|[4, 'A0']}
<Const 0x1aabc 0x2.2> Δ-2 {[4, 'A0']|[4, 'A0']|[#2]}
<Call 0x1aac0 0x10238> {[4, 'A0']|[4, 'A0']|[#2]}
KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
<POP 1aac6-1aaca StackAdj> Δ+10 {}
<POP 1aaca-1aad2 Epilogue> Σ0
@ 1aad2
_Read_fc00() : Byte
<LVAR 0x008 4(r)>
<POP 1aad2-1ab0c Body>
<POP 1aad2-1aae8 Prologue> Σ0 ↓
<POP 1aae8-1ab04 Naked> Σ0 ↓
<MI 1aae8 LEA.L 0xfc00,A0> {}
<MI 1aaee MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 1aaf0 MOVEA.L (A6+0x8),A0> {[4, 'A0']}
<MI 1aaf4 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']|[4, 'A0']}
<Const 0x1aaf6 0x1.2> Δ-2 {[4, 'A0']|[4, 'A0']|[#1]}
<Call 0x1aafa 0x10238> {[4, 'A0']|[4, 'A0']|[#1]}
KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
<POP 1ab00-1ab04 StackAdj> Δ+10 {}
<POP 1ab04-1ab0c Epilogue> Σ0
@ 1ab0c
_FifoInit(void)
<LVAR -0x004 @ 4(r)>
<POP 1ab0c-1ab4e Body>
<POP 1ab0c-1ab22 Prologue> Σ0 ↓
<POP 1ab22-1ab46 Naked> Σ0 ↓
<MI 1ab22 CLR.L (A6-0x4)> {}
<MI 1ab26 LEA.L (A6-0x4),A0> {}
<MI 1ab2a MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<Const 0x1ab2c 0x1.2> Δ-2 {[4, 'A0']|[#1]}
<Const 0x1ab30 0xfffff500.4> Δ-4 {[4, 'A0']|[#1]|[##4294964480]}
<Const 0x1ab34 0x5.2> Δ-2 {[4, 'A0']|[#1]|[##4294964480]|[#5]}
<Const 0x1ab38 0x4.2> Δ-2 {[4, 'A0']|[#1]|[##4294964480]|[#5]|[#4]}
<Call 0x1ab3c 0x1023a> {[4, 'A0']|[#1]|[##4294964480]|[#5]|[#4]}
KC1d_BusCopy(src : Pointer; sfc : Word; dst : Pointer; dfc : Word; len : Word
<POP 1ab42-1ab46 StackAdj> Δ+14 {}
<POP 1ab46-1ab4e Epilogue> Σ0
@ 1ab4e
_R1000_Reset_L(void)
<LVAR -0x006 @ 4(rw)>
<LVAR -0x007 1(w)>
<LVAR -0x008 @>
<POP 1ab4e-1abca Body>
<POP 1ab4e-1ab64 Prologue> Σ0 ↓
<POP 1ab64-1ab70 RegCacheLoad> Σ0 ↓
<POP 1ab70-1abc2 Naked> Σ0 ↓
<Const 0x1ab70 0xfffff800.4> Δ-4 {[##4294965248]}
<Const 0x1ab74 0x5.2> Δ-2 {[##4294965248]|[#5]}
<MI 1ab76 LEA.L (A6-0x6),A0> {[##4294965248]|[#5]}
<MI 1ab78 MOVE.L A0,-(A7)> Δ-4 {[##4294965248]|[#5]|[4, 'A0']}
<Const 0x1ab7a 0x1.2> Δ-2 {[##4294965248]|[#5]|[4, 'A0']|[#1]}
<Const 0x1ab7c 0x4.2> Δ-2 {[##4294965248]|[#5]|[4, 'A0']|[#1]|[#4]}
<Call 0x1ab7e 0x1023a> {[##4294965248]|[#5]|[4, 'A0']|[#1]|[#4]}
KC1d_BusCopy(src : Pointer; sfc : Word; dst : Pointer; dfc : Word; len : Word
<POP 1ab84-1ab86 StackAdj> Δ+14 {}
<MI 1ab86 MOVE.L (A6-0x6),D0> {}
<MI 1ab88 LSR.L #0x8,D0> {}
<MI 1ab8a ANDI.L #0x000000fe,D0> {}
<MI 1ab90 MOVE.L D0,(A6-0x6)> {}
<MI 1ab92 LEA.L (A6-0x6),A0> {}
<MI 1ab94 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<Const 0x1ab96 0x1.2> Δ-2 {[4, 'A0']|[#1]}
<Const 0x1ab98 0xfffffe00.4> Δ-4 {[4, 'A0']|[#1]|[##4294966784]}
<Const 0x1ab9c 0x5.2> Δ-2 {[4, 'A0']|[#1]|[##4294966784]|[#5]}
<Const 0x1ab9e 0x4.2> Δ-2 {[4, 'A0']|[#1]|[##4294966784]|[#5]|[#4]}
<Call 0x1aba0 0x1023a> {[4, 'A0']|[#1]|[##4294966784]|[#5]|[#4]}
KC1d_BusCopy(src : Pointer; sfc : Word; dst : Pointer; dfc : Word; len : Word
<POP 1aba6-1aba8 StackAdj> Δ+14 {}
<Pointer.fp 0x1aba8 <LVAR -0x008 @>> Δ-4 {[@@-8]}
<Call 0x1abac 0x1aa98> {[@@-8]}
_Read_fc0c() : Word
<POP 1abb0-1abb2 StackAdj> Δ+4 {}
<MI 1abb2 ANDI.B #0xf7,(A6-0x7)> {}
<Pointer.fp 0x1abb8 <LVAR -0x008 @>> Δ-4 {[@@-8]}
<Call 0x1abbc 0x1aa5e> {[@@-8]}
_Write_fc0c(VAR a: Word)
<POP 1abc0-1abc2 StackAdj> Δ+4 {}
<POP 1abc2-1abca Epilogue> Σ0
@ 1abca
_R1000_Reset_H(void)
<LVAR -0x006 @ 4(rw)>
<LVAR -0x007 1(w)>
<LVAR -0x008 @>
<POP 1abca-1ac46 Body>
<POP 1abca-1abe0 Prologue> Σ0 ↓
<POP 1abe0-1abec RegCacheLoad> Σ0 ↓
<POP 1abec-1ac3e Naked> Σ0 ↓
<Const 0x1abec 0xfffff800.4> Δ-4 {[##4294965248]}
<Const 0x1abf0 0x5.2> Δ-2 {[##4294965248]|[#5]}
<MI 1abf2 LEA.L (A6-0x6),A0> {[##4294965248]|[#5]}
<MI 1abf4 MOVE.L A0,-(A7)> Δ-4 {[##4294965248]|[#5]|[4, 'A0']}
<Const 0x1abf6 0x1.2> Δ-2 {[##4294965248]|[#5]|[4, 'A0']|[#1]}
<Const 0x1abf8 0x4.2> Δ-2 {[##4294965248]|[#5]|[4, 'A0']|[#1]|[#4]}
<Call 0x1abfa 0x1023a> {[##4294965248]|[#5]|[4, 'A0']|[#1]|[#4]}
KC1d_BusCopy(src : Pointer; sfc : Word; dst : Pointer; dfc : Word; len : Word
<POP 1ac00-1ac02 StackAdj> Δ+14 {}
<MI 1ac02 MOVE.L (A6-0x6),D0> {}
<MI 1ac04 LSR.L #0x8,D0> {}
<MI 1ac06 OR.L #0x01,D0> {}
<MI 1ac08 MOVE.L D0,(A6-0x6)> {}
<MI 1ac0a LEA.L (A6-0x6),A0> {}
<MI 1ac0c MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<Const 0x1ac0e 0x1.2> Δ-2 {[4, 'A0']|[#1]}
<Const 0x1ac10 0xfffffe00.4> Δ-4 {[4, 'A0']|[#1]|[##4294966784]}
<Const 0x1ac14 0x5.2> Δ-2 {[4, 'A0']|[#1]|[##4294966784]|[#5]}
<Const 0x1ac16 0x4.2> Δ-2 {[4, 'A0']|[#1]|[##4294966784]|[#5]|[#4]}
<Call 0x1ac18 0x1023a> {[4, 'A0']|[#1]|[##4294966784]|[#5]|[#4]}
KC1d_BusCopy(src : Pointer; sfc : Word; dst : Pointer; dfc : Word; len : Word
<POP 1ac1e-1ac20 StackAdj> Δ+14 {}
<Pointer.fp 0x1ac20 <LVAR -0x008 @>> Δ-4 {[@@-8]}
<Call 0x1ac24 0x1aa98> {[@@-8]}
_Read_fc0c() : Word
<POP 1ac28-1ac2a StackAdj> Δ+4 {}
<MI 1ac2a OR.B #0x04,(A6-0x7)> {}
<MI 1ac2e ORI.B #0x08,(A6-0x7)> {}
<Pointer.fp 0x1ac34 <LVAR -0x008 @>> Δ-4 {[@@-8]}
<Call 0x1ac38 0x1aa5e> {[@@-8]}
_Write_fc0c(VAR a: Word)
<POP 1ac3c-1ac3e StackAdj> Δ+4 {}
<POP 1ac3e-1ac46 Epilogue> Σ0
@ 1ac46
_Or_fc0c_80(void)
<LVAR -0x003 1(w)>
<LVAR -0x004 @>
<POP 1ac46-1ac76 Body>
<POP 1ac46-1ac58 Prologue> Σ0 ↓
<POP 1ac58-1ac72 Naked> Σ0 ↓
<Pointer.fp 0x1ac58 <LVAR -0x004 @>> Δ-4 {[@@-4]}
<Call 0x1ac5c 0x1aa98> {[@@-4]}
_Read_fc0c() : Word
<POP 1ac60-1ac62 StackAdj> Δ+4 {}
<MI 1ac62 ORI.B #0x80,(A6-0x3)> {}
<Pointer.fp 0x1ac68 <LVAR -0x004 @>> Δ-4 {[@@-4]}
<Call 0x1ac6c 0x1aa5e> {[@@-4]}
_Write_fc0c(VAR a: Word)
<POP 1ac70-1ac72 StackAdj> Δ+4 {}
<POP 1ac72-1ac76 Epilogue> Σ0
@ 1ac76
_And_fc0c_7f(void)
<LVAR -0x003 1(w)>
<LVAR -0x004 @>
<POP 1ac76-1aca6 Body>
<POP 1ac76-1ac88 Prologue> Σ0 ↓
<POP 1ac88-1aca2 Naked> Σ0 ↓
<Pointer.fp 0x1ac88 <LVAR -0x004 @>> Δ-4 {[@@-4]}
<Call 0x1ac8c 0x1aa98> {[@@-4]}
_Read_fc0c() : Word
<POP 1ac90-1ac92 StackAdj> Δ+4 {}
<MI 1ac92 ANDI.B #0x7f,(A6-0x3)> {}
<Pointer.fp 0x1ac98 <LVAR -0x004 @>> Δ-4 {[@@-4]}
<Call 0x1ac9c 0x1aa5e> {[@@-4]}
_Write_fc0c(VAR a: Word)
<POP 1aca0-1aca2 StackAdj> Δ+4 {}
<POP 1aca2-1aca6 Epilogue> Σ0
@ 1aca6
_ReadKeySwitch() : Bool
<LVAR 0x008 1(rw)>
<LVAR -0x004 @ 4(r)>
<POP 1aca6-1acf8 Body>
<POP 1aca6-1acbc Prologue> Σ0 ↓
<POP 1acbc-1acec Naked> Σ0 ↓ →0x1acf0
<Const 0x1acbc 0xfffff800.4> Δ-4 {[##4294965248]}
<Const 0x1acc0 0x5.2> Δ-2 {[##4294965248]|[#5]}
<MI 1acc4 LEA.L (A6-0x4),A0> {[##4294965248]|[#5]}
<MI 1acc8 MOVE.L A0,-(A7)> Δ-4 {[##4294965248]|[#5]|[4, 'A0']}
<Const 0x1acca 0x1.2> Δ-2 {[##4294965248]|[#5]|[4, 'A0']|[#1]}
<Const 0x1acce 0x4.2> Δ-2 {[##4294965248]|[#5]|[4, 'A0']|[#1]|[#4]}
<Call 0x1acd2 0x1023a> {[##4294965248]|[#5]|[4, 'A0']|[#1]|[#4]}
KC1d_BusCopy(src : Pointer; sfc : Word; dst : Pointer; dfc : Word; len : Word
<POP 1acd8-1acdc StackAdj> Δ+14 {}
<MI 1acdc CLR.B (A6+0x8)> {}
<MI 1ace0 MOVE.L (A6-0x4),D0> {}
<MI 1ace4 ANDI.L #0x00000008,D0> {}
<MI 1acea BEQ 0x1acf0> {}
<POP 1acec-1acf0 Naked> Σ0 ↓
<MI 1acec ADDQ.B #0x1,(A6+0x8)> {}
<POP 1acf0-1acf8 Epilogue> Σ0 ←0x1acbc
@ 1acf8
_Update_fc0c(new : Byte)
<LVAR 0x008 1(r)>
<LVAR -0x002 @ 1(w)>
<POP 1acf8-1ad6a Body>
<POP 1acf8-1ad0e Prologue> Σ0 ↓
<POP 1ad0e-1ad16 RegCacheLoad> Σ0 ↓
<POP 1ad16-1ad62 Naked> Σ0 ↓
<Pointer.fp 0x1ad16 <LVAR -0x002 @ 1(w)>> Δ-4 {[@@-2]}
<Call 0x1ad18 0x1aa98> {[@@-2]}
_Read_fc0c() : Word
<POP 1ad1c-1ad1e StackAdj> Δ+4 {}
<MI 1ad1e MOVE.B (A6+0x8),D0> {}
<MI 1ad20 ANDI.B #0xf7,(A6-0x2)> {}
<MI 1ad24 ANDI.B #0x08,D0> {}
<MI 1ad28 OR.B D0,(A6-0x2)> {}
<MI 1ad2a MOVE.B (A6+0x8),D0> {}
<MI 1ad2c ANDI.B #0xef,(A6-0x2)> {}
<MI 1ad30 ANDI.B #0x10,D0> {}
<MI 1ad34 OR.B D0,(A6-0x2)> {}
<MI 1ad36 MOVE.B (A6+0x8),D0> {}
<MI 1ad38 ANDI.B #0xdf,(A6-0x2)> {}
<MI 1ad3c ANDI.B #0x20,D0> {}
<MI 1ad40 OR.B D0,(A6-0x2)> {}
<MI 1ad42 MOVE.B (A6+0x8),D0> {}
<MI 1ad44 ANDI.B #0xbf,(A6-0x2)> {}
<MI 1ad48 ANDI.B #0x40,D0> {}
<MI 1ad4c OR.B D0,(A6-0x2)> {}
<MI 1ad4e MOVE.B (A6+0x8),D0> {}
<MI 1ad50 ANDI.B #0x7f,(A6-0x2)> {}
<MI 1ad54 ANDI.B #0x80,D0> {}
<MI 1ad58 OR.B D0,(A6-0x2)> {}
<Pointer.fp 0x1ad5a <LVAR -0x002 @ 1(w)>> Δ-4 {[@@-2]}
<Call 0x1ad5c 0x1aa5e> {[@@-2]}
_Write_fc0c(VAR a: Word)
<POP 1ad60-1ad62 StackAdj> Δ+4 {}
<POP 1ad62-1ad6a Epilogue> Σ0
@ 1ad6a
_EmergencyStop(boot_reason_code : Byte)
<LVAR 0x008 @>
<POP 1ad6a-1adaa Body>
<POP 1ad6a-1ad80 Prologue> Σ0 ↓
<POP 1ad80-1ada2 Naked> Σ0 ↓
<MI 1ad80 LEA.L (A6+0x8),A0> {}
<MI 1ad84 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 1ad86 LEA.L 0xfc01,A0> {[4, 'A0']}
<MI 1ad8c MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']|[4, 'A0']}
<Const 0x1ad8e 0x1.2> Δ-2 {[4, 'A0']|[4, 'A0']|[#1]}
<Call 0x1ad92 0x10238> {[4, 'A0']|[4, 'A0']|[#1]}
KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
<POP 1ad98-1ad9c StackAdj> Δ+10 {}
<Call 0x1ad9c 0x10240> {}
KC20_Estop(void)
<POP 1ada2-1adaa Epilogue> Σ0
@ 1adaa
_Get_BootReasonCode() : Byte
<LVAR 0x008 4(r)>
<POP 1adaa-1ade4 Body>
<POP 1adaa-1adc0 Prologue> Σ0 ↓
<POP 1adc0-1addc Naked> Σ0 ↓
<MI 1adc0 LEA.L 0xfc01,A0> {}
<MI 1adc6 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 1adc8 MOVEA.L (A6+0x8),A0> {[4, 'A0']}
<MI 1adcc MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']|[4, 'A0']}
<Const 0x1adce 0x1.2> Δ-2 {[4, 'A0']|[4, 'A0']|[#1]}
<Call 0x1add2 0x10238> {[4, 'A0']|[4, 'A0']|[#1]}
KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
<POP 1add8-1addc StackAdj> Δ+10 {}
<POP 1addc-1ade4 Epilogue> Σ0
@ 1ade4
_Set_fc04_to_01(void)
<LVAR -0x004 @ 1(w)>
<POP 1ade4-1ae22 Body>
<POP 1ade4-1adfa Prologue> Σ0 ↓
<POP 1adfa-1adfc RegCacheLoad> Σ0 ↓
<POP 1adfc-1ae1a Naked> Σ0 ↓
<MI 1adfc MOVE.B #0x01,(A6-0x4)> {}
<MI 1ae00 LEA.L (A6-0x4),A0> {}
<MI 1ae04 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 1ae06 LEA.L 0xfc04,A0> {[4, 'A0']}
<MI 1ae0c MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']|[4, 'A0']}
<Const 0x1ae0e 0x1.2> Δ-2 {[4, 'A0']|[4, 'A0']|[#1]}
<Call 0x1ae10 0x10238> {[4, 'A0']|[4, 'A0']|[#1]}
KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
<POP 1ae16-1ae1a StackAdj> Δ+10 {}
<POP 1ae1a-1ae22 Epilogue> Σ0
@ 1ae22
_Get_fc05() : Byte
<LVAR 0x008 1(w)>
<LVAR -0x004 @ 1(r)>
<POP 1ae22-1ae62 Body>
<POP 1ae22-1ae38 Prologue> Σ0 ↓
<POP 1ae38-1ae5a Naked> Σ0 ↓
<MI 1ae38 LEA.L 0xfc05,A0> {}
<MI 1ae3e MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 1ae40 LEA.L (A6-0x4),A0> {[4, 'A0']}
<MI 1ae44 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']|[4, 'A0']}
<Const 0x1ae46 0x1.2> Δ-2 {[4, 'A0']|[4, 'A0']|[#1]}
<Call 0x1ae4a 0x10238> {[4, 'A0']|[4, 'A0']|[#1]}
KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
<POP 1ae50-1ae54 StackAdj> Δ+10 {}
<MI 1ae54 MOVE.B (A6-0x4),(A6+0x8)> {}
<POP 1ae5a-1ae62 Epilogue> Σ0
@ 1ae62
_Get_fc02() : Word
<LVAR 0x008 2(w)>
<LVAR -0x004 @ 2(r)>
<POP 1ae62-1aea2 Body>
<POP 1ae62-1ae78 Prologue> Σ0 ↓
<POP 1ae78-1ae9a Naked> Σ0 ↓
<MI 1ae78 LEA.L 0xfc02,A0> {}
<MI 1ae7e MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 1ae80 LEA.L (A6-0x4),A0> {[4, 'A0']}
<MI 1ae84 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']|[4, 'A0']}
<Const 0x1ae86 0x2.2> Δ-2 {[4, 'A0']|[4, 'A0']|[#2]}
<Call 0x1ae8a 0x10238> {[4, 'A0']|[4, 'A0']|[#2]}
KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
<POP 1ae90-1ae94 StackAdj> Δ+10 {}
<MI 1ae94 MOVE.W (A6-0x4),(A6+0x8)> {}
<POP 1ae9a-1aea2 Epilogue> Σ0
@ 1aea2
_Is_machine_type_one() : Bool
<LVAR 0x008 1(rw)>
<LVAR -0x004 @ 1(r)>
<POP 1aea2-1aeec Body>
<POP 1aea2-1aeb8 Prologue> Σ0 ↓
<POP 1aeb8-1aeba RegCacheLoad> Σ0 ↓
<POP 1aeba-1aee0 Naked> Σ0 ↓ →0x1aee4
<MI 1aeba LEA.L 0xfc07,A0> {}
<MI 1aec0 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 1aec2 LEA.L (A6-0x4),A0> {[4, 'A0']}
<MI 1aec6 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']|[4, 'A0']}
<Const 0x1aec8 0x1.2> Δ-2 {[4, 'A0']|[4, 'A0']|[#1]}
<Call 0x1aeca 0x10238> {[4, 'A0']|[4, 'A0']|[#1]}
KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
<POP 1aed0-1aed4 StackAdj> Δ+10 {}
<MI 1aed4 CLR.B (A6+0x8)> {}
<MI 1aed8 MOVE.B (A6-0x4),D0> {}
<MI 1aedc CMP.B #0x01,D0> {}
<MI 1aede BNE 0x1aee4> {}
<POP 1aee0-1aee4 Naked> Σ0 ↓
<MI 1aee0 ADDQ.B #0x1,(A6+0x8)> {}
<POP 1aee4-1aeec Epilogue> Σ0 ←0x1aeba
@ 1aeec
_Is_machine_type_two() : Bool
<LVAR 0x008 1(rw)>
<LVAR -0x004 @ 1(r)>
<POP 1aeec-1af38 Body>
<POP 1aeec-1af02 Prologue> Σ0 ↓
<POP 1af02-1af2c Naked> Σ0 ↓ →0x1af30
<MI 1af02 LEA.L 0xfc07,A0> {}
<MI 1af08 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 1af0a LEA.L (A6-0x4),A0> {[4, 'A0']}
<MI 1af0e MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']|[4, 'A0']}
<Const 0x1af10 0x1.2> Δ-2 {[4, 'A0']|[4, 'A0']|[#1]}
<Call 0x1af14 0x10238> {[4, 'A0']|[4, 'A0']|[#1]}
KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
<POP 1af1a-1af1e StackAdj> Δ+10 {}
<MI 1af1e CLR.B (A6+0x8)> {}
<MI 1af22 MOVE.B (A6-0x4),D0> {}
<MI 1af26 CMPI.B #0x02,D0> {}
<MI 1af2a BNE 0x1af30> {}
<POP 1af2c-1af30 Naked> Σ0 ↓
<MI 1af2c ADDQ.B #0x1,(A6+0x8)> {}
<POP 1af30-1af38 Epilogue> Σ0 ←0x1af02
@ 1af38
_Is_machine_type_three() : Bool
<LVAR 0x008 1(rw)>
<LVAR -0x004 @ 1(r)>
<POP 1af38-1af84 Body>
<POP 1af38-1af4e Prologue> Σ0 ↓
<POP 1af4e-1af78 Naked> Σ0 ↓ →0x1af7c
<MI 1af4e LEA.L 0xfc07,A0> {}
<MI 1af54 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 1af56 LEA.L (A6-0x4),A0> {[4, 'A0']}
<MI 1af5a MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']|[4, 'A0']}
<Const 0x1af5c 0x1.2> Δ-2 {[4, 'A0']|[4, 'A0']|[#1]}
<Call 0x1af60 0x10238> {[4, 'A0']|[4, 'A0']|[#1]}
KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
<POP 1af66-1af6a StackAdj> Δ+10 {}
<MI 1af6a CLR.B (A6+0x8)> {}
<MI 1af6e MOVE.B (A6-0x4),D0> {}
<MI 1af72 CMPI.B #0x03,D0> {}
<MI 1af76 BNE 0x1af7c> {}
<POP 1af78-1af7c Naked> Σ0 ↓
<MI 1af78 ADDQ.B #0x1,(A6+0x8)> {}
<POP 1af7c-1af84 Epilogue> Σ0 ←0x1af4e
@ 1af84
_Is_machine_type_four() : Bool
<LVAR 0x008 1(rw)>
<LVAR -0x004 @ 1(r)>
<POP 1af84-1afd0 Body>
<POP 1af84-1af9a Prologue> Σ0 ↓
<POP 1af9a-1afc4 Naked> Σ0 ↓ →0x1afc8
<MI 1af9a LEA.L 0xfc07,A0> {}
<MI 1afa0 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 1afa2 LEA.L (A6-0x4),A0> {[4, 'A0']}
<MI 1afa6 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']|[4, 'A0']}
<Const 0x1afa8 0x1.2> Δ-2 {[4, 'A0']|[4, 'A0']|[#1]}
<Call 0x1afac 0x10238> {[4, 'A0']|[4, 'A0']|[#1]}
KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
<POP 1afb2-1afb6 StackAdj> Δ+10 {}
<MI 1afb6 CLR.B (A6+0x8)> {}
<MI 1afba MOVE.B (A6-0x4),D0> {}
<MI 1afbe CMPI.B #0x04,D0> {}
<MI 1afc2 BNE 0x1afc8> {}
<POP 1afc4-1afc8 Naked> Σ0 ↓
<MI 1afc4 ADDQ.B #0x1,(A6+0x8)> {}
<POP 1afc8-1afd0 Epilogue> Σ0 ←0x1af9a
@ 1afd0
_Is_machine_type_one_or_three() : Bool
<LVAR 0x008 1(rw)>
<LVAR -0x004 @ 1(r)>
<POP 1afd0-1b020 Body>
<POP 1afd0-1afe6 Prologue> Σ0 ↓
<POP 1afe6-1afe8 RegCacheLoad> Σ0 ↓
<POP 1afe8-1b00e Naked> Σ0 ↓ →0x1b014
<MI 1afe8 LEA.L 0xfc07,A0> {}
<MI 1afee MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 1aff0 LEA.L (A6-0x4),A0> {[4, 'A0']}
<MI 1aff4 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']|[4, 'A0']}
<Const 0x1aff6 0x1.2> Δ-2 {[4, 'A0']|[4, 'A0']|[#1]}
<Call 0x1aff8 0x10238> {[4, 'A0']|[4, 'A0']|[#1]}
KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
<POP 1affe-1b002 StackAdj> Δ+10 {}
<MI 1b002 CLR.B (A6+0x8)> {}
<MI 1b006 MOVE.B (A6-0x4),D0> {}
<MI 1b00a CMP.B #0x01,D0> {}
<MI 1b00c BEQ 0x1b014> {}
<POP 1b00e-1b014 Naked> Σ0 ↓ →0x1b018
<MI 1b00e CMPI.B #0x03,D0> {}
<MI 1b012 BNE 0x1b018> {}
<POP 1b014-1b018 Naked> Σ0 ↓ ←0x1afe8
<MI 1b014 ADDQ.B #0x1,(A6+0x8)> {}
<POP 1b018-1b020 Epilogue> Σ0 ←0x1b00e
@ 1b020
_Is_machine_type_two_or_four() : Bool
<LVAR 0x008 1(rw)>
<LVAR -0x004 @ 1(r)>
<POP 1b020-1b072 Body>
<POP 1b020-1b036 Prologue> Σ0 ↓
<POP 1b036-1b060 Naked> Σ0 ↓ →0x1b066
<MI 1b036 LEA.L 0xfc07,A0> {}
<MI 1b03c MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']}
<MI 1b03e LEA.L (A6-0x4),A0> {[4, 'A0']}
<MI 1b042 MOVE.L A0,-(A7)> Δ-4 {[4, 'A0']|[4, 'A0']}
<Const 0x1b044 0x1.2> Δ-2 {[4, 'A0']|[4, 'A0']|[#1]}
<Call 0x1b048 0x10238> {[4, 'A0']|[4, 'A0']|[#1]}
KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
<POP 1b04e-1b052 StackAdj> Δ+10 {}
<MI 1b052 CLR.B (A6+0x8)> {}
<MI 1b056 MOVE.B (A6-0x4),D0> {}
<MI 1b05a CMPI.B #0x02,D0> {}
<MI 1b05e BEQ 0x1b066> {}
<POP 1b060-1b066 Naked> Σ0 ↓ →0x1b06a
<MI 1b060 CMPI.B #0x04,D0> {}
<MI 1b064 BNE 0x1b06a> {}
<POP 1b066-1b06a Naked> Σ0 ↓ ←0x1b036
<MI 1b066 ADDQ.B #0x1,(A6+0x8)> {}
<POP 1b06a-1b072 Epilogue> Σ0 ←0x1b060
00010000 ; --------------------------------------------------------------------------------------
00010000 ; R1000.Disassembly modules:
00010000 ; import all
00010000 ; import kind.fs
00010000 ; import ident.ae518f62f41ffb95
00010000 ; --------------------------------------------------------------------------------------
00010000 00 02 00 00 | | .XXX[0x4]
00010004 00 01 06 1c | | .CODE START
00010008 mounted_drive:
00010008 00 00 | | .CONST 0x0,0x0
0001000a sec_per_track:
0001000a 00 00 | | .XXX[0x2]
0001000c sec_per_cyl:
0001000c 00 00 | | .XXX[0x2]
0001000e superblock_sector:
0001000e 00 00 | | .XXX[0x2]
00010010 superblock_sector.freelist_lba:
00010010 00 00 | | .CONST 0x0,0x0
00010012 00 00 00 00 00 00 | | .XXX[0x6]
00010018 00 00 00 00 00 00 00 00 | | .XXX[0x8]
00010020 00 00 | | .XXX[0x2]
00010022 freelist_sector:
00010022 00 00 00 00 00 00 | | .XXX[0x6]
00010028 00 00 00 00 00 00 00 00 | | .BLANK 00[0x1d8]
00010200 ; --------------------------------------------------------------------------------------
00010200 ; KC00_GetBootDev(VAR a : Byte; VAR b : Word)
00010200 ; Stack:
00010200 ; A6+0xc VAR a : Byte
00010200 ; A6+0x8 VAR b : Word
00010200 ; --------------------------------------------------------------------------------------
00010200 KC00_GetBootDev(VAR a : Byte; VAR b : Word):
00010200 a0 00 | | KERNCALL #0x0
00010202 ; --------------------------------------------------------------------------------------
00010202 ; KC01_DumpOn
00010202 ; --------------------------------------------------------------------------------------
00010202 KC01_DumpOn:
00010202 a0 01 | | KERNCALL #0x1
00010204 ; --------------------------------------------------------------------------------------
00010204 ; KC02_Start_Disk_IO(desc : Pointer; dst : Pointer ; c : W)
00010204 ; Stack:
00010204 ; A6+0xe desc : Pointer
00010204 ; A6+0xa dst : Pointer
00010204 ; A6+0x8 c : W
00010204 ; ==========================================================
00010204 ; D1 = 2 -> READ
00010204 ; D1 = 3 -> WRITE
00010204 ; (Other registers may be significant too)
00010204 ;
00010204 ; STACK+a: LWORD desc pointer
00010204 ; STACK+6: LWORD src/dst pointer
00010204 ; STACK+4: WORD (zero)
00010204 ;
00010204 ; Desc+00: 0x0100
00010204 ; Desc+02: 0x0000
00010204 ; Desc+04: 0x0002
00010204 ; Desc+06: 0x0000
00010204 ; Desc+08: 0x0080
00010204 ; Desc+0a: 0x0002
00010204 ; Desc+0c: 0x____ cylinder
00010204 ; Desc+0e: 0x__ head
00010204 ; Desc+0f: 0x__ sector
00010204 ;
00010204 ; CHS is 512 byte sectors
00010204 ; --------------------------------------------------------------------------------------
00010204 KC02_Start_Disk_IO(desc : Pointer; dst : Pointer ; c : W):
00010204 a0 02 | | KERNCALL #0x2
00010206 ; --------------------------------------------------------------------------------------
00010206 ; KC03_Wait_Disk_IO(a : W; VAR status : Byte)
00010206 ; Stack:
00010206 ; A6+0xc a : W
00010206 ; A6+0x8 VAR status : Byte
00010206 ; --------------------------------------------------------------------------------------
00010206 KC03_Wait_Disk_IO(a : W; VAR status : Byte):
00010206 a0 03 | | KERNCALL #0x3
00010208 ; --------------------------------------------------------------------------------------
00010208 ; KERNCALL_04
00010208 ; --------------------------------------------------------------------------------------
00010208 KERNCALL_04:
00010208 a0 04 | | KERNCALL #0x4
0001020a ; --------------------------------------------------------------------------------------
0001020a ; KC05_PortWriteString(port : Word ; str : String)
0001020a ; Stack:
0001020a ; A6+0xc port : Word
0001020a ; A6+0x8 str : String
0001020a ; --------------------------------------------------------------------------------------
0001020a KC05_PortWriteString(port : Word ; str : String):
0001020a a0 05 | | KERNCALL #0x5
0001020c ; --------------------------------------------------------------------------------------
0001020c ; KC06_PortPutChar(port : Word ; b : char)
0001020c ; Stack:
0001020c ; A6+0xa port : Word
0001020c ; A6+0x8 b : char
0001020c ; --------------------------------------------------------------------------------------
0001020c KC06_PortPutChar(port : Word ; b : char):
0001020c a0 06 | | KERNCALL #0x6
0001020e ; --------------------------------------------------------------------------------------
0001020e ; KC07_PortGetChar(port : Word ; VAR ret : Word)
0001020e ; Stack:
0001020e ; A6+0xc port : Word
0001020e ; A6+0x8 VAR ret : Word
0001020e ; --------------------------------------------------------------------------------------
0001020e KC07_PortGetChar(port : Word ; VAR ret : Word):
0001020e a0 07 | | KERNCALL #0x7
00010210 ; --------------------------------------------------------------------------------------
00010210 ; KC08_PortSomething(port: Word; b: Byte)
00010210 ; Stack:
00010210 ; A6+0xa port : Word
00010210 ; A6+0x8 b : Byte
00010210 ; --------------------------------------------------------------------------------------
00010210 KC08_PortSomething(port: Word; b: Byte):
00010210 a0 08 | | KERNCALL #0x8
00010212 ; --------------------------------------------------------------------------------------
00010212 ; KC09_PortStatus(Port : Word; VAR b: Byte)
00010212 ; Stack:
00010212 ; A6+0xc Port : Word
00010212 ; A6+0x8 VAR b : Byte
00010212 ; --------------------------------------------------------------------------------------
00010212 KC09_PortStatus(Port : Word; VAR b: Byte):
00010212 a0 09 | | KERNCALL #0x9
00010214 ; --------------------------------------------------------------------------------------
00010214 ; KC0a(a: Word; b: String)
00010214 ; Stack:
00010214 ; A6+0xc a : Word
00010214 ; A6+0x8 b : String
00010214 ; --------------------------------------------------------------------------------------
00010214 KC0a(a: Word; b: String):
00010214 a0 0a | | KERNCALL #0xa
00010216 ; --------------------------------------------------------------------------------------
00010216 ; KC0b
00010216 ; --------------------------------------------------------------------------------------
00010216 KC0b:
00010216 a0 0b | | KERNCALL #0xb
00010218 ; --------------------------------------------------------------------------------------
00010218 ; KC0c_Write_Modem_Char(a, b: Word ; c : char)
00010218 ; Stack:
00010218 ; A6+0xc a : Word
00010218 ; A6+0xa b : Word
00010218 ; A6+0x8 c : char
00010218 ; --------------------------------------------------------------------------------------
00010218 KC0c_Write_Modem_Char(a, b: Word ; c : char):
00010218 a0 0c | | KERNCALL #0xc
0001021a ; --------------------------------------------------------------------------------------
0001021a ; KC0d_Write_Modem_String(Word, Word, Char)
0001021a ; --------------------------------------------------------------------------------------
0001021a KC0d_Write_Modem_String(Word, Word, Char):
0001021a a0 0d | | KERNCALL #0xd
0001021c ; --------------------------------------------------------------------------------------
0001021c ; KERNCALL_0e
0001021c ; --------------------------------------------------------------------------------------
0001021c KERNCALL_0e:
0001021c a0 0e | | KERNCALL #0xe
0001021e ; --------------------------------------------------------------------------------------
0001021e ; KC0f_ReInit
0001021e ; --------------------------------------------------------------------------------------
0001021e KC0f_ReInit:
0001021e a0 0f | | KERNCALL #0xf
00010220 ; --------------------------------------------------------------------------------------
00010220 ; KC10_Panic(code : Long)
00010220 ; Stack:
00010220 ; A6+0x8 code : Long
00010220 ; --------------------------------------------------------------------------------------
00010220 KC10_Panic(code : Long):
00010220 a0 10 | | KERNCALL #0x10
00010222 ; --------------------------------------------------------------------------------------
00010222 ; KC11_Live(void)
00010222 ; Stack:
00010222 ; --------------------------------------------------------------------------------------
00010222 KC11_Live(void):
00010222 a0 11 | | KERNCALL #0x11
00010224 ; --------------------------------------------------------------------------------------
00010224 ; KC12_Sleep(dur: Long)
00010224 ; Stack:
00010224 ; A6+0x8 dur : Long
00010224 ; --------------------------------------------------------------------------------------
00010224 KC12_Sleep(dur: Long):
00010224 a0 12 | | KERNCALL #0x12
00010226 ; --------------------------------------------------------------------------------------
00010226 ; KC13_ReadRtc
00010226 ; --------------------------------------------------------------------------------------
00010226 KC13_ReadRtc:
00010226 a0 13 | | KERNCALL #0x13
00010228 ; --------------------------------------------------------------------------------------
00010228 ; KC14_WriteRtc
00010228 ; --------------------------------------------------------------------------------------
00010228 KC14_WriteRtc:
00010228 a0 14 | | KERNCALL #0x14
0001022a ; --------------------------------------------------------------------------------------
0001022a ; KC15_DiagBus(a : Word; b : Long) : Byte
0001022a ; Stack:
0001022a ; A6+0xe VAR RETURN : Byte
0001022a ; A6+0xc a : Word
0001022a ; A6+0x8 b : Long
0001022a ; --------------------------------------------------------------------------------------
0001022a KC15_DiagBus(a : Word; b : Long) : Byte:
0001022a a0 15 | | KERNCALL #0x15
0001022c ; --------------------------------------------------------------------------------------
0001022c ; KC16_Clock_Margin
0001022c ; --------------------------------------------------------------------------------------
0001022c KC16_Clock_Margin:
0001022c a0 16 | | KERNCALL #0x16
0001022e ; --------------------------------------------------------------------------------------
0001022e ; KC17_Power_Margin
0001022e ; --------------------------------------------------------------------------------------
0001022e KC17_Power_Margin:
0001022e a0 17 | | KERNCALL #0x17
00010230 ; --------------------------------------------------------------------------------------
00010230 ; KERNCALL_18
00010230 ; --------------------------------------------------------------------------------------
00010230 KERNCALL_18:
00010230 a0 18 | | KERNCALL #0x18
00010232 ; --------------------------------------------------------------------------------------
00010232 ; KERNCALL_19
00010232 ; --------------------------------------------------------------------------------------
00010232 KERNCALL_19:
00010232 a0 19 | | KERNCALL #0x19
00010234 ; --------------------------------------------------------------------------------------
00010234 ; KERNCALL_1a
00010234 ; --------------------------------------------------------------------------------------
00010234 KERNCALL_1a:
00010234 a0 1a | | KERNCALL #0x1a
00010236 ; --------------------------------------------------------------------------------------
00010236 ; KERNCALL_1b
00010236 ; --------------------------------------------------------------------------------------
00010236 KERNCALL_1b:
00010236 a0 1b | | KERNCALL #0x1b
00010238 ; --------------------------------------------------------------------------------------
00010238 ; KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
00010238 ; Stack:
00010238 ; A6+0xe src : Pointer
00010238 ; A6+0xa dst : Pointer
00010238 ; A6+0x8 len : Word
00010238 ; --------------------------------------------------------------------------------------
00010238 KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word):
00010238 a0 1c | | KERNCALL #0x1c
0001023a ; --------------------------------------------------------------------------------------
0001023a ; KC1d_BusCopy(src : Pointer; sfc : Word; dst : Pointer; dfc : Word; len : Word
0001023a ; Stack:
0001023a ; A6+0x12 src : Pointer
0001023a ; A6+0x10 sfc : Word
0001023a ; A6+0xc dst : Pointer
0001023a ; A6+0xa dfc : Word
0001023a ; A6+0x8 len : Word
0001023a ; --------------------------------------------------------------------------------------
0001023a KC1d_BusCopy(src : Pointer; sfc : Word; dst : Pointer; dfc : Word; len : Word:
0001023a a0 1d | | KERNCALL #0x1d
0001023c ; --------------------------------------------------------------------------------------
0001023c ; KC1e_Fifo_Tx_Response(ptr : Pointer; chan : Word)
0001023c ; Stack:
0001023c ; A6+0xa ptr : Pointer
0001023c ; A6+0x8 chan : Word
0001023c ; --------------------------------------------------------------------------------------
0001023c KC1e_Fifo_Tx_Response(ptr : Pointer; chan : Word):
0001023c a0 1e | | KERNCALL #0x1e
0001023e ; --------------------------------------------------------------------------------------
0001023e ; KC1f_Fifo_Rx_Request(ptr : Pointer; chan : Word; VAR flag : Bool)
0001023e ; Stack:
0001023e ; A6+0xe ptr : Pointer
0001023e ; A6+0xc chan : Word
0001023e ; A6+0x8 VAR flag : Bool
0001023e ; --------------------------------------------------------------------------------------
0001023e KC1f_Fifo_Rx_Request(ptr : Pointer; chan : Word; VAR flag : Bool):
0001023e a0 1f | | KERNCALL #0x1f
00010240 ; --------------------------------------------------------------------------------------
00010240 ; KC20_Estop(void)
00010240 ; Stack:
00010240 ; --------------------------------------------------------------------------------------
00010240 KC20_Estop(void):
00010240 a0 20 | | KERNCALL #0x20
00010242 ; --------------------------------------------------------------------------------------
00010242 ; KERNCALL_21
00010242 ; --------------------------------------------------------------------------------------
00010242 KERNCALL_21:
00010242 a0 21 | ! | KERNCALL #0x21
00010244 ; --------------------------------------------------------------------------------------
00010244 ; KERNCALL_22
00010244 ; --------------------------------------------------------------------------------------
00010244 KERNCALL_22:
00010244 a0 22 | " | KERNCALL #0x22
00010246 ; --------------------------------------------------------------------------------------
00010246 ; KERNCALL_23
00010246 ; --------------------------------------------------------------------------------------
00010246 KERNCALL_23:
00010246 a0 23 | # | KERNCALL #0x23
00010248 ; --------------------------------------------------------------------------------------
00010248 ; KERNCALL_24
00010248 ; --------------------------------------------------------------------------------------
00010248 KERNCALL_24:
00010248 a0 24 | $ | KERNCALL #0x24
0001024a ; --------------------------------------------------------------------------------------
0001024a ; KERNCALL_25
0001024a ; --------------------------------------------------------------------------------------
0001024a KERNCALL_25:
0001024a a0 25 | % | KERNCALL #0x25
0001024c ; --------------------------------------------------------------------------------------
0001024c ; KERNCALL_26
0001024c ; --------------------------------------------------------------------------------------
0001024c KERNCALL_26:
0001024c a0 26 | & | KERNCALL #0x26
0001024e ; --------------------------------------------------------------------------------------
0001024e ; KERNCALL_27
0001024e ; --------------------------------------------------------------------------------------
0001024e KERNCALL_27:
0001024e a0 27 | ' | KERNCALL #0x27
00010250 ; --------------------------------------------------------------------------------------
00010250 ; KERNCALL_28
00010250 ; --------------------------------------------------------------------------------------
00010250 KERNCALL_28:
00010250 a0 28 | ( | KERNCALL #0x28
00010252 ; --------------------------------------------------------------------------------------
00010252 ; KERNCALL_29
00010252 ; --------------------------------------------------------------------------------------
00010252 KERNCALL_29:
00010252 a0 29 | ) | KERNCALL #0x29
00010254 ; --------------------------------------------------------------------------------------
00010254 ; KERNCALL_2a
00010254 ; --------------------------------------------------------------------------------------
00010254 KERNCALL_2a:
00010254 a0 2a | * | KERNCALL #0x2a
00010256 ; --------------------------------------------------------------------------------------
00010256 ; KERNCALL_2b
00010256 ; --------------------------------------------------------------------------------------
00010256 KERNCALL_2b:
00010256 a0 2b | + | KERNCALL #0x2b
00010258 ; --------------------------------------------------------------------------------------
00010258 ; KERNCALL_2c
00010258 ; --------------------------------------------------------------------------------------
00010258 KERNCALL_2c:
00010258 a0 2c | , | KERNCALL #0x2c
0001025a ; --------------------------------------------------------------------------------------
0001025a ; KERNCALL_2d
0001025a ; --------------------------------------------------------------------------------------
0001025a KERNCALL_2d:
0001025a a0 2d | - | KERNCALL #0x2d
0001025c ; --------------------------------------------------------------------------------------
0001025c ; KERNCALL_2e
0001025c ; --------------------------------------------------------------------------------------
0001025c KERNCALL_2e:
0001025c a0 2e | . | KERNCALL #0x2e
0001025e ; --------------------------------------------------------------------------------------
0001025e ; KERNCALL_2f
0001025e ; --------------------------------------------------------------------------------------
0001025e KERNCALL_2f:
0001025e a0 2f | / | KERNCALL #0x2f
00010260 ; --------------------------------------------------------------------------------------
00010260 ; KERNCALL_30
00010260 ; --------------------------------------------------------------------------------------
00010260 KERNCALL_30:
00010260 a0 30 | 0 | KERNCALL #0x30
00010262 ; --------------------------------------------------------------------------------------
00010262 ; KERNCALL_31
00010262 ; --------------------------------------------------------------------------------------
00010262 KERNCALL_31:
00010262 a0 31 | 1 | KERNCALL #0x31
00010264 ; --------------------------------------------------------------------------------------
00010264 ; KERNCALL_32
00010264 ; --------------------------------------------------------------------------------------
00010264 KERNCALL_32:
00010264 a0 32 | 2 | KERNCALL #0x32
00010266 ; --------------------------------------------------------------------------------------
00010266 ; KERNCALL_33
00010266 ; --------------------------------------------------------------------------------------
00010266 KERNCALL_33:
00010266 a0 33 | 3 | KERNCALL #0x33
00010268 ; --------------------------------------------------------------------------------------
00010268 ; KERNCALL_34
00010268 ; --------------------------------------------------------------------------------------
00010268 KERNCALL_34:
00010268 a0 34 | 4 | KERNCALL #0x34
0001026a ; --------------------------------------------------------------------------------------
0001026a ; KERNCALL_35
0001026a ; --------------------------------------------------------------------------------------
0001026a KERNCALL_35:
0001026a a0 35 | 5 | KERNCALL #0x35
0001026c ; --------------------------------------------------------------------------------------
0001026c ; KERNCALL_36
0001026c ; --------------------------------------------------------------------------------------
0001026c KERNCALL_36:
0001026c a0 36 | 6 | KERNCALL #0x36
0001026e ; --------------------------------------------------------------------------------------
0001026e ; KERNCALL_37
0001026e ; --------------------------------------------------------------------------------------
0001026e KERNCALL_37:
0001026e a0 37 | 7 | KERNCALL #0x37
00010270 ; --------------------------------------------------------------------------------------
00010270 ; KERNCALL_38
00010270 ; --------------------------------------------------------------------------------------
00010270 KERNCALL_38:
00010270 a0 38 | 8 | KERNCALL #0x38
00010272 ; --------------------------------------------------------------------------------------
00010272 ; KERNCALL_39
00010272 ; --------------------------------------------------------------------------------------
00010272 KERNCALL_39:
00010272 a0 39 | 9 | KERNCALL #0x39
00010274 ; --------------------------------------------------------------------------------------
00010274 ; KERNCALL_3a
00010274 ; --------------------------------------------------------------------------------------
00010274 KERNCALL_3a:
00010274 a0 3a | : | KERNCALL #0x3a
00010276 ; --------------------------------------------------------------------------------------
00010276 ; KERNCALL_3b
00010276 ; --------------------------------------------------------------------------------------
00010276 KERNCALL_3b:
00010276 a0 3b | ; | KERNCALL #0x3b
00010278 ; --------------------------------------------------------------------------------------
00010278 ; KERNCALL_3c
00010278 ; --------------------------------------------------------------------------------------
00010278 KERNCALL_3c:
00010278 a0 3c | < | KERNCALL #0x3c
0001027a ; --------------------------------------------------------------------------------------
0001027a ; KERNCALL_3d
0001027a ; --------------------------------------------------------------------------------------
0001027a KERNCALL_3d:
0001027a a0 3d | = | KERNCALL #0x3d
0001027c ; --------------------------------------------------------------------------------------
0001027c ; KERNCALL_3e
0001027c ; --------------------------------------------------------------------------------------
0001027c KERNCALL_3e:
0001027c a0 3e | > | KERNCALL #0x3e
0001027e ; --------------------------------------------------------------------------------------
0001027e ; KERNCALL_3f
0001027e ; --------------------------------------------------------------------------------------
0001027e KERNCALL_3f:
0001027e a0 3f | ? | KERNCALL #0x3f
00010280 ; --------------------------------------------------------------------------------------
00010280 ; ?start_program
00010280 ; --------------------------------------------------------------------------------------
00010280 ?start_program:
00010280 60 00 03 d4 |` | BRA _?start_program
00010284 ; --------------------------------------------------------------------------------------
00010284 ; ?exit
00010284 ; --------------------------------------------------------------------------------------
00010284 ?exit:
00010284 60 00 05 02 |` | BRA _?exit
00010288 ; --------------------------------------------------------------------------------------
00010288 ; FSCALL_10288
00010288 ; --------------------------------------------------------------------------------------
00010288 FSCALL_10288:
00010288 60 00 04 d4 |` | BRA _FSCALL_10288
0001028c ; --------------------------------------------------------------------------------------
0001028c ; ?muls_d3_d4
0001028c ; --------------------------------------------------------------------------------------
0001028c ?muls_d3_d4:
0001028c 60 00 05 5c |` \ | BRA _?muls_d3_d4
00010290 ; --------------------------------------------------------------------------------------
00010290 ; ?mulu_d3_d4
00010290 ; --------------------------------------------------------------------------------------
00010290 ?mulu_d3_d4:
00010290 60 00 05 62 |` b | BRA _?mulu_d3_d4
00010294 ; --------------------------------------------------------------------------------------
00010294 ; ?divs_d3_d4
00010294 ; --------------------------------------------------------------------------------------
00010294 ?divs_d3_d4:
00010294 60 00 05 74 |` t | BRA _?divs_d3_d4
00010298 ; --------------------------------------------------------------------------------------
00010298 ; ?divu_d3_d4
00010298 ; --------------------------------------------------------------------------------------
00010298 ?divu_d3_d4:
00010298 60 00 05 7c |` | | BRA _?divu_d3_d4
0001029c ; --------------------------------------------------------------------------------------
0001029c ; Malloc1(length : Long) : Pointer
0001029c ; Stack:
0001029c ; A6+0xc VAR RETURN : Pointer
0001029c ; A6+0x8 length : Long
0001029c ; --------------------------------------------------------------------------------------
0001029c Malloc1(length : Long) : Pointer:
0001029c 60 00 05 b8 |` | BRA _Malloc1(length : Long) : Pointer
000102a0 ; --------------------------------------------------------------------------------------
000102a0 ; Malloc2(VAR dst : Pointer; length : Word)
000102a0 ; Stack:
000102a0 ; A6+0xa VAR dst : Pointer
000102a0 ; A6+0x8 length : Word
000102a0 ; --------------------------------------------------------------------------------------
000102a0 Malloc2(VAR dst : Pointer; length : Word):
000102a0 60 00 05 98 |` | BRA _Malloc2(VAR dst : Pointer; length : Word)
000102a4 ; --------------------------------------------------------------------------------------
000102a4 ; Free1(a : Pointer; b : Long)
000102a4 ; Stack:
000102a4 ; A6+0xc a : Pointer
000102a4 ; A6+0x8 b : Long
000102a4 ; --------------------------------------------------------------------------------------
000102a4 Free1(a : Pointer; b : Long):
000102a4 60 00 06 38 |` 8 | BRA _Free1(a : Pointer; b : Long)
000102a8 ; --------------------------------------------------------------------------------------
000102a8 ; Free2(a : Pointer; b : Long)
000102a8 ; Stack:
000102a8 ; A6+0xc a : Pointer
000102a8 ; A6+0x8 b : Long
000102a8 ; --------------------------------------------------------------------------------------
000102a8 Free2(a : Pointer; b : Long):
000102a8 60 00 06 50 |` P | BRA _Free2(a : Pointer; b : Long)
000102ac ; --------------------------------------------------------------------------------------
000102ac ; FSCALL_102ac
000102ac ; --------------------------------------------------------------------------------------
000102ac FSCALL_102ac:
000102ac 60 00 09 b6 |` | BRA _FSCALL_102ac
000102b0 ; --------------------------------------------------------------------------------------
000102b0 ; FSCALL_102b0
000102b0 ; --------------------------------------------------------------------------------------
000102b0 FSCALL_102b0:
000102b0 60 00 09 da |` | BRA _FSCALL_102b0
000102b4 ; --------------------------------------------------------------------------------------
000102b4 ; FSCALL_102b4
000102b4 ; --------------------------------------------------------------------------------------
000102b4 FSCALL_102b4:
000102b4 60 00 07 9a |` | BRA _FSCALL_102b4
000102b8 ; --------------------------------------------------------------------------------------
000102b8 ; NewString(VAR a : String)
000102b8 ; Stack:
000102b8 ; A6+0x8 VAR a : String
000102b8 ; --------------------------------------------------------------------------------------
000102b8 NewString(VAR a : String):
000102b8 60 00 0a 40 |` @ | BRA _NewString(VAR a : String)
000102bc ; --------------------------------------------------------------------------------------
000102bc ; FreeString(VAR a : String)
000102bc ; Stack:
000102bc ; A6+0x8 VAR a : String
000102bc ; --------------------------------------------------------------------------------------
000102bc FreeString(VAR a : String):
000102bc 60 00 0a 78 |` x | BRA _FreeString(VAR a : String)
000102c0 ; --------------------------------------------------------------------------------------
000102c0 ; AppendChar(MOD b : String; a : char)
000102c0 ; Stack:
000102c0 ; A6+0xa b : String
000102c0 ; A6+0x8 a : char
000102c0 ; --------------------------------------------------------------------------------------
000102c0 AppendChar(MOD b : String; a : char):
000102c0 60 00 0a a4 |` | BRA _AppendChar(MOD b : String; a : char)
000102c4 ; --------------------------------------------------------------------------------------
000102c4 ; StringLit(Src : Pointer; Offset: W; Len : W) : String
000102c4 ; Stack:
000102c4 ; A6+0x10 VAR RETURN : String
000102c4 ; A6+0xc Src : Pointer
000102c4 ; A6+0xa Offset : W
000102c4 ; A6+0x8 Len : W
000102c4 ; --------------------------------------------------------------------------------------
000102c4 StringLit(Src : Pointer; Offset: W; Len : W) : String:
000102c4 60 00 0a de |` | BRA _StringLit(Src : Pointer; Offset: W; Len : W) : String
000102c8 ; --------------------------------------------------------------------------------------
000102c8 ; StringEqual(a, b : String) : Byte
000102c8 ; Stack:
000102c8 ; A6+0x10 VAR RETURN : Byte
000102c8 ; A6+0xc a : String
000102c8 ; A6+0x8 b : String
000102c8 ; --------------------------------------------------------------------------------------
000102c8 StringEqual(a, b : String) : Byte:
000102c8 60 00 0b 98 |` | BRA _StringEqual(a, b : String) : Byte
000102cc ; --------------------------------------------------------------------------------------
000102cc ; StringDup(a : String) : String
000102cc ; Stack:
000102cc ; A6+0xc VAR RETURN : String
000102cc ; A6+0x8 a : String
000102cc ; --------------------------------------------------------------------------------------
000102cc StringDup(a : String) : String:
000102cc 60 00 0c 0c |` | BRA _StringDup(a : String) : String
000102d0 ; --------------------------------------------------------------------------------------
000102d0 ; StringCat2(a, b : String) : String
000102d0 ; Stack:
000102d0 ; A6+0x10 VAR RETURN : String
000102d0 ; A6+0xc a : String
000102d0 ; A6+0x8 b : String
000102d0 ; --------------------------------------------------------------------------------------
000102d0 StringCat2(a, b : String) : String:
000102d0 60 00 0c 5a |` Z | BRA _StringCat2(a, b : String) : String
000102d4 ; --------------------------------------------------------------------------------------
000102d4 ; StringCat3(a, b, c : String) : String
000102d4 ; Stack:
000102d4 ; A6+0x14 VAR RETURN : String
000102d4 ; A6+0x10 a : String
000102d4 ; A6+0xc b : String
000102d4 ; A6+0x8 c : String
000102d4 ; --------------------------------------------------------------------------------------
000102d4 StringCat3(a, b, c : String) : String:
000102d4 60 00 0c f4 |` | BRA _StringCat3(a, b, c : String) : String
000102d8 ; --------------------------------------------------------------------------------------
000102d8 ; StringCat4(a, b, c, d : String) : String
000102d8 ; Stack:
000102d8 ; A6+0x18 VAR RETURN : String
000102d8 ; A6+0x14 a : String
000102d8 ; A6+0x10 b : String
000102d8 ; A6+0xc c : String
000102d8 ; A6+0x8 d : String
000102d8 ; --------------------------------------------------------------------------------------
000102d8 StringCat4(a, b, c, d : String) : String:
000102d8 60 00 0d 26 |` & | BRA _StringCat4(a, b, c, d : String) : String
000102dc ; --------------------------------------------------------------------------------------
000102dc ; StringCat5(a, b, c, d, e : String) : String
000102dc ; Stack:
000102dc ; A6+0x1c VAR RETURN : String
000102dc ; A6+0x18 a : String
000102dc ; A6+0x14 b : String
000102dc ; A6+0x10 c : String
000102dc ; A6+0xc d : String
000102dc ; A6+0x8 e : String
000102dc ; --------------------------------------------------------------------------------------
000102dc StringCat5(a, b, c, d, e : String) : String:
000102dc 60 00 0d 5e |` ^ | BRA _StringCat5(a, b, c, d, e : String) : String
000102e0 ; --------------------------------------------------------------------------------------
000102e0 ; StringCat6(a, b, c, d, e, f : String) : String
000102e0 ; Stack:
000102e0 ; A6+0x20 VAR RETURN : String
000102e0 ; A6+0x1c a : String
000102e0 ; A6+0x18 b : String
000102e0 ; A6+0x14 c : String
000102e0 ; A6+0x10 d : String
000102e0 ; A6+0xc e : String
000102e0 ; A6+0x8 f : String
000102e0 ; --------------------------------------------------------------------------------------
000102e0 StringCat6(a, b, c, d, e, f : String) : String:
000102e0 60 00 0d 9a |` | BRA _StringCat6(a, b, c, d, e, f : String) : String
000102e4 ; --------------------------------------------------------------------------------------
000102e4 ; Long2String(a : Long) : String
000102e4 ; Stack:
000102e4 ; A6+0xc VAR RETURN : String
000102e4 ; A6+0x8 a : Long
000102e4 ; --------------------------------------------------------------------------------------
000102e4 Long2String(a : Long) : String:
000102e4 60 00 0d da |` | BRA _Long2String(a : Long) : String
000102e8 ; --------------------------------------------------------------------------------------
000102e8 ; Long2HexString(val : Long; ndig : Long) : String
000102e8 ; Stack:
000102e8 ; A6+0x10 VAR RETURN : String
000102e8 ; A6+0xc val : Long
000102e8 ; A6+0x8 ndig : Long
000102e8 ; --------------------------------------------------------------------------------------
000102e8 Long2HexString(val : Long; ndig : Long) : String:
000102e8 60 00 0e e4 |` | BRA _Long2HexString(val : Long; ndig : Long) : String
000102ec ; --------------------------------------------------------------------------------------
000102ec ; String2Long(src : String; VAR status : Bool; VAR retval : Long)
000102ec ; Stack:
000102ec ; A6+0x10 src : String
000102ec ; A6+0xc VAR status : Bool
000102ec ; A6+0x8 VAR retval : Long
000102ec ; --------------------------------------------------------------------------------------
000102ec String2Long(src : String; VAR status : Bool; VAR retval : Long):
000102ec 60 00 0f 8e |` | BRA _String2Long(src : String; VAR status : Bool; VAR retval : Long)
000102f0 ; --------------------------------------------------------------------------------------
000102f0 ; ToUpper(a : String) : String
000102f0 ; Stack:
000102f0 ; A6+0xc VAR RETURN : String
000102f0 ; A6+0x8 a : String
000102f0 ; --------------------------------------------------------------------------------------
000102f0 ToUpper(a : String) : String:
000102f0 60 00 10 be |` | BRA _ToUpper(a : String) : String
000102f4 ; --------------------------------------------------------------------------------------
000102f4 ; RightPad(a : String; b : Long) : String
000102f4 ; Stack:
000102f4 ; A6+0x10 VAR RETURN : String
000102f4 ; A6+0xc a : String
000102f4 ; A6+0x8 b : Long
000102f4 ; --------------------------------------------------------------------------------------
000102f4 RightPad(a : String; b : Long) : String:
000102f4 60 00 11 30 |` 0 | BRA _RightPad(a : String; b : Long) : String
000102f8 ; --------------------------------------------------------------------------------------
000102f8 ; LeftPad(a : String; b : Long) : String
000102f8 ; Stack:
000102f8 ; A6+0x10 VAR RETURN : String
000102f8 ; A6+0xc a : String
000102f8 ; A6+0x8 b : Long
000102f8 ; --------------------------------------------------------------------------------------
000102f8 LeftPad(a : String; b : Long) : String:
000102f8 60 00 11 92 |` | BRA _LeftPad(a : String; b : Long) : String
000102fc ; --------------------------------------------------------------------------------------
000102fc ; FirstField(MOD input : String; MOD output : String; VAR c : Bool
000102fc ; Stack:
000102fc ; A6+0x10 input : String
000102fc ; A6+0xc output : String
000102fc ; A6+0x8 VAR c : Bool
000102fc ; --------------------------------------------------------------------------------------
000102fc FirstField(MOD input : String; MOD output : String; VAR c : Bool:
000102fc 60 00 11 ec |` | BRA _FirstField(MOD input : String; MOD output : String; VAR c : Bool
00010300 ; --------------------------------------------------------------------------------------
00010300 ; FSCALL_10300
00010300 ; --------------------------------------------------------------------------------------
00010300 FSCALL_10300:
00010300 60 00 12 f2 |` | BRA _FSCALL_10300
00010304 ; --------------------------------------------------------------------------------------
00010304 ; GetRtc() : TimeStamp
00010304 ; Stack:
00010304 ; A6+0x8 VAR RETURN : TimeStamp
00010304 ; --------------------------------------------------------------------------------------
00010304 GetRtc() : TimeStamp:
00010304 60 00 13 e8 |` | BRA _GetRtc() : TimeStamp
00010308 ; --------------------------------------------------------------------------------------
00010308 ; TimeToText()
00010308 ; --------------------------------------------------------------------------------------
00010308 TimeToText():
00010308 60 00 15 f0 |` | BRA _TimeToText()
0001030c ; --------------------------------------------------------------------------------------
0001030c ; SetRtc(a: TimeStamp)
0001030c ; Stack:
0001030c ; A6+0x8 a : TimeStamp
0001030c ; --------------------------------------------------------------------------------------
0001030c SetRtc(a: TimeStamp):
0001030c 60 00 14 c6 |` | BRA _SetRtc(a: TimeStamp)
00010310 ; --------------------------------------------------------------------------------------
00010310 ; ConvertTimestamp(MOD input : String; b : L; VAR status : Bool)
00010310 ; Stack:
00010310 ; A6+0x10 input : String
00010310 ; A6+0xc b : L
00010310 ; A6+0x8 VAR status : Bool
00010310 ; --------------------------------------------------------------------------------------
00010310 ConvertTimestamp(MOD input : String; b : L; VAR status : Bool):
00010310 60 00 18 72 |` r | BRA _ConvertTimestamp(MOD input : String; b : L; VAR status : Bool)
00010314 ; --------------------------------------------------------------------------------------
00010314 ; Add(a, b : Quad) : Quad
00010314 ; Stack:
00010314 ; A6+0x18 VAR RETURN : Quad
00010314 ; A6+0x10 a : Quad
00010314 ; A6+0x8 b : Quad
00010314 ; --------------------------------------------------------------------------------------
00010314 Add(a, b : Quad) : Quad:
00010314 60 00 19 ee |` | BRA _Add(a, b : Quad) : Quad
00010318 ; --------------------------------------------------------------------------------------
00010318 ; Subtract(a, b : Quad) : Quad
00010318 ; Stack:
00010318 ; A6+0x18 VAR RETURN : Quad
00010318 ; A6+0x10 a : Quad
00010318 ; A6+0x8 b : Quad
00010318 ; --------------------------------------------------------------------------------------
00010318 Subtract(a, b : Quad) : Quad:
00010318 60 00 1a 24 |` $ | BRA _Subtract(a, b : Quad) : Quad
0001031c ; --------------------------------------------------------------------------------------
0001031c ; Multiply(a, b : Quad) : Quad
0001031c ; Stack:
0001031c ; A6+0x18 VAR RETURN : Quad
0001031c ; A6+0x10 a : Quad
0001031c ; A6+0x8 b : Quad
0001031c ; --------------------------------------------------------------------------------------
0001031c Multiply(a, b : Quad) : Quad:
0001031c 60 00 1a 5a |` Z | BRA _Multiply(a, b : Quad) : Quad
00010320 ; --------------------------------------------------------------------------------------
00010320 ; Divide(a, b : Quad) : Quad
00010320 ; Stack:
00010320 ; A6+0x18 VAR RETURN : Quad
00010320 ; A6+0x10 a : Quad
00010320 ; A6+0x8 b : Quad
00010320 ; --------------------------------------------------------------------------------------
00010320 Divide(a, b : Quad) : Quad:
00010320 60 00 1a ca |` | BRA _Divide(a, b : Quad) : Quad
00010324 ; --------------------------------------------------------------------------------------
00010324 ; IsGreater(a, b : Quad) : Bool
00010324 ; Stack:
00010324 ; A6+0x18 VAR RETURN : Bool
00010324 ; A6+0x10 a : Quad
00010324 ; A6+0x8 b : Quad
00010324 ; --------------------------------------------------------------------------------------
00010324 IsGreater(a, b : Quad) : Bool:
00010324 60 00 1b 74 |` t | BRA _IsGreater(a, b : Quad) : Bool
00010328 ; --------------------------------------------------------------------------------------
00010328 ; IsSmaller(a, b : Quad) : Bool
00010328 ; Stack:
00010328 ; A6+0x18 VAR RETURN : Bool
00010328 ; A6+0x10 a : Quad
00010328 ; A6+0x8 b : Quad
00010328 ; --------------------------------------------------------------------------------------
00010328 IsSmaller(a, b : Quad) : Bool:
00010328 60 00 1b a4 |` | BRA _IsSmaller(a, b : Quad) : Bool
0001032c ; --------------------------------------------------------------------------------------
0001032c ; IsEqual(a, b : Quad) : Bool
0001032c ; Stack:
0001032c ; A6+0x18 VAR RETURN : Bool
0001032c ; A6+0x10 a : Quad
0001032c ; A6+0x8 b : Quad
0001032c ; --------------------------------------------------------------------------------------
0001032c IsEqual(a, b : Quad) : Bool:
0001032c 60 00 1b d4 |` | BRA _IsEqual(a, b : Quad) : Bool
00010330 ; --------------------------------------------------------------------------------------
00010330 ; BitAnd(a, b : Quad) : Quad
00010330 ; Stack:
00010330 ; A6+0x18 VAR RETURN : Quad
00010330 ; A6+0x10 a : Quad
00010330 ; A6+0x8 b : Quad
00010330 ; --------------------------------------------------------------------------------------
00010330 BitAnd(a, b : Quad) : Quad:
00010330 60 00 1c 02 |` | BRA _BitAnd(a, b : Quad) : Quad
00010334 ; --------------------------------------------------------------------------------------
00010334 ; BitOr(a, b : Quad) : Quad
00010334 ; Stack:
00010334 ; A6+0x18 VAR RETURN : Quad
00010334 ; A6+0x10 a : Quad
00010334 ; A6+0x8 b : Quad
00010334 ; --------------------------------------------------------------------------------------
00010334 BitOr(a, b : Quad) : Quad:
00010334 60 00 1c 2a |` * | BRA _BitOr(a, b : Quad) : Quad
00010338 ; --------------------------------------------------------------------------------------
00010338 ; BitNot(a : Quad) : Quad
00010338 ; Stack:
00010338 ; A6+0x10 VAR RETURN : Quad
00010338 ; A6+0x8 a : Quad
00010338 ; --------------------------------------------------------------------------------------
00010338 BitNot(a : Quad) : Quad:
00010338 60 00 1c 52 |` R | BRA _BitNot(a : Quad) : Quad
0001033c ; --------------------------------------------------------------------------------------
0001033c ; Negate(a : Quad) : Quad
0001033c ; Stack:
0001033c ; A6+0x10 VAR RETURN : Quad
0001033c ; A6+0x8 a : Quad
0001033c ; --------------------------------------------------------------------------------------
0001033c Negate(a : Quad) : Quad:
0001033c 60 00 1c 76 |` v | BRA _Negate(a : Quad) : Quad
00010340 ; --------------------------------------------------------------------------------------
00010340 ; BitXor(a, b : Quad) : Quad
00010340 ; Stack:
00010340 ; A6+0x18 VAR RETURN : Quad
00010340 ; A6+0x10 a : Quad
00010340 ; A6+0x8 b : Quad
00010340 ; --------------------------------------------------------------------------------------
00010340 BitXor(a, b : Quad) : Quad:
00010340 60 00 1c a6 |` | BRA _BitXor(a, b : Quad) : Quad
00010344 ; --------------------------------------------------------------------------------------
00010344 ; BitShift(a : Quad ; howmuch : integer) : Quad
00010344 ; Stack:
00010344 ; A6+0x14 VAR RETURN : Quad
00010344 ; A6+0xc a : Quad
00010344 ; A6+0x8 howmuch : integer
00010344 ; --------------------------------------------------------------------------------------
00010344 BitShift(a : Quad ; howmuch : integer) : Quad:
00010344 60 00 1c d2 |` | BRA _BitShift(a : Quad ; howmuch : integer) : Quad
00010348 ; --------------------------------------------------------------------------------------
00010348 ; ?BitField_something_()
00010348 ; --------------------------------------------------------------------------------------
00010348 ?BitField_something_():
00010348 60 00 1d 10 |` | BRA _?BitField_something_()
0001034c ; --------------------------------------------------------------------------------------
0001034c ; FSCALL_1034c
0001034c ; --------------------------------------------------------------------------------------
0001034c FSCALL_1034c:
0001034c 60 00 1d 92 |` | BRA _FSCALL_1034c
00010350 ; --------------------------------------------------------------------------------------
00010350 ; Quad2Long(a : Quad) : Long
00010350 ; Stack:
00010350 ; A6+0x10 VAR RETURN : Long
00010350 ; A6+0x8 a : Quad
00010350 ; --------------------------------------------------------------------------------------
00010350 Quad2Long(a : Quad) : Long:
00010350 60 00 1e 06 |` | BRA _Quad2Long(a : Quad) : Long
00010354 ; --------------------------------------------------------------------------------------
00010354 ; Long2Quad(a : Long) : Quad
00010354 ; Stack:
00010354 ; A6+0xc VAR RETURN : Quad
00010354 ; A6+0x8 a : Long
00010354 ; --------------------------------------------------------------------------------------
00010354 Long2Quad(a : Long) : Quad:
00010354 60 00 1e 14 |` | BRA _Long2Quad(a : Long) : Quad
00010358 ; --------------------------------------------------------------------------------------
00010358 ; Modulus(a, b : Quad) : Quad
00010358 ; Stack:
00010358 ; A6+0x18 VAR RETURN : Quad
00010358 ; A6+0x10 a : Quad
00010358 ; A6+0x8 b : Quad
00010358 ; --------------------------------------------------------------------------------------
00010358 Modulus(a, b : Quad) : Quad:
00010358 60 00 1e 80 |` | BRA _Modulus(a, b : Quad) : Quad
0001035c ; --------------------------------------------------------------------------------------
0001035c ; Quad2String(a : Quad; radix : Long ) : String
0001035c ; Stack:
0001035c ; A6+0x14 VAR RETURN : String
0001035c ; A6+0xc a : Quad
0001035c ; A6+0x8 radix : Long
0001035c ; --------------------------------------------------------------------------------------
0001035c Quad2String(a : Quad; radix : Long ) : String:
0001035c 60 00 20 7a |` z | BRA _Quad2String(a : Quad; radix : Long ) : String
00010360 ; --------------------------------------------------------------------------------------
00010360 ; ?StringToInt64()
00010360 ; --------------------------------------------------------------------------------------
00010360 ?StringToInt64():
00010360 60 00 1e de |` | BRA _?StringToInt64()
00010364 ; --------------------------------------------------------------------------------------
00010364 ; MovStringTail(Base, Len, Ptr, Delta)
00010364 ; --------------------------------------------------------------------------------------
00010364 MovStringTail(Base, Len, Ptr, Delta):
00010364 60 00 22 58 |` "X | BRA _MovStringTail(Base, Len, Ptr, Delta)
00010368 ; --------------------------------------------------------------------------------------
00010368 ; Lba2Chs(lba : W; VAR cyl : W ; VAR hd_sec : W)
00010368 ; Stack:
00010368 ; A6+0x10 lba : W
00010368 ; A6+0xc VAR cyl : W
00010368 ; A6+0x8 VAR hd_sec : W
00010368 ; --------------------------------------------------------------------------------------
00010368 Lba2Chs(lba : W; VAR cyl : W ; VAR hd_sec : W):
00010368 60 00 22 a6 |` " | BRA _Lba2Chs(lba : W; VAR cyl : W ; VAR hd_sec : W)
0001036c ; --------------------------------------------------------------------------------------
0001036c ; RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
0001036c ; Stack:
0001036c ; A6+0x16 oper : B
0001036c ; A6+0x14 lba : Word
0001036c ; A6+0x10 cnt : L
0001036c ; A6+0xc ptr : Pointer
0001036c ; A6+0x8 VAR status : B
0001036c ; --------------------------------------------------------------------------------------
0001036c RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B):
0001036c 60 00 24 56 |` $V | BRA _RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
00010370 ; --------------------------------------------------------------------------------------
00010370 ; ReadWords(lba : W; offset : W; ptr : L; nwords : W; VAR status : B)
00010370 ; Stack:
00010370 ; A6+0x14 lba : W
00010370 ; A6+0x12 offset : W
00010370 ; A6+0xe ptr : L
00010370 ; A6+0xc nwords : W
00010370 ; A6+0x8 VAR status : B
00010370 ; --------------------------------------------------------------------------------------
00010370 ReadWords(lba : W; offset : W; ptr : L; nwords : W; VAR status : B):
00010370 60 00 26 22 |` &" | BRA _ReadWords(lba : W; offset : W; ptr : L; nwords : W; VAR status : B)
00010374 ; --------------------------------------------------------------------------------------
00010374 ; WriteWords(lba : W; offset : W; ptr : L; nwords : W; VAR status : B)
00010374 ; Stack:
00010374 ; A6+0x14 lba : W
00010374 ; A6+0x12 offset : W
00010374 ; A6+0xe ptr : L
00010374 ; A6+0xc nwords : W
00010374 ; A6+0x8 VAR status : B
00010374 ; --------------------------------------------------------------------------------------
00010374 WriteWords(lba : W; offset : W; ptr : L; nwords : W; VAR status : B):
00010374 60 00 26 e4 |` & | BRA _WriteWords(lba : W; offset : W; ptr : L; nwords : W; VAR status : B)
00010378 ; --------------------------------------------------------------------------------------
00010378 ; FS10378(MOD a : File; b: Byte; VAR c: Bool)
00010378 ; Stack:
00010378 ; A6+0xe a : File
00010378 ; A6+0xc b : Byte
00010378 ; A6+0x8 VAR c : Bool
00010378 ; --------------------------------------------------------------------------------------
00010378 FS10378(MOD a : File; b: Byte; VAR c: Bool):
00010378 60 00 29 8c |` ) | BRA _FS10378(MOD a : File; b: Byte; VAR c: Bool)
0001037c ; --------------------------------------------------------------------------------------
0001037c ; FS1037c(MOD a : File)
0001037c ; Stack:
0001037c ; A6+0x8 a : File
0001037c ; --------------------------------------------------------------------------------------
0001037c FS1037c(MOD a : File):
0001037c 60 00 2a b0 |` * | BRA _FS1037c(MOD a : File)
00010380 ; --------------------------------------------------------------------------------------
00010380 ; OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
00010380 ; Stack:
00010380 ; A6+0x18 name : String
00010380 ; A6+0x16 a : W
00010380 ; A6+0x14 b : B
00010380 ; A6+0x10 c : L
00010380 ; A6+0xc VAR status : B
00010380 ; A6+0x8 VAR file : File
00010380 ; --------------------------------------------------------------------------------------
00010380 OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File):
00010380 60 00 35 32 |` 52 | BRA _OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
00010384 ; --------------------------------------------------------------------------------------
00010384 ; ReadFile(file : File; w : W; x : W; a : W; b: B; c : L; d : L)
00010384 ; Stack:
00010384 ; A6+0x18 file : File
00010384 ; A6+0x16 w : W
00010384 ; A6+0x14 x : W
00010384 ; A6+0x12 a : W
00010384 ; A6+0x10 b : B
00010384 ; A6+0xc c : L
00010384 ; A6+0x8 d : L
00010384 ; --------------------------------------------------------------------------------------
00010384 ReadFile(file : File; w : W; x : W; a : W; b: B; c : L; d : L):
00010384 60 00 37 60 |` 7` | BRA _ReadFile(file : File; w : W; x : W; a : W; b: B; c : L; d : L)
00010388 ; --------------------------------------------------------------------------------------
00010388 ; WriteFile(file : File; y : W; x : W; a : W; b: B; c: L; d: L)
00010388 ; Stack:
00010388 ; A6+0x18 file : File
00010388 ; A6+0x16 y : W
00010388 ; A6+0x14 x : W
00010388 ; A6+0x12 a : W
00010388 ; A6+0x10 b : B
00010388 ; A6+0xc c : L
00010388 ; A6+0x8 d : L
00010388 ; --------------------------------------------------------------------------------------
00010388 WriteFile(file : File; y : W; x : W; a : W; b: B; c: L; d: L):
00010388 60 00 38 2e |` 8. | BRA _WriteFile(file : File; y : W; x : W; a : W; b: B; c: L; d: L)
0001038c ; --------------------------------------------------------------------------------------
0001038c ; CloseFile(a : L; VAR status : B; VAR file : File)
0001038c ; Stack:
0001038c ; A6+0x10 a : L
0001038c ; A6+0xc VAR status : B
0001038c ; A6+0x8 VAR file : File
0001038c ; --------------------------------------------------------------------------------------
0001038c CloseFile(a : L; VAR status : B; VAR file : File):
0001038c 60 00 38 fc |` 8 | BRA _CloseFile(a : L; VAR status : B; VAR file : File)
00010390 ; --------------------------------------------------------------------------------------
00010390 ; WriteFreeList(void)
00010390 ; Stack:
00010390 ; --------------------------------------------------------------------------------------
00010390 WriteFreeList(void):
00010390 60 00 3a ca |` : | BRA _WriteFreeList(void)
00010394 ; --------------------------------------------------------------------------------------
00010394 ; MountDisk(drive : Word ; VAR status : Byte)
00010394 ; Stack:
00010394 ; A6+0xc drive : Word
00010394 ; A6+0x8 VAR status : Byte
00010394 ; --------------------------------------------------------------------------------------
00010394 MountDisk(drive : Word ; VAR status : Byte):
00010394 60 00 3b 4e |` ;N | BRA _MountDisk(drive : Word ; VAR status : Byte)
00010398 ; --------------------------------------------------------------------------------------
00010398 ; FSCALL_10398
00010398 ; --------------------------------------------------------------------------------------
00010398 FSCALL_10398:
00010398 60 00 3c aa |` < | BRA _FSCALL_10398
0001039c ; --------------------------------------------------------------------------------------
0001039c ; InitProg(void)
0001039c ; Stack:
0001039c ; --------------------------------------------------------------------------------------
0001039c InitProg(void):
0001039c 60 00 3d f4 |` = | BRA _InitProg(void)
000103a0 ; --------------------------------------------------------------------------------------
000103a0 ; FsErrMsgStr(err: Byte) : String
000103a0 ; Stack:
000103a0 ; A6+0xa VAR RETURN : String
000103a0 ; A6+0x8 err : Byte
000103a0 ; --------------------------------------------------------------------------------------
000103a0 FsErrMsgStr(err: Byte) : String:
000103a0 60 00 3f 6a |` ?j | BRA _FsErrMsgStr(err: Byte) : String
000103a4 ; --------------------------------------------------------------------------------------
000103a4 ; Open_ERROR_LOG(void)
000103a4 ; Stack:
000103a4 ; --------------------------------------------------------------------------------------
000103a4 Open_ERROR_LOG(void):
000103a4 60 00 40 b2 |` @ | BRA _Open_ERROR_LOG(void)
000103a8 ; --------------------------------------------------------------------------------------
000103a8 ; Write_ERROR_LOG(VAR a : Bool; MOD b : Pointer)
000103a8 ; Stack:
000103a8 ; A6+0xc VAR a : Bool
000103a8 ; A6+0x8 b : Pointer
000103a8 ; --------------------------------------------------------------------------------------
000103a8 Write_ERROR_LOG(VAR a : Bool; MOD b : Pointer):
000103a8 60 00 41 3c |` A< | BRA _Write_ERROR_LOG(VAR a : Bool; MOD b : Pointer)
000103ac ; --------------------------------------------------------------------------------------
000103ac ; Set_is_open_ERROR_LOG(a : Bool)
000103ac ; Stack:
000103ac ; A6+0x8 a : Bool
000103ac ; --------------------------------------------------------------------------------------
000103ac Set_is_open_ERROR_LOG(a : Bool):
000103ac 60 00 43 92 |` C | BRA _Set_is_open_ERROR_LOG(a : Bool)
000103b0 ; --------------------------------------------------------------------------------------
000103b0 ; PushProgram(a : String; b : String; MOD c : B; VAR d : Bool)
000103b0 ; Stack:
000103b0 ; A6+0x12 a : String
000103b0 ; A6+0xe b : String
000103b0 ; A6+0xc c : B
000103b0 ; A6+0x8 VAR d : Bool
000103b0 ; --------------------------------------------------------------------------------------
000103b0 PushProgram(a : String; b : String; MOD c : B; VAR d : Bool):
000103b0 60 00 43 ac |` C | BRA _PushProgram(a : String; b : String; MOD c : B; VAR d : Bool)
000103b4 ; --------------------------------------------------------------------------------------
000103b4 ; WriteProgToSwapFile(prog: String; args: String)
000103b4 ; Stack:
000103b4 ; A6+0xc prog : String
000103b4 ; A6+0x8 args : String
000103b4 ; --------------------------------------------------------------------------------------
000103b4 WriteProgToSwapFile(prog: String; args: String):
000103b4 60 00 48 56 |` HV | BRA _WriteProgToSwapFile(prog: String; args: String)
000103b8 ; --------------------------------------------------------------------------------------
000103b8 ; PopProgram(status : Byte; msg : String)
000103b8 ; Stack:
000103b8 ; A6+0xc status : Byte
000103b8 ; A6+0x8 msg : String
000103b8 ; --------------------------------------------------------------------------------------
000103b8 PopProgram(status : Byte; msg : String):
000103b8 60 00 4a 5e |` J^ | BRA _PopProgram(status : Byte; msg : String)
000103bc ; --------------------------------------------------------------------------------------
000103bc ; ?FS103bc(MOD a: String; VAR b: Bool) : Bool
000103bc ; Stack:
000103bc ; A6+0x10 VAR RETURN : Bool
000103bc ; A6+0xc a : String
000103bc ; A6+0x8 VAR b : Bool
000103bc ; --------------------------------------------------------------------------------------
000103bc ?FS103bc(MOD a: String; VAR b: Bool) : Bool:
000103bc 60 00 4b aa |` K | BRA _?FS103bc(MOD a: String; VAR b: Bool) : Bool
000103c0 ; --------------------------------------------------------------------------------------
000103c0 ; ExpErrMsg(a: Byte) : String
000103c0 ; Stack:
000103c0 ; A6+0xa VAR RETURN : String
000103c0 ; A6+0x8 a : Byte
000103c0 ; --------------------------------------------------------------------------------------
000103c0 ExpErrMsg(a: Byte) : String:
000103c0 60 00 4c 54 |` LT | BRA _ExpErrMsg(a: Byte) : String
000103c4 ; --------------------------------------------------------------------------------------
000103c4 ; GetArgv() : String
000103c4 ; Stack:
000103c4 ; A6+0x8 VAR RETURN : String
000103c4 ; --------------------------------------------------------------------------------------
000103c4 GetArgv() : String:
000103c4 60 00 4c a2 |` L | BRA _GetArgv() : String
000103c8 ; --------------------------------------------------------------------------------------
000103c8 ; FSCALL_103c8
000103c8 ; --------------------------------------------------------------------------------------
000103c8 FSCALL_103c8:
000103c8 60 00 4c de |` L | BRA _FSCALL_103c8
000103cc ; --------------------------------------------------------------------------------------
000103cc ; GetPushLevel() : Long
000103cc ; Stack:
000103cc ; A6+0x8 VAR RETURN : Long
000103cc ; --------------------------------------------------------------------------------------
000103cc GetPushLevel() : Long:
000103cc 60 00 4d 1a |` M | BRA _GetPushLevel() : Long
000103d0 ; --------------------------------------------------------------------------------------
000103d0 ; WriteConsoleChar(chr : char)
000103d0 ; Stack:
000103d0 ; A6+0x8 chr : char
000103d0 ; --------------------------------------------------------------------------------------
000103d0 WriteConsoleChar(chr : char):
000103d0 60 00 4e 3e |` N> | BRA _WriteConsoleChar(chr : char)
000103d4 ; --------------------------------------------------------------------------------------
000103d4 ; ReadChar() : Byte
000103d4 ; Stack:
000103d4 ; A6+0x8 VAR RETURN : Byte
000103d4 ; --------------------------------------------------------------------------------------
000103d4 ReadChar() : Byte:
000103d4 60 00 4e b0 |` N | BRA _ReadChar() : Byte
000103d8 ; --------------------------------------------------------------------------------------
000103d8 ; WriteConsoleString(str : String)
000103d8 ; Stack:
000103d8 ; A6+0x8 str : String
000103d8 ; --------------------------------------------------------------------------------------
000103d8 WriteConsoleString(str : String):
000103d8 60 00 4f b8 |` O | BRA _WriteConsoleString(str : String)
000103dc ; --------------------------------------------------------------------------------------
000103dc ; WriteConsoleCrLf(void)
000103dc ; Stack:
000103dc ; --------------------------------------------------------------------------------------
000103dc WriteConsoleCrLf(void):
000103dc 60 00 50 2c |` P, | BRA _WriteConsoleCrLf(void)
000103e0 ; --------------------------------------------------------------------------------------
000103e0 ; WriteConsoleStringCrLf(str : String)
000103e0 ; Stack:
000103e0 ; A6+0x8 str : String
000103e0 ; --------------------------------------------------------------------------------------
000103e0 WriteConsoleStringCrLf(str : String):
000103e0 60 00 50 ce |` P | BRA _WriteConsoleStringCrLf(str : String)
000103e4 ; --------------------------------------------------------------------------------------
000103e4 ; AskConsoleString(prompt : String) : String
000103e4 ; Stack:
000103e4 ; A6+0xc VAR RETURN : String
000103e4 ; A6+0x8 prompt : String
000103e4 ; --------------------------------------------------------------------------------------
000103e4 AskConsoleString(prompt : String) : String:
000103e4 60 00 52 ae |` R | BRA _AskConsoleString(prompt : String) : String
000103e8 ; --------------------------------------------------------------------------------------
000103e8 ; AskOnConsoleInt(prompt: String) : Long
000103e8 ; Stack:
000103e8 ; A6+0xc VAR RETURN : Long
000103e8 ; A6+0x8 prompt : String
000103e8 ; --------------------------------------------------------------------------------------
000103e8 AskOnConsoleInt(prompt: String) : Long:
000103e8 60 00 54 d6 |` T | BRA _AskOnConsoleInt(prompt: String) : Long
000103ec ; --------------------------------------------------------------------------------------
000103ec ; AskOnConsoleIntRange(prompt: String; low : Long; High : Long) : Long
000103ec ; Stack:
000103ec ; A6+0x14 VAR RETURN : Long
000103ec ; A6+0x10 prompt : String
000103ec ; A6+0xc low : Long
000103ec ; A6+0x8 High : Long
000103ec ; --------------------------------------------------------------------------------------
000103ec AskOnConsoleIntRange(prompt: String; low : Long; High : Long) : Long:
000103ec 60 00 55 62 |` Ub | BRA _AskOnConsoleIntRange(prompt: String; low : Long; High : Long) : Long
000103f0 ; --------------------------------------------------------------------------------------
000103f0 ; AskOnConsoleYesNo(prompt : String; default : Bool) : Bool
000103f0 ; Stack:
000103f0 ; A6+0xe VAR RETURN : Bool
000103f0 ; A6+0xa prompt : String
000103f0 ; A6+0x8 default : Bool
000103f0 ; --------------------------------------------------------------------------------------
000103f0 AskOnConsoleYesNo(prompt : String; default : Bool) : Bool:
000103f0 60 00 56 24 |` V$ | BRA _AskOnConsoleYesNo(prompt : String; default : Bool) : Bool
000103f4 ; --------------------------------------------------------------------------------------
000103f4 ; SetConsoleConfig(a : Long)
000103f4 ; Stack:
000103f4 ; A6+0x8 a : Long
000103f4 ; --------------------------------------------------------------------------------------
000103f4 SetConsoleConfig(a : Long):
000103f4 60 00 57 16 |` W | BRA _SetConsoleConfig(a : Long)
000103f8 ; --------------------------------------------------------------------------------------
000103f8 ; GetConsoleConfig() : Long
000103f8 ; Stack:
000103f8 ; A6+0x8 VAR RETURN : Long
000103f8 ; --------------------------------------------------------------------------------------
000103f8 GetConsoleConfig() : Long:
000103f8 60 00 57 30 |` W0 | BRA _GetConsoleConfig() : Long
000103fc ; --------------------------------------------------------------------------------------
000103fc ; SetConsolePrinter(a: Byte; b: Word; c: Word)
000103fc ; Stack:
000103fc ; A6+0xc a : Byte
000103fc ; A6+0xa b : Word
000103fc ; A6+0x8 c : Word
000103fc ; --------------------------------------------------------------------------------------
000103fc SetConsolePrinter(a: Byte; b: Word; c: Word):
000103fc 60 00 57 4a |` WJ | BRA _SetConsolePrinter(a: Byte; b: Word; c: Word)
00010400 ; --------------------------------------------------------------------------------------
00010400 ; FSCALL_10400
00010400 ; --------------------------------------------------------------------------------------
00010400 FSCALL_10400:
00010400 60 00 57 82 |` W | BRA _FSCALL_10400
00010404 ; --------------------------------------------------------------------------------------
00010404 ; SetSomeKindOfFlag(a : Byte)
00010404 ; Stack:
00010404 ; A6+0x8 a : Byte
00010404 ; --------------------------------------------------------------------------------------
00010404 SetSomeKindOfFlag(a : Byte):
00010404 60 00 58 78 |` Xx | BRA _SetSomeKindOfFlag(a : Byte)
00010408 ; --------------------------------------------------------------------------------------
00010408 ; FSCALL_10408
00010408 ; --------------------------------------------------------------------------------------
00010408 FSCALL_10408:
00010408 60 00 60 02 |` ` | BRA _FSCALL_10408
0001040c ; --------------------------------------------------------------------------------------
0001040c ; FSCALL_1040c
0001040c ; --------------------------------------------------------------------------------------
0001040c FSCALL_1040c:
0001040c 60 00 61 62 |` ab | BRA _FSCALL_1040c
00010410 ; --------------------------------------------------------------------------------------
00010410 ; FSCALL_10410
00010410 ; --------------------------------------------------------------------------------------
00010410 FSCALL_10410:
00010410 60 00 62 14 |` b | BRA _FSCALL_10410
00010414 ; --------------------------------------------------------------------------------------
00010414 ; FSCALL_10414
00010414 ; --------------------------------------------------------------------------------------
00010414 FSCALL_10414:
00010414 60 00 62 2c |` b, | BRA _FSCALL_10414
00010418 ; --------------------------------------------------------------------------------------
00010418 ; FSCALL_10418
00010418 ; --------------------------------------------------------------------------------------
00010418 FSCALL_10418:
00010418 60 00 62 76 |` bv | BRA _FSCALL_10418
0001041c ; --------------------------------------------------------------------------------------
0001041c ; FSCALL_1041c
0001041c ; --------------------------------------------------------------------------------------
0001041c FSCALL_1041c:
0001041c 60 00 62 c0 |` b | BRA _FSCALL_1041c
00010420 ; --------------------------------------------------------------------------------------
00010420 ; FSCALL_10420
00010420 ; --------------------------------------------------------------------------------------
00010420 FSCALL_10420:
00010420 60 00 63 0a |` c | BRA _FSCALL_10420
00010424 ; --------------------------------------------------------------------------------------
00010424 ; TapeErrorMsg(a : Byte) : String
00010424 ; Stack:
00010424 ; A6+0xa VAR RETURN : String
00010424 ; A6+0x8 a : Byte
00010424 ; --------------------------------------------------------------------------------------
00010424 TapeErrorMsg(a : Byte) : String:
00010424 60 00 63 4e |` cN | BRA _TapeErrorMsg(a : Byte) : String
00010428 ; --------------------------------------------------------------------------------------
00010428 ; FSCALL_10428
00010428 ; --------------------------------------------------------------------------------------
00010428 FSCALL_10428:
00010428 60 00 63 9c |` c | BRA _FSCALL_10428
0001042c ; --------------------------------------------------------------------------------------
0001042c ; FSCALL_1042c
0001042c ; --------------------------------------------------------------------------------------
0001042c FSCALL_1042c:
0001042c 60 00 64 56 |` dV | BRA _FSCALL_1042c
00010430 ; --------------------------------------------------------------------------------------
00010430 ; FSCALL_10430
00010430 ; --------------------------------------------------------------------------------------
00010430 FSCALL_10430:
00010430 60 00 65 12 |` e | BRA _FSCALL_10430
00010434 ; --------------------------------------------------------------------------------------
00010434 ; FSCALL_10434
00010434 ; --------------------------------------------------------------------------------------
00010434 FSCALL_10434:
00010434 60 00 66 24 |` f$ | BRA _FSCALL_10434
00010438 ; --------------------------------------------------------------------------------------
00010438 ; FSCALL_10438
00010438 ; --------------------------------------------------------------------------------------
00010438 FSCALL_10438:
00010438 60 00 68 02 |` h | BRA _FSCALL_10438
0001043c ; --------------------------------------------------------------------------------------
0001043c ; FileReadLine(file : File; VAR a : String; VAR b : Byte)
0001043c ; Stack:
0001043c ; A6+0x10 file : File
0001043c ; A6+0xc VAR a : String
0001043c ; A6+0x8 VAR b : Byte
0001043c ; --------------------------------------------------------------------------------------
0001043c FileReadLine(file : File; VAR a : String; VAR b : Byte):
0001043c 60 00 6c 86 |` l | BRA _FileReadLine(file : File; VAR a : String; VAR b : Byte)
00010440 ; --------------------------------------------------------------------------------------
00010440 ; FSCALL_10440
00010440 ; --------------------------------------------------------------------------------------
00010440 FSCALL_10440:
00010440 60 00 6d e6 |` m | BRA _FSCALL_10440
00010444 ; --------------------------------------------------------------------------------------
00010444 ; FSCALL_10444
00010444 ; --------------------------------------------------------------------------------------
00010444 FSCALL_10444:
00010444 60 00 6f 40 |` o@ | BRA _FSCALL_10444
00010448 ; --------------------------------------------------------------------------------------
00010448 ; FSCALL_10448
00010448 ; --------------------------------------------------------------------------------------
00010448 FSCALL_10448:
00010448 60 00 6f 84 |` o | BRA _FSCALL_10448
0001044c ; --------------------------------------------------------------------------------------
0001044c ; WriteErrorMessage(file : String; txt : String; number : Long) : Bool
0001044c ; Stack:
0001044c ; A6+0x14 VAR RETURN : Bool
0001044c ; A6+0x10 file : String
0001044c ; A6+0xc txt : String
0001044c ; A6+0x8 number : Long
0001044c ; --------------------------------------------------------------------------------------
0001044c WriteErrorMessage(file : String; txt : String; number : Long) : Bool:
0001044c 60 00 72 82 |` r | BRA _WriteErrorMessage(file : String; txt : String; number : Long) : Bool
00010450 ; --------------------------------------------------------------------------------------
00010450 ; FS_10450(&, &)
00010450 ; --------------------------------------------------------------------------------------
00010450 FS_10450(&, &):
00010450 60 00 75 16 |` u | BRA _FS_10450(&, &)
00010454 ; --------------------------------------------------------------------------------------
00010454 ; Glob(input : String; pattern : String): Bool
00010454 ; Stack:
00010454 ; A6+0x10 VAR RETURN : Bool
00010454 ; A6+0xc input : String
00010454 ; A6+0x8 pattern : String
00010454 ; --------------------------------------------------------------------------------------
00010454 Glob(input : String; pattern : String): Bool:
00010454 60 00 75 6c |` ul | BRA _Glob(input : String; pattern : String): Bool
00010458 ; --------------------------------------------------------------------------------------
00010458 ; DirFirst(MOD c : Bool; a : String; VAR b : File)
00010458 ; Stack:
00010458 ; A6+0x10 c : Bool
00010458 ; A6+0xc a : String
00010458 ; A6+0x8 VAR b : File
00010458 ; --------------------------------------------------------------------------------------
00010458 DirFirst(MOD c : Bool; a : String; VAR b : File):
00010458 60 00 7b c4 |` { | BRA _DirFirst(MOD c : Bool; a : String; VAR b : File)
0001045c ; --------------------------------------------------------------------------------------
0001045c ; DirNext(MOD a : Bool; VAR b : File)
0001045c ; Stack:
0001045c ; A6+0xc a : Bool
0001045c ; A6+0x8 VAR b : File
0001045c ; --------------------------------------------------------------------------------------
0001045c DirNext(MOD a : Bool; VAR b : File):
0001045c 60 00 7c bc |` | | BRA _DirNext(MOD a : Bool; VAR b : File)
00010460 ; --------------------------------------------------------------------------------------
00010460 ; ExpLoad(a : String; b: Pointer)
00010460 ; Stack:
00010460 ; A6+0xc a : String
00010460 ; A6+0x8 b : Pointer
00010460 ; --------------------------------------------------------------------------------------
00010460 ExpLoad(a : String; b: Pointer):
00010460 4e f9 00 01 86 6c |N l | JMP _ExpLoad(a : String; b: Pointer)
00010466 ; --------------------------------------------------------------------------------------
00010466 ; ExpInputParam(exp : Pointer; ptr : Pointer; len : L)
00010466 ; Stack:
00010466 ; A6+0x10 exp : Pointer
00010466 ; A6+0xc ptr : Pointer
00010466 ; A6+0x8 len : L
00010466 ; --------------------------------------------------------------------------------------
00010466 ExpInputParam(exp : Pointer; ptr : Pointer; len : L):
00010466 4e f9 00 01 8b 28 |N ( | JMP _ExpInputParam(exp : Pointer; ptr : Pointer; len : L)
0001046c ; --------------------------------------------------------------------------------------
0001046c ; ExpInputFlag(exp : Pointer; val : Word)
0001046c ; Stack:
0001046c ; A6+0xa exp : Pointer
0001046c ; A6+0x8 val : Word
0001046c ; --------------------------------------------------------------------------------------
0001046c ExpInputFlag(exp : Pointer; val : Word):
0001046c 4e f9 00 01 8b 86 |N | JMP _ExpInputFlag(exp : Pointer; val : Word)
00010472 ; --------------------------------------------------------------------------------------
00010472 ; ExpOutputParam(exp : Pointer; b : Pointer; c : L; d : L)
00010472 ; Stack:
00010472 ; A6+0x14 exp : Pointer
00010472 ; A6+0x10 b : Pointer
00010472 ; A6+0xc c : L
00010472 ; A6+0x8 d : L
00010472 ; --------------------------------------------------------------------------------------
00010472 ExpOutputParam(exp : Pointer; b : Pointer; c : L; d : L):
00010472 4e f9 00 01 8b f4 |N | JMP _ExpOutputParam(exp : Pointer; b : Pointer; c : L; d : L)
00010478 ; --------------------------------------------------------------------------------------
00010478 ; ExpOutputFlag(exp : Pointer; VAR status : Bool)
00010478 ; Stack:
00010478 ; A6+0xc exp : Pointer
00010478 ; A6+0x8 VAR status : Bool
00010478 ; --------------------------------------------------------------------------------------
00010478 ExpOutputFlag(exp : Pointer; VAR status : Bool):
00010478 4e f9 00 01 8c 92 |N | JMP _ExpOutputFlag(exp : Pointer; VAR status : Bool)
0001047e ; --------------------------------------------------------------------------------------
0001047e ; ExpXmit(adr : Byte; b : Pointer)
0001047e ; Stack:
0001047e ; A6+0xc adr : Byte
0001047e ; A6+0x8 b : Pointer
0001047e ; --------------------------------------------------------------------------------------
0001047e ExpXmit(adr : Byte; b : Pointer):
0001047e 4e f9 00 01 8d 24 |N $ | JMP _ExpXmit(adr : Byte; b : Pointer)
00010484 ; --------------------------------------------------------------------------------------
00010484 ; DiProcPing(adr : Byte; VAR status : Byte; VAR b80 : Bool; VAR b40 : Bool)
00010484 ; Stack:
00010484 ; A6+0x14 adr : Byte
00010484 ; A6+0x10 VAR status : Byte
00010484 ; A6+0xc VAR b80 : Bool
00010484 ; A6+0x8 VAR b40 : Bool
00010484 ; --------------------------------------------------------------------------------------
00010484 DiProcPing(adr : Byte; VAR status : Byte; VAR b80 : Bool; VAR b40 : Bool):
00010484 4e f9 00 01 8d 62 |N b | JMP _DiProcPing(adr : Byte; VAR status : Byte; VAR b80 : Bool; VAR b40 : Bool)
0001048a ; --------------------------------------------------------------------------------------
0001048a ; DiProcCmd(board : Byte; cmd : Byte)
0001048a ; Stack:
0001048a ; A6+0xa board : Byte
0001048a ; A6+0x8 cmd : Byte
0001048a ; --------------------------------------------------------------------------------------
0001048a DiProcCmd(board : Byte; cmd : Byte):
0001048a 4e f9 00 01 8d f8 |N | JMP _DiProcCmd(board : Byte; cmd : Byte)
00010490 ; --------------------------------------------------------------------------------------
00010490 ; ExpUpload(adr: Byte; ptr: Pointer; VAR status : Byte)
00010490 ; Stack:
00010490 ; A6+0x10 adr : Byte
00010490 ; A6+0xc ptr : Pointer
00010490 ; A6+0x8 VAR status : Byte
00010490 ; --------------------------------------------------------------------------------------
00010490 ExpUpload(adr: Byte; ptr: Pointer; VAR status : Byte):
00010490 4e f9 00 01 8e 42 |N B | JMP _ExpUpload(adr: Byte; ptr: Pointer; VAR status : Byte)
00010496 ; --------------------------------------------------------------------------------------
00010496 ; ExpClose(exp : Pointer)
00010496 ; Stack:
00010496 ; A6+0x8 exp : Pointer
00010496 ; --------------------------------------------------------------------------------------
00010496 ExpClose(exp : Pointer):
00010496 4e f9 00 01 8e ec |N | JMP _ExpClose(exp : Pointer)
0001049c ; --------------------------------------------------------------------------------------
0001049c ; BoardName(address : B) : String
0001049c ; Stack:
0001049c ; A6+0xa VAR RETURN : String
0001049c ; A6+0x8 address : B
0001049c ; --------------------------------------------------------------------------------------
0001049c BoardName(address : B) : String:
0001049c 4e f9 00 01 8f f2 |N | JMP _BoardName(address : B) : String
000104a2 ; --------------------------------------------------------------------------------------
000104a2 ; ExpStatus2Text(status.B, &String)
000104a2 ; --------------------------------------------------------------------------------------
000104a2 ExpStatus2Text(status.B, &String):
000104a2 4e f9 00 01 90 a4 |N | JMP _ExpStatus2Text(status.B, &String)
000104a8 ; --------------------------------------------------------------------------------------
000104a8 ; ?FS104a8(VAR : Pointer; b : L; c : L ; VAR : Pointer; e: L; f : L) : Bool
000104a8 ; Stack:
000104a8 ; A6+0x20 VAR RETURN : Bool
000104a8 ; A6+0x1c VAR : Pointer
000104a8 ; A6+0x18 b : L
000104a8 ; A6+0x14 c : L
000104a8 ; A6+0x10 VAR : Pointer
000104a8 ; A6+0xc e : L
000104a8 ; A6+0x8 f : L
000104a8 ; --------------------------------------------------------------------------------------
000104a8 ?FS104a8(VAR : Pointer; b : L; c : L ; VAR : Pointer; e: L; f : L) : Bool:
000104a8 4e f9 00 01 90 fa |N | JMP _?FS104a8(VAR : Pointer; b : L; c : L ; VAR : Pointer; e: L; f : L) : Bool
000104ae ; --------------------------------------------------------------------------------------
000104ae ; FSCALL_104ae
000104ae ; --------------------------------------------------------------------------------------
000104ae FSCALL_104ae:
000104ae 4e f9 00 01 91 6a |N j | JMP _FSCALL_104ae
000104b4 ; --------------------------------------------------------------------------------------
000104b4 ; ?FS104b4(VAR a: Long; b: L; MOD c: L; VAR d : Q)
000104b4 ; Stack:
000104b4 ; A6+0x14 VAR a : Long
000104b4 ; A6+0x10 b : L
000104b4 ; A6+0xc c : L
000104b4 ; A6+0x8 VAR d : Q
000104b4 ; --------------------------------------------------------------------------------------
000104b4 ?FS104b4(VAR a: Long; b: L; MOD c: L; VAR d : Q):
000104b4 4e f9 00 01 91 d6 |N | JMP _?FS104b4(VAR a: Long; b: L; MOD c: L; VAR d : Q)
000104ba ; --------------------------------------------------------------------------------------
000104ba ; ExpRun(a: Bool; adr: Byte; b: Pointer)
000104ba ; Stack:
000104ba ; A6+0xe a : Bool
000104ba ; A6+0xc adr : Byte
000104ba ; A6+0x8 b : Pointer
000104ba ; --------------------------------------------------------------------------------------
000104ba ExpRun(a: Bool; adr: Byte; b: Pointer):
000104ba 4e f9 00 01 92 7e |N ~ | JMP _ExpRun(a: Bool; adr: Byte; b: Pointer)
000104c0 ; --------------------------------------------------------------------------------------
000104c0 ; HasBoard(diproc_addr: Byte) : Byte
000104c0 ; Stack:
000104c0 ; A6+0xa VAR RETURN : Byte
000104c0 ; A6+0x8 diproc_addr : Byte
000104c0 ; --------------------------------------------------------------------------------------
000104c0 HasBoard(diproc_addr: Byte) : Byte:
000104c0 4e f9 00 01 94 f6 |N | JMP _HasBoard(diproc_addr: Byte) : Byte
000104c6 ; --------------------------------------------------------------------------------------
000104c6 ; EQ_1c218(a : Byte) : Bool
000104c6 ; Stack:
000104c6 ; A6+0xa VAR RETURN : Bool
000104c6 ; A6+0x8 a : Byte
000104c6 ; --------------------------------------------------------------------------------------
000104c6 EQ_1c218(a : Byte) : Bool:
000104c6 4e f9 00 01 95 82 |N | JMP _EQ_1c218(a : Byte) : Bool
000104cc ; --------------------------------------------------------------------------------------
000104cc ; MemOnly2MB() : Bool
000104cc ; Stack:
000104cc ; A6+0x8 VAR RETURN : Bool
000104cc ; --------------------------------------------------------------------------------------
000104cc MemOnly2MB() : Bool:
000104cc 4e f9 00 01 95 b4 |N | JMP _MemOnly2MB() : Bool
000104d2 ; --------------------------------------------------------------------------------------
000104d2 ; SetExpInitDone(a : Byte)
000104d2 ; Stack:
000104d2 ; A6+0x8 a : Byte
000104d2 ; --------------------------------------------------------------------------------------
000104d2 SetExpInitDone(a : Byte):
000104d2 4e f9 00 01 95 e0 |N | JMP _SetExpInitDone(a : Byte)
000104d8 ; --------------------------------------------------------------------------------------
000104d8 ; ExpInit(a : Long)
000104d8 ; Stack:
000104d8 ; A6+0x8 a : Long
000104d8 ; --------------------------------------------------------------------------------------
000104d8 ExpInit(a : Long):
000104d8 4e f9 00 01 95 fe |N | JMP _ExpInit(a : Long)
000104de ; --------------------------------------------------------------------------------------
000104de ; Get20028(void) : L
000104de ; Stack:
000104de ; A6+0x8 VAR RETURN : L
000104de ; --------------------------------------------------------------------------------------
000104de Get20028(void) : L:
000104de 4e f9 00 01 96 a6 |N | JMP _Get20028(void) : L
000104e4 ; --------------------------------------------------------------------------------------
000104e4 ; FindWord(src : Pointer; x : Word; length : Word) : Bool
000104e4 ; Stack:
000104e4 ; A6+0x10 VAR RETURN : Bool
000104e4 ; A6+0xc src : Pointer
000104e4 ; A6+0xa x : Word
000104e4 ; A6+0x8 length : Word
000104e4 ; --------------------------------------------------------------------------------------
000104e4 FindWord(src : Pointer; x : Word; length : Word) : Bool:
000104e4 4e f9 00 01 96 c4 |N | JMP _FindWord(src : Pointer; x : Word; length : Word) : Bool
000104ea ; --------------------------------------------------------------------------------------
000104ea ; FillWords(dst : Pointer; x : Word; length : Word)
000104ea ; Stack:
000104ea ; A6+0xc dst : Pointer
000104ea ; A6+0xa x : Word
000104ea ; A6+0x8 length : Word
000104ea ; --------------------------------------------------------------------------------------
000104ea FillWords(dst : Pointer; x : Word; length : Word):
000104ea 4e f9 00 01 96 fa |N | JMP _FillWords(dst : Pointer; x : Word; length : Word)
000104f0 ; --------------------------------------------------------------------------------------
000104f0 ; SwapBytes(src : Pointer; dst : Pointer; words : Word)
000104f0 ; Stack:
000104f0 ; A6+0xe src : Pointer
000104f0 ; A6+0xa dst : Pointer
000104f0 ; A6+0x8 words : Word
000104f0 ; --------------------------------------------------------------------------------------
000104f0 SwapBytes(src : Pointer; dst : Pointer; words : Word):
000104f0 4e f9 00 01 97 24 |N $ | JMP _SwapBytes(src : Pointer; dst : Pointer; words : Word)
000104f6 ; --------------------------------------------------------------------------------------
000104f6 ; CopyBytes(src : Pointer; dst : Pointer; bytes : Word)
000104f6 ; Stack:
000104f6 ; A6+0xe src : Pointer
000104f6 ; A6+0xa dst : Pointer
000104f6 ; A6+0x8 bytes : Word
000104f6 ; --------------------------------------------------------------------------------------
000104f6 CopyBytes(src : Pointer; dst : Pointer; bytes : Word):
000104f6 4e f9 00 01 97 52 |N R | JMP _CopyBytes(src : Pointer; dst : Pointer; bytes : Word)
000104fc ; --------------------------------------------------------------------------------------
000104fc ; IPC_PutVar(src : Pointer; length : Long ; type : Long)
000104fc ; Stack:
000104fc ; A6+0x10 src : Pointer
000104fc ; A6+0xc length : Long
000104fc ; A6+0x8 type : Long
000104fc ; --------------------------------------------------------------------------------------
000104fc IPC_PutVar(src : Pointer; length : Long ; type : Long):
000104fc 4e f9 00 01 97 a4 |N | JMP _IPC_PutVar(src : Pointer; length : Long ; type : Long)
00010502 ; --------------------------------------------------------------------------------------
00010502 ; IPC_PutBool(a : Bool)
00010502 ; Stack:
00010502 ; A6+0x8 a : Bool
00010502 ; --------------------------------------------------------------------------------------
00010502 IPC_PutBool(a : Bool):
00010502 4e f9 00 01 98 20 |N | JMP _IPC_PutBool(a : Bool)
00010508 ; --------------------------------------------------------------------------------------
00010508 ; IPC_PutString(a : String)
00010508 ; Stack:
00010508 ; A6+0x8 a : String
00010508 ; --------------------------------------------------------------------------------------
00010508 IPC_PutString(a : String):
00010508 4e f9 00 01 98 74 |N t | JMP _IPC_PutString(a : String)
0001050e ; --------------------------------------------------------------------------------------
0001050e ; IPC_PutLong(a : L)
0001050e ; Stack:
0001050e ; A6+0x8 a : L
0001050e ; --------------------------------------------------------------------------------------
0001050e IPC_PutLong(a : L):
0001050e 4e f9 00 01 98 d8 |N | JMP _IPC_PutLong(a : L)
00010514 ; --------------------------------------------------------------------------------------
00010514 ; IPC_PutEnd(void)
00010514 ; Stack:
00010514 ; --------------------------------------------------------------------------------------
00010514 IPC_PutEnd(void):
00010514 4e f9 00 01 99 1e |N | JMP _IPC_PutEnd(void)
0001051a ; --------------------------------------------------------------------------------------
0001051a ; IPC_GetEnd(void)
0001051a ; Stack:
0001051a ; --------------------------------------------------------------------------------------
0001051a IPC_GetEnd(void):
0001051a 4e f9 00 01 99 62 |N b | JMP _IPC_GetEnd(void)
00010520 ; --------------------------------------------------------------------------------------
00010520 ; IPC_GetVar(MOD dst : Pointer; length : Long ; type : Long)
00010520 ; Stack:
00010520 ; A6+0x10 dst : Pointer
00010520 ; A6+0xc length : Long
00010520 ; A6+0x8 type : Long
00010520 ; --------------------------------------------------------------------------------------
00010520 IPC_GetVar(MOD dst : Pointer; length : Long ; type : Long):
00010520 4e f9 00 01 99 da |N | JMP _IPC_GetVar(MOD dst : Pointer; length : Long ; type : Long)
00010526 ; --------------------------------------------------------------------------------------
00010526 ; IPC_GetBool() : Bool
00010526 ; Stack:
00010526 ; A6+0x8 VAR RETURN : Bool
00010526 ; --------------------------------------------------------------------------------------
00010526 IPC_GetBool() : Bool:
00010526 4e f9 00 01 9a 8a |N | JMP _IPC_GetBool() : Bool
0001052c ; --------------------------------------------------------------------------------------
0001052c ; IPC_GetString(VAR retval : String)
0001052c ; Stack:
0001052c ; A6+0x8 VAR retval : String
0001052c ; --------------------------------------------------------------------------------------
0001052c IPC_GetString(VAR retval : String):
0001052c 4e f9 00 01 9b 0c |N | JMP _IPC_GetString(VAR retval : String)
00010532 ; --------------------------------------------------------------------------------------
00010532 ; IPC_GetLong() : Long
00010532 ; Stack:
00010532 ; A6+0x8 VAR RETURN : Long
00010532 ; --------------------------------------------------------------------------------------
00010532 IPC_GetLong() : Long:
00010532 4e f9 00 01 9b a4 |N | JMP _IPC_GetLong() : Long
00010538 ; --------------------------------------------------------------------------------------
00010538 ; IPC_Init(void)
00010538 ; Stack:
00010538 ; --------------------------------------------------------------------------------------
00010538 IPC_Init(void):
00010538 4e f9 00 01 9c 20 |N | JMP _IPC_Init(void)
0001053e ; --------------------------------------------------------------------------------------
0001053e ; FSCALL_1053e
0001053e ; --------------------------------------------------------------------------------------
0001053e FSCALL_1053e:
0001053e 4e f9 00 01 9c 4c |N L | JMP _FSCALL_1053e
00010544 ; --------------------------------------------------------------------------------------
00010544 ; IPC_InitGetTwoBools(VAR a : Bool; VAR b : Bool)
00010544 ; Stack:
00010544 ; A6+0xc VAR a : Bool
00010544 ; A6+0x8 VAR b : Bool
00010544 ; --------------------------------------------------------------------------------------
00010544 IPC_InitGetTwoBools(VAR a : Bool; VAR b : Bool):
00010544 4e f9 00 01 9d 42 |N B | JMP _IPC_InitGetTwoBools(VAR a : Bool; VAR b : Bool)
0001054a ; --------------------------------------------------------------------------------------
0001054a ; ?IPC_Puts(a : Bool; b : String; c : String; d: Bool; e : Long; f : Long)
0001054a ; Stack:
0001054a ; A6+0x1a a : Bool
0001054a ; A6+0x16 b : String
0001054a ; A6+0x12 c : String
0001054a ; A6+0x10 d : Bool
0001054a ; A6+0xc e : Long
0001054a ; A6+0x8 f : Long
0001054a ; --------------------------------------------------------------------------------------
0001054a ?IPC_Puts(a : Bool; b : String; c : String; d: Bool; e : Long; f : Long):
0001054a 4e f9 00 01 9d 88 |N | JMP _?IPC_Puts(a : Bool; b : String; c : String; d: Bool; e : Long; f : Long)
00010550 ; --------------------------------------------------------------------------------------
00010550 ; ?ExecFRU(VAR a : L; VAR b : W; VAR c: L; VAR d : L; VAR e: B)
00010550 ; Stack:
00010550 ; A6+0x18 VAR a : L
00010550 ; A6+0x14 VAR b : W
00010550 ; A6+0x10 VAR c : L
00010550 ; A6+0xc VAR d : L
00010550 ; A6+0x8 VAR e : B
00010550 ; --------------------------------------------------------------------------------------
00010550 ?ExecFRU(VAR a : L; VAR b : W; VAR c: L; VAR d : L; VAR e: B):
00010550 4e f9 00 01 9e 14 |N | JMP _?ExecFRU(VAR a : L; VAR b : W; VAR c: L; VAR d : L; VAR e: B)
00010556 ; --------------------------------------------------------------------------------------
00010556 ; ?IPC_GetStd(MOD a : Pointer; VAR b : Bool ; VAR c : Bool)
00010556 ; Stack:
00010556 ; A6+0x10 a : Pointer
00010556 ; A6+0xc VAR b : Bool
00010556 ; A6+0x8 VAR c : Bool
00010556 ; --------------------------------------------------------------------------------------
00010556 ?IPC_GetStd(MOD a : Pointer; VAR b : Bool ; VAR c : Bool):
00010556 4e f9 00 01 9f 1c |N | JMP _?IPC_GetStd(MOD a : Pointer; VAR b : Bool ; VAR c : Bool)
0001055c ; --------------------------------------------------------------------------------------
0001055c ; FSCALL_1055c
0001055c ; --------------------------------------------------------------------------------------
0001055c FSCALL_1055c:
0001055c 4e f9 00 01 9f 7a |N z | JMP _FSCALL_1055c
00010562 ; --------------------------------------------------------------------------------------
00010562 ; ?IPC_GetVar4xBool(VAR a : Pointer; VAR b : Bool ; VAR c : Bool; VAR d: Bool; VAR e: Bool)
00010562 ; Stack:
00010562 ; A6+0x18 VAR a : Pointer
00010562 ; A6+0x14 VAR b : Bool
00010562 ; A6+0x10 VAR c : Bool
00010562 ; A6+0xc VAR d : Bool
00010562 ; A6+0x8 VAR e : Bool
00010562 ; --------------------------------------------------------------------------------------
00010562 ?IPC_GetVar4xBool(VAR a : Pointer; VAR b : Bool ; VAR c : Bool; VAR d: Bool; VAR e: Bool):
00010562 4e f9 00 01 a0 8c |N | JMP _?IPC_GetVar4xBool(VAR a : Pointer; VAR b : Bool ; VAR c : Bool; VAR d: Bool; VAR e: Bool)
00010568 ; --------------------------------------------------------------------------------------
00010568 ; Run_Experiment()
00010568 ; --------------------------------------------------------------------------------------
00010568 Run_Experiment():
00010568 4e f9 00 01 a1 18 |N | JMP _Run_Experiment()
0001056e ; --------------------------------------------------------------------------------------
0001056e ; Read_ConfigFile(name: String; version: Long; dst: Pointer; VAR status: Bool)
0001056e ; Stack:
0001056e ; A6+0x14 name : String
0001056e ; A6+0x10 version : Long
0001056e ; A6+0xc dst : Pointer
0001056e ; A6+0x8 VAR status : Bool
0001056e ; --------------------------------------------------------------------------------------
0001056e Read_ConfigFile(name: String; version: Long; dst: Pointer; VAR status: Bool):
0001056e 4e f9 00 01 a4 be |N | JMP _Read_ConfigFile(name: String; version: Long; dst: Pointer; VAR status: Bool)
00010574 ; --------------------------------------------------------------------------------------
00010574 ; Write_ConfigFile(name: String; dst: Pointer)
00010574 ; Stack:
00010574 ; A6+0xc name : String
00010574 ; A6+0x8 dst : Pointer
00010574 ; --------------------------------------------------------------------------------------
00010574 Write_ConfigFile(name: String; dst: Pointer):
00010574 4e f9 00 01 a6 16 |N | JMP _Write_ConfigFile(name: String; dst: Pointer)
0001057a ; --------------------------------------------------------------------------------------
0001057a ; Read_HARDWARE.M200_CONFIG(a : Pointer; VAR status : Bool)
0001057a ; Stack:
0001057a ; A6+0xc a : Pointer
0001057a ; A6+0x8 VAR status : Bool
0001057a ; --------------------------------------------------------------------------------------
0001057a Read_HARDWARE.M200_CONFIG(a : Pointer; VAR status : Bool):
0001057a 4e f9 00 01 a6 e8 |N | JMP _Read_HARDWARE.M200_CONFIG(a : Pointer; VAR status : Bool)
00010580 ; --------------------------------------------------------------------------------------
00010580 ; Write_HARDWARE.M200_CONFIG(a : Pointer)
00010580 ; Stack:
00010580 ; A6+0x8 a : Pointer
00010580 ; --------------------------------------------------------------------------------------
00010580 Write_HARDWARE.M200_CONFIG(a : Pointer):
00010580 4e f9 00 01 a7 b6 |N | JMP _Write_HARDWARE.M200_CONFIG(a : Pointer)
00010586 ; --------------------------------------------------------------------------------------
00010586 ; Config_Entry_Name(a : Byte) : String
00010586 ; Stack:
00010586 ; A6+0xa VAR RETURN : String
00010586 ; A6+0x8 a : Byte
00010586 ; --------------------------------------------------------------------------------------
00010586 Config_Entry_Name(a : Byte) : String:
00010586 4e f9 00 01 a8 84 |N | JMP _Config_Entry_Name(a : Byte) : String
0001058c ; --------------------------------------------------------------------------------------
0001058c ; FSCALL_1058c
0001058c ; --------------------------------------------------------------------------------------
0001058c FSCALL_1058c:
0001058c 4e f9 00 01 a8 d6 |N | JMP _FSCALL_1058c
00010592 ; --------------------------------------------------------------------------------------
00010592 ; ReadConfig(where : Long) : Word
00010592 ; Stack:
00010592 ; A6+0xc VAR RETURN : Word
00010592 ; A6+0x8 where : Long
00010592 ; --------------------------------------------------------------------------------------
00010592 ReadConfig(where : Long) : Word:
00010592 4e f9 00 01 a9 6a |N j | JMP _ReadConfig(where : Long) : Word
00010598 ; --------------------------------------------------------------------------------------
00010598 ; WriteConfig(what: Word; where : Long)
00010598 ; Stack:
00010598 ; A6+0xc what : Word
00010598 ; A6+0x8 where : Long
00010598 ; --------------------------------------------------------------------------------------
00010598 WriteConfig(what: Word; where : Long):
00010598 4e f9 00 01 a9 bc |N | JMP _WriteConfig(what: Word; where : Long)
0001059e ; --------------------------------------------------------------------------------------
0001059e ; ReadClusterNo(VAR a : Long)
0001059e ; Stack:
0001059e ; A6+0x8 VAR a : Long
0001059e ; --------------------------------------------------------------------------------------
0001059e ReadClusterNo(VAR a : Long):
0001059e 4e f9 00 01 aa 14 |N | JMP _ReadClusterNo(VAR a : Long)
000105a4 ; --------------------------------------------------------------------------------------
000105a4 ; Read_fc0c() : Word
000105a4 ; Stack:
000105a4 ; A6+0x8 VAR RETURN : Word
000105a4 ; --------------------------------------------------------------------------------------
000105a4 Read_fc0c() : Word:
000105a4 4e f9 00 01 aa 98 |N | JMP _Read_fc0c() : Word
000105aa ; --------------------------------------------------------------------------------------
000105aa ; Read_fc00() : Byte
000105aa ; Stack:
000105aa ; A6+0x8 VAR RETURN : Byte
000105aa ; --------------------------------------------------------------------------------------
000105aa Read_fc00() : Byte:
000105aa 4e f9 00 01 aa d2 |N | JMP _Read_fc00() : Byte
000105b0 ; --------------------------------------------------------------------------------------
000105b0 ; FifoInit(void)
000105b0 ; Stack:
000105b0 ; --------------------------------------------------------------------------------------
000105b0 FifoInit(void):
000105b0 4e f9 00 01 ab 0c |N | JMP _FifoInit(void)
000105b6 ; --------------------------------------------------------------------------------------
000105b6 ; R1000_Reset_L(void)
000105b6 ; Stack:
000105b6 ; --------------------------------------------------------------------------------------
000105b6 R1000_Reset_L(void):
000105b6 4e f9 00 01 ab 4e |N N | JMP _R1000_Reset_L(void)
000105bc ; --------------------------------------------------------------------------------------
000105bc ; R1000_Reset_H(void)
000105bc ; Stack:
000105bc ; --------------------------------------------------------------------------------------
000105bc R1000_Reset_H(void):
000105bc 4e f9 00 01 ab ca |N | JMP _R1000_Reset_H(void)
000105c2 ; --------------------------------------------------------------------------------------
000105c2 ; Or_fc0c_80(void)
000105c2 ; Stack:
000105c2 ; --------------------------------------------------------------------------------------
000105c2 Or_fc0c_80(void):
000105c2 4e f9 00 01 ac 46 |N F | JMP _Or_fc0c_80(void)
000105c8 ; --------------------------------------------------------------------------------------
000105c8 ; And_fc0c_7f(void)
000105c8 ; Stack:
000105c8 ; --------------------------------------------------------------------------------------
000105c8 And_fc0c_7f(void):
000105c8 4e f9 00 01 ac 76 |N v | JMP _And_fc0c_7f(void)
000105ce ; --------------------------------------------------------------------------------------
000105ce ; ReadKeySwitch() : Bool
000105ce ; Stack:
000105ce ; A6+0x8 VAR RETURN : Bool
000105ce ; --------------------------------------------------------------------------------------
000105ce ReadKeySwitch() : Bool:
000105ce 4e f9 00 01 ac a6 |N | JMP _ReadKeySwitch() : Bool
000105d4 ; --------------------------------------------------------------------------------------
000105d4 ; Update_fc0c(new : Byte)
000105d4 ; Stack:
000105d4 ; A6+0x8 new : Byte
000105d4 ; --------------------------------------------------------------------------------------
000105d4 Update_fc0c(new : Byte):
000105d4 4e f9 00 01 ac f8 |N | JMP _Update_fc0c(new : Byte)
000105da ; --------------------------------------------------------------------------------------
000105da ; EmergencyStop(boot_reason_code : Byte)
000105da ; Stack:
000105da ; A6+0x8 boot_reason_code : Byte
000105da ; --------------------------------------------------------------------------------------
000105da EmergencyStop(boot_reason_code : Byte):
000105da 4e f9 00 01 ad 6a |N j | JMP _EmergencyStop(boot_reason_code : Byte)
000105e0 ; --------------------------------------------------------------------------------------
000105e0 ; Get_BootReasonCode() : Byte
000105e0 ; Stack:
000105e0 ; A6+0x8 VAR RETURN : Byte
000105e0 ; --------------------------------------------------------------------------------------
000105e0 Get_BootReasonCode() : Byte:
000105e0 4e f9 00 01 ad aa |N | JMP _Get_BootReasonCode() : Byte
000105e6 ; --------------------------------------------------------------------------------------
000105e6 ; Set_fc04_to_01(void)
000105e6 ; Stack:
000105e6 ; --------------------------------------------------------------------------------------
000105e6 Set_fc04_to_01(void):
000105e6 4e f9 00 01 ad e4 |N | JMP _Set_fc04_to_01(void)
000105ec ; --------------------------------------------------------------------------------------
000105ec ; Get_fc05() : Byte
000105ec ; Stack:
000105ec ; A6+0x8 VAR RETURN : Byte
000105ec ; --------------------------------------------------------------------------------------
000105ec Get_fc05() : Byte:
000105ec 4e f9 00 01 ae 22 |N " | JMP _Get_fc05() : Byte
000105f2 ; --------------------------------------------------------------------------------------
000105f2 ; Get_fc02() : Word
000105f2 ; Stack:
000105f2 ; A6+0x8 VAR RETURN : Word
000105f2 ; --------------------------------------------------------------------------------------
000105f2 Get_fc02() : Word:
000105f2 4e f9 00 01 ae 62 |N b | JMP _Get_fc02() : Word
000105f8 ; --------------------------------------------------------------------------------------
000105f8 ; Is_machine_type_one() : Bool
000105f8 ; Stack:
000105f8 ; A6+0x8 VAR RETURN : Bool
000105f8 ; --------------------------------------------------------------------------------------
000105f8 Is_machine_type_one() : Bool:
000105f8 4e f9 00 01 ae a2 |N | JMP _Is_machine_type_one() : Bool
000105fe ; --------------------------------------------------------------------------------------
000105fe ; Is_machine_type_two() : Bool
000105fe ; Stack:
000105fe ; A6+0x8 VAR RETURN : Bool
000105fe ; --------------------------------------------------------------------------------------
000105fe Is_machine_type_two() : Bool:
000105fe 4e f9 00 01 ae ec |N | JMP _Is_machine_type_two() : Bool
00010604 ; --------------------------------------------------------------------------------------
00010604 ; Is_machine_type_three() : Bool
00010604 ; Stack:
00010604 ; A6+0x8 VAR RETURN : Bool
00010604 ; --------------------------------------------------------------------------------------
00010604 Is_machine_type_three() : Bool:
00010604 4e f9 00 01 af 38 |N 8 | JMP _Is_machine_type_three() : Bool
0001060a ; --------------------------------------------------------------------------------------
0001060a ; Is_machine_type_four() : Bool
0001060a ; Stack:
0001060a ; A6+0x8 VAR RETURN : Bool
0001060a ; --------------------------------------------------------------------------------------
0001060a Is_machine_type_four() : Bool:
0001060a 4e f9 00 01 af 84 |N | JMP _Is_machine_type_four() : Bool
00010610 ; --------------------------------------------------------------------------------------
00010610 ; Is_machine_type_one_or_three() : Bool
00010610 ; Stack:
00010610 ; A6+0x8 VAR RETURN : Bool
00010610 ; --------------------------------------------------------------------------------------
00010610 Is_machine_type_one_or_three() : Bool:
00010610 4e f9 00 01 af d0 |N | JMP _Is_machine_type_one_or_three() : Bool
00010616 ; --------------------------------------------------------------------------------------
00010616 ; Is_machine_type_two_or_four() : Bool
00010616 ; Stack:
00010616 ; A6+0x8 VAR RETURN : Bool
00010616 ; --------------------------------------------------------------------------------------
00010616 Is_machine_type_two_or_four() : Bool:
00010616 4e f9 00 01 b0 20 |N | JMP _Is_machine_type_two_or_four() : Bool
0001061c ; --------------------------------------------------------------------------------------
0001061c ; START
0001061c ; --------------------------------------------------------------------------------------
0001061c START:
0001061c 20 7c 00 01 b0 72 | | r | MOVEA.L #0x1b072,A0
00010622 20 3c 00 02 00 00 | < | MOVE.L #stack.top,D0
00010628 90 88 | | SUB.L A0,D0
0001062a 22 00 |" | MOVE.L D0,D1
0001062c 42 90 |B | CLR.L (A0)
0001062e 02 41 00 03 | A | ANDI.W #0x0003,D1
00010632 d1 c1 | | ADDA.L D1,A0
00010634 e4 88 | | LSR.L #0x2,D0
00010636 53 80 |S | SUBQ.L #0x1,D0
00010638 42 98 |B | CLR.L (A0)+
0001063a 51 c8 ff fc |Q | DBF D0,0x10638
0001063e 23 fc 00 01 06 48 00 01 |# H | MOVE.L #0x10648,0x10004
00010646 00 04 | |
00010648 2e 79 00 02 00 00 |.y | MOVEA.L stack.top,A7
0001064e 4e f0 01 f1 00 02 00 04 |N | JMP ((#0x20004)) ; LEW=01f1
00010656 ; --------------------------------------------------------------------------------------
00010656 ; ?start_program
00010656 ; --------------------------------------------------------------------------------------
00010656 _?start_program:
00010656 20 39 00 02 00 0c | 9 | MOVE.L heap.top,D0
0001065c 56 80 |V | ADDQ.L #0x3,D0
0001065e 02 40 ff fc | @ | ANDI.W #0xfffc,D0
00010662 23 c0 00 02 00 0c |# | MOVE.L D0,heap.top
00010668 20 40 | @ | MOVEA.L D0,A0
0001066a 2a 79 00 02 00 00 |*y | MOVEA.L stack.top,A5
00010670 2b 0f |+ | MOVE.L A7,-(A5)
00010672 2e 4d |.M | MOVEA.L A5,A7
00010674 49 e8 00 00 |I | LEA.L (A0+0x0),A4
00010678 4b e8 00 1e |K | LEA.L (A0+0x1e),A5
0001067c 20 79 00 02 00 10 | y | MOVEA.L code.end,A0
00010682 20 08 | | MOVE.L A0,D0
00010684 08 00 00 01 | | BTST.L #0x1,D0
00010688 67 02 |g | BEQ 0x1068c
0001068a 42 58 |BX | CLR.W (A0)+
0001068c 42 98 |B | CLR.L (A0)+
0001068e bf c8 | | CMPA.L A0,A7
00010690 62 fa |b | BHI 0x1068c
00010692 42 a7 |B | CLR.L -(A7)
00010694 2c 4f |,O | MOVEA.L A7,A6
00010696 29 79 00 02 00 14 00 10 |)y | MOVE.L 0x20014,(A4+0x10)
0001069e 2b 4c 00 0c |+L | MOVE.L A4,(A5+0xc)
000106a2 42 ac 00 00 |B | CLR.L (A4+0x0)
000106a6 42 ac 00 04 |B | CLR.L (A4+0x4)
000106aa 70 01 |p | MOVEQ.L #0x01,D0
000106ac 2b 40 00 14 |+@ | MOVE.L D0,(A5+0x14)
000106b0 2b 40 00 10 |+@ | MOVE.L D0,(A5+0x10)
000106b4 29 4d 00 14 |)M | MOVE.L A5,(A4+0x14)
000106b8 20 0d | | MOVE.L A5,D0
000106ba d0 ac 00 10 | | ADD.L (A4+0x10),D0
000106be 06 80 00 00 00 1b | | ADDI.L #0x0000001b,D0
000106c4 02 40 ff fc | @ | ANDI.W #0xfffc,D0
000106c8 29 40 00 08 |)@ | MOVE.L D0,(A4+0x8)
000106cc 3b 7c 00 01 ff fe |;| | MOVE.W #0x1,(A5-0x2)
000106d2 29 6c 00 08 00 18 |)l | MOVE.L (A4+0x8),(A4+0x18)
000106d8 06 ac 00 00 03 00 00 08 | | ADDI.L #0x00000300,(A4+0x8)
000106e0 20 2c 00 08 | , | MOVE.L (A4+0x8),D0
000106e4 29 40 00 0c |)@ | MOVE.L D0,(A4+0xc)
000106e8 06 80 00 00 00 54 | T | ADDI.L #0x00000054,D0
000106ee 2b 40 00 00 |+@ | MOVE.L D0,(A5+0x0)
000106f2 2b 4f 00 08 |+O | MOVE.L A7,(A5+0x8)
000106f6 4e 5e |N^ | UNLK A6
000106f8 53 6d ff fe |Sm | SUBQ.W #0x1,(A5-0x2)
000106fc 42 79 00 01 07 e8 |By | CLR.W 0x107e8
00010702 4e 75 |Nu | RTS
00010704 Program.Program_Failure():
00010704 4e f0 01 f1 00 02 00 18 |N | JMP ((#programfailurehandler)); LEW=01f1
0001070c Program.Experiment_Failure():
0001070c 4e f0 01 f1 00 02 00 1c |N | JMP ((#experimentfailurehandler)); LEW=01f1
00010714 00 10 02 00 | | .XXX[0x4]
00010718 00 02 00 03 00 04 01 11 | | .XXX[0x30]
00010720 01 12 00 13 00 08 00 07 | |
00010728 00 14 00 15 00 16 16 16 | |
00010730 0a 0c 0e 10 08 12 14 18 | |
00010738 0e 0e 16 16 16 16 16 16 | |
00010740 16 16 16 16 16 16 16 16 | |
00010748 16 16 16 16 16 16 | | .XXX[0x6]
0001074e 00 00 | | .XXX[0x2]
00010750 00 00 00 00 00 00 00 00 | | .XXX[0x8]
00010758 00 00 02 04 06 08 | | .XXX[0x6]
0001075e ; --------------------------------------------------------------------------------------
0001075e ; FSCALL_10288
0001075e ; --------------------------------------------------------------------------------------
0001075e _FSCALL_10288:
0001075e 4a 79 00 01 07 e8 |Jy | TST.W 0x107e8
00010764 67 02 |g | BEQ 0x10768
00010766 4e 40 |N@ | TRAP #0
00010768 42 a7 |B | CLR.L -(A7)
0001076a 2f 08 |/ | MOVE.L A0,-(A7)
0001076c 2f 00 |/ | MOVE.L D0,-(A7)
0001076e 30 2f 00 12 |0/ | MOVE.W (A7+0x12),D0
00010772 02 80 00 00 0f ff | | ANDI.L #0x00000fff,D0
00010778 e4 88 | | LSR.L #0x2,D0
0001077a 1f 7b 08 b2 00 0b | { | MOVE.B (#0x10730+D0.L),(A7+0xb)
00010780 20 1f | | MOVE.L (A7)+,D0
00010782 4e f9 00 01 07 8a |N | JMP 0x1078a
00010788 ; --------------------------------------------------------------------------------------
00010788 ; ?exit
00010788 ; --------------------------------------------------------------------------------------
00010788 _?exit:
00010788 4e 40 |N@ | TRAP #0
0001078a 20 79 00 02 00 0c | y | MOVEA.L heap.top,A0
00010790 20 68 00 18 | h | MOVEA.L (A0+0x18),A0
00010794 d0 fc 03 00 | | ADDA.W #0x300,A0
00010798 21 1f |! | MOVE.L (A7)+,-(A0)
0001079a 48 e0 ff 7e |H ~ | MOVEM.L A6+A5+A4+A3+A2+A1+D7+D6+D5+D4+D3+D2+D1+D0,-(A0)
0001079e 28 79 00 02 00 0c |(y | MOVEA.L heap.top,A4
000107a4 2a 6c 00 14 |*l | MOVEA.L (A4+0x14),A5
000107a8 2c 6c 00 18 |,l | MOVEA.L (A4+0x18),A6
000107ac 20 5f | _ | MOVEA.L (A7)+,A0
000107ae d1 fc 00 01 07 14 | | ADDA.L #0x10714,A0
000107b4 42 80 |B | CLR.L D0
000107b6 30 10 |0 | MOVE.W (A0),D0
000107b8 3d 40 00 04 |=@ | MOVE.W D0,(A6+0x4)
000107bc 47 ee 03 00 |G | LEA.L (A6+0x300),A3
000107c0 70 0e |p | MOVEQ.L #0x0e,D0
000107c2 2f 23 |/# | MOVE.L -(A3),-(A7)
000107c4 51 c8 ff fc |Q | DBF D0,0x107c2
000107c8 2d 4f 00 00 |-O | MOVE.L A7,(A6+0x0)
000107cc 20 2c 00 0c | , | MOVE.L (A4+0xc),D0
000107d0 2b 40 00 00 |+@ | MOVE.L D0,(A5+0x0)
000107d4 2f 0e |/ | MOVE.L A6,-(A7)
000107d6 33 fc 12 34 00 01 07 e8 |3 4 | MOVE.W #0x1234,0x107e8
000107de 4e b9 00 01 0a 50 |N P | JSR _FSCALL_102b4
000107e4 4e fa ff a2 |N | JMP _?exit
000107e8 00 00 | | .CONST 0x0000
000107ea ; --------------------------------------------------------------------------------------
000107ea ; ?muls_d3_d4
000107ea ; --------------------------------------------------------------------------------------
000107ea _?muls_d3_d4:
000107ea 4c 03 48 00 |L H | MULS.L D3,D4
000107ee 69 0e |i | BVS 0x107fe
000107f0 26 04 |& | MOVE.L D4,D3
000107f2 4e 75 |Nu | RTS
000107f4 ; --------------------------------------------------------------------------------------
000107f4 ; ?mulu_d3_d4
000107f4 ; --------------------------------------------------------------------------------------
000107f4 _?mulu_d3_d4:
000107f4 4c 03 40 00 |L @ | mULU.L D3,D4
000107f8 69 04 |i | BVS 0x107fe
000107fa 26 04 |& | MOVE.L D4,D3
000107fc 4e 75 |Nu | RTS
000107fe 4e 56 00 00 |NV | LINK.W A6,#0x0000
00010802 52 6d ff fe |Rm | ADDQ.W #0x1,(A5-0x2)
00010806 4e 4c |NL | TRAP #12
00010808 20 01 | | .XXX[0x2]
0001080a ; --------------------------------------------------------------------------------------
0001080a ; ?divs_d3_d4
0001080a ; --------------------------------------------------------------------------------------
0001080a _?divs_d3_d4:
0001080a 4a 83 |J | TST.L D3
0001080c 67 20 |g | BEQ 0x1082e
0001080e 4c 43 48 03 |LCH | DIVS.L D3,D3,D4
00010812 69 0e |i | BVS 0x10822
00010814 4e 75 |Nu | RTS
00010816 ; --------------------------------------------------------------------------------------
00010816 ; ?divu_d3_d4
00010816 ; --------------------------------------------------------------------------------------
00010816 _?divu_d3_d4:
00010816 4a 83 |J | TST.L D3
00010818 67 14 |g | BEQ 0x1082e
0001081a 4c 43 40 03 |LC@ | DIVU.L D3,D3,D4
0001081e 69 02 |i | BVS 0x10822
00010820 4e 75 |Nu | RTS
00010822 4e 56 00 00 |NV | LINK.W A6,#0x0000
00010826 52 6d ff fe |Rm | ADDQ.W #0x1,(A5-0x2)
0001082a 4e 4c |NL | TRAP #12
0001082c 20 01 | | .XXX[0x2]
0001082e 4e 56 00 00 |NV | LINK.W A6,#0x0000
00010832 52 6d ff fe |Rm | ADDQ.W #0x1,(A5-0x2)
00010836 4e 4c |NL | TRAP #12
00010838 20 01 | | .XXX[0x2]
0001083a ; --------------------------------------------------------------------------------------
0001083a ; Malloc2(VAR dst : Pointer; length : Word)
0001083a ; Stack:
0001083a ; A6+0xa VAR dst : Pointer
0001083a ; A6+0x8 length : Word
0001083a ; --------------------------------------------------------------------------------------
0001083a _Malloc2(VAR dst : Pointer; length : Word):
0001083a 4e 56 00 00 |NV | LINK.W A6,#0x0000
0001083e 52 6d ff fe |Rm | ADDQ.W #0x1,(A5-0x2)
00010842 48 6e 00 0c |Hn | PEA.L (A6+0xc)
00010846 2f 2e 00 08 |/. | MOVE.L (A6+0x8),-(A7)
0001084a 61 0a |a | BSR _Malloc1(length : Long) : Pointer
0001084c 50 8f |P | ADDQ.L #0x8,A7
0001084e 4e 5e |N^ | UNLK A6
00010850 53 6d ff fe |Sm | SUBQ.W #0x1,(A5-0x2)
00010854 4e 75 |Nu | RTS
00010856 ; --------------------------------------------------------------------------------------
00010856 ; Malloc1(length : Long) : Pointer
00010856 ; Stack:
00010856 ; A6+0xc VAR RETURN : Pointer
00010856 ; A6+0x8 length : Long
00010856 ; --------------------------------------------------------------------------------------
00010856 _Malloc1(length : Long) : Pointer:
00010856 4e 56 00 00 |NV | LINK.W A6,#0x0000
0001085a 48 e7 e0 f8 |H | MOVEM.L A4+A3+A2+A1+A0+D2+D1+D0,-(A7)
0001085e 52 6d ff fe |Rm | ADDQ.W #0x1,(A5-0x2)
00010862 28 6d 00 0c |(m | MOVEA.L (A5+0xc),A4
00010866 20 2e 00 08 | . | MOVE.L (A6+0x8),D0
0001086a 06 80 00 00 00 0b | | ADDI.L #0x0000000b,D0
00010870 02 00 00 f8 | | ANDI.B #0xf8,D0
00010874 43 ec 00 00 |C | LEA.L (A4+0x0),A1
00010878 20 49 | I | MOVEA.L A1,A0
0001087a 22 10 |" | MOVE.L (A0),D1
0001087c 67 3c |g< | BEQ 0x108ba
0001087e 22 41 |"A | MOVEA.L D1,A1
00010880 b0 a9 00 04 | | CMP.L (A1+0x4),D0
00010884 62 f2 |b | BHI 0x10878
00010886 67 14 |g | BEQ 0x1089c
00010888 22 29 00 04 |") | MOVE.L (A1+0x4),D1
0001088c 92 80 | | SUB.L D0,D1
0001088e 24 49 |$I | MOVEA.L A1,A2
00010890 d5 c0 | | ADDA.L D0,A2
00010892 24 91 |$ | MOVE.L (A1),(A2)
00010894 25 41 00 04 |%A | MOVE.L D1,(A2+0x4)
00010898 20 8a | | MOVE.L A2,(A0)
0001089a 60 02 |` | BRA 0x1089e
0001089c 20 91 | | MOVE.L (A1),(A0)
0001089e d3 fc 00 00 00 04 | | ADDA.L #0x4,A1
000108a4 23 49 ff fc |#I | MOVE.L A1,(A1-0x4)
000108a8 24 6e 00 0c |$n | MOVEA.L (A6+0xc),A2
000108ac 24 89 |$ | MOVE.L A1,(A2)
000108ae 4c df 1f 07 |L | MOVEM.L (A7)+,D0+D1+D2+A0+A1+A2+A3+A4
000108b2 4e 5e |N^ | UNLK A6
000108b4 53 6d ff fe |Sm | SUBQ.W #0x1,(A5-0x2)
000108b8 4e 75 |Nu | RTS
000108ba 22 6c 00 08 |"l | MOVEA.L (A4+0x8),A1
000108be 22 09 |" | MOVE.L A1,D1
000108c0 d2 80 | | ADD.L D0,D1
000108c2 29 41 00 08 |)A | MOVE.L D1,(A4+0x8)
000108c6 b2 ac 00 0c | | CMP.L (A4+0xc),D1
000108ca 65 04 |e | BCS 0x108d0
000108cc 29 41 00 0c |)A | MOVE.L D1,(A4+0xc)
000108d0 d1 ad 00 00 | | ADD.L D0,(A5+0x0)
000108d4 bf ed 00 00 | | CMPA.L (A5+0x0),A7
000108d8 68 c4 |h | BVC 0x1089e
000108da 4e 4c |NL | TRAP #12
000108dc 00 36 | 6 | .XXX[0x2]
000108de ; --------------------------------------------------------------------------------------
000108de ; Free1(a : Pointer; b : Long)
000108de ; Stack:
000108de ; A6+0xc a : Pointer
000108de ; A6+0x8 b : Long
000108de ; --------------------------------------------------------------------------------------
000108de _Free1(a : Pointer; b : Long):
000108de 4e 56 00 00 |NV | LINK.W A6,#0x0000
000108e2 52 6d ff fe |Rm | ADDQ.W #0x1,(A5-0x2)
000108e6 48 6e 00 0c |Hn | PEA.L (A6+0xc)
000108ea 2f 2e 00 08 |/. | MOVE.L (A6+0x8),-(A7)
000108ee 61 0a |a | BSR _Free2(a : Pointer; b : Long)
000108f0 50 4f |PO | ADDQ.L #0x8,A7
000108f2 4e 5e |N^ | UNLK A6
000108f4 53 6d ff fe |Sm | SUBQ.W #0x1,(A5-0x2)
000108f8 4e 75 |Nu | RTS
000108fa ; --------------------------------------------------------------------------------------
000108fa ; Free2(a : Pointer; b : Long)
000108fa ; Stack:
000108fa ; A6+0xc a : Pointer
000108fa ; A6+0x8 b : Long
000108fa ; --------------------------------------------------------------------------------------
000108fa _Free2(a : Pointer; b : Long):
000108fa 4e 56 00 00 |NV | LINK.W A6,#0x0000
000108fe 48 e7 e0 f8 |H | MOVEM.L A4+A3+A2+A1+A0+D2+D1+D0,-(A7)
00010902 52 6d ff fe |Rm | ADDQ.W #0x1,(A5-0x2)
00010906 28 6d 00 0c |(m | MOVEA.L (A5+0xc),A4
0001090a 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
0001090e 20 10 | | MOVE.L (A0),D0
00010910 20 40 | @ | MOVEA.L D0,A0
00010912 08 00 00 00 | | BTST.L #0x0,D0
00010916 67 10 |g | BEQ 0x10928
00010918 0c 80 00 00 00 01 | | CMPI.L #0x00000001,D0
0001091e 66 04 |f | BNE 0x10924
00010920 4e 4c |NL | TRAP #12
00010922 00 33 | 3 | .XXX[0x2]
00010924 4e 4c |NL | TRAP #12
00010926 00 34 | 4 | .XXX[0x2]
00010928 b0 ac 00 14 | | CMP.L (A4+0x14),D0
0001092c 65 f6 |e | BCS 0x10924
0001092e b0 ac 00 0c | | CMP.L (A4+0xc),D0
00010932 64 f0 |d | BCC 0x10924
00010934 b0 ac 00 08 | | CMP.L (A4+0x8),D0
00010938 65 00 00 06 |e | BCS 0x10940
0001093c 4e 4c |NL | TRAP #12
0001093e 00 35 | 5 | .XXX[0x2]
00010940 b1 e8 ff fc | | CMPA.L (A0-0x4),A0
00010944 67 14 |g | BEQ 0x1095a
00010946 59 80 |Y | SUBQ.L #0x4,D0
00010948 22 6c 00 00 |"l | MOVEA.L (A4+0x0),A1
0001094c b2 fc 00 00 | | CMPA.W #0x0,A1
00010950 67 d2 |g | BEQ 0x10924
00010952 b3 c0 | | CMPA.L D0,A1
00010954 67 e6 |g | BEQ 0x1093c
00010956 22 51 |"Q | MOVEA.L (A1),A1
00010958 60 f2 |` | BRA 0x1094c
0001095a 59 80 |Y | SUBQ.L #0x4,D0
0001095c 20 40 | @ | MOVEA.L D0,A0
0001095e 20 2e 00 08 | . | MOVE.L (A6+0x8),D0
00010962 06 80 00 00 00 0b | | ADDI.L #0x0000000b,D0
00010968 02 00 00 f8 | | ANDI.B #0xf8,D0
0001096c 43 ec 00 00 |C | LEA.L (A4+0x0),A1
00010970 24 49 |$I | MOVEA.L A1,A2
00010972 26 4a |&J | MOVEA.L A2,A3
00010974 24 49 |$I | MOVEA.L A1,A2
00010976 22 51 |"Q | MOVEA.L (A1),A1
00010978 b2 fc 00 00 | | CMPA.W #0x0,A1
0001097c 67 06 |g | BEQ 0x10984
0001097e b3 c8 | | CMPA.L A0,A1
00010980 65 f0 |e | BCS 0x10972
00010982 67 b8 |g | BEQ 0x1093c
00010984 28 4a |(J | MOVEA.L A2,A4
00010986 d9 ea 00 04 | | ADDA.L (A2+0x4),A4
0001098a b9 c8 | | CMPA.L A0,A4
0001098c 67 04 |g | BEQ 0x10992
0001098e 64 ac |d | BCC 0x1093c
00010990 60 0c |` | BRA 0x1099e
00010992 d0 88 | | ADD.L A0,D0
00010994 90 8a | | SUB.L A2,D0
00010996 20 4a | J | MOVEA.L A2,A0
00010998 21 40 00 04 |!@ | MOVE.L D0,(A0+0x4)
0001099c 60 0a |` | BRA 0x109a8
0001099e 20 89 | | MOVE.L A1,(A0)
000109a0 21 40 00 04 |!@ | MOVE.L D0,(A0+0x4)
000109a4 24 88 |$ | MOVE.L A0,(A2)
000109a6 26 4a |&J | MOVEA.L A2,A3
000109a8 24 48 |$H | MOVEA.L A0,A2
000109aa d5 c0 | | ADDA.L D0,A2
000109ac b2 fc 00 00 | | CMPA.W #0x0,A1
000109b0 67 40 |g@ | BEQ 0x109f2
000109b2 b5 c9 | | CMPA.L A1,A2
000109b4 67 06 |g | BEQ 0x109bc
000109b6 62 00 ff 6c |b l | BHI 0x10924
000109ba 60 36 |`6 | BRA 0x109f2
000109bc 20 91 | | MOVE.L (A1),(A0)
000109be 20 29 00 04 | ) | MOVE.L (A1+0x4),D0
000109c2 d0 89 | | ADD.L A1,D0
000109c4 90 88 | | SUB.L A0,D0
000109c6 21 40 00 04 |!@ | MOVE.L D0,(A0+0x4)
000109ca 4a 90 |J | TST.L (A0)
000109cc 66 24 |f$ | BNE 0x109f2
000109ce 28 6d 00 0c |(m | MOVEA.L (A5+0xc),A4
000109d2 22 48 |"H | MOVEA.L A0,A1
000109d4 d3 c0 | | ADDA.L D0,A1
000109d6 24 6c 00 08 |$l | MOVEA.L (A4+0x8),A2
000109da b5 c9 | | CMPA.L A1,A2
000109dc 67 06 |g | BEQ 0x109e4
000109de 65 00 ff 44 |e D | BCS 0x10924
000109e2 60 0e |` | BRA 0x109f2
000109e4 42 93 |B | CLR.L (A3)
000109e6 29 48 00 08 |)H | MOVE.L A0,(A4+0x8)
000109ea d0 fc 00 50 | P | ADDA.W #0x50,A0
000109ee 2b 48 00 00 |+H | MOVE.L A0,(A5+0x0)
000109f2 4c df 1f 07 |L | MOVEM.L (A7)+,D0+D1+D2+A0+A1+A2+A3+A4
000109f6 4e 5e |N^ | UNLK A6
000109f8 53 6d ff fe |Sm | SUBQ.W #0x1,(A5-0x2)
000109fc 4e 75 |Nu | RTS
000109fe 50 41 53 43 41 4c 20 65 |PASCAL e| .TXT 'PASCAL error #'
00010a0c 20 61 74 20 6c 6f 63 61 | at loca| .TXT ' at location_ '
00010a1a 20 28 | ( | .TXT ' ('
00010a1c 20 74 69 6d 65 73 29 20 | times) | .TXT ' times) '
00010a24 4c 61 73 74 20 20 63 61 |Last ca| .TXT 'Last called from location_ '
00010a42 50 41 53 43 41 4c 20 65 |PASCAL e| .TXT 'PASCAL error #'
00010a50 ; --------------------------------------------------------------------------------------
00010a50 ; FSCALL_102b4
00010a50 ; OMSI PASCAL Function
00010a50 ; <LVAR 0x008 4(r)>
00010a50 ; --------------------------------------------------------------------------------------
00010a50 _FSCALL_102b4:
00010a50 4e 56 ff 86 |NV | LINK.W A6,#0xff86
00010a54 bf d5 | | CMPA.L (A5),A7
00010a56 62 06 |b | BHI 0x10a5e
00010a58 44 fc 00 02 |D | MOVE.W #0x2,CCR
00010a5c 4e 76 |Nv | TRAPV
00010a5e de fc 00 62 | b | ADDA.W #0x62,A7
00010a62 48 e7 ff f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D6+D5+D4+D3+D2+D1+D0,-(A7)
00010a66 45 f9 00 01 0d a4 |E | LEA.L _StringLit(Src : Pointer; Offset: W; Len : W) : String,A2
00010a6c 74 01 |t | MOVEQ.L #0x01,D2
00010a6e 76 0e |v | MOVEQ.L #0x0e,D3
00010a70 78 02 |x | MOVEQ.L #0x02,D4
00010a72 48 78 00 00 |Hx | PEA.L 0x0
00010a76 26 5f |&_ | MOVEA.L (A7)+,A3
00010a78 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00010a7c 22 50 |"P | MOVEA.L (A0),A1
00010a7e 59 4f |YO | SUBQ.L #0x4,A7
00010a80 1e a9 00 34 | 4 | MOVE.B (A1+0x34),(A7)
00010a84 1f 69 00 35 00 01 | i 5 | MOVE.B (A1+0x35),(A7+0x1)
00010a8a 1f 69 00 36 00 02 | i 6 | MOVE.B (A1+0x36),(A7+0x2)
00010a90 1f 69 00 37 00 03 | i 7 | MOVE.B (A1+0x37),(A7+0x3)
00010a96 28 5f |(_ | MOVEA.L (A7)+,A4
00010a98 2c 29 00 3e |,) > | MOVE.L (A1+0x3e),D6
00010a9c 30 28 00 04 |0( | MOVE.W (A0+0x4),D0
00010aa0 02 40 02 00 | @ | ANDI.W #0x0200,D0
00010aa4 67 14 |g | BEQ 0x10aba
00010aa6 2f 06 |/ | MOVE.L D6,-(A7)
00010aa8 43 e8 00 04 |C | LEA.L (A0+0x4),A1
00010aac 2f 09 |/ | MOVE.L A1,-(A7)
00010aae 3f 04 |? | MOVE.W D4,-(A7)
00010ab0 4e b9 00 01 02 38 |N 8 | JSR KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
00010ab6 de fc 00 0a | | ADDA.W #0xa,A7
00010aba 4e b9 00 01 54 0a |N T | JSR _WriteConsoleCrLf(void)
00010ac0 43 fa ff 4a |C J | LEA.L 0x10a0c,A1
00010ac4 70 06 |p | MOVEQ.L #0x06,D0
00010ac6 3f 21 |?! | MOVE.W -(A1),-(A7)
00010ac8 51 c8 ff fc |Q | DBF D0,0x10ac6
00010acc 30 28 00 04 |0( | MOVE.W (A0+0x4),D0
00010ad0 02 40 00 ff | @ | ANDI.W #0x00ff,D0
00010ad4 51 4f |QO | SUBQ.L #0x8,A7
00010ad6 48 6f 00 08 |Ho | PEA.L (A7+0x8)
00010ada 3f 02 |? | MOVE.W D2,-(A7)
00010adc 3f 03 |? | MOVE.W D3,-(A7)
00010ade 4e 92 |N | JSR (A2)
00010ae0 58 4f |XO | ADDQ.L #0x4,A7
00010ae2 42 81 |B | CLR.L D1
00010ae4 32 00 |2 | MOVE.W D0,D1
00010ae6 2f 01 |/ | MOVE.L D1,-(A7)
00010ae8 4e b9 00 01 10 c0 |N | JSR _Long2String(a : Long) : String
00010aee 58 4f |XO | ADDQ.L #0x4,A7
00010af0 4e b9 00 01 0f 2c |N , | JSR _StringCat2(a, b : String) : String
00010af6 50 4f |PO | ADDQ.L #0x8,A7
00010af8 4e b9 00 01 53 92 |N S | JSR _WriteConsoleString(str : String)
00010afe 58 4f |XO | ADDQ.L #0x4,A7
00010b00 0c 40 00 0a | @ | CMPI.W #0x000a,D0
00010b04 64 0c |d | BCC 0x10b12
00010b06 1f 3c 00 20 | < | MOVE.B #0x20,-(A7)
00010b0a 4e b9 00 01 52 10 |N R | JSR _WriteConsoleChar(chr : char)
00010b10 54 4f |TO | ADDQ.L #0x2,A7
00010b12 20 4f | O | MOVEA.L A7,A0
00010b14 43 fa fe f6 |C | LEA.L 0x10a0c,A1
00010b18 70 0c |p | MOVEQ.L #0x0c,D0
00010b1a 10 d9 | | MOVE.B (A1)+,(A0)+
00010b1c 51 c8 ff fc |Q | DBF D0,0x10b1a
00010b20 51 4f |QO | SUBQ.L #0x8,A7
00010b22 48 6f 00 08 |Ho | PEA.L (A7+0x8)
00010b26 3f 02 |? | MOVE.W D2,-(A7)
00010b28 3f 3c 00 0d |?< | MOVE.W #0xd,-(A7)
00010b2c 4e 92 |N | JSR (A2)
00010b2e 2e 86 |. | MOVE.L D6,(A7)
00010b30 48 78 00 08 |Hx | PEA.L 0x8
00010b34 4e b9 00 01 11 ce |N | JSR _Long2HexString(val : Long; ndig : Long) : String
00010b3a 50 4f |PO | ADDQ.L #0x8,A7
00010b3c 4e b9 00 01 0f 2c |N , | JSR _StringCat2(a, b : String) : String
00010b42 50 4f |PO | ADDQ.L #0x8,A7
00010b44 4e b9 00 01 53 92 |N S | JSR _WriteConsoleString(str : String)
00010b4a de fc 00 12 | | ADDA.W #0x12,A7
00010b4e 7c 01 || | MOVEQ.L #0x01,D6
00010b50 b9 cb | | CMPA.L A3,A4
00010b52 67 00 00 aa |g | BEQ 0x10bfe
00010b56 7e 00 |~ | MOVEQ.L #0x00,D7
00010b58 2a 2c 00 04 |*, | MOVE.L (A4+0x4),D5
00010b5c 28 54 |(T | MOVEA.L (A4),A4
00010b5e 52 87 |R | ADDQ.L #0x1,D7
00010b60 ba 86 | | CMP.L D6,D5
00010b62 67 f4 |g | BEQ 0x10b58
00010b64 2c 05 |, | MOVE.L D5,D6
00010b66 be 82 | | CMP.L D2,D7
00010b68 6f 48 |oH | BLE 0x10bb2
00010b6a 3f 3a fe ae |?: | MOVE.W 0x10a1a,-(A7)
00010b6e 51 4f |QO | SUBQ.L #0x8,A7
00010b70 20 4f | O | MOVEA.L A7,A0
00010b72 43 fa fe a8 |C | LEA.L 0x10a1c,A1
00010b76 70 06 |p | MOVEQ.L #0x06,D0
00010b78 10 d9 | | MOVE.B (A1)+,(A0)+
00010b7a 51 c8 ff fc |Q | DBF D0,0x10b78
00010b7e 51 4f |QO | SUBQ.L #0x8,A7
00010b80 48 6f 00 10 |Ho | PEA.L (A7+0x10)
00010b84 3f 02 |? | MOVE.W D2,-(A7)
00010b86 3f 04 |? | MOVE.W D4,-(A7)
00010b88 4e 92 |N | JSR (A2)
00010b8a 2e 87 |. | MOVE.L D7,(A7)
00010b8c 4e b9 00 01 10 c0 |N | JSR _Long2String(a : Long) : String
00010b92 48 6f 00 10 |Ho | PEA.L (A7+0x10)
00010b96 3f 02 |? | MOVE.W D2,-(A7)
00010b98 3f 3c 00 07 |?< | MOVE.W #0x7,-(A7)
00010b9c 4e 92 |N | JSR (A2)
00010b9e 50 4f |PO | ADDQ.L #0x8,A7
00010ba0 4e b9 00 01 0f ca |N | JSR _StringCat3(a, b, c : String) : String
00010ba6 de fc 00 0c | | ADDA.W #0xc,A7
00010baa 4e b9 00 01 53 92 |N S | JSR _WriteConsoleString(str : String)
00010bb0 de c3 | | ADDA.W D3,A7
00010bb2 4e b9 00 01 54 0a |N T | JSR _WriteConsoleCrLf(void)
00010bb8 9e fc 00 1e | | SUBA.W #0x1e,A7
00010bbc 20 4f | O | MOVEA.L A7,A0
00010bbe 43 fa fe 64 |C d | LEA.L 0x10a24,A1
00010bc2 70 1c |p | MOVEQ.L #0x1c,D0
00010bc4 10 d9 | | MOVE.B (A1)+,(A0)+
00010bc6 51 c8 ff fc |Q | DBF D0,0x10bc4
00010bca 59 4f |YO | SUBQ.L #0x4,A7
00010bcc 48 6f 00 04 |Ho | PEA.L (A7+0x4)
00010bd0 3f 02 |? | MOVE.W D2,-(A7)
00010bd2 3f 3c 00 1d |?< | MOVE.W #0x1d,-(A7)
00010bd6 4e 92 |N | JSR (A2)
00010bd8 50 4f |PO | ADDQ.L #0x8,A7
00010bda 4e b9 00 01 53 92 |N S | JSR _WriteConsoleString(str : String)
00010be0 de fc 00 1a | | ADDA.W #0x1a,A7
00010be4 2e 86 |. | MOVE.L D6,(A7)
00010be6 48 78 00 08 |Hx | PEA.L 0x8
00010bea 4e b9 00 01 11 ce |N | JSR _Long2HexString(val : Long; ndig : Long) : String
00010bf0 50 4f |PO | ADDQ.L #0x8,A7
00010bf2 4e b9 00 01 53 92 |N S | JSR _WriteConsoleString(str : String)
00010bf8 58 4f |XO | ADDQ.L #0x4,A7
00010bfa 60 00 ff 54 |` T | BRA 0x10b50
00010bfe 4e b9 00 01 54 0a |N T | JSR _WriteConsoleCrLf(void)
00010c04 2f 3c 00 00 98 96 |/< | MOVE.L #0x9896,-(A7)
00010c0a 4e b9 00 01 02 24 |N $ | JSR KC12_Sleep(dur: Long)
00010c10 58 4f |XO | ADDQ.L #0x4,A7
00010c12 41 fa fe 3c |A < | LEA.L _FSCALL_102b4,A0
00010c16 70 06 |p | MOVEQ.L #0x06,D0
00010c18 3f 20 |? | MOVE.W -(A0),-(A7)
00010c1a 51 c8 ff fc |Q | DBF D0,0x10c18
00010c1e 1f 3c 00 07 | < | MOVE.B #0x07,-(A7)
00010c22 51 4f |QO | SUBQ.L #0x8,A7
00010c24 48 6f 00 0a |Ho | PEA.L (A7+0xa)
00010c28 3f 02 |? | MOVE.W D2,-(A7)
00010c2a 3f 03 |? | MOVE.W D3,-(A7)
00010c2c 4e 92 |N | JSR (A2)
00010c2e 58 4f |XO | ADDQ.L #0x4,A7
00010c30 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00010c34 30 28 00 04 |0( | MOVE.W (A0+0x4),D0
00010c38 02 40 00 ff | @ | ANDI.W #0x00ff,D0
00010c3c 42 81 |B | CLR.L D1
00010c3e 32 00 |2 | MOVE.W D0,D1
00010c40 2f 01 |/ | MOVE.L D1,-(A7)
00010c42 4e b9 00 01 10 c0 |N | JSR _Long2String(a : Long) : String
00010c48 58 4f |XO | ADDQ.L #0x4,A7
00010c4a 4e b9 00 01 0f 2c |N , | JSR _StringCat2(a, b : String) : String
00010c50 50 4f |PO | ADDQ.L #0x8,A7
00010c52 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
00010c58 de fc 00 14 | | ADDA.W #0x14,A7
00010c5c 4c df 1f ff |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D5+D6+D7+A0+A1+A2+A3+A4
00010c60 4e 5e |N^ | UNLK A6
00010c62 4e 75 |Nu | RTS
00010c64 ; --------------------------------------------------------------------------------------
00010c64 ; FSCALL_102ac
00010c64 ; --------------------------------------------------------------------------------------
00010c64 _FSCALL_102ac:
00010c64 4e 56 00 00 |NV | LINK.W A6,#0x0000
00010c68 48 e7 80 08 |H | MOVEM.L A4+D0,-(A7)
00010c6c bf d5 | | CMPA.L (A5),A7
00010c6e 4e 76 |Nv | TRAPV
00010c70 28 6d 00 0c |(m | MOVEA.L (A5+0xc),A4
00010c74 20 0f | | MOVE.L A7,D0
00010c76 90 ac 00 08 | | SUB.L (A4+0x8),D0
00010c7a 04 80 00 00 00 54 | T | SUBI.L #0x00000054,D0
00010c80 2d 40 00 08 |-@ | MOVE.L D0,(A6+0x8)
00010c84 4c df 10 01 |L | MOVEM.L (A7)+,D0+A4
00010c88 4e 5e |N^ | UNLK A6
00010c8a 4e 75 |Nu | RTS
00010c8c ; --------------------------------------------------------------------------------------
00010c8c ; FSCALL_102b0
00010c8c ; --------------------------------------------------------------------------------------
00010c8c _FSCALL_102b0:
00010c8c 4e 56 00 00 |NV | LINK.W A6,#0x0000
00010c90 48 e7 80 80 |H | MOVEM.L A0+D0,-(A7)
00010c94 bf d5 | | CMPA.L (A5),A7
00010c96 4e 76 |Nv | TRAPV
00010c98 42 80 |B | CLR.L D0
00010c9a 30 2e 00 08 |0. | MOVE.W (A6+0x8),D0
00010c9e 06 80 00 00 00 0b | | ADDI.L #0x0000000b,D0
00010ca4 02 00 00 f8 | | ANDI.B #0xf8,D0
00010ca8 42 2e 00 0a |B. | CLR.B (A6+0xa)
00010cac 20 6d 00 0c | m | MOVEA.L (A5+0xc),A0
00010cb0 41 e8 00 00 |A | LEA.L (A0+0x0),A0
00010cb4 4a 90 |J | TST.L (A0)
00010cb6 67 0c |g | BEQ 0x10cc4
00010cb8 20 50 | P | MOVEA.L (A0),A0
00010cba b0 a8 00 04 | | CMP.L (A0+0x4),D0
00010cbe 62 f4 |b | BHI 0x10cb4
00010cc0 52 2e 00 0a |R. | ADDQ.B #0x1,(A6+0xa)
00010cc4 4c df 01 01 |L | MOVEM.L (A7)+,D0+A0
00010cc8 4e 5e |N^ | UNLK A6
00010cca 4e 75 |Nu | RTS
00010ccc 30 20 |0 | .TXT '0 '
00010cce 2d 32 31 34 37 34 38 33 |-2147483| .TXT '-2147483648 '
00010cda 00 26 00 00 01 10 | & | .XXX[0x6]
00010ce0 00 00 00 00 00 00 00 00 | | .BLANK 00[0x18]
00010cf8 00 00 | | .BLANK 00[0x2]
00010cfa ; --------------------------------------------------------------------------------------
00010cfa ; NewString(VAR a : String)
00010cfa ; Stack:
00010cfa ; A6+0x8 VAR a : String
00010cfa ; OMSI PASCAL Function
00010cfa ; <LVAR 0x008 4(r)>
00010cfa ; --------------------------------------------------------------------------------------
00010cfa _NewString(VAR a : String):
00010cfa 4e 56 ff ec |NV | LINK.W A6,#0xffec
00010cfe bf d5 | | CMPA.L (A5),A7
00010d00 62 06 |b | BHI 0x10d08
00010d02 44 fc 00 02 |D | MOVE.W #0x2,CCR
00010d06 4e 76 |Nv | TRAPV
00010d08 de fc 00 14 | | ADDA.W #0x14,A7
00010d0c 48 e7 00 80 |H | MOVEM.L A0,-(A7)
00010d10 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00010d14 48 50 |HP | PEA.L (A0)
00010d16 48 78 00 80 |Hx | PEA.L 0x80
00010d1a 4e b9 00 01 08 56 |N V | JSR _Malloc1(length : Long) : Pointer
00010d20 50 4f |PO | ADDQ.L #0x8,A7
00010d22 20 50 | P | MOVEA.L (A0),A0
00010d24 b1 e8 ff fc | | CMPA.L (A0-0x4),A0
00010d28 67 02 |g | BEQ 0x10d2c
00010d2a 4e 4d |NM | TRAP #13
00010d2c 42 50 |BP | CLR.W (A0)
00010d2e 4c df 01 00 |L | MOVEM.L (A7)+,A0
00010d32 4e 5e |N^ | UNLK A6
00010d34 4e 75 |Nu | RTS
00010d36 ; --------------------------------------------------------------------------------------
00010d36 ; FreeString(VAR a : String)
00010d36 ; Stack:
00010d36 ; A6+0x8 VAR a : String
00010d36 ; OMSI PASCAL Function
00010d36 ; <LVAR 0x008 4(r)>
00010d36 ; --------------------------------------------------------------------------------------
00010d36 _FreeString(VAR a : String):
00010d36 4e 56 ff f0 |NV | LINK.W A6,#0xfff0
00010d3a bf d5 | | CMPA.L (A5),A7
00010d3c 62 06 |b | BHI 0x10d44
00010d3e 44 fc 00 02 |D | MOVE.W #0x2,CCR
00010d42 4e 76 |Nv | TRAPV
00010d44 de fc 00 10 | | ADDA.W #0x10,A7
00010d48 48 e7 00 80 |H | MOVEM.L A0,-(A7)
00010d4c 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00010d50 48 50 |HP | PEA.L (A0)
00010d52 48 78 00 80 |Hx | PEA.L 0x80
00010d56 4e b9 00 01 08 fa |N | JSR _Free2(a : Pointer; b : Long)
00010d5c 50 4f |PO | ADDQ.L #0x8,A7
00010d5e 4c df 01 00 |L | MOVEM.L (A7)+,A0
00010d62 4e 5e |N^ | UNLK A6
00010d64 4e 75 |Nu | RTS
00010d66 ; --------------------------------------------------------------------------------------
00010d66 ; AppendChar(MOD b : String; a : char)
00010d66 ; Stack:
00010d66 ; A6+0xa b : String
00010d66 ; A6+0x8 a : char
00010d66 ; OMSI PASCAL Function
00010d66 ; <LVAR 0x00a 4(r)>
00010d66 ; <LVAR 0x008 1(r)>
00010d66 ; --------------------------------------------------------------------------------------
00010d66 _AppendChar(MOD b : String; a : char):
00010d66 4e 56 ff e8 |NV | LINK.W A6,#0xffe8
00010d6a bf d5 | | CMPA.L (A5),A7
00010d6c 62 06 |b | BHI 0x10d74
00010d6e 44 fc 00 02 |D | MOVE.W #0x2,CCR
00010d72 4e 76 |Nv | TRAPV
00010d74 de fc 00 16 | | ADDA.W #0x16,A7
00010d78 48 e7 80 80 |H | MOVEM.L A0+D0,-(A7)
00010d7c 20 6e 00 0a | n | MOVEA.L (A6+0xa),A0
00010d80 b1 e8 ff fc | | CMPA.L (A0-0x4),A0
00010d84 67 02 |g | BEQ 0x10d88
00010d86 4e 4d |NM | TRAP #13
00010d88 30 10 |0 | MOVE.W (A0),D0
00010d8a 0c 40 00 7e | @ ~ | CMPI.W #0x007e,D0
00010d8e 6c 0c |l | BGE 0x10d9c
00010d90 48 c0 |H | EXTW.L D0
00010d92 52 80 |R | ADDQ.L #0x1,D0
00010d94 30 80 |0 | MOVE.W D0,(A0)
00010d96 11 ae 00 08 00 01 | | MOVE.B (A6+0x8),(A0+D0.W+#0x1)
00010d9c 4c df 01 01 |L | MOVEM.L (A7)+,D0+A0
00010da0 4e 5e |N^ | UNLK A6
00010da2 4e 75 |Nu | RTS
00010da4 ; --------------------------------------------------------------------------------------
00010da4 ; StringLit(Src : Pointer; Offset: W; Len : W) : String
00010da4 ; Stack:
00010da4 ; A6+0x10 VAR RETURN : String
00010da4 ; A6+0xc Src : Pointer
00010da4 ; A6+0xa Offset : W
00010da4 ; A6+0x8 Len : W
00010da4 ; OMSI PASCAL Function
00010da4 ; <LVAR 0x010 4(w)>
00010da4 ; <LVAR 0x00c 4(r)>
00010da4 ; <LVAR 0x00a 2(r)>
00010da4 ; <LVAR 0x008 2(r)>
00010da4 ; <LVAR -0x004 @ 4(r)>
00010da4 ; --------------------------------------------------------------------------------------
00010da4 _StringLit(Src : Pointer; Offset: W; Len : W) : String:
00010da4 4e 56 ff c8 |NV | LINK.W A6,#0xffc8
00010da8 bf d5 | | CMPA.L (A5),A7
00010daa 62 06 |b | BHI 0x10db2
00010dac 44 fc 00 02 |D | MOVE.W #0x2,CCR
00010db0 4e 76 |Nv | TRAPV
00010db2 de fc 00 30 | 0 | ADDA.W #0x30,A7
00010db6 48 e7 e1 f0 |H | MOVEM.L A3+A2+A1+A0+D7+D2+D1+D0,-(A7)
00010dba 45 ee ff fc |E | LEA.L (A6-0x4),A2
00010dbe 47 ee 00 08 |G | LEA.L (A6+0x8),A3
00010dc2 72 01 |r | MOVEQ.L #0x01,D1
00010dc4 74 20 |t | MOVEQ.L #0x20,D2
00010dc6 48 52 |HR | PEA.L (A2)
00010dc8 4e ba ff 30 |N 0 | JSR _NewString(VAR a : String)
00010dcc 58 4f |XO | ADDQ.L #0x4,A7
00010dce 20 52 | R | MOVEA.L (A2),A0
00010dd0 b1 e8 ff fc | | CMPA.L (A0-0x4),A0
00010dd4 67 02 |g | BEQ 0x10dd8
00010dd6 4e 4d |NM | TRAP #13
00010dd8 2f 08 |/ | MOVE.L A0,-(A7)
00010dda 30 13 |0 | MOVE.W (A3),D0
00010ddc 48 c0 |H | EXTW.L D0
00010dde 2f 00 |/ | MOVE.L D0,-(A7)
00010de0 7e 01 |~ | MOVEQ.L #0x01,D7
00010de2 be 97 | | CMP.L (A7),D7
00010de4 6e 1c |n | BGT 0x10e02
00010de6 20 6f 00 04 | o | MOVEA.L (A7+0x4),A0
00010dea 22 6e 00 0c |"n | MOVEA.L (A6+0xc),A1
00010dee 30 2e 00 0a |0. | MOVE.W (A6+0xa),D0
00010df2 48 c0 |H | EXTW.L D0
00010df4 44 80 |D | NEG.L D0
00010df6 d0 87 | | ADD.L D7,D0
00010df8 11 b1 08 00 78 01 | x | MOVE.B (A1+D0.L),(A0+D7.L+#0x1)
00010dfe 52 87 |R | ADDQ.L #0x1,D7
00010e00 68 e0 |h | BVC 0x10de2
00010e02 58 4f |XO | ADDQ.L #0x4,A7
00010e04 20 57 | W | MOVEA.L (A7),A0
00010e06 30 93 |0 | MOVE.W (A3),(A0)
00010e08 30 13 |0 | MOVE.W (A3),D0
00010e0a 48 c0 |H | EXTW.L D0
00010e0c 2e 00 |. | MOVE.L D0,D7
00010e0e be 81 | | CMP.L D1,D7
00010e10 6d 1e |m | BLT 0x10e30
00010e12 20 57 | W | MOVEA.L (A7),A0
00010e14 10 30 78 01 | 0x | MOVE.B (A0+D7.L+#0x1),D0
00010e18 b0 02 | | CMP.B D2,D0
00010e1a 67 04 |g | BEQ 0x10e20
00010e1c 4a 00 |J | TST.B D0
00010e1e 66 0a |f | BNE 0x10e2a
00010e20 30 10 |0 | MOVE.W (A0),D0
00010e22 48 c0 |H | EXTW.L D0
00010e24 53 80 |S | SUBQ.L #0x1,D0
00010e26 30 80 |0 | MOVE.W D0,(A0)
00010e28 60 02 |` | BRA 0x10e2c
00010e2a 60 04 |` | BRA 0x10e30
00010e2c 53 87 |S | SUBQ.L #0x1,D7
00010e2e 68 de |h | BVC 0x10e0e
00010e30 20 57 | W | MOVEA.L (A7),A0
00010e32 30 10 |0 | MOVE.W (A0),D0
00010e34 48 c0 |H | EXTW.L D0
00010e36 2e 00 |. | MOVE.L D0,D7
00010e38 be 81 | | CMP.L D1,D7
00010e3a 6d 18 |m | BLT 0x10e54
00010e3c 20 57 | W | MOVEA.L (A7),A0
00010e3e 10 30 78 01 | 0x | MOVE.B (A0+D7.L+#0x1),D0
00010e42 0c 00 00 5f | _ | CMPI.B #0x5f,D0
00010e46 66 06 |f | BNE 0x10e4e
00010e48 11 82 78 01 | x | MOVE.B D2,(A0+D7.L+#0x1)
00010e4c 60 02 |` | BRA 0x10e50
00010e4e 60 04 |` | BRA 0x10e54
00010e50 53 87 |S | SUBQ.L #0x1,D7
00010e52 68 e4 |h | BVC 0x10e38
00010e54 58 4f |XO | ADDQ.L #0x4,A7
00010e56 2d 52 00 10 |-R | MOVE.L (A2),(A6+0x10)
00010e5a 4c df 0f 87 |L | MOVEM.L (A7)+,D0+D1+D2+D7+A0+A1+A2+A3
00010e5e 4e 5e |N^ | UNLK A6
00010e60 4e 75 |Nu | RTS
00010e62 ; --------------------------------------------------------------------------------------
00010e62 ; StringEqual(a, b : String) : Byte
00010e62 ; Stack:
00010e62 ; A6+0x10 VAR RETURN : Byte
00010e62 ; A6+0xc a : String
00010e62 ; A6+0x8 b : String
00010e62 ; OMSI PASCAL Function
00010e62 ; <LVAR 0x010 1(rw)>
00010e62 ; <LVAR 0x00c 4(r)>
00010e62 ; <LVAR 0x008 4(r)>
00010e62 ; --------------------------------------------------------------------------------------
00010e62 _StringEqual(a, b : String) : Byte:
00010e62 4e 56 ff da |NV | LINK.W A6,#0xffda
00010e66 bf d5 | | CMPA.L (A5),A7
00010e68 62 06 |b | BHI 0x10e70
00010e6a 44 fc 00 02 |D | MOVE.W #0x2,CCR
00010e6e 4e 76 |Nv | TRAPV
00010e70 de fc 00 22 | " | ADDA.W #0x22,A7
00010e74 48 e7 81 c0 |H | MOVEM.L A1+A0+D7+D0,-(A7)
00010e78 42 2e 00 10 |B. | CLR.B (A6+0x10)
00010e7c 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
00010e80 b1 e8 ff fc | | CMPA.L (A0-0x4),A0
00010e84 67 02 |g | BEQ 0x10e88
00010e86 4e 4d |NM | TRAP #13
00010e88 2f 08 |/ | MOVE.L A0,-(A7)
00010e8a 22 6e 00 08 |"n | MOVEA.L (A6+0x8),A1
00010e8e b3 e9 ff fc | | CMPA.L (A1-0x4),A1
00010e92 67 02 |g | BEQ 0x10e96
00010e94 4e 4d |NM | TRAP #13
00010e96 30 10 |0 | MOVE.W (A0),D0
00010e98 b0 51 | Q | CMP.W (A1),D0
00010e9a 66 34 |f4 | BNE 0x10ed0
00010e9c 48 c0 |H | EXTW.L D0
00010e9e 2f 00 |/ | MOVE.L D0,-(A7)
00010ea0 7e 01 |~ | MOVEQ.L #0x01,D7
00010ea2 be 97 | | CMP.L (A7),D7
00010ea4 6e 22 |n" | BGT 0x10ec8
00010ea6 20 6f 00 04 | o | MOVEA.L (A7+0x4),A0
00010eaa 22 6e 00 08 |"n | MOVEA.L (A6+0x8),A1
00010eae b3 e9 ff fc | | CMPA.L (A1-0x4),A1
00010eb2 67 02 |g | BEQ 0x10eb6
00010eb4 4e 4d |NM | TRAP #13
00010eb6 10 30 78 01 | 0x | MOVE.B (A0+D7.L+#0x1),D0
00010eba b0 31 78 01 | 1x | CMP.B (A1+D7.L+#0x1),D0
00010ebe 67 04 |g | BEQ 0x10ec4
00010ec0 50 4f |PO | ADDQ.L #0x8,A7
00010ec2 60 0e |` | BRA 0x10ed2
00010ec4 52 87 |R | ADDQ.L #0x1,D7
00010ec6 68 da |h | BVC 0x10ea2
00010ec8 58 4f |XO | ADDQ.L #0x4,A7
00010eca 1d 7c 00 01 00 10 | | | MOVE.B #0x01,(A6+0x10)
00010ed0 58 4f |XO | ADDQ.L #0x4,A7
00010ed2 4c df 03 81 |L | MOVEM.L (A7)+,D0+D7+A0+A1
00010ed6 4e 5e |N^ | UNLK A6
00010ed8 4e 75 |Nu | RTS
00010eda ; --------------------------------------------------------------------------------------
00010eda ; StringDup(a : String) : String
00010eda ; Stack:
00010eda ; A6+0xc VAR RETURN : String
00010eda ; A6+0x8 a : String
00010eda ; OMSI PASCAL Function
00010eda ; <LVAR 0x00c 4(w)>
00010eda ; <LVAR 0x008 4(r)>
00010eda ; <LVAR -0x004 @ 4(r)>
00010eda ; --------------------------------------------------------------------------------------
00010eda _StringDup(a : String) : String:
00010eda 4e 56 ff e0 |NV | LINK.W A6,#0xffe0
00010ede bf d5 | | CMPA.L (A5),A7
00010ee0 62 06 |b | BHI 0x10ee8
00010ee2 44 fc 00 02 |D | MOVE.W #0x2,CCR
00010ee6 4e 76 |Nv | TRAPV
00010ee8 de fc 00 1c | | ADDA.W #0x1c,A7
00010eec 48 e7 80 e0 |H | MOVEM.L A2+A1+A0+D0,-(A7)
00010ef0 45 ee ff fc |E | LEA.L (A6-0x4),A2
00010ef4 48 52 |HR | PEA.L (A2)
00010ef6 48 78 00 80 |Hx | PEA.L 0x80
00010efa 4e b9 00 01 08 56 |N V | JSR _Malloc1(length : Long) : Pointer
00010f00 50 4f |PO | ADDQ.L #0x8,A7
00010f02 20 52 | R | MOVEA.L (A2),A0
00010f04 b1 e8 ff fc | | CMPA.L (A0-0x4),A0
00010f08 67 02 |g | BEQ 0x10f0c
00010f0a 4e 4d |NM | TRAP #13
00010f0c 22 6e 00 08 |"n | MOVEA.L (A6+0x8),A1
00010f10 b3 e9 ff fc | | CMPA.L (A1-0x4),A1
00010f14 67 02 |g | BEQ 0x10f18
00010f16 4e 4d |NM | TRAP #13
00010f18 70 7f |p | MOVEQ.L #0x7f,D0
00010f1a 10 d9 | | MOVE.B (A1)+,(A0)+
00010f1c 51 c8 ff fc |Q | DBF D0,0x10f1a
00010f20 2d 52 00 0c |-R | MOVE.L (A2),(A6+0xc)
00010f24 4c df 07 01 |L | MOVEM.L (A7)+,D0+A0+A1+A2
00010f28 4e 5e |N^ | UNLK A6
00010f2a 4e 75 |Nu | RTS
00010f2c ; --------------------------------------------------------------------------------------
00010f2c ; StringCat2(a, b : String) : String
00010f2c ; Stack:
00010f2c ; A6+0x10 VAR RETURN : String
00010f2c ; A6+0xc a : String
00010f2c ; A6+0x8 b : String
00010f2c ; OMSI PASCAL Function
00010f2c ; <LVAR 0x010 4(w)>
00010f2c ; <LVAR 0x00c 4(r)>
00010f2c ; <LVAR 0x008 @ 4(r)>
00010f2c ; --------------------------------------------------------------------------------------
00010f2c _StringCat2(a, b : String) : String:
00010f2c 4e 56 ff c0 |NV | LINK.W A6,#0xffc0
00010f30 bf d5 | | CMPA.L (A5),A7
00010f32 62 06 |b | BHI 0x10f3a
00010f34 44 fc 00 02 |D | MOVE.W #0x2,CCR
00010f38 4e 76 |Nv | TRAPV
00010f3a de fc 00 38 | 8 | ADDA.W #0x38,A7
00010f3e 48 e7 f3 e0 |H | MOVEM.L A2+A1+A0+D7+D6+D3+D2+D1+D0,-(A7)
00010f42 45 ee 00 08 |E | LEA.L (A6+0x8),A2
00010f46 76 7e |v~ | MOVEQ.L #0x7e,D3
00010f48 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
00010f4c b1 e8 ff fc | | CMPA.L (A0-0x4),A0
00010f50 67 02 |g | BEQ 0x10f54
00010f52 4e 4d |NM | TRAP #13
00010f54 2f 08 |/ | MOVE.L A0,-(A7)
00010f56 22 52 |"R | MOVEA.L (A2),A1
00010f58 b3 e9 ff fc | | CMPA.L (A1-0x4),A1
00010f5c 67 02 |g | BEQ 0x10f60
00010f5e 4e 4d |NM | TRAP #13
00010f60 30 10 |0 | MOVE.W (A0),D0
00010f62 48 c0 |H | EXTW.L D0
00010f64 32 11 |2 | MOVE.W (A1),D1
00010f66 48 c1 |H | EXTW.L D1
00010f68 24 00 |$ | MOVE.L D0,D2
00010f6a d4 81 | | ADD.L D1,D2
00010f6c b4 83 | | CMP.L D3,D2
00010f6e 6f 08 |o | BLE 0x10f78
00010f70 44 80 |D | NEG.L D0
00010f72 d0 83 | | ADD.L D3,D0
00010f74 2c 00 |, | MOVE.L D0,D6
00010f76 60 02 |` | BRA 0x10f7a
00010f78 2c 01 |, | MOVE.L D1,D6
00010f7a 2f 06 |/ | MOVE.L D6,-(A7)
00010f7c 7e 01 |~ | MOVEQ.L #0x01,D7
00010f7e be 97 | | CMP.L (A7),D7
00010f80 6e 1e |n | BGT 0x10fa0
00010f82 20 6f 00 04 | o | MOVEA.L (A7+0x4),A0
00010f86 30 10 |0 | MOVE.W (A0),D0
00010f88 48 c0 |H | EXTW.L D0
00010f8a d0 87 | | ADD.L D7,D0
00010f8c 22 52 |"R | MOVEA.L (A2),A1
00010f8e b3 e9 ff fc | | CMPA.L (A1-0x4),A1
00010f92 67 02 |g | BEQ 0x10f96
00010f94 4e 4d |NM | TRAP #13
00010f96 11 b1 78 01 08 01 | x | MOVE.B (A1+D7.L+#0x1),(A0+D0.L+#0x1)
00010f9c 52 87 |R | ADDQ.L #0x1,D7
00010f9e 68 de |h | BVC 0x10f7e
00010fa0 58 4f |XO | ADDQ.L #0x4,A7
00010fa2 20 57 | W | MOVEA.L (A7),A0
00010fa4 30 10 |0 | MOVE.W (A0),D0
00010fa6 48 c0 |H | EXTW.L D0
00010fa8 d0 86 | | ADD.L D6,D0
00010faa 30 80 |0 | MOVE.W D0,(A0)
00010fac 48 52 |HR | PEA.L (A2)
00010fae 48 78 00 80 |Hx | PEA.L 0x80
00010fb2 4e b9 00 01 08 fa |N | JSR _Free2(a : Pointer; b : Long)
00010fb8 50 4f |PO | ADDQ.L #0x8,A7
00010fba 2d 6e 00 0c 00 10 |-n | MOVE.L (A6+0xc),(A6+0x10)
00010fc0 58 4f |XO | ADDQ.L #0x4,A7
00010fc2 4c df 07 cf |L | MOVEM.L (A7)+,D0+D1+D2+D3+D6+D7+A0+A1+A2
00010fc6 4e 5e |N^ | UNLK A6
00010fc8 4e 75 |Nu | RTS
00010fca ; --------------------------------------------------------------------------------------
00010fca ; StringCat3(a, b, c : String) : String
00010fca ; Stack:
00010fca ; A6+0x14 VAR RETURN : String
00010fca ; A6+0x10 a : String
00010fca ; A6+0xc b : String
00010fca ; A6+0x8 c : String
00010fca ; OMSI PASCAL Function
00010fca ; <LVAR 0x014 4(w)>
00010fca ; <LVAR 0x010 4(r)>
00010fca ; <LVAR 0x00c 4(r)>
00010fca ; <LVAR 0x008 4(r)>
00010fca ; --------------------------------------------------------------------------------------
00010fca _StringCat3(a, b, c : String) : String:
00010fca 4e 56 ff e8 |NV | LINK.W A6,#0xffe8
00010fce bf d5 | | CMPA.L (A5),A7
00010fd0 62 06 |b | BHI 0x10fd8
00010fd2 44 fc 00 02 |D | MOVE.W #0x2,CCR
00010fd6 4e 76 |Nv | TRAPV
00010fd8 de fc 00 18 | | ADDA.W #0x18,A7
00010fdc 59 4f |YO | SUBQ.L #0x4,A7
00010fde 2f 2e 00 10 |/. | MOVE.L (A6+0x10),-(A7)
00010fe2 59 4f |YO | SUBQ.L #0x4,A7
00010fe4 2f 2e 00 0c |/. | MOVE.L (A6+0xc),-(A7)
00010fe8 2f 2e 00 08 |/. | MOVE.L (A6+0x8),-(A7)
00010fec 4e ba ff 3e |N > | JSR _StringCat2(a, b : String) : String
00010ff0 50 4f |PO | ADDQ.L #0x8,A7
00010ff2 4e ba ff 38 |N 8 | JSR _StringCat2(a, b : String) : String
00010ff6 50 4f |PO | ADDQ.L #0x8,A7
00010ff8 2d 5f 00 14 |-_ | MOVE.L (A7)+,(A6+0x14)
00010ffc 4e 5e |N^ | UNLK A6
00010ffe 4e 75 |Nu | RTS
00011000 ; --------------------------------------------------------------------------------------
00011000 ; StringCat4(a, b, c, d : String) : String
00011000 ; Stack:
00011000 ; A6+0x18 VAR RETURN : String
00011000 ; A6+0x14 a : String
00011000 ; A6+0x10 b : String
00011000 ; A6+0xc c : String
00011000 ; A6+0x8 d : String
00011000 ; OMSI PASCAL Function
00011000 ; <LVAR 0x018 4(w)>
00011000 ; <LVAR 0x014 4(r)>
00011000 ; <LVAR 0x010 4(r)>
00011000 ; <LVAR 0x00c 4(r)>
00011000 ; <LVAR 0x008 4(r)>
00011000 ; --------------------------------------------------------------------------------------
00011000 _StringCat4(a, b, c, d : String) : String:
00011000 4e 56 ff e4 |NV | LINK.W A6,#0xffe4
00011004 bf d5 | | CMPA.L (A5),A7
00011006 62 06 |b | BHI 0x1100e
00011008 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001100c 4e 76 |Nv | TRAPV
0001100e de fc 00 1c | | ADDA.W #0x1c,A7
00011012 59 4f |YO | SUBQ.L #0x4,A7
00011014 2f 2e 00 14 |/. | MOVE.L (A6+0x14),-(A7)
00011018 59 4f |YO | SUBQ.L #0x4,A7
0001101a 2f 2e 00 10 |/. | MOVE.L (A6+0x10),-(A7)
0001101e 2f 2e 00 0c |/. | MOVE.L (A6+0xc),-(A7)
00011022 2f 2e 00 08 |/. | MOVE.L (A6+0x8),-(A7)
00011026 4e ba ff a2 |N | JSR _StringCat3(a, b, c : String) : String
0001102a de fc 00 0c | | ADDA.W #0xc,A7
0001102e 4e ba fe fc |N | JSR _StringCat2(a, b : String) : String
00011032 50 4f |PO | ADDQ.L #0x8,A7
00011034 2d 5f 00 18 |-_ | MOVE.L (A7)+,(A6+0x18)
00011038 4e 5e |N^ | UNLK A6
0001103a 4e 75 |Nu | RTS
0001103c ; --------------------------------------------------------------------------------------
0001103c ; StringCat5(a, b, c, d, e : String) : String
0001103c ; Stack:
0001103c ; A6+0x1c VAR RETURN : String
0001103c ; A6+0x18 a : String
0001103c ; A6+0x14 b : String
0001103c ; A6+0x10 c : String
0001103c ; A6+0xc d : String
0001103c ; A6+0x8 e : String
0001103c ; OMSI PASCAL Function
0001103c ; <LVAR 0x01c 4(w)>
0001103c ; <LVAR 0x018 4(r)>
0001103c ; <LVAR 0x014 4(r)>
0001103c ; <LVAR 0x010 4(r)>
0001103c ; <LVAR 0x00c 4(r)>
0001103c ; <LVAR 0x008 4(r)>
0001103c ; --------------------------------------------------------------------------------------
0001103c _StringCat5(a, b, c, d, e : String) : String:
0001103c 4e 56 ff e0 |NV | LINK.W A6,#0xffe0
00011040 bf d5 | | CMPA.L (A5),A7
00011042 62 06 |b | BHI 0x1104a
00011044 44 fc 00 02 |D | MOVE.W #0x2,CCR
00011048 4e 76 |Nv | TRAPV
0001104a de fc 00 20 | | ADDA.W #0x20,A7
0001104e 59 4f |YO | SUBQ.L #0x4,A7
00011050 2f 2e 00 18 |/. | MOVE.L (A6+0x18),-(A7)
00011054 59 4f |YO | SUBQ.L #0x4,A7
00011056 2f 2e 00 14 |/. | MOVE.L (A6+0x14),-(A7)
0001105a 2f 2e 00 10 |/. | MOVE.L (A6+0x10),-(A7)
0001105e 2f 2e 00 0c |/. | MOVE.L (A6+0xc),-(A7)
00011062 2f 2e 00 08 |/. | MOVE.L (A6+0x8),-(A7)
00011066 4e ba ff 98 |N | JSR _StringCat4(a, b, c, d : String) : String
0001106a de fc 00 10 | | ADDA.W #0x10,A7
0001106e 4e ba fe bc |N | JSR _StringCat2(a, b : String) : String
00011072 50 4f |PO | ADDQ.L #0x8,A7
00011074 2d 5f 00 1c |-_ | MOVE.L (A7)+,(A6+0x1c)
00011078 4e 5e |N^ | UNLK A6
0001107a 4e 75 |Nu | RTS
0001107c ; --------------------------------------------------------------------------------------
0001107c ; StringCat6(a, b, c, d, e, f : String) : String
0001107c ; Stack:
0001107c ; A6+0x20 VAR RETURN : String
0001107c ; A6+0x1c a : String
0001107c ; A6+0x18 b : String
0001107c ; A6+0x14 c : String
0001107c ; A6+0x10 d : String
0001107c ; A6+0xc e : String
0001107c ; A6+0x8 f : String
0001107c ; OMSI PASCAL Function
0001107c ; <LVAR 0x020 4(w)>
0001107c ; <LVAR 0x01c 4(r)>
0001107c ; <LVAR 0x018 4(r)>
0001107c ; <LVAR 0x014 4(r)>
0001107c ; <LVAR 0x010 4(r)>
0001107c ; <LVAR 0x00c 4(r)>
0001107c ; <LVAR 0x008 4(r)>
0001107c ; --------------------------------------------------------------------------------------
0001107c _StringCat6(a, b, c, d, e, f : String) : String:
0001107c 4e 56 ff dc |NV | LINK.W A6,#0xffdc
00011080 bf d5 | | CMPA.L (A5),A7
00011082 62 06 |b | BHI 0x1108a
00011084 44 fc 00 02 |D | MOVE.W #0x2,CCR
00011088 4e 76 |Nv | TRAPV
0001108a de fc 00 24 | $ | ADDA.W #0x24,A7
0001108e 59 4f |YO | SUBQ.L #0x4,A7
00011090 2f 2e 00 1c |/. | MOVE.L (A6+0x1c),-(A7)
00011094 59 4f |YO | SUBQ.L #0x4,A7
00011096 2f 2e 00 18 |/. | MOVE.L (A6+0x18),-(A7)
0001109a 2f 2e 00 14 |/. | MOVE.L (A6+0x14),-(A7)
0001109e 2f 2e 00 10 |/. | MOVE.L (A6+0x10),-(A7)
000110a2 2f 2e 00 0c |/. | MOVE.L (A6+0xc),-(A7)
000110a6 2f 2e 00 08 |/. | MOVE.L (A6+0x8),-(A7)
000110aa 4e ba ff 90 |N | JSR _StringCat5(a, b, c, d, e : String) : String
000110ae de fc 00 14 | | ADDA.W #0x14,A7
000110b2 4e ba fe 78 |N x | JSR _StringCat2(a, b : String) : String
000110b6 50 4f |PO | ADDQ.L #0x8,A7
000110b8 2d 5f 00 20 |-_ | MOVE.L (A7)+,(A6+0x20)
000110bc 4e 5e |N^ | UNLK A6
000110be 4e 75 |Nu | RTS
000110c0 ; --------------------------------------------------------------------------------------
000110c0 ; Long2String(a : Long) : String
000110c0 ; Stack:
000110c0 ; A6+0xc VAR RETURN : String
000110c0 ; A6+0x8 a : Long
000110c0 ; OMSI PASCAL Function
000110c0 ; <LVAR 0x00c 4(w)>
000110c0 ; <LVAR 0x008 4(rw)>
000110c0 ; <LVAR -0x008 @ 4(rw)>
000110c0 ; <LVAR -0x00c @ 4(r)>
000110c0 ; --------------------------------------------------------------------------------------
000110c0 _Long2String(a : Long) : String:
000110c0 4e 56 ff a8 |NV | LINK.W A6,#0xffa8
000110c4 bf d5 | | CMPA.L (A5),A7
000110c6 62 06 |b | BHI 0x110ce
000110c8 44 fc 00 02 |D | MOVE.W #0x2,CCR
000110cc 4e 76 |Nv | TRAPV
000110ce de fc 00 4c | L | ADDA.W #0x4c,A7
000110d2 48 e7 f9 f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D4+D3+D2+D1+D0,-(A7)
000110d6 45 ee ff f8 |E | LEA.L (A6-0x8),A2
000110da 47 ee 00 08 |G | LEA.L (A6+0x8),A3
000110de 49 ee ff f4 |I | LEA.L (A6-0xc),A4
000110e2 72 01 |r | MOVEQ.L #0x01,D1
000110e4 74 0c |t | MOVEQ.L #0x0c,D2
000110e6 4a 93 |J | TST.L (A3)
000110e8 66 1e |f | BNE 0x11108
000110ea 3f 3a fb e0 |?: | MOVE.W 0x10ccc,-(A7)
000110ee 59 4f |YO | SUBQ.L #0x4,A7
000110f0 48 6f 00 04 |Ho | PEA.L (A7+0x4)
000110f4 3f 01 |? | MOVE.W D1,-(A7)
000110f6 3f 3c 00 02 |?< | MOVE.W #0x2,-(A7)
000110fa 4e ba fc a8 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
000110fe 50 4f |PO | ADDQ.L #0x8,A7
00011100 24 9f |$ | MOVE.L (A7)+,(A2)
00011102 54 4f |TO | ADDQ.L #0x2,A7
00011104 60 00 00 bc |` | BRA 0x111c2
00011108 20 13 | | MOVE.L (A3),D0
0001110a 0c 80 80 00 00 00 | | CMPI.L #0x80000000,D0
00011110 66 2a |f* | BNE 0x1113c
00011112 9e c2 | | SUBA.W D2,A7
00011114 20 4f | O | MOVEA.L A7,A0
00011116 43 fa fb b6 |C | LEA.L 0x10cce,A1
0001111a 70 0a |p | MOVEQ.L #0x0a,D0
0001111c 10 d9 | | MOVE.B (A1)+,(A0)+
0001111e 51 c8 ff fc |Q | DBF D0,0x1111c
00011122 59 4f |YO | SUBQ.L #0x4,A7
00011124 48 6f 00 04 |Ho | PEA.L (A7+0x4)
00011128 3f 01 |? | MOVE.W D1,-(A7)
0001112a 3f 3c 00 0b |?< | MOVE.W #0xb,-(A7)
0001112e 4e ba fc 74 |N t | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00011132 50 4f |PO | ADDQ.L #0x8,A7
00011134 24 9f |$ | MOVE.L (A7)+,(A2)
00011136 de c2 | | ADDA.W D2,A7
00011138 60 00 00 88 |` | BRA 0x111c2
0001113c 48 52 |HR | PEA.L (A2)
0001113e 4e ba fb ba |N | JSR _NewString(VAR a : String)
00011142 58 4f |XO | ADDQ.L #0x4,A7
00011144 48 54 |HT | PEA.L (A4)
00011146 4e ba fb b2 |N | JSR _NewString(VAR a : String)
0001114a 58 4f |XO | ADDQ.L #0x4,A7
0001114c 4a 80 |J | TST.L D0
0001114e 6c 10 |l | BGE 0x11160
00011150 2f 12 |/ | MOVE.L (A2),-(A7)
00011152 1f 3c 00 2d | < - | MOVE.B #0x2d,-(A7)
00011156 4e ba fc 0e |N | JSR _AppendChar(MOD b : String; a : char)
0001115a 5c 4f |\O | ADDQ.L #0x6,A7
0001115c 44 80 |D | NEG.L D0
0001115e 26 80 |& | MOVE.L D0,(A3)
00011160 28 13 |( | MOVE.L (A3),D4
00011162 76 0a |v | MOVEQ.L #0x0a,D3
00011164 4e b9 00 01 08 0a |N | JSR _?divs_d3_d4
0001116a 2e 03 |. | MOVE.L D3,D7
0001116c 26 84 |& | MOVE.L D4,(A3)
0001116e 2f 14 |/ | MOVE.L (A4),-(A7)
00011170 70 30 |p0 | MOVEQ.L #0x30,D0
00011172 d0 87 | | ADD.L D7,D0
00011174 1f 00 | | MOVE.B D0,-(A7)
00011176 4e ba fb ee |N | JSR _AppendChar(MOD b : String; a : char)
0001117a 5c 4f |\O | ADDQ.L #0x6,A7
0001117c 4a 84 |J | TST.L D4
0001117e 66 e0 |f | BNE 0x11160
00011180 20 54 | T | MOVEA.L (A4),A0
00011182 b1 e8 ff fc | | CMPA.L (A0-0x4),A0
00011186 67 02 |g | BEQ 0x1118a
00011188 4e 4d |NM | TRAP #13
0001118a 2f 08 |/ | MOVE.L A0,-(A7)
0001118c 30 10 |0 | MOVE.W (A0),D0
0001118e 48 c0 |H | EXTW.L D0
00011190 53 80 |S | SUBQ.L #0x1,D0
00011192 2f 00 |/ | MOVE.L D0,-(A7)
00011194 7e 00 |~ | MOVEQ.L #0x00,D7
00011196 be 97 | | CMP.L (A7),D7
00011198 6e 1e |n | BGT 0x111b8
0001119a 2f 12 |/ | MOVE.L (A2),-(A7)
0001119c 20 6f 00 08 | o | MOVEA.L (A7+0x8),A0
000111a0 30 10 |0 | MOVE.W (A0),D0
000111a2 48 c0 |H | EXTW.L D0
000111a4 90 87 | | SUB.L D7,D0
000111a6 20 6f 00 08 | o | MOVEA.L (A7+0x8),A0
000111aa 1f 30 08 01 | 0 | MOVE.B (A0+D0.L+#0x1),-(A7)
000111ae 4e ba fb b6 |N | JSR _AppendChar(MOD b : String; a : char)
000111b2 5c 4f |\O | ADDQ.L #0x6,A7
000111b4 52 87 |R | ADDQ.L #0x1,D7
000111b6 68 de |h | BVC 0x11196
000111b8 50 4f |PO | ADDQ.L #0x8,A7
000111ba 48 54 |HT | PEA.L (A4)
000111bc 4e ba fb 78 |N x | JSR _FreeString(VAR a : String)
000111c0 58 4f |XO | ADDQ.L #0x4,A7
000111c2 2d 52 00 0c |-R | MOVE.L (A2),(A6+0xc)
000111c6 4c df 1f 9f |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D7+A0+A1+A2+A3+A4
000111ca 4e 5e |N^ | UNLK A6
000111cc 4e 75 |Nu | RTS
000111ce ; --------------------------------------------------------------------------------------
000111ce ; Long2HexString(val : Long; ndig : Long) : String
000111ce ; Stack:
000111ce ; A6+0x10 VAR RETURN : String
000111ce ; A6+0xc val : Long
000111ce ; A6+0x8 ndig : Long
000111ce ; OMSI PASCAL Function
000111ce ; <LVAR 0x010 4(w)>
000111ce ; <LVAR 0x00c 4(rw)>
000111ce ; <LVAR 0x00a 2(r)>
000111ce ; <LVAR 0x008 4(rw)>
000111ce ; <LVAR -0x00c @ 4(r)>
000111ce ; --------------------------------------------------------------------------------------
000111ce _Long2HexString(val : Long; ndig : Long) : String:
000111ce 4e 56 ff bc |NV | LINK.W A6,#0xffbc
000111d2 bf d5 | | CMPA.L (A5),A7
000111d4 62 06 |b | BHI 0x111dc
000111d6 44 fc 00 02 |D | MOVE.W #0x2,CCR
000111da 4e 76 |Nv | TRAPV
000111dc de fc 00 34 | 4 | ADDA.W #0x34,A7
000111e0 48 e7 c7 f0 |H | MOVEM.L A3+A2+A1+A0+D7+D6+D5+D1+D0,-(A7)
000111e4 43 ee 00 0c |C | LEA.L (A6+0xc),A1
000111e8 45 ee ff f4 |E | LEA.L (A6-0xc),A2
000111ec 47 ee 00 08 |G | LEA.L (A6+0x8),A3
000111f0 72 01 |r | MOVEQ.L #0x01,D1
000111f2 48 52 |HR | PEA.L (A2)
000111f4 4e ba fb 04 |N | JSR _NewString(VAR a : String)
000111f8 58 4f |XO | ADDQ.L #0x4,A7
000111fa 20 52 | R | MOVEA.L (A2),A0
000111fc b1 e8 ff fc | | CMPA.L (A0-0x4),A0
00011200 67 02 |g | BEQ 0x11204
00011202 4e 4d |NM | TRAP #13
00011204 2f 08 |/ | MOVE.L A0,-(A7)
00011206 7a 08 |z | MOVEQ.L #0x08,D5
00011208 20 13 | | MOVE.L (A3),D0
0001120a b0 81 | | CMP.L D1,D0
0001120c 6d 04 |m | BLT 0x11212
0001120e b0 85 | | CMP.L D5,D0
00011210 6f 02 |o | BLE 0x11214
00011212 26 85 |& | MOVE.L D5,(A3)
00011214 30 ae 00 0a |0 | MOVE.W (A6+0xa),(A0)
00011218 2e 11 |. | MOVE.L (A1),D7
0001121a 2c 13 |, | MOVE.L (A3),D6
0001121c bc 81 | | CMP.L D1,D6
0001121e 6d 2a |m* | BLT 0x1124a
00011220 22 87 |" | MOVE.L D7,(A1)
00011222 02 91 00 00 00 0f | | ANDI.L #0x0000000f,(A1)
00011228 e8 8f | | LSR.L #0x4,D7
0001122a 20 11 | | MOVE.L (A1),D0
0001122c 0c 80 00 00 00 09 | | CMPI.L #0x00000009,D0
00011232 63 04 |c | BLS 0x11238
00011234 5e 80 |^ | ADDQ.L #0x7,D0
00011236 22 80 |" | MOVE.L D0,(A1)
00011238 20 57 | W | MOVEA.L (A7),A0
0001123a 20 11 | | MOVE.L (A1),D0
0001123c 06 80 00 00 00 30 | 0 | ADDI.L #0x00000030,D0
00011242 11 80 68 01 | h | MOVE.B D0,(A0+D6.L+#0x1)
00011246 53 86 |S | SUBQ.L #0x1,D6
00011248 68 d2 |h | BVC 0x1121c
0001124a 58 4f |XO | ADDQ.L #0x4,A7
0001124c 2d 52 00 10 |-R | MOVE.L (A2),(A6+0x10)
00011250 4c df 0f e3 |L | MOVEM.L (A7)+,D0+D1+D5+D6+D7+A0+A1+A2+A3
00011254 4e 5e |N^ | UNLK A6
00011256 4e 75 |Nu | RTS
00011258 ; --------------------------------------------------------------------------------------
00011258 ; OMSI PASCAL Function
00011258 ; <LVAR 0x00c 1(rw)>
00011258 ; <LVAR 0x008 4(r)>
00011258 ; --------------------------------------------------------------------------------------
00011258 4e 56 ff fc |NV | LINK.W A6,#0xfffc
0001125c bf d5 | | CMPA.L (A5),A7
0001125e 62 06 |b | BHI 0x11266
00011260 44 fc 00 02 |D | MOVE.W #0x2,CCR
00011264 4e 76 |Nv | TRAPV
00011266 de fc 00 04 | | ADDA.W #0x4,A7
0001126a 42 2e 00 0c |B. | CLR.B (A6+0xc)
0001126e 4a ae 00 08 |J | TST.L (A6+0x8)
00011272 6d 04 |m | BLT 0x11278
00011274 52 2e 00 0c |R. | ADDQ.B #0x1,(A6+0xc)
00011278 4e 5e |N^ | UNLK A6
0001127a 4e 75 |Nu | RTS
0001127c ; --------------------------------------------------------------------------------------
0001127c ; String2Long(src : String; VAR status : Bool; VAR retval : Long)
0001127c ; Stack:
0001127c ; A6+0x10 src : String
0001127c ; A6+0xc VAR status : Bool
0001127c ; A6+0x8 VAR retval : Long
0001127c ; OMSI PASCAL Function
0001127c ; <LVAR 0x010 @ 4(r)>
0001127c ; <LVAR 0x00c 4(r)>
0001127c ; <LVAR 0x008 4(r)>
0001127c ; <LVAR -0x004 4(rw)>
0001127c ; <LVAR -0x008 4(rw)>
0001127c ; <LVAR -0x00e 2(rw)>
0001127c ; --------------------------------------------------------------------------------------
0001127c _String2Long(src : String; VAR status : Bool; VAR retval : Long):
0001127c 4e 56 ff a4 |NV | LINK.W A6,#0xffa4
00011280 bf d5 | | CMPA.L (A5),A7
00011282 62 06 |b | BHI 0x1128a
00011284 44 fc 00 02 |D | MOVE.W #0x2,CCR
00011288 4e 76 |Nv | TRAPV
0001128a de fc 00 48 | H | ADDA.W #0x48,A7
0001128e 48 e7 ff f0 |H | MOVEM.L A3+A2+A1+A0+D7+D6+D5+D4+D3+D2+D1+D0,-(A7)
00011292 45 ee 00 08 |E | LEA.L (A6+0x8),A2
00011296 47 ee ff f2 |G | LEA.L (A6-0xe),A3
0001129a 72 2d |r- | MOVEQ.L #0x2d,D1
0001129c 74 01 |t | MOVEQ.L #0x01,D2
0001129e 2d 7c 0c cc cc cc ff f8 |-| | MOVE.L #0xccccccc,(A6-0x8)
000112a6 2d 7c f3 33 33 34 ff fc |-| 334 | MOVE.L #0xf3333334,(A6-0x4)
000112ae 20 6e 00 10 | n | MOVEA.L (A6+0x10),A0
000112b2 b1 e8 ff fc | | CMPA.L (A0-0x4),A0
000112b6 67 02 |g | BEQ 0x112ba
000112b8 4e 4d |NM | TRAP #13
000112ba 2f 08 |/ | MOVE.L A0,-(A7)
000112bc 22 6e 00 0c |"n | MOVEA.L (A6+0xc),A1
000112c0 42 11 |B | CLR.B (A1)
000112c2 7e 01 |~ | MOVEQ.L #0x01,D7
000112c4 4a 50 |JP | TST.W (A0)
000112c6 66 06 |f | BNE 0x112ce
000112c8 58 4f |XO | ADDQ.L #0x4,A7
000112ca 60 00 00 cc |` | BRA 0x11398
000112ce 20 57 | W | MOVEA.L (A7),A0
000112d0 10 28 00 02 | ( | MOVE.B (A0+0x2),D0
000112d4 b0 01 | | CMP.B D1,D0
000112d6 66 06 |f | BNE 0x112de
000112d8 36 bc ff ff |6 | MOVE.W #0xffff,(A3)
000112dc 60 02 |` | BRA 0x112e0
000112de 36 82 |6 | MOVE.W D2,(A3)
000112e0 10 28 00 02 | ( | MOVE.B (A0+0x2),D0
000112e4 0c 00 00 2b | + | CMPI.B #0x2b,D0
000112e8 67 04 |g | BEQ 0x112ee
000112ea b0 01 | | CMP.B D1,D0
000112ec 66 10 |f | BNE 0x112fe
000112ee 52 87 |R | ADDQ.L #0x1,D7
000112f0 30 10 |0 | MOVE.W (A0),D0
000112f2 48 c0 |H | EXTW.L D0
000112f4 be 80 | | CMP.L D0,D7
000112f6 6f 06 |o | BLE 0x112fe
000112f8 58 4f |XO | ADDQ.L #0x4,A7
000112fa 60 00 00 9c |` | BRA 0x11398
000112fe 20 52 | R | MOVEA.L (A2),A0
00011300 42 90 |B | CLR.L (A0)
00011302 20 07 | | MOVE.L D7,D0
00011304 53 80 |S | SUBQ.L #0x1,D0
00011306 0c 80 00 00 00 7d | } | CMPI.L #0x0000007d,D0
0001130c 63 02 |c | BLS 0x11310
0001130e 4e 4f |NO | TRAP #15
00011310 20 57 | W | MOVEA.L (A7),A0
00011312 1c 30 08 02 | 0 | MOVE.B (A0+D0.L+#0x2),D6
00011316 0c 06 00 30 | 0 | CMPI.B #0x30,D6
0001131a 65 06 |e | BCS 0x11322
0001131c 0c 06 00 39 | 9 | CMPI.B #0x39,D6
00011320 63 04 |c | BLS 0x11326
00011322 58 4f |XO | ADDQ.L #0x4,A7
00011324 60 72 |`r | BRA 0x11398
00011326 42 80 |B | CLR.L D0
00011328 10 06 | | MOVE.B D6,D0
0001132a 04 40 00 30 | @ 0 | SUBI.W #0x0030,D0
0001132e c1 d3 | | MULS.W (A3),D0
00011330 2a 00 |* | MOVE.L D0,D5
00011332 20 52 | R | MOVEA.L (A2),A0
00011334 20 10 | | MOVE.L (A0),D0
00011336 b0 ae ff fc | | CMP.L (A6-0x4),D0
0001133a 6d 06 |m | BLT 0x11342
0001133c b0 ae ff f8 | | CMP.L (A6-0x8),D0
00011340 6f 04 |o | BLE 0x11346
00011342 58 4f |XO | ADDQ.L #0x4,A7
00011344 60 52 |`R | BRA 0x11398
00011346 20 52 | R | MOVEA.L (A2),A0
00011348 28 10 |( | MOVE.L (A0),D4
0001134a 76 0a |v | MOVEQ.L #0x0a,D3
0001134c 4e b9 00 01 07 ea |N | JSR _?muls_d3_d4
00011352 20 84 | | MOVE.L D4,(A0)
00011354 4a 84 |J | TST.L D4
00011356 66 04 |f | BNE 0x1135c
00011358 55 4f |UO | SUBQ.L #0x2,A7
0001135a 60 20 |` | BRA 0x1137c
0001135c 55 4f |UO | SUBQ.L #0x2,A7
0001135e 2f 04 |/ | MOVE.L D4,-(A7)
00011360 4e ba fe f6 |N | JSR 0x11258
00011364 54 4f |TO | ADDQ.L #0x2,A7
00011366 2f 04 |/ | MOVE.L D4,-(A7)
00011368 db 97 | | ADD.L D5,(A7)
0001136a 4e ba fe ec |N | JSR 0x11258
0001136e 58 4f |XO | ADDQ.L #0x4,A7
00011370 10 2f 00 02 | / | MOVE.B (A7+0x2),D0
00011374 b0 1f | | CMP.B (A7)+,D0
00011376 67 04 |g | BEQ 0x1137c
00011378 5c 4f |\O | ADDQ.L #0x6,A7
0001137a 60 1c |` | BRA 0x11398
0001137c 54 4f |TO | ADDQ.L #0x2,A7
0001137e 20 52 | R | MOVEA.L (A2),A0
00011380 db 90 | | ADD.L D5,(A0)
00011382 52 87 |R | ADDQ.L #0x1,D7
00011384 20 57 | W | MOVEA.L (A7),A0
00011386 30 10 |0 | MOVE.W (A0),D0
00011388 48 c0 |H | EXTW.L D0
0001138a be 80 | | CMP.L D0,D7
0001138c 6f 00 ff 74 |o t | BLE 0x11302
00011390 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
00011394 10 82 | | MOVE.B D2,(A0)
00011396 58 4f |XO | ADDQ.L #0x4,A7
00011398 48 6e 00 10 |Hn | PEA.L (A6+0x10)
0001139c 48 78 00 80 |Hx | PEA.L 0x80
000113a0 4e b9 00 01 08 fa |N | JSR _Free2(a : Pointer; b : Long)
000113a6 50 4f |PO | ADDQ.L #0x8,A7
000113a8 4c df 0f ff |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D5+D6+D7+A0+A1+A2+A3
000113ac 4e 5e |N^ | UNLK A6
000113ae 4e 75 |Nu | RTS
000113b0 ; --------------------------------------------------------------------------------------
000113b0 ; ToUpper(a : String) : String
000113b0 ; Stack:
000113b0 ; A6+0xc VAR RETURN : String
000113b0 ; A6+0x8 a : String
000113b0 ; OMSI PASCAL Function
000113b0 ; <LVAR 0x00c 4(w)>
000113b0 ; <LVAR 0x008 4(r)>
000113b0 ; --------------------------------------------------------------------------------------
000113b0 _ToUpper(a : String) : String:
000113b0 4e 56 ff d0 |NV | LINK.W A6,#0xffd0
000113b4 bf d5 | | CMPA.L (A5),A7
000113b6 62 06 |b | BHI 0x113be
000113b8 44 fc 00 02 |D | MOVE.W #0x2,CCR
000113bc 4e 76 |Nv | TRAPV
000113be de fc 00 28 | ( | ADDA.W #0x28,A7
000113c2 48 e7 c3 80 |H | MOVEM.L A0+D7+D6+D1+D0,-(A7)
000113c6 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
000113ca b1 e8 ff fc | | CMPA.L (A0-0x4),A0
000113ce 67 02 |g | BEQ 0x113d2
000113d0 4e 4d |NM | TRAP #13
000113d2 2f 08 |/ | MOVE.L A0,-(A7)
000113d4 30 10 |0 | MOVE.W (A0),D0
000113d6 48 c0 |H | EXTW.L D0
000113d8 2f 00 |/ | MOVE.L D0,-(A7)
000113da 7e 01 |~ | MOVEQ.L #0x01,D7
000113dc be 97 | | CMP.L (A7),D7
000113de 6e 36 |n6 | BGT 0x11416
000113e0 20 07 | | MOVE.L D7,D0
000113e2 53 80 |S | SUBQ.L #0x1,D0
000113e4 0c 80 00 00 00 7d | } | CMPI.L #0x0000007d,D0
000113ea 63 02 |c | BLS 0x113ee
000113ec 4e 4f |NO | TRAP #15
000113ee 20 6f 00 04 | o | MOVEA.L (A7+0x4),A0
000113f2 1c 30 08 02 | 0 | MOVE.B (A0+D0.L+#0x2),D6
000113f6 0c 06 00 61 | a | CMPI.B #0x61,D6
000113fa 65 16 |e | BCS 0x11412
000113fc 0c 06 00 7a | z | CMPI.B #0x7a,D6
00011400 62 10 |b | BHI 0x11412
00011402 42 81 |B | CLR.L D1
00011404 12 06 | | MOVE.B D6,D1
00011406 04 41 00 20 | A | SUBI.W #0x0020,D1
0001140a 43 bc 00 ff |C | CHK.W #0xff,D1
0001140e 11 81 08 02 | | MOVE.B D1,(A0+D0.L+#0x2)
00011412 52 87 |R | ADDQ.L #0x1,D7
00011414 68 c6 |h | BVC 0x113dc
00011416 50 4f |PO | ADDQ.L #0x8,A7
00011418 2d 6e 00 08 00 0c |-n | MOVE.L (A6+0x8),(A6+0xc)
0001141e 4c df 01 c3 |L | MOVEM.L (A7)+,D0+D1+D6+D7+A0
00011422 4e 5e |N^ | UNLK A6
00011424 4e 75 |Nu | RTS
00011426 ; --------------------------------------------------------------------------------------
00011426 ; RightPad(a : String; b : Long) : String
00011426 ; Stack:
00011426 ; A6+0x10 VAR RETURN : String
00011426 ; A6+0xc a : String
00011426 ; A6+0x8 b : Long
00011426 ; OMSI PASCAL Function
00011426 ; <LVAR 0x010 4(w)>
00011426 ; <LVAR 0x00c 4(r)>
00011426 ; <LVAR 0x008 4(r)>
00011426 ; <LVAR -0x008 @ 4(r)>
00011426 ; --------------------------------------------------------------------------------------
00011426 _RightPad(a : String; b : Long) : String:
00011426 4e 56 ff d2 |NV | LINK.W A6,#0xffd2
0001142a bf d5 | | CMPA.L (A5),A7
0001142c 62 06 |b | BHI 0x11434
0001142e 44 fc 00 02 |D | MOVE.W #0x2,CCR
00011432 4e 76 |Nv | TRAPV
00011434 de fc 00 26 | & | ADDA.W #0x26,A7
00011438 48 e7 81 c0 |H | MOVEM.L A1+A0+D7+D0,-(A7)
0001143c 43 ee ff f8 |C | LEA.L (A6-0x8),A1
00011440 48 51 |HQ | PEA.L (A1)
00011442 4e ba f8 b6 |N | JSR _NewString(VAR a : String)
00011446 58 4f |XO | ADDQ.L #0x4,A7
00011448 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
0001144c b1 e8 ff fc | | CMPA.L (A0-0x4),A0
00011450 67 02 |g | BEQ 0x11454
00011452 4e 4d |NM | TRAP #13
00011454 30 10 |0 | MOVE.W (A0),D0
00011456 48 c0 |H | EXTW.L D0
00011458 52 80 |R | ADDQ.L #0x1,D0
0001145a 2f 2e 00 08 |/. | MOVE.L (A6+0x8),-(A7)
0001145e 2e 00 |. | MOVE.L D0,D7
00011460 be 97 | | CMP.L (A7),D7
00011462 6e 10 |n | BGT 0x11474
00011464 2f 11 |/ | MOVE.L (A1),-(A7)
00011466 1f 3c 00 20 | < | MOVE.B #0x20,-(A7)
0001146a 4e ba f8 fa |N | JSR _AppendChar(MOD b : String; a : char)
0001146e 5c 4f |\O | ADDQ.L #0x6,A7
00011470 52 87 |R | ADDQ.L #0x1,D7
00011472 68 ec |h | BVC 0x11460
00011474 2f 11 |/ | MOVE.L (A1),-(A7)
00011476 2f 2e 00 0c |/. | MOVE.L (A6+0xc),-(A7)
0001147a 4e ba fa b0 |N | JSR _StringCat2(a, b : String) : String
0001147e 50 4f |PO | ADDQ.L #0x8,A7
00011480 2d 5f 00 10 |-_ | MOVE.L (A7)+,(A6+0x10)
00011484 4c df 03 81 |L | MOVEM.L (A7)+,D0+D7+A0+A1
00011488 4e 5e |N^ | UNLK A6
0001148a 4e 75 |Nu | RTS
0001148c ; --------------------------------------------------------------------------------------
0001148c ; LeftPad(a : String; b : Long) : String
0001148c ; Stack:
0001148c ; A6+0x10 VAR RETURN : String
0001148c ; A6+0xc a : String
0001148c ; A6+0x8 b : Long
0001148c ; OMSI PASCAL Function
0001148c ; <LVAR 0x010 4(w)>
0001148c ; <LVAR 0x00c 4(r)>
0001148c ; <LVAR 0x008 4(rw)>
0001148c ; --------------------------------------------------------------------------------------
0001148c _LeftPad(a : String; b : Long) : String:
0001148c 4e 56 ff ce |NV | LINK.W A6,#0xffce
00011490 bf d5 | | CMPA.L (A5),A7
00011492 62 06 |b | BHI 0x1149a
00011494 44 fc 00 02 |D | MOVE.W #0x2,CCR
00011498 4e 76 |Nv | TRAPV
0001149a de fc 00 2e | . | ADDA.W #0x2e,A7
0001149e 48 e7 c1 e0 |H | MOVEM.L A2+A1+A0+D7+D1+D0,-(A7)
000114a2 43 ee 00 08 |C | LEA.L (A6+0x8),A1
000114a6 45 ee 00 0c |E | LEA.L (A6+0xc),A2
000114aa 72 7e |r~ | MOVEQ.L #0x7e,D1
000114ac 20 11 | | MOVE.L (A1),D0
000114ae b0 81 | | CMP.L D1,D0
000114b0 6f 02 |o | BLE 0x114b4
000114b2 22 81 |" | MOVE.L D1,(A1)
000114b4 20 52 | R | MOVEA.L (A2),A0
000114b6 b1 e8 ff fc | | CMPA.L (A0-0x4),A0
000114ba 67 02 |g | BEQ 0x114be
000114bc 4e 4d |NM | TRAP #13
000114be 30 10 |0 | MOVE.W (A0),D0
000114c0 48 c0 |H | EXTW.L D0
000114c2 52 80 |R | ADDQ.L #0x1,D0
000114c4 2f 11 |/ | MOVE.L (A1),-(A7)
000114c6 2e 00 |. | MOVE.L D0,D7
000114c8 be 97 | | CMP.L (A7),D7
000114ca 6e 10 |n | BGT 0x114dc
000114cc 2f 12 |/ | MOVE.L (A2),-(A7)
000114ce 1f 3c 00 20 | < | MOVE.B #0x20,-(A7)
000114d2 4e ba f8 92 |N | JSR _AppendChar(MOD b : String; a : char)
000114d6 5c 4f |\O | ADDQ.L #0x6,A7
000114d8 52 87 |R | ADDQ.L #0x1,D7
000114da 68 ec |h | BVC 0x114c8
000114dc 58 4f |XO | ADDQ.L #0x4,A7
000114de 2d 52 00 10 |-R | MOVE.L (A2),(A6+0x10)
000114e2 4c df 07 83 |L | MOVEM.L (A7)+,D0+D1+D7+A0+A1+A2
000114e6 4e 5e |N^ | UNLK A6
000114e8 4e 75 |Nu | RTS
000114ea ; --------------------------------------------------------------------------------------
000114ea ; FirstField(MOD input : String; MOD output : String; VAR c : Bool
000114ea ; Stack:
000114ea ; A6+0x10 input : String
000114ea ; A6+0xc output : String
000114ea ; A6+0x8 VAR c : Bool
000114ea ; OMSI PASCAL Function
000114ea ; <LVAR 0x010 4(r)>
000114ea ; <LVAR 0x00c 4(r)>
000114ea ; <LVAR 0x008 4(r)>
000114ea ; --------------------------------------------------------------------------------------
000114ea _FirstField(MOD input : String; MOD output : String; VAR c : Bool:
000114ea 4e 56 ff bc |NV | LINK.W A6,#0xffbc
000114ee bf d5 | | CMPA.L (A5),A7
000114f0 62 06 |b | BHI 0x114f8
000114f2 44 fc 00 02 |D | MOVE.W #0x2,CCR
000114f6 4e 76 |Nv | TRAPV
000114f8 de fc 00 38 | 8 | ADDA.W #0x38,A7
000114fc 48 e7 c7 e0 |H | MOVEM.L A2+A1+A0+D7+D6+D5+D1+D0,-(A7)
00011500 45 ee 00 0c |E | LEA.L (A6+0xc),A2
00011504 7c 00 || | MOVEQ.L #0x00,D6
00011506 20 6e 00 10 | n | MOVEA.L (A6+0x10),A0
0001150a b1 e8 ff fc | | CMPA.L (A0-0x4),A0
0001150e 67 02 |g | BEQ 0x11512
00011510 4e 4d |NM | TRAP #13
00011512 2f 08 |/ | MOVE.L A0,-(A7)
00011514 30 10 |0 | MOVE.W (A0),D0
00011516 48 c0 |H | EXTW.L D0
00011518 2f 00 |/ | MOVE.L D0,-(A7)
0001151a 7e 01 |~ | MOVEQ.L #0x01,D7
0001151c be 97 | | CMP.L (A7),D7
0001151e 6e 24 |n$ | BGT 0x11544
00011520 20 6f 00 04 | o | MOVEA.L (A7+0x4),A0
00011524 42 80 |B | CLR.L D0
00011526 10 30 78 01 | 0x | MOVE.B (A0+D7.L+#0x1),D0
0001152a 41 fa f7 ae |A | LEA.L 0x10cda,A0
0001152e 32 00 |2 | MOVE.W D0,D1
00011530 e6 49 | I | LSR.W #0x3,D1
00011532 01 30 10 00 | 0 | BTST.B D0,(A0+D1.W)
00011536 67 04 |g | BEQ 0x1153c
00011538 52 86 |R | ADDQ.L #0x1,D6
0001153a 60 04 |` | BRA 0x11540
0001153c 58 4f |XO | ADDQ.L #0x4,A7
0001153e 60 06 |` | BRA 0x11546
00011540 52 87 |R | ADDQ.L #0x1,D7
00011542 68 d8 |h | BVC 0x1151c
00011544 58 4f |XO | ADDQ.L #0x4,A7
00011546 20 52 | R | MOVEA.L (A2),A0
00011548 b1 e8 ff fc | | CMPA.L (A0-0x4),A0
0001154c 67 02 |g | BEQ 0x11550
0001154e 4e 4d |NM | TRAP #13
00011550 42 50 |BP | CLR.W (A0)
00011552 20 06 | | MOVE.L D6,D0
00011554 52 80 |R | ADDQ.L #0x1,D0
00011556 20 57 | W | MOVEA.L (A7),A0
00011558 32 10 |2 | MOVE.W (A0),D1
0001155a 48 c1 |H | EXTW.L D1
0001155c 2f 01 |/ | MOVE.L D1,-(A7)
0001155e 2e 00 |. | MOVE.L D0,D7
00011560 be 97 | | CMP.L (A7),D7
00011562 6e 2e |n. | BGT 0x11592
00011564 20 6f 00 04 | o | MOVEA.L (A7+0x4),A0
00011568 10 30 78 01 | 0x | MOVE.B (A0+D7.L+#0x1),D0
0001156c 0c 00 00 20 | | CMPI.B #0x20,D0
00011570 67 0c |g | BEQ 0x1157e
00011572 0c 00 00 2c | , | CMPI.B #0x2c,D0
00011576 67 06 |g | BEQ 0x1157e
00011578 0c 00 00 09 | | CMPI.B #0x09,D0
0001157c 66 06 |f | BNE 0x11584
0001157e 58 4f |XO | ADDQ.L #0x4,A7
00011580 60 12 |` | BRA 0x11594
00011582 60 0a |` | .XXX[0x2]
00011584 2f 12 |/ | MOVE.L (A2),-(A7)
00011586 1f 00 | | MOVE.B D0,-(A7)
00011588 4e ba f7 dc |N | JSR _AppendChar(MOD b : String; a : char)
0001158c 5c 4f |\O | ADDQ.L #0x6,A7
0001158e 52 87 |R | ADDQ.L #0x1,D7
00011590 68 ce |h | BVC 0x11560
00011592 58 4f |XO | ADDQ.L #0x4,A7
00011594 20 52 | R | MOVEA.L (A2),A0
00011596 b1 e8 ff fc | | CMPA.L (A0-0x4),A0
0001159a 67 02 |g | BEQ 0x1159e
0001159c 4e 4d |NM | TRAP #13
0001159e 30 10 |0 | MOVE.W (A0),D0
000115a0 48 c0 |H | EXTW.L D0
000115a2 d0 86 | | ADD.L D6,D0
000115a4 2a 00 |* | MOVE.L D0,D5
000115a6 20 57 | W | MOVEA.L (A7),A0
000115a8 30 10 |0 | MOVE.W (A0),D0
000115aa 48 c0 |H | EXTW.L D0
000115ac 90 85 | | SUB.L D5,D0
000115ae 2f 00 |/ | MOVE.L D0,-(A7)
000115b0 7e 01 |~ | MOVEQ.L #0x01,D7
000115b2 be 97 | | CMP.L (A7),D7
000115b4 6e 12 |n | BGT 0x115c8
000115b6 20 6f 00 04 | o | MOVEA.L (A7+0x4),A0
000115ba 20 07 | | MOVE.L D7,D0
000115bc d0 85 | | ADD.L D5,D0
000115be 11 b0 08 01 78 01 | x | MOVE.B (A0+D0.L+#0x1),(A0+D7.L+#0x1)
000115c4 52 87 |R | ADDQ.L #0x1,D7
000115c6 68 ea |h | BVC 0x115b2
000115c8 58 4f |XO | ADDQ.L #0x4,A7
000115ca 20 57 | W | MOVEA.L (A7),A0
000115cc 30 10 |0 | MOVE.W (A0),D0
000115ce 48 c0 |H | EXTW.L D0
000115d0 90 85 | | SUB.L D5,D0
000115d2 30 80 |0 | MOVE.W D0,(A0)
000115d4 58 4f |XO | ADDQ.L #0x4,A7
000115d6 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
000115da 42 10 |B | CLR.B (A0)
000115dc 22 52 |"R | MOVEA.L (A2),A1
000115de b3 e9 ff fc | | CMPA.L (A1-0x4),A1
000115e2 67 02 |g | BEQ 0x115e6
000115e4 4e 4d |NM | TRAP #13
000115e6 4a 51 |JQ | TST.W (A1)
000115e8 67 02 |g | BEQ 0x115ec
000115ea 52 10 |R | ADDQ.B #0x1,(A0)
000115ec 4c df 07 e3 |L | MOVEM.L (A7)+,D0+D1+D5+D6+D7+A0+A1+A2
000115f0 4e 5e |N^ | UNLK A6
000115f2 4e 75 |Nu | RTS
000115f4 ; --------------------------------------------------------------------------------------
000115f4 ; FSCALL_10300
000115f4 ; OMSI PASCAL Function
000115f4 ; <LVAR 0x010 4(rw)>
000115f4 ; <LVAR 0x00c 4(r)>
000115f4 ; <LVAR 0x008 4(r)>
000115f4 ; --------------------------------------------------------------------------------------
000115f4 _FSCALL_10300:
000115f4 4e 56 ff c0 |NV | LINK.W A6,#0xffc0
000115f8 bf d5 | | CMPA.L (A5),A7
000115fa 62 06 |b | BHI 0x11602
000115fc 44 fc 00 02 |D | MOVE.W #0x2,CCR
00011600 4e 76 |Nv | TRAPV
00011602 de fc 00 30 | 0 | ADDA.W #0x30,A7
00011606 48 e7 e7 c0 |H | MOVEM.L A1+A0+D7+D6+D5+D2+D1+D0,-(A7)
0001160a 74 7d |t} | MOVEQ.L #0x7d,D2
0001160c 42 ae 00 10 |B | CLR.L (A6+0x10)
00011610 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00011614 b1 e8 ff fc | | CMPA.L (A0-0x4),A0
00011618 67 02 |g | BEQ 0x1161c
0001161a 4e 4d |NM | TRAP #13
0001161c 2f 08 |/ | MOVE.L A0,-(A7)
0001161e 22 6e 00 0c |"n | MOVEA.L (A6+0xc),A1
00011622 b3 e9 ff fc | | CMPA.L (A1-0x4),A1
00011626 67 02 |g | BEQ 0x1162a
00011628 4e 4d |NM | TRAP #13
0001162a 30 11 |0 | MOVE.W (A1),D0
0001162c 48 c0 |H | EXTW.L D0
0001162e 32 10 |2 | MOVE.W (A0),D1
00011630 48 c1 |H | EXTW.L D1
00011632 44 81 |D | NEG.L D1
00011634 d2 80 | | ADD.L D0,D1
00011636 52 81 |R | ADDQ.L #0x1,D1
00011638 2f 01 |/ | MOVE.L D1,-(A7)
0001163a 7a 01 |z | MOVEQ.L #0x01,D5
0001163c ba 97 | | CMP.L (A7),D5
0001163e 6e 5e |n^ | BGT 0x1169e
00011640 7e 00 |~ | MOVEQ.L #0x00,D7
00011642 52 87 |R | ADDQ.L #0x1,D7
00011644 7c 00 || | MOVEQ.L #0x00,D6
00011646 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
0001164a b1 e8 ff fc | | CMPA.L (A0-0x4),A0
0001164e 67 02 |g | BEQ 0x11652
00011650 4e 4d |NM | TRAP #13
00011652 20 05 | | MOVE.L D5,D0
00011654 d0 87 | | ADD.L D7,D0
00011656 53 80 |S | SUBQ.L #0x1,D0
00011658 53 80 |S | SUBQ.L #0x1,D0
0001165a b0 82 | | CMP.L D2,D0
0001165c 63 02 |c | BLS 0x11660
0001165e 4e 4f |NO | TRAP #15
00011660 22 07 |" | MOVE.L D7,D1
00011662 53 81 |S | SUBQ.L #0x1,D1
00011664 b2 82 | | CMP.L D2,D1
00011666 63 02 |c | BLS 0x1166a
00011668 4e 4f |NO | TRAP #15
0001166a 22 6f 00 04 |"o | MOVEA.L (A7+0x4),A1
0001166e 10 30 08 02 | 0 | MOVE.B (A0+D0.L+#0x2),D0
00011672 b0 31 18 02 | 1 | CMP.B (A1+D1.L+#0x2),D0
00011676 66 02 |f | BNE 0x1167a
00011678 52 06 |R | ADDQ.B #0x1,D6
0001167a 4a 06 |J | TST.B D6
0001167c 67 08 |g | BEQ 0x11686
0001167e 30 11 |0 | MOVE.W (A1),D0
00011680 48 c0 |H | EXTW.L D0
00011682 be 80 | | CMP.L D0,D7
00011684 66 bc |f | BNE 0x11642
00011686 30 11 |0 | MOVE.W (A1),D0
00011688 48 c0 |H | EXTW.L D0
0001168a be 80 | | CMP.L D0,D7
0001168c 66 0c |f | BNE 0x1169a
0001168e 4a 06 |J | TST.B D6
00011690 67 08 |g | BEQ 0x1169a
00011692 2d 45 00 10 |-E | MOVE.L D5,(A6+0x10)
00011696 50 4f |PO | ADDQ.L #0x8,A7
00011698 60 06 |` | BRA 0x116a0
0001169a 52 85 |R | ADDQ.L #0x1,D5
0001169c 68 9e |h | BVC 0x1163c
0001169e 50 4f |PO | ADDQ.L #0x8,A7
000116a0 4c df 03 e7 |L | MOVEM.L (A7)+,D0+D1+D2+D5+D6+D7+A0+A1
000116a4 4e 5e |N^ | UNLK A6
000116a6 4e 75 |Nu | RTS
000116a8 3f 3f 3a 3f 3f 3a 3f 3f |??:??:??| .TXT '??:??:?? ??-???-??'
000116ba rtc_min:
000116ba 00 01 01 01 00 00 00 00 | | .CONST 0x0,0x1,0x1,0x1,0x0,0x0,0x0,0x0
000116c2 rtc_max:
000116c2 7f 0c 1f 07 17 3b 3b 63 | ;;c| .CONST 0x7f,0xc,0x1f,0x7,0x17,0x3b,0x3b,0x63
000116ca months:
000116ca 4a 41 4e |JAN | .TXT 'JAN'
000116cd 46 45 42 |FEB | .TXT 'FEB'
000116d0 4d 41 52 |MAR | .TXT 'MAR'
000116d3 41 50 52 |APR | .TXT 'APR'
000116d6 4d 41 59 |MAY | .TXT 'MAY'
000116d9 4a 55 4e |JUN | .TXT 'JUN'
000116dc 4a 55 4c |JUL | .TXT 'JUL'
000116df 41 55 47 |AUG | .TXT 'AUG'
000116e2 53 45 50 |SEP | .TXT 'SEP'
000116e5 4f 43 54 |OCT | .TXT 'OCT'
000116e8 4e 4f 56 |NOV | .TXT 'NOV'
000116eb 44 45 43 |DEC | .TXT 'DEC'
000116ee ; --------------------------------------------------------------------------------------
000116ee ; A6-0x05 RTC[7], bcd, [0..99]
000116ee ; A6-0x06 RTC[6], bcd, [0..59]
000116ee ; A6-0x07 RTC[5], bcd, [0..59]
000116ee ; A6-0x08 RTC[4], bcd, [0..23]
000116ee ; A6-0x09 RTC[3], bcd, ([1..7])
000116ee ; A6-0x0a RTC[2], bcd, [1..31]
000116ee ; A6-0x0b RTC[1], bcd, [1..12]
000116ee ; A6-0x0c RTC[0], binary, [0..7f]
000116ee ; GetRtc() : TimeStamp
000116ee ; Stack:
000116ee ; A6+0x8 VAR RETURN : TimeStamp
000116ee ; OMSI PASCAL Function
000116ee ; <LVAR 0x008 4(r)>
000116ee ; <LVAR -0x006 1(r)>
000116ee ; <LVAR -0x007 1(r)>
000116ee ; <LVAR -0x008 1(r)>
000116ee ; <LVAR -0x00a 1(r)>
000116ee ; <LVAR -0x00b 1(r)>
000116ee ; <LVAR -0x00c @ 1(r)>
000116ee ; --------------------------------------------------------------------------------------
000116ee _GetRtc() : TimeStamp:
000116ee 4e 56 ff cc |NV | LINK.W A6,#0xffcc
000116f2 bf d5 | | CMPA.L (A5),A7
000116f4 62 06 |b | BHI 0x116fc
000116f6 44 fc 00 02 |D | MOVE.W #0x2,CCR
000116fa 4e 76 |Nv | TRAPV
000116fc de fc 00 28 | ( | ADDA.W #0x28,A7
00011700 48 e7 e3 c0 |H | MOVEM.L A1+A0+D7+D6+D2+D1+D0,-(A7)
00011704 43 ee 00 08 |C | LEA.L (A6+0x8),A1
00011708 20 51 | Q | MOVEA.L (A1),A0
0001170a 42 90 |B | CLR.L (A0)
0001170c 48 6e ff f4 |Hn | PEA.L (A6-0xc)
00011710 4e b9 00 01 02 26 |N & | JSR KC13_ReadRtc
00011716 58 4f |XO | ADDQ.L #0x4,A7
00011718 7e 01 |~ | MOVEQ.L #0x01,D7
0001171a 7c 00 || | MOVEQ.L #0x00,D6
0001171c ; --------------------------------------------------------------------------------------
0001171c ; RTC[0] is binary
0001171c ; --------------------------------------------------------------------------------------
0001171c 4a 06 |J | TST.B D6
0001171e 67 1c |g | BEQ 0x1173c
00011720 ; --------------------------------------------------------------------------------------
00011720 ; Convert BCD to binary
00011720 ; --------------------------------------------------------------------------------------
00011720 10 06 | | MOVE.B D6,D0
00011722 48 80 |H | EXTB.W D0
00011724 42 81 |B | CLR.L D1
00011726 12 36 00 f4 | 6 | MOVE.B (A6+D0.W-#0xc),D1
0001172a 34 01 |4 | MOVE.W D1,D2
0001172c e8 42 | B | ASR.W #0x4,D2
0001172e c5 fc 00 0a | | MULS.W #0xa,D2
00011732 02 41 00 0f | A | ANDI.W #0x000f,D1
00011736 d2 42 | B | ADD.W D2,D1
00011738 1d 81 00 f4 | | MOVE.B D1,(A6+D0.W-#0xc)
0001173c ; --------------------------------------------------------------------------------------
0001173c ; Skip limit check on RTC[3]
0001173c ; --------------------------------------------------------------------------------------
0001173c 0c 06 00 03 | | CMPI.B #0x03,D6
00011740 67 1e |g | BEQ 0x11760
00011742 ; --------------------------------------------------------------------------------------
00011742 ; Limit check
00011742 ; --------------------------------------------------------------------------------------
00011742 10 06 | | MOVE.B D6,D0
00011744 48 80 |H | EXTB.W D0
00011746 41 fa ff 7a |A z | LEA.L rtc_max,A0
0001174a 12 36 00 f4 | 6 | MOVE.B (A6+D0.W-#0xc),D1
0001174e b2 30 00 00 | 0 | CMP.B (A0+D0.W),D1
00011752 62 0a |b | BHI 0x1175e
00011754 41 fa ff 64 |A d | LEA.L rtc_min,A0
00011758 b2 30 00 00 | 0 | CMP.B (A0+D0.W),D1
0001175c 64 02 |d | BCC 0x11760
0001175e 7e 00 |~ | MOVEQ.L #0x00,D7
00011760 52 06 |R | ADDQ.B #0x1,D6
00011762 0c 06 00 07 | | CMPI.B #0x07,D6
00011766 6f b4 |o | BLE 0x1171c
00011768 ; --------------------------------------------------------------------------------------
00011768 ; Did limit check fail?
00011768 ; --------------------------------------------------------------------------------------
00011768 4a 07 |J | TST.B D7
0001176a 66 06 |f | BNE 0x11772
0001176c 20 51 | Q | MOVEA.L (A1),A0
0001176e 42 90 |B | CLR.L (A0)
00011770 60 5a |`Z | BRA 0x117cc
00011772 ; --------------------------------------------------------------------------------------
00011772 ; Convert rtc -> Timestamp
00011772 ; --------------------------------------------------------------------------------------
00011772 20 51 | Q | MOVEA.L (A1),A0
00011774 42 80 |B | CLR.L D0
00011776 10 2e ff f8 | . | MOVE.B (A6-0x8),D0 ; rtc[4] = hour
0001177a c0 fc 07 08 | | MULU.W #0x708,D0
0001177e 42 81 |B | CLR.L D1
00011780 12 2e ff f9 | . | MOVE.B (A6-0x7),D1 ; rtc[5] = minute
00011784 c2 fc 00 1e | | MULU.W #0x1e,D1
00011788 42 82 |B | CLR.L D2
0001178a 34 01 |4 | MOVE.W D1,D2
0001178c d4 80 | | ADD.L D0,D2
0001178e 42 80 |B | CLR.L D0
00011790 10 2e ff fa | . | MOVE.B (A6-0x6),D0 ; rtc[5] = second
00011794 e2 40 | @ | ASR.W #0x1,D0
00011796 48 c0 |H | EXTW.L D0
00011798 d0 82 | | ADD.L D2,D0
0001179a 30 80 |0 | MOVE.W D0,(A0)
0001179c 42 80 |B | CLR.L D0
0001179e 10 2e ff f5 | . | MOVE.B (A6-0xb),D0 ; rtc[1] = month
000117a2 02 68 fe 1f 00 02 | h | ANDI.W #0xfe1f,(A0+0x2)
000117a8 eb 48 | H | LSL.W #0x5,D0
000117aa 81 68 00 02 | h | OR.W D0,(A0+0x2)
000117ae 10 2e ff f6 | . | MOVE.B (A6-0xa),D0 ; rtc[2] = day
000117b2 02 28 00 e0 00 03 | ( | ANDI.B #0xe0,(A0+0x3)
000117b8 81 28 00 03 | ( | OR.B D0,(A0+0x3)
000117bc 10 2e ff f4 | . | MOVE.B (A6-0xc),D0 ; rtc[0] = year
000117c0 02 28 00 01 00 02 | ( | ANDI.B #0x01,(A0+0x2)
000117c6 e3 08 | | LSL.B #0x1,D0
000117c8 81 28 00 02 | ( | OR.B D0,(A0+0x2)
000117cc 4c df 03 c7 |L | MOVEM.L (A7)+,D0+D1+D2+D6+D7+A0+A1
000117d0 4e 5e |N^ | UNLK A6
000117d2 4e 75 |Nu | RTS
000117d4 ; --------------------------------------------------------------------------------------
000117d4 ; SetRtc(a: TimeStamp)
000117d4 ; Stack:
000117d4 ; A6+0x8 a : TimeStamp
000117d4 ; OMSI PASCAL Function
000117d4 ; <LVAR 0x00b 1(r)>
000117d4 ; <LVAR 0x00a 1(r) 2(r)>
000117d4 ; <LVAR 0x008 2(r)>
000117d4 ; <LVAR -0x005 1(r)>
000117d4 ; <LVAR -0x006 1(w)>
000117d4 ; <LVAR -0x007 1(w)>
000117d4 ; <LVAR -0x008 1(w)>
000117d4 ; <LVAR -0x009 1(w)>
000117d4 ; <LVAR -0x00a 1(w)>
000117d4 ; <LVAR -0x00b 1(w)>
000117d4 ; <LVAR -0x00c @ 1(w)>
000117d4 ; --------------------------------------------------------------------------------------
000117d4 _SetRtc(a: TimeStamp):
000117d4 4e 56 ff c8 |NV | LINK.W A6,#0xffc8
000117d8 bf d5 | | CMPA.L (A5),A7
000117da 62 06 |b | BHI 0x117e2
000117dc 44 fc 00 02 |D | MOVE.W #0x2,CCR
000117e0 4e 76 |Nv | TRAPV
000117e2 de fc 00 2c | , | ADDA.W #0x2c,A7
000117e6 48 e7 f3 80 |H | MOVEM.L A0+D7+D6+D3+D2+D1+D0,-(A7)
000117ea 76 1e |v | MOVEQ.L #0x1e,D3
000117ec 10 2e 00 0a | . | MOVE.B (A6+0xa),D0
000117f0 e2 08 | | LSR.B #0x1,D0
000117f2 1d 40 ff f4 | @ | MOVE.B D0,(A6-0xc)
000117f6 30 2e 00 0a |0. | MOVE.W (A6+0xa),D0
000117fa ef 48 | H | LSL.W #0x7,D0
000117fc e0 48 | H | LSR.W #0x8,D0
000117fe e8 48 | H | LSR.W #0x4,D0
00011800 1d 40 ff f5 | @ | MOVE.B D0,(A6-0xb)
00011804 10 2e 00 0b | . | MOVE.B (A6+0xb),D0
00011808 e7 08 | | LSL.B #0x3,D0
0001180a e6 08 | | LSR.B #0x3,D0
0001180c 1d 40 ff f6 | @ | MOVE.B D0,(A6-0xa)
00011810 1d 7c 00 01 ff f7 | | | MOVE.B #0x01,(A6-0x9)
00011816 42 80 |B | CLR.L D0
00011818 30 2e 00 08 |0. | MOVE.W (A6+0x8),D0
0001181c 80 fc 07 08 | | DIVU.W #0x708,D0
00011820 1d 40 ff f8 | @ | MOVE.B D0,(A6-0x8)
00011824 48 40 |H@ | SWAP.W D0
00011826 42 81 |B | CLR.L D1
00011828 32 00 |2 | MOVE.W D0,D1
0001182a 82 c3 | | DIVU.W D3,D1
0001182c 1d 41 ff f9 | A | MOVE.B D1,(A6-0x7)
00011830 42 80 |B | CLR.L D0
00011832 30 2e 00 08 |0. | MOVE.W (A6+0x8),D0
00011836 80 c3 | | DIVU.W D3,D0
00011838 48 40 |H@ | SWAP.W D0
0001183a e3 40 | @ | ASL.W #0x1,D0
0001183c 1d 40 ff fa | @ | MOVE.B D0,(A6-0x6)
00011840 42 2e ff fb |B. | CLR.B (A6-0x5)
00011844 7e 01 |~ | MOVEQ.L #0x01,D7
00011846 7c 01 || | MOVEQ.L #0x01,D6
00011848 10 06 | | MOVE.B D6,D0
0001184a 48 80 |H | EXTB.W D0
0001184c 12 06 | | MOVE.B D6,D1
0001184e 48 81 |H | EXTB.W D1
00011850 41 fa fe 70 |A p | LEA.L rtc_max,A0
00011854 14 36 00 f4 | 6 | MOVE.B (A6+D0.W-#0xc),D2
00011858 b4 30 10 00 | 0 | CMP.B (A0+D1.W),D2
0001185c 62 0e |b | BHI 0x1186c
0001185e 12 06 | | MOVE.B D6,D1
00011860 48 81 |H | EXTB.W D1
00011862 41 fa fe 56 |A V | LEA.L rtc_min,A0
00011866 b4 30 10 00 | 0 | CMP.B (A0+D1.W),D2
0001186a 64 02 |d | BCC 0x1186e
0001186c 7e 00 |~ | MOVEQ.L #0x00,D7
0001186e 42 81 |B | CLR.L D1
00011870 12 02 | | MOVE.B D2,D1
00011872 82 fc 00 0a | | DIVU.W #0xa,D1
00011876 34 01 |4 | MOVE.W D1,D2
00011878 e9 42 | B | ASL.W #0x4,D2
0001187a 48 41 |HA | SWAP.W D1
0001187c d2 42 | B | ADD.W D2,D1
0001187e 1d 81 00 f4 | | MOVE.B D1,(A6+D0.W-#0xc)
00011882 52 06 |R | ADDQ.B #0x1,D6
00011884 0c 06 00 07 | | CMPI.B #0x07,D6
00011888 6f be |o | BLE 0x11848
0001188a 4a 07 |J | TST.B D7
0001188c 67 0c |g | BEQ 0x1189a
0001188e 48 6e ff f4 |Hn | PEA.L (A6-0xc)
00011892 4e b9 00 01 02 28 |N ( | JSR KC14_WriteRtc
00011898 58 4f |XO | ADDQ.L #0x4,A7
0001189a 4c df 01 cf |L | MOVEM.L (A7)+,D0+D1+D2+D3+D6+D7+A0
0001189e 4e 5e |N^ | UNLK A6
000118a0 4e 75 |Nu | RTS
000118a2 ; --------------------------------------------------------------------------------------
000118a2 ; OMSI PASCAL Function
000118a2 ; <LVAR 0x00a 4(r)>
000118a2 ; <LVAR 0x008 1(r)>
000118a2 ; --------------------------------------------------------------------------------------
000118a2 4e 56 ff d8 |NV | LINK.W A6,#0xffd8
000118a6 bf d5 | | CMPA.L (A5),A7
000118a8 62 06 |b | BHI 0x118b0
000118aa 44 fc 00 02 |D | MOVE.W #0x2,CCR
000118ae 4e 76 |Nv | TRAPV
000118b0 de fc 00 26 | & | ADDA.W #0x26,A7
000118b4 48 e7 d8 80 |H | MOVEM.L A0+D4+D3+D1+D0,-(A7)
000118b8 41 f9 00 01 0d 66 |A f | LEA.L _AppendChar(MOD b : String; a : char),A0
000118be 72 30 |r0 | MOVEQ.L #0x30,D1
000118c0 28 2e 00 0a |(. | MOVE.L (A6+0xa),D4
000118c4 76 0a |v | MOVEQ.L #0x0a,D3
000118c6 4e b9 00 01 08 0a |N | JSR _?divs_d3_d4
000118cc 2f 14 |/ | MOVE.L (A4),-(A7)
000118ce 20 04 | | MOVE.L D4,D0
000118d0 d0 81 | | ADD.L D1,D0
000118d2 1f 00 | | MOVE.B D0,-(A7)
000118d4 4e 90 |N | JSR (A0)
000118d6 54 4f |TO | ADDQ.L #0x2,A7
000118d8 2e 94 |. | MOVE.L (A4),(A7)
000118da d6 41 | A | ADD.W D1,D3
000118dc 1f 03 | | MOVE.B D3,-(A7)
000118de 4e 90 |N | JSR (A0)
000118e0 5c 4f |\O | ADDQ.L #0x6,A7
000118e2 4a 2e 00 08 |J. | TST.B (A6+0x8)
000118e6 67 0a |g | BEQ 0x118f2
000118e8 2f 14 |/ | MOVE.L (A4),-(A7)
000118ea 1f 2e 00 08 | . | MOVE.B (A6+0x8),-(A7)
000118ee 4e 90 |N | JSR (A0)
000118f0 5c 4f |\O | ADDQ.L #0x6,A7
000118f2 4c df 01 1b |L | MOVEM.L (A7)+,D0+D1+D3+D4+A0
000118f6 4e 5e |N^ | UNLK A6
000118f8 4e 75 |Nu | RTS
000118fa ; --------------------------------------------------------------------------------------
000118fa ; TimeToText()
000118fa ; OMSI PASCAL Function
000118fa ; <LVAR 0x00c 4(w)>
000118fa ; <LVAR 0x00b 1(r)>
000118fa ; <LVAR 0x00a 1(r) 2(r)>
000118fa ; <LVAR 0x008 2(r)>
000118fa ; <LVAR -0x004 2(w)>
000118fa ; <LVAR -0x014 @ 4(rw)>
000118fa ; --------------------------------------------------------------------------------------
000118fa _TimeToText():
000118fa 4e 56 ff 96 |NV | LINK.W A6,#0xff96
000118fe bf d5 | | CMPA.L (A5),A7
00011900 62 06 |b | BHI 0x11908
00011902 44 fc 00 02 |D | MOVE.W #0x2,CCR
00011906 4e 76 |Nv | TRAPV
00011908 de fc 00 56 | V | ADDA.W #0x56,A7
0001190c 48 e7 ff f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D6+D5+D4+D3+D2+D1+D0,-(A7)
00011910 43 ee ff ec |C | LEA.L (A6-0x14),A1
00011914 45 fa ff 8c |E | LEA.L 0x118a2,A2
00011918 47 ee 00 0a |G | LEA.L (A6+0xa),A3
0001191c 74 01 |t | MOVEQ.L #0x01,D2
0001191e 76 12 |v | MOVEQ.L #0x12,D3
00011920 78 3a |x: | MOVEQ.L #0x3a,D4
00011922 30 13 |0 | MOVE.W (A3),D0
00011924 ef 48 | H | LSL.W #0x7,D0
00011926 e0 48 | H | LSR.W #0x8,D0
00011928 e8 48 | H | LSR.W #0x4,D0
0001192a 66 26 |f& | BNE 0x11952
0001192c 41 fa fd 8c |A | LEA.L rtc_min,A0
00011930 70 08 |p | MOVEQ.L #0x08,D0
00011932 3f 20 |? | MOVE.W -(A0),-(A7)
00011934 51 c8 ff fc |Q | DBF D0,0x11932
00011938 59 4f |YO | SUBQ.L #0x4,A7
0001193a 48 6f 00 04 |Ho | PEA.L (A7+0x4)
0001193e 3f 02 |? | MOVE.W D2,-(A7)
00011940 3f 03 |? | MOVE.W D3,-(A7)
00011942 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00011948 50 4f |PO | ADDQ.L #0x8,A7
0001194a 22 9f |" | MOVE.L (A7)+,(A1)
0001194c de c3 | | ADDA.W D3,A7
0001194e 60 00 00 da |` | BRA 0x11a2a
00011952 48 51 |HQ | PEA.L (A1)
00011954 4e b9 00 01 0c fa |N | JSR _NewString(VAR a : String)
0001195a 58 4f |XO | ADDQ.L #0x4,A7
0001195c 42 80 |B | CLR.L D0
0001195e 30 2e 00 08 |0. | MOVE.W (A6+0x8),D0
00011962 80 fc 07 08 | | DIVU.W #0x708,D0
00011966 42 81 |B | CLR.L D1
00011968 32 00 |2 | MOVE.W D0,D1
0001196a 2e 01 |. | MOVE.L D1,D7
0001196c 48 40 |H@ | SWAP.W D0
0001196e 3d 40 ff fc |=@ | MOVE.W D0,(A6-0x4)
00011972 42 81 |B | CLR.L D1
00011974 32 00 |2 | MOVE.W D0,D1
00011976 82 fc 00 1e | | DIVU.W #0x1e,D1
0001197a 42 80 |B | CLR.L D0
0001197c 30 01 |0 | MOVE.W D1,D0
0001197e 2c 00 |, | MOVE.L D0,D6
00011980 48 41 |HA | SWAP.W D1
00011982 e3 41 | A | ASL.W #0x1,D1
00011984 42 80 |B | CLR.L D0
00011986 30 01 |0 | MOVE.W D1,D0
00011988 2a 00 |* | MOVE.L D0,D5
0001198a 2f 07 |/ | MOVE.L D7,-(A7)
0001198c 1f 04 | | MOVE.B D4,-(A7)
0001198e 28 49 |(I | MOVEA.L A1,A4
00011990 4e 92 |N | JSR (A2)
00011992 54 4f |TO | ADDQ.L #0x2,A7
00011994 2e 86 |. | MOVE.L D6,(A7)
00011996 1f 04 | | MOVE.B D4,-(A7)
00011998 28 49 |(I | MOVEA.L A1,A4
0001199a 4e 92 |N | JSR (A2)
0001199c 54 4f |TO | ADDQ.L #0x2,A7
0001199e 2e 85 |. | MOVE.L D5,(A7)
000119a0 1f 3c 00 20 | < | MOVE.B #0x20,-(A7)
000119a4 28 49 |(I | MOVEA.L A1,A4
000119a6 4e 92 |N | JSR (A2)
000119a8 5c 4f |\O | ADDQ.L #0x6,A7
000119aa 42 80 |B | CLR.L D0
000119ac 10 2e 00 0b | . | MOVE.B (A6+0xb),D0
000119b0 e7 08 | | LSL.B #0x3,D0
000119b2 e6 08 | | LSR.B #0x3,D0
000119b4 2f 00 |/ | MOVE.L D0,-(A7)
000119b6 1f 3c 00 2d | < - | MOVE.B #0x2d,-(A7)
000119ba 28 49 |(I | MOVEA.L A1,A4
000119bc 4e 92 |N | JSR (A2)
000119be 5c 4f |\O | ADDQ.L #0x6,A7
000119c0 30 13 |0 | MOVE.W (A3),D0
000119c2 ef 48 | H | LSL.W #0x7,D0
000119c4 e0 48 | H | LSR.W #0x8,D0
000119c6 e8 48 | H | LSR.W #0x4,D0
000119c8 c0 fc 00 03 | | MULU.W #0x3,D0
000119cc 42 81 |B | CLR.L D1
000119ce 32 00 |2 | MOVE.W D0,D1
000119d0 41 fa fc f8 |A | LEA.L months,A0
000119d4 59 4f |YO | SUBQ.L #0x4,A7
000119d6 1e b0 18 fd | | MOVE.B (A0+D1.L-#0x3),(A7)
000119da 1f 70 18 fe 00 01 | p | MOVE.B (A0+D1.L-#0x2),(A7+0x1)
000119e0 1f 70 18 ff 00 02 | p | MOVE.B (A0+D1.L-#0x1),(A7+0x2)
000119e6 59 4f |YO | SUBQ.L #0x4,A7
000119e8 2f 11 |/ | MOVE.L (A1),-(A7)
000119ea 59 4f |YO | SUBQ.L #0x4,A7
000119ec 48 6f 00 0c |Ho | PEA.L (A7+0xc)
000119f0 3f 02 |? | MOVE.W D2,-(A7)
000119f2 3f 3c 00 03 |?< | MOVE.W #0x3,-(A7)
000119f6 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
000119fc 50 4f |PO | ADDQ.L #0x8,A7
000119fe 4e b9 00 01 0f 2c |N , | JSR _StringCat2(a, b : String) : String
00011a04 50 4f |PO | ADDQ.L #0x8,A7
00011a06 22 9f |" | MOVE.L (A7)+,(A1)
00011a08 2e 91 |. | MOVE.L (A1),(A7)
00011a0a 1f 3c 00 2d | < - | MOVE.B #0x2d,-(A7)
00011a0e 4e b9 00 01 0d 66 |N f | JSR _AppendChar(MOD b : String; a : char)
00011a14 5c 4f |\O | ADDQ.L #0x6,A7
00011a16 42 80 |B | CLR.L D0
00011a18 10 13 | | MOVE.B (A3),D0
00011a1a e2 08 | | LSR.B #0x1,D0
00011a1c 52 40 |R@ | ADDQ.W #0x1,D0
00011a1e 48 c0 |H | EXTW.L D0
00011a20 2f 00 |/ | MOVE.L D0,-(A7)
00011a22 42 27 |B' | CLR.B -(A7)
00011a24 28 49 |(I | MOVEA.L A1,A4
00011a26 4e 92 |N | JSR (A2)
00011a28 5c 4f |\O | ADDQ.L #0x6,A7
00011a2a 2d 51 00 0c |-Q | MOVE.L (A1),(A6+0xc)
00011a2e 4c df 1f ff |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D5+D6+D7+A0+A1+A2+A3+A4
00011a32 4e 5e |N^ | UNLK A6
00011a34 4e 75 |Nu | RTS
00011a36 ; --------------------------------------------------------------------------------------
00011a36 ; OMSI PASCAL Function
00011a36 ; <LVAR 0x018 4(r)>
00011a36 ; <LVAR 0x014 4(r)>
00011a36 ; <LVAR 0x010 4(r)>
00011a36 ; <LVAR 0x00c 4(r)>
00011a36 ; <LVAR 0x008 4(r)>
00011a36 ; <LVAR -0x004 @ 4(r)>
00011a36 ; --------------------------------------------------------------------------------------
00011a36 4e 56 ff cc |NV | LINK.W A6,#0xffcc
00011a3a bf d5 | | CMPA.L (A5),A7
00011a3c 62 06 |b | BHI 0x11a44
00011a3e 44 fc 00 02 |D | MOVE.W #0x2,CCR
00011a42 4e 76 |Nv | TRAPV
00011a44 de fc 00 30 | 0 | ADDA.W #0x30,A7
00011a48 48 e7 e0 e0 |H | MOVEM.L A2+A1+A0+D2+D1+D0,-(A7)
00011a4c 45 ee ff fc |E | LEA.L (A6-0x4),A2
00011a50 74 0c |t | MOVEQ.L #0x0c,D2
00011a52 48 52 |HR | PEA.L (A2)
00011a54 4e b9 00 01 0c fa |N | JSR _NewString(VAR a : String)
00011a5a 58 4f |XO | ADDQ.L #0x4,A7
00011a5c 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00011a60 2f 2e 00 18 |/. | MOVE.L (A6+0x18),-(A7)
00011a64 2f 12 |/ | MOVE.L (A2),-(A7)
00011a66 48 50 |HP | PEA.L (A0)
00011a68 4e b9 00 01 14 ea |N | JSR _FirstField(MOD input : String; MOD output : String; VAR c : Bool
00011a6e de c2 | | ADDA.W D2,A7
00011a70 4a 10 |J | TST.B (A0)
00011a72 66 0c |f | BNE 0x11a80
00011a74 48 52 |HR | PEA.L (A2)
00011a76 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
00011a7c 58 4f |XO | ADDQ.L #0x4,A7
00011a7e 60 2c |`, | BRA 0x11aac
00011a80 22 6e 00 14 |"n | MOVEA.L (A6+0x14),A1
00011a84 2f 12 |/ | MOVE.L (A2),-(A7)
00011a86 48 50 |HP | PEA.L (A0)
00011a88 48 51 |HQ | PEA.L (A1)
00011a8a 4e b9 00 01 12 7c |N | | JSR _String2Long(src : String; VAR status : Bool; VAR retval : Long)
00011a90 de c2 | | ADDA.W D2,A7
00011a92 70 00 |p | MOVEQ.L #0x00,D0
00011a94 4a 10 |J | TST.B (A0)
00011a96 67 12 |g | BEQ 0x11aaa
00011a98 22 11 |" | MOVE.L (A1),D1
00011a9a b2 ae 00 10 | | CMP.L (A6+0x10),D1
00011a9e 6d 0a |m | BLT 0x11aaa
00011aa0 22 11 |" | MOVE.L (A1),D1
00011aa2 b2 ae 00 0c | | CMP.L (A6+0xc),D1
00011aa6 6e 02 |n | BGT 0x11aaa
00011aa8 52 00 |R | ADDQ.B #0x1,D0
00011aaa 10 80 | | MOVE.B D0,(A0)
00011aac 4c df 07 07 |L | MOVEM.L (A7)+,D0+D1+D2+A0+A1+A2
00011ab0 4e 5e |N^ | UNLK A6
00011ab2 4e 75 |Nu | RTS
00011ab4 ; --------------------------------------------------------------------------------------
00011ab4 ; OMSI PASCAL Function
00011ab4 ; <LVAR 0x010 4(r)>
00011ab4 ; <LVAR 0x00c 4(r)>
00011ab4 ; <LVAR 0x008 4(r)>
00011ab4 ; <LVAR -0x00c @ 4(rw)>
00011ab4 ; <LVAR -0x010 @ 4(rw)>
00011ab4 ; --------------------------------------------------------------------------------------
00011ab4 4e 56 ff b8 |NV | LINK.W A6,#0xffb8
00011ab8 bf d5 | | CMPA.L (A5),A7
00011aba 62 06 |b | BHI 0x11ac2
00011abc 44 fc 00 02 |D | MOVE.W #0x2,CCR
00011ac0 4e 76 |Nv | TRAPV
00011ac2 de fc 00 38 | 8 | ADDA.W #0x38,A7
00011ac6 48 e7 9b e0 |H | MOVEM.L A2+A1+A0+D7+D6+D4+D3+D0,-(A7)
00011aca 43 ee ff f0 |C | LEA.L (A6-0x10),A1
00011ace 45 ee ff f4 |E | LEA.L (A6-0xc),A2
00011ad2 70 0c |p | MOVEQ.L #0x0c,D0
00011ad4 48 51 |HQ | PEA.L (A1)
00011ad6 4e b9 00 01 0c fa |N | JSR _NewString(VAR a : String)
00011adc 58 4f |XO | ADDQ.L #0x4,A7
00011ade 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00011ae2 2f 2e 00 10 |/. | MOVE.L (A6+0x10),-(A7)
00011ae6 2f 11 |/ | MOVE.L (A1),-(A7)
00011ae8 48 50 |HP | PEA.L (A0)
00011aea 4e b9 00 01 14 ea |N | JSR _FirstField(MOD input : String; MOD output : String; VAR c : Bool
00011af0 de c0 | | ADDA.W D0,A7
00011af2 4a 10 |J | TST.B (A0)
00011af4 66 02 |f | BNE 0x11af8
00011af6 60 7a |`z | BRA 0x11b72
00011af8 59 4f |YO | SUBQ.L #0x4,A7
00011afa 2f 11 |/ | MOVE.L (A1),-(A7)
00011afc 4e b9 00 01 13 b0 |N | JSR _ToUpper(a : String) : String
00011b02 58 4f |XO | ADDQ.L #0x4,A7
00011b04 22 9f |" | MOVE.L (A7)+,(A1)
00011b06 7c 01 || | MOVEQ.L #0x01,D6
00011b08 28 06 |( | MOVE.L D6,D4
00011b0a 76 03 |v | MOVEQ.L #0x03,D3
00011b0c 4e b9 00 01 07 ea |N | JSR _?muls_d3_d4
00011b12 41 fa fb b6 |A | LEA.L months,A0
00011b16 59 4f |YO | SUBQ.L #0x4,A7
00011b18 1e b0 48 fd | H | MOVE.B (A0+D4.L-#0x3),(A7)
00011b1c 1f 70 48 fe 00 01 | pH | MOVE.B (A0+D4.L-#0x2),(A7+0x1)
00011b22 1f 70 48 ff 00 02 | pH | MOVE.B (A0+D4.L-#0x1),(A7+0x2)
00011b28 59 4f |YO | SUBQ.L #0x4,A7
00011b2a 48 6f 00 04 |Ho | PEA.L (A7+0x4)
00011b2e 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
00011b32 3f 3c 00 03 |?< | MOVE.W #0x3,-(A7)
00011b36 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00011b3c 50 4f |PO | ADDQ.L #0x8,A7
00011b3e 24 9f |$ | MOVE.L (A7)+,(A2)
00011b40 54 4f |TO | ADDQ.L #0x2,A7
00011b42 2f 11 |/ | MOVE.L (A1),-(A7)
00011b44 2f 12 |/ | MOVE.L (A2),-(A7)
00011b46 4e b9 00 01 0e 62 |N b | JSR _StringEqual(a, b : String) : Byte
00011b4c 50 4f |PO | ADDQ.L #0x8,A7
00011b4e 1e 1f | | MOVE.B (A7)+,D7
00011b50 48 52 |HR | PEA.L (A2)
00011b52 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
00011b58 58 4f |XO | ADDQ.L #0x4,A7
00011b5a 4a 07 |J | TST.B D7
00011b5c 67 08 |g | BEQ 0x11b66
00011b5e 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
00011b62 20 86 | | MOVE.L D6,(A0)
00011b64 60 0c |` | BRA 0x11b72
00011b66 52 86 |R | ADDQ.L #0x1,D6
00011b68 bc 80 | | CMP.L D0,D6
00011b6a 6f 9c |o | BLE 0x11b08
00011b6c 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00011b70 42 10 |B | CLR.B (A0)
00011b72 48 51 |HQ | PEA.L (A1)
00011b74 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
00011b7a 58 4f |XO | ADDQ.L #0x4,A7
00011b7c 4c df 07 d9 |L | MOVEM.L (A7)+,D0+D3+D4+D6+D7+A0+A1+A2
00011b80 4e 5e |N^ | UNLK A6
00011b82 4e 75 |Nu | RTS
00011b84 ; --------------------------------------------------------------------------------------
00011b84 ; ConvertTimestamp(MOD input : String; b : L; VAR status : Bool)
00011b84 ; Stack:
00011b84 ; A6+0x10 input : String
00011b84 ; A6+0xc b : L
00011b84 ; A6+0x8 VAR status : Bool
00011b84 ; OMSI PASCAL Function
00011b84 ; <LVAR 0x010 @ 4(r)>
00011b84 ; <LVAR 0x00c 4(r)>
00011b84 ; <LVAR 0x008 4(r)>
00011b84 ; <LVAR -0x008 @ 4(r)>
00011b84 ; <LVAR -0x00c @ 4(r)>
00011b84 ; <LVAR -0x010 @ 4(r)>
00011b84 ; <LVAR -0x014 @ 4(r)>
00011b84 ; <LVAR -0x018 @ 4(r)>
00011b84 ; <LVAR -0x01c @ 4(r)>
00011b84 ; --------------------------------------------------------------------------------------
00011b84 _ConvertTimestamp(MOD input : String; b : L; VAR status : Bool):
00011b84 4e 56 ff 9c |NV | LINK.W A6,#0xff9c
00011b88 bf d5 | | CMPA.L (A5),A7
00011b8a 62 06 |b | BHI 0x11b92
00011b8c 44 fc 00 02 |D | MOVE.W #0x2,CCR
00011b90 4e 76 |Nv | TRAPV
00011b92 de fc 00 44 | D | ADDA.W #0x44,A7
00011b96 48 e7 d9 f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D4+D3+D1+D0,-(A7)
00011b9a 43 ee 00 10 |C | LEA.L (A6+0x10),A1
00011b9e 45 ee 00 08 |E | LEA.L (A6+0x8),A2
00011ba2 47 fa fe 92 |G | LEA.L 0x11a36,A3
00011ba6 49 f8 00 00 |I | LEA.L 0x0,A4
00011baa 72 14 |r | MOVEQ.L #0x14,D1
00011bac 20 51 | Q | MOVEA.L (A1),A0
00011bae 2f 08 |/ | MOVE.L A0,-(A7)
00011bb0 30 10 |0 | MOVE.W (A0),D0
00011bb2 48 c0 |H | EXTW.L D0
00011bb4 2f 00 |/ | MOVE.L D0,-(A7)
00011bb6 7e 01 |~ | MOVEQ.L #0x01,D7
00011bb8 be 97 | | CMP.L (A7),D7
00011bba 6e 1e |n | BGT 0x11bda
00011bbc 20 6f 00 04 | o | MOVEA.L (A7+0x4),A0
00011bc0 10 30 78 01 | 0x | MOVE.B (A0+D7.L+#0x1),D0
00011bc4 0c 00 00 3a | : | CMPI.B #0x3a,D0
00011bc8 67 06 |g | BEQ 0x11bd0
00011bca 0c 00 00 2d | - | CMPI.B #0x2d,D0
00011bce 66 06 |f | BNE 0x11bd6
00011bd0 11 bc 00 20 78 01 | x | MOVE.B #0x20,(A0+D7.L+#0x1)
00011bd6 52 87 |R | ADDQ.L #0x1,D7
00011bd8 68 de |h | BVC 0x11bb8
00011bda 50 4f |PO | ADDQ.L #0x8,A7
00011bdc 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
00011be0 42 90 |B | CLR.L (A0)
00011be2 20 52 | R | MOVEA.L (A2),A0
00011be4 2f 11 |/ | MOVE.L (A1),-(A7)
00011be6 48 6e ff e4 |Hn | PEA.L (A6-0x1c)
00011bea 48 54 |HT | PEA.L (A4)
00011bec 48 78 00 17 |Hx | PEA.L 0x17
00011bf0 48 50 |HP | PEA.L (A0)
00011bf2 4e 93 |N | JSR (A3)
00011bf4 de c1 | | ADDA.W D1,A7
00011bf6 4a 10 |J | TST.B (A0)
00011bf8 66 04 |f | BNE 0x11bfe
00011bfa 60 00 00 f6 |` | BRA 0x11cf2
00011bfe 20 52 | R | MOVEA.L (A2),A0
00011c00 2f 11 |/ | MOVE.L (A1),-(A7)
00011c02 48 6e ff e8 |Hn | PEA.L (A6-0x18)
00011c06 48 54 |HT | PEA.L (A4)
00011c08 48 78 00 3b |Hx ; | PEA.L 0x3b
00011c0c 48 50 |HP | PEA.L (A0)
00011c0e 4e 93 |N | JSR (A3)
00011c10 de c1 | | ADDA.W D1,A7
00011c12 4a 10 |J | TST.B (A0)
00011c14 66 04 |f | BNE 0x11c1a
00011c16 60 00 00 da |` | BRA 0x11cf2
00011c1a 20 52 | R | MOVEA.L (A2),A0
00011c1c 2f 11 |/ | MOVE.L (A1),-(A7)
00011c1e 48 6e ff ec |Hn | PEA.L (A6-0x14)
00011c22 48 54 |HT | PEA.L (A4)
00011c24 48 78 00 3b |Hx ; | PEA.L 0x3b
00011c28 48 50 |HP | PEA.L (A0)
00011c2a 4e 93 |N | JSR (A3)
00011c2c de c1 | | ADDA.W D1,A7
00011c2e 4a 10 |J | TST.B (A0)
00011c30 66 04 |f | BNE 0x11c36
00011c32 60 00 00 be |` | BRA 0x11cf2
00011c36 20 52 | R | MOVEA.L (A2),A0
00011c38 2f 11 |/ | MOVE.L (A1),-(A7)
00011c3a 48 6e ff f0 |Hn | PEA.L (A6-0x10)
00011c3e 48 78 00 01 |Hx | PEA.L 0x1
00011c42 48 78 00 1f |Hx | PEA.L 0x1f
00011c46 48 50 |HP | PEA.L (A0)
00011c48 4e 93 |N | JSR (A3)
00011c4a de c1 | | ADDA.W D1,A7
00011c4c 4a 10 |J | TST.B (A0)
00011c4e 66 04 |f | BNE 0x11c54
00011c50 60 00 00 a0 |` | BRA 0x11cf2
00011c54 20 52 | R | MOVEA.L (A2),A0
00011c56 2f 11 |/ | MOVE.L (A1),-(A7)
00011c58 48 6e ff f4 |Hn | PEA.L (A6-0xc)
00011c5c 48 50 |HP | PEA.L (A0)
00011c5e 4e ba fe 54 |N T | JSR 0x11ab4
00011c62 de fc 00 0c | | ADDA.W #0xc,A7
00011c66 4a 10 |J | TST.B (A0)
00011c68 66 04 |f | BNE 0x11c6e
00011c6a 60 00 00 86 |` | BRA 0x11cf2
00011c6e 20 52 | R | MOVEA.L (A2),A0
00011c70 2f 11 |/ | MOVE.L (A1),-(A7)
00011c72 48 6e ff f8 |Hn | PEA.L (A6-0x8)
00011c76 48 78 00 01 |Hx | PEA.L 0x1
00011c7a 48 78 00 63 |Hx c | PEA.L 0x63
00011c7e 48 50 |HP | PEA.L (A0)
00011c80 4e 93 |N | JSR (A3)
00011c82 de c1 | | ADDA.W D1,A7
00011c84 4a 10 |J | TST.B (A0)
00011c86 66 02 |f | BNE 0x11c8a
00011c88 60 68 |`h | BRA 0x11cf2
00011c8a 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
00011c8e 20 2e ff f8 | . | MOVE.L (A6-0x8),D0
00011c92 53 80 |S | SUBQ.L #0x1,D0
00011c94 02 28 00 01 00 02 | ( | ANDI.B #0x01,(A0+0x2)
00011c9a e3 08 | | LSL.B #0x1,D0
00011c9c 81 28 00 02 | ( | OR.B D0,(A0+0x2)
00011ca0 20 2e ff f4 | . | MOVE.L (A6-0xc),D0
00011ca4 02 68 fe 1f 00 02 | h | ANDI.W #0xfe1f,(A0+0x2)
00011caa eb 48 | H | LSL.W #0x5,D0
00011cac 81 68 00 02 | h | OR.W D0,(A0+0x2)
00011cb0 20 2e ff f0 | . | MOVE.L (A6-0x10),D0
00011cb4 02 28 00 e0 00 03 | ( | ANDI.B #0xe0,(A0+0x3)
00011cba 81 28 00 03 | ( | OR.B D0,(A0+0x3)
00011cbe 28 2e ff e4 |(. | MOVE.L (A6-0x1c),D4
00011cc2 26 3c 00 00 07 08 |&< | MOVE.L #0x708,D3
00011cc8 4e b9 00 01 07 ea |N | JSR _?muls_d3_d4
00011cce 2f 04 |/ | MOVE.L D4,-(A7)
00011cd0 28 2e ff e8 |(. | MOVE.L (A6-0x18),D4
00011cd4 76 1e |v | MOVEQ.L #0x1e,D3
00011cd6 4e b9 00 01 07 ea |N | JSR _?muls_d3_d4
00011cdc 20 17 | | MOVE.L (A7),D0
00011cde d0 84 | | ADD.L D4,D0
00011ce0 58 4f |XO | ADDQ.L #0x4,A7
00011ce2 28 2e ff ec |(. | MOVE.L (A6-0x14),D4
00011ce6 76 02 |v | MOVEQ.L #0x02,D3
00011ce8 4e b9 00 01 08 0a |N | JSR _?divs_d3_d4
00011cee d8 80 | | ADD.L D0,D4
00011cf0 30 84 |0 | MOVE.W D4,(A0)
00011cf2 48 51 |HQ | PEA.L (A1)
00011cf4 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
00011cfa 58 4f |XO | ADDQ.L #0x4,A7
00011cfc 4c df 1f 9b |L | MOVEM.L (A7)+,D0+D1+D3+D4+D7+A0+A1+A2+A3+A4
00011d00 4e 5e |N^ | UNLK A6
00011d02 4e 75 |Nu | RTS
00011d04 ; --------------------------------------------------------------------------------------
00011d04 ; Add(a, b : Quad) : Quad
00011d04 ; Stack:
00011d04 ; A6+0x18 VAR RETURN : Quad
00011d04 ; A6+0x10 a : Quad
00011d04 ; A6+0x8 b : Quad
00011d04 ; --------------------------------------------------------------------------------------
00011d04 _Add(a, b : Quad) : Quad:
00011d04 4e 56 00 00 |NV | LINK.W A6,#0x0000
00011d08 48 e7 e0 00 |H | MOVEM.L D2+D1+D0,-(A7)
00011d0c bf d5 | | CMPA.L (A5),A7
00011d0e 4e 76 |Nv | TRAPV
00011d10 20 2e 00 10 | . | MOVE.L (A6+0x10),D0
00011d14 22 2e 00 14 |". | MOVE.L (A6+0x14),D1
00011d18 24 2e 00 08 |$. | MOVE.L (A6+0x8),D2
00011d1c d2 ae 00 0c | | ADD.L (A6+0xc),D1
00011d20 d1 82 | | ADDX.L D2,D0
00011d22 68 0a |h | BVC 0x11d2e
00011d24 1f 3c 00 08 | < | MOVE.B #0x08,-(A7)
00011d28 4e b9 00 01 07 04 |N | JSR Program.Program_Failure()
00011d2e 2d 40 00 18 |-@ | MOVE.L D0,(A6+0x18)
00011d32 2d 41 00 1c |-A | MOVE.L D1,(A6+0x1c)
00011d36 4c df 00 07 |L | MOVEM.L (A7)+,D0+D1+D2
00011d3a 4e 5e |N^ | UNLK A6
00011d3c 4e 75 |Nu | RTS
00011d3e ; --------------------------------------------------------------------------------------
00011d3e ; Subtract(a, b : Quad) : Quad
00011d3e ; Stack:
00011d3e ; A6+0x18 VAR RETURN : Quad
00011d3e ; A6+0x10 a : Quad
00011d3e ; A6+0x8 b : Quad
00011d3e ; --------------------------------------------------------------------------------------
00011d3e _Subtract(a, b : Quad) : Quad:
00011d3e 4e 56 00 00 |NV | LINK.W A6,#0x0000
00011d42 48 e7 e0 00 |H | MOVEM.L D2+D1+D0,-(A7)
00011d46 bf d5 | | CMPA.L (A5),A7
00011d48 4e 76 |Nv | TRAPV
00011d4a 20 2e 00 10 | . | MOVE.L (A6+0x10),D0
00011d4e 22 2e 00 14 |". | MOVE.L (A6+0x14),D1
00011d52 24 2e 00 08 |$. | MOVE.L (A6+0x8),D2
00011d56 92 ae 00 0c | | SUB.L (A6+0xc),D1
00011d5a 91 82 | | SUBX.L D2,D0
00011d5c 68 0a |h | BVC 0x11d68
00011d5e 1f 3c 00 07 | < | MOVE.B #0x07,-(A7)
00011d62 4e b9 00 01 07 04 |N | JSR Program.Program_Failure()
00011d68 2d 40 00 18 |-@ | MOVE.L D0,(A6+0x18)
00011d6c 2d 41 00 1c |-A | MOVE.L D1,(A6+0x1c)
00011d70 4c df 00 07 |L | MOVEM.L (A7)+,D0+D1+D2
00011d74 4e 5e |N^ | UNLK A6
00011d76 4e 75 |Nu | RTS
00011d78 ; --------------------------------------------------------------------------------------
00011d78 ; Multiply(a, b : Quad) : Quad
00011d78 ; Stack:
00011d78 ; A6+0x18 VAR RETURN : Quad
00011d78 ; A6+0x10 a : Quad
00011d78 ; A6+0x8 b : Quad
00011d78 ; --------------------------------------------------------------------------------------
00011d78 _Multiply(a, b : Quad) : Quad:
00011d78 4e 56 00 00 |NV | LINK.W A6,#0x0000
00011d7c 48 e7 f8 00 |H | MOVEM.L D4+D3+D2+D1+D0,-(A7)
00011d80 bf d5 | | CMPA.L (A5),A7
00011d82 4e 76 |Nv | TRAPV
00011d84 22 2e 00 14 |". | MOVE.L (A6+0x14),D1
00011d88 20 2e 00 10 | . | MOVE.L (A6+0x10),D0
00011d8c 5b c4 |[ | SMI.B D4
00011d8e 6c 04 |l | BGE 0x11d94
00011d90 44 81 |D | NEG.L D1
00011d92 40 80 |@ | NEGX.L D0
00011d94 26 2e 00 0c |&. | MOVE.L (A6+0xc),D3
00011d98 24 2e 00 08 |$. | MOVE.L (A6+0x8),D2
00011d9c 6c 06 |l | BGE 0x11da4
00011d9e 46 04 |F | NOT.B D4
00011da0 44 83 |D | NEG.L D3
00011da2 40 82 |@ | NEGX.L D2
00011da4 4a 82 |J | TST.L D2
00011da6 67 08 |g | BEQ 0x11db0
00011da8 c1 42 | B | EXG.L D0,D2
00011daa c3 43 | C | EXG.L D1,D3
00011dac 4a 82 |J | TST.L D2
00011dae 66 1c |f | BNE 0x11dcc
00011db0 4c 03 14 02 |L | mULU.L D3,D2,D1
00011db4 4a 80 |J | TST.L D0
00011db6 67 0c |g | BEQ 0x11dc4
00011db8 4c 03 04 03 |L | mULU.L D3,D3,D0
00011dbc d0 82 | | ADD.L D2,D0
00011dbe 65 0c |e | BCS 0x11dcc
00011dc0 4a 83 |J | TST.L D3
00011dc2 66 08 |f | BNE 0x11dcc
00011dc4 4a 04 |J | TST.B D4
00011dc6 6b 0e |k | BMI 0x11dd6
00011dc8 4a 80 |J | TST.L D0
00011dca 6a 10 |j | BPL 0x11ddc
00011dcc 1f 3c 00 09 | < | MOVE.B #0x09,-(A7)
00011dd0 4e b9 00 01 07 04 |N | JSR Program.Program_Failure()
00011dd6 44 81 |D | NEG.L D1
00011dd8 40 80 |@ | NEGX.L D0
00011dda 6a f0 |j | BPL 0x11dcc
00011ddc 2d 40 00 18 |-@ | MOVE.L D0,(A6+0x18)
00011de0 2d 41 00 1c |-A | MOVE.L D1,(A6+0x1c)
00011de4 4c df 00 1f |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4
00011de8 4e 5e |N^ | UNLK A6
00011dea 4e 75 |Nu | RTS
00011dec ; --------------------------------------------------------------------------------------
00011dec ; Divide(a, b : Quad) : Quad
00011dec ; Stack:
00011dec ; A6+0x18 VAR RETURN : Quad
00011dec ; A6+0x10 a : Quad
00011dec ; A6+0x8 b : Quad
00011dec ; --------------------------------------------------------------------------------------
00011dec _Divide(a, b : Quad) : Quad:
00011dec 4e 56 00 00 |NV | LINK.W A6,#0x0000
00011df0 48 e7 fe 00 |H | MOVEM.L D6+D5+D4+D3+D2+D1+D0,-(A7)
00011df4 bf d5 | | CMPA.L (A5),A7
00011df6 4e 76 |Nv | TRAPV
00011df8 22 2e 00 14 |". | MOVE.L (A6+0x14),D1
00011dfc 20 2e 00 10 | . | MOVE.L (A6+0x10),D0
00011e00 5b c4 |[ | SMI.B D4
00011e02 6c 04 |l | BGE 0x11e08
00011e04 44 81 |D | NEG.L D1
00011e06 40 80 |@ | NEGX.L D0
00011e08 26 2e 00 0c |&. | MOVE.L (A6+0xc),D3
00011e0c 24 2e 00 08 |$. | MOVE.L (A6+0x8),D2
00011e10 6c 06 |l | BGE 0x11e18
00011e12 46 04 |F | NOT.B D4
00011e14 44 83 |D | NEG.L D3
00011e16 40 82 |@ | NEGX.L D2
00011e18 4a 82 |J | TST.L D2
00011e1a 66 0e |f | BNE 0x11e2a
00011e1c 4a 83 |J | TST.L D3
00011e1e 67 5a |gZ | BEQ 0x11e7a
00011e20 4c 43 00 02 |LC | DIVU.L D3,D2,D0
00011e24 4c 43 14 02 |LC | DIVUL.L D3,D2,D1
00011e28 60 48 |`H | BRA 0x11e72
00011e2a 42 85 |B | CLR.L D5
00011e2c 4a 82 |J | TST.L D2
00011e2e 60 0a |` | BRA 0x11e3a
00011e30 d2 81 | | ADD.L D1,D1
00011e32 d1 80 | | ADDX.L D0,D0
00011e34 db 85 | | ADDX.L D5,D5
00011e36 d6 83 | | ADD.L D3,D3
00011e38 d5 82 | | ADDX.L D2,D2
00011e3a 6a f4 |j | BPL 0x11e30
00011e3c 4a 85 |J | TST.L D5
00011e3e 67 20 |g | BEQ 0x11e60
00011e40 2c 03 |, | MOVE.L D3,D6
00011e42 4c 42 04 05 |LB | DIVUL.L D2,D5,D0
00011e46 4c 00 34 02 |L 4 | mULU.L D0,D2,D3
00011e4a 92 83 | | SUB.L D3,D1
00011e4c 9b 82 | | SUBX.L D2,D5
00011e4e 64 0a |d | BCC 0x11e5a
00011e50 42 82 |B | CLR.L D2
00011e52 53 80 |S | SUBQ.L #0x1,D0
00011e54 d2 86 | | ADD.L D6,D1
00011e56 db 82 | | ADDX.L D2,D5
00011e58 64 f8 |d | BCC 0x11e52
00011e5a 22 00 |" | MOVE.L D0,D1
00011e5c 42 80 |B | CLR.L D0
00011e5e 60 12 |` | BRA 0x11e72
00011e60 42 85 |B | CLR.L D5
00011e62 b0 82 | | CMP.L D2,D0
00011e64 65 08 |e | BCS 0x11e6e
00011e66 62 04 |b | BHI 0x11e6c
00011e68 b2 83 | | CMP.L D3,D1
00011e6a 65 02 |e | BCS 0x11e6e
00011e6c 7a 01 |z | MOVEQ.L #0x01,D5
00011e6e 42 80 |B | CLR.L D0
00011e70 22 05 |" | MOVE.L D5,D1
00011e72 4a 04 |J | TST.B D4
00011e74 6b 0e |k | BMI 0x11e84
00011e76 4a 80 |J | TST.L D0
00011e78 6a 10 |j | BPL 0x11e8a
00011e7a 1f 3c 00 0a | < | MOVE.B #0x0a,-(A7)
00011e7e 4e b9 00 01 07 04 |N | JSR Program.Program_Failure()
00011e84 44 81 |D | NEG.L D1
00011e86 40 80 |@ | NEGX.L D0
00011e88 6a f0 |j | BPL 0x11e7a
00011e8a 2d 40 00 18 |-@ | MOVE.L D0,(A6+0x18)
00011e8e 2d 41 00 1c |-A | MOVE.L D1,(A6+0x1c)
00011e92 4c df 00 7f |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D5+D6
00011e96 4e 5e |N^ | UNLK A6
00011e98 4e 75 |Nu | RTS
00011e9a ; --------------------------------------------------------------------------------------
00011e9a ; IsGreater(a, b : Quad) : Bool
00011e9a ; Stack:
00011e9a ; A6+0x18 VAR RETURN : Bool
00011e9a ; A6+0x10 a : Quad
00011e9a ; A6+0x8 b : Quad
00011e9a ; --------------------------------------------------------------------------------------
00011e9a _IsGreater(a, b : Quad) : Bool:
00011e9a 4e 56 00 00 |NV | LINK.W A6,#0x0000
00011e9e 48 e7 80 00 |H | MOVEM.L D0,-(A7)
00011ea2 bf d5 | | CMPA.L (A5),A7
00011ea4 4e 76 |Nv | TRAPV
00011ea6 42 2e 00 18 |B. | CLR.B (A6+0x18)
00011eaa 20 2e 00 10 | . | MOVE.L (A6+0x10),D0
00011eae b0 ae 00 08 | | CMP.L (A6+0x8),D0
00011eb2 6d 12 |m | BLT 0x11ec6
00011eb4 6e 0a |n | BGT 0x11ec0
00011eb6 20 2e 00 14 | . | MOVE.L (A6+0x14),D0
00011eba b0 ae 00 0c | | CMP.L (A6+0xc),D0
00011ebe 63 06 |c | BLS 0x11ec6
00011ec0 1d 7c 00 01 00 18 | | | MOVE.B #0x01,(A6+0x18)
00011ec6 4c df 00 01 |L | MOVEM.L (A7)+,D0
00011eca 4e 5e |N^ | UNLK A6
00011ecc 4e 75 |Nu | RTS
00011ece ; --------------------------------------------------------------------------------------
00011ece ; IsSmaller(a, b : Quad) : Bool
00011ece ; Stack:
00011ece ; A6+0x18 VAR RETURN : Bool
00011ece ; A6+0x10 a : Quad
00011ece ; A6+0x8 b : Quad
00011ece ; --------------------------------------------------------------------------------------
00011ece _IsSmaller(a, b : Quad) : Bool:
00011ece 4e 56 00 00 |NV | LINK.W A6,#0x0000
00011ed2 48 e7 80 00 |H | MOVEM.L D0,-(A7)
00011ed6 bf d5 | | CMPA.L (A5),A7
00011ed8 4e 76 |Nv | TRAPV
00011eda 42 2e 00 18 |B. | CLR.B (A6+0x18)
00011ede 20 2e 00 10 | . | MOVE.L (A6+0x10),D0
00011ee2 b0 ae 00 08 | | CMP.L (A6+0x8),D0
00011ee6 6e 12 |n | BGT 0x11efa
00011ee8 6d 0a |m | BLT 0x11ef4
00011eea 20 2e 00 14 | . | MOVE.L (A6+0x14),D0
00011eee b0 ae 00 0c | | CMP.L (A6+0xc),D0
00011ef2 64 06 |d | BCC 0x11efa
00011ef4 1d 7c 00 01 00 18 | | | MOVE.B #0x01,(A6+0x18)
00011efa 4c df 00 01 |L | MOVEM.L (A7)+,D0
00011efe 4e 5e |N^ | UNLK A6
00011f00 4e 75 |Nu | RTS
00011f02 ; --------------------------------------------------------------------------------------
00011f02 ; IsEqual(a, b : Quad) : Bool
00011f02 ; Stack:
00011f02 ; A6+0x18 VAR RETURN : Bool
00011f02 ; A6+0x10 a : Quad
00011f02 ; A6+0x8 b : Quad
00011f02 ; --------------------------------------------------------------------------------------
00011f02 _IsEqual(a, b : Quad) : Bool:
00011f02 4e 56 00 00 |NV | LINK.W A6,#0x0000
00011f06 48 e7 80 00 |H | MOVEM.L D0,-(A7)
00011f0a bf d5 | | CMPA.L (A5),A7
00011f0c 4e 76 |Nv | TRAPV
00011f0e 42 2e 00 18 |B. | CLR.B (A6+0x18)
00011f12 20 2e 00 10 | . | MOVE.L (A6+0x10),D0
00011f16 b0 ae 00 08 | | CMP.L (A6+0x8),D0
00011f1a 66 10 |f | BNE 0x11f2c
00011f1c 20 2e 00 14 | . | MOVE.L (A6+0x14),D0
00011f20 b0 ae 00 0c | | CMP.L (A6+0xc),D0
00011f24 66 06 |f | BNE 0x11f2c
00011f26 1d 7c 00 01 00 18 | | | MOVE.B #0x01,(A6+0x18)
00011f2c 4c df 00 01 |L | MOVEM.L (A7)+,D0
00011f30 4e 5e |N^ | UNLK A6
00011f32 4e 75 |Nu | RTS
00011f34 ; --------------------------------------------------------------------------------------
00011f34 ; BitAnd(a, b : Quad) : Quad
00011f34 ; Stack:
00011f34 ; A6+0x18 VAR RETURN : Quad
00011f34 ; A6+0x10 a : Quad
00011f34 ; A6+0x8 b : Quad
00011f34 ; --------------------------------------------------------------------------------------
00011f34 _BitAnd(a, b : Quad) : Quad:
00011f34 4e 56 00 00 |NV | LINK.W A6,#0x0000
00011f38 48 e7 80 00 |H | MOVEM.L D0,-(A7)
00011f3c bf d5 | | CMPA.L (A5),A7
00011f3e 4e 76 |Nv | TRAPV
00011f40 20 2e 00 10 | . | MOVE.L (A6+0x10),D0
00011f44 c0 ae 00 08 | | AND.L (A6+0x8),D0
00011f48 2d 40 00 18 |-@ | MOVE.L D0,(A6+0x18)
00011f4c 20 2e 00 14 | . | MOVE.L (A6+0x14),D0
00011f50 c0 ae 00 0c | | AND.L (A6+0xc),D0
00011f54 2d 40 00 1c |-@ | MOVE.L D0,(A6+0x1c)
00011f58 4c df 00 01 |L | MOVEM.L (A7)+,D0
00011f5c 4e 5e |N^ | UNLK A6
00011f5e 4e 75 |Nu | RTS
00011f60 ; --------------------------------------------------------------------------------------
00011f60 ; BitOr(a, b : Quad) : Quad
00011f60 ; Stack:
00011f60 ; A6+0x18 VAR RETURN : Quad
00011f60 ; A6+0x10 a : Quad
00011f60 ; A6+0x8 b : Quad
00011f60 ; --------------------------------------------------------------------------------------
00011f60 _BitOr(a, b : Quad) : Quad:
00011f60 4e 56 00 00 |NV | LINK.W A6,#0x0000
00011f64 48 e7 80 00 |H | MOVEM.L D0,-(A7)
00011f68 bf d5 | | CMPA.L (A5),A7
00011f6a 4e 76 |Nv | TRAPV
00011f6c 20 2e 00 10 | . | MOVE.L (A6+0x10),D0
00011f70 80 ae 00 08 | | OR.L (A6+0x8),D0
00011f74 2d 40 00 18 |-@ | MOVE.L D0,(A6+0x18)
00011f78 20 2e 00 14 | . | MOVE.L (A6+0x14),D0
00011f7c 80 ae 00 0c | | OR.L (A6+0xc),D0
00011f80 2d 40 00 1c |-@ | MOVE.L D0,(A6+0x1c)
00011f84 4c df 00 01 |L | MOVEM.L (A7)+,D0
00011f88 4e 5e |N^ | UNLK A6
00011f8a 4e 75 |Nu | RTS
00011f8c ; --------------------------------------------------------------------------------------
00011f8c ; BitNot(a : Quad) : Quad
00011f8c ; Stack:
00011f8c ; A6+0x10 VAR RETURN : Quad
00011f8c ; A6+0x8 a : Quad
00011f8c ; --------------------------------------------------------------------------------------
00011f8c _BitNot(a : Quad) : Quad:
00011f8c 4e 56 00 00 |NV | LINK.W A6,#0x0000
00011f90 48 e7 80 00 |H | MOVEM.L D0,-(A7)
00011f94 bf d5 | | CMPA.L (A5),A7
00011f96 4e 76 |Nv | TRAPV
00011f98 20 2e 00 08 | . | MOVE.L (A6+0x8),D0
00011f9c 46 80 |F | NOT.L D0
00011f9e 2d 40 00 10 |-@ | MOVE.L D0,(A6+0x10)
00011fa2 20 2e 00 0c | . | MOVE.L (A6+0xc),D0
00011fa6 46 80 |F | NOT.L D0
00011fa8 2d 40 00 14 |-@ | MOVE.L D0,(A6+0x14)
00011fac 4c df 00 01 |L | MOVEM.L (A7)+,D0
00011fb0 4e 5e |N^ | UNLK A6
00011fb2 4e 75 |Nu | RTS
00011fb4 ; --------------------------------------------------------------------------------------
00011fb4 ; Negate(a : Quad) : Quad
00011fb4 ; Stack:
00011fb4 ; A6+0x10 VAR RETURN : Quad
00011fb4 ; A6+0x8 a : Quad
00011fb4 ; --------------------------------------------------------------------------------------
00011fb4 _Negate(a : Quad) : Quad:
00011fb4 4e 56 00 00 |NV | LINK.W A6,#0x0000
00011fb8 48 e7 c0 00 |H | MOVEM.L D1+D0,-(A7)
00011fbc bf d5 | | CMPA.L (A5),A7
00011fbe 4e 76 |Nv | TRAPV
00011fc0 20 2e 00 08 | . | MOVE.L (A6+0x8),D0
00011fc4 22 2e 00 0c |". | MOVE.L (A6+0xc),D1
00011fc8 44 81 |D | NEG.L D1
00011fca 40 80 |@ | NEGX.L D0
00011fcc 68 0a |h | BVC 0x11fd8
00011fce 1f 3c 00 06 | < | MOVE.B #0x06,-(A7)
00011fd2 4e b9 00 01 07 04 |N | JSR Program.Program_Failure()
00011fd8 2d 40 00 10 |-@ | MOVE.L D0,(A6+0x10)
00011fdc 2d 41 00 14 |-A | MOVE.L D1,(A6+0x14)
00011fe0 4c df 00 03 |L | MOVEM.L (A7)+,D0+D1
00011fe4 4e 5e |N^ | UNLK A6
00011fe6 4e 75 |Nu | RTS
00011fe8 ; --------------------------------------------------------------------------------------
00011fe8 ; BitXor(a, b : Quad) : Quad
00011fe8 ; Stack:
00011fe8 ; A6+0x18 VAR RETURN : Quad
00011fe8 ; A6+0x10 a : Quad
00011fe8 ; A6+0x8 b : Quad
00011fe8 ; --------------------------------------------------------------------------------------
00011fe8 _BitXor(a, b : Quad) : Quad:
00011fe8 4e 56 00 00 |NV | LINK.W A6,#0x0000
00011fec 48 e7 c0 00 |H | MOVEM.L D1+D0,-(A7)
00011ff0 bf d5 | | CMPA.L (A5),A7
00011ff2 4e 76 |Nv | TRAPV
00011ff4 20 2e 00 10 | . | MOVE.L (A6+0x10),D0
00011ff8 22 2e 00 08 |". | MOVE.L (A6+0x8),D1
00011ffc b3 80 | | EOR.L D1,D0
00011ffe 2d 40 00 18 |-@ | MOVE.L D0,(A6+0x18)
00012002 20 2e 00 14 | . | MOVE.L (A6+0x14),D0
00012006 22 2e 00 0c |". | MOVE.L (A6+0xc),D1
0001200a b3 80 | | EOR.L D1,D0
0001200c 2d 40 00 1c |-@ | MOVE.L D0,(A6+0x1c)
00012010 4c df 00 03 |L | MOVEM.L (A7)+,D0+D1
00012014 4e 5e |N^ | UNLK A6
00012016 4e 75 |Nu | RTS
00012018 ; --------------------------------------------------------------------------------------
00012018 ; BitShift(a : Quad ; howmuch : integer) : Quad
00012018 ; Stack:
00012018 ; A6+0x14 VAR RETURN : Quad
00012018 ; A6+0xc a : Quad
00012018 ; A6+0x8 howmuch : integer
00012018 ; --------------------------------------------------------------------------------------
00012018 _BitShift(a : Quad ; howmuch : integer) : Quad:
00012018 4e 56 00 00 |NV | LINK.W A6,#0x0000
0001201c 48 e7 e0 00 |H | MOVEM.L D2+D1+D0,-(A7)
00012020 bf d5 | | CMPA.L (A5),A7
00012022 4e 76 |Nv | TRAPV
00012024 20 2e 00 0c | . | MOVE.L (A6+0xc),D0
00012028 22 2e 00 10 |". | MOVE.L (A6+0x10),D1
0001202c 24 2e 00 08 |$. | MOVE.L (A6+0x8),D2
00012030 67 18 |g | BEQ 0x1204a
00012032 6b 0c |k | BMI 0x12040
00012034 53 82 |S | SUBQ.L #0x1,D2
00012036 d2 81 | | ADD.L D1,D1
00012038 d1 80 | | ADDX.L D0,D0
0001203a 51 ca ff fa |Q | DBF D2,0x12036
0001203e 60 0a |` | BRA 0x1204a
00012040 46 82 |F | NOT.L D2
00012042 e2 88 | | LSR.L #0x1,D0
00012044 e2 91 | | ROXR.L #0x1,D1
00012046 51 ca ff fa |Q | DBF D2,0x12042
0001204a 2d 40 00 14 |-@ | MOVE.L D0,(A6+0x14)
0001204e 2d 41 00 18 |-A | MOVE.L D1,(A6+0x18)
00012052 4c df 00 07 |L | MOVEM.L (A7)+,D0+D1+D2
00012056 4e 5e |N^ | UNLK A6
00012058 4e 75 |Nu | RTS
0001205a ; --------------------------------------------------------------------------------------
0001205a ; ?BitField_something_()
0001205a ; --------------------------------------------------------------------------------------
0001205a _?BitField_something_():
0001205a 4e 56 00 00 |NV | LINK.W A6,#0x0000
0001205e 48 e7 e0 00 |H | MOVEM.L D2+D1+D0,-(A7)
00012062 bf d5 | | CMPA.L (A5),A7
00012064 4e 76 |Nv | TRAPV
00012066 70 40 |p@ | MOVEQ.L #0x40,D0
00012068 24 2e 00 0c |$. | MOVE.L (A6+0xc),D2
0001206c b4 80 | | CMP.L D0,D2
0001206e 65 0a |e | BCS 0x1207a
00012070 1f 3c 00 05 | < | MOVE.B #0x05,-(A7)
00012074 4e b9 00 01 07 04 |N | JSR Program.Program_Failure()
0001207a 22 2e 00 08 |". | MOVE.L (A6+0x8),D1
0001207e b2 80 | | CMP.L D0,D1
00012080 63 0a |c | BLS 0x1208c
00012082 1f 3c 00 04 | < | MOVE.B #0x04,-(A7)
00012086 4e b9 00 01 07 04 |N | JSR Program.Program_Failure()
0001208c 90 81 | | SUB.L D1,D0
0001208e b0 82 | | CMP.L D2,D0
00012090 6c 0a |l | BGE 0x1209c
00012092 1f 3c 00 03 | < | MOVE.B #0x03,-(A7)
00012096 4e b9 00 01 07 04 |N | JSR Program.Program_Failure()
0001209c 2d 6e 00 10 00 20 |-n | MOVE.L (A6+0x10),(A6+0x20)
000120a2 2d 6e 00 14 00 24 |-n $ | MOVE.L (A6+0x14),(A6+0x24)
000120a8 0c 41 00 20 | A | CMPI.W #0x0020,D1
000120ac 6e 10 |n | BGT 0x120be
000120ae 4a 81 |J | TST.L D1
000120b0 67 26 |g& | BEQ 0x120d8
000120b2 20 2e 00 1c | . | MOVE.L (A6+0x1c),D0
000120b6 ef ee 08 a1 00 20 | | BFINS.L D0,(A6+0x20),{D2:D1}
000120bc 60 1a |` | BRA 0x120d8
000120be 20 2e 00 18 | . | MOVE.L (A6+0x18),D0
000120c2 ef ee 08 a1 00 20 | | BFINS.L D0,(A6+0x20),{D2:D1}
000120c8 20 2e 00 1c | . | MOVE.L (A6+0x1c),D0
000120cc 04 01 00 20 | | SUBI.B #0x20,D1
000120d0 d4 81 | | ADD.L D1,D2
000120d2 ef ee 08 80 00 20 | | BFINS.L D0,(A6+0x20),{D2:0}
000120d8 4c df 00 07 |L | MOVEM.L (A7)+,D0+D1+D2
000120dc 4e 5e |N^ | UNLK A6
000120de 4e 75 |Nu | RTS
000120e0 ; --------------------------------------------------------------------------------------
000120e0 ; FSCALL_1034c
000120e0 ; --------------------------------------------------------------------------------------
000120e0 _FSCALL_1034c:
000120e0 4e 56 00 00 |NV | LINK.W A6,#0x0000
000120e4 48 e7 e0 00 |H | MOVEM.L D2+D1+D0,-(A7)
000120e8 bf d5 | | CMPA.L (A5),A7
000120ea 4e 76 |Nv | TRAPV
000120ec 70 40 |p@ | MOVEQ.L #0x40,D0
000120ee 24 2e 00 0c |$. | MOVE.L (A6+0xc),D2
000120f2 b4 80 | | CMP.L D0,D2
000120f4 65 0a |e | BCS 0x12100
000120f6 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
000120fa 4e b9 00 01 07 04 |N | JSR Program.Program_Failure()
00012100 22 2e 00 08 |". | MOVE.L (A6+0x8),D1
00012104 b2 80 | | CMP.L D0,D1
00012106 63 0a |c | BLS 0x12112
00012108 1f 3c 00 01 | < | MOVE.B #0x01,-(A7)
0001210c 4e b9 00 01 07 04 |N | JSR Program.Program_Failure()
00012112 90 81 | | SUB.L D1,D0
00012114 b0 82 | | CMP.L D2,D0
00012116 6c 0a |l | BGE 0x12122
00012118 1f 3c 00 00 | < | MOVE.B #0x00,-(A7)
0001211c 4e b9 00 01 07 04 |N | JSR Program.Program_Failure()
00012122 0c 41 00 20 | A | CMPI.W #0x0020,D1
00012126 6e 0e |n | BGT 0x12136
00012128 42 80 |B | CLR.L D0
0001212a 4a 81 |J | TST.L D1
0001212c 67 1a |g | BEQ 0x12148
0001212e e9 ee 18 a1 00 10 | | BFEXTU.L (A6+0x10),{D2:D1},D1
00012134 60 12 |` | BRA 0x12148
00012136 e9 ee 08 a1 00 10 | | BFEXTU.L (A6+0x10),{D2:D1},D0
0001213c 04 01 00 20 | | SUBI.B #0x20,D1
00012140 d4 81 | | ADD.L D1,D2
00012142 e9 ee 18 80 00 10 | | BFEXTU.L (A6+0x10),{D2:0},D1
00012148 2d 40 00 18 |-@ | MOVE.L D0,(A6+0x18)
0001214c 2d 41 00 1c |-A | MOVE.L D1,(A6+0x1c)
00012150 4c df 00 07 |L | MOVEM.L (A7)+,D0+D1+D2
00012154 4e 5e |N^ | UNLK A6
00012156 4e 75 |Nu | RTS
00012158 ; --------------------------------------------------------------------------------------
00012158 ; Quad2Long(a : Quad) : Long
00012158 ; Stack:
00012158 ; A6+0x10 VAR RETURN : Long
00012158 ; A6+0x8 a : Quad
00012158 ; --------------------------------------------------------------------------------------
00012158 _Quad2Long(a : Quad) : Long:
00012158 4e 56 00 00 |NV | LINK.W A6,#0x0000
0001215c bf d5 | | CMPA.L (A5),A7
0001215e 4e 76 |Nv | TRAPV
00012160 2d 6e 00 0c 00 10 |-n | MOVE.L (A6+0xc),(A6+0x10)
00012166 4e 5e |N^ | UNLK A6
00012168 4e 75 |Nu | RTS
0001216a ; --------------------------------------------------------------------------------------
0001216a ; Long2Quad(a : Long) : Quad
0001216a ; Stack:
0001216a ; A6+0xc VAR RETURN : Quad
0001216a ; A6+0x8 a : Long
0001216a ; --------------------------------------------------------------------------------------
0001216a _Long2Quad(a : Long) : Quad:
0001216a 4e 56 00 00 |NV | LINK.W A6,#0x0000
0001216e 48 e7 80 00 |H | MOVEM.L D0,-(A7)
00012172 bf d5 | | CMPA.L (A5),A7
00012174 4e 76 |Nv | TRAPV
00012176 42 80 |B | CLR.L D0
00012178 2d 6e 00 08 00 10 |-n | MOVE.L (A6+0x8),(A6+0x10)
0001217e 6a 02 |j | BPL 0x12182
00012180 46 80 |F | NOT.L D0
00012182 2d 40 00 0c |-@ | MOVE.L D0,(A6+0xc)
00012186 4c df 00 01 |L | MOVEM.L (A7)+,D0
0001218a 4e 5e |N^ | UNLK A6
0001218c 4e 75 |Nu | RTS
0001218e 00 00 00 00 | | .CONST 0x0,0x0,0x0,0x0
00012192 00 00 00 00 | | .CONST 0x0,0x0,0x0,0x0
00012196 00 00 | | .XXX[0x2]
00012198 00 00 00 00 00 00 00 00 | | .XXX[0x28]
000121a0 00 01 00 00 00 00 00 00 | |
000121a8 00 02 00 00 00 00 00 00 | |
000121b0 00 00 00 00 00 00 00 00 | |
000121b8 00 03 00 00 00 00 00 00 | |
000121c0 00 00 00 00 00 00 00 00 | | .BLANK 00[0x18]
000121d8 00 04 | | .XXX[0x2]
000121da ; --------------------------------------------------------------------------------------
000121da ; Modulus(a, b : Quad) : Quad
000121da ; Stack:
000121da ; A6+0x18 VAR RETURN : Quad
000121da ; A6+0x10 a : Quad
000121da ; A6+0x8 b : Quad
000121da ; OMSI PASCAL Function
000121da ; <LVAR 0x01c 4(w)>
000121da ; <LVAR 0x018 4(w)>
000121da ; <LVAR 0x014 4(r)>
000121da ; <LVAR 0x010 4(r)>
000121da ; <LVAR 0x00c 4(r)>
000121da ; <LVAR 0x008 4(r)>
000121da ; --------------------------------------------------------------------------------------
000121da _Modulus(a, b : Quad) : Quad:
000121da 4e 56 ff c8 |NV | LINK.W A6,#0xffc8
000121de bf d5 | | CMPA.L (A5),A7
000121e0 62 06 |b | BHI 0x121e8
000121e2 44 fc 00 02 |D | MOVE.W #0x2,CCR
000121e6 4e 76 |Nv | TRAPV
000121e8 de fc 00 38 | 8 | ADDA.W #0x38,A7
000121ec 48 e7 80 00 |H | MOVEM.L D0,-(A7)
000121f0 70 10 |p | MOVEQ.L #0x10,D0
000121f2 51 4f |QO | SUBQ.L #0x8,A7
000121f4 2f 2e 00 14 |/. | MOVE.L (A6+0x14),-(A7)
000121f8 2f 2e 00 10 |/. | MOVE.L (A6+0x10),-(A7)
000121fc 9e c0 | | SUBA.W D0,A7
000121fe 2f 2e 00 14 |/. | MOVE.L (A6+0x14),-(A7)
00012202 2f 2e 00 10 |/. | MOVE.L (A6+0x10),-(A7)
00012206 2f 2e 00 0c |/. | MOVE.L (A6+0xc),-(A7)
0001220a 2f 2e 00 08 |/. | MOVE.L (A6+0x8),-(A7)
0001220e 4e b9 00 01 1d ec |N | JSR _Divide(a, b : Quad) : Quad
00012214 de fc 00 0c | | ADDA.W #0xc,A7
00012218 2e ae 00 0c |. | MOVE.L (A6+0xc),(A7)
0001221c 2f 2e 00 08 |/. | MOVE.L (A6+0x8),-(A7)
00012220 4e b9 00 01 1d 78 |N x | JSR _Multiply(a, b : Quad) : Quad
00012226 de c0 | | ADDA.W D0,A7
00012228 4e b9 00 01 1d 3e |N > | JSR _Subtract(a, b : Quad) : Quad
0001222e de c0 | | ADDA.W D0,A7
00012230 2d 5f 00 18 |-_ | MOVE.L (A7)+,(A6+0x18)
00012234 2d 5f 00 1c |-_ | MOVE.L (A7)+,(A6+0x1c)
00012238 4c df 00 01 |L | MOVEM.L (A7)+,D0
0001223c 4e 5e |N^ | UNLK A6
0001223e 4e 75 |Nu | RTS
00012240 ; --------------------------------------------------------------------------------------
00012240 ; ?StringToInt64()
00012240 ; OMSI PASCAL Function
00012240 ; <LVAR 0x014 4(w)>
00012240 ; <LVAR 0x010 4(w)>
00012240 ; <LVAR 0x00c @ 4(r)>
00012240 ; <LVAR 0x008 4(r)>
00012240 ; <LVAR -0x003 1(rw)>
00012240 ; <LVAR -0x00e 2(rw)>
00012240 ; <LVAR -0x010 4(rw)>
00012240 ; <LVAR -0x014 4(rw)>
00012240 ; <LVAR -0x018 4(rw)>
00012240 ; <LVAR -0x01c 4(rw)>
00012240 ; <LVAR -0x020 4(rw)>
00012240 ; <LVAR -0x024 4(rw)>
00012240 ; <LVAR -0x028 4(rw)>
00012240 ; --------------------------------------------------------------------------------------
00012240 _?StringToInt64():
00012240 4e 56 ff 78 |NV x | LINK.W A6,#0xff78
00012244 bf d5 | | CMPA.L (A5),A7
00012246 62 06 |b | BHI 0x1224e
00012248 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001224c 4e 76 |Nv | TRAPV
0001224e de fc 00 60 | ` | ADDA.W #0x60,A7
00012252 48 e7 ff f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D6+D5+D4+D3+D2+D1+D0,-(A7)
00012256 43 ee ff dc |C | LEA.L (A6-0x24),A1
0001225a 45 ee ff e0 |E | LEA.L (A6-0x20),A2
0001225e 47 f9 00 01 07 04 |G | LEA.L Program.Program_Failure(),A3
00012264 49 ee ff d8 |I | LEA.L (A6-0x28),A4
00012268 74 10 |t | MOVEQ.L #0x10,D2
0001226a 76 30 |v0 | MOVEQ.L #0x30,D3
0001226c 78 0d |x | MOVEQ.L #0x0d,D4
0001226e 22 ba ff 1e |" | MOVE.L 0x1218e,(A1)
00012272 24 ba ff 1e |$ | MOVE.L 0x12192,(A2)
00012276 20 2e 00 08 | . | MOVE.L (A6+0x8),D0
0001227a 0c 80 00 00 00 02 | | CMPI.L #0x00000002,D0
00012280 65 04 |e | BCS 0x12286
00012282 b0 82 | | CMP.L D2,D0
00012284 63 08 |c | BLS 0x1228e
00012286 1f 3c 00 0b | < | MOVE.B #0x0b,-(A7)
0001228a 4e 93 |N | JSR (A3)
0001228c 54 4f |TO | ADDQ.L #0x2,A7
0001228e b0 82 | | CMP.L D2,D0
00012290 63 02 |c | BLS 0x12294
00012292 4e 4f |NO | TRAP #15
00012294 22 00 |" | MOVE.L D0,D1
00012296 e5 81 | | ASL.L #0x2,D1
00012298 41 fa fe fc |A | LEA.L 0x12196,A0
0001229c 28 b0 18 00 |( | MOVE.L (A0+D1.L),(A4)
000122a0 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
000122a4 2f 08 |/ | MOVE.L A0,-(A7)
000122a6 12 28 00 02 | ( | MOVE.B (A0+0x2),D1
000122aa 0c 01 00 2d | - | CMPI.B #0x2d,D1
000122ae 66 0a |f | BNE 0x122ba
000122b0 7a 02 |z | MOVEQ.L #0x02,D5
000122b2 1d 7c 00 01 ff fd | | | MOVE.B #0x01,(A6-0x3)
000122b8 60 06 |` | BRA 0x122c0
000122ba 7a 01 |z | MOVEQ.L #0x01,D5
000122bc 42 2e ff fd |B. | CLR.B (A6-0x3)
000122c0 51 4f |QO | SUBQ.L #0x8,A7
000122c2 2f 00 |/ | MOVE.L D0,-(A7)
000122c4 4e b9 00 01 21 6a |N !j | JSR _Long2Quad(a : Long) : Quad
000122ca 58 4f |XO | ADDQ.L #0x4,A7
000122cc 2d 5f ff e4 |-_ | MOVE.L (A7)+,(A6-0x1c)
000122d0 2d 5f ff e8 |-_ | MOVE.L (A7)+,(A6-0x18)
000122d4 2d 7a fe b8 ff ec |-z | MOVE.L 0x1218e,(A6-0x14)
000122da 2d 7a fe b6 ff f0 |-z | MOVE.L 0x12192,(A6-0x10)
000122e0 30 10 |0 | MOVE.W (A0),D0
000122e2 48 c0 |H | EXTW.L D0
000122e4 2f 00 |/ | MOVE.L D0,-(A7)
000122e6 2e 05 |. | MOVE.L D5,D7
000122e8 be 97 | | CMP.L (A7),D7
000122ea 6e 00 00 b6 |n | BGT 0x123a2
000122ee 4a 94 |J | TST.L (A4)
000122f0 67 14 |g | BEQ 0x12306
000122f2 51 4f |QO | SUBQ.L #0x8,A7
000122f4 2f 12 |/ | MOVE.L (A2),-(A7)
000122f6 2f 11 |/ | MOVE.L (A1),-(A7)
000122f8 2f 14 |/ | MOVE.L (A4),-(A7)
000122fa 4e b9 00 01 20 18 |N | JSR _BitShift(a : Quad ; howmuch : integer) : Quad
00012300 de fc 00 0c | | ADDA.W #0xc,A7
00012304 60 16 |` | BRA 0x1231c
00012306 51 4f |QO | SUBQ.L #0x8,A7
00012308 2f 12 |/ | MOVE.L (A2),-(A7)
0001230a 2f 11 |/ | MOVE.L (A1),-(A7)
0001230c 2f 2e ff e8 |/. | MOVE.L (A6-0x18),-(A7)
00012310 2f 2e ff e4 |/. | MOVE.L (A6-0x1c),-(A7)
00012314 4e b9 00 01 1d 78 |N x | JSR _Multiply(a, b : Quad) : Quad
0001231a de c2 | | ADDA.W D2,A7
0001231c 22 9f |" | MOVE.L (A7)+,(A1)
0001231e 24 9f |$ | MOVE.L (A7)+,(A2)
00012320 20 6f 00 04 | o | MOVEA.L (A7+0x4),A0
00012324 1c 30 78 01 | 0x | MOVE.B (A0+D7.L+#0x1),D6
00012328 bc 03 | | CMP.B D3,D6
0001232a 65 12 |e | BCS 0x1233e
0001232c 0c 06 00 39 | 9 | CMPI.B #0x39,D6
00012330 62 0c |b | BHI 0x1233e
00012332 42 80 |B | CLR.L D0
00012334 10 06 | | MOVE.B D6,D0
00012336 90 43 | C | SUB.W D3,D0
00012338 3d 40 ff f2 |=@ | MOVE.W D0,(A6-0xe)
0001233c 60 32 |`2 | BRA 0x12370
0001233e 0c 06 00 41 | A | CMPI.B #0x41,D6
00012342 65 10 |e | BCS 0x12354
00012344 0c 06 00 46 | F | CMPI.B #0x46,D6
00012348 62 0a |b | BHI 0x12354
0001234a 42 80 |B | CLR.L D0
0001234c 10 06 | | MOVE.B D6,D0
0001234e 04 40 00 37 | @ 7 | SUBI.W #0x0037,D0
00012352 60 e4 |` | BRA 0x12338
00012354 0c 06 00 61 | a | CMPI.B #0x61,D6
00012358 65 10 |e | BCS 0x1236a
0001235a 0c 06 00 66 | f | CMPI.B #0x66,D6
0001235e 62 0a |b | BHI 0x1236a
00012360 42 80 |B | CLR.L D0
00012362 10 06 | | MOVE.B D6,D0
00012364 04 40 00 57 | @ W | SUBI.W #0x0057,D0
00012368 60 ce |` | BRA 0x12338
0001236a 1f 04 | | MOVE.B D4,-(A7)
0001236c 4e 93 |N | JSR (A3)
0001236e 54 4f |TO | ADDQ.L #0x2,A7
00012370 42 80 |B | CLR.L D0
00012372 30 2e ff f2 |0. | MOVE.W (A6-0xe),D0
00012376 b0 ae 00 08 | | CMP.L (A6+0x8),D0
0001237a 65 06 |e | BCS 0x12382
0001237c 1f 04 | | MOVE.B D4,-(A7)
0001237e 4e 93 |N | JSR (A3)
00012380 54 4f |TO | ADDQ.L #0x2,A7
00012382 51 4f |QO | SUBQ.L #0x8,A7
00012384 2f 12 |/ | MOVE.L (A2),-(A7)
00012386 2f 11 |/ | MOVE.L (A1),-(A7)
00012388 2f 2e ff f0 |/. | MOVE.L (A6-0x10),-(A7)
0001238c 2f 2e ff ec |/. | MOVE.L (A6-0x14),-(A7)
00012390 4e b9 00 01 1d 04 |N | JSR _Add(a, b : Quad) : Quad
00012396 de c2 | | ADDA.W D2,A7
00012398 22 9f |" | MOVE.L (A7)+,(A1)
0001239a 24 9f |$ | MOVE.L (A7)+,(A2)
0001239c 52 87 |R | ADDQ.L #0x1,D7
0001239e 68 00 ff 48 |h H | BVC 0x122e8
000123a2 50 4f |PO | ADDQ.L #0x8,A7
000123a4 48 6e 00 0c |Hn | PEA.L (A6+0xc)
000123a8 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
000123ae 58 4f |XO | ADDQ.L #0x4,A7
000123b0 4a 2e ff fd |J. | TST.B (A6-0x3)
000123b4 67 12 |g | BEQ 0x123c8
000123b6 51 4f |QO | SUBQ.L #0x8,A7
000123b8 2f 12 |/ | MOVE.L (A2),-(A7)
000123ba 2f 11 |/ | MOVE.L (A1),-(A7)
000123bc 4e b9 00 01 1f b4 |N | JSR _Negate(a : Quad) : Quad
000123c2 50 4f |PO | ADDQ.L #0x8,A7
000123c4 22 9f |" | MOVE.L (A7)+,(A1)
000123c6 24 9f |$ | MOVE.L (A7)+,(A2)
000123c8 2d 51 00 10 |-Q | MOVE.L (A1),(A6+0x10)
000123cc 2d 52 00 14 |-R | MOVE.L (A2),(A6+0x14)
000123d0 4c df 1f ff |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D5+D6+D7+A0+A1+A2+A3+A4
000123d4 4e 5e |N^ | UNLK A6
000123d6 4e 75 |Nu | RTS
000123d8 ; --------------------------------------------------------------------------------------
000123d8 ; Quad2String(a : Quad; radix : Long ) : String
000123d8 ; Stack:
000123d8 ; A6+0x14 VAR RETURN : String
000123d8 ; A6+0xc a : Quad
000123d8 ; A6+0x8 radix : Long
000123d8 ; OMSI PASCAL Function
000123d8 ; <LVAR 0x014 4(w)>
000123d8 ; <LVAR 0x010 4(rw)>
000123d8 ; <LVAR 0x00c 2(r) 4(rw)>
000123d8 ; <LVAR 0x008 4(r)>
000123d8 ; <LVAR -0x002 2(rw)>
000123d8 ; <LVAR -0x004 4(w)>
000123d8 ; <LVAR -0x008 4(w)>
000123d8 ; <LVAR -0x00c 4(rw)>
000123d8 ; <LVAR -0x010 4(rw)>
000123d8 ; <LVAR -0x014 @ 4(r)>
000123d8 ; <LVAR -0x020 @ 4(r)>
000123d8 ; --------------------------------------------------------------------------------------
000123d8 _Quad2String(a : Quad; radix : Long ) : String:
000123d8 4e 56 ff 8c |NV | LINK.W A6,#0xff8c
000123dc bf d5 | | CMPA.L (A5),A7
000123de 62 06 |b | BHI 0x123e6
000123e0 44 fc 00 02 |D | MOVE.W #0x2,CCR
000123e4 4e 76 |Nv | TRAPV
000123e6 de fc 00 54 | T | ADDA.W #0x54,A7
000123ea 48 e7 ff f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D6+D5+D4+D3+D2+D1+D0,-(A7)
000123ee 43 ee 00 0c |C | LEA.L (A6+0xc),A1
000123f2 45 ee 00 10 |E | LEA.L (A6+0x10),A2
000123f6 47 ee ff e0 |G | LEA.L (A6-0x20),A3
000123fa 49 f9 00 01 0d 66 |I f | LEA.L _AppendChar(MOD b : String; a : char),A4
00012400 74 10 |t | MOVEQ.L #0x10,D2
00012402 76 0c |v | MOVEQ.L #0x0c,D3
00012404 78 09 |x | MOVEQ.L #0x09,D4
00012406 20 2e 00 08 | . | MOVE.L (A6+0x8),D0
0001240a 0c 80 00 00 00 02 | | CMPI.L #0x00000002,D0
00012410 65 04 |e | BCS 0x12416
00012412 b0 82 | | CMP.L D2,D0
00012414 63 0a |c | BLS 0x12420
00012416 1f 03 | | MOVE.B D3,-(A7)
00012418 4e b9 00 01 07 04 |N | JSR Program.Program_Failure()
0001241e 54 4f |TO | ADDQ.L #0x2,A7
00012420 48 53 |HS | PEA.L (A3)
00012422 4e b9 00 01 0c fa |N | JSR _NewString(VAR a : String)
00012428 58 4f |XO | ADDQ.L #0x4,A7
0001242a 7a 01 |z | MOVEQ.L #0x01,D5
0001242c b0 82 | | CMP.L D2,D0
0001242e 66 74 |ft | BNE 0x124a4
00012430 7c 00 || | MOVEQ.L #0x00,D6
00012432 3e 11 |> | MOVE.W (A1),D7
00012434 e0 4f | O | LSR.W #0x8,D7
00012436 e8 4f | O | LSR.W #0x4,D7
00012438 be 44 | D | CMP.W D4,D7
0001243a 63 12 |c | BLS 0x1244e
0001243c 42 80 |B | CLR.L D0
0001243e 30 07 |0 | MOVE.W D7,D0
00012440 5e 80 |^ | ADDQ.L #0x7,D0
00012442 0c 80 00 00 ff ff | | CMPI.L #0x0000ffff,D0
00012448 63 02 |c | BLS 0x1244c
0001244a 4e 4f |NO | TRAP #15
0001244c 3e 00 |> | MOVE.W D0,D7
0001244e 4a 05 |J | TST.B D5
00012450 67 06 |g | BEQ 0x12458
00012452 4a 47 |JG | TST.W D7
00012454 67 02 |g | BEQ 0x12458
00012456 7a 00 |z | MOVEQ.L #0x00,D5
00012458 4a 05 |J | TST.B D5
0001245a 67 08 |g | BEQ 0x12464
0001245c 0c 86 00 00 00 0f | | CMPI.L #0x0000000f,D6
00012462 66 1c |f | BNE 0x12480
00012464 2f 13 |/ | MOVE.L (A3),-(A7)
00012466 42 80 |B | CLR.L D0
00012468 30 07 |0 | MOVE.W D7,D0
0001246a 06 80 00 00 00 30 | 0 | ADDI.L #0x00000030,D0
00012470 0c 80 00 00 00 ff | | CMPI.L #0x000000ff,D0
00012476 63 02 |c | BLS 0x1247a
00012478 4e 4f |NO | TRAP #15
0001247a 1f 00 | | MOVE.B D0,-(A7)
0001247c 4e 94 |N | JSR (A4)
0001247e 5c 4f |\O | ADDQ.L #0x6,A7
00012480 51 4f |QO | SUBQ.L #0x8,A7
00012482 2f 12 |/ | MOVE.L (A2),-(A7)
00012484 2f 11 |/ | MOVE.L (A1),-(A7)
00012486 48 78 00 04 |Hx | PEA.L 0x4
0001248a 4e b9 00 01 20 18 |N | JSR _BitShift(a : Quad ; howmuch : integer) : Quad
00012490 de c3 | | ADDA.W D3,A7
00012492 22 9f |" | MOVE.L (A7)+,(A1)
00012494 24 9f |$ | MOVE.L (A7)+,(A2)
00012496 52 86 |R | ADDQ.L #0x1,D6
00012498 0c 86 00 00 00 0f | | CMPI.L #0x0000000f,D6
0001249e 6f 92 |o | BLE 0x12432
000124a0 60 00 01 10 |` | BRA 0x125b2
000124a4 4a 51 |JQ | TST.W (A1)
000124a6 60 1c |` | BRA 0x124c4
000124a8 51 4f 2f 12 2f 11 4e b9 |QO/ / N | .XXX[0x18]
000124b0 00 01 1f b4 50 4f 22 9f | PO" |
000124b8 24 9f 2f 13 1f 3c 00 2d |$ / < -|
000124c0 4e 94 5c 4f |N \O | .XXX[0x4]
000124c4 51 4f |QO | SUBQ.L #0x8,A7
000124c6 2f 00 |/ | MOVE.L D0,-(A7)
000124c8 4e b9 00 01 21 6a |N !j | JSR _Long2Quad(a : Long) : Quad
000124ce 58 4f |XO | ADDQ.L #0x4,A7
000124d0 2d 5f ff f0 |-_ | MOVE.L (A7)+,(A6-0x10)
000124d4 2d 5f ff f4 |-_ | MOVE.L (A7)+,(A6-0xc)
000124d8 48 6e ff ec |Hn | PEA.L (A6-0x14)
000124dc 4e b9 00 01 0c fa |N | JSR _NewString(VAR a : String)
000124e2 58 4f |XO | ADDQ.L #0x4,A7
000124e4 51 4f |QO | SUBQ.L #0x8,A7
000124e6 2f 12 |/ | MOVE.L (A2),-(A7)
000124e8 2f 11 |/ | MOVE.L (A1),-(A7)
000124ea 2f 2e ff f4 |/. | MOVE.L (A6-0xc),-(A7)
000124ee 2f 2e ff f0 |/. | MOVE.L (A6-0x10),-(A7)
000124f2 4e ba fc e6 |N | JSR _Modulus(a, b : Quad) : Quad
000124f6 de c2 | | ADDA.W D2,A7
000124f8 2d 5f ff f8 |-_ | MOVE.L (A7)+,(A6-0x8)
000124fc 2d 5f ff fc |-_ | MOVE.L (A7)+,(A6-0x4)
00012500 30 2e ff fe |0. | MOVE.W (A6-0x2),D0
00012504 b0 44 | D | CMP.W D4,D0
00012506 63 14 |c | BLS 0x1251c
00012508 42 81 |B | CLR.L D1
0001250a 32 00 |2 | MOVE.W D0,D1
0001250c 5e 81 |^ | ADDQ.L #0x7,D1
0001250e 0c 81 00 00 ff ff | | CMPI.L #0x0000ffff,D1
00012514 63 02 |c | BLS 0x12518
00012516 4e 4f |NO | TRAP #15
00012518 3d 41 ff fe |=A | MOVE.W D1,(A6-0x2)
0001251c 2f 2e ff ec |/. | MOVE.L (A6-0x14),-(A7)
00012520 42 80 |B | CLR.L D0
00012522 30 2e ff fe |0. | MOVE.W (A6-0x2),D0
00012526 06 80 00 00 00 30 | 0 | ADDI.L #0x00000030,D0
0001252c 0c 80 00 00 00 ff | | CMPI.L #0x000000ff,D0
00012532 63 02 |c | BLS 0x12536
00012534 4e 4f |NO | TRAP #15
00012536 1f 00 | | MOVE.B D0,-(A7)
00012538 4e 94 |N | JSR (A4)
0001253a 55 4f |UO | SUBQ.L #0x2,A7
0001253c 2f 12 |/ | MOVE.L (A2),-(A7)
0001253e 2f 11 |/ | MOVE.L (A1),-(A7)
00012540 2f 2e ff f4 |/. | MOVE.L (A6-0xc),-(A7)
00012544 2f 2e ff f0 |/. | MOVE.L (A6-0x10),-(A7)
00012548 4e b9 00 01 1d ec |N | JSR _Divide(a, b : Quad) : Quad
0001254e de c2 | | ADDA.W D2,A7
00012550 22 9f |" | MOVE.L (A7)+,(A1)
00012552 24 97 |$ | MOVE.L (A7),(A2)
00012554 54 4f |TO | ADDQ.L #0x2,A7
00012556 2f 12 |/ | MOVE.L (A2),-(A7)
00012558 2f 11 |/ | MOVE.L (A1),-(A7)
0001255a 2f 3a fc 36 |/: 6 | MOVE.L 0x12192,-(A7)
0001255e 2f 3a fc 2e |/: . | MOVE.L 0x1218e,-(A7)
00012562 4e b9 00 01 1f 02 |N | JSR _IsEqual(a, b : Quad) : Bool
00012568 de c2 | | ADDA.W D2,A7
0001256a 4a 1f |J | TST.B (A7)+
0001256c 67 00 ff 76 |g v | BEQ 0x124e4
00012570 20 6e ff ec | n | MOVEA.L (A6-0x14),A0
00012574 2f 08 |/ | MOVE.L A0,-(A7)
00012576 30 10 |0 | MOVE.W (A0),D0
00012578 48 c0 |H | EXTW.L D0
0001257a 2c 00 |, | MOVE.L D0,D6
0001257c 0c 86 00 00 00 01 | | CMPI.L #0x00000001,D6
00012582 6d 20 |m | BLT 0x125a4
00012584 2f 13 |/ | MOVE.L (A3),-(A7)
00012586 20 06 | | MOVE.L D6,D0
00012588 53 80 |S | SUBQ.L #0x1,D0
0001258a 0c 80 00 00 00 7d | } | CMPI.L #0x0000007d,D0
00012590 63 02 |c | BLS 0x12594
00012592 4e 4f |NO | TRAP #15
00012594 20 6f 00 04 | o | MOVEA.L (A7+0x4),A0
00012598 1f 30 08 02 | 0 | MOVE.B (A0+D0.L+#0x2),-(A7)
0001259c 4e 94 |N | JSR (A4)
0001259e 5c 4f |\O | ADDQ.L #0x6,A7
000125a0 53 86 |S | SUBQ.L #0x1,D6
000125a2 68 d8 |h | BVC 0x1257c
000125a4 58 4f |XO | ADDQ.L #0x4,A7
000125a6 48 6e ff ec |Hn | PEA.L (A6-0x14)
000125aa 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
000125b0 58 4f |XO | ADDQ.L #0x4,A7
000125b2 2d 53 00 14 |-S | MOVE.L (A3),(A6+0x14)
000125b6 4c df 1f ff |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D5+D6+D7+A0+A1+A2+A3+A4
000125ba 4e 5e |N^ | UNLK A6
000125bc 4e 75 |Nu | RTS
000125be ; --------------------------------------------------------------------------------------
000125be ; MovStringTail(Base, Len, Ptr, Delta)
000125be ; --------------------------------------------------------------------------------------
000125be _MovStringTail(Base, Len, Ptr, Delta):
000125be 4e 56 00 00 |NV | LINK.W A6,#0x0000
000125c2 48 e7 f0 c0 |H | MOVEM.L A1+A0+D3+D2+D1+D0,-(A7)
000125c6 bf d5 | | CMPA.L (A5),A7
000125c8 4e 76 |Nv | TRAPV
000125ca 20 6e 00 14 | n | MOVEA.L (A6+0x14),A0
000125ce 53 88 |S | SUBQ.L #0x1,A0
000125d0 20 2e 00 10 | . | MOVE.L (A6+0x10),D0
000125d4 22 2e 00 0c |". | MOVE.L (A6+0xc),D1
000125d8 24 2e 00 08 |$. | MOVE.L (A6+0x8),D2
000125dc 67 2a |g* | BEQ 0x12608
000125de 26 00 |& | MOVE.L D0,D3
000125e0 96 81 | | SUB.L D1,D3
000125e2 52 83 |R | ADDQ.L #0x1,D3
000125e4 6f 22 |o" | BLE 0x12608
000125e6 53 83 |S | SUBQ.L #0x1,D3
000125e8 44 82 |D | NEG.L D2
000125ea 6a 0e |j | BPL 0x125fa
000125ec d1 c1 | | ADDA.L D1,A0
000125ee 43 f0 28 00 |C ( | LEA.L (A0+D2.L),A1
000125f2 12 d8 | | MOVE.B (A0)+,(A1)+
000125f4 51 cb ff fc |Q | DBF D3,0x125f2
000125f8 60 0e |` | BRA 0x12608
000125fa 41 f0 08 01 |A | LEA.L (A0+D0.L+#0x1),A0
000125fe 43 f0 28 00 |C ( | LEA.L (A0+D2.L),A1
00012602 13 20 | | MOVE.B -(A0),-(A1)
00012604 51 cb ff fc |Q | DBF D3,0x12602
00012608 4c df 03 0f |L | MOVEM.L (A7)+,D0+D1+D2+D3+A0+A1
0001260c 4e 5e |N^ | UNLK A6
0001260e 4e 75 |Nu | RTS
00012610 ; --------------------------------------------------------------------------------------
00012610 ; Lba2Chs(lba : W; VAR cyl : W ; VAR hd_sec : W)
00012610 ; Stack:
00012610 ; A6+0x10 lba : W
00012610 ; A6+0xc VAR cyl : W
00012610 ; A6+0x8 VAR hd_sec : W
00012610 ; OMSI PASCAL Function
00012610 ; <LVAR 0x010 2(r)>
00012610 ; <LVAR 0x00c 4(r)>
00012610 ; <LVAR 0x008 4(r)>
00012610 ; --------------------------------------------------------------------------------------
00012610 _Lba2Chs(lba : W; VAR cyl : W ; VAR hd_sec : W):
00012610 4e 56 ff c6 |NV | LINK.W A6,#0xffc6
00012614 bf d5 | | CMPA.L (A5),A7
00012616 62 06 |b | BHI 0x1261e
00012618 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001261c 4e 76 |Nv | TRAPV
0001261e de fc 00 2c | , | ADDA.W #0x2c,A7
00012622 48 e7 df 80 |H | MOVEM.L A0+D7+D6+D5+D4+D3+D1+D0,-(A7)
00012626 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
0001262a 42 80 |B | CLR.L D0
0001262c 30 2e 00 10 |0. | MOVE.W (A6+0x10),D0
00012630 80 f9 00 01 00 0c | | DIVU.W sec_per_cyl,D0
00012636 30 80 |0 | MOVE.W D0,(A0)
00012638 48 40 |H@ | SWAP.W D0
0001263a 42 81 |B | CLR.L D1
0001263c 32 00 |2 | MOVE.W D0,D1
0001263e 2a 01 |* | MOVE.L D1,D5
00012640 28 05 |( | MOVE.L D5,D4
00012642 42 83 |B | CLR.L D3
00012644 36 39 00 01 00 0a |69 | MOVE.W sec_per_track,D3
0001264a 4e b9 00 01 08 16 |N | JSR _?divu_d3_d4
00012650 2e 04 |. | MOVE.L D4,D7
00012652 e3 83 | | ASL.L #0x1,D3
00012654 2c 03 |, | MOVE.L D3,D6
00012656 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001265a 20 07 | | MOVE.L D7,D0
0001265c e1 80 | | ASL.L #0x8,D0
0001265e d0 86 | | ADD.L D6,D0
00012660 0c 80 00 00 ff ff | | CMPI.L #0x0000ffff,D0
00012666 63 02 |c | BLS 0x1266a
00012668 4e 4f |NO | TRAP #15
0001266a 30 80 |0 | MOVE.W D0,(A0)
0001266c 4c df 01 fb |L | MOVEM.L (A7)+,D0+D1+D3+D4+D5+D6+D7+A0
00012670 4e 5e |N^ | UNLK A6
00012672 4e 75 |Nu | RTS
00012674 ; --------------------------------------------------------------------------------------
00012674 ; OMSI PASCAL Function
00012674 ; <LVAR 0x008 1(r)>
00012674 ; --------------------------------------------------------------------------------------
00012674 4e 56 ff cc |NV | LINK.W A6,#0xffcc
00012678 bf d5 | | CMPA.L (A5),A7
0001267a 62 06 |b | BHI 0x12682
0001267c 44 fc 00 02 |D | MOVE.W #0x2,CCR
00012680 4e 76 |Nv | TRAPV
00012682 de fc 00 32 | 2 | ADDA.W #0x32,A7
00012686 48 e7 f0 f0 |H | MOVEM.L A3+A2+A1+A0+D3+D2+D1+D0,-(A7)
0001268a 45 ec 00 0c |E | LEA.L (A4+0xc),A2
0001268e 47 ec 00 90 |G | LEA.L (A4+0x90),A3
00012692 74 0a |t | MOVEQ.L #0x0a,D2
00012694 76 02 |v | MOVEQ.L #0x02,D3
00012696 42 80 |B | CLR.L D0
00012698 30 2c 00 b8 |0, | MOVE.W (A4+0xb8),D0
0001269c d0 ac 00 96 | | ADD.L (A4+0x96),D0
000126a0 0c 80 00 00 ff ff | | CMPI.L #0x0000ffff,D0
000126a6 63 02 |c | BLS 0x126aa
000126a8 4e 4f |NO | TRAP #15
000126aa 3f 00 |? | MOVE.W D0,-(A7)
000126ac 48 6c 00 8c |Hl | PEA.L (A4+0x8c)
000126b0 48 6c 00 8e |Hl | PEA.L (A4+0x8e)
000126b4 4e ba ff 5a |N Z | JSR _Lba2Chs(lba : W; VAR cyl : W ; VAR hd_sec : W)
000126b8 de c2 | | ADDA.W D2,A7
000126ba 39 7c 01 00 00 02 |9| | MOVE.W #0x100,(A4+0x2)
000126c0 42 6c 00 04 |Bl | CLR.W (A4+0x4)
000126c4 39 43 00 06 |9C | MOVE.W D3,(A4+0x6)
000126c8 42 6c 00 08 |Bl | CLR.W (A4+0x8)
000126cc 39 7c 00 80 00 0a |9| | MOVE.W #0x80,(A4+0xa)
000126d2 30 39 00 01 00 08 |09 | MOVE.W mounted_drive,D0
000126d8 e1 40 | @ | ASL.W #0x8,D0
000126da 12 2e 00 08 | . | MOVE.B (A6+0x8),D1
000126de 48 81 |H | EXTB.W D1
000126e0 d0 41 | A | ADD.W D1,D0
000126e2 34 80 |4 | MOVE.W D0,(A2)
000126e4 39 6c 00 8c 00 0e |9l | MOVE.W (A4+0x8c),(A4+0xe)
000126ea 39 6c 00 8e 00 10 |9l | MOVE.W (A4+0x8e),(A4+0x10)
000126f0 42 93 |B | CLR.L (A3)
000126f2 19 41 00 94 | A | MOVE.B D1,(A4+0x94)
000126f6 48 6c 00 02 |Hl | PEA.L (A4+0x2)
000126fa 2f 2c 00 9e |/, | MOVE.L (A4+0x9e),-(A7)
000126fe 42 67 |Bg | CLR.W -(A7)
00012700 4e b9 00 01 02 04 |N | JSR KC02_Start_Disk_IO(desc : Pointer; dst : Pointer ; c : W)
00012706 de c2 | | ADDA.W D2,A7
00012708 20 6c 00 ac | l | MOVEA.L (A4+0xac),A0
0001270c 42 67 |Bg | CLR.W -(A7)
0001270e 48 50 |HP | PEA.L (A0)
00012710 4e b9 00 01 02 06 |N | JSR KC03_Wait_Disk_IO(a : W; VAR status : Byte)
00012716 5c 4f |\O | ADDQ.L #0x6,A7
00012718 4a 10 |J | TST.B (A0)
0001271a 66 00 00 8e |f | BNE 0x127aa
0001271e 39 7c 00 80 00 0a |9| | MOVE.W #0x80,(A4+0xa)
00012724 30 12 |0 | MOVE.W (A2),D0
00012726 02 40 ff 00 | @ | ANDI.W #0xff00,D0
0001272a 42 81 |B | CLR.L D1
0001272c 32 00 |2 | MOVE.W D0,D1
0001272e 52 81 |R | ADDQ.L #0x1,D1
00012730 0c 81 00 00 ff ff | | CMPI.L #0x0000ffff,D1
00012736 63 02 |c | BLS 0x1273a
00012738 4e 4f |NO | TRAP #15
0001273a 34 81 |4 | MOVE.W D1,(A2)
0001273c 48 6c 00 02 |Hl | PEA.L (A4+0x2)
00012740 43 ec 00 12 |C | LEA.L (A4+0x12),A1
00012744 2f 09 |/ | MOVE.L A1,-(A7)
00012746 42 67 |Bg | CLR.W -(A7)
00012748 4e b9 00 01 02 04 |N | JSR KC02_Start_Disk_IO(desc : Pointer; dst : Pointer ; c : W)
0001274e 50 4f |PO | ADDQ.L #0x8,A7
00012750 42 57 |BW | CLR.W (A7)
00012752 48 54 |HT | PEA.L (A4)
00012754 4e b9 00 01 02 06 |N | JSR KC03_Wait_Disk_IO(a : W; VAR status : Byte)
0001275a 5c 4f |\O | ADDQ.L #0x6,A7
0001275c 4a 14 |J | TST.B (A4)
0001275e 66 0c |f | BNE 0x1276c
00012760 48 78 00 01 |Hx | PEA.L 0x1
00012764 4e b9 00 01 02 20 |N | JSR KC10_Panic(code : Long)
0001276a 58 4f |XO | ADDQ.L #0x4,A7
0001276c 42 27 |B' | CLR.B -(A7)
0001276e 43 ec 00 12 |C | LEA.L (A4+0x12),A1
00012772 2f 09 |/ | MOVE.L A1,-(A7)
00012774 4e b9 00 01 44 e6 |N D | JSR _Write_ERROR_LOG(VAR a : Bool; MOD b : Pointer)
0001277a 5c 4f |\O | ADDQ.L #0x6,A7
0001277c 20 13 | | MOVE.L (A3),D0
0001277e b0 82 | | CMP.L D2,D0
00012780 6d 28 |m( | BLT 0x127aa
00012782 12 2c 00 94 | , | MOVE.B (A4+0x94),D1
00012786 b2 03 | | CMP.B D3,D1
00012788 66 20 |f | BNE 0x127aa
0001278a 0c 80 00 00 00 0f | | CMPI.L #0x0000000f,D0
00012790 6c 0c |l | BGE 0x1279e
00012792 30 39 00 01 00 08 |09 | MOVE.W mounted_drive,D0
00012798 e1 40 | @ | ASL.W #0x8,D0
0001279a 5c 40 |\@ | ADDQ.W #0x6,D0
0001279c 60 0a |` | BRA 0x127a8
0001279e 30 39 00 01 00 08 |09 | MOVE.W mounted_drive,D0
000127a4 e1 40 | @ | ASL.W #0x8,D0
000127a6 5a 40 |Z@ | ADDQ.W #0x5,D0
000127a8 34 80 |4 | MOVE.W D0,(A2)
000127aa 52 93 |R | ADDQ.L #0x1,(A3)
000127ac 4a 10 |J | TST.B (A0)
000127ae 66 0c |f | BNE 0x127bc
000127b0 20 13 | | MOVE.L (A3),D0
000127b2 0c 80 00 00 00 14 | | CMPI.L #0x00000014,D0
000127b8 66 00 ff 3c |f < | BNE 0x126f6
000127bc 4c df 0f 0f |L | MOVEM.L (A7)+,D0+D1+D2+D3+A0+A1+A2+A3
000127c0 4e 5e |N^ | UNLK A6
000127c2 4e 75 |Nu | RTS
000127c4 ; --------------------------------------------------------------------------------------
000127c4 ; RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
000127c4 ; Stack:
000127c4 ; A6+0x16 oper : B
000127c4 ; A6+0x14 lba : Word
000127c4 ; A6+0x10 cnt : L
000127c4 ; A6+0xc ptr : Pointer
000127c4 ; A6+0x8 VAR status : B
000127c4 ; OMSI PASCAL Function
000127c4 ; <LVAR 0x016 1(r)>
000127c4 ; <LVAR 0x014 2(r)>
000127c4 ; <LVAR 0x010 4(r)>
000127c4 ; <LVAR 0x00c 4(r)>
000127c4 ; <LVAR 0x008 4(r)>
000127c4 ; <LVAR -0x006 4(w)>
000127c4 ; <LVAR -0x00e 4(rw)>
000127c4 ; <LVAR -0x010 1(rw)>
000127c4 ; <LVAR -0x014 4(rw)>
000127c4 ; <LVAR -0x016 @ 2(r)>
000127c4 ; <LVAR -0x018 @ 2(r)>
000127c4 ; <LVAR -0x092 @>
000127c4 ; <LVAR -0x094 2(w)>
000127c4 ; <LVAR -0x096 2(w)>
000127c4 ; <LVAR -0x098 2(rw)>
000127c4 ; <LVAR -0x09a 2(w)>
000127c4 ; <LVAR -0x09c 2(r)>
000127c4 ; <LVAR -0x09e 2(w)>
000127c4 ; <LVAR -0x0a0 2(r)>
000127c4 ; <LVAR -0x0a2 @ 2(rw)>
000127c4 ; <LVAR -0x0a4 @ 1(r)>
000127c4 ; --------------------------------------------------------------------------------------
000127c4 _RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B):
000127c4 4e 56 ff 1e |NV | LINK.W A6,#0xff1e
000127c8 bf d5 | | CMPA.L (A5),A7
000127ca 62 06 |b | BHI 0x127d2
000127cc 44 fc 00 02 |D | MOVE.W #0x2,CCR
000127d0 4e 76 |Nv | TRAPV
000127d2 de fc 00 3e | > | ADDA.W #0x3e,A7
000127d6 48 e7 f9 f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D4+D3+D2+D1+D0,-(A7)
000127da 43 ee 00 16 |C | LEA.L (A6+0x16),A1
000127de 45 ee ff 5e |E ^ | LEA.L (A6-0xa2),A2
000127e2 47 ee ff 68 |G h | LEA.L (A6-0x98),A3
000127e6 74 02 |t | MOVEQ.L #0x02,D2
000127e8 76 0a |v | MOVEQ.L #0x0a,D3
000127ea 78 13 |x | MOVEQ.L #0x13,D4
000127ec 55 4f |UO | SUBQ.L #0x2,A7
000127ee 4e b9 00 01 af d0 |N | JSR _Is_machine_type_one_or_three() : Bool
000127f4 4a 1f |J | TST.B (A7)+
000127f6 67 58 |gX | BEQ 0x12850
000127f8 10 11 | | MOVE.B (A1),D0
000127fa b0 02 | | CMP.B D2,D0
000127fc 67 06 |g | BEQ 0x12804
000127fe 0c 00 00 03 | | CMPI.B #0x03,D0
00012802 66 34 |f4 | BNE 0x12838
00012804 2d 6e 00 0c ff fa |-n | MOVE.L (A6+0xc),(A6-0x6)
0001280a 42 ae ff f2 |B | CLR.L (A6-0xe)
0001280e 2e 2e 00 10 |.. | MOVE.L (A6+0x10),D7
00012812 be ae ff f2 | | CMP.L (A6-0xe),D7
00012816 67 1a |g | BEQ 0x12832
00012818 1f 11 | | MOVE.B (A1),-(A7)
0001281a 49 ee ff 5c |I \ | LEA.L (A6-0xa4),A4
0001281e 4e ba fe 54 |N T | JSR 0x12674
00012822 54 4f |TO | ADDQ.L #0x2,A7
00012824 52 ae ff f2 |R | ADDQ.L #0x1,(A6-0xe)
00012828 06 ae 00 00 04 00 ff fa | | ADDI.L #0x00000400,(A6-0x6)
00012830 60 e0 |` | BRA 0x12812
00012832 60 00 01 58 |` X | BRA 0x1298c
00012836 60 18 |` | .XXX[0x2]
00012838 32 12 |2 | MOVE.W (A2),D1
0001283a 02 41 fe 00 | A | ANDI.W #0xfe00,D1
0001283e 67 10 |g | BEQ 0x12850
00012840 b0 04 | | CMP.B D4,D0
00012842 67 0c |g | BEQ 0x12850
00012844 48 78 00 63 |Hx c | PEA.L 0x63
00012848 4e b9 00 01 02 20 |N | JSR KC10_Panic(code : Long)
0001284e 58 4f |XO | ADDQ.L #0x4,A7
00012850 3f 2e 00 14 |?. | MOVE.W (A6+0x14),-(A7)
00012854 48 6e ff e8 |Hn | PEA.L (A6-0x18)
00012858 48 6e ff ea |Hn | PEA.L (A6-0x16)
0001285c 4e ba fd b2 |N | JSR _Lba2Chs(lba : W; VAR cyl : W ; VAR hd_sec : W)
00012860 de c3 | | ADDA.W D3,A7
00012862 20 2e 00 10 | . | MOVE.L (A6+0x10),D0
00012866 e1 80 | | ASL.L #0x8,D0
00012868 0c 80 00 00 ff ff | | CMPI.L #0x0000ffff,D0
0001286e 63 02 |c | BLS 0x12872
00012870 4e 4f |NO | TRAP #15
00012872 34 80 |4 | MOVE.W D0,(A2)
00012874 42 6e ff 60 |Bn ` | CLR.W (A6-0xa0)
00012878 3d 42 ff 62 |=B b | MOVE.W D2,(A6-0x9e)
0001287c 42 6e ff 64 |Bn d | CLR.W (A6-0x9c)
00012880 3d 7c 00 80 ff 66 |=| f | MOVE.W #0x80,(A6-0x9a)
00012886 3d 6e ff e8 ff 6a |=n j | MOVE.W (A6-0x18),(A6-0x96)
0001288c 3d 6e ff ea ff 6c |=n l | MOVE.W (A6-0x16),(A6-0x94)
00012892 10 11 | | MOVE.B (A1),D0
00012894 b0 04 | | CMP.B D4,D0
00012896 66 16 |f | BNE 0x128ae
00012898 30 39 00 01 00 08 |09 | MOVE.W mounted_drive,D0
0001289e e1 40 | @ | ASL.W #0x8,D0
000128a0 54 40 |T@ | ADDQ.W #0x2,D0
000128a2 36 80 |6 | MOVE.W D0,(A3)
000128a4 48 52 |HR | PEA.L (A2)
000128a6 4e b9 00 01 02 1e |N | JSR KC0f_ReInit
000128ac 58 4f |XO | ADDQ.L #0x4,A7
000128ae 1d 51 ff f0 | Q | MOVE.B (A1),(A6-0x10)
000128b2 42 ae ff ec |B | CLR.L (A6-0x14)
000128b6 30 39 00 01 00 08 |09 | MOVE.W mounted_drive,D0
000128bc e1 40 | @ | ASL.W #0x8,D0
000128be 12 2e ff f0 | . | MOVE.B (A6-0x10),D1
000128c2 48 81 |H | EXTB.W D1
000128c4 d2 40 | @ | ADD.W D0,D1
000128c6 36 81 |6 | MOVE.W D1,(A3)
000128c8 48 52 |HR | PEA.L (A2)
000128ca 2f 2e 00 0c |/. | MOVE.L (A6+0xc),-(A7)
000128ce 42 67 |Bg | CLR.W -(A7)
000128d0 4e b9 00 01 02 04 |N | JSR KC02_Start_Disk_IO(desc : Pointer; dst : Pointer ; c : W)
000128d6 de c3 | | ADDA.W D3,A7
000128d8 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
000128dc 42 67 |Bg | CLR.W -(A7)
000128de 48 50 |HP | PEA.L (A0)
000128e0 4e b9 00 01 02 06 |N | JSR KC03_Wait_Disk_IO(a : W; VAR status : Byte)
000128e6 5c 4f |\O | ADDQ.L #0x6,A7
000128e8 4a 10 |J | TST.B (A0)
000128ea 66 00 00 86 |f | BNE 0x12972
000128ee 3d 7c 00 80 ff 66 |=| f | MOVE.W #0x80,(A6-0x9a)
000128f4 30 13 |0 | MOVE.W (A3),D0
000128f6 02 40 ff 00 | @ | ANDI.W #0xff00,D0
000128fa 42 81 |B | CLR.L D1
000128fc 32 00 |2 | MOVE.W D0,D1
000128fe 52 81 |R | ADDQ.L #0x1,D1
00012900 0c 81 00 00 ff ff | | CMPI.L #0x0000ffff,D1
00012906 63 02 |c | BLS 0x1290a
00012908 4e 4f |NO | TRAP #15
0001290a 36 81 |6 | MOVE.W D1,(A3)
0001290c 48 52 |HR | PEA.L (A2)
0001290e 41 ee ff 6e |A n | LEA.L (A6-0x92),A0
00012912 2f 08 |/ | MOVE.L A0,-(A7)
00012914 42 67 |Bg | CLR.W -(A7)
00012916 4e b9 00 01 02 04 |N | JSR KC02_Start_Disk_IO(desc : Pointer; dst : Pointer ; c : W)
0001291c 50 4f |PO | ADDQ.L #0x8,A7
0001291e 42 57 |BW | CLR.W (A7)
00012920 48 6e ff 5c |Hn \ | PEA.L (A6-0xa4)
00012924 4e b9 00 01 02 06 |N | JSR KC03_Wait_Disk_IO(a : W; VAR status : Byte)
0001292a 5c 4f |\O | ADDQ.L #0x6,A7
0001292c 4a 2e ff 5c |J. \ | TST.B (A6-0xa4)
00012930 66 0c |f | BNE 0x1293e
00012932 48 78 00 01 |Hx | PEA.L 0x1
00012936 4e b9 00 01 02 20 |N | JSR KC10_Panic(code : Long)
0001293c 58 4f |XO | ADDQ.L #0x4,A7
0001293e 42 27 |B' | CLR.B -(A7)
00012940 41 ee ff 6e |A n | LEA.L (A6-0x92),A0
00012944 2f 08 |/ | MOVE.L A0,-(A7)
00012946 4e b9 00 01 44 e6 |N D | JSR _Write_ERROR_LOG(VAR a : Bool; MOD b : Pointer)
0001294c 5c 4f |\O | ADDQ.L #0x6,A7
0001294e 20 2e ff ec | . | MOVE.L (A6-0x14),D0
00012952 b0 83 | | CMP.L D3,D0
00012954 6d 1c |m | BLT 0x12972
00012956 12 11 | | MOVE.B (A1),D1
00012958 b2 02 | | CMP.B D2,D1
0001295a 66 16 |f | BNE 0x12972
0001295c 0c 80 00 00 00 0f | | CMPI.L #0x0000000f,D0
00012962 6c 08 |l | BGE 0x1296c
00012964 1d 7c 00 06 ff f0 | | | MOVE.B #0x06,(A6-0x10)
0001296a 60 06 |` | BRA 0x12972
0001296c 1d 7c 00 05 ff f0 | | | MOVE.B #0x05,(A6-0x10)
00012972 52 ae ff ec |R | ADDQ.L #0x1,(A6-0x14)
00012976 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001297a 4a 10 |J | TST.B (A0)
0001297c 66 0e |f | BNE 0x1298c
0001297e 20 2e ff ec | . | MOVE.L (A6-0x14),D0
00012982 0c 80 00 00 00 14 | | CMPI.L #0x00000014,D0
00012988 66 00 ff 2c |f , | BNE 0x128b6
0001298c 4c df 1f 9f |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D7+A0+A1+A2+A3+A4
00012990 4e 5e |N^ | UNLK A6
00012992 4e 75 |Nu | RTS
00012994 ; --------------------------------------------------------------------------------------
00012994 ; ReadWords(lba : W; offset : W; ptr : L; nwords : W; VAR status : B)
00012994 ; Stack:
00012994 ; A6+0x14 lba : W
00012994 ; A6+0x12 offset : W
00012994 ; A6+0xe ptr : L
00012994 ; A6+0xc nwords : W
00012994 ; A6+0x8 VAR status : B
00012994 ; OMSI PASCAL Function
00012994 ; <LVAR 0x014 2(r)>
00012994 ; <LVAR 0x012 2(r)>
00012994 ; <LVAR 0x00e 4(r)>
00012994 ; <LVAR 0x00c 2(r)>
00012994 ; <LVAR 0x008 4(r)>
00012994 ; <LVAR -0x00e @ 4(rw)>
00012994 ; --------------------------------------------------------------------------------------
00012994 _ReadWords(lba : W; offset : W; ptr : L; nwords : W; VAR status : B):
00012994 4e 56 ff b8 |NV | LINK.W A6,#0xffb8
00012998 bf d5 | | CMPA.L (A5),A7
0001299a 62 06 |b | BHI 0x129a2
0001299c 44 fc 00 02 |D | MOVE.W #0x2,CCR
000129a0 4e 76 |Nv | TRAPV
000129a2 de fc 00 3a | : | ADDA.W #0x3a,A7
000129a6 48 e7 e1 e8 |H | MOVEM.L A4+A2+A1+A0+D7+D2+D1+D0,-(A7)
000129aa 43 ee ff f2 |C | LEA.L (A6-0xe),A1
000129ae 45 ee 00 12 |E | LEA.L (A6+0x12),A2
000129b2 34 3c 02 00 |4< | MOVE.W #0x200,D2
000129b6 30 2e 00 0c |0. | MOVE.W (A6+0xc),D0
000129ba b0 42 | B | CMP.W D2,D0
000129bc 67 10 |g | BEQ 0x129ce
000129be 48 51 |HQ | PEA.L (A1)
000129c0 48 78 04 00 |Hx | PEA.L 0x400
000129c4 4e b9 00 01 08 56 |N V | JSR _Malloc1(length : Long) : Pointer
000129ca 50 4f |PO | ADDQ.L #0x8,A7
000129cc 60 04 |` | BRA 0x129d2
000129ce 22 ae 00 0e |" | MOVE.L (A6+0xe),(A1)
000129d2 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
000129d6 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
000129da 3f 2e 00 14 |?. | MOVE.W (A6+0x14),-(A7)
000129de 48 78 00 01 |Hx | PEA.L 0x1
000129e2 2f 11 |/ | MOVE.L (A1),-(A7)
000129e4 48 50 |HP | PEA.L (A0)
000129e6 4e ba fd dc |N | JSR _RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
000129ea de fc 00 10 | | ADDA.W #0x10,A7
000129ee 4a 10 |J | TST.B (A0)
000129f0 67 4a |gJ | BEQ 0x12a3c
000129f2 b0 42 | B | CMP.W D2,D0
000129f4 67 46 |gF | BEQ 0x12a3c
000129f6 28 6e 00 0e |(n | MOVEA.L (A6+0xe),A4
000129fa d0 52 | R | ADD.W (A2),D0
000129fc 53 40 |S@ | SUBQ.W #0x1,D0
000129fe 48 c0 |H | EXTW.L D0
00012a00 2f 00 |/ | MOVE.L D0,-(A7)
00012a02 30 12 |0 | MOVE.W (A2),D0
00012a04 48 c0 |H | EXTW.L D0
00012a06 2e 00 |. | MOVE.L D0,D7
00012a08 be 97 | | CMP.L (A7),D7
00012a0a 6e 2e |n. | BGT 0x12a3a
00012a0c 30 12 |0 | MOVE.W (A2),D0
00012a0e 48 c0 |H | EXTW.L D0
00012a10 44 80 |D | NEG.L D0
00012a12 d0 87 | | ADD.L D7,D0
00012a14 0c 80 00 00 01 ff | | CMPI.L #0x000001ff,D0
00012a1a 63 02 |c | BLS 0x12a1e
00012a1c 4e 4f |NO | TRAP #15
00012a1e e3 80 | | ASL.L #0x1,D0
00012a20 20 51 | Q | MOVEA.L (A1),A0
00012a22 0c 87 00 00 01 ff | | CMPI.L #0x000001ff,D7
00012a28 63 02 |c | BLS 0x12a2c
00012a2a 4e 4f |NO | TRAP #15
00012a2c 22 07 |" | MOVE.L D7,D1
00012a2e e3 81 | | ASL.L #0x1,D1
00012a30 39 b0 18 00 08 00 |9 | MOVE.W (A0+D1.L),(A4+D0.L)
00012a36 52 87 |R | ADDQ.L #0x1,D7
00012a38 68 ce |h | BVC 0x12a08
00012a3a 58 4f |XO | ADDQ.L #0x4,A7
00012a3c 30 2e 00 0c |0. | MOVE.W (A6+0xc),D0
00012a40 b0 42 | B | CMP.W D2,D0
00012a42 67 0e |g | BEQ 0x12a52
00012a44 48 51 |HQ | PEA.L (A1)
00012a46 48 78 04 00 |Hx | PEA.L 0x400
00012a4a 4e b9 00 01 08 fa |N | JSR _Free2(a : Pointer; b : Long)
00012a50 50 4f |PO | ADDQ.L #0x8,A7
00012a52 4c df 17 87 |L | MOVEM.L (A7)+,D0+D1+D2+D7+A0+A1+A2+A4
00012a56 4e 5e |N^ | UNLK A6
00012a58 4e 75 |Nu | RTS
00012a5a ; --------------------------------------------------------------------------------------
00012a5a ; WriteWords(lba : W; offset : W; ptr : L; nwords : W; VAR status : B)
00012a5a ; Stack:
00012a5a ; A6+0x14 lba : W
00012a5a ; A6+0x12 offset : W
00012a5a ; A6+0xe ptr : L
00012a5a ; A6+0xc nwords : W
00012a5a ; A6+0x8 VAR status : B
00012a5a ; OMSI PASCAL Function
00012a5a ; <LVAR 0x014 2(r)>
00012a5a ; <LVAR 0x012 2(r)>
00012a5a ; <LVAR 0x00e 4(r)>
00012a5a ; <LVAR 0x00c 2(r)>
00012a5a ; <LVAR 0x008 4(r)>
00012a5a ; <LVAR -0x00a @ 4(rw)>
00012a5a ; --------------------------------------------------------------------------------------
00012a5a _WriteWords(lba : W; offset : W; ptr : L; nwords : W; VAR status : B):
00012a5a 4e 56 ff b6 |NV | LINK.W A6,#0xffb6
00012a5e bf d5 | | CMPA.L (A5),A7
00012a60 62 06 |b | BHI 0x12a68
00012a62 44 fc 00 02 |D | MOVE.W #0x2,CCR
00012a66 4e 76 |Nv | TRAPV
00012a68 de fc 00 3c | < | ADDA.W #0x3c,A7
00012a6c 48 e7 e1 f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D2+D1+D0,-(A7)
00012a70 43 ee ff f6 |C | LEA.L (A6-0xa),A1
00012a74 45 ee 00 0c |E | LEA.L (A6+0xc),A2
00012a78 47 ee 00 12 |G | LEA.L (A6+0x12),A3
00012a7c 74 10 |t | MOVEQ.L #0x10,D2
00012a7e 30 12 |0 | MOVE.W (A2),D0
00012a80 0c 40 02 00 | @ | CMPI.W #0x0200,D0
00012a84 66 06 |f | BNE 0x12a8c
00012a86 22 ae 00 0e |" | MOVE.L (A6+0xe),(A1)
00012a8a 60 76 |`v | BRA 0x12b02
00012a8c 48 51 |HQ | PEA.L (A1)
00012a8e 48 78 04 00 |Hx | PEA.L 0x400
00012a92 4e b9 00 01 08 56 |N V | JSR _Malloc1(length : Long) : Pointer
00012a98 50 4f |PO | ADDQ.L #0x8,A7
00012a9a 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00012a9e 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
00012aa2 3f 2e 00 14 |?. | MOVE.W (A6+0x14),-(A7)
00012aa6 48 78 00 01 |Hx | PEA.L 0x1
00012aaa 2f 11 |/ | MOVE.L (A1),-(A7)
00012aac 48 50 |HP | PEA.L (A0)
00012aae 4e ba fd 14 |N | JSR _RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
00012ab2 de c2 | | ADDA.W D2,A7
00012ab4 4a 10 |J | TST.B (A0)
00012ab6 66 02 |f | BNE 0x12aba
00012ab8 60 62 |`b | BRA 0x12b1c
00012aba 28 6e 00 0e |(n | MOVEA.L (A6+0xe),A4
00012abe 30 13 |0 | MOVE.W (A3),D0
00012ac0 d0 52 | R | ADD.W (A2),D0
00012ac2 53 40 |S@ | SUBQ.W #0x1,D0
00012ac4 48 c0 |H | EXTW.L D0
00012ac6 2f 00 |/ | MOVE.L D0,-(A7)
00012ac8 30 13 |0 | MOVE.W (A3),D0
00012aca 48 c0 |H | EXTW.L D0
00012acc 2e 00 |. | MOVE.L D0,D7
00012ace be 97 | | CMP.L (A7),D7
00012ad0 6e 2e |n. | BGT 0x12b00
00012ad2 20 51 | Q | MOVEA.L (A1),A0
00012ad4 0c 87 00 00 01 ff | | CMPI.L #0x000001ff,D7
00012ada 63 02 |c | BLS 0x12ade
00012adc 4e 4f |NO | TRAP #15
00012ade 20 07 | | MOVE.L D7,D0
00012ae0 e3 80 | | ASL.L #0x1,D0
00012ae2 32 13 |2 | MOVE.W (A3),D1
00012ae4 48 c1 |H | EXTW.L D1
00012ae6 44 81 |D | NEG.L D1
00012ae8 d2 87 | | ADD.L D7,D1
00012aea 0c 81 00 00 01 ff | | CMPI.L #0x000001ff,D1
00012af0 63 02 |c | BLS 0x12af4
00012af2 4e 4f |NO | TRAP #15
00012af4 e3 81 | | ASL.L #0x1,D1
00012af6 31 b4 18 00 08 00 |1 | MOVE.W (A4+D1.L),(A0+D0.L)
00012afc 52 87 |R | ADDQ.L #0x1,D7
00012afe 68 ce |h | BVC 0x12ace
00012b00 58 4f |XO | ADDQ.L #0x4,A7
00012b02 1f 3c 00 03 | < | MOVE.B #0x03,-(A7)
00012b06 3f 2e 00 14 |?. | MOVE.W (A6+0x14),-(A7)
00012b0a 48 78 00 01 |Hx | PEA.L 0x1
00012b0e 2f 11 |/ | MOVE.L (A1),-(A7)
00012b10 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00012b14 48 50 |HP | PEA.L (A0)
00012b16 4e ba fc ac |N | JSR _RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
00012b1a de c2 | | ADDA.W D2,A7
00012b1c 30 12 |0 | MOVE.W (A2),D0
00012b1e 0c 40 02 00 | @ | CMPI.W #0x0200,D0
00012b22 67 0e |g | BEQ 0x12b32
00012b24 48 51 |HQ | PEA.L (A1)
00012b26 48 78 04 00 |Hx | PEA.L 0x400
00012b2a 4e b9 00 01 08 fa |N | JSR _Free2(a : Pointer; b : Long)
00012b30 50 4f |PO | ADDQ.L #0x8,A7
00012b32 4c df 1f 87 |L | MOVEM.L (A7)+,D0+D1+D2+D7+A0+A1+A2+A3+A4
00012b36 4e 5e |N^ | UNLK A6
00012b38 4e 75 |Nu | RTS
00012b3a ; --------------------------------------------------------------------------------------
00012b3a ; OMSI PASCAL Function
00012b3a ; <LVAR 0x010 2(r)>
00012b3a ; <LVAR 0x00c 4(r)>
00012b3a ; <LVAR 0x008 4(r)>
00012b3a ; <LVAR -0x004 2(r) 4(rw)>
00012b3a ; <LVAR -0x006 2(rw)>
00012b3a ; <LVAR -0x008 2(rw)>
00012b3a ; <LVAR -0x00a 2(rw)>
00012b3a ; <LVAR -0x00c @ 1(r)>
00012b3a ; <LVAR -0x414 2(rw)>
00012b3a ; <LVAR -0x416 @ 2(rw) 4(rw)>
00012b3a ; --------------------------------------------------------------------------------------
00012b3a 4e 56 fb 94 |NV | LINK.W A6,#0xfb94
00012b3e bf d5 | | CMPA.L (A5),A7
00012b40 62 06 |b | BHI 0x12b48
00012b42 44 fc 00 02 |D | MOVE.W #0x2,CCR
00012b46 4e 76 |Nv | TRAPV
00012b48 de fc 00 56 | V | ADDA.W #0x56,A7
00012b4c 48 e7 ff f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D6+D5+D4+D3+D2+D1+D0,-(A7)
00012b50 43 ee fb ea |C | LEA.L (A6-0x416),A1
00012b54 45 ee ff f4 |E | LEA.L (A6-0xc),A2
00012b58 47 ee fb ec |G | LEA.L (A6-0x414),A3
00012b5c 78 10 |x | MOVEQ.L #0x10,D4
00012b5e 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
00012b62 42 50 |BP | CLR.W (A0)
00012b64 4a 79 00 01 00 10 |Jy | TST.W superblock_sector.freelist_lba
00012b6a 66 04 |f | BNE 0x12b70
00012b6c 60 00 01 90 |` | BRA 0x12cfe
00012b70 20 49 | I | MOVEA.L A1,A0
00012b72 2f 08 |/ | MOVE.L A0,-(A7)
00012b74 28 5f |(_ | MOVEA.L (A7)+,A4
00012b76 36 b9 00 01 00 10 |6 | MOVE.W superblock_sector.freelist_lba,(A3)
00012b7c 42 51 |BQ | CLR.W (A1)
00012b7e 42 6e ff fc |Bn | CLR.W (A6-0x4)
00012b82 30 11 |0 | MOVE.W (A1),D0
00012b84 b0 6e 00 10 | n | CMP.W (A6+0x10),D0
00012b88 64 58 |dX | BCC 0x12be2
00012b8a 4a 53 |JS | TST.W (A3)
00012b8c 67 54 |gT | BEQ 0x12be2
00012b8e 41 bc 40 00 |A @ | CHK.W #0x4000,D0
00012b92 3a 00 |: | MOVE.W D0,D5
00012b94 3c 07 |< | MOVE.W D7,D6
00012b96 3e 13 |> | MOVE.W (A3),D7
00012b98 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
00012b9c 3f 07 |? | MOVE.W D7,-(A7)
00012b9e 48 78 00 01 |Hx | PEA.L 0x1
00012ba2 2f 0c |/ | MOVE.L A4,-(A7)
00012ba4 48 52 |HR | PEA.L (A2)
00012ba6 4e ba fc 1c |N | JSR _RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
00012baa de c4 | | ADDA.W D4,A7
00012bac 4a 12 |J | TST.B (A2)
00012bae 66 04 |f | BNE 0x12bb4
00012bb0 60 00 01 4c |` L | BRA 0x12cfe
00012bb4 4a 51 |JQ | TST.W (A1)
00012bb6 66 0c |f | BNE 0x12bc4
00012bb8 48 78 00 15 |Hx | PEA.L 0x15
00012bbc 4e b9 00 01 02 20 |N | JSR KC10_Panic(code : Long)
00012bc2 58 4f |XO | ADDQ.L #0x4,A7
00012bc4 32 11 |2 | MOVE.W (A1),D1
00012bc6 b2 6e ff fc | n | CMP.W (A6-0x4),D1
00012bca 63 14 |c | BLS 0x12be0
00012bcc 3d 47 ff f8 |=G | MOVE.W D7,(A6-0x8)
00012bd0 2d 51 ff fc |-Q | MOVE.L (A1),(A6-0x4)
00012bd4 3d 46 ff f6 |=F | MOVE.W D6,(A6-0xa)
00012bd8 4b bc 40 00 |K @ | CHK.W #0x4000,D5
00012bdc 3d 45 ff fa |=E | MOVE.W D5,(A6-0x6)
00012be0 60 a0 |` | BRA 0x12b82
00012be2 b0 6e 00 10 | n | CMP.W (A6+0x10),D0
00012be6 63 60 |c` | BLS 0x12c48
00012be8 42 81 |B | CLR.L D1
00012bea 32 00 |2 | MOVE.W D0,D1
00012bec 30 2e 00 10 |0. | MOVE.W (A6+0x10),D0
00012bf0 48 c0 |H | EXTW.L D0
00012bf2 92 80 | | SUB.L D0,D1
00012bf4 0c 81 00 00 ff ff | | CMPI.L #0x0000ffff,D1
00012bfa 63 02 |c | BLS 0x12bfe
00012bfc 4e 4f |NO | TRAP #15
00012bfe 32 81 |2 | MOVE.W D1,(A1)
00012c00 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00012c04 42 82 |B | CLR.L D2
00012c06 34 07 |4 | MOVE.W D7,D2
00012c08 42 83 |B | CLR.L D3
00012c0a 36 01 |6 | MOVE.W D1,D3
00012c0c d6 82 | | ADD.L D2,D3
00012c0e 0c 83 00 00 ff ff | | CMPI.L #0x0000ffff,D3
00012c14 63 02 |c | BLS 0x12c18
00012c16 4e 4f |NO | TRAP #15
00012c18 30 83 |0 | MOVE.W D3,(A0)
00012c1a 1f 3c 00 03 | < | MOVE.B #0x03,-(A7)
00012c1e 3f 02 |? | MOVE.W D2,-(A7)
00012c20 48 78 00 01 |Hx | PEA.L 0x1
00012c24 2f 0c |/ | MOVE.L A4,-(A7)
00012c26 48 52 |HR | PEA.L (A2)
00012c28 4e ba fb 9a |N | JSR _RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
00012c2c de c4 | | ADDA.W D4,A7
00012c2e 4a 12 |J | TST.B (A2)
00012c30 66 0c |f | BNE 0x12c3e
00012c32 48 78 00 02 |Hx | PEA.L 0x2
00012c36 4e b9 00 01 02 20 |N | JSR KC10_Panic(code : Long)
00012c3c 58 4f |XO | ADDQ.L #0x4,A7
00012c3e 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
00012c42 30 80 |0 | MOVE.W D0,(A0)
00012c44 60 00 00 b8 |` | BRA 0x12cfe
00012c48 b0 6e ff fc | n | CMP.W (A6-0x4),D0
00012c4c 64 16 |d | BCC 0x12c64
00012c4e 22 ae ff fc |" | MOVE.L (A6-0x4),(A1)
00012c52 3e 2e ff f8 |>. | MOVE.W (A6-0x8),D7
00012c56 30 2e ff fa |0. | MOVE.W (A6-0x6),D0
00012c5a 41 bc 40 00 |A @ | CHK.W #0x4000,D0
00012c5e 3a 00 |: | MOVE.W D0,D5
00012c60 3c 2e ff f6 |<. | MOVE.W (A6-0xa),D6
00012c64 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
00012c68 30 11 |0 | MOVE.W (A1),D0
00012c6a 41 bc 40 00 |A @ | CHK.W #0x4000,D0
00012c6e 30 80 |0 | MOVE.W D0,(A0)
00012c70 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00012c74 30 87 |0 | MOVE.W D7,(A0)
00012c76 be 79 00 01 00 10 | y | CMP.W superblock_sector.freelist_lba,D7
00012c7c 66 3e |f> | BNE 0x12cbc
00012c7e 33 d3 00 01 00 10 |3 | MOVE.W (A3),superblock_sector.freelist_lba
00012c84 4a 53 |JS | TST.W (A3)
00012c86 66 08 |f | BNE 0x12c90
00012c88 42 79 00 01 00 22 |By " | CLR.W freelist_sector
00012c8e 60 2a |`* | BRA 0x12cba
00012c90 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
00012c94 3f 13 |? | MOVE.W (A3),-(A7)
00012c96 48 78 00 01 |Hx | PEA.L 0x1
00012c9a 2f 0c |/ | MOVE.L A4,-(A7)
00012c9c 48 52 |HR | PEA.L (A2)
00012c9e 4e ba fb 24 |N $ | JSR _RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
00012ca2 de c4 | | ADDA.W D4,A7
00012ca4 4a 12 |J | TST.B (A2)
00012ca6 66 0c |f | BNE 0x12cb4
00012ca8 48 78 00 03 |Hx | PEA.L 0x3
00012cac 4e b9 00 01 02 20 |N | JSR KC10_Panic(code : Long)
00012cb2 58 4f |XO | ADDQ.L #0x4,A7
00012cb4 23 d1 00 01 00 22 |# " | MOVE.L (A1),freelist_sector
00012cba 60 3c |`< | BRA 0x12cf8
00012cbc 0c 45 ff ff | E | CMPI.W #0xffff,D5
00012cc0 63 02 |c | BLS 0x12cc4
00012cc2 4e 4f |NO | TRAP #15
00012cc4 32 85 |2 | MOVE.W D5,(A1)
00012cc6 1f 3c 00 03 | < | MOVE.B #0x03,-(A7)
00012cca 3f 06 |? | MOVE.W D6,-(A7)
00012ccc 48 78 00 01 |Hx | PEA.L 0x1
00012cd0 2f 0c |/ | MOVE.L A4,-(A7)
00012cd2 48 52 |HR | PEA.L (A2)
00012cd4 4e ba fa ee |N | JSR _RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
00012cd8 de c4 | | ADDA.W D4,A7
00012cda 4a 12 |J | TST.B (A2)
00012cdc 66 0c |f | BNE 0x12cea
00012cde 48 78 00 04 |Hx | PEA.L 0x4
00012ce2 4e b9 00 01 02 20 |N | JSR KC10_Panic(code : Long)
00012ce8 58 4f |XO | ADDQ.L #0x4,A7
00012cea bc 79 00 01 00 10 | y | CMP.W superblock_sector.freelist_lba,D6
00012cf0 66 0c |f | BNE 0x12cfe
00012cf2 33 d3 00 01 00 24 |3 $ | MOVE.W (A3),0x10024
00012cf8 4e b9 00 01 3e 5c |N >\ | JSR _WriteFreeList(void)
00012cfe 4c df 1f ff |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D5+D6+D7+A0+A1+A2+A3+A4
00012d02 4e 5e |N^ | UNLK A6
00012d04 4e 75 |Nu | RTS
00012d06 ; --------------------------------------------------------------------------------------
00012d06 ; FS10378(MOD a : File; b: Byte; VAR c: Bool)
00012d06 ; Stack:
00012d06 ; A6+0xe a : File
00012d06 ; A6+0xc b : Byte
00012d06 ; A6+0x8 VAR c : Bool
00012d06 ; OMSI PASCAL Function
00012d06 ; <LVAR 0x00e 4(r)>
00012d06 ; <LVAR 0x00c 1(r)>
00012d06 ; <LVAR 0x008 4(r)>
00012d06 ; <LVAR -0x008 @ 2(rw)>
00012d06 ; <LVAR -0x00e @ 2(rw)>
00012d06 ; --------------------------------------------------------------------------------------
00012d06 _FS10378(MOD a : File; b: Byte; VAR c: Bool):
00012d06 4e 56 ff aa |NV | LINK.W A6,#0xffaa
00012d0a bf d5 | | CMPA.L (A5),A7
00012d0c 62 06 |b | BHI 0x12d14
00012d0e 44 fc 00 02 |D | MOVE.W #0x2,CCR
00012d12 4e 76 |Nv | TRAPV
00012d14 de fc 00 48 | H | ADDA.W #0x48,A7
00012d18 48 e7 ff f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D6+D5+D4+D3+D2+D1+D0,-(A7)
00012d1c 43 ee 00 0e |C | LEA.L (A6+0xe),A1
00012d20 45 ee 00 08 |E | LEA.L (A6+0x8),A2
00012d24 47 ee ff f8 |G | LEA.L (A6-0x8),A3
00012d28 49 ee ff f2 |I | LEA.L (A6-0xe),A4
00012d2c 76 01 |v | MOVEQ.L #0x01,D3
00012d2e 28 3c 00 00 ff ff |(< | MOVE.L #0xffff,D4
00012d34 20 52 | R | MOVEA.L (A2),A0
00012d36 42 10 |B | CLR.B (A0)
00012d38 20 51 | Q | MOVEA.L (A1),A0
00012d3a 4a 68 00 20 |Jh | TST.W (A0+0x20)
00012d3e 66 04 |f | BNE 0x12d44
00012d40 60 00 00 de |` | BRA 0x12e20
00012d44 4a 79 00 01 00 10 |Jy | TST.W superblock_sector.freelist_lba
00012d4a 66 08 |f | BNE 0x12d54
00012d4c 20 52 | R | MOVEA.L (A2),A0
00012d4e 10 83 | | MOVE.B D3,(A0)
00012d50 60 00 00 ce |` | BRA 0x12e20
00012d54 20 51 | Q | MOVEA.L (A1),A0
00012d56 3c 28 00 20 |<( | MOVE.W (A0+0x20),D6
00012d5a 7e 00 |~ | MOVEQ.L #0x00,D7
00012d5c 7a 00 |z | MOVEQ.L #0x00,D5
00012d5e bc 79 00 01 00 22 | y " | CMP.W freelist_sector,D6
00012d64 65 14 |e | BCS 0x12d7a
00012d66 4d bc 40 00 |M @ | CHK.W #0x4000,D6
00012d6a 3f 06 |? | MOVE.W D6,-(A7)
00012d6c 48 53 |HS | PEA.L (A3)
00012d6e 48 54 |HT | PEA.L (A4)
00012d70 4e ba fd c8 |N | JSR 0x12b3a
00012d74 de fc 00 0a | | ADDA.W #0xa,A7
00012d78 60 3e |`> | BRA 0x12db8
00012d7a 4d bc 40 00 |M @ | CHK.W #0x4000,D6
00012d7e 36 86 |6 | MOVE.W D6,(A3)
00012d80 42 80 |B | CLR.L D0
00012d82 30 39 00 01 00 22 |09 " | MOVE.W freelist_sector,D0
00012d88 42 81 |B | CLR.L D1
00012d8a 32 06 |2 | MOVE.W D6,D1
00012d8c 44 81 |D | NEG.L D1
00012d8e d2 80 | | ADD.L D0,D1
00012d90 b2 84 | | CMP.L D4,D1
00012d92 63 02 |c | BLS 0x12d96
00012d94 4e 4f |NO | TRAP #15
00012d96 33 c1 00 01 00 22 |3 " | MOVE.W D1,freelist_sector
00012d9c 42 80 |B | CLR.L D0
00012d9e 30 39 00 01 00 10 |09 | MOVE.W superblock_sector.freelist_lba,D0
00012da4 42 82 |B | CLR.L D2
00012da6 34 01 |4 | MOVE.W D1,D2
00012da8 d4 80 | | ADD.L D0,D2
00012daa b4 84 | | CMP.L D4,D2
00012dac 63 02 |c | BLS 0x12db0
00012dae 4e 4f |NO | TRAP #15
00012db0 38 82 |8 | MOVE.W D2,(A4)
00012db2 4e b9 00 01 3e 5c |N >\ | JSR _WriteFreeList(void)
00012db8 42 80 |B | CLR.L D0
00012dba 30 06 |0 | MOVE.W D6,D0
00012dbc 32 13 |2 | MOVE.W (A3),D1
00012dbe 48 c1 |H | EXTW.L D1
00012dc0 90 81 | | SUB.L D1,D0
00012dc2 b0 84 | | CMP.L D4,D0
00012dc4 63 02 |c | BLS 0x12dc8
00012dc6 4e 4f |NO | TRAP #15
00012dc8 3c 00 |< | MOVE.W D0,D6
00012dca 42 80 |B | CLR.L D0
00012dcc 30 07 |0 | MOVE.W D7,D0
00012dce d0 81 | | ADD.L D1,D0
00012dd0 b0 84 | | CMP.L D4,D0
00012dd2 63 02 |c | BLS 0x12dd6
00012dd4 4e 4f |NO | TRAP #15
00012dd6 3e 00 |> | MOVE.W D0,D7
00012dd8 4a 81 |J | TST.L D1
00012dda 67 1c |g | BEQ 0x12df8
00012ddc 20 51 | Q | MOVEA.L (A1),A0
00012dde 0c 85 00 00 00 05 | | CMPI.L #0x00000005,D5
00012de4 63 02 |c | BLS 0x12de8
00012de6 4e 4f |NO | TRAP #15
00012de8 20 05 | | MOVE.L D5,D0
00012dea e5 80 | | ASL.L #0x2,D0
00012dec 31 94 08 24 |1 $ | MOVE.W (A4),(A0+D0.L+#0x24)
00012df0 4f bc 40 00 |O @ | CHK.W #0x4000,D7
00012df4 31 87 08 22 |1 " | MOVE.W D7,(A0+D0.L+#0x22)
00012df8 4a 46 |JF | TST.W D6
00012dfa 66 02 |f | BNE 0x12dfe
00012dfc 60 22 |`" | BRA 0x12e20
00012dfe 4a 2e 00 0c |J. | TST.B (A6+0xc)
00012e02 67 02 |g | BEQ 0x12e06
00012e04 60 0c |` | BRA 0x12e12
00012e06 52 85 |R | ADDQ.L #0x1,D5
00012e08 0c 85 00 00 00 05 | | CMPI.L #0x00000005,D5
00012e0e 6f 00 ff 4e |o N | BLE 0x12d5e
00012e12 20 52 | R | MOVEA.L (A2),A0
00012e14 10 83 | | MOVE.B D3,(A0)
00012e16 2f 11 |/ | MOVE.L (A1),-(A7)
00012e18 4e b9 00 01 2e 2e |N .. | JSR _FS1037c(MOD a : File)
00012e1e 58 4f |XO | ADDQ.L #0x4,A7
00012e20 20 51 | Q | MOVEA.L (A1),A0
00012e22 11 43 00 4c | C L | MOVE.B D3,(A0+0x4c)
00012e26 4c df 1f ff |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D5+D6+D7+A0+A1+A2+A3+A4
00012e2a 4e 5e |N^ | UNLK A6
00012e2c 4e 75 |Nu | RTS
00012e2e ; --------------------------------------------------------------------------------------
00012e2e ; FS1037c(MOD a : File)
00012e2e ; Stack:
00012e2e ; A6+0x8 a : File
00012e2e ; OMSI PASCAL Function
00012e2e ; <LVAR 0x008 4(r)>
00012e2e ; --------------------------------------------------------------------------------------
00012e2e _FS1037c(MOD a : File):
00012e2e 4e 56 ff d0 |NV | LINK.W A6,#0xffd0
00012e32 bf d5 | | CMPA.L (A5),A7
00012e34 62 06 |b | BHI 0x12e3c
00012e36 44 fc 00 02 |D | MOVE.W #0x2,CCR
00012e3a 4e 76 |Nv | TRAPV
00012e3c de fc 00 28 | ( | ADDA.W #0x28,A7
00012e40 48 e7 e3 80 |H | MOVEM.L A0+D7+D6+D2+D1+D0,-(A7)
00012e44 74 05 |t | MOVEQ.L #0x05,D2
00012e46 7e 00 |~ | MOVEQ.L #0x00,D7
00012e48 7c 00 || | MOVEQ.L #0x00,D6
00012e4a 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00012e4e bc 82 | | CMP.L D2,D6
00012e50 63 02 |c | BLS 0x12e54
00012e52 4e 4f |NO | TRAP #15
00012e54 20 06 | | MOVE.L D6,D0
00012e56 e5 80 | | ASL.L #0x2,D0
00012e58 4a 70 08 22 |Jp " | TST.W (A0+D0.L+#0x22)
00012e5c 67 3e |g> | BEQ 0x12e9c
00012e5e 32 30 08 22 |20 " | MOVE.W (A0+D0.L+#0x22),D1
00012e62 92 47 | G | SUB.W D7,D1
00012e64 0c 41 ff ff | A | CMPI.W #0xffff,D1
00012e68 63 02 |c | BLS 0x12e6c
00012e6a 4e 4f |NO | TRAP #15
00012e6c 33 c1 00 01 00 22 |3 " | MOVE.W D1,freelist_sector
00012e72 33 f9 00 01 00 10 00 01 |3 | MOVE.W superblock_sector.freelist_lba,0x10024
00012e7a 00 24 | $ |
00012e7c 33 f0 08 24 00 01 00 10 |3 $ | MOVE.W (A0+D0.L+#0x24),superblock_sector.freelist_lba
00012e84 32 30 08 22 |20 " | MOVE.W (A0+D0.L+#0x22),D1
00012e88 43 bc 40 00 |C @ | CHK.W #0x4000,D1
00012e8c 3e 01 |> | MOVE.W D1,D7
00012e8e 42 70 08 22 |Bp " | CLR.W (A0+D0.L+#0x22)
00012e92 42 70 08 24 |Bp $ | CLR.W (A0+D0.L+#0x24)
00012e96 4e b9 00 01 3e 5c |N >\ | JSR _WriteFreeList(void)
00012e9c 52 86 |R | ADDQ.L #0x1,D6
00012e9e bc 82 | | CMP.L D2,D6
00012ea0 6f a8 |o | BLE 0x12e4a
00012ea2 4c df 01 c7 |L | MOVEM.L (A7)+,D0+D1+D2+D6+D7+A0
00012ea6 4e 5e |N^ | UNLK A6
00012ea8 4e 75 |Nu | RTS
00012eaa 45 6e 74 65 72 20 75 6e |Enter un| .TXT 'Enter unit number of disk to initialize :_'
00012ed4 46 61 74 61 6c 20 72 65 |Fatal re| .TXT 'Fatal restart error :_'
00012eea 46 69 6c 65 20 63 6f 6e |File con| .TXT 'File control block obsolete after pop ->'
00012f12 error_messages:
00012f12 4f 70 65 72 61 74 69 6f |Operatio| .TXT 'Operation successful_ '
00012f30 42 61 64 20 66 69 6c 65 |Bad file| .TXT 'Bad filename_ '
00012f4e 46 69 6c 65 20 64 6f 65 |File doe| .TXT 'File does not exist_ '
00012f6c 46 69 6c 65 20 69 73 20 |File is | .TXT 'File is not open_ '
00012f8a 4f 75 74 20 6f 66 20 64 |Out of d| .TXT 'Out of disk space_ '
00012fa8 44 69 72 65 63 74 6f 72 |Director| .TXT 'Directory full_ '
00012fc6 46 69 6c 65 20 61 6c 72 |File alr| .TXT 'File already exists_ '
00012fe4 46 69 6c 65 20 63 6f 75 |File cou| .TXT 'File could not be renamed_ '
00013002 46 69 6c 65 20 63 61 6e |File can| .TXT 'File cannot be deleted_ '
00013020 49 6e 74 65 72 6e 61 6c |Internal| .TXT 'Internal PAGE error_ '
0001303e 49 6e 74 65 72 6e 61 6c |Internal| .TXT 'Internal SLICE error_ '
0001305c 49 6e 74 65 72 6e 61 6c |Internal| .TXT 'Internal ADDRESS error_ '
0001307a 48 61 72 64 20 64 69 73 |Hard dis| .TXT 'Hard disk error_ '
00013098 44 69 73 6b 20 68 61 73 |Disk has| .TXT 'Disk has no DFS labels_ '
000130b6 44 69 73 6b 20 68 61 73 |Disk has| .TXT 'Disk has no DFS_ '
000130d4 4e 6f 20 64 69 73 6b 20 |No disk | .TXT 'No disk present_ '
000130f2 ; --------------------------------------------------------------------------------------
000130f2 ; Legal characters in filename: $.0-9?A-Z[\]_
000130f2 ; --------------------------------------------------------------------------------------
000130f2 Legal_Filename_BitMap:
000130f2 00 00 00 00 10 40 ff 83 | @ | .CONST 0x0,0x0,0x0,0x0,0x10,0x40,0xff,0x83,0xfe,0xff,0xff,0x87,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0
00013112 00 00 00 00 00 00 | | .XXX[0x6]
00013118 00 00 00 00 00 00 00 00 | | .BLANK 00[0x10]
00013128 00 00 | | .XXX[0x2]
0001312a error_messages2:
0001312a 4f 70 65 72 61 74 69 6f |Operatio| .TXT 'Operation successful_ '
00013148 42 61 64 20 66 69 6c 65 |Bad file| .TXT 'Bad filename_ '
00013166 46 69 6c 65 20 64 6f 65 |File doe| .TXT 'File does not exist_ '
00013184 46 69 6c 65 20 69 73 20 |File is | .TXT 'File is not open_ '
000131a2 4f 75 74 20 6f 66 20 64 |Out of d| .TXT 'Out of disk space_ '
000131c0 44 69 72 65 63 74 6f 72 |Director| .TXT 'Directory full_ '
000131de 46 69 6c 65 20 61 6c 72 |File alr| .TXT 'File already exists_ '
000131fc 46 69 6c 65 20 63 6f 75 |File cou| .TXT 'File could not be renamed_ '
0001321a 46 69 6c 65 20 63 61 6e |File can| .TXT 'File cannot be deleted_ '
00013238 49 6e 74 65 72 6e 61 6c |Internal| .TXT 'Internal PAGE error_ '
00013256 49 6e 74 65 72 6e 61 6c |Internal| .TXT 'Internal SLICE error_ '
00013274 49 6e 74 65 72 6e 61 6c |Internal| .TXT 'Internal ADDRESS error_ '
00013292 48 61 72 64 20 64 69 73 |Hard dis| .TXT 'Hard disk error_ '
000132b0 44 69 73 6b 20 68 61 73 |Disk has| .TXT 'Disk has no DFS labels_ '
000132ce 44 69 73 6b 20 68 61 73 |Disk has| .TXT 'Disk has no DFS_ '
000132ec 4e 6f 20 64 69 73 6b 20 |No disk | .TXT 'No disk present_ '
0001330a ; --------------------------------------------------------------------------------------
0001330a ; OMSI PASCAL Function
0001330a ; <LVAR 0x00e 1(r)>
0001330a ; <LVAR 0x00c 1(r)>
0001330a ; <LVAR 0x008 @ 4(rw)>
0001330a ; --------------------------------------------------------------------------------------
0001330a ReportError(Byte error, Byte mode, String):
0001330a 4e 56 ff dc |NV | LINK.W A6,#0xffdc
0001330e bf d5 | | CMPA.L (A5),A7
00013310 62 06 |b | BHI 0x13318
00013312 44 fc 00 02 |D | MOVE.W #0x2,CCR
00013316 4e 76 |Nv | TRAPV
00013318 de fc 00 20 | | ADDA.W #0x20,A7
0001331c 48 e7 c0 c0 |H | MOVEM.L A1+A0+D1+D0,-(A7)
00013320 43 ee 00 08 |C | LEA.L (A6+0x8),A1
00013324 72 01 |r | MOVEQ.L #0x01,D1
00013326 20 51 | Q | MOVEA.L (A1),A0
00013328 b0 c1 | | CMPA.W D1,A0
0001332a 66 0a |f | BNE 0x13336
0001332c 48 51 |HQ | PEA.L (A1)
0001332e 4e b9 00 01 0c fa |N | JSR _NewString(VAR a : String)
00013334 58 4f |XO | ADDQ.L #0x4,A7
00013336 51 4f |QO | SUBQ.L #0x8,A7
00013338 1f 2e 00 0e | . | MOVE.B (A6+0xe),-(A7)
0001333c 4e b9 00 01 43 0c |N C | JSR _FsErrMsgStr(err: Byte) : String
00013342 54 4f |TO | ADDQ.L #0x2,A7
00013344 2f 11 |/ | MOVE.L (A1),-(A7)
00013346 4e b9 00 01 0f 2c |N , | JSR _StringCat2(a, b : String) : String
0001334c 50 4f |PO | ADDQ.L #0x8,A7
0001334e 22 9f |" | MOVE.L (A7)+,(A1)
00013350 10 2e 00 0c | . | MOVE.B (A6+0xc),D0
00013354 48 80 |H | EXTB.W D0
00013356 0c 40 00 02 | @ | CMPI.W #0x0002,D0
0001335a 63 02 |c | BLS 0x1335e
0001335c 4e 4e |NN | TRAP #14
0001335e d0 40 | @ | ADD.W D0,D0
00013360 30 3b 00 06 4e fb 00 02 |0; N | SWITCH D0.W
00013368 00 06 | | .CONST 0x6 ; [0x0] -> 0x1336e
0001336a 00 12 | | .CONST 0x12 ; [0x1] -> 0x1337a
0001336c 00 1c | | .CONST 0x1c ; [0x2] -> 0x13384
0001336e switch@0x13360[0x0]:
0001336e 48 51 |HQ | PEA.L (A1)
00013370 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
00013376 58 4f |XO | ADDQ.L #0x4,A7
00013378 60 16 |` | BRA 0x13390
0001337a switch@0x13360[0x1]:
0001337a 2f 11 |/ | MOVE.L (A1),-(A7)
0001337c 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
00013382 60 f2 |` | BRA 0x13376
00013384 switch@0x13360[0x2]:
00013384 1f 01 | | MOVE.B D1,-(A7)
00013386 2f 11 |/ | MOVE.L (A1),-(A7)
00013388 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
0001338e 5c 4f |\O | ADDQ.L #0x6,A7
00013390 4c df 03 03 |L | MOVEM.L (A7)+,D0+D1+A0+A1
00013394 4e 5e |N^ | UNLK A6
00013396 4e 75 |Nu | RTS
00013398 ; --------------------------------------------------------------------------------------
00013398 ; OMSI PASCAL Function
00013398 ; <LVAR 0x008 4(r)>
00013398 ; <LVAR -0x00c 4(rw)>
00013398 ; --------------------------------------------------------------------------------------
00013398 4e 56 ff cc |NV | LINK.W A6,#0xffcc
0001339c bf d5 | | CMPA.L (A5),A7
0001339e 62 06 |b | BHI 0x133a6
000133a0 44 fc 00 02 |D | MOVE.W #0x2,CCR
000133a4 4e 76 |Nv | TRAPV
000133a6 de fc 00 28 | ( | ADDA.W #0x28,A7
000133aa 48 e7 81 e8 |H | MOVEM.L A4+A2+A1+A0+D7+D0,-(A7)
000133ae 45 ee ff f4 |E | LEA.L (A6-0xc),A2
000133b2 70 01 |p | MOVEQ.L #0x01,D0
000133b4 24 b9 00 02 00 20 |$ | MOVE.L 0x20020,(A2)
000133ba 38 40 |8@ | MOVEA.W D0,A4
000133bc 7e 00 |~ | MOVEQ.L #0x00,D7
000133be 20 52 | R | MOVEA.L (A2),A0
000133c0 b0 c0 | | CMPA.W D0,A0
000133c2 67 18 |g | BEQ 0x133dc
000133c4 4a 07 |J | TST.B D7
000133c6 66 14 |f | BNE 0x133dc
000133c8 22 6e 00 08 |"n | MOVEA.L (A6+0x8),A1
000133cc b1 d1 | | CMPA.L (A1),A0
000133ce 66 04 |f | BNE 0x133d4
000133d0 7e 01 |~ | MOVEQ.L #0x01,D7
000133d2 60 06 |` | BRA 0x133da
000133d4 28 48 |(H | MOVEA.L A0,A4
000133d6 24 a8 00 44 |$ D | MOVE.L (A0+0x44),(A2)
000133da 60 e2 |` | BRA 0x133be
000133dc 4a 07 |J | TST.B D7
000133de 66 0c |f | BNE 0x133ec
000133e0 48 78 00 05 |Hx | PEA.L 0x5
000133e4 4e b9 00 01 02 20 |N | JSR KC10_Panic(code : Long)
000133ea 58 4f |XO | ADDQ.L #0x4,A7
000133ec b8 c0 | | CMPA.W D0,A4
000133ee 66 0c |f | BNE 0x133fc
000133f0 20 52 | R | MOVEA.L (A2),A0
000133f2 23 e8 00 44 00 02 00 20 |# D | MOVE.L (A0+0x44),0x20020
000133fa 60 08 |` | BRA 0x13404
000133fc 20 52 | R | MOVEA.L (A2),A0
000133fe 29 68 00 44 00 44 |)h D D | MOVE.L (A0+0x44),(A4+0x44)
00013404 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00013408 48 50 |HP | PEA.L (A0)
0001340a 48 78 00 4d |Hx M | PEA.L 0x4d
0001340e 4e b9 00 01 08 fa |N | JSR _Free2(a : Pointer; b : Long)
00013414 50 4f |PO | ADDQ.L #0x8,A7
00013416 20 80 | | MOVE.L D0,(A0)
00013418 4c df 17 81 |L | MOVEM.L (A7)+,D0+D7+A0+A1+A2+A4
0001341c 4e 5e |N^ | UNLK A6
0001341e 4e 75 |Nu | RTS
00013420 ; --------------------------------------------------------------------------------------
00013420 ; OMSI PASCAL Function
00013420 ; <LVAR 0x00c 1(w)>
00013420 ; <LVAR 0x008 4(r)>
00013420 ; <LVAR -0x008 4(rw)>
00013420 ; --------------------------------------------------------------------------------------
00013420 4e 56 ff e4 |NV | LINK.W A6,#0xffe4
00013424 bf d5 | | CMPA.L (A5),A7
00013426 62 06 |b | BHI 0x1342e
00013428 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001342c 4e 76 |Nv | TRAPV
0001342e de fc 00 14 | | ADDA.W #0x14,A7
00013432 48 e7 01 c0 |H | MOVEM.L A1+A0+D7,-(A7)
00013436 43 ee ff f8 |C | LEA.L (A6-0x8),A1
0001343a 22 b9 00 02 00 20 |" | MOVE.L 0x20020,(A1)
00013440 7e 01 |~ | MOVEQ.L #0x01,D7
00013442 20 51 | Q | MOVEA.L (A1),A0
00013444 b0 fc 00 01 | | CMPA.W #0x1,A0
00013448 67 14 |g | BEQ 0x1345e
0001344a 4a 07 |J | TST.B D7
0001344c 67 10 |g | BEQ 0x1345e
0001344e b1 ee 00 08 | | CMPA.L (A6+0x8),A0
00013452 66 04 |f | BNE 0x13458
00013454 7e 00 |~ | MOVEQ.L #0x00,D7
00013456 60 04 |` | BRA 0x1345c
00013458 22 a8 00 44 |" D | MOVE.L (A0+0x44),(A1)
0001345c 60 e4 |` | BRA 0x13442
0001345e 1d 47 00 0c | G | MOVE.B D7,(A6+0xc)
00013462 4c df 03 80 |L | MOVEM.L (A7)+,D7+A0+A1
00013466 4e 5e |N^ | UNLK A6
00013468 4e 75 |Nu | RTS
0001346a ; --------------------------------------------------------------------------------------
0001346a ; OMSI PASCAL Function
0001346a ; <LVAR 0x010 4(r)>
0001346a ; <LVAR 0x00c 4(r)>
0001346a ; <LVAR 0x008 4(r)>
0001346a ; <LVAR -0x00c 4(w)>
0001346a ; --------------------------------------------------------------------------------------
0001346a CheckFilename():
0001346a 4e 56 ff a8 |NV | LINK.W A6,#0xffa8
0001346e bf d5 | | CMPA.L (A5),A7
00013470 62 06 |b | BHI 0x13478
00013472 44 fc 00 02 |D | MOVE.W #0x2,CCR
00013476 4e 76 |Nv | TRAPV
00013478 de fc 00 48 | H | ADDA.W #0x48,A7
0001347c 48 e7 ff f0 |H | MOVEM.L A3+A2+A1+A0+D7+D6+D5+D4+D3+D2+D1+D0,-(A7)
00013480 45 ee 00 0c |E | LEA.L (A6+0xc),A2
00013484 47 f9 00 01 07 ea |G | LEA.L _?muls_d3_d4,A3
0001348a 74 01 |t | MOVEQ.L #0x01,D2
0001348c 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00013490 10 82 | | MOVE.B D2,(A0)
00013492 20 52 | R | MOVEA.L (A2),A0
00013494 48 50 |HP | PEA.L (A0)
00013496 48 78 00 4d |Hx M | PEA.L 0x4d
0001349a 4e b9 00 01 08 56 |N V | JSR _Malloc1(length : Long) : Pointer
000134a0 50 4f |PO | ADDQ.L #0x8,A7
000134a2 22 50 |"P | MOVEA.L (A0),A1
000134a4 23 79 00 02 00 20 00 44 |#y D| MOVE.L 0x20020,(A1+0x44)
000134ac 23 d0 00 02 00 20 |# | MOVE.L (A0),0x20020
000134b2 20 6e 00 10 | n | MOVEA.L (A6+0x10),A0
000134b6 2f 08 |/ | MOVE.L A0,-(A7)
000134b8 30 10 |0 | MOVE.W (A0),D0
000134ba 0c 40 00 1e | @ | CMPI.W #0x001e,D0
000134be 6e 04 |n | BGT 0x134c4
000134c0 b0 42 | B | CMP.W D2,D0
000134c2 6c 06 |l | BGE 0x134ca
000134c4 58 4f |XO | ADDQ.L #0x4,A7
000134c6 60 00 00 cc |` | BRA 0x13594
000134ca 7a 00 |z | MOVEQ.L #0x00,D5
000134cc 20 57 | W | MOVEA.L (A7),A0
000134ce 30 10 |0 | MOVE.W (A0),D0
000134d0 48 c0 |H | EXTW.L D0
000134d2 2f 00 |/ | MOVE.L D0,-(A7)
000134d4 7e 01 |~ | MOVEQ.L #0x01,D7
000134d6 be 97 | | CMP.L (A7),D7
000134d8 6e 7c |n| | BGT 0x13556
000134da 20 07 | | MOVE.L D7,D0
000134dc 53 80 |S | SUBQ.L #0x1,D0
000134de 0c 80 00 00 00 7d | } | CMPI.L #0x0000007d,D0
000134e4 63 02 |c | BLS 0x134e8
000134e6 4e 4f |NO | TRAP #15
000134e8 20 6f 00 04 | o | MOVEA.L (A7+0x4),A0
000134ec 1c 30 08 02 | 0 | MOVE.B (A0+D0.L+#0x2),D6
000134f0 0c 06 00 61 | a | CMPI.B #0x61,D6
000134f4 65 12 |e | BCS 0x13508
000134f6 0c 06 00 7a | z | CMPI.B #0x7a,D6
000134fa 62 0c |b | BHI 0x13508
000134fc 42 80 |B | CLR.L D0
000134fe 10 06 | | MOVE.B D6,D0
00013500 04 40 00 20 | @ | SUBI.W #0x0020,D0
00013504 1c 00 | | MOVE.B D0,D6
00013506 60 16 |` | BRA 0x1351e
00013508 42 80 |B | CLR.L D0
0001350a 10 06 | | MOVE.B D6,D0
0001350c 41 fa fb e4 |A | LEA.L Legal_Filename_BitMap,A0
00013510 32 00 |2 | MOVE.W D0,D1
00013512 e6 49 | I | LSR.W #0x3,D1
00013514 01 30 10 00 | 0 | BTST.B D0,(A0+D1.W)
00013518 66 04 |f | BNE 0x1351e
0001351a 50 4f |PO | ADDQ.L #0x8,A7
0001351c 60 76 |`v | BRA 0x13594
0001351e 20 52 | R | MOVEA.L (A2),A0
00013520 20 50 | P | MOVEA.L (A0),A0
00013522 20 07 | | MOVE.L D7,D0
00013524 53 80 |S | SUBQ.L #0x1,D0
00013526 0c 80 00 00 00 1d | | CMPI.L #0x0000001d,D0
0001352c 63 02 |c | BLS 0x13530
0001352e 4e 4f |NO | TRAP #15
00013530 11 86 08 00 | | MOVE.B D6,(A0+D0.L)
00013534 42 80 |B | CLR.L D0
00013536 10 06 | | MOVE.B D6,D0
00013538 02 40 00 3f | @ ? | ANDI.W #0x003f,D0
0001353c 48 c0 |H | EXTW.L D0
0001353e 2d 40 ff f4 |-@ | MOVE.L D0,(A6-0xc)
00013542 28 00 |( | MOVE.L D0,D4
00013544 26 00 |& | MOVE.L D0,D3 ; Filename hashing
00013546 4e 93 |N | JSR (A3)
00013548 26 00 |& | MOVE.L D0,D3
0001354a 4e 93 |N | JSR (A3)
0001354c 26 07 |& | MOVE.L D7,D3
0001354e 4e 93 |N | JSR (A3)
00013550 da 84 | | ADD.L D4,D5
00013552 52 87 |R | ADDQ.L #0x1,D7
00013554 68 80 |h | BVC 0x134d6
00013556 58 4f |XO | ADDQ.L #0x4,A7
00013558 20 57 | W | MOVEA.L (A7),A0
0001355a 30 10 |0 | MOVE.W (A0),D0
0001355c 48 c0 |H | EXTW.L D0
0001355e 52 80 |R | ADDQ.L #0x1,D0
00013560 2e 00 |. | MOVE.L D0,D7
00013562 0c 87 00 00 00 1e | | CMPI.L #0x0000001e,D7
00013568 6e 1a |n | BGT 0x13584
0001356a 20 52 | R | MOVEA.L (A2),A0
0001356c 20 50 | P | MOVEA.L (A0),A0
0001356e 20 07 | | MOVE.L D7,D0
00013570 53 80 |S | SUBQ.L #0x1,D0
00013572 0c 80 00 00 00 1d | | CMPI.L #0x0000001d,D0
00013578 63 02 |c | BLS 0x1357c
0001357a 4e 4f |NO | TRAP #15
0001357c 42 30 08 00 |B0 | CLR.B (A0+D0.L)
00013580 52 87 |R | ADDQ.L #0x1,D7
00013582 68 de |h | BVC 0x13562
00013584 58 4f |XO | ADDQ.L #0x4,A7
00013586 20 52 | R | MOVEA.L (A2),A0
00013588 20 50 | P | MOVEA.L (A0),A0
0001358a 31 45 00 1e |1E | MOVE.W D5,(A0+0x1e)
0001358e 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00013592 42 10 |B | CLR.B (A0)
00013594 4c df 0f ff |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D5+D6+D7+A0+A1+A2+A3
00013598 4e 5e |N^ | UNLK A6
0001359a 4e 75 |Nu | RTS
0001359c ; --------------------------------------------------------------------------------------
0001359c ; OMSI PASCAL Function
0001359c ; <LVAR 0x008 4(r)>
0001359c ; <LVAR -0x004 @ 1(r)>
0001359c ; <LVAR -0x024 @>
0001359c ; <LVAR -0x026 2(w)>
0001359c ; <LVAR -0x044 @>
0001359c ; --------------------------------------------------------------------------------------
0001359c 4e 56 ff 96 |NV | LINK.W A6,#0xff96
000135a0 bf d5 | | CMPA.L (A5),A7
000135a2 62 06 |b | BHI 0x135aa
000135a4 44 fc 00 02 |D | MOVE.W #0x2,CCR
000135a8 4e 76 |Nv | TRAPV
000135aa de fc 00 26 | & | ADDA.W #0x26,A7
000135ae 48 e7 80 e0 |H | MOVEM.L A2+A1+A0+D0,-(A7)
000135b2 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
000135b6 10 28 00 3f | ( ? | MOVE.B (A0+0x3f),D0
000135ba e9 08 | | LSL.B #0x4,D0
000135bc ee 08 | | LSR.B #0x7,D0
000135be 66 06 |f | BNE 0x135c6
000135c0 4a 28 00 4c |J( L | TST.B (A0+0x4c)
000135c4 67 70 |gp | BEQ 0x13636
000135c6 02 28 00 f7 00 3f | ( ? | ANDI.B #0xf7,(A0+0x3f)
000135cc 43 ee ff bc |C | LEA.L (A6-0x44),A1
000135d0 24 48 |$H | MOVEA.L A0,A2
000135d2 70 1d |p | MOVEQ.L #0x1d,D0
000135d4 12 da | | MOVE.B (A2)+,(A1)+
000135d6 51 c8 ff fc |Q | DBF D0,0x135d4
000135da 3d 68 00 1e ff da |=h | MOVE.W (A0+0x1e),(A6-0x26)
000135e0 43 ee ff dc |C | LEA.L (A6-0x24),A1
000135e4 45 e8 00 20 |E | LEA.L (A0+0x20),A2
000135e8 70 1f |p | MOVEQ.L #0x1f,D0
000135ea 12 da | | MOVE.B (A2)+,(A1)+
000135ec 51 c8 ff fc |Q | DBF D0,0x135ea
000135f0 3f 28 00 40 |?( @ | MOVE.W (A0+0x40),-(A7)
000135f4 30 28 00 42 |0( B | MOVE.W (A0+0x42),D0
000135f8 48 c0 |H | EXTW.L D0
000135fa eb 80 | | ASL.L #0x5,D0
000135fc 0c 80 00 00 01 ff | | CMPI.L #0x000001ff,D0
00013602 63 02 |c | BLS 0x13606
00013604 4e 4f |NO | TRAP #15
00013606 3f 00 |? | MOVE.W D0,-(A7)
00013608 43 ee ff bc |C | LEA.L (A6-0x44),A1
0001360c 2f 09 |/ | MOVE.L A1,-(A7)
0001360e 3f 3c 00 20 |?< | MOVE.W #0x20,-(A7)
00013612 48 6e ff fc |Hn | PEA.L (A6-0x4)
00013616 4e b9 00 01 2a 5a |N *Z | JSR _WriteWords(lba : W; offset : W; ptr : L; nwords : W; VAR status : B)
0001361c de fc 00 0e | | ADDA.W #0xe,A7
00013620 4a 2e ff fc |J. | TST.B (A6-0x4)
00013624 66 0c |f | BNE 0x13632
00013626 48 78 00 08 |Hx | PEA.L 0x8
0001362a 4e b9 00 01 02 20 |N | JSR KC10_Panic(code : Long)
00013630 58 4f |XO | ADDQ.L #0x4,A7
00013632 42 28 00 4c |B( L | CLR.B (A0+0x4c)
00013636 4c df 07 01 |L | MOVEM.L (A7)+,D0+A0+A1+A2
0001363a 4e 5e |N^ | UNLK A6
0001363c 4e 75 |Nu | RTS
0001363e ; --------------------------------------------------------------------------------------
0001363e ; OMSI PASCAL Function
0001363e ; <LVAR 0x008 4(r)>
0001363e ; <LVAR -0x002 @ 1(r)>
0001363e ; <LVAR -0x00d 1(w)>
0001363e ; <LVAR -0x40c @>
0001363e ; --------------------------------------------------------------------------------------
0001363e 4e 56 fb ac |NV | LINK.W A6,#0xfbac
00013642 bf d5 | | CMPA.L (A5),A7
00013644 62 06 |b | BHI 0x1364c
00013646 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001364a 4e 76 |Nv | TRAPV
0001364c de fc 00 48 | H | ADDA.W #0x48,A7
00013650 48 e7 fb f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D6+D4+D3+D2+D1+D0,-(A7)
00013654 45 ee ff fe |E | LEA.L (A6-0x2),A2
00013658 47 ee fb f4 |G | LEA.L (A6-0x40c),A3
0001365c 74 0f |t | MOVEQ.L #0x0f,D2
0001365e 76 10 |v | MOVEQ.L #0x10,D3
00013660 78 08 |x | MOVEQ.L #0x08,D4
00013662 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00013666 10 28 00 3f | ( ? | MOVE.B (A0+0x3f),D0
0001366a e9 08 | | LSL.B #0x4,D0
0001366c ee 08 | | LSR.B #0x7,D0
0001366e 66 00 00 a0 |f | BNE 0x13710
00013672 3c 28 00 40 |<( @ | MOVE.W (A0+0x40),D6
00013676 22 4b |"K | MOVEA.L A3,A1
00013678 2f 09 |/ | MOVE.L A1,-(A7)
0001367a 28 5f |(_ | MOVEA.L (A7)+,A4
0001367c 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
00013680 3f 06 |? | MOVE.W D6,-(A7)
00013682 48 78 00 01 |Hx | PEA.L 0x1
00013686 2f 0c |/ | MOVE.L A4,-(A7)
00013688 48 52 |HR | PEA.L (A2)
0001368a 4e b9 00 01 27 c4 |N ' | JSR _RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
00013690 de c3 | | ADDA.W D3,A7
00013692 4a 12 |J | TST.B (A2)
00013694 66 0c |f | BNE 0x136a2
00013696 48 78 00 06 |Hx | PEA.L 0x6
0001369a 4e b9 00 01 02 20 |N | JSR KC10_Panic(code : Long)
000136a0 58 4f |XO | ADDQ.L #0x4,A7
000136a2 30 28 00 42 |0( B | MOVE.W (A0+0x42),D0
000136a6 48 c0 |H | EXTW.L D0
000136a8 52 80 |R | ADDQ.L #0x1,D0
000136aa 2e 00 |. | MOVE.L D0,D7
000136ac be 82 | | CMP.L D2,D7
000136ae 6e 2e |n. | BGT 0x136de
000136b0 20 07 | | MOVE.L D7,D0
000136b2 53 80 |S | SUBQ.L #0x1,D0
000136b4 b0 82 | | CMP.L D2,D0
000136b6 63 02 |c | BLS 0x136ba
000136b8 4e 4f |NO | TRAP #15
000136ba ed 80 | | ASL.L #0x6,D0
000136bc 20 4b | K | MOVEA.L A3,A0
000136be be 82 | | CMP.L D2,D7
000136c0 63 02 |c | BLS 0x136c4
000136c2 4e 4f |NO | TRAP #15
000136c4 22 07 |" | MOVE.L D7,D1
000136c6 ed 81 | | ASL.L #0x6,D1
000136c8 22 4b |"K | MOVEA.L A3,A1
000136ca 41 f0 08 00 |A | LEA.L (A0+D0.L),A0
000136ce 43 f1 18 00 |C | LEA.L (A1+D1.L),A1
000136d2 70 0f |p | MOVEQ.L #0x0f,D0
000136d4 20 d9 | | MOVE.L (A1)+,(A0)+
000136d6 51 c8 ff fc |Q | DBF D0,0x136d4
000136da 52 87 |R | ADDQ.L #0x1,D7
000136dc 68 ce |h | BVC 0x136ac
000136de 89 2e ff f3 | . | OR.B D4,(A6-0xd)
000136e2 1f 3c 00 03 | < | MOVE.B #0x03,-(A7)
000136e6 3f 06 |? | MOVE.W D6,-(A7)
000136e8 48 78 00 01 |Hx | PEA.L 0x1
000136ec 2f 0c |/ | MOVE.L A4,-(A7)
000136ee 48 52 |HR | PEA.L (A2)
000136f0 4e b9 00 01 27 c4 |N ' | JSR _RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
000136f6 de c3 | | ADDA.W D3,A7
000136f8 4a 12 |J | TST.B (A2)
000136fa 66 0c |f | BNE 0x13708
000136fc 48 78 00 07 |Hx | PEA.L 0x7
00013700 4e b9 00 01 02 20 |N | JSR KC10_Panic(code : Long)
00013706 58 4f |XO | ADDQ.L #0x4,A7
00013708 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001370c 89 28 00 3f | ( ? | OR.B D4,(A0+0x3f)
00013710 4c df 1f df |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D6+D7+A0+A1+A2+A3+A4
00013714 4e 5e |N^ | UNLK A6
00013716 4e 75 |Nu | RTS
00013718 ; --------------------------------------------------------------------------------------
00013718 ; OMSI PASCAL Function
00013718 ; <LVAR 0x00c 4(r)>
00013718 ; <LVAR 0x008 4(r)>
00013718 ; <LVAR -0x004 @ 1(r)>
00013718 ; <LVAR -0x005 1(r)>
00013718 ; <LVAR -0x006 1(r)>
00013718 ; <LVAR -0x007 1(r)>
00013718 ; <LVAR -0x008 @ 1(r)>
00013718 ; <LVAR -0x40c @>
00013718 ; <LVAR -0x410 @>
00013718 ; --------------------------------------------------------------------------------------
00013718 NameI(Char*, &void):
00013718 4e 56 fb a8 |NV | LINK.W A6,#0xfba8
0001371c bf d5 | | CMPA.L (A5),A7
0001371e 62 06 |b | BHI 0x13726
00013720 44 fc 00 02 |D | MOVE.W #0x2,CCR
00013724 4e 76 |Nv | TRAPV
00013726 de fc 00 48 | H | ADDA.W #0x48,A7
0001372a 48 e7 ff f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D6+D5+D4+D3+D2+D1+D0,-(A7)
0001372e 49 ee 00 0c |I | LEA.L (A6+0xc),A4
00013732 76 0f |v | MOVEQ.L #0x0f,D3
00013734 28 3c 00 00 ff ff |(< | MOVE.L #0xffff,D4
0001373a 20 54 | T | MOVEA.L (A4),A0
0001373c 3a 28 00 1e |:( | MOVE.W (A0+0x1e),D5
00013740 02 45 ff e0 | E | ANDI.W #0xffe0,D5
00013744 ea 4d | M | LSR.W #0x5,D5
00013746 30 05 |0 | MOVE.W D5,D0
00013748 02 40 00 ff | @ | ANDI.W #0x00ff,D0
0001374c 32 05 |2 | MOVE.W D5,D1
0001374e e0 49 | I | LSR.W #0x8,D1
00013750 43 bc 00 07 |C | CHK.W #0x7,D1
00013754 e3 41 | A | ASL.W #0x1,D1
00013756 42 82 |B | CLR.L D2
00013758 34 01 |4 | MOVE.W D1,D2
0001375a 41 f8 00 00 |A | LEA.L 0x0,A0
0001375e 41 f0 28 00 |A ( | LEA.L (A0+D2.L),A0
00013762 d1 fc 00 01 00 12 | | ADDA.L #0x10012,A0
00013768 42 81 |B | CLR.L D1
0001376a 32 10 |2 | MOVE.W (A0),D1
0001376c 42 82 |B | CLR.L D2
0001376e 34 00 |4 | MOVE.W D0,D2
00013770 d4 81 | | ADD.L D1,D2
00013772 b4 84 | | CMP.L D4,D2
00013774 63 02 |c | BLS 0x13778
00013776 4e 4f |NO | TRAP #15
00013778 3c 02 |< | MOVE.W D2,D6
0001377a 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
0001377e 3f 06 |? | MOVE.W D6,-(A7)
00013780 48 78 00 01 |Hx | PEA.L 0x1
00013784 41 ee fb f4 |A | LEA.L (A6-0x40c),A0
00013788 2f 08 |/ | MOVE.L A0,-(A7)
0001378a 48 6e ff fc |Hn | PEA.L (A6-0x4)
0001378e 4e b9 00 01 27 c4 |N ' | JSR _RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
00013794 de fc 00 10 | | ADDA.W #0x10,A7
00013798 4a 2e ff fc |J. | TST.B (A6-0x4)
0001379c 66 0c |f | BNE 0x137aa
0001379e 48 78 00 06 |Hx | PEA.L 0x6
000137a2 4e b9 00 01 02 20 |N | JSR KC10_Panic(code : Long)
000137a8 58 4f |XO | ADDQ.L #0x4,A7
000137aa 7e 00 |~ | MOVEQ.L #0x00,D7
000137ac be 83 | | CMP.L D3,D7
000137ae 63 02 |c | BLS 0x137b2
000137b0 4e 4f |NO | TRAP #15
000137b2 20 07 | | MOVE.L D7,D0
000137b4 ed 80 | | ASL.L #0x6,D0
000137b6 41 ee fb f0 |A | LEA.L (A6-0x410),A0
000137ba 12 30 08 43 | 0 C | MOVE.B (A0+D0.L+#0x43),D1
000137be e9 09 | | LSL.B #0x4,D1
000137c0 ee 09 | | LSR.B #0x7,D1
000137c2 67 76 |gv | BEQ 0x1383a
000137c4 48 6e ff f8 |Hn | PEA.L (A6-0x8)
000137c8 4e b9 00 01 16 ee |N | JSR _GetRtc() : TimeStamp
000137ce 58 4f |XO | ADDQ.L #0x4,A7
000137d0 20 54 | T | MOVEA.L (A4),A0
000137d2 43 e8 00 22 |C " | LEA.L (A0+0x22),A1
000137d6 45 fa f9 3a |E : | LEA.L 0x13112,A2
000137da 70 17 |p | MOVEQ.L #0x17,D0
000137dc 12 da | | MOVE.B (A2)+,(A1)+
000137de 51 c8 ff fc |Q | DBF D0,0x137dc
000137e2 42 68 00 20 |Bh | CLR.W (A0+0x20)
000137e6 11 6e ff f8 00 3a | n : | MOVE.B (A6-0x8),(A0+0x3a)
000137ec 11 6e ff f9 00 3b | n ; | MOVE.B (A6-0x7),(A0+0x3b)
000137f2 11 6e ff fa 00 3c | n < | MOVE.B (A6-0x6),(A0+0x3c)
000137f8 11 6e ff fb 00 3d | n = | MOVE.B (A6-0x5),(A0+0x3d)
000137fe c7 68 00 3e | h > | AND.W D3,(A0+0x3e)
00013802 00 28 00 08 00 3f | ( ? | ORI.B #0x08,(A0+0x3f)
00013808 02 28 00 fb 00 3f | ( ? | ANDI.B #0xfb,(A0+0x3f)
0001380e 02 28 00 fd 00 3f | ( ? | ANDI.B #0xfd,(A0+0x3f)
00013814 02 28 00 fe 00 3f | ( ? | ANDI.B #0xfe,(A0+0x3f)
0001381a 20 54 | T | MOVEA.L (A4),A0
0001381c 11 7c 00 01 00 4c | | L | MOVE.B #0x01,(A0+0x4c)
00013822 04 87 ff ff 80 00 | | SUBI.L #0xffff8000,D7
00013828 be 84 | | CMP.L D4,D7
0001382a 63 02 |c | BLS 0x1382e
0001382c 4e 4f |NO | TRAP #15
0001382e 06 87 ff ff 80 00 | | ADDI.L #0xffff8000,D7
00013834 31 47 00 42 |1G B | MOVE.W D7,(A0+0x42)
00013838 60 5e |`^ | BRA 0x13898
0001383a 20 54 | T | MOVEA.L (A4),A0
0001383c be 83 | | CMP.L D3,D7
0001383e 63 02 |c | BLS 0x13842
00013840 4e 4f |NO | TRAP #15
00013842 20 07 | | MOVE.L D7,D0
00013844 ed 80 | | ASL.L #0x6,D0
00013846 43 ee fb f0 |C | LEA.L (A6-0x410),A1
0001384a 32 28 00 1e |2( | MOVE.W (A0+0x1e),D1
0001384e b2 71 08 22 | q " | CMP.W (A1+D0.L+#0x22),D1
00013852 66 32 |f2 | BNE 0x13886
00013854 45 f1 08 04 |E | LEA.L (A1+D0.L+#0x4),A2
00013858 26 48 |&H | MOVEA.L A0,A3
0001385a 72 1d |r | MOVEQ.L #0x1d,D1
0001385c b7 0a | | CMPM.B (A2)+,(A3)+
0001385e 56 c9 ff fc |V | DBNE D1,0x1385c
00013862 66 22 |f" | BNE 0x13886
00013864 45 e8 00 20 |E | LEA.L (A0+0x20),A2
00013868 43 f1 08 24 |C $ | LEA.L (A1+D0.L+#0x24),A1
0001386c 70 1f |p | MOVEQ.L #0x1f,D0
0001386e 14 d9 | | MOVE.B (A1)+,(A2)+
00013870 51 c8 ff fc |Q | DBF D0,0x1386e
00013874 42 28 00 4c |B( L | CLR.B (A0+0x4c)
00013878 04 87 ff ff 80 00 | | SUBI.L #0xffff8000,D7
0001387e be 84 | | CMP.L D4,D7
00013880 63 02 |c | BLS 0x13884
00013882 4e 4f |NO | TRAP #15
00013884 60 a8 |` | BRA 0x1382e
00013886 52 87 |R | ADDQ.L #0x1,D7
00013888 be 83 | | CMP.L D3,D7
0001388a 6f 00 ff 20 |o | BLE 0x137ac
0001388e 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00013892 10 bc 00 05 | | MOVE.B #0x05,(A0)
00013896 60 14 |` | BRA 0x138ac
00013898 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001389c 42 10 |B | CLR.B (A0)
0001389e 20 54 | T | MOVEA.L (A4),A0
000138a0 31 46 00 40 |1F @ | MOVE.W D6,(A0+0x40)
000138a4 42 68 00 48 |Bh H | CLR.W (A0+0x48)
000138a8 42 68 00 4a |Bh J | CLR.W (A0+0x4a)
000138ac 4c df 1f ff |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D5+D6+D7+A0+A1+A2+A3+A4
000138b0 4e 5e |N^ | UNLK A6
000138b2 4e 75 |Nu | RTS
000138b4 ; --------------------------------------------------------------------------------------
000138b4 ; OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
000138b4 ; Stack:
000138b4 ; A6+0x18 name : String
000138b4 ; A6+0x16 a : W
000138b4 ; A6+0x14 b : B
000138b4 ; A6+0x10 c : L
000138b4 ; A6+0xc VAR status : B
000138b4 ; A6+0x8 VAR file : File
000138b4 ; OMSI PASCAL Function
000138b4 ; <LVAR 0x018 4(r)>
000138b4 ; <LVAR 0x016 1(r)>
000138b4 ; <LVAR 0x014 1(r)>
000138b4 ; <LVAR 0x010 4(r)>
000138b4 ; <LVAR 0x00c 4(r)>
000138b4 ; <LVAR 0x008 4(r)>
000138b4 ; <LVAR -0x001 @ 1(r)>
000138b4 ; <LVAR -0x002 1(rw)>
000138b4 ; --------------------------------------------------------------------------------------
000138b4 _OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File):
000138b4 4e 56 ff ae |NV | LINK.W A6,#0xffae
000138b8 bf d5 | | CMPA.L (A5),A7
000138ba 62 06 |b | BHI 0x138c2
000138bc 44 fc 00 02 |D | MOVE.W #0x2,CCR
000138c0 4e 76 |Nv | TRAPV
000138c2 de fc 00 4a | J | ADDA.W #0x4a,A7
000138c6 48 e7 ff f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D6+D5+D4+D3+D2+D1+D0,-(A7)
000138ca 45 ee 00 0c |E | LEA.L (A6+0xc),A2
000138ce 47 ee 00 08 |G | LEA.L (A6+0x8),A3
000138d2 49 ee 00 10 |I | LEA.L (A6+0x10),A4
000138d6 74 02 |t | MOVEQ.L #0x02,D2
000138d8 76 01 |v | MOVEQ.L #0x01,D3
000138da 78 05 |x | MOVEQ.L #0x05,D4
000138dc 4a 39 00 01 b0 a2 |J9 | TST.B 0x1b0a2
000138e2 66 0c |f | BNE 0x138f0
000138e4 48 78 00 19 |Hx | PEA.L 0x19
000138e8 4e b9 00 01 02 20 |N | JSR KC10_Panic(code : Long)
000138ee 58 4f |XO | ADDQ.L #0x4,A7
000138f0 4a 94 |J | TST.L (A4)
000138f2 6d 04 |m | BLT 0x138f8
000138f4 7a 00 |z | MOVEQ.L #0x00,D5
000138f6 60 04 |` | BRA 0x138fc
000138f8 44 94 |D | NEG.L (A4)
000138fa 7a 01 |z | MOVEQ.L #0x01,D5
000138fc 20 52 | R | MOVEA.L (A2),A0
000138fe 2f 2e 00 18 |/. | MOVE.L (A6+0x18),-(A7)
00013902 22 53 |"S | MOVEA.L (A3),A1
00013904 48 51 |HQ | PEA.L (A1)
00013906 48 50 |HP | PEA.L (A0)
00013908 4e ba fb 60 |N ` | JSR CheckFilename()
0001390c de fc 00 0c | | ADDA.W #0xc,A7
00013910 4a 10 |J | TST.B (A0)
00013912 67 04 |g | BEQ 0x13918
00013914 60 00 01 2c |` , | BRA 0x13a42
00013918 20 52 | R | MOVEA.L (A2),A0
0001391a 22 53 |"S | MOVEA.L (A3),A1
0001391c 2f 11 |/ | MOVE.L (A1),-(A7)
0001391e 48 50 |HP | PEA.L (A0)
00013920 4e ba fd f6 |N | JSR NameI(Char*, &void)
00013924 50 4f |PO | ADDQ.L #0x8,A7
00013926 4a 10 |J | TST.B (A0)
00013928 67 04 |g | BEQ 0x1392e
0001392a 60 00 01 16 |` | BRA 0x13a42
0001392e 20 53 | S | MOVEA.L (A3),A0
00013930 20 50 | P | MOVEA.L (A0),A0
00013932 2f 08 |/ | MOVE.L A0,-(A7)
00013934 10 28 00 3f | ( ? | MOVE.B (A0+0x3f),D0
00013938 e9 08 | | LSL.B #0x4,D0
0001393a ee 08 | | LSR.B #0x7,D0
0001393c 44 00 |D | NEG.B D0
0001393e 52 00 |R | ADDQ.B #0x1,D0
00013940 1d 40 ff fe | @ | MOVE.B D0,(A6-0x2)
00013944 4a 2e 00 16 |J. | TST.B (A6+0x16)
00013948 66 16 |f | BNE 0x13960
0001394a 4a 00 |J | TST.B D0
0001394c 67 08 |g | BEQ 0x13956
0001394e 58 4f |XO | ADDQ.L #0x4,A7
00013950 60 00 01 16 |` | BRA 0x13a68
00013954 60 0a |` | .XXX[0x2]
00013956 22 52 |"R | MOVEA.L (A2),A1
00013958 12 82 | | MOVE.B D2,(A1)
0001395a 58 4f |XO | ADDQ.L #0x4,A7
0001395c 60 00 00 e4 |` | BRA 0x13a42
00013960 10 2e 00 16 | . | MOVE.B (A6+0x16),D0
00013964 b0 02 | | CMP.B D2,D0
00013966 66 1e |f | BNE 0x13986
00013968 4a 2e ff fe |J. | TST.B (A6-0x2)
0001396c 67 18 |g | BEQ 0x13986
0001396e 20 57 | W | MOVEA.L (A7),A0
00013970 10 28 00 3f | ( ? | MOVE.B (A0+0x3f),D0
00013974 ef 08 | | LSL.B #0x7,D0
00013976 ee 08 | | LSR.B #0x7,D0
00013978 66 0c |f | BNE 0x13986
0001397a 20 52 | R | MOVEA.L (A2),A0
0001397c 10 bc 00 06 | | MOVE.B #0x06,(A0)
00013980 58 4f |XO | ADDQ.L #0x4,A7
00013982 60 00 00 be |` | BRA 0x13a42
00013986 20 57 | W | MOVEA.L (A7),A0
00013988 30 28 00 20 |0( | MOVE.W (A0+0x20),D0
0001398c 48 c0 |H | EXTW.L D0
0001398e b0 94 | | CMP.L (A4),D0
00013990 66 06 |f | BNE 0x13998
00013992 58 4f |XO | ADDQ.L #0x4,A7
00013994 60 00 00 d2 |` | BRA 0x13a68
00013998 20 57 | W | MOVEA.L (A7),A0
0001399a 11 43 00 4c | C L | MOVE.B D3,(A0+0x4c)
0001399e 20 14 | | MOVE.L (A4),D0
000139a0 0c 80 00 00 40 00 | @ | CMPI.L #0x00004000,D0
000139a6 63 02 |c | BLS 0x139aa
000139a8 4e 4f |NO | TRAP #15
000139aa 31 40 00 20 |1@ | MOVE.W D0,(A0+0x20)
000139ae 7e 01 |~ | MOVEQ.L #0x01,D7
000139b0 7c 00 || | MOVEQ.L #0x00,D6
000139b2 bc 84 | | CMP.L D4,D6
000139b4 63 02 |c | BLS 0x139b8
000139b6 4e 4f |NO | TRAP #15
000139b8 20 06 | | MOVE.L D6,D0
000139ba e5 80 | | ASL.L #0x2,D0
000139bc 20 57 | W | MOVEA.L (A7),A0
000139be 32 30 08 22 |20 " | MOVE.W (A0+D0.L+#0x22),D1
000139c2 48 c1 |H | EXTW.L D1
000139c4 b2 94 | | CMP.L (A4),D1
000139c6 6d 02 |m | BLT 0x139ca
000139c8 7e 00 |~ | MOVEQ.L #0x00,D7
000139ca 52 86 |R | ADDQ.L #0x1,D6
000139cc bc 84 | | CMP.L D4,D6
000139ce 6f e2 |o | BLE 0x139b2
000139d0 4a 07 |J | TST.B D7
000139d2 67 62 |gb | BEQ 0x13a36
000139d4 20 57 | W | MOVEA.L (A7),A0
000139d6 10 28 00 3f | ( ? | MOVE.B (A0+0x3f),D0
000139da ef 08 | | LSL.B #0x7,D0
000139dc ee 08 | | LSR.B #0x7,D0
000139de 67 0a |g | BEQ 0x139ea
000139e0 20 52 | R | MOVEA.L (A2),A0
000139e2 10 bc 00 08 | | MOVE.B #0x08,(A0)
000139e6 58 4f |XO | ADDQ.L #0x4,A7
000139e8 60 58 |`X | BRA 0x13a42
000139ea 4a 2e ff fe |J. | TST.B (A6-0x2)
000139ee 67 0c |g | BEQ 0x139fc
000139f0 20 53 | S | MOVEA.L (A3),A0
000139f2 2f 10 |/ | MOVE.L (A0),-(A7)
000139f4 4e b9 00 01 2e 2e |N .. | JSR _FS1037c(MOD a : File)
000139fa 58 4f |XO | ADDQ.L #0x4,A7
000139fc 20 53 | S | MOVEA.L (A3),A0
000139fe 2f 10 |/ | MOVE.L (A0),-(A7)
00013a00 10 05 | | MOVE.B D5,D0
00013a02 48 80 |H | EXTB.W D0
00013a04 41 83 |A | CHK.W D3,D0
00013a06 1f 00 | | MOVE.B D0,-(A7)
00013a08 48 6e ff ff |Hn | PEA.L (A6-0x1)
00013a0c 4e b9 00 01 2d 06 |N - | JSR _FS10378(MOD a : File; b: Byte; VAR c: Bool)
00013a12 de fc 00 0a | | ADDA.W #0xa,A7
00013a16 4a 2e ff ff |J. | TST.B (A6-0x1)
00013a1a 67 1a |g | BEQ 0x13a36
00013a1c 22 52 |"R | MOVEA.L (A2),A1
00013a1e 12 bc 00 04 | | MOVE.B #0x04,(A1)
00013a22 4a 2e ff fe |J. | TST.B (A6-0x2)
00013a26 67 0a |g | BEQ 0x13a32
00013a28 2f 10 |/ | MOVE.L (A0),-(A7)
00013a2a 4e ba fc 12 |N | JSR 0x1363e
00013a2e 50 4f |PO | ADDQ.L #0x8,A7
00013a30 60 10 |` | BRA 0x13a42
00013a32 58 4f |XO | ADDQ.L #0x4,A7
00013a34 60 0c |` | BRA 0x13a42
00013a36 20 53 | S | MOVEA.L (A3),A0
00013a38 2f 10 |/ | MOVE.L (A0),-(A7)
00013a3a 4e ba fb 60 |N ` | JSR 0x1359c
00013a3e 50 4f |PO | ADDQ.L #0x8,A7
00013a40 60 26 |`& | BRA 0x13a68
00013a42 20 53 | S | MOVEA.L (A3),A0
00013a44 48 50 |HP | PEA.L (A0)
00013a46 4e ba f9 50 |N P | JSR 0x13398
00013a4a 58 4f |XO | ADDQ.L #0x4,A7
00013a4c 20 52 | R | MOVEA.L (A2),A0
00013a4e 1f 10 | | MOVE.B (A0),-(A7)
00013a50 1f 2e 00 14 | . | MOVE.B (A6+0x14),-(A7)
00013a54 59 4f |YO | SUBQ.L #0x4,A7
00013a56 2f 2e 00 18 |/. | MOVE.L (A6+0x18),-(A7)
00013a5a 4e b9 00 01 0e da |N | JSR _StringDup(a : String) : String
00013a60 58 4f |XO | ADDQ.L #0x4,A7
00013a62 4e ba f8 a6 |N | JSR ReportError(Byte error, Byte mode, String)
00013a66 50 4f |PO | ADDQ.L #0x8,A7
00013a68 4c df 1f ff |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D5+D6+D7+A0+A1+A2+A3+A4
00013a6c 4e 5e |N^ | UNLK A6
00013a6e 4e 75 |Nu | RTS
00013a70 ; --------------------------------------------------------------------------------------
00013a70 ; OMSI PASCAL Function
00013a70 ; <LVAR 0x00e 2(w)>
00013a70 ; <LVAR 0x00a 4(r)>
00013a70 ; <LVAR 0x008 2(r)>
00013a70 ; --------------------------------------------------------------------------------------
00013a70 4e 56 ff d4 |NV | LINK.W A6,#0xffd4
00013a74 bf d5 | | CMPA.L (A5),A7
00013a76 62 06 |b | BHI 0x13a7e
00013a78 44 fc 00 02 |D | MOVE.W #0x2,CCR
00013a7c 4e 76 |Nv | TRAPV
00013a7e de fc 00 26 | & | ADDA.W #0x26,A7
00013a82 48 e7 e3 80 |H | MOVEM.L A0+D7+D6+D2+D1+D0,-(A7)
00013a86 7c 00 || | MOVEQ.L #0x00,D6
00013a88 7e 00 |~ | MOVEQ.L #0x00,D7
00013a8a 20 6e 00 0a | n | MOVEA.L (A6+0xa),A0
00013a8e 2f 08 |/ | MOVE.L A0,-(A7)
00013a90 0c 86 00 00 00 05 | | CMPI.L #0x00000005,D6
00013a96 63 02 |c | BLS 0x13a9a
00013a98 4e 4f |NO | TRAP #15
00013a9a 20 06 | | MOVE.L D6,D0
00013a9c e5 80 | | ASL.L #0x2,D0
00013a9e 20 57 | W | MOVEA.L (A7),A0
00013aa0 32 30 08 22 |20 " | MOVE.W (A0+D0.L+#0x22),D1
00013aa4 b2 6e 00 08 | n | CMP.W (A6+0x8),D1
00013aa8 6e 0e |n | BGT 0x13ab8
00013aaa 0c 41 ff ff | A | CMPI.W #0xffff,D1
00013aae 63 02 |c | BLS 0x13ab2
00013ab0 4e 4f |NO | TRAP #15
00013ab2 3e 01 |> | MOVE.W D1,D7
00013ab4 52 86 |R | ADDQ.L #0x1,D6
00013ab6 60 d8 |` | BRA 0x13a90
00013ab8 32 2e 00 08 |2. | MOVE.W (A6+0x8),D1
00013abc 48 c1 |H | EXTW.L D1
00013abe 42 82 |B | CLR.L D2
00013ac0 34 07 |4 | MOVE.W D7,D2
00013ac2 44 82 |D | NEG.L D2
00013ac4 d4 81 | | ADD.L D1,D2
00013ac6 42 81 |B | CLR.L D1
00013ac8 32 30 08 24 |20 $ | MOVE.W (A0+D0.L+#0x24),D1
00013acc d4 81 | | ADD.L D1,D2
00013ace 0c 82 00 00 ff ff | | CMPI.L #0x0000ffff,D2
00013ad4 63 02 |c | BLS 0x13ad8
00013ad6 4e 4f |NO | TRAP #15
00013ad8 3d 42 00 0e |=B | MOVE.W D2,(A6+0xe)
00013adc 58 4f |XO | ADDQ.L #0x4,A7
00013ade 4c df 01 c7 |L | MOVEM.L (A7)+,D0+D1+D2+D6+D7+A0
00013ae2 4e 5e |N^ | UNLK A6
00013ae4 4e 75 |Nu | RTS
00013ae6 ; --------------------------------------------------------------------------------------
00013ae6 ; ReadFile(file : File; w : W; x : W; a : W; b: B; c : L; d : L)
00013ae6 ; Stack:
00013ae6 ; A6+0x18 file : File
00013ae6 ; A6+0x16 w : W
00013ae6 ; A6+0x14 x : W
00013ae6 ; A6+0x12 a : W
00013ae6 ; A6+0x10 b : B
00013ae6 ; A6+0xc c : L
00013ae6 ; A6+0x8 d : L
00013ae6 ; OMSI PASCAL Function
00013ae6 ; <LVAR 0x018 4(r)>
00013ae6 ; <LVAR 0x016 2(r)>
00013ae6 ; <LVAR 0x014 2(r)>
00013ae6 ; <LVAR 0x012 2(r)>
00013ae6 ; <LVAR 0x010 1(r)>
00013ae6 ; <LVAR 0x00c 4(r)>
00013ae6 ; <LVAR 0x008 4(r)>
00013ae6 ; <LVAR -0x004 @ 1(r)>
00013ae6 ; --------------------------------------------------------------------------------------
00013ae6 _ReadFile(file : File; w : W; x : W; a : W; b: B; c : L; d : L):
00013ae6 4e 56 ff b2 |NV | LINK.W A6,#0xffb2
00013aea bf d5 | | CMPA.L (A5),A7
00013aec 62 06 |b | BHI 0x13af4
00013aee 44 fc 00 02 |D | MOVE.W #0x2,CCR
00013af2 4e 76 |Nv | TRAPV
00013af4 de fc 00 4a | J | ADDA.W #0x4a,A7
00013af8 48 e7 c0 f0 |H | MOVEM.L A3+A2+A1+A0+D1+D0,-(A7)
00013afc 45 ee 00 08 |E | LEA.L (A6+0x8),A2
00013b00 47 ee 00 18 |G | LEA.L (A6+0x18),A3
00013b04 72 1e |r | MOVEQ.L #0x1e,D1
00013b06 20 52 | R | MOVEA.L (A2),A0
00013b08 42 10 |B | CLR.B (A0)
00013b0a 55 4f |UO | SUBQ.L #0x2,A7
00013b0c 2f 13 |/ | MOVE.L (A3),-(A7)
00013b0e 4e ba f9 10 |N | JSR 0x13420
00013b12 58 4f |XO | ADDQ.L #0x4,A7
00013b14 4a 1f |J | TST.B (A7)+
00013b16 67 06 |g | BEQ 0x13b1e
00013b18 10 bc 00 03 | | MOVE.B #0x03,(A0)
00013b1c 60 60 |`` | BRA 0x13b7e
00013b1e 20 53 | S | MOVEA.L (A3),A0
00013b20 30 2e 00 16 |0. | MOVE.W (A6+0x16),D0
00013b24 b0 68 00 20 | h | CMP.W (A0+0x20),D0
00013b28 6d 08 |m | BLT 0x13b32
00013b2a 20 52 | R | MOVEA.L (A2),A0
00013b2c 10 bc 00 09 | | MOVE.B #0x09,(A0)
00013b30 60 4c |`L | BRA 0x13b7e
00013b32 30 2e 00 14 |0. | MOVE.W (A6+0x14),D0
00013b36 d0 6e 00 12 | n | ADD.W (A6+0x12),D0
00013b3a 0c 40 02 00 | @ | CMPI.W #0x0200,D0
00013b3e 6f 08 |o | BLE 0x13b48
00013b40 20 52 | R | MOVEA.L (A2),A0
00013b42 10 bc 00 0a | | MOVE.B #0x0a,(A0)
00013b46 60 36 |`6 | BRA 0x13b7e
00013b48 55 4f |UO | SUBQ.L #0x2,A7
00013b4a 2f 13 |/ | MOVE.L (A3),-(A7)
00013b4c 3f 2e 00 16 |?. | MOVE.W (A6+0x16),-(A7)
00013b50 4e ba ff 1e |N | JSR 0x13a70
00013b54 58 4f |XO | ADDQ.L #0x4,A7
00013b56 3e ae 00 14 |> | MOVE.W (A6+0x14),(A7)
00013b5a 2f 2e 00 0c |/. | MOVE.L (A6+0xc),-(A7)
00013b5e 3f 2e 00 12 |?. | MOVE.W (A6+0x12),-(A7)
00013b62 48 6e ff fc |Hn | PEA.L (A6-0x4)
00013b66 4e b9 00 01 29 94 |N ) | JSR _ReadWords(lba : W; offset : W; ptr : L; nwords : W; VAR status : B)
00013b6c de fc 00 0e | | ADDA.W #0xe,A7
00013b70 4a 2e ff fc |J. | TST.B (A6-0x4)
00013b74 67 02 |g | BEQ 0x13b78
00013b76 60 38 |`8 | BRA 0x13bb0
00013b78 20 52 | R | MOVEA.L (A2),A0
00013b7a 10 bc 00 0c | | MOVE.B #0x0c,(A0)
00013b7e 20 53 | S | MOVEA.L (A3),A0
00013b80 9e c1 | | SUBA.W D1,A7
00013b82 22 4f |"O | MOVEA.L A7,A1
00013b84 70 1d |p | MOVEQ.L #0x1d,D0
00013b86 12 d8 | | MOVE.B (A0)+,(A1)+
00013b88 51 c8 ff fc |Q | DBF D0,0x13b86
00013b8c 20 52 | R | MOVEA.L (A2),A0
00013b8e 1f 10 | | MOVE.B (A0),-(A7)
00013b90 1f 2e 00 10 | . | MOVE.B (A6+0x10),-(A7)
00013b94 59 4f |YO | SUBQ.L #0x4,A7
00013b96 48 6f 00 08 |Ho | PEA.L (A7+0x8)
00013b9a 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
00013b9e 3f 01 |? | MOVE.W D1,-(A7)
00013ba0 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00013ba6 50 4f |PO | ADDQ.L #0x8,A7
00013ba8 4e ba f7 60 |N ` | JSR ReportError(Byte error, Byte mode, String)
00013bac de fc 00 26 | & | ADDA.W #0x26,A7
00013bb0 4c df 0f 03 |L | MOVEM.L (A7)+,D0+D1+A0+A1+A2+A3
00013bb4 4e 5e |N^ | UNLK A6
00013bb6 4e 75 |Nu | RTS
00013bb8 ; --------------------------------------------------------------------------------------
00013bb8 ; WriteFile(file : File; y : W; x : W; a : W; b: B; c: L; d: L)
00013bb8 ; Stack:
00013bb8 ; A6+0x18 file : File
00013bb8 ; A6+0x16 y : W
00013bb8 ; A6+0x14 x : W
00013bb8 ; A6+0x12 a : W
00013bb8 ; A6+0x10 b : B
00013bb8 ; A6+0xc c : L
00013bb8 ; A6+0x8 d : L
00013bb8 ; OMSI PASCAL Function
00013bb8 ; <LVAR 0x018 4(r)>
00013bb8 ; <LVAR 0x016 2(r)>
00013bb8 ; <LVAR 0x014 2(r)>
00013bb8 ; <LVAR 0x012 2(r)>
00013bb8 ; <LVAR 0x010 1(r)>
00013bb8 ; <LVAR 0x00c 4(r)>
00013bb8 ; <LVAR 0x008 4(r)>
00013bb8 ; <LVAR -0x004 @ 1(r)>
00013bb8 ; --------------------------------------------------------------------------------------
00013bb8 _WriteFile(file : File; y : W; x : W; a : W; b: B; c: L; d: L):
00013bb8 4e 56 ff b2 |NV | LINK.W A6,#0xffb2
00013bbc bf d5 | | CMPA.L (A5),A7
00013bbe 62 06 |b | BHI 0x13bc6
00013bc0 44 fc 00 02 |D | MOVE.W #0x2,CCR
00013bc4 4e 76 |Nv | TRAPV
00013bc6 de fc 00 4a | J | ADDA.W #0x4a,A7
00013bca 48 e7 c0 f0 |H | MOVEM.L A3+A2+A1+A0+D1+D0,-(A7)
00013bce 45 ee 00 08 |E | LEA.L (A6+0x8),A2
00013bd2 47 ee 00 18 |G | LEA.L (A6+0x18),A3
00013bd6 72 1e |r | MOVEQ.L #0x1e,D1
00013bd8 20 52 | R | MOVEA.L (A2),A0
00013bda 42 10 |B | CLR.B (A0)
00013bdc 55 4f |UO | SUBQ.L #0x2,A7
00013bde 2f 13 |/ | MOVE.L (A3),-(A7)
00013be0 4e ba f8 3e |N > | JSR 0x13420
00013be4 58 4f |XO | ADDQ.L #0x4,A7
00013be6 4a 1f |J | TST.B (A7)+
00013be8 67 06 |g | BEQ 0x13bf0
00013bea 10 bc 00 03 | | MOVE.B #0x03,(A0)
00013bee 60 60 |`` | BRA 0x13c50
00013bf0 20 53 | S | MOVEA.L (A3),A0
00013bf2 30 2e 00 16 |0. | MOVE.W (A6+0x16),D0
00013bf6 b0 68 00 20 | h | CMP.W (A0+0x20),D0
00013bfa 6d 08 |m | BLT 0x13c04
00013bfc 20 52 | R | MOVEA.L (A2),A0
00013bfe 10 bc 00 09 | | MOVE.B #0x09,(A0)
00013c02 60 4c |`L | BRA 0x13c50
00013c04 30 2e 00 14 |0. | MOVE.W (A6+0x14),D0
00013c08 d0 6e 00 12 | n | ADD.W (A6+0x12),D0
00013c0c 0c 40 02 00 | @ | CMPI.W #0x0200,D0
00013c10 6f 08 |o | BLE 0x13c1a
00013c12 20 52 | R | MOVEA.L (A2),A0
00013c14 10 bc 00 0a | | MOVE.B #0x0a,(A0)
00013c18 60 36 |`6 | BRA 0x13c50
00013c1a 55 4f |UO | SUBQ.L #0x2,A7
00013c1c 2f 13 |/ | MOVE.L (A3),-(A7)
00013c1e 3f 2e 00 16 |?. | MOVE.W (A6+0x16),-(A7)
00013c22 4e ba fe 4c |N L | JSR 0x13a70
00013c26 58 4f |XO | ADDQ.L #0x4,A7
00013c28 3e ae 00 14 |> | MOVE.W (A6+0x14),(A7)
00013c2c 2f 2e 00 0c |/. | MOVE.L (A6+0xc),-(A7)
00013c30 3f 2e 00 12 |?. | MOVE.W (A6+0x12),-(A7)
00013c34 48 6e ff fc |Hn | PEA.L (A6-0x4)
00013c38 4e b9 00 01 2a 5a |N *Z | JSR _WriteWords(lba : W; offset : W; ptr : L; nwords : W; VAR status : B)
00013c3e de fc 00 0e | | ADDA.W #0xe,A7
00013c42 4a 2e ff fc |J. | TST.B (A6-0x4)
00013c46 67 02 |g | BEQ 0x13c4a
00013c48 60 38 |`8 | BRA 0x13c82
00013c4a 20 52 | R | MOVEA.L (A2),A0
00013c4c 10 bc 00 0c | | MOVE.B #0x0c,(A0)
00013c50 20 53 | S | MOVEA.L (A3),A0
00013c52 9e c1 | | SUBA.W D1,A7
00013c54 22 4f |"O | MOVEA.L A7,A1
00013c56 70 1d |p | MOVEQ.L #0x1d,D0
00013c58 12 d8 | | MOVE.B (A0)+,(A1)+
00013c5a 51 c8 ff fc |Q | DBF D0,0x13c58
00013c5e 20 52 | R | MOVEA.L (A2),A0
00013c60 1f 10 | | MOVE.B (A0),-(A7)
00013c62 1f 2e 00 10 | . | MOVE.B (A6+0x10),-(A7)
00013c66 59 4f |YO | SUBQ.L #0x4,A7
00013c68 48 6f 00 08 |Ho | PEA.L (A7+0x8)
00013c6c 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
00013c70 3f 01 |? | MOVE.W D1,-(A7)
00013c72 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00013c78 50 4f |PO | ADDQ.L #0x8,A7
00013c7a 4e ba f6 8e |N | JSR ReportError(Byte error, Byte mode, String)
00013c7e de fc 00 26 | & | ADDA.W #0x26,A7
00013c82 4c df 0f 03 |L | MOVEM.L (A7)+,D0+D1+A0+A1+A2+A3
00013c86 4e 5e |N^ | UNLK A6
00013c88 4e 75 |Nu | RTS
00013c8a ; --------------------------------------------------------------------------------------
00013c8a ; CloseFile(a : L; VAR status : B; VAR file : File)
00013c8a ; Stack:
00013c8a ; A6+0x10 a : L
00013c8a ; A6+0xc VAR status : B
00013c8a ; A6+0x8 VAR file : File
00013c8a ; OMSI PASCAL Function
00013c8a ; <LVAR 0x016 1(r)>
00013c8a ; <LVAR 0x014 1(r)>
00013c8a ; <LVAR 0x010 4(r)>
00013c8a ; <LVAR 0x00c 4(r)>
00013c8a ; <LVAR 0x008 4(r)>
00013c8a ; <LVAR -0x004 @ 4(r)>
00013c8a ; --------------------------------------------------------------------------------------
00013c8a _CloseFile(a : L; VAR status : B; VAR file : File):
00013c8a 4e 56 ff aa |NV | LINK.W A6,#0xffaa
00013c8e bf d5 | | CMPA.L (A5),A7
00013c90 62 06 |b | BHI 0x13c98
00013c92 44 fc 00 02 |D | MOVE.W #0x2,CCR
00013c96 4e 76 |Nv | TRAPV
00013c98 de fc 00 52 | R | ADDA.W #0x52,A7
00013c9c 48 e7 e0 f8 |H | MOVEM.L A4+A3+A2+A1+A0+D2+D1+D0,-(A7)
00013ca0 47 ee 00 0c |G | LEA.L (A6+0xc),A3
00013ca4 49 ee 00 08 |I | LEA.L (A6+0x8),A4
00013ca8 72 01 |r | MOVEQ.L #0x01,D1
00013caa 74 1e |t | MOVEQ.L #0x1e,D2
00013cac 4a 39 00 01 b0 a2 |J9 | TST.B 0x1b0a2
00013cb2 66 0c |f | BNE 0x13cc0
00013cb4 48 78 00 18 |Hx | PEA.L 0x18
00013cb8 4e b9 00 01 02 20 |N | JSR KC10_Panic(code : Long)
00013cbe 58 4f |XO | ADDQ.L #0x4,A7
00013cc0 55 4f |UO | SUBQ.L #0x2,A7
00013cc2 20 54 | T | MOVEA.L (A4),A0
00013cc4 2f 10 |/ | MOVE.L (A0),-(A7)
00013cc6 4e ba f7 58 |N X | JSR 0x13420
00013cca 58 4f |XO | ADDQ.L #0x4,A7
00013ccc 4a 1f |J | TST.B (A7)+
00013cce 67 1a |g | BEQ 0x13cea
00013cd0 20 53 | S | MOVEA.L (A3),A0
00013cd2 10 bc 00 03 | | MOVE.B #0x03,(A0)
00013cd6 1f 10 | | MOVE.B (A0),-(A7)
00013cd8 1f 2e 00 14 | . | MOVE.B (A6+0x14),-(A7)
00013cdc 48 78 00 01 |Hx | PEA.L 0x1
00013ce0 4e ba f6 28 |N ( | JSR ReportError(Byte error, Byte mode, String)
00013ce4 50 4f |PO | ADDQ.L #0x8,A7
00013ce6 60 00 01 6c |` l | BRA 0x13e54
00013cea 20 53 | S | MOVEA.L (A3),A0
00013cec 42 10 |B | CLR.B (A0)
00013cee 20 54 | T | MOVEA.L (A4),A0
00013cf0 20 50 | P | MOVEA.L (A0),A0
00013cf2 b1 f9 00 01 00 26 | & | CMPA.L 0x10026,A0
00013cf8 66 06 |f | BNE 0x13d00
00013cfa 23 c1 00 01 00 26 |# & | MOVE.L D1,0x10026
00013d00 4a 2e 00 16 |J. | TST.B (A6+0x16)
00013d04 66 04 |f | BNE 0x13d0a
00013d06 60 00 01 38 |` 8 | BRA 0x13e40
00013d0a 20 54 | T | MOVEA.L (A4),A0
00013d0c 20 50 | P | MOVEA.L (A0),A0
00013d0e 2f 08 |/ | MOVE.L A0,-(A7)
00013d10 10 28 00 3f | ( ? | MOVE.B (A0+0x3f),D0
00013d14 ef 08 | | LSL.B #0x7,D0
00013d16 ee 08 | | LSR.B #0x7,D0
00013d18 67 0c |g | BEQ 0x13d26
00013d1a 20 53 | S | MOVEA.L (A3),A0
00013d1c 10 bc 00 08 | | MOVE.B #0x08,(A0)
00013d20 58 4f |XO | ADDQ.L #0x4,A7
00013d22 60 00 00 ea |` | BRA 0x13e0e
00013d26 10 2e 00 16 | . | MOVE.B (A6+0x16),D0
00013d2a 0c 00 00 02 | | CMPI.B #0x02,D0
00013d2e 66 16 |f | BNE 0x13d46
00013d30 20 54 | T | MOVEA.L (A4),A0
00013d32 2f 10 |/ | MOVE.L (A0),-(A7)
00013d34 4e ba f9 08 |N | JSR 0x1363e
00013d38 2e 90 |. | MOVE.L (A0),(A7)
00013d3a 4e b9 00 01 2e 2e |N .. | JSR _FS1037c(MOD a : File)
00013d40 50 4f |PO | ADDQ.L #0x8,A7
00013d42 60 00 01 06 |` | BRA 0x13e4a
00013d46 10 2e 00 16 | . | MOVE.B (A6+0x16),D0
00013d4a b0 01 | | CMP.B D1,D0
00013d4c 66 00 00 96 |f | BNE 0x13de4
00013d50 20 6e 00 10 | n | MOVEA.L (A6+0x10),A0
00013d54 b0 c1 | | CMPA.W D1,A0
00013d56 66 0a |f | BNE 0x13d62
00013d58 20 53 | S | MOVEA.L (A3),A0
00013d5a 10 81 | | MOVE.B D1,(A0)
00013d5c 58 4f |XO | ADDQ.L #0x4,A7
00013d5e 60 00 00 ae |` | BRA 0x13e0e
00013d62 20 53 | S | MOVEA.L (A3),A0
00013d64 2f 2e 00 10 |/. | MOVE.L (A6+0x10),-(A7)
00013d68 48 6e ff fc |Hn | PEA.L (A6-0x4)
00013d6c 48 50 |HP | PEA.L (A0)
00013d6e 4e ba f6 fa |N | JSR CheckFilename()
00013d72 de fc 00 0c | | ADDA.W #0xc,A7
00013d76 4a 10 |J | TST.B (A0)
00013d78 67 04 |g | BEQ 0x13d7e
00013d7a 58 4f |XO | ADDQ.L #0x4,A7
00013d7c 60 68 |`h | BRA 0x13de6
00013d7e 20 53 | S | MOVEA.L (A3),A0
00013d80 2f 2e ff fc |/. | MOVE.L (A6-0x4),-(A7)
00013d84 48 50 |HP | PEA.L (A0)
00013d86 4e ba f9 90 |N | JSR NameI(Char*, &void)
00013d8a 50 4f |PO | ADDQ.L #0x8,A7
00013d8c 4a 10 |J | TST.B (A0)
00013d8e 67 04 |g | BEQ 0x13d94
00013d90 58 4f |XO | ADDQ.L #0x4,A7
00013d92 60 52 |`R | BRA 0x13de6
00013d94 20 6e ff fc | n | MOVEA.L (A6-0x4),A0
00013d98 10 28 00 3f | ( ? | MOVE.B (A0+0x3f),D0
00013d9c e9 08 | | LSL.B #0x4,D0
00013d9e ee 08 | | LSR.B #0x7,D0
00013da0 66 0a |f | BNE 0x13dac
00013da2 20 53 | S | MOVEA.L (A3),A0
00013da4 10 bc 00 06 | | MOVE.B #0x06,(A0)
00013da8 58 4f |XO | ADDQ.L #0x4,A7
00013daa 60 3a |`: | BRA 0x13de6
00013dac 20 6e ff fc | n | MOVEA.L (A6-0x4),A0
00013db0 22 57 |"W | MOVEA.L (A7),A1
00013db2 45 e8 00 20 |E | LEA.L (A0+0x20),A2
00013db6 43 e9 00 20 |C | LEA.L (A1+0x20),A1
00013dba 70 1f |p | MOVEQ.L #0x1f,D0
00013dbc 14 d9 | | MOVE.B (A1)+,(A2)+
00013dbe 51 c8 ff fc |Q | DBF D0,0x13dbc
00013dc2 11 41 00 4c | A L | MOVE.B D1,(A0+0x4c)
00013dc6 20 54 | T | MOVEA.L (A4),A0
00013dc8 2f 10 |/ | MOVE.L (A0),-(A7)
00013dca 4e ba f8 72 |N r | JSR 0x1363e
00013dce 2e ae ff fc |. | MOVE.L (A6-0x4),(A7)
00013dd2 4e ba f7 c8 |N | JSR 0x1359c
00013dd6 58 4f |XO | ADDQ.L #0x4,A7
00013dd8 48 6e ff fc |Hn | PEA.L (A6-0x4)
00013ddc 4e ba f5 ba |N | JSR 0x13398
00013de0 60 00 ff 5e |` ^ | BRA 0x13d40
00013de4 58 4f |XO | ADDQ.L #0x4,A7
00013de6 20 53 | S | MOVEA.L (A3),A0
00013de8 1f 10 | | MOVE.B (A0),-(A7)
00013dea 1f 2e 00 14 | . | MOVE.B (A6+0x14),-(A7)
00013dee 59 4f |YO | SUBQ.L #0x4,A7
00013df0 2f 2e 00 10 |/. | MOVE.L (A6+0x10),-(A7)
00013df4 4e b9 00 01 0e da |N | JSR _StringDup(a : String) : String
00013dfa 58 4f |XO | ADDQ.L #0x4,A7
00013dfc 4e ba f5 0c |N | JSR ReportError(Byte error, Byte mode, String)
00013e00 50 4f |PO | ADDQ.L #0x8,A7
00013e02 48 6e ff fc |Hn | PEA.L (A6-0x4)
00013e06 4e ba f5 90 |N | JSR 0x13398
00013e0a 58 4f |XO | ADDQ.L #0x4,A7
00013e0c 60 32 |`2 | BRA 0x13e40
00013e0e 20 54 | T | MOVEA.L (A4),A0
00013e10 20 50 | P | MOVEA.L (A0),A0
00013e12 9e c2 | | SUBA.W D2,A7
00013e14 22 4f |"O | MOVEA.L A7,A1
00013e16 70 1d |p | MOVEQ.L #0x1d,D0
00013e18 12 d8 | | MOVE.B (A0)+,(A1)+
00013e1a 51 c8 ff fc |Q | DBF D0,0x13e18
00013e1e 20 53 | S | MOVEA.L (A3),A0
00013e20 1f 10 | | MOVE.B (A0),-(A7)
00013e22 1f 2e 00 14 | . | MOVE.B (A6+0x14),-(A7)
00013e26 59 4f |YO | SUBQ.L #0x4,A7
00013e28 48 6f 00 08 |Ho | PEA.L (A7+0x8)
00013e2c 3f 01 |? | MOVE.W D1,-(A7)
00013e2e 3f 02 |? | MOVE.W D2,-(A7)
00013e30 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00013e36 50 4f |PO | ADDQ.L #0x8,A7
00013e38 4e ba f4 d0 |N | JSR ReportError(Byte error, Byte mode, String)
00013e3c de fc 00 26 | & | ADDA.W #0x26,A7
00013e40 20 54 | T | MOVEA.L (A4),A0
00013e42 2f 10 |/ | MOVE.L (A0),-(A7)
00013e44 4e ba f7 56 |N V | JSR 0x1359c
00013e48 58 4f |XO | ADDQ.L #0x4,A7
00013e4a 20 54 | T | MOVEA.L (A4),A0
00013e4c 48 50 |HP | PEA.L (A0)
00013e4e 4e ba f5 48 |N H | JSR 0x13398
00013e52 58 4f |XO | ADDQ.L #0x4,A7
00013e54 4c df 1f 07 |L | MOVEM.L (A7)+,D0+D1+D2+A0+A1+A2+A3+A4
00013e58 4e 5e |N^ | UNLK A6
00013e5a 4e 75 |Nu | RTS
00013e5c ; --------------------------------------------------------------------------------------
00013e5c ; WriteFreeList(void)
00013e5c ; Stack:
00013e5c ; OMSI PASCAL Function
00013e5c ; <LVAR -0x004 @ 1(r)>
00013e5c ; --------------------------------------------------------------------------------------
00013e5c _WriteFreeList(void):
00013e5c 4e 56 ff d8 |NV | LINK.W A6,#0xffd8
00013e60 bf d5 | | CMPA.L (A5),A7
00013e62 62 06 |b | BHI 0x13e6a
00013e64 44 fc 00 02 |D | MOVE.W #0x2,CCR
00013e68 4e 76 |Nv | TRAPV
00013e6a de fc 00 24 | $ | ADDA.W #0x24,A7
00013e6e 48 e7 c0 c0 |H | MOVEM.L A1+A0+D1+D0,-(A7)
00013e72 43 ee ff fc |C | LEA.L (A6-0x4),A1
00013e76 70 03 |p | MOVEQ.L #0x03,D0
00013e78 72 10 |r | MOVEQ.L #0x10,D1
00013e7a 4a 79 00 01 00 10 |Jy | TST.W superblock_sector.freelist_lba
00013e80 67 2e |g. | BEQ 0x13eb0
00013e82 1f 00 | | MOVE.B D0,-(A7)
00013e84 3f 39 00 01 00 10 |?9 | MOVE.W superblock_sector.freelist_lba,-(A7)
00013e8a 48 78 00 01 |Hx | PEA.L 0x1
00013e8e 41 f9 00 01 00 22 |A " | LEA.L freelist_sector,A0
00013e94 2f 08 |/ | MOVE.L A0,-(A7)
00013e96 48 51 |HQ | PEA.L (A1)
00013e98 4e b9 00 01 27 c4 |N ' | JSR _RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
00013e9e de c1 | | ADDA.W D1,A7
00013ea0 4a 11 |J | TST.B (A1)
00013ea2 66 0c |f | BNE 0x13eb0
00013ea4 48 78 00 0a |Hx | PEA.L 0xa
00013ea8 4e b9 00 01 02 20 |N | JSR KC10_Panic(code : Long)
00013eae 58 4f |XO | ADDQ.L #0x4,A7
00013eb0 1f 00 | | MOVE.B D0,-(A7)
00013eb2 3f 3c 00 04 |?< | MOVE.W #0x4,-(A7)
00013eb6 48 78 00 01 |Hx | PEA.L 0x1
00013eba 41 f9 00 01 00 0e |A | LEA.L superblock_sector,A0
00013ec0 2f 08 |/ | MOVE.L A0,-(A7)
00013ec2 48 51 |HQ | PEA.L (A1)
00013ec4 4e b9 00 01 27 c4 |N ' | JSR _RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
00013eca de c1 | | ADDA.W D1,A7
00013ecc 4a 11 |J | TST.B (A1)
00013ece 66 0c |f | BNE 0x13edc
00013ed0 48 78 00 09 |Hx | PEA.L 0x9
00013ed4 4e b9 00 01 02 20 |N | JSR KC10_Panic(code : Long)
00013eda 58 4f |XO | ADDQ.L #0x4,A7
00013edc 4c df 03 03 |L | MOVEM.L (A7)+,D0+D1+A0+A1
00013ee0 4e 5e |N^ | UNLK A6
00013ee2 4e 75 |Nu | RTS
00013ee4 ; --------------------------------------------------------------------------------------
00013ee4 ; MountDisk(drive : Word ; VAR status : Byte)
00013ee4 ; Stack:
00013ee4 ; A6+0xc drive : Word
00013ee4 ; A6+0x8 VAR status : Byte
00013ee4 ; OMSI PASCAL Function
00013ee4 ; <LVAR 0x00c 2(r)>
00013ee4 ; <LVAR 0x008 4(r)>
00013ee4 ; <LVAR -0x00a @ 1(r)>
00013ee4 ; <LVAR -0x408 2(r)>
00013ee4 ; <LVAR -0x40a @ 2(r)>
00013ee4 ; --------------------------------------------------------------------------------------
00013ee4 _MountDisk(drive : Word ; VAR status : Byte):
00013ee4 4e 56 fb ba |NV | LINK.W A6,#0xfbba
00013ee8 bf d5 | | CMPA.L (A5),A7
00013eea 62 06 |b | BHI 0x13ef2
00013eec 44 fc 00 02 |D | MOVE.W #0x2,CCR
00013ef0 4e 76 |Nv | TRAPV
00013ef2 de fc 00 3c | < | ADDA.W #0x3c,A7
00013ef6 48 e7 f8 f8 |H | MOVEM.L A4+A3+A2+A1+A0+D4+D3+D2+D1+D0,-(A7)
00013efa 45 ee fb f6 |E | LEA.L (A6-0x40a),A2
00013efe 74 02 |t | MOVEQ.L #0x02,D2
00013f00 76 01 |v | MOVEQ.L #0x01,D3
00013f02 78 10 |x | MOVEQ.L #0x10,D4
00013f04 42 27 |B' | CLR.B -(A7)
00013f06 4e b9 00 01 47 40 |N G@ | JSR _Set_is_open_ERROR_LOG(a : Bool)
00013f0c 54 4f |TO | ADDQ.L #0x2,A7
00013f0e 42 39 00 01 b0 a2 |B9 | CLR.B 0x1b0a2
00013f14 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00013f18 10 bc 00 0c | | MOVE.B #0x0c,(A0)
00013f1c 33 ee 00 0c 00 01 00 08 |3 | MOVE.W (A6+0xc),mounted_drive
00013f24 23 c3 00 01 00 26 |# & | MOVE.L D3,0x10026
00013f2a 33 fc 7f ff 00 01 00 0a |3 | MOVE.W #0x7fff,sec_per_track
00013f32 33 fc 7f ff 00 01 00 0c |3 | MOVE.W #0x7fff,sec_per_cyl
00013f3a 23 c3 00 02 00 20 |# | MOVE.L D3,0x20020
00013f40 1f 02 | | MOVE.B D2,-(A7)
00013f42 3f 02 |? | MOVE.W D2,-(A7)
00013f44 48 78 00 01 |Hx | PEA.L 0x1
00013f48 20 4a | J | MOVEA.L A2,A0
00013f4a 2f 08 |/ | MOVE.L A0,-(A7)
00013f4c 48 6e ff f6 |Hn | PEA.L (A6-0xa)
00013f50 4e b9 00 01 27 c4 |N ' | JSR _RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
00013f56 de c4 | | ADDA.W D4,A7
00013f58 4a 2e ff f6 |J. | TST.B (A6-0xa)
00013f5c 66 04 |f | BNE 0x13f62
00013f5e 60 00 00 dc |` | BRA 0x1403c
00013f62 20 4a | J | MOVEA.L A2,A0
00013f64 2f 08 |/ | MOVE.L A0,-(A7)
00013f66 26 5f |&_ | MOVEA.L (A7)+,A3
00013f68 30 2b 00 02 |0+ | MOVE.W (A3+0x2),D0
00013f6c 0c 40 7f ed | @ | CMPI.W #0x7fed,D0
00013f70 67 0c |g | BEQ 0x13f7e
00013f72 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00013f76 10 bc 00 0d | | MOVE.B #0x0d,(A0)
00013f7a 60 00 00 c0 |` | BRA 0x1403c
00013f7e 4a 2b 00 34 |J+ 4 | TST.B (A3+0x34)
00013f82 66 0c |f | BNE 0x13f90
00013f84 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00013f88 10 bc 00 0e | | MOVE.B #0x0e,(A0)
00013f8c 60 00 00 ae |` | BRA 0x1403c
00013f90 42 80 |B | CLR.L D0
00013f92 10 2b 00 0b | + | MOVE.B (A3+0xb),D0
00013f96 e2 40 | @ | ASR.W #0x1,D0
00013f98 33 c0 00 01 00 0a |3 | MOVE.W D0,sec_per_track
00013f9e 42 81 |B | CLR.L D1
00013fa0 12 2b 00 0a | + | MOVE.B (A3+0xa),D1
00013fa4 c0 c1 | | MULU.W D1,D0
00013fa6 0c 80 00 00 ff ff | | CMPI.L #0x0000ffff,D0
00013fac 63 02 |c | BLS 0x13fb0
00013fae 4e 4f |NO | TRAP #15
00013fb0 33 c0 00 01 00 0c |3 | MOVE.W D0,sec_per_cyl
00013fb6 1f 02 | | MOVE.B D2,-(A7)
00013fb8 3f 3c 00 04 |?< | MOVE.W #0x4,-(A7)
00013fbc 48 78 00 01 |Hx | PEA.L 0x1
00013fc0 20 4a | J | MOVEA.L A2,A0
00013fc2 2f 08 |/ | MOVE.L A0,-(A7)
00013fc4 48 6e ff f6 |Hn | PEA.L (A6-0xa)
00013fc8 4e b9 00 01 27 c4 |N ' | JSR _RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
00013fce de c4 | | ADDA.W D4,A7
00013fd0 4a 2e ff f6 |J. | TST.B (A6-0xa)
00013fd4 66 02 |f | BNE 0x13fd8
00013fd6 60 64 |`d | BRA 0x1403c
00013fd8 20 4a | J | MOVEA.L A2,A0
00013fda 2f 08 |/ | MOVE.L A0,-(A7)
00013fdc 28 5f |(_ | MOVEA.L (A7)+,A4
00013fde 41 f9 00 01 00 0e |A | LEA.L superblock_sector,A0
00013fe4 22 4c |"L | MOVEA.L A4,A1
00013fe6 70 13 |p | MOVEQ.L #0x13,D0
00013fe8 10 d9 | | MOVE.B (A1)+,(A0)+
00013fea 51 c8 ff fc |Q | DBF D0,0x13fe8
00013fee 4a 79 00 01 00 10 |Jy | TST.W superblock_sector.freelist_lba
00013ff4 66 08 |f | BNE 0x13ffe
00013ff6 42 79 00 01 00 22 |By " | CLR.W freelist_sector
00013ffc 60 32 |`2 | BRA 0x14030
00013ffe 1f 02 | | MOVE.B D2,-(A7)
00014000 3f 39 00 01 00 10 |?9 | MOVE.W superblock_sector.freelist_lba,-(A7)
00014006 48 78 00 01 |Hx | PEA.L 0x1
0001400a 20 4a | J | MOVEA.L A2,A0
0001400c 2f 08 |/ | MOVE.L A0,-(A7)
0001400e 48 6e ff f6 |Hn | PEA.L (A6-0xa)
00014012 4e b9 00 01 27 c4 |N ' | JSR _RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
00014018 de c4 | | ADDA.W D4,A7
0001401a 4a 2e ff f6 |J. | TST.B (A6-0xa)
0001401e 66 02 |f | BNE 0x14022
00014020 60 1a |` | BRA 0x1403c
00014022 33 d2 00 01 00 22 |3 " | MOVE.W (A2),freelist_sector
00014028 33 ee fb f8 00 01 00 24 |3 $| MOVE.W (A6-0x408),0x10024
00014030 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00014034 42 10 |B | CLR.B (A0)
00014036 13 c3 00 01 b0 a2 | | MOVE.B D3,0x1b0a2
0001403c 4c df 1f 1f |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+A0+A1+A2+A3+A4
00014040 4e 5e |N^ | UNLK A6
00014042 4e 75 |Nu | RTS
00014044 ; --------------------------------------------------------------------------------------
00014044 ; FSCALL_10398
00014044 ; OMSI PASCAL Function
00014044 ; <LVAR -0x004 @ 1(r)>
00014044 ; <LVAR -0x006 @ 2(rw)>
00014044 ; <LVAR -0x008 @ 1(r)>
00014044 ; --------------------------------------------------------------------------------------
00014044 _FSCALL_10398:
00014044 4e 56 ff a2 |NV | LINK.W A6,#0xffa2
00014048 bf d5 | | CMPA.L (A5),A7
0001404a 62 06 |b | BHI 0x14052
0001404c 44 fc 00 02 |D | MOVE.W #0x2,CCR
00014050 4e 76 |Nv | TRAPV
00014052 de fc 00 56 | V | ADDA.W #0x56,A7
00014056 48 e7 e0 e0 |H | MOVEM.L A2+A1+A0+D2+D1+D0,-(A7)
0001405a 43 ee ff fa |C | LEA.L (A6-0x6),A1
0001405e 45 ee ff fc |E | LEA.L (A6-0x4),A2
00014062 72 01 |r | MOVEQ.L #0x01,D1
00014064 74 2a |t* | MOVEQ.L #0x2a,D2
00014066 4e b9 00 01 5b 84 |N [ | JSR _FSCALL_10400
0001406c 48 6e ff f8 |Hn | PEA.L (A6-0x8)
00014070 48 51 |HQ | PEA.L (A1)
00014072 4e b9 00 01 02 00 |N | JSR KC00_GetBootDev(VAR a : Byte; VAR b : Word)
00014078 50 4f |PO | ADDQ.L #0x8,A7
0001407a 10 2e ff f8 | . | MOVE.B (A6-0x8),D0
0001407e 0c 00 00 02 | | CMPI.B #0x02,D0
00014082 67 54 |gT | BEQ 0x140d8
00014084 42 27 |B' | CLR.B -(A7)
00014086 4e b9 00 01 5c 7e |N \~ | JSR _SetSomeKindOfFlag(a : Byte)
0001408c 3e 81 |> | MOVE.W D1,(A7)
0001408e 1f 01 | | MOVE.B D1,-(A7)
00014090 4e b9 00 01 02 10 |N | JSR KC08_PortSomething(port: Word; b: Byte)
00014096 58 4f |XO | ADDQ.L #0x4,A7
00014098 41 fa ee 3a |A : | LEA.L 0x12ed4,A0
0001409c 70 14 |p | MOVEQ.L #0x14,D0
0001409e 3f 20 |? | MOVE.W -(A0),-(A7)
000140a0 51 c8 ff fc |Q | DBF D0,0x1409e
000140a4 51 4f |QO | SUBQ.L #0x8,A7
000140a6 48 6f 00 08 |Ho | PEA.L (A7+0x8)
000140aa 3f 01 |? | MOVE.W D1,-(A7)
000140ac 3f 02 |? | MOVE.W D2,-(A7)
000140ae 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
000140b4 50 4f |PO | ADDQ.L #0x8,A7
000140b6 48 78 00 00 |Hx | PEA.L 0x0
000140ba 48 78 00 0f |Hx | PEA.L 0xf
000140be 4e b9 00 01 59 50 |N YP | JSR _AskOnConsoleIntRange(prompt: String; low : Long; High : Long) : Long
000140c4 de fc 00 0c | | ADDA.W #0xc,A7
000140c8 20 1f | | MOVE.L (A7)+,D0
000140ca 0c 80 00 00 ff ff | | CMPI.L #0x0000ffff,D0
000140d0 63 02 |c | BLS 0x140d4
000140d2 4e 4f |NO | TRAP #15
000140d4 de c2 | | ADDA.W D2,A7
000140d6 32 80 |2 | MOVE.W D0,(A1)
000140d8 30 11 |0 | MOVE.W (A1),D0
000140da 41 bc 00 0f |A | CHK.W #0xf,D0
000140de 3f 00 |? | MOVE.W D0,-(A7)
000140e0 48 52 |HR | PEA.L (A2)
000140e2 4e ba fe 00 |N | JSR _MountDisk(drive : Word ; VAR status : Byte)
000140e6 5c 4f |\O | ADDQ.L #0x6,A7
000140e8 4a 12 |J | TST.B (A2)
000140ea 67 20 |g | BEQ 0x1410c
000140ec 59 4f |YO | SUBQ.L #0x4,A7
000140ee 1f 12 | | MOVE.B (A2),-(A7)
000140f0 4e b9 00 01 43 0c |N C | JSR _FsErrMsgStr(err: Byte) : String
000140f6 54 4f |TO | ADDQ.L #0x2,A7
000140f8 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
000140fe 58 4f |XO | ADDQ.L #0x4,A7
00014100 48 78 00 0f |Hx | PEA.L 0xf
00014104 4e b9 00 01 02 20 |N | JSR KC10_Panic(code : Long)
0001410a 58 4f |XO | ADDQ.L #0x4,A7
0001410c 4e b9 00 01 44 58 |N DX | JSR _Open_ERROR_LOG(void)
00014112 4c df 07 07 |L | MOVEM.L (A7)+,D0+D1+D2+A0+A1+A2
00014116 4e 5e |N^ | UNLK A6
00014118 4e 75 |Nu | RTS
0001411a ; --------------------------------------------------------------------------------------
0001411a ; OMSI PASCAL Function
0001411a ; <LVAR 0x010 1(rw)>
0001411a ; <LVAR 0x00c 4(r)>
0001411a ; <LVAR 0x008 4(r)>
0001411a ; --------------------------------------------------------------------------------------
0001411a 4e 56 ff c4 |NV | LINK.W A6,#0xffc4
0001411e bf d5 | | CMPA.L (A5),A7
00014120 62 06 |b | BHI 0x14128
00014122 44 fc 00 02 |D | MOVE.W #0x2,CCR
00014126 4e 76 |Nv | TRAPV
00014128 de fc 00 38 | 8 | ADDA.W #0x38,A7
0001412c 48 e7 e1 e0 |H | MOVEM.L A2+A1+A0+D7+D2+D1+D0,-(A7)
00014130 45 ee 00 10 |E | LEA.L (A6+0x10),A2
00014134 74 05 |t | MOVEQ.L #0x05,D2
00014136 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
0001413a 22 6e 00 08 |"n | MOVEA.L (A6+0x8),A1
0001413e 30 28 00 42 |0( B | MOVE.W (A0+0x42),D0
00014142 b0 69 00 42 | i B | CMP.W (A1+0x42),D0
00014146 66 0a |f | BNE 0x14152
00014148 30 28 00 20 |0( | MOVE.W (A0+0x20),D0
0001414c b0 69 00 20 | i | CMP.W (A1+0x20),D0
00014150 67 04 |g | BEQ 0x14156
00014152 42 12 |B | CLR.B (A2)
00014154 60 34 |`4 | BRA 0x1418a
00014156 14 bc 00 01 | | MOVE.B #0x01,(A2)
0001415a 7e 00 |~ | MOVEQ.L #0x00,D7
0001415c 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
00014160 be 82 | | CMP.L D2,D7
00014162 63 02 |c | BLS 0x14166
00014164 4e 4f |NO | TRAP #15
00014166 20 07 | | MOVE.L D7,D0
00014168 e5 80 | | ASL.L #0x2,D0
0001416a 22 6e 00 08 |"n | MOVEA.L (A6+0x8),A1
0001416e 32 30 08 22 |20 " | MOVE.W (A0+D0.L+#0x22),D1
00014172 b2 71 08 22 | q " | CMP.W (A1+D0.L+#0x22),D1
00014176 66 0a |f | BNE 0x14182
00014178 32 30 08 24 |20 $ | MOVE.W (A0+D0.L+#0x24),D1
0001417c b2 71 08 24 | q $ | CMP.W (A1+D0.L+#0x24),D1
00014180 67 02 |g | BEQ 0x14184
00014182 42 12 |B | CLR.B (A2)
00014184 52 87 |R | ADDQ.L #0x1,D7
00014186 be 82 | | CMP.L D2,D7
00014188 6f d2 |o | BLE 0x1415c
0001418a 4c df 07 87 |L | MOVEM.L (A7)+,D0+D1+D2+D7+A0+A1+A2
0001418e 4e 5e |N^ | UNLK A6
00014190 4e 75 |Nu | RTS
00014192 ; --------------------------------------------------------------------------------------
00014192 ; InitProg(void)
00014192 ; Stack:
00014192 ; OMSI PASCAL Function
00014192 ; <LVAR -0x006 @ 4(r)>
00014192 ; <LVAR -0x010 @ 1(r)>
00014192 ; <LVAR -0x018 @ 4(rw)>
00014192 ; --------------------------------------------------------------------------------------
00014192 _InitProg(void):
00014192 4e 56 ff 86 |NV | LINK.W A6,#0xff86
00014196 bf d5 | | CMPA.L (A5),A7
00014198 62 06 |b | BHI 0x141a0
0001419a 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001419e 4e 76 |Nv | TRAPV
000141a0 de fc 00 62 | b | ADDA.W #0x62,A7
000141a4 48 e7 f0 f8 |H | MOVEM.L A4+A3+A2+A1+A0+D3+D2+D1+D0,-(A7)
000141a8 45 ee ff f0 |E | LEA.L (A6-0x10),A2
000141ac 72 01 |r | MOVEQ.L #0x01,D1
000141ae 74 1a |t | MOVEQ.L #0x1a,D2
000141b0 76 1e |v | MOVEQ.L #0x1e,D3
000141b2 4e b9 00 01 5b 84 |N [ | JSR _FSCALL_10400
000141b8 26 79 00 02 00 20 |&y | MOVEA.L 0x20020,A3
000141be 3f 39 00 01 00 08 |?9 | MOVE.W mounted_drive,-(A7)
000141c4 48 52 |HR | PEA.L (A2)
000141c6 4e ba fd 1c |N | JSR _MountDisk(drive : Word ; VAR status : Byte)
000141ca 5c 4f |\O | ADDQ.L #0x6,A7
000141cc 4a 12 |J | TST.B (A2)
000141ce 67 46 |gF | BEQ 0x14216
000141d0 41 fa ed 18 |A | LEA.L 0x12eea,A0
000141d4 70 0a |p | MOVEQ.L #0x0a,D0
000141d6 3f 20 |? | MOVE.W -(A0),-(A7)
000141d8 51 c8 ff fc |Q | DBF D0,0x141d6
000141dc 51 4f |QO | SUBQ.L #0x8,A7
000141de 48 6f 00 08 |Ho | PEA.L (A7+0x8)
000141e2 3f 01 |? | MOVE.W D1,-(A7)
000141e4 3f 3c 00 16 |?< | MOVE.W #0x16,-(A7)
000141e8 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
000141ee 54 4f |TO | ADDQ.L #0x2,A7
000141f0 1e 92 | | MOVE.B (A2),(A7)
000141f2 4e b9 00 01 43 0c |N C | JSR _FsErrMsgStr(err: Byte) : String
000141f8 54 4f |TO | ADDQ.L #0x2,A7
000141fa 4e b9 00 01 0f 2c |N , | JSR _StringCat2(a, b : String) : String
00014200 50 4f |PO | ADDQ.L #0x8,A7
00014202 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
00014208 de c2 | | ADDA.W D2,A7
0001420a 48 78 00 0b |Hx | PEA.L 0xb
0001420e 4e b9 00 01 02 20 |N | JSR KC10_Panic(code : Long)
00014214 58 4f |XO | ADDQ.L #0x4,A7
00014216 28 4b |(K | MOVEA.L A3,A4
00014218 b8 c1 | | CMPA.W D1,A4
0001421a 67 00 00 88 |g | BEQ 0x142a4
0001421e 9e c3 | | SUBA.W D3,A7
00014220 20 4f | O | MOVEA.L A7,A0
00014222 22 4c |"L | MOVEA.L A4,A1
00014224 70 1d |p | MOVEQ.L #0x1d,D0
00014226 10 d9 | | MOVE.B (A1)+,(A0)+
00014228 51 c8 ff fc |Q | DBF D0,0x14226
0001422c 59 4f |YO | SUBQ.L #0x4,A7
0001422e 48 6f 00 04 |Ho | PEA.L (A7+0x4)
00014232 3f 01 |? | MOVE.W D1,-(A7)
00014234 3f 03 |? | MOVE.W D3,-(A7)
00014236 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
0001423c 50 4f |PO | ADDQ.L #0x8,A7
0001423e 2d 5f ff e8 |-_ | MOVE.L (A7)+,(A6-0x18)
00014242 de c2 | | ADDA.W D2,A7
00014244 2e ae ff e8 |. | MOVE.L (A6-0x18),(A7)
00014248 42 27 |B' | CLR.B -(A7)
0001424a 1f 01 | | MOVE.B D1,-(A7)
0001424c 48 78 00 00 |Hx | PEA.L 0x0
00014250 48 52 |HR | PEA.L (A2)
00014252 48 6e ff fa |Hn | PEA.L (A6-0x6)
00014256 4e ba f6 5c |N \ | JSR _OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
0001425a de fc 00 14 | | ADDA.W #0x14,A7
0001425e 4a 12 |J | TST.B (A2)
00014260 67 02 |g | BEQ 0x14264
00014262 60 58 |`X | BRA 0x142bc
00014264 55 4f |UO | SUBQ.L #0x2,A7
00014266 2f 0c |/ | MOVE.L A4,-(A7)
00014268 2f 2e ff fa |/. | MOVE.L (A6-0x6),-(A7)
0001426c 4e ba fe ac |N | JSR 0x1411a
00014270 50 4f |PO | ADDQ.L #0x8,A7
00014272 4a 1f |J | TST.B (A7)+
00014274 66 02 |f | BNE 0x14278
00014276 60 44 |`D | BRA 0x142bc
00014278 42 27 |B' | CLR.B -(A7)
0001427a 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
0001427e 48 78 00 01 |Hx | PEA.L 0x1
00014282 48 52 |HR | PEA.L (A2)
00014284 48 6e ff fa |Hn | PEA.L (A6-0x6)
00014288 4e ba fa 00 |N | JSR _CloseFile(a : L; VAR status : B; VAR file : File)
0001428c de fc 00 10 | | ADDA.W #0x10,A7
00014290 48 6e ff e8 |Hn | PEA.L (A6-0x18)
00014294 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
0001429a 58 4f |XO | ADDQ.L #0x4,A7
0001429c 28 6c 00 44 |(l D | MOVEA.L (A4+0x44),A4
000142a0 60 00 ff 76 |` v | BRA 0x14218
000142a4 20 79 00 02 00 20 | y | MOVEA.L 0x20020,A0
000142aa b0 c1 | | CMPA.W D1,A0
000142ac 67 0c |g | BEQ 0x142ba
000142ae 48 78 00 1b |Hx | PEA.L 0x1b
000142b2 4e b9 00 01 02 20 |N | JSR KC10_Panic(code : Long)
000142b8 58 4f |XO | ADDQ.L #0x4,A7
000142ba 60 38 |`8 | BRA 0x142f4
000142bc 41 fa ec 54 |A T | LEA.L error_messages,A0
000142c0 70 09 |p | MOVEQ.L #0x09,D0
000142c2 2f 20 |/ | MOVE.L -(A0),-(A7)
000142c4 51 c8 ff fc |Q | DBF D0,0x142c2
000142c8 1f 01 | | MOVE.B D1,-(A7)
000142ca 51 4f |QO | SUBQ.L #0x8,A7
000142cc 48 6f 00 0a |Ho | PEA.L (A7+0xa)
000142d0 3f 01 |? | MOVE.W D1,-(A7)
000142d2 3f 3c 00 28 |?< ( | MOVE.W #0x28,-(A7)
000142d6 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
000142dc 58 4f |XO | ADDQ.L #0x4,A7
000142de 2e ae ff e8 |. | MOVE.L (A6-0x18),(A7)
000142e2 4e b9 00 01 0f 2c |N , | JSR _StringCat2(a, b : String) : String
000142e8 50 4f |PO | ADDQ.L #0x8,A7
000142ea 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
000142f0 de fc 00 2e | . | ADDA.W #0x2e,A7
000142f4 23 cb 00 02 00 20 |# | MOVE.L A3,0x20020
000142fa 1f 01 | | MOVE.B D1,-(A7)
000142fc 4e b9 00 01 47 40 |N G@ | JSR _Set_is_open_ERROR_LOG(a : Bool)
00014302 54 4f |TO | ADDQ.L #0x2,A7
00014304 4c df 1f 0f |L | MOVEM.L (A7)+,D0+D1+D2+D3+A0+A1+A2+A3+A4
00014308 4e 5e |N^ | UNLK A6
0001430a 4e 75 |Nu | RTS
0001430c ; --------------------------------------------------------------------------------------
0001430c ; FsErrMsgStr(err: Byte) : String
0001430c ; Stack:
0001430c ; A6+0xa VAR RETURN : String
0001430c ; A6+0x8 err : Byte
0001430c ; OMSI PASCAL Function
0001430c ; <LVAR 0x00a 4(w)>
0001430c ; <LVAR 0x008 1(r)>
0001430c ; --------------------------------------------------------------------------------------
0001430c _FsErrMsgStr(err: Byte) : String:
0001430c 4e 56 ff c4 |NV | LINK.W A6,#0xffc4
00014310 bf d5 | | CMPA.L (A5),A7
00014312 62 06 |b | BHI 0x1431a
00014314 44 fc 00 02 |D | MOVE.W #0x2,CCR
00014318 4e 76 |Nv | TRAPV
0001431a de fc 00 3a | : | ADDA.W #0x3a,A7
0001431e 48 e7 c0 80 |H | MOVEM.L A0+D1+D0,-(A7)
00014322 72 1e |r | MOVEQ.L #0x1e,D1
00014324 10 2e 00 08 | . | MOVE.B (A6+0x8),D0
00014328 48 80 |H | EXTB.W D0
0001432a c1 c1 | | MULS.W D1,D0
0001432c 41 fa ed fc |A | LEA.L error_messages2,A0
00014330 41 f0 00 1e |A | LEA.L (A0+D0.W+#0x1e),A0
00014334 70 0e |p | MOVEQ.L #0x0e,D0
00014336 3f 20 |? | MOVE.W -(A0),-(A7)
00014338 51 c8 ff fc |Q | DBF D0,0x14336
0001433c 59 4f |YO | SUBQ.L #0x4,A7
0001433e 48 6f 00 04 |Ho | PEA.L (A7+0x4)
00014342 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
00014346 3f 01 |? | MOVE.W D1,-(A7)
00014348 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
0001434e 50 4f |PO | ADDQ.L #0x8,A7
00014350 2d 5f 00 0a |-_ | MOVE.L (A7)+,(A6+0xa)
00014354 de c1 | | ADDA.W D1,A7
00014356 4c df 01 03 |L | MOVEM.L (A7)+,D0+D1+A0
0001435a 4e 5e |N^ | UNLK A6
0001435c 4e 75 |Nu | RTS
0001435e 45 52 52 4f 52 5f 4c 4f |ERROR_LO| .TXT 'ERROR_LOG '
00014368 texttable_0x14368:
00014368 43 53 31 3d 20 20 |CS1= | .TXT 'CS1= '
0001436e 20 43 53 32 3d 20 | CS2= | .TXT ' CS2= '
00014374 20 44 53 3d 20 20 | DS= | .TXT ' DS= '
0001437a 20 45 52 31 3d 20 | ER1= | .TXT ' ER1= '
00014380 20 45 52 32 3d 20 | ER2= | .TXT ' ER2= '
00014386 20 45 43 31 3d 20 | EC1= | .TXT ' EC1= '
0001438c 20 45 43 32 3d 20 | EC2= | .TXT ' EC2= '
00014392 20 44 43 3d 20 20 | DC= | .TXT ' DC= '
00014398 20 44 41 3d 20 20 | DA= | .TXT ' DA= '
0001439e 53 52 3d 20 20 20 |SR= | .TXT 'SR= '
000143a4 20 48 44 3d 20 20 | HD= | .TXT ' HD= '
000143aa 20 50 4c 3d 20 20 | PL= | .TXT ' PL= '
000143b0 20 52 43 3d 20 20 | RC= | .TXT ' RC= '
000143b6 20 58 30 3d 20 20 | X0= | .TXT ' X0= '
000143bc 20 58 31 3d 20 20 | X1= | .TXT ' X1= '
000143c2 20 58 32 3d 20 20 | X2= | .TXT ' X2= '
000143c8 20 58 33 3d 20 20 | X3= | .TXT ' X3= '
000143ce 44 69 73 6b 20 65 72 72 |Disk err| .TXT 'Disk errors while writing error log.'
000143f2 texttable_0x143f2:
000143f2 43 53 31 3d 20 20 |CS1= | .TXT 'CS1= '
000143f8 20 43 53 32 3d 20 | CS2= | .TXT ' CS2= '
000143fe 20 44 53 3d 20 20 | DS= | .TXT ' DS= '
00014404 20 45 52 31 3d 20 | ER1= | .TXT ' ER1= '
0001440a 20 45 52 32 3d 20 | ER2= | .TXT ' ER2= '
00014410 20 45 43 31 3d 20 | EC1= | .TXT ' EC1= '
00014416 20 45 43 32 3d 20 | EC2= | .TXT ' EC2= '
0001441c 20 44 43 3d 20 20 | DC= | .TXT ' DC= '
00014422 20 44 41 3d 20 20 | DA= | .TXT ' DA= '
00014428 53 52 3d 20 20 20 |SR= | .TXT 'SR= '
0001442e 20 48 44 3d 20 20 | HD= | .TXT ' HD= '
00014434 20 50 4c 3d 20 20 | PL= | .TXT ' PL= '
0001443a 20 52 43 3d 20 20 | RC= | .TXT ' RC= '
00014440 20 58 30 3d 20 20 | X0= | .TXT ' X0= '
00014446 20 58 31 3d 20 20 | X1= | .TXT ' X1= '
0001444c 20 58 32 3d 20 20 | X2= | .TXT ' X2= '
00014452 20 58 33 3d 20 20 | X3= | .TXT ' X3= '
00014458 ; --------------------------------------------------------------------------------------
00014458 ; Open_ERROR_LOG(void)
00014458 ; Stack:
00014458 ; OMSI PASCAL Function
00014458 ; <LVAR -0x004 @ 1(r)>
00014458 ; <LVAR -0x008 @ 4(rw)>
00014458 ; --------------------------------------------------------------------------------------
00014458 _Open_ERROR_LOG(void):
00014458 4e 56 ff ca |NV | LINK.W A6,#0xffca
0001445c bf d5 | | CMPA.L (A5),A7
0001445e 62 06 |b | BHI 0x14466
00014460 44 fc 00 02 |D | MOVE.W #0x2,CCR
00014464 4e 76 |Nv | TRAPV
00014466 de fc 00 2e | . | ADDA.W #0x2e,A7
0001446a 48 e7 c0 e0 |H | MOVEM.L A2+A1+A0+D1+D0,-(A7)
0001446e 45 ee ff f8 |E | LEA.L (A6-0x8),A2
00014472 72 01 |r | MOVEQ.L #0x01,D1
00014474 42 39 00 02 00 f1 |B9 | CLR.B write_error_ERROR_LOG
0001447a 42 39 00 02 00 f0 |B9 | CLR.B is_open_ERROR_LOG
00014480 9e fc 00 0a | | SUBA.W #0xa,A7
00014484 20 4f | O | MOVEA.L A7,A0
00014486 43 fa fe d6 |C | LEA.L 0x1435e,A1
0001448a 70 08 |p | MOVEQ.L #0x08,D0
0001448c 10 d9 | | MOVE.B (A1)+,(A0)+
0001448e 51 c8 ff fc |Q | DBF D0,0x1448c
00014492 59 4f |YO | SUBQ.L #0x4,A7
00014494 48 6f 00 04 |Ho | PEA.L (A7+0x4)
00014498 3f 01 |? | MOVE.W D1,-(A7)
0001449a 3f 3c 00 09 |?< | MOVE.W #0x9,-(A7)
0001449e 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
000144a4 50 4f |PO | ADDQ.L #0x8,A7
000144a6 24 9f |$ | MOVE.L (A7)+,(A2)
000144a8 5c 4f |\O | ADDQ.L #0x6,A7
000144aa 2e 92 |. | MOVE.L (A2),(A7)
000144ac 42 27 |B' | CLR.B -(A7)
000144ae 1f 01 | | MOVE.B D1,-(A7)
000144b0 48 78 00 00 |Hx | PEA.L 0x0
000144b4 48 6e ff fc |Hn | PEA.L (A6-0x4)
000144b8 48 79 00 02 00 ec |Hy | PEA.L 0x200ec
000144be 4e b9 00 01 38 b4 |N 8 | JSR _OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
000144c4 de fc 00 14 | | ADDA.W #0x14,A7
000144c8 48 52 |HR | PEA.L (A2)
000144ca 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
000144d0 58 4f |XO | ADDQ.L #0x4,A7
000144d2 4a 2e ff fc |J. | TST.B (A6-0x4)
000144d6 66 06 |f | BNE 0x144de
000144d8 13 c1 00 02 00 f0 | | MOVE.B D1,is_open_ERROR_LOG
000144de 4c df 07 03 |L | MOVEM.L (A7)+,D0+D1+A0+A1+A2
000144e2 4e 5e |N^ | UNLK A6
000144e4 4e 75 |Nu | RTS
000144e6 ; --------------------------------------------------------------------------------------
000144e6 ; Write_ERROR_LOG(VAR a : Bool; MOD b : Pointer)
000144e6 ; Stack:
000144e6 ; A6+0xc VAR a : Bool
000144e6 ; A6+0x8 b : Pointer
000144e6 ; OMSI PASCAL Function
000144e6 ; <LVAR 0x00c 1(r)>
000144e6 ; <LVAR 0x008 4(r)>
000144e6 ; <LVAR -0x400 2(rw)>
000144e6 ; <LVAR -0x405 1(r)>
000144e6 ; <LVAR -0x406 2(rw)>
000144e6 ; <LVAR -0x408 @ 2(rw)>
000144e6 ; <LVAR -0x482 @>
000144e6 ; <LVAR -0x486 @>
000144e6 ; <LVAR -0x488 @ 1(w)>
000144e6 ; <LVAR -0x48a @>
000144e6 ; --------------------------------------------------------------------------------------
000144e6 _Write_ERROR_LOG(VAR a : Bool; MOD b : Pointer):
000144e6 4e 56 fb 08 |NV | LINK.W A6,#0xfb08
000144ea bf d5 | | CMPA.L (A5),A7
000144ec 62 06 |b | BHI 0x144f4
000144ee 44 fc 00 02 |D | MOVE.W #0x2,CCR
000144f2 4e 76 |Nv | TRAPV
000144f4 de fc 00 6a | j | ADDA.W #0x6a,A7
000144f8 48 e7 ff f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D6+D5+D4+D3+D2+D1+D0,-(A7)
000144fc 45 ee fb f8 |E | LEA.L (A6-0x408),A2
00014500 47 ee fb fa |G | LEA.L (A6-0x406),A3
00014504 49 f9 00 01 0d a4 |I | LEA.L _StringLit(Src : Pointer; Offset: W; Len : W) : String,A4
0001450a 74 01 |t | MOVEQ.L #0x01,D2
0001450c 4a 39 00 02 00 f1 |J9 | TST.B write_error_ERROR_LOG
00014512 67 28 |g( | BEQ 0x1453c
00014514 41 fa fe dc |A | LEA.L texttable_0x143f2,A0
00014518 70 08 |p | MOVEQ.L #0x08,D0
0001451a 2f 20 |/ | MOVE.L -(A0),-(A7)
0001451c 51 c8 ff fc |Q | DBF D0,0x1451a
00014520 1f 02 | | MOVE.B D2,-(A7)
00014522 59 4f |YO | SUBQ.L #0x4,A7
00014524 48 6f 00 06 |Ho | PEA.L (A7+0x6)
00014528 3f 02 |? | MOVE.W D2,-(A7)
0001452a 3f 3c 00 24 |?< $ | MOVE.W #0x24,-(A7)
0001452e 4e 94 |N | JSR (A4)
00014530 50 4f |PO | ADDQ.L #0x8,A7
00014532 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
00014538 de fc 00 2a | * | ADDA.W #0x2a,A7
0001453c 10 2e 00 0c | . | MOVE.B (A6+0xc),D0
00014540 48 80 |H | EXTB.W D0
00014542 b0 42 | B | CMP.W D2,D0
00014544 62 00 00 e8 |b | BHI 0x1462e
00014548 d0 40 | @ | ADD.W D0,D0
0001454a 30 3b 00 06 4e fb 00 02 |0; N | SWITCH D0.W
00014552 00 04 | | .CONST 0x4 ; [0x0] -> 0x14556
00014554 00 6e | n | .CONST 0x6e ; [0x1] -> 0x145c0
00014556 switch@0x1454a[0x0]:
00014556 7e 00 |~ | MOVEQ.L #0x00,D7
00014558 28 07 |( | MOVE.L D7,D4
0001455a 76 06 |v | MOVEQ.L #0x06,D3
0001455c 4e b9 00 01 07 ea |N | JSR _?muls_d3_d4
00014562 41 fa fe 8e |A | LEA.L texttable_0x143f2,A0
00014566 5d 4f |]O | SUBQ.L #0x6,A7
00014568 22 4f |"O | MOVEA.L A7,A1
0001456a 41 f0 48 00 |A H | LEA.L (A0+D4.L),A0
0001456e 70 05 |p | MOVEQ.L #0x05,D0
00014570 12 d8 | | MOVE.B (A0)+,(A1)+
00014572 51 c8 ff fc |Q | DBF D0,0x14570
00014576 51 4f |QO | SUBQ.L #0x8,A7
00014578 48 6f 00 08 |Ho | PEA.L (A7+0x8)
0001457c 3f 02 |? | MOVE.W D2,-(A7)
0001457e 3f 3c 00 06 |?< | MOVE.W #0x6,-(A7)
00014582 4e 94 |N | JSR (A4)
00014584 58 4f |XO | ADDQ.L #0x4,A7
00014586 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001458a 20 07 | | MOVE.L D7,D0
0001458c e3 80 | | ASL.L #0x1,D0
0001458e 42 81 |B | CLR.L D1
00014590 32 30 08 00 |20 | MOVE.W (A0+D0.L),D1
00014594 2f 01 |/ | MOVE.L D1,-(A7)
00014596 48 78 00 04 |Hx | PEA.L 0x4
0001459a 4e b9 00 01 11 ce |N | JSR _Long2HexString(val : Long; ndig : Long) : String
000145a0 50 4f |PO | ADDQ.L #0x8,A7
000145a2 4e b9 00 01 0f 2c |N , | JSR _StringCat2(a, b : String) : String
000145a8 50 4f |PO | ADDQ.L #0x8,A7
000145aa 4e b9 00 01 53 92 |N S | JSR _WriteConsoleString(str : String)
000145b0 de fc 00 0a | | ADDA.W #0xa,A7
000145b4 52 87 |R | ADDQ.L #0x1,D7
000145b6 0c 87 00 00 00 08 | | CMPI.L #0x00000008,D7
000145bc 6f 9a |o | BLE 0x14558
000145be 60 68 |`h | BRA 0x14628
000145c0 switch@0x1454a[0x1]:
000145c0 7e 00 |~ | MOVEQ.L #0x00,D7
000145c2 28 07 |( | MOVE.L D7,D4
000145c4 76 06 |v | MOVEQ.L #0x06,D3
000145c6 4e b9 00 01 07 ea |N | JSR _?muls_d3_d4
000145cc 41 fa fe 5a |A Z | LEA.L 0x14428,A0
000145d0 5d 4f |]O | SUBQ.L #0x6,A7
000145d2 22 4f |"O | MOVEA.L A7,A1
000145d4 41 f0 48 00 |A H | LEA.L (A0+D4.L),A0
000145d8 70 05 |p | MOVEQ.L #0x05,D0
000145da 12 d8 | | MOVE.B (A0)+,(A1)+
000145dc 51 c8 ff fc |Q | DBF D0,0x145da
000145e0 51 4f |QO | SUBQ.L #0x8,A7
000145e2 48 6f 00 08 |Ho | PEA.L (A7+0x8)
000145e6 3f 02 |? | MOVE.W D2,-(A7)
000145e8 3f 3c 00 06 |?< | MOVE.W #0x6,-(A7)
000145ec 4e 94 |N | JSR (A4)
000145ee 58 4f |XO | ADDQ.L #0x4,A7
000145f0 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
000145f4 20 07 | | MOVE.L D7,D0
000145f6 e3 80 | | ASL.L #0x1,D0
000145f8 42 81 |B | CLR.L D1
000145fa 32 30 08 00 |20 | MOVE.W (A0+D0.L),D1
000145fe 2f 01 |/ | MOVE.L D1,-(A7)
00014600 48 78 00 04 |Hx | PEA.L 0x4
00014604 4e b9 00 01 11 ce |N | JSR _Long2HexString(val : Long; ndig : Long) : String
0001460a 50 4f |PO | ADDQ.L #0x8,A7
0001460c 4e b9 00 01 0f 2c |N , | JSR _StringCat2(a, b : String) : String
00014612 50 4f |PO | ADDQ.L #0x8,A7
00014614 4e b9 00 01 53 92 |N S | JSR _WriteConsoleString(str : String)
0001461a de fc 00 0a | | ADDA.W #0xa,A7
0001461e 52 87 |R | ADDQ.L #0x1,D7
00014620 0c 87 00 00 00 07 | | CMPI.L #0x00000007,D7
00014626 6f 9a |o | BLE 0x145c2
00014628 4e b9 00 01 54 0a |N T | JSR _WriteConsoleCrLf(void)
0001462e 4a 39 00 02 00 f0 |J9 | TST.B is_open_ERROR_LOG
00014634 67 00 01 02 |g | BEQ 0x14738
00014638 1d 6e 00 0c fb 78 | n x | MOVE.B (A6+0xc),(A6-0x488)
0001463e 48 6e fb 7a |Hn z | PEA.L (A6-0x486)
00014642 4e b9 00 01 16 ee |N | JSR _GetRtc() : TimeStamp
00014648 58 4f |XO | ADDQ.L #0x4,A7
0001464a 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001464e b0 c2 | | CMPA.W D2,A0
00014650 67 0c |g | BEQ 0x1465e
00014652 43 ee fb 7e |C ~ | LEA.L (A6-0x482),A1
00014656 70 79 |py | MOVEQ.L #0x79,D0
00014658 12 d8 | | MOVE.B (A0)+,(A1)+
0001465a 51 c8 ff fc |Q | DBF D0,0x14658
0001465e 13 c2 00 02 00 f1 | | MOVE.B D2,write_error_ERROR_LOG
00014664 2f 39 00 02 00 ec |/9 | MOVE.L 0x200ec,-(A7)
0001466a 42 67 |Bg | CLR.W -(A7)
0001466c 42 67 |Bg | CLR.W -(A7)
0001466e 3f 3c 02 00 |?< | MOVE.W #0x200,-(A7)
00014672 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
00014676 20 4a | J | MOVEA.L A2,A0
00014678 2f 08 |/ | MOVE.L A0,-(A7)
0001467a 48 6e fb 76 |Hn v | PEA.L (A6-0x48a)
0001467e 4e b9 00 01 3a e6 |N : | JSR _ReadFile(file : File; w : W; x : W; a : W; b: B; c : L; d : L)
00014684 de fc 00 14 | | ADDA.W #0x14,A7
00014688 42 80 |B | CLR.L D0
0001468a 30 13 |0 | MOVE.W (A3),D0
0001468c 52 80 |R | ADDQ.L #0x1,D0
0001468e 02 80 00 00 07 ff | | ANDI.L #0x000007ff,D0
00014694 36 80 |6 | MOVE.W D0,(A3)
00014696 b0 52 | R | CMP.W (A2),D0
00014698 66 0e |f | BNE 0x146a8
0001469a 42 80 |B | CLR.L D0
0001469c 30 12 |0 | MOVE.W (A2),D0
0001469e 52 80 |R | ADDQ.L #0x1,D0
000146a0 02 80 00 00 07 ff | | ANDI.L #0x000007ff,D0
000146a6 34 80 |4 | MOVE.W D0,(A2)
000146a8 30 13 |0 | MOVE.W (A3),D0
000146aa b0 6e fc 00 | n | CMP.W (A6-0x400),D0
000146ae 66 12 |f | BNE 0x146c2
000146b0 42 80 |B | CLR.L D0
000146b2 30 2e fc 00 |0. | MOVE.W (A6-0x400),D0
000146b6 52 80 |R | ADDQ.L #0x1,D0
000146b8 02 80 00 00 07 ff | | ANDI.L #0x000007ff,D0
000146be 3d 40 fc 00 |=@ | MOVE.W D0,(A6-0x400)
000146c2 30 13 |0 | MOVE.W (A3),D0
000146c4 e6 48 | H | LSR.W #0x3,D0
000146c6 52 40 |R@ | ADDQ.W #0x1,D0
000146c8 3c 00 |< | MOVE.W D0,D6
000146ca 42 80 |B | CLR.L D0
000146cc 10 2e fb fb | . | MOVE.B (A6-0x405),D0
000146d0 eb 08 | | LSL.B #0x5,D0
000146d2 ea 08 | | LSR.B #0x5,D0
000146d4 ed 40 | @ | ASL.W #0x6,D0
000146d6 48 c0 |H | EXTW.L D0
000146d8 2a 00 |* | MOVE.L D0,D5
000146da 2f 39 00 02 00 ec |/9 | MOVE.L 0x200ec,-(A7)
000146e0 4d bc 40 00 |M @ | CHK.W #0x4000,D6
000146e4 3f 06 |? | MOVE.W D6,-(A7)
000146e6 0c 85 00 00 01 ff | | CMPI.L #0x000001ff,D5
000146ec 63 02 |c | BLS 0x146f0
000146ee 4e 4f |NO | TRAP #15
000146f0 3f 05 |? | MOVE.W D5,-(A7)
000146f2 3f 3c 00 40 |?< @ | MOVE.W #0x40,-(A7)
000146f6 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
000146fa 41 ee fb 78 |A x | LEA.L (A6-0x488),A0
000146fe 2f 08 |/ | MOVE.L A0,-(A7)
00014700 48 6e fb 76 |Hn v | PEA.L (A6-0x48a)
00014704 4e b9 00 01 3b b8 |N ; | JSR _WriteFile(file : File; y : W; x : W; a : W; b: B; c: L; d: L)
0001470a de fc 00 10 | | ADDA.W #0x10,A7
0001470e 2e b9 00 02 00 ec |. | MOVE.L 0x200ec,(A7)
00014714 42 67 |Bg | CLR.W -(A7)
00014716 42 67 |Bg | CLR.W -(A7)
00014718 3f 3c 02 00 |?< | MOVE.W #0x200,-(A7)
0001471c 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
00014720 20 4a | J | MOVEA.L A2,A0
00014722 2f 08 |/ | MOVE.L A0,-(A7)
00014724 48 6e fb 76 |Hn v | PEA.L (A6-0x48a)
00014728 4e b9 00 01 3b b8 |N ; | JSR _WriteFile(file : File; y : W; x : W; a : W; b: B; c: L; d: L)
0001472e de fc 00 14 | | ADDA.W #0x14,A7
00014732 42 39 00 02 00 f1 |B9 | CLR.B write_error_ERROR_LOG
00014738 4c df 1f ff |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D5+D6+D7+A0+A1+A2+A3+A4
0001473c 4e 5e |N^ | UNLK A6
0001473e 4e 75 |Nu | RTS
00014740 ; --------------------------------------------------------------------------------------
00014740 ; Set_is_open_ERROR_LOG(a : Bool)
00014740 ; Stack:
00014740 ; A6+0x8 a : Bool
00014740 ; OMSI PASCAL Function
00014740 ; <LVAR 0x008 1(r)>
00014740 ; --------------------------------------------------------------------------------------
00014740 _Set_is_open_ERROR_LOG(a : Bool):
00014740 4e 56 ff fa |NV | LINK.W A6,#0xfffa
00014744 bf d5 | | CMPA.L (A5),A7
00014746 62 06 |b | BHI 0x1474e
00014748 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001474c 4e 76 |Nv | TRAPV
0001474e de fc 00 04 | | ADDA.W #0x4,A7
00014752 13 ee 00 08 00 02 00 f0 | | MOVE.B (A6+0x8),is_open_ERROR_LOG
0001475a 4e 5e |N^ | UNLK A6
0001475c 4e 75 |Nu | RTS
0001475e ; --------------------------------------------------------------------------------------
0001475e ; PushProgram(a : String; b : String; MOD c : B; VAR d : Bool)
0001475e ; Stack:
0001475e ; A6+0x12 a : String
0001475e ; A6+0xe b : String
0001475e ; A6+0xc c : B
0001475e ; A6+0x8 VAR d : Bool
0001475e ; --------------------------------------------------------------------------------------
0001475e _PushProgram(a : String; b : String; MOD c : B; VAR d : Bool):
0001475e 4e 56 00 00 |NV | LINK.W A6,#0x0000
00014762 48 e7 ff f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D6+D5+D4+D3+D2+D1+D0,-(A7)
00014766 bf d5 | | CMPA.L (A5),A7
00014768 4e 76 |Nv | TRAPV
0001476a 48 e7 00 06 |H | MOVEM.L A6+A5,-(A7)
0001476e 23 cf 00 02 00 00 |# | MOVE.L A7,stack.top
00014774 41 fa 00 16 |A | LEA.L 0x1478c,A0
00014778 23 c8 00 02 00 04 |# | MOVE.L A0,0x20004
0001477e 2f 2e 00 12 |/. | MOVE.L (A6+0x12),-(A7)
00014782 2f 2e 00 0e |/. | MOVE.L (A6+0xe),-(A7)
00014786 4e b9 00 01 4c 0c |N L | JSR _WriteProgToSwapFile(prog: String; args: String)
0001478c 4c df 60 00 |L ` | MOVEM.L (A7)+,A5+A6
00014790 4e b9 00 01 41 92 |N A | JSR _InitProg(void)
00014796 1f 2e 00 0c | . | MOVE.B (A6+0xc),-(A7)
0001479a 2f 2e 00 12 |/. | MOVE.L (A6+0x12),-(A7)
0001479e 2f 2e 00 08 |/. | MOVE.L (A6+0x8),-(A7)
000147a2 4e b9 00 01 4f 68 |N Oh | JSR _?FS103bc(MOD a: String; VAR b: Bool) : Bool
000147a8 de fc 00 0a | | ADDA.W #0xa,A7
000147ac 4c df 1f ff |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D5+D6+D7+A0+A1+A2+A3+A4
000147b0 4e 5e |N^ | UNLK A6
000147b2 4e 75 |Nu | RTS
000147b4 53 57 41 50 2e 4d 32 30 |SWAP.M20| .TXT 'SWAP.M200.'
000147be 50 55 53 48 20 64 69 73 |PUSH dis| .TXT 'PUSH disk error '
000147ce 2e 4d 32 30 30 20 |.M200 | .TXT '.M200 '
000147d4 41 62 6f 72 |Abor | .TXT 'Abor'
000147d8 74 20 3a 5f |t :_ | .TXT 't :_'
000147dc 41 74 74 65 6d 70 74 20 |Attempt | .TXT 'Attempt to pop with no disk '
000147f8 41 74 74 65 6d 70 74 20 |Attempt | .TXT 'Attempt to pop from level 0 '
00014814 53 57 41 50 2e 4d 32 30 |SWAP.M20| .TXT 'SWAP.M200.'
0001481e 46 72 |Fr | .XXX[0x2]
00014820 6f 6d 5f 20 |om_ | .XXX[0x4]
00014824 push_error_messages:
00014824 4f 70 65 72 61 74 69 6f |Operatio| .TXT 'Operation successful_ '
00014842 46 69 6c 65 20 73 79 73 |File sys| .TXT 'File system error_ '
00014860 45 78 70 65 72 69 6d 65 |Experime| .TXT 'Experiment error_ '
0001487e 36 34 20 62 69 74 20 61 |64 bit a| .TXT '64 bit arithmetic error_ '
0001489c 54 61 70 65 20 73 79 73 |Tape sys| .TXT 'Tape system error_ '
000148ba 50 61 72 61 6d 65 74 65 |Paramete| .TXT 'Parameter error_ '
000148d8 50 72 6f 70 61 67 61 74 |Propagat| .TXT 'Propagate error_ '
000148f6 52 75 6e 20 74 69 6d 65 |Run time| .TXT 'Run time error_ '
00014914 53 70 61 72 65 35 20 65 |Spare5 e| .TXT 'Spare5 error_ '
00014932 53 70 61 72 65 36 20 65 |Spare6 e| .TXT 'Spare6 error_ '
00014950 53 70 61 72 65 37 20 65 |Spare7 e| .TXT 'Spare7 error_ '
0001496e 53 70 61 72 65 38 20 65 |Spare8 e| .TXT 'Spare8 error_ '
0001498c 53 70 61 72 65 39 20 65 |Spare9 e| .TXT 'Spare9 error_ '
000149aa 53 70 61 72 65 31 30 20 |Spare10 | .TXT 'Spare10 error_ '
000149c8 4f 74 68 65 72 20 65 72 |Other er| .TXT 'Other error_ '
000149e6 exp_error_messages:
000149e6 4f 70 65 72 61 74 69 6f |Operatio| .TXT 'Operation successful_ '
00014a04 46 69 6c 65 20 73 79 73 |File sys| .TXT 'File system error_ '
00014a22 45 78 70 65 72 69 6d 65 |Experime| .TXT 'Experiment error_ '
00014a40 36 34 20 62 69 74 20 61 |64 bit a| .TXT '64 bit arithmetic error_ '
00014a5e 54 61 70 65 20 73 79 73 |Tape sys| .TXT 'Tape system error_ '
00014a7c 50 61 72 61 6d 65 74 65 |Paramete| .TXT 'Parameter error_ '
00014a9a 50 72 6f 70 61 67 61 74 |Propagat| .TXT 'Propagate error_ '
00014ab8 52 75 6e 20 74 69 6d 65 |Run time| .TXT 'Run time error_ '
00014ad6 53 70 61 72 65 35 20 65 |Spare5 e| .TXT 'Spare5 error_ '
00014af4 53 70 61 72 65 36 20 65 |Spare6 e| .TXT 'Spare6 error_ '
00014b12 53 70 61 72 65 37 20 65 |Spare7 e| .TXT 'Spare7 error_ '
00014b30 53 70 61 72 65 38 20 65 |Spare8 e| .TXT 'Spare8 error_ '
00014b4e 53 70 61 72 65 39 20 65 |Spare9 e| .TXT 'Spare9 error_ '
00014b6c 53 70 61 72 65 31 30 20 |Spare10 | .TXT 'Spare10 error_ '
00014b8a 4f 74 68 65 72 20 65 72 |Other er| .TXT 'Other error_ '
00014ba8 ; --------------------------------------------------------------------------------------
00014ba8 ; OMSI PASCAL Function
00014ba8 ; <LVAR 0x008 4(r)>
00014ba8 ; <LVAR -0x003 @>
00014ba8 ; <LVAR -0x004 @>
00014ba8 ; <LVAR -0x008 @ 4(r)>
00014ba8 ; --------------------------------------------------------------------------------------
00014ba8 4e 56 ff d8 |NV | LINK.W A6,#0xffd8
00014bac bf d5 | | CMPA.L (A5),A7
00014bae 62 06 |b | BHI 0x14bb6
00014bb0 44 fc 00 02 |D | MOVE.W #0x2,CCR
00014bb4 4e 76 |Nv | TRAPV
00014bb6 de fc 00 20 | | ADDA.W #0x20,A7
00014bba 48 e7 80 80 |H | MOVEM.L A0+D0,-(A7)
00014bbe 2f 2e 00 08 |/. | MOVE.L (A6+0x8),-(A7)
00014bc2 42 27 |B' | CLR.B -(A7)
00014bc4 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
00014bc8 48 78 00 00 |Hx | PEA.L 0x0
00014bcc 48 6e ff fc |Hn | PEA.L (A6-0x4)
00014bd0 48 6e ff f8 |Hn | PEA.L (A6-0x8)
00014bd4 4e b9 00 01 38 b4 |N 8 | JSR _OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
00014bda de fc 00 14 | | ADDA.W #0x14,A7
00014bde 20 6e ff f8 | n | MOVEA.L (A6-0x8),A0
00014be2 1f 3c 00 13 | < | MOVE.B #0x13,-(A7)
00014be6 3f 28 00 24 |?( $ | MOVE.W (A0+0x24),-(A7)
00014bea 30 28 00 20 |0( | MOVE.W (A0+0x20),D0
00014bee 48 c0 |H | EXTW.L D0
00014bf0 2f 00 |/ | MOVE.L D0,-(A7)
00014bf2 48 78 00 01 |Hx | PEA.L 0x1
00014bf6 48 6e ff fd |Hn | PEA.L (A6-0x3)
00014bfa 4e b9 00 01 27 c4 |N ' | JSR _RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
00014c00 de fc 00 10 | | ADDA.W #0x10,A7
00014c04 4c df 01 01 |L | MOVEM.L (A7)+,D0+A0
00014c08 4e 5e |N^ | UNLK A6
00014c0a 4e 75 |Nu | RTS
00014c0c ; --------------------------------------------------------------------------------------
00014c0c ; WriteProgToSwapFile(prog: String; args: String)
00014c0c ; Stack:
00014c0c ; A6+0xc prog : String
00014c0c ; A6+0x8 args : String
00014c0c ; OMSI PASCAL Function
00014c0c ; <LVAR 0x00c 4(rw)>
00014c0c ; <LVAR 0x008 @ 4(r)>
00014c0c ; <LVAR -0x006 @ 1(r)>
00014c0c ; <LVAR -0x00a @ 4(r)>
00014c0c ; <LVAR -0x00c @>
00014c0c ; <LVAR -0x010 @ 4(rw)>
00014c0c ; --------------------------------------------------------------------------------------
00014c0c _WriteProgToSwapFile(prog: String; args: String):
00014c0c 4e 56 ff 9e |NV | LINK.W A6,#0xff9e
00014c10 bf d5 | | CMPA.L (A5),A7
00014c12 62 06 |b | BHI 0x14c1a
00014c14 44 fc 00 02 |D | MOVE.W #0x2,CCR
00014c18 4e 76 |Nv | TRAPV
00014c1a de fc 00 4e | N | ADDA.W #0x4e,A7
00014c1e 48 e7 f9 f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D4+D3+D2+D1+D0,-(A7)
00014c22 45 ee 00 08 |E | LEA.L (A6+0x8),A2
00014c26 47 f9 00 01 0d a4 |G | LEA.L _StringLit(Src : Pointer; Offset: W; Len : W) : String,A3
00014c2c 49 f9 00 01 b0 b8 |I | LEA.L cur_push_level,A4
00014c32 72 01 |r | MOVEQ.L #0x01,D1
00014c34 74 10 |t | MOVEQ.L #0x10,D2
00014c36 76 0a |v | MOVEQ.L #0x0a,D3
00014c38 78 02 |x | MOVEQ.L #0x02,D4
00014c3a 20 52 | R | MOVEA.L (A2),A0
00014c3c b0 c1 | | CMPA.W D1,A0
00014c3e 66 0a |f | BNE 0x14c4a
00014c40 48 52 |HR | PEA.L (A2)
00014c42 4e b9 00 01 0c fa |N | JSR _NewString(VAR a : String)
00014c48 58 4f |XO | ADDQ.L #0x4,A7
00014c4a 20 52 | R | MOVEA.L (A2),A0
00014c4c 43 f9 00 01 b0 be |C | LEA.L argv,A1
00014c52 70 7f |p | MOVEQ.L #0x7f,D0
00014c54 12 d8 | | MOVE.B (A0)+,(A1)+
00014c56 51 c8 ff fc |Q | DBF D0,0x14c54
00014c5a 48 52 |HR | PEA.L (A2)
00014c5c 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
00014c62 58 4f |XO | ADDQ.L #0x4,A7
00014c64 41 fa fb 58 |A X | LEA.L 0x147be,A0
00014c68 70 04 |p | MOVEQ.L #0x04,D0
00014c6a 3f 20 |? | MOVE.W -(A0),-(A7)
00014c6c 51 c8 ff fc |Q | DBF D0,0x14c6a
00014c70 51 4f |QO | SUBQ.L #0x8,A7
00014c72 48 6f 00 08 |Ho | PEA.L (A7+0x8)
00014c76 3f 01 |? | MOVE.W D1,-(A7)
00014c78 3f 03 |? | MOVE.W D3,-(A7)
00014c7a 4e 93 |N | JSR (A3)
00014c7c 2e 94 |. | MOVE.L (A4),(A7)
00014c7e 4e b9 00 01 10 c0 |N | JSR _Long2String(a : Long) : String
00014c84 58 4f |XO | ADDQ.L #0x4,A7
00014c86 4e b9 00 01 0f 2c |N , | JSR _StringCat2(a, b : String) : String
00014c8c 50 4f |PO | ADDQ.L #0x8,A7
00014c8e 2d 5f ff f0 |-_ | MOVE.L (A7)+,(A6-0x10)
00014c92 de c3 | | ADDA.W D3,A7
00014c94 52 94 |R | ADDQ.L #0x1,(A4)
00014c96 2f 2e ff f0 |/. | MOVE.L (A6-0x10),-(A7)
00014c9a 1f 01 | | MOVE.B D1,-(A7)
00014c9c 1f 04 | | MOVE.B D4,-(A7)
00014c9e 48 78 ff 80 |Hx | PEA.L 0xffffff80
00014ca2 48 6e ff f4 |Hn | PEA.L (A6-0xc)
00014ca6 48 6e ff f6 |Hn | PEA.L (A6-0xa)
00014caa 4e b9 00 01 38 b4 |N 8 | JSR _OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
00014cb0 de fc 00 14 | | ADDA.W #0x14,A7
00014cb4 20 6e ff f6 | n | MOVEA.L (A6-0xa),A0
00014cb8 3e 28 00 24 |>( $ | MOVE.W (A0+0x24),D7
00014cbc 42 27 |B' | CLR.B -(A7)
00014cbe 1f 04 | | MOVE.B D4,-(A7)
00014cc0 48 78 00 01 |Hx | PEA.L 0x1
00014cc4 48 6e ff f4 |Hn | PEA.L (A6-0xc)
00014cc8 48 6e ff f6 |Hn | PEA.L (A6-0xa)
00014ccc 4e b9 00 01 3c 8a |N < | JSR _CloseFile(a : L; VAR status : B; VAR file : File)
00014cd2 de c2 | | ADDA.W D2,A7
00014cd4 48 6e ff f0 |Hn | PEA.L (A6-0x10)
00014cd8 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
00014cde 54 4f |TO | ADDQ.L #0x2,A7
00014ce0 1e bc 00 03 | | MOVE.B #0x03,(A7)
00014ce4 3f 07 |? | MOVE.W D7,-(A7)
00014ce6 48 78 00 80 |Hx | PEA.L 0x80
00014cea 2f 3c 00 02 00 00 |/< | MOVE.L #stack.top,-(A7)
00014cf0 48 6e ff fa |Hn | PEA.L (A6-0x6)
00014cf4 4e b9 00 01 27 c4 |N ' | JSR _RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
00014cfa de c2 | | ADDA.W D2,A7
00014cfc 4a 2e ff fa |J. | TST.B (A6-0x6)
00014d00 66 2c |f, | BNE 0x14d2e
00014d02 9e c2 | | SUBA.W D2,A7
00014d04 20 4f | O | MOVEA.L A7,A0
00014d06 43 fa fa b6 |C | LEA.L 0x147be,A1
00014d0a 70 0e |p | MOVEQ.L #0x0e,D0
00014d0c 10 d9 | | MOVE.B (A1)+,(A0)+
00014d0e 51 c8 ff fc |Q | DBF D0,0x14d0c
00014d12 1f 01 | | MOVE.B D1,-(A7)
00014d14 59 4f |YO | SUBQ.L #0x4,A7
00014d16 48 6f 00 06 |Ho | PEA.L (A7+0x6)
00014d1a 3f 01 |? | MOVE.W D1,-(A7)
00014d1c 3f 3c 00 0f |?< | MOVE.W #0xf,-(A7)
00014d20 4e 93 |N | JSR (A3)
00014d22 50 4f |PO | ADDQ.L #0x8,A7
00014d24 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
00014d2a de fc 00 16 | | ADDA.W #0x16,A7
00014d2e 5d 4f |]O | SUBQ.L #0x6,A7
00014d30 20 4f | O | MOVEA.L A7,A0
00014d32 43 fa fa 9a |C | LEA.L 0x147ce,A1
00014d36 70 04 |p | MOVEQ.L #0x04,D0
00014d38 10 d9 | | MOVE.B (A1)+,(A0)+
00014d3a 51 c8 ff fc |Q | DBF D0,0x14d38
00014d3e 59 4f |YO | SUBQ.L #0x4,A7
00014d40 2f 2e 00 0c |/. | MOVE.L (A6+0xc),-(A7)
00014d44 59 4f |YO | SUBQ.L #0x4,A7
00014d46 48 6f 00 0c |Ho | PEA.L (A7+0xc)
00014d4a 3f 01 |? | MOVE.W D1,-(A7)
00014d4c 3f 3c 00 05 |?< | MOVE.W #0x5,-(A7)
00014d50 4e 93 |N | JSR (A3)
00014d52 50 4f |PO | ADDQ.L #0x8,A7
00014d54 4e b9 00 01 0f 2c |N , | JSR _StringCat2(a, b : String) : String
00014d5a 50 4f |PO | ADDQ.L #0x8,A7
00014d5c 2d 5f 00 0c |-_ | MOVE.L (A7)+,(A6+0xc)
00014d60 54 4f |TO | ADDQ.L #0x2,A7
00014d62 2e ae 00 0c |. | MOVE.L (A6+0xc),(A7)
00014d66 4e ba fe 40 |N @ | JSR 0x14ba8
00014d6a 58 4f |XO | ADDQ.L #0x4,A7
00014d6c 4c df 1f 9f |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D7+A0+A1+A2+A3+A4
00014d70 4e 5e |N^ | UNLK A6
00014d72 4e 75 |Nu | RTS
00014d74 ; --------------------------------------------------------------------------------------
00014d74 ; OMSI PASCAL Function
00014d74 ; <LVAR 0x00c 1(r)>
00014d74 ; <LVAR 0x008 4(r)>
00014d74 ; --------------------------------------------------------------------------------------
00014d74 4e 56 ff e2 |NV | LINK.W A6,#0xffe2
00014d78 bf d5 | | CMPA.L (A5),A7
00014d7a 62 06 |b | BHI 0x14d82
00014d7c 44 fc 00 02 |D | MOVE.W #0x2,CCR
00014d80 4e 76 |Nv | TRAPV
00014d82 de fc 00 1c | | ADDA.W #0x1c,A7
00014d86 4e b9 00 01 54 0a |N T | JSR _WriteConsoleCrLf(void)
00014d8c 2f 3a fa 4a |/: J | MOVE.L 0x147d8,-(A7)
00014d90 2f 3a fa 42 |/: B | MOVE.L 0x147d4,-(A7)
00014d94 51 4f |QO | SUBQ.L #0x8,A7
00014d96 48 6f 00 08 |Ho | PEA.L (A7+0x8)
00014d9a 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
00014d9e 3f 3c 00 08 |?< | MOVE.W #0x8,-(A7)
00014da2 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00014da8 54 4f |TO | ADDQ.L #0x2,A7
00014daa 1e ae 00 0c | | MOVE.B (A6+0xc),(A7)
00014dae 4e b9 00 01 50 16 |N P | JSR _ExpErrMsg(a: Byte) : String
00014db4 54 4f |TO | ADDQ.L #0x2,A7
00014db6 4e b9 00 01 0f 2c |N , | JSR _StringCat2(a, b : String) : String
00014dbc 50 4f |PO | ADDQ.L #0x8,A7
00014dbe 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
00014dc4 50 4f |PO | ADDQ.L #0x8,A7
00014dc6 2e ae 00 08 |. | MOVE.L (A6+0x8),(A7)
00014dca 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
00014dd0 58 4f |XO | ADDQ.L #0x4,A7
00014dd2 4e 5e |N^ | UNLK A6
00014dd4 4e 75 |Nu | RTS
00014dd6 ; --------------------------------------------------------------------------------------
00014dd6 ; OMSI PASCAL Function
00014dd6 ; <LVAR 0x010 1(r)>
00014dd6 ; <LVAR 0x00c 4(r)>
00014dd6 ; <LVAR 0x008 4(r)>
00014dd6 ; --------------------------------------------------------------------------------------
00014dd6 4e 56 ff f4 |NV | LINK.W A6,#0xfff4
00014dda bf d5 | | CMPA.L (A5),A7
00014ddc 62 06 |b | BHI 0x14de4
00014dde 44 fc 00 02 |D | MOVE.W #0x2,CCR
00014de2 4e 76 |Nv | TRAPV
00014de4 de fc 00 0a | | ADDA.W #0xa,A7
00014de8 1f 2e 00 10 | . | MOVE.B (A6+0x10),-(A7)
00014dec 2f 2e 00 0c |/. | MOVE.L (A6+0xc),-(A7)
00014df0 4e ba ff 82 |N | JSR 0x14d74
00014df4 54 4f |TO | ADDQ.L #0x2,A7
00014df6 2e ae 00 08 |. | MOVE.L (A6+0x8),(A7)
00014dfa 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
00014e00 58 4f |XO | ADDQ.L #0x4,A7
00014e02 4e b9 00 01 54 0a |N T | JSR _WriteConsoleCrLf(void)
00014e08 48 78 00 1d |Hx | PEA.L 0x1d
00014e0c 4e b9 00 01 02 20 |N | JSR KC10_Panic(code : Long)
00014e12 58 4f |XO | ADDQ.L #0x4,A7
00014e14 4e 5e |N^ | UNLK A6
00014e16 4e 75 |Nu | RTS
00014e18 ; --------------------------------------------------------------------------------------
00014e18 ; PopProgram(status : Byte; msg : String)
00014e18 ; Stack:
00014e18 ; A6+0xc status : Byte
00014e18 ; A6+0x8 msg : String
00014e18 ; OMSI PASCAL Function
00014e18 ; <LVAR 0x00c 1(r)>
00014e18 ; <LVAR 0x008 @ 4(r)>
00014e18 ; <LVAR -0x002 @>
00014e18 ; <LVAR -0x004 @ 1(r)>
00014e18 ; <LVAR -0x008 @ 4(w)>
00014e18 ; <LVAR -0x00a @>
00014e18 ; --------------------------------------------------------------------------------------
00014e18 _PopProgram(status : Byte; msg : String):
00014e18 4e 56 ff a0 |NV | LINK.W A6,#0xffa0
00014e1c bf d5 | | CMPA.L (A5),A7
00014e1e 62 06 |b | BHI 0x14e26
00014e20 44 fc 00 02 |D | MOVE.W #0x2,CCR
00014e24 4e 76 |Nv | TRAPV
00014e26 de fc 00 52 | R | ADDA.W #0x52,A7
00014e2a 48 e7 e0 f8 |H | MOVEM.L A4+A3+A2+A1+A0+D2+D1+D0,-(A7)
00014e2e 45 f9 00 01 b0 b8 |E | LEA.L cur_push_level,A2
00014e34 47 ee 00 08 |G | LEA.L (A6+0x8),A3
00014e38 72 01 |r | MOVEQ.L #0x01,D1
00014e3a 74 1c |t | MOVEQ.L #0x1c,D2
00014e3c 4a 39 00 01 b0 b6 |J9 | TST.B ?popping
00014e42 67 0e |g | BEQ 0x14e52
00014e44 48 78 00 16 |Hx | PEA.L 0x16
00014e48 4e b9 00 01 02 20 |N | JSR KC10_Panic(code : Long)
00014e4e 58 4f |XO | ADDQ.L #0x4,A7
00014e50 60 06 |` | BRA 0x14e58
00014e52 13 c1 00 01 b0 b6 | | MOVE.B D1,?popping
00014e58 20 53 | S | MOVEA.L (A3),A0
00014e5a b0 c1 | | CMPA.W D1,A0
00014e5c 66 0a |f | BNE 0x14e68
00014e5e 48 53 |HS | PEA.L (A3)
00014e60 4e b9 00 01 0c fa |N | JSR _NewString(VAR a : String)
00014e66 58 4f |XO | ADDQ.L #0x4,A7
00014e68 42 27 |B' | CLR.B -(A7)
00014e6a 4e b9 00 01 47 40 |N G@ | JSR _Set_is_open_ERROR_LOG(a : Bool)
00014e70 54 4f |TO | ADDQ.L #0x2,A7
00014e72 20 79 00 02 00 20 | y | MOVEA.L 0x20020,A0
00014e78 b0 c1 | | CMPA.W D1,A0
00014e7a 67 24 |g$ | BEQ 0x14ea0
00014e7c 2d 79 00 02 00 20 ff f8 |-y | MOVE.L 0x20020,(A6-0x8)
00014e84 42 27 |B' | CLR.B -(A7)
00014e86 1f 01 | | MOVE.B D1,-(A7)
00014e88 48 78 00 01 |Hx | PEA.L 0x1
00014e8c 48 6e ff f6 |Hn | PEA.L (A6-0xa)
00014e90 48 6e ff f8 |Hn | PEA.L (A6-0x8)
00014e94 4e b9 00 01 3c 8a |N < | JSR _CloseFile(a : L; VAR status : B; VAR file : File)
00014e9a de fc 00 10 | | ADDA.W #0x10,A7
00014e9e 60 d2 |` | BRA 0x14e72
00014ea0 4a 92 |J | TST.L (A2)
00014ea2 66 5e |f^ | BNE 0x14f02
00014ea4 48 6e ff fc |Hn | PEA.L (A6-0x4)
00014ea8 48 6e ff fe |Hn | PEA.L (A6-0x2)
00014eac 4e b9 00 01 02 00 |N | JSR KC00_GetBootDev(VAR a : Byte; VAR b : Word)
00014eb2 50 4f |PO | ADDQ.L #0x8,A7
00014eb4 10 2e ff fc | . | MOVE.B (A6-0x4),D0
00014eb8 0c 00 00 02 | | CMPI.B #0x02,D0
00014ebc 67 12 |g | BEQ 0x14ed0
00014ebe 9e c2 | | SUBA.W D2,A7
00014ec0 20 4f | O | MOVEA.L A7,A0
00014ec2 43 fa f9 18 |C | LEA.L 0x147dc,A1
00014ec6 70 1a |p | MOVEQ.L #0x1a,D0
00014ec8 10 d9 | | MOVE.B (A1)+,(A0)+
00014eca 51 c8 ff fc |Q | DBF D0,0x14ec8
00014ece 60 10 |` | BRA 0x14ee0
00014ed0 9e c2 | | SUBA.W D2,A7
00014ed2 20 4f | O | MOVEA.L A7,A0
00014ed4 43 fa f9 22 |C " | LEA.L 0x147f8,A1
00014ed8 70 1a |p | MOVEQ.L #0x1a,D0
00014eda 10 d9 | | MOVE.B (A1)+,(A0)+
00014edc 51 c8 ff fc |Q | DBF D0,0x14eda
00014ee0 1f 2e 00 0c | . | MOVE.B (A6+0xc),-(A7)
00014ee4 2f 13 |/ | MOVE.L (A3),-(A7)
00014ee6 59 4f |YO | SUBQ.L #0x4,A7
00014ee8 48 6f 00 0a |Ho | PEA.L (A7+0xa)
00014eec 3f 01 |? | MOVE.W D1,-(A7)
00014eee 3f 3c 00 1b |?< | MOVE.W #0x1b,-(A7)
00014ef2 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00014ef8 50 4f |PO | ADDQ.L #0x8,A7
00014efa 4e ba fe da |N | JSR 0x14dd6
00014efe de fc 00 26 | & | ADDA.W #0x26,A7
00014f02 53 92 |S | SUBQ.L #0x1,(A2)
00014f04 10 2e 00 0c | . | MOVE.B (A6+0xc),D0
00014f08 0c 00 00 06 | | CMPI.B #0x06,D0
00014f0c 67 16 |g | BEQ 0x14f24
00014f0e 13 c0 00 01 b0 bc | | MOVE.B D0,0x1b0bc
00014f14 20 53 | S | MOVEA.L (A3),A0
00014f16 43 f9 00 01 b1 3e |C > | LEA.L 0x1b13e,A1
00014f1c 70 7f |p | MOVEQ.L #0x7f,D0
00014f1e 12 d8 | | MOVE.B (A0)+,(A1)+
00014f20 51 c8 ff fc |Q | DBF D0,0x14f1e
00014f24 41 fa f8 f8 |A | LEA.L 0x1481e,A0
00014f28 70 04 |p | MOVEQ.L #0x04,D0
00014f2a 3f 20 |? | MOVE.W -(A0),-(A7)
00014f2c 51 c8 ff fc |Q | DBF D0,0x14f2a
00014f30 51 4f |QO | SUBQ.L #0x8,A7
00014f32 48 6f 00 08 |Ho | PEA.L (A7+0x8)
00014f36 3f 01 |? | MOVE.W D1,-(A7)
00014f38 3f 3c 00 0a |?< | MOVE.W #0xa,-(A7)
00014f3c 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00014f42 2e 92 |. | MOVE.L (A2),(A7)
00014f44 4e b9 00 01 10 c0 |N | JSR _Long2String(a : Long) : String
00014f4a 58 4f |XO | ADDQ.L #0x4,A7
00014f4c 4e b9 00 01 0f 2c |N , | JSR _StringCat2(a, b : String) : String
00014f52 50 4f |PO | ADDQ.L #0x8,A7
00014f54 28 5f |(_ | MOVEA.L (A7)+,A4
00014f56 5c 4f |\O | ADDQ.L #0x6,A7
00014f58 2e 8c |. | MOVE.L A4,(A7)
00014f5a 4e ba fc 4c |N L | JSR 0x14ba8
00014f5e 58 4f |XO | ADDQ.L #0x4,A7
00014f60 4c df 1f 07 |L | MOVEM.L (A7)+,D0+D1+D2+A0+A1+A2+A3+A4
00014f64 4e 5e |N^ | UNLK A6
00014f66 4e 75 |Nu | RTS
00014f68 ; --------------------------------------------------------------------------------------
00014f68 ; ?FS103bc(MOD a: String; VAR b: Bool) : Bool
00014f68 ; Stack:
00014f68 ; A6+0x10 VAR RETURN : Bool
00014f68 ; A6+0xc a : String
00014f68 ; A6+0x8 VAR b : Bool
00014f68 ; OMSI PASCAL Function
00014f68 ; <LVAR 0x010 1(r)>
00014f68 ; <LVAR 0x00c @ 4(r)>
00014f68 ; <LVAR 0x008 4(r)>
00014f68 ; --------------------------------------------------------------------------------------
00014f68 _?FS103bc(MOD a: String; VAR b: Bool) : Bool:
00014f68 4e 56 ff d2 |NV | LINK.W A6,#0xffd2
00014f6c bf d5 | | CMPA.L (A5),A7
00014f6e 62 06 |b | BHI 0x14f76
00014f70 44 fc 00 02 |D | MOVE.W #0x2,CCR
00014f74 4e 76 |Nv | TRAPV
00014f76 de fc 00 2c | , | ADDA.W #0x2c,A7
00014f7a 48 e7 80 c0 |H | MOVEM.L A1+A0+D0,-(A7)
00014f7e 42 39 00 01 b0 b6 |B9 | CLR.B ?popping
00014f84 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00014f88 10 39 00 01 b0 bc | 9 | MOVE.B 0x1b0bc,D0
00014f8e 48 80 |H | EXTB.W D0
00014f90 41 bc 00 0e |A | CHK.W #0xe,D0
00014f94 10 80 | | MOVE.B D0,(A0)
00014f96 4a 00 |J | TST.B D0
00014f98 67 06 |g | BEQ 0x14fa0
00014f9a 4a 2e 00 10 |J. | TST.B (A6+0x10)
00014f9e 66 0e |f | BNE 0x14fae
00014fa0 48 6e 00 0c |Hn | PEA.L (A6+0xc)
00014fa4 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
00014faa 58 4f |XO | ADDQ.L #0x4,A7
00014fac 60 60 |`` | BRA 0x1500e
00014fae 1f 00 | | MOVE.B D0,-(A7)
00014fb0 59 4f |YO | SUBQ.L #0x4,A7
00014fb2 4e b9 00 01 50 a8 |N P | JSR _FSCALL_103c8
00014fb8 4e ba fd ba |N | JSR 0x14d74
00014fbc 20 4f | O | MOVEA.L A7,A0
00014fbe 43 fa f8 5e |C ^ | LEA.L 0x1481e,A1
00014fc2 70 04 |p | MOVEQ.L #0x04,D0
00014fc4 10 d9 | | MOVE.B (A1)+,(A0)+
00014fc6 51 c8 ff fc |Q | DBF D0,0x14fc4
00014fca 51 4f |QO | SUBQ.L #0x8,A7
00014fcc 48 6f 00 08 |Ho | PEA.L (A7+0x8)
00014fd0 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
00014fd4 3f 3c 00 05 |?< | MOVE.W #0x5,-(A7)
00014fd8 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00014fde 58 4f |XO | ADDQ.L #0x4,A7
00014fe0 2e ae 00 0c |. | MOVE.L (A6+0xc),(A7)
00014fe4 4e b9 00 01 0f 2c |N , | JSR _StringCat2(a, b : String) : String
00014fea 50 4f |PO | ADDQ.L #0x8,A7
00014fec 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
00014ff2 de fc 00 0a | | ADDA.W #0xa,A7
00014ff6 10 2e 00 10 | . | MOVE.B (A6+0x10),D0
00014ffa 0c 00 00 02 | | CMPI.B #0x02,D0
00014ffe 66 0e |f | BNE 0x1500e
00015000 1f 3c 00 06 | < | MOVE.B #0x06,-(A7)
00015004 48 78 00 01 |Hx | PEA.L 0x1
00015008 4e ba fe 0e |N | JSR _PopProgram(status : Byte; msg : String)
0001500c 5c 4f |\O | ADDQ.L #0x6,A7
0001500e 4c df 03 01 |L | MOVEM.L (A7)+,D0+A0+A1
00015012 4e 5e |N^ | UNLK A6
00015014 4e 75 |Nu | RTS
00015016 ; --------------------------------------------------------------------------------------
00015016 ; ExpErrMsg(a: Byte) : String
00015016 ; Stack:
00015016 ; A6+0xa VAR RETURN : String
00015016 ; A6+0x8 a : Byte
00015016 ; OMSI PASCAL Function
00015016 ; <LVAR 0x00a 4(w)>
00015016 ; <LVAR 0x008 1(r)>
00015016 ; --------------------------------------------------------------------------------------
00015016 _ExpErrMsg(a: Byte) : String:
00015016 4e 56 ff c4 |NV | LINK.W A6,#0xffc4
0001501a bf d5 | | CMPA.L (A5),A7
0001501c 62 06 |b | BHI 0x15024
0001501e 44 fc 00 02 |D | MOVE.W #0x2,CCR
00015022 4e 76 |Nv | TRAPV
00015024 de fc 00 3a | : | ADDA.W #0x3a,A7
00015028 48 e7 c0 80 |H | MOVEM.L A0+D1+D0,-(A7)
0001502c 72 1e |r | MOVEQ.L #0x1e,D1
0001502e 10 2e 00 08 | . | MOVE.B (A6+0x8),D0
00015032 48 80 |H | EXTB.W D0
00015034 c1 c1 | | MULS.W D1,D0
00015036 41 fa f9 ae |A | LEA.L exp_error_messages,A0
0001503a 41 f0 00 1e |A | LEA.L (A0+D0.W+#0x1e),A0
0001503e 70 0e |p | MOVEQ.L #0x0e,D0
00015040 3f 20 |? | MOVE.W -(A0),-(A7)
00015042 51 c8 ff fc |Q | DBF D0,0x15040
00015046 59 4f |YO | SUBQ.L #0x4,A7
00015048 48 6f 00 04 |Ho | PEA.L (A7+0x4)
0001504c 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
00015050 3f 01 |? | MOVE.W D1,-(A7)
00015052 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00015058 50 4f |PO | ADDQ.L #0x8,A7
0001505a 2d 5f 00 0a |-_ | MOVE.L (A7)+,(A6+0xa)
0001505e de c1 | | ADDA.W D1,A7
00015060 4c df 01 03 |L | MOVEM.L (A7)+,D0+D1+A0
00015064 4e 5e |N^ | UNLK A6
00015066 4e 75 |Nu | RTS
00015068 ; --------------------------------------------------------------------------------------
00015068 ; GetArgv() : String
00015068 ; Stack:
00015068 ; A6+0x8 VAR RETURN : String
00015068 ; OMSI PASCAL Function
00015068 ; <LVAR 0x008 4(w)>
00015068 ; <LVAR -0x004 @ 4(r)>
00015068 ; --------------------------------------------------------------------------------------
00015068 _GetArgv() : String:
00015068 4e 56 ff e4 |NV | LINK.W A6,#0xffe4
0001506c bf d5 | | CMPA.L (A5),A7
0001506e 62 06 |b | BHI 0x15076
00015070 44 fc 00 02 |D | MOVE.W #0x2,CCR
00015074 4e 76 |Nv | TRAPV
00015076 de fc 00 18 | | ADDA.W #0x18,A7
0001507a 48 e7 80 e0 |H | MOVEM.L A2+A1+A0+D0,-(A7)
0001507e 45 ee ff fc |E | LEA.L (A6-0x4),A2
00015082 48 52 |HR | PEA.L (A2)
00015084 4e b9 00 01 0c fa |N | JSR _NewString(VAR a : String)
0001508a 58 4f |XO | ADDQ.L #0x4,A7
0001508c 20 52 | R | MOVEA.L (A2),A0
0001508e 43 f9 00 01 b0 be |C | LEA.L argv,A1
00015094 70 7f |p | MOVEQ.L #0x7f,D0
00015096 10 d9 | | MOVE.B (A1)+,(A0)+
00015098 51 c8 ff fc |Q | DBF D0,0x15096
0001509c 2d 52 00 08 |-R | MOVE.L (A2),(A6+0x8)
000150a0 4c df 07 01 |L | MOVEM.L (A7)+,D0+A0+A1+A2
000150a4 4e 5e |N^ | UNLK A6
000150a6 4e 75 |Nu | RTS
000150a8 ; --------------------------------------------------------------------------------------
000150a8 ; FSCALL_103c8
000150a8 ; OMSI PASCAL Function
000150a8 ; <LVAR 0x008 4(w)>
000150a8 ; <LVAR -0x004 @ 4(r)>
000150a8 ; --------------------------------------------------------------------------------------
000150a8 _FSCALL_103c8:
000150a8 4e 56 ff e4 |NV | LINK.W A6,#0xffe4
000150ac bf d5 | | CMPA.L (A5),A7
000150ae 62 06 |b | BHI 0x150b6
000150b0 44 fc 00 02 |D | MOVE.W #0x2,CCR
000150b4 4e 76 |Nv | TRAPV
000150b6 de fc 00 18 | | ADDA.W #0x18,A7
000150ba 48 e7 80 e0 |H | MOVEM.L A2+A1+A0+D0,-(A7)
000150be 45 ee ff fc |E | LEA.L (A6-0x4),A2
000150c2 48 52 |HR | PEA.L (A2)
000150c4 4e b9 00 01 0c fa |N | JSR _NewString(VAR a : String)
000150ca 58 4f |XO | ADDQ.L #0x4,A7
000150cc 20 52 | R | MOVEA.L (A2),A0
000150ce 43 f9 00 01 b1 3e |C > | LEA.L 0x1b13e,A1
000150d4 70 7f |p | MOVEQ.L #0x7f,D0
000150d6 10 d9 | | MOVE.B (A1)+,(A0)+
000150d8 51 c8 ff fc |Q | DBF D0,0x150d6
000150dc 2d 52 00 08 |-R | MOVE.L (A2),(A6+0x8)
000150e0 4c df 07 01 |L | MOVEM.L (A7)+,D0+A0+A1+A2
000150e4 4e 5e |N^ | UNLK A6
000150e6 4e 75 |Nu | RTS
000150e8 ; --------------------------------------------------------------------------------------
000150e8 ; GetPushLevel() : Long
000150e8 ; Stack:
000150e8 ; A6+0x8 VAR RETURN : Long
000150e8 ; OMSI PASCAL Function
000150e8 ; <LVAR 0x008 4(w)>
000150e8 ; --------------------------------------------------------------------------------------
000150e8 _GetPushLevel() : Long:
000150e8 4e 56 ff fc |NV | LINK.W A6,#0xfffc
000150ec bf d5 | | CMPA.L (A5),A7
000150ee 62 06 |b | BHI 0x150f6
000150f0 44 fc 00 02 |D | MOVE.W #0x2,CCR
000150f4 4e 76 |Nv | TRAPV
000150f6 de fc 00 04 | | ADDA.W #0x4,A7
000150fa 2d 79 00 01 b0 b8 00 08 |-y | MOVE.L cur_push_level,(A6+0x8)
00015102 4e 5e |N^ | UNLK A6
00015104 4e 75 |Nu | RTS
00015106 46 49 |FI | .TXT 'FI'
00015108 58 50 |XP | .TXT 'XP'
0001510a 41 44 |AD | .TXT 'AD'
0001510c 46 49 58 4d |FIXM | .TXT 'FIXM'
00015110 4f 44 45 4d |ODEM | .TXT 'ODEM'
00015114 43 6f 6e 73 6f 6c 65 20 |Console | .TXT 'Console interrupt '
00015126 49 6e 70 75 74 20 73 74 |Input st| .TXT 'Input string too long!'
0001513c 49 6e 74 65 67 65 72 20 |Integer | .TXT 'Integer input expected, bad syntax, or too big. '
0001516c 49 6e 74 65 67 65 72 20 |Integer | .TXT 'Integer input expected, in range ['
0001518e 2e 2e |.. | .TXT '..'
00015190 5d 20 |] | .TXT '] '
00015192 45 78 70 65 63 74 65 64 |Expected| .TXT 'Expected 'Y' or 'N'!'
000151a6 20 5b | [ | .XXX[0x2]
000151a8 4e 5d 20 3f 5f 20 20 20 |N] ?_ | .XXX[0x10]
000151b0 20 5b 59 5d 20 3f 5f 20 | [Y] ?_ |
000151b8 20 20 | | .XXX[0x2]
000151ba 45 6e 61 62 6c 65 20 6c |Enable l| .TXT 'Enable line printer for console output'
000151e0 45 6e 74 65 72 20 70 72 |Enter pr| .TXT 'Enter printer line number :_'
000151fc 20 5b 4e 5d | [N] | .XXX[0x4]
00015200 20 3f 5f 20 20 20 20 5b | ?_ [| .XXX[0x10]
00015208 59 5d 20 3f 5f 20 20 20 |Y] ?_ |
00015210 ; --------------------------------------------------------------------------------------
00015210 ; WriteConsoleChar(chr : char)
00015210 ; Stack:
00015210 ; A6+0x8 chr : char
00015210 ; OMSI PASCAL Function
00015210 ; <LVAR 0x008 1(r)>
00015210 ; --------------------------------------------------------------------------------------
00015210 _WriteConsoleChar(chr : char):
00015210 4e 56 ff ec |NV | LINK.W A6,#0xffec
00015214 bf d5 | | CMPA.L (A5),A7
00015216 62 06 |b | BHI 0x1521e
00015218 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001521c 4e 76 |Nv | TRAPV
0001521e de fc 00 12 | | ADDA.W #0x12,A7
00015222 48 e7 c0 00 |H | MOVEM.L D1+D0,-(A7)
00015226 22 3c 00 00 ff ff |"< | MOVE.L #0xffff,D1
0001522c 20 39 00 01 b1 c6 | 9 | MOVE.L console_config,D0
00015232 b0 81 | | CMP.L D1,D0
00015234 63 02 |c | BLS 0x15238
00015236 4e 4f |NO | TRAP #15
00015238 3f 00 |? | MOVE.W D0,-(A7)
0001523a 42 80 |B | CLR.L D0
0001523c 10 2e 00 08 | . | MOVE.B (A6+0x8),D0
00015240 3f 00 |? | MOVE.W D0,-(A7)
00015242 4e b9 00 01 02 0c |N | JSR KC06_PortPutChar(port : Word ; b : char)
00015248 58 4f |XO | ADDQ.L #0x4,A7
0001524a 4a 39 00 01 b1 ca |J9 | TST.B console_prt_1
00015250 67 2c |g, | BEQ 0x1527e
00015252 30 39 00 01 b1 cc |09 | MOVE.W console_prt_2,D0
00015258 b0 41 | A | CMP.W D1,D0
0001525a 63 02 |c | BLS 0x1525e
0001525c 4e 4f |NO | TRAP #15
0001525e 3f 00 |? | MOVE.W D0,-(A7)
00015260 30 39 00 01 b1 ce |09 | MOVE.W console_prt_3,D0
00015266 b0 41 | A | CMP.W D1,D0
00015268 63 02 |c | BLS 0x1526c
0001526a 4e 4f |NO | TRAP #15
0001526c 3f 00 |? | MOVE.W D0,-(A7)
0001526e 42 80 |B | CLR.L D0
00015270 10 2e 00 08 | . | MOVE.B (A6+0x8),D0
00015274 3f 00 |? | MOVE.W D0,-(A7)
00015276 4e b9 00 01 02 18 |N | JSR KC0c_Write_Modem_Char(a, b: Word ; c : char)
0001527c 5c 4f |\O | ADDQ.L #0x6,A7
0001527e 4c df 00 03 |L | MOVEM.L (A7)+,D0+D1
00015282 4e 5e |N^ | UNLK A6
00015284 4e 75 |Nu | RTS
00015286 ; --------------------------------------------------------------------------------------
00015286 ; ReadChar() : Byte
00015286 ; Stack:
00015286 ; A6+0x8 VAR RETURN : Byte
00015286 ; OMSI PASCAL Function
00015286 ; <LVAR 0x008 1(w)>
00015286 ; <LVAR -0x001 @>
00015286 ; <LVAR -0x002 @ 1(r)>
00015286 ; <LVAR -0x004 @ 2(r)>
00015286 ; --------------------------------------------------------------------------------------
00015286 _ReadChar() : Byte:
00015286 4e 56 ff c2 |NV | LINK.W A6,#0xffc2
0001528a bf d5 | | CMPA.L (A5),A7
0001528c 62 06 |b | BHI 0x15294
0001528e 44 fc 00 02 |D | MOVE.W #0x2,CCR
00015292 4e 76 |Nv | TRAPV
00015294 de fc 00 3a | : | ADDA.W #0x3a,A7
00015298 48 e7 f0 c0 |H | MOVEM.L A1+A0+D3+D2+D1+D0,-(A7)
0001529c 41 f9 00 01 b1 c6 |A | LEA.L console_config,A0
000152a2 43 ee ff fe |C | LEA.L (A6-0x2),A1
000152a6 74 01 |t | MOVEQ.L #0x01,D2
000152a8 26 3c 00 00 ff ff |&< | MOVE.L #0xffff,D3
000152ae 20 10 | | MOVE.L (A0),D0
000152b0 0c 80 00 00 00 03 | | CMPI.L #0x00000003,D0
000152b6 67 0a |g | BEQ 0x152c2
000152b8 b0 83 | | CMP.L D3,D0
000152ba 63 02 |c | BLS 0x152be
000152bc 4e 4f |NO | TRAP #15
000152be 60 00 00 b0 |` | BRA 0x15370
000152c2 20 10 | | MOVE.L (A0),D0
000152c4 b0 83 | | CMP.L D3,D0
000152c6 63 02 |c | BLS 0x152ca
000152c8 4e 4f |NO | TRAP #15
000152ca 3f 00 |? | MOVE.W D0,-(A7)
000152cc 48 51 |HQ | PEA.L (A1)
000152ce 4e b9 00 01 02 12 |N | JSR KC09_PortStatus(Port : Word; VAR b: Byte)
000152d4 5c 4f |\O | ADDQ.L #0x6,A7
000152d6 4a 11 |J | TST.B (A1)
000152d8 67 e8 |g | BEQ 0x152c2
000152da 10 11 | | MOVE.B (A1),D0
000152dc b0 02 | | CMP.B D2,D0
000152de 67 00 00 82 |g | BEQ 0x15362
000152e2 55 4f |UO | SUBQ.L #0x2,A7
000152e4 48 78 01 80 |Hx | PEA.L 0x180
000152e8 4e b9 00 01 a9 6a |N j | JSR _ReadConfig(where : Long) : Word
000152ee 58 4f |XO | ADDQ.L #0x4,A7
000152f0 12 2f 00 01 | / | MOVE.B (A7+0x1),D1
000152f4 0c 01 00 58 | X | CMPI.B #0x58,D1
000152f8 66 36 |f6 | BNE 0x15330
000152fa 3f 3a fe 0e |?: | MOVE.W 0x1510a,-(A7)
000152fe 3f 3a fe 08 |?: | MOVE.W 0x15108,-(A7)
00015302 3f 3a fe 02 |?: | MOVE.W 0x15106,-(A7)
00015306 59 4f |YO | SUBQ.L #0x4,A7
00015308 48 6f 00 04 |Ho | PEA.L (A7+0x4)
0001530c 3f 02 |? | MOVE.W D2,-(A7)
0001530e 3f 3c 00 06 |?< | MOVE.W #0x6,-(A7)
00015312 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00015318 50 4f |PO | ADDQ.L #0x8,A7
0001531a 48 78 00 01 |Hx | PEA.L 0x1
0001531e 42 27 |B' | CLR.B -(A7)
00015320 48 6e ff ff |Hn | PEA.L (A6-0x1)
00015324 4e b9 00 01 47 5e |N G^ | JSR _PushProgram(a : String; b : String; MOD c : B; VAR d : Bool)
0001532a de fc 00 14 | | ADDA.W #0x14,A7
0001532e 60 30 |`0 | BRA 0x15360
00015330 2f 3a fd de |/: | MOVE.L 0x15110,-(A7)
00015334 2f 3a fd d6 |/: | MOVE.L 0x1510c,-(A7)
00015338 59 4f |YO | SUBQ.L #0x4,A7
0001533a 48 6f 00 04 |Ho | PEA.L (A7+0x4)
0001533e 3f 02 |? | MOVE.W D2,-(A7)
00015340 3f 3c 00 08 |?< | MOVE.W #0x8,-(A7)
00015344 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
0001534a 50 4f |PO | ADDQ.L #0x8,A7
0001534c 48 78 00 01 |Hx | PEA.L 0x1
00015350 42 27 |B' | CLR.B -(A7)
00015352 48 6e ff ff |Hn | PEA.L (A6-0x1)
00015356 4e b9 00 01 47 5e |N G^ | JSR _PushProgram(a : String; b : String; MOD c : B; VAR d : Bool)
0001535c de fc 00 16 | | ADDA.W #0x16,A7
00015360 54 4f |TO | ADDQ.L #0x2,A7
00015362 b0 02 | | CMP.B D2,D0
00015364 66 00 ff 5c |f \ | BNE 0x152c2
00015368 20 10 | | MOVE.L (A0),D0
0001536a b0 83 | | CMP.L D3,D0
0001536c 63 02 |c | BLS 0x15370
0001536e 4e 4f |NO | TRAP #15
00015370 3f 00 |? | MOVE.W D0,-(A7)
00015372 48 6e ff fc |Hn | PEA.L (A6-0x4)
00015376 4e b9 00 01 02 0e |N | JSR KC07_PortGetChar(port : Word ; VAR ret : Word)
0001537c 5c 4f |\O | ADDQ.L #0x6,A7
0001537e 30 2e ff fc |0. | MOVE.W (A6-0x4),D0
00015382 02 40 00 ff | @ | ANDI.W #0x00ff,D0
00015386 1d 40 00 08 | @ | MOVE.B D0,(A6+0x8)
0001538a 4c df 03 0f |L | MOVEM.L (A7)+,D0+D1+D2+D3+A0+A1
0001538e 4e 5e |N^ | UNLK A6
00015390 4e 75 |Nu | RTS
00015392 ; --------------------------------------------------------------------------------------
00015392 ; WriteConsoleString(str : String)
00015392 ; Stack:
00015392 ; A6+0x8 str : String
00015392 ; OMSI PASCAL Function
00015392 ; <LVAR 0x008 @ 4(r)>
00015392 ; --------------------------------------------------------------------------------------
00015392 _WriteConsoleString(str : String):
00015392 4e 56 ff e8 |NV | LINK.W A6,#0xffe8
00015396 bf d5 | | CMPA.L (A5),A7
00015398 62 06 |b | BHI 0x153a0
0001539a 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001539e 4e 76 |Nv | TRAPV
000153a0 de fc 00 18 | | ADDA.W #0x18,A7
000153a4 48 e7 c0 80 |H | MOVEM.L A0+D1+D0,-(A7)
000153a8 41 ee 00 08 |A | LEA.L (A6+0x8),A0
000153ac 22 3c 00 00 ff ff |"< | MOVE.L #0xffff,D1
000153b2 20 39 00 01 b1 c6 | 9 | MOVE.L console_config,D0
000153b8 b0 81 | | CMP.L D1,D0
000153ba 63 02 |c | BLS 0x153be
000153bc 4e 4f |NO | TRAP #15
000153be 3f 00 |? | MOVE.W D0,-(A7)
000153c0 2f 10 |/ | MOVE.L (A0),-(A7)
000153c2 4e b9 00 01 02 0a |N | JSR KC05_PortWriteString(port : Word ; str : String)
000153c8 5c 4f |\O | ADDQ.L #0x6,A7
000153ca 4a 39 00 01 b1 ca |J9 | TST.B console_prt_1
000153d0 67 26 |g& | BEQ 0x153f8
000153d2 30 39 00 01 b1 cc |09 | MOVE.W console_prt_2,D0
000153d8 b0 41 | A | CMP.W D1,D0
000153da 63 02 |c | BLS 0x153de
000153dc 4e 4f |NO | TRAP #15
000153de 3f 00 |? | MOVE.W D0,-(A7)
000153e0 30 39 00 01 b1 ce |09 | MOVE.W console_prt_3,D0
000153e6 b0 41 | A | CMP.W D1,D0
000153e8 63 02 |c | BLS 0x153ec
000153ea 4e 4f |NO | TRAP #15
000153ec 3f 00 |? | MOVE.W D0,-(A7)
000153ee 2f 10 |/ | MOVE.L (A0),-(A7)
000153f0 4e b9 00 01 02 1a |N | JSR KC0d_Write_Modem_String(Word, Word, Char)
000153f6 50 4f |PO | ADDQ.L #0x8,A7
000153f8 48 50 |HP | PEA.L (A0)
000153fa 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
00015400 58 4f |XO | ADDQ.L #0x4,A7
00015402 4c df 01 03 |L | MOVEM.L (A7)+,D0+D1+A0
00015406 4e 5e |N^ | UNLK A6
00015408 4e 75 |Nu | RTS
0001540a ; --------------------------------------------------------------------------------------
0001540a ; WriteConsoleCrLf(void)
0001540a ; Stack:
0001540a ; OMSI PASCAL Function
0001540a ; --------------------------------------------------------------------------------------
0001540a _WriteConsoleCrLf(void):
0001540a 4e 56 ff da |NV | LINK.W A6,#0xffda
0001540e bf d5 | | CMPA.L (A5),A7
00015410 62 06 |b | BHI 0x15418
00015412 44 fc 00 02 |D | MOVE.W #0x2,CCR
00015416 4e 76 |Nv | TRAPV
00015418 de fc 00 26 | & | ADDA.W #0x26,A7
0001541c 48 e7 f0 e0 |H | MOVEM.L A2+A1+A0+D3+D2+D1+D0,-(A7)
00015420 41 f9 00 01 b1 c6 |A | LEA.L console_config,A0
00015426 43 f9 00 01 b1 cc |C | LEA.L console_prt_2,A1
0001542c 45 f9 00 01 b1 ce |E | LEA.L console_prt_3,A2
00015432 22 3c 00 00 ff ff |"< | MOVE.L #0xffff,D1
00015438 74 0d |t | MOVEQ.L #0x0d,D2
0001543a 76 0a |v | MOVEQ.L #0x0a,D3
0001543c 20 10 | | MOVE.L (A0),D0
0001543e b0 81 | | CMP.L D1,D0
00015440 63 02 |c | BLS 0x15444
00015442 4e 4f |NO | TRAP #15
00015444 3f 00 |? | MOVE.W D0,-(A7)
00015446 3f 02 |? | MOVE.W D2,-(A7)
00015448 4e b9 00 01 02 0c |N | JSR KC06_PortPutChar(port : Word ; b : char)
0001544e 58 4f |XO | ADDQ.L #0x4,A7
00015450 20 10 | | MOVE.L (A0),D0
00015452 b0 81 | | CMP.L D1,D0
00015454 63 02 |c | BLS 0x15458
00015456 4e 4f |NO | TRAP #15
00015458 3f 00 |? | MOVE.W D0,-(A7)
0001545a 3f 03 |? | MOVE.W D3,-(A7)
0001545c 4e b9 00 01 02 0c |N | JSR KC06_PortPutChar(port : Word ; b : char)
00015462 58 4f |XO | ADDQ.L #0x4,A7
00015464 4a 39 00 01 b1 ca |J9 | TST.B console_prt_1
0001546a 67 3c |g< | BEQ 0x154a8
0001546c 30 11 |0 | MOVE.W (A1),D0
0001546e b0 41 | A | CMP.W D1,D0
00015470 63 02 |c | BLS 0x15474
00015472 4e 4f |NO | TRAP #15
00015474 3f 00 |? | MOVE.W D0,-(A7)
00015476 30 12 |0 | MOVE.W (A2),D0
00015478 b0 41 | A | CMP.W D1,D0
0001547a 63 02 |c | BLS 0x1547e
0001547c 4e 4f |NO | TRAP #15
0001547e 3f 00 |? | MOVE.W D0,-(A7)
00015480 3f 02 |? | MOVE.W D2,-(A7)
00015482 4e b9 00 01 02 18 |N | JSR KC0c_Write_Modem_Char(a, b: Word ; c : char)
00015488 5c 4f |\O | ADDQ.L #0x6,A7
0001548a 30 11 |0 | MOVE.W (A1),D0
0001548c b0 41 | A | CMP.W D1,D0
0001548e 63 02 |c | BLS 0x15492
00015490 4e 4f |NO | TRAP #15
00015492 3f 00 |? | MOVE.W D0,-(A7)
00015494 30 12 |0 | MOVE.W (A2),D0
00015496 b0 41 | A | CMP.W D1,D0
00015498 63 02 |c | BLS 0x1549c
0001549a 4e 4f |NO | TRAP #15
0001549c 3f 00 |? | MOVE.W D0,-(A7)
0001549e 3f 03 |? | MOVE.W D3,-(A7)
000154a0 4e b9 00 01 02 18 |N | JSR KC0c_Write_Modem_Char(a, b: Word ; c : char)
000154a6 5c 4f |\O | ADDQ.L #0x6,A7
000154a8 4c df 07 0f |L | MOVEM.L (A7)+,D0+D1+D2+D3+A0+A1+A2
000154ac 4e 5e |N^ | UNLK A6
000154ae 4e 75 |Nu | RTS
000154b0 ; --------------------------------------------------------------------------------------
000154b0 ; WriteConsoleStringCrLf(str : String)
000154b0 ; Stack:
000154b0 ; A6+0x8 str : String
000154b0 ; OMSI PASCAL Function
000154b0 ; <LVAR 0x008 4(r)>
000154b0 ; --------------------------------------------------------------------------------------
000154b0 _WriteConsoleStringCrLf(str : String):
000154b0 4e 56 ff f2 |NV | LINK.W A6,#0xfff2
000154b4 bf d5 | | CMPA.L (A5),A7
000154b6 62 06 |b | BHI 0x154be
000154b8 44 fc 00 02 |D | MOVE.W #0x2,CCR
000154bc 4e 76 |Nv | TRAPV
000154be de fc 00 0e | | ADDA.W #0xe,A7
000154c2 48 e7 00 80 |H | MOVEM.L A0,-(A7)
000154c6 41 ee 00 08 |A | LEA.L (A6+0x8),A0
000154ca 2f 10 |/ | MOVE.L (A0),-(A7)
000154cc 1f 3c 00 0d | < | MOVE.B #0x0d,-(A7)
000154d0 4e b9 00 01 0d 66 |N f | JSR _AppendChar(MOD b : String; a : char)
000154d6 54 4f |TO | ADDQ.L #0x2,A7
000154d8 2e 90 |. | MOVE.L (A0),(A7)
000154da 1f 3c 00 0a | < | MOVE.B #0x0a,-(A7)
000154de 4e b9 00 01 0d 66 |N f | JSR _AppendChar(MOD b : String; a : char)
000154e4 54 4f |TO | ADDQ.L #0x2,A7
000154e6 2e 90 |. | MOVE.L (A0),(A7)
000154e8 4e ba fe a8 |N | JSR _WriteConsoleString(str : String)
000154ec 58 4f |XO | ADDQ.L #0x4,A7
000154ee 4c df 01 00 |L | MOVEM.L (A7)+,A0
000154f2 4e 5e |N^ | UNLK A6
000154f4 4e 75 |Nu | RTS
000154f6 ; --------------------------------------------------------------------------------------
000154f6 ; OMSI PASCAL Function
000154f6 ; <LVAR 0x008 4(r)>
000154f6 ; --------------------------------------------------------------------------------------
000154f6 HandleBackSpace(a : String):
000154f6 4e 56 ff c0 |NV | LINK.W A6,#0xffc0
000154fa bf d5 | | CMPA.L (A5),A7
000154fc 62 06 |b | BHI 0x15504
000154fe 44 fc 00 02 |D | MOVE.W #0x2,CCR
00015502 4e 76 |Nv | TRAPV
00015504 de fc 00 38 | 8 | ADDA.W #0x38,A7
00015508 48 e7 f3 e0 |H | MOVEM.L A2+A1+A0+D7+D6+D3+D2+D1+D0,-(A7)
0001550c 43 f9 00 01 b1 c6 |C | LEA.L console_config,A1
00015512 45 f9 00 01 02 0c |E | LEA.L KC06_PortPutChar(port : Word ; b : char),A2
00015518 22 3c 00 00 ff ff |"< | MOVE.L #0xffff,D1
0001551e 74 20 |t | MOVEQ.L #0x20,D2
00015520 76 08 |v | MOVEQ.L #0x08,D3
00015522 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00015526 2f 08 |/ | MOVE.L A0,-(A7)
00015528 4a 50 |JP | TST.W (A0)
0001552a 66 14 |f | BNE 0x15540
0001552c 20 11 | | MOVE.L (A1),D0
0001552e b0 81 | | CMP.L D1,D0
00015530 63 02 |c | BLS 0x15534
00015532 4e 4f |NO | TRAP #15
00015534 3f 00 |? | MOVE.W D0,-(A7)
00015536 3f 3c 00 07 |?< | MOVE.W #0x7,-(A7)
0001553a 4e 92 |N | JSR (A2)
0001553c 58 4f |XO | ADDQ.L #0x4,A7
0001553e 60 76 |`v | BRA 0x155b6
00015540 7c 00 || | MOVEQ.L #0x00,D6
00015542 30 10 |0 | MOVE.W (A0),D0
00015544 48 c0 |H | EXTW.L D0
00015546 53 80 |S | SUBQ.L #0x1,D0
00015548 0c 80 00 00 00 7d | } | CMPI.L #0x0000007d,D0
0001554e 63 02 |c | BLS 0x15552
00015550 4e 4f |NO | TRAP #15
00015552 10 30 08 02 | 0 | MOVE.B (A0+D0.L+#0x2),D0
00015556 b0 02 | | CMP.B D2,D0
00015558 64 02 |d | BCC 0x1555c
0001555a 7c 01 || | MOVEQ.L #0x01,D6
0001555c 2f 06 |/ | MOVE.L D6,-(A7)
0001555e 7e 00 |~ | MOVEQ.L #0x00,D7
00015560 be 97 | | CMP.L (A7),D7
00015562 6e 34 |n4 | BGT 0x15598
00015564 20 11 | | MOVE.L (A1),D0
00015566 b0 81 | | CMP.L D1,D0
00015568 63 02 |c | BLS 0x1556c
0001556a 4e 4f |NO | TRAP #15
0001556c 3f 00 |? | MOVE.W D0,-(A7)
0001556e 3f 03 |? | MOVE.W D3,-(A7)
00015570 4e 92 |N | JSR (A2)
00015572 58 4f |XO | ADDQ.L #0x4,A7
00015574 20 11 | | MOVE.L (A1),D0
00015576 b0 81 | | CMP.L D1,D0
00015578 63 02 |c | BLS 0x1557c
0001557a 4e 4f |NO | TRAP #15
0001557c 3f 00 |? | MOVE.W D0,-(A7)
0001557e 3f 02 |? | MOVE.W D2,-(A7)
00015580 4e 92 |N | JSR (A2)
00015582 58 4f |XO | ADDQ.L #0x4,A7
00015584 20 11 | | MOVE.L (A1),D0
00015586 b0 81 | | CMP.L D1,D0
00015588 63 02 |c | BLS 0x1558c
0001558a 4e 4f |NO | TRAP #15
0001558c 3f 00 |? | MOVE.W D0,-(A7)
0001558e 3f 03 |? | MOVE.W D3,-(A7)
00015590 4e 92 |N | JSR (A2)
00015592 58 4f |XO | ADDQ.L #0x4,A7
00015594 52 87 |R | ADDQ.L #0x1,D7
00015596 68 c8 |h | BVC 0x15560
00015598 58 4f |XO | ADDQ.L #0x4,A7
0001559a 20 57 | W | MOVEA.L (A7),A0
0001559c 30 10 |0 | MOVE.W (A0),D0
0001559e 48 c0 |H | EXTW.L D0
000155a0 53 80 |S | SUBQ.L #0x1,D0
000155a2 04 80 ff ff 80 00 | | SUBI.L #0xffff8000,D0
000155a8 b0 81 | | CMP.L D1,D0
000155aa 63 02 |c | BLS 0x155ae
000155ac 4e 4f |NO | TRAP #15
000155ae 06 80 ff ff 80 00 | | ADDI.L #0xffff8000,D0
000155b4 30 80 |0 | MOVE.W D0,(A0)
000155b6 58 4f |XO | ADDQ.L #0x4,A7
000155b8 4c df 07 cf |L | MOVEM.L (A7)+,D0+D1+D2+D3+D6+D7+A0+A1+A2
000155bc 4e 5e |N^ | UNLK A6
000155be 4e 75 |Nu | RTS
000155c0 ; --------------------------------------------------------------------------------------
000155c0 ; OMSI PASCAL Function
000155c0 ; --------------------------------------------------------------------------------------
000155c0 EraseEOL(void):
000155c0 4e 56 ff e8 |NV | LINK.W A6,#0xffe8
000155c4 bf d5 | | CMPA.L (A5),A7
000155c6 62 06 |b | BHI 0x155ce
000155c8 44 fc 00 02 |D | MOVE.W #0x2,CCR
000155cc 4e 76 |Nv | TRAPV
000155ce de fc 00 18 | | ADDA.W #0x18,A7
000155d2 48 e7 c0 c0 |H | MOVEM.L A1+A0+D1+D0,-(A7)
000155d6 41 f9 00 01 b1 c6 |A | LEA.L console_config,A0
000155dc 43 f9 00 01 02 0c |C | LEA.L KC06_PortPutChar(port : Word ; b : char),A1
000155e2 22 3c 00 00 ff ff |"< | MOVE.L #0xffff,D1
000155e8 20 10 | | MOVE.L (A0),D0
000155ea b0 81 | | CMP.L D1,D0
000155ec 63 02 |c | BLS 0x155f0
000155ee 4e 4f |NO | TRAP #15
000155f0 3f 00 |? | MOVE.W D0,-(A7)
000155f2 3f 3c 00 0d |?< | MOVE.W #0xd,-(A7)
000155f6 4e 91 |N | JSR (A1)
000155f8 58 4f |XO | ADDQ.L #0x4,A7
000155fa 20 10 | | MOVE.L (A0),D0
000155fc b0 81 | | CMP.L D1,D0
000155fe 63 02 |c | BLS 0x15602
00015600 4e 4f |NO | TRAP #15
00015602 3f 00 |? | MOVE.W D0,-(A7)
00015604 3f 3c 00 1b |?< | MOVE.W #0x1b,-(A7)
00015608 4e 91 |N | JSR (A1)
0001560a 58 4f |XO | ADDQ.L #0x4,A7
0001560c 20 10 | | MOVE.L (A0),D0
0001560e b0 81 | | CMP.L D1,D0
00015610 63 02 |c | BLS 0x15614
00015612 4e 4f |NO | TRAP #15
00015614 3f 00 |? | MOVE.W D0,-(A7)
00015616 3f 3c 00 5b |?< [ | MOVE.W #0x5b,-(A7)
0001561a 4e 91 |N | JSR (A1)
0001561c 58 4f |XO | ADDQ.L #0x4,A7
0001561e 20 10 | | MOVE.L (A0),D0
00015620 b0 81 | | CMP.L D1,D0
00015622 63 02 |c | BLS 0x15626
00015624 4e 4f |NO | TRAP #15
00015626 3f 00 |? | MOVE.W D0,-(A7)
00015628 3f 3c 00 30 |?< 0 | MOVE.W #0x30,-(A7)
0001562c 4e 91 |N | JSR (A1)
0001562e 58 4f |XO | ADDQ.L #0x4,A7
00015630 20 10 | | MOVE.L (A0),D0
00015632 b0 81 | | CMP.L D1,D0
00015634 63 02 |c | BLS 0x15638
00015636 4e 4f |NO | TRAP #15
00015638 3f 00 |? | MOVE.W D0,-(A7)
0001563a 3f 3c 00 4b |?< K | MOVE.W #0x4b,-(A7)
0001563e 4e 91 |N | JSR (A1)
00015640 58 4f |XO | ADDQ.L #0x4,A7
00015642 4c df 03 03 |L | MOVEM.L (A7)+,D0+D1+A0+A1
00015646 4e 5e |N^ | UNLK A6
00015648 4e 75 |Nu | RTS
0001564a ; --------------------------------------------------------------------------------------
0001564a ; OMSI PASCAL Function
0001564a ; <LVAR 0x008 1(rw)>
0001564a ; --------------------------------------------------------------------------------------
0001564a 4e 56 ff ea |NV | LINK.W A6,#0xffea
0001564e bf d5 | | CMPA.L (A5),A7
00015650 62 06 |b | BHI 0x15658
00015652 44 fc 00 02 |D | MOVE.W #0x2,CCR
00015656 4e 76 |Nv | TRAPV
00015658 de fc 00 14 | | ADDA.W #0x14,A7
0001565c 48 e7 c0 80 |H | MOVEM.L A0+D1+D0,-(A7)
00015660 41 ee 00 08 |A | LEA.L (A6+0x8),A0
00015664 10 10 | | MOVE.B (A0),D0
00015666 0c 00 00 20 | | CMPI.B #0x20,D0
0001566a 64 18 |d | BCC 0x15684
0001566c 1f 3c 00 5e | < ^ | MOVE.B #0x5e,-(A7)
00015670 4e ba fb 9e |N | JSR _WriteConsoleChar(chr : char)
00015674 54 4f |TO | ADDQ.L #0x2,A7
00015676 42 81 |B | CLR.L D1
00015678 12 00 | | MOVE.B D0,D1
0001567a 06 41 00 40 | A @ | ADDI.W #0x0040,D1
0001567e 43 bc 00 ff |C | CHK.W #0xff,D1
00015682 10 81 | | MOVE.B D1,(A0)
00015684 1f 10 | | MOVE.B (A0),-(A7)
00015686 4e ba fb 88 |N | JSR _WriteConsoleChar(chr : char)
0001568a 54 4f |TO | ADDQ.L #0x2,A7
0001568c 4c df 01 03 |L | MOVEM.L (A7)+,D0+D1+A0
00015690 4e 5e |N^ | UNLK A6
00015692 4e 75 |Nu | RTS
00015694 ; --------------------------------------------------------------------------------------
00015694 ; AskConsoleString(prompt : String) : String
00015694 ; Stack:
00015694 ; A6+0xc VAR RETURN : String
00015694 ; A6+0x8 prompt : String
00015694 ; OMSI PASCAL Function
00015694 ; <LVAR 0x00c 4(w)>
00015694 ; <LVAR 0x008 @ 4(r)>
00015694 ; <LVAR -0x004 1(rw)>
00015694 ; <LVAR -0x005 1(rw)>
00015694 ; <LVAR -0x010 @ 4(r)>
00015694 ; --------------------------------------------------------------------------------------
00015694 _AskConsoleString(prompt : String) : String:
00015694 4e 56 ff 90 |NV | LINK.W A6,#0xff90
00015698 bf d5 | | CMPA.L (A5),A7
0001569a 62 06 |b | BHI 0x156a2
0001569c 44 fc 00 02 |D | MOVE.W #0x2,CCR
000156a0 4e 76 |Nv | TRAPV
000156a2 de fc 00 60 | ` | ADDA.W #0x60,A7
000156a6 48 e7 ff f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D6+D5+D4+D3+D2+D1+D0,-(A7)
000156aa 45 f9 00 01 b5 d0 |E | LEA.L 0x1b5d0,A2
000156b0 47 ee ff f0 |G | LEA.L (A6-0x10),A3
000156b4 49 ee 00 08 |I | LEA.L (A6+0x8),A4
000156b8 74 01 |t | MOVEQ.L #0x01,D2
000156ba 76 07 |v | MOVEQ.L #0x07,D3
000156bc 78 12 |x | MOVEQ.L #0x12,D4
000156be 3c 12 |< | MOVE.W (A2),D6
000156c0 48 53 |HS | PEA.L (A3)
000156c2 4e b9 00 01 0c fa |N | JSR _NewString(VAR a : String)
000156c8 58 4f |XO | ADDQ.L #0x4,A7
000156ca 20 53 | S | MOVEA.L (A3),A0
000156cc 2f 08 |/ | MOVE.L A0,-(A7)
000156ce 42 2e ff fb |B. | CLR.B (A6-0x5)
000156d2 20 54 | T | MOVEA.L (A4),A0
000156d4 b0 c2 | | CMPA.W D2,A0
000156d6 67 12 |g | BEQ 0x156ea
000156d8 59 4f |YO | SUBQ.L #0x4,A7
000156da 2f 08 |/ | MOVE.L A0,-(A7)
000156dc 4e b9 00 01 0e da |N | JSR _StringDup(a : String) : String
000156e2 58 4f |XO | ADDQ.L #0x4,A7
000156e4 4e ba fc ac |N | JSR _WriteConsoleString(str : String)
000156e8 58 4f |XO | ADDQ.L #0x4,A7
000156ea 20 53 | S | MOVEA.L (A3),A0
000156ec 42 50 |BP | CLR.W (A0)
000156ee 7e 00 |~ | MOVEQ.L #0x00,D7
000156f0 55 4f |UO | SUBQ.L #0x2,A7
000156f2 4e ba fb 92 |N | JSR _ReadChar() : Byte
000156f6 10 1f | | MOVE.B (A7)+,D0
000156f8 1d 40 ff fc | @ | MOVE.B D0,(A6-0x4)
000156fc 0c 00 00 08 | | CMPI.B #0x08,D0
00015700 67 06 |g | BEQ 0x15708
00015702 0c 00 00 7f | | CMPI.B #0x7f,D0
00015706 66 0c |f | BNE 0x15714
00015708 2f 13 |/ | MOVE.L (A3),-(A7)
0001570a 4e ba fd ea |N | JSR HandleBackSpace(a : String)
0001570e 58 4f |XO | ADDQ.L #0x4,A7
00015710 60 00 01 00 |` | BRA 0x15812
00015714 0c 00 00 15 | | CMPI.B #0x15,D0
00015718 66 0a |f | BNE 0x15724
0001571a 4e ba fe a4 |N | JSR EraseEOL(void)
0001571e 60 ae |` | BRA 0x156ce
00015720 60 00 00 f0 |` | .XXX[0x4]
00015724 b0 04 | | CMP.B D4,D0
00015726 66 06 |f | BNE 0x1572e
00015728 7e 01 |~ | MOVEQ.L #0x01,D7
0001572a 60 00 00 e6 |` | BRA 0x15812
0001572e 0c 00 00 03 | | CMPI.B #0x03,D0
00015732 66 3e |f> | BNE 0x15772
00015734 4a 39 00 02 01 08 |J9 | TST.B somekindoffsflag
0001573a 66 36 |f6 | BNE 0x15772
0001573c 9e c4 | | SUBA.W D4,A7
0001573e 20 4f | O | MOVEA.L A7,A0
00015740 43 fa f9 d2 |C | LEA.L 0x15114,A1
00015744 70 10 |p | MOVEQ.L #0x10,D0
00015746 10 d9 | | MOVE.B (A1)+,(A0)+
00015748 51 c8 ff fc |Q | DBF D0,0x15746
0001574c 1f 3c 00 0e | < | MOVE.B #0x0e,-(A7)
00015750 59 4f |YO | SUBQ.L #0x4,A7
00015752 48 6f 00 06 |Ho | PEA.L (A7+0x6)
00015756 3f 02 |? | MOVE.W D2,-(A7)
00015758 3f 3c 00 11 |?< | MOVE.W #0x11,-(A7)
0001575c 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00015762 50 4f |PO | ADDQ.L #0x8,A7
00015764 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
0001576a de fc 00 18 | | ADDA.W #0x18,A7
0001576e 60 00 00 a2 |` | BRA 0x15812
00015772 0c 00 00 0d | | CMPI.B #0x0d,D0
00015776 66 08 |f | BNE 0x15780
00015778 1d 42 ff fb | B | MOVE.B D2,(A6-0x5)
0001577c 60 00 00 94 |` | BRA 0x15812
00015780 0c 00 00 10 | | CMPI.B #0x10,D0
00015784 66 3a |f: | BNE 0x157c0
00015786 20 53 | S | MOVEA.L (A3),A0
00015788 4d 83 |M | CHK.W D3,D6
0001578a 42 80 |B | CLR.L D0
0001578c 30 06 |0 | MOVE.W D6,D0
0001578e ef 80 | | ASL.L #0x7,D0
00015790 43 f9 00 01 b1 be |C | LEA.L 0x1b1be,A1
00015796 43 f1 08 12 |C | LEA.L (A1+D0.L+#0x12),A1
0001579a 70 7f |p | MOVEQ.L #0x7f,D0
0001579c 10 d9 | | MOVE.B (A1)+,(A0)+
0001579e 51 c8 ff fc |Q | DBF D0,0x1579c
000157a2 4a 46 |JF | TST.W D6
000157a4 66 04 |f | BNE 0x157aa
000157a6 7c 07 || | MOVEQ.L #0x07,D6
000157a8 60 12 |` | BRA 0x157bc
000157aa 42 80 |B | CLR.L D0
000157ac 30 06 |0 | MOVE.W D6,D0
000157ae 53 80 |S | SUBQ.L #0x1,D0
000157b0 0c 80 00 00 ff ff | | CMPI.L #0x0000ffff,D0
000157b6 63 02 |c | BLS 0x157ba
000157b8 4e 4f |NO | TRAP #15
000157ba 3c 00 |< | MOVE.W D0,D6
000157bc 60 00 ff 6a |` j | BRA 0x15728
000157c0 20 57 | W | MOVEA.L (A7),A0
000157c2 30 10 |0 | MOVE.W (A0),D0
000157c4 0c 40 00 7e | @ ~ | CMPI.W #0x007e,D0
000157c8 66 30 |f0 | BNE 0x157fa
000157ca 4e ba fc 3e |N > | JSR _WriteConsoleCrLf(void)
000157ce 41 fa f9 6c |A l | LEA.L 0x1513c,A0
000157d2 70 0a |p | MOVEQ.L #0x0a,D0
000157d4 3f 20 |? | MOVE.W -(A0),-(A7)
000157d6 51 c8 ff fc |Q | DBF D0,0x157d4
000157da 59 4f |YO | SUBQ.L #0x4,A7
000157dc 48 6f 00 04 |Ho | PEA.L (A7+0x4)
000157e0 3f 02 |? | MOVE.W D2,-(A7)
000157e2 3f 3c 00 16 |?< | MOVE.W #0x16,-(A7)
000157e6 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
000157ec 50 4f |PO | ADDQ.L #0x8,A7
000157ee 4e ba fc c0 |N | JSR _WriteConsoleStringCrLf(str : String)
000157f2 de fc 00 1a | | ADDA.W #0x1a,A7
000157f6 60 00 fe d6 |` | BRA 0x156ce
000157fa 2f 13 |/ | MOVE.L (A3),-(A7)
000157fc 1f 2e ff fc | . | MOVE.B (A6-0x4),-(A7)
00015800 4e b9 00 01 0d 66 |N f | JSR _AppendChar(MOD b : String; a : char)
00015806 58 4f |XO | ADDQ.L #0x4,A7
00015808 1e ae ff fc | | MOVE.B (A6-0x4),(A7)
0001580c 4e ba fe 3c |N < | JSR 0x1564a
00015810 54 4f |TO | ADDQ.L #0x2,A7
00015812 4a 07 |J | TST.B D7
00015814 67 46 |gF | BEQ 0x1585c
00015816 4e ba fd a8 |N | JSR EraseEOL(void)
0001581a 59 4f |YO | SUBQ.L #0x4,A7
0001581c 2f 14 |/ | MOVE.L (A4),-(A7)
0001581e 4e b9 00 01 0e da |N | JSR _StringDup(a : String) : String
00015824 58 4f |XO | ADDQ.L #0x4,A7
00015826 4e ba fb 6a |N j | JSR _WriteConsoleString(str : String)
0001582a 58 4f |XO | ADDQ.L #0x4,A7
0001582c 20 57 | W | MOVEA.L (A7),A0
0001582e 30 10 |0 | MOVE.W (A0),D0
00015830 48 c0 |H | EXTW.L D0
00015832 2f 00 |/ | MOVE.L D0,-(A7)
00015834 7a 01 |z | MOVEQ.L #0x01,D5
00015836 ba 97 | | CMP.L (A7),D5
00015838 6e 20 |n | BGT 0x1585a
0001583a 20 05 | | MOVE.L D5,D0
0001583c 53 80 |S | SUBQ.L #0x1,D0
0001583e 0c 80 00 00 00 7d | } | CMPI.L #0x0000007d,D0
00015844 63 02 |c | BLS 0x15848
00015846 4e 4f |NO | TRAP #15
00015848 20 6f 00 04 | o | MOVEA.L (A7+0x4),A0
0001584c 1f 30 08 02 | 0 | MOVE.B (A0+D0.L+#0x2),-(A7)
00015850 4e ba fd f8 |N | JSR 0x1564a
00015854 54 4f |TO | ADDQ.L #0x2,A7
00015856 52 85 |R | ADDQ.L #0x1,D5
00015858 68 dc |h | BVC 0x15836
0001585a 58 4f |XO | ADDQ.L #0x4,A7
0001585c 4a 2e ff fb |J. | TST.B (A6-0x5)
00015860 67 00 fe 8c |g | BEQ 0x156ee
00015864 58 4f |XO | ADDQ.L #0x4,A7
00015866 30 12 |0 | MOVE.W (A2),D0
00015868 b0 43 | C | CMP.W D3,D0
0001586a 66 04 |f | BNE 0x15870
0001586c 42 52 |BR | CLR.W (A2)
0001586e 60 12 |` | BRA 0x15882
00015870 42 81 |B | CLR.L D1
00015872 32 00 |2 | MOVE.W D0,D1
00015874 52 81 |R | ADDQ.L #0x1,D1
00015876 0c 81 00 00 ff ff | | CMPI.L #0x0000ffff,D1
0001587c 63 02 |c | BLS 0x15880
0001587e 4e 4f |NO | TRAP #15
00015880 34 81 |4 | MOVE.W D1,(A2)
00015882 30 12 |0 | MOVE.W (A2),D0
00015884 41 83 |A | CHK.W D3,D0
00015886 42 81 |B | CLR.L D1
00015888 32 00 |2 | MOVE.W D0,D1
0001588a ef 81 | | ASL.L #0x7,D1
0001588c 41 f9 00 01 b1 be |A | LEA.L 0x1b1be,A0
00015892 22 53 |"S | MOVEA.L (A3),A1
00015894 41 f0 18 12 |A | LEA.L (A0+D1.L+#0x12),A0
00015898 70 7f |p | MOVEQ.L #0x7f,D0
0001589a 10 d9 | | MOVE.B (A1)+,(A0)+
0001589c 51 c8 ff fc |Q | DBF D0,0x1589a
000158a0 20 54 | T | MOVEA.L (A4),A0
000158a2 b0 c2 | | CMPA.W D2,A0
000158a4 67 0a |g | BEQ 0x158b0
000158a6 48 54 |HT | PEA.L (A4)
000158a8 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
000158ae 58 4f |XO | ADDQ.L #0x4,A7
000158b0 4e ba fb 58 |N X | JSR _WriteConsoleCrLf(void)
000158b4 2d 53 00 0c |-S | MOVE.L (A3),(A6+0xc)
000158b8 4c df 1f ff |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D5+D6+D7+A0+A1+A2+A3+A4
000158bc 4e 5e |N^ | UNLK A6
000158be 4e 75 |Nu | RTS
000158c0 ; --------------------------------------------------------------------------------------
000158c0 ; AskOnConsoleInt(prompt: String) : Long
000158c0 ; Stack:
000158c0 ; A6+0xc VAR RETURN : Long
000158c0 ; A6+0x8 prompt : String
000158c0 ; OMSI PASCAL Function
000158c0 ; <LVAR 0x00c 4(w)>
000158c0 ; <LVAR 0x008 @ 4(r)>
000158c0 ; <LVAR -0x004 @ 1(r)>
000158c0 ; <LVAR -0x008 @ 4(r)>
000158c0 ; --------------------------------------------------------------------------------------
000158c0 _AskOnConsoleInt(prompt: String) : Long:
000158c0 4e 56 ff a8 |NV | LINK.W A6,#0xffa8
000158c4 bf d5 | | CMPA.L (A5),A7
000158c6 62 06 |b | BHI 0x158ce
000158c8 44 fc 00 02 |D | MOVE.W #0x2,CCR
000158cc 4e 76 |Nv | TRAPV
000158ce de fc 00 50 | P | ADDA.W #0x50,A7
000158d2 48 e7 80 e0 |H | MOVEM.L A2+A1+A0+D0,-(A7)
000158d6 45 ee ff fc |E | LEA.L (A6-0x4),A2
000158da 51 4f |QO | SUBQ.L #0x8,A7
000158dc 2f 2e 00 08 |/. | MOVE.L (A6+0x8),-(A7)
000158e0 4e b9 00 01 0e da |N | JSR _StringDup(a : String) : String
000158e6 58 4f |XO | ADDQ.L #0x4,A7
000158e8 4e ba fd aa |N | JSR _AskConsoleString(prompt : String) : String
000158ec 58 4f |XO | ADDQ.L #0x4,A7
000158ee 48 52 |HR | PEA.L (A2)
000158f0 48 6e ff f8 |Hn | PEA.L (A6-0x8)
000158f4 4e b9 00 01 12 7c |N | | JSR _String2Long(src : String; VAR status : Bool; VAR retval : Long)
000158fa de fc 00 0c | | ADDA.W #0xc,A7
000158fe 4a 12 |J | TST.B (A2)
00015900 66 30 |f0 | BNE 0x15932
00015902 9e fc 00 30 | 0 | SUBA.W #0x30,A7
00015906 20 4f | O | MOVEA.L A7,A0
00015908 43 fa f8 32 |C 2 | LEA.L 0x1513c,A1
0001590c 70 2e |p. | MOVEQ.L #0x2e,D0
0001590e 10 d9 | | MOVE.B (A1)+,(A0)+
00015910 51 c8 ff fc |Q | DBF D0,0x1590e
00015914 59 4f |YO | SUBQ.L #0x4,A7
00015916 48 6f 00 04 |Ho | PEA.L (A7+0x4)
0001591a 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
0001591e 3f 3c 00 2f |?< / | MOVE.W #0x2f,-(A7)
00015922 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00015928 50 4f |PO | ADDQ.L #0x8,A7
0001592a 4e ba fb 84 |N | JSR _WriteConsoleStringCrLf(str : String)
0001592e de fc 00 34 | 4 | ADDA.W #0x34,A7
00015932 4a 12 |J | TST.B (A2)
00015934 67 a4 |g | BEQ 0x158da
00015936 48 6e 00 08 |Hn | PEA.L (A6+0x8)
0001593a 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
00015940 58 4f |XO | ADDQ.L #0x4,A7
00015942 2d 6e ff f8 00 0c |-n | MOVE.L (A6-0x8),(A6+0xc)
00015948 4c df 07 01 |L | MOVEM.L (A7)+,D0+A0+A1+A2
0001594c 4e 5e |N^ | UNLK A6
0001594e 4e 75 |Nu | RTS
00015950 ; --------------------------------------------------------------------------------------
00015950 ; AskOnConsoleIntRange(prompt: String; low : Long; High : Long) : Long
00015950 ; Stack:
00015950 ; A6+0x14 VAR RETURN : Long
00015950 ; A6+0x10 prompt : String
00015950 ; A6+0xc low : Long
00015950 ; A6+0x8 High : Long
00015950 ; OMSI PASCAL Function
00015950 ; <LVAR 0x014 4(w)>
00015950 ; <LVAR 0x010 @ 4(r)>
00015950 ; <LVAR 0x00c 4(r)>
00015950 ; <LVAR 0x008 4(r)>
00015950 ; --------------------------------------------------------------------------------------
00015950 _AskOnConsoleIntRange(prompt: String; low : Long; High : Long) : Long:
00015950 4e 56 ff 92 |NV | LINK.W A6,#0xff92
00015954 bf d5 | | CMPA.L (A5),A7
00015956 62 06 |b | BHI 0x1595e
00015958 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001595c 4e 76 |Nv | TRAPV
0001595e de fc 00 66 | f | ADDA.W #0x66,A7
00015962 48 e7 e3 c0 |H | MOVEM.L A1+A0+D7+D6+D2+D1+D0,-(A7)
00015966 43 f9 00 01 0d a4 |C | LEA.L _StringLit(Src : Pointer; Offset: W; Len : W) : String,A1
0001596c 72 01 |r | MOVEQ.L #0x01,D1
0001596e 74 02 |t | MOVEQ.L #0x02,D2
00015970 51 4f |QO | SUBQ.L #0x8,A7
00015972 2f 2e 00 10 |/. | MOVE.L (A6+0x10),-(A7)
00015976 4e b9 00 01 0e da |N | JSR _StringDup(a : String) : String
0001597c 58 4f |XO | ADDQ.L #0x4,A7
0001597e 4e ba ff 40 |N @ | JSR _AskOnConsoleInt(prompt: String) : Long
00015982 58 4f |XO | ADDQ.L #0x4,A7
00015984 2e 1f |. | MOVE.L (A7)+,D7
00015986 7c 00 || | MOVEQ.L #0x00,D6
00015988 be ae 00 0c | | CMP.L (A6+0xc),D7
0001598c 6d 08 |m | BLT 0x15996
0001598e be ae 00 08 | | CMP.L (A6+0x8),D7
00015992 6e 02 |n | BGT 0x15996
00015994 52 06 |R | ADDQ.B #0x1,D6
00015996 4a 06 |J | TST.B D6
00015998 66 5e |f^ | BNE 0x159f8
0001599a 41 fa f7 f2 |A | LEA.L 0x1518e,A0
0001599e 70 10 |p | MOVEQ.L #0x10,D0
000159a0 3f 20 |? | MOVE.W -(A0),-(A7)
000159a2 51 c8 ff fc |Q | DBF D0,0x159a0
000159a6 3f 3a f7 e6 |?: | MOVE.W 0x1518e,-(A7)
000159aa 3f 3a f7 e4 |?: | MOVE.W 0x15190,-(A7)
000159ae 51 4f |QO | SUBQ.L #0x8,A7
000159b0 48 6f 00 0c |Ho | PEA.L (A7+0xc)
000159b4 3f 01 |? | MOVE.W D1,-(A7)
000159b6 3f 3c 00 22 |?< " | MOVE.W #0x22,-(A7)
000159ba 4e 91 |N | JSR (A1)
000159bc 2e ae 00 0c |. | MOVE.L (A6+0xc),(A7)
000159c0 4e b9 00 01 10 c0 |N | JSR _Long2String(a : Long) : String
000159c6 48 6f 00 12 |Ho | PEA.L (A7+0x12)
000159ca 3f 01 |? | MOVE.W D1,-(A7)
000159cc 3f 02 |? | MOVE.W D2,-(A7)
000159ce 4e 91 |N | JSR (A1)
000159d0 2e ae 00 08 |. | MOVE.L (A6+0x8),(A7)
000159d4 4e b9 00 01 10 c0 |N | JSR _Long2String(a : Long) : String
000159da 48 6f 00 18 |Ho | PEA.L (A7+0x18)
000159de 3f 01 |? | MOVE.W D1,-(A7)
000159e0 3f 02 |? | MOVE.W D2,-(A7)
000159e2 4e 91 |N | JSR (A1)
000159e4 50 4f |PO | ADDQ.L #0x8,A7
000159e6 4e b9 00 01 10 3c |N < | JSR _StringCat5(a, b, c, d, e : String) : String
000159ec de fc 00 14 | | ADDA.W #0x14,A7
000159f0 4e ba fa be |N | JSR _WriteConsoleStringCrLf(str : String)
000159f4 de fc 00 2a | * | ADDA.W #0x2a,A7
000159f8 4a 06 |J | TST.B D6
000159fa 67 00 ff 74 |g t | BEQ 0x15970
000159fe 48 6e 00 10 |Hn | PEA.L (A6+0x10)
00015a02 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
00015a08 58 4f |XO | ADDQ.L #0x4,A7
00015a0a 2d 47 00 14 |-G | MOVE.L D7,(A6+0x14)
00015a0e 4c df 03 c7 |L | MOVEM.L (A7)+,D0+D1+D2+D6+D7+A0+A1
00015a12 4e 5e |N^ | UNLK A6
00015a14 4e 75 |Nu | RTS
00015a16 ; --------------------------------------------------------------------------------------
00015a16 ; AskOnConsoleYesNo(prompt : String; default : Bool) : Bool
00015a16 ; Stack:
00015a16 ; A6+0xe VAR RETURN : Bool
00015a16 ; A6+0xa prompt : String
00015a16 ; A6+0x8 default : Bool
00015a16 ; OMSI PASCAL Function
00015a16 ; <LVAR 0x00e 1(rw)>
00015a16 ; <LVAR 0x00a @ 4(r)>
00015a16 ; <LVAR 0x008 1(r)>
00015a16 ; <LVAR -0x008 @ 4(rw)>
00015a16 ; --------------------------------------------------------------------------------------
00015a16 _AskOnConsoleYesNo(prompt : String; default : Bool) : Bool:
00015a16 4e 56 ff a2 |NV | LINK.W A6,#0xffa2
00015a1a bf d5 | | CMPA.L (A5),A7
00015a1c 62 06 |b | BHI 0x15a24
00015a1e 44 fc 00 02 |D | MOVE.W #0x2,CCR
00015a22 4e 76 |Nv | TRAPV
00015a24 de fc 00 54 | T | ADDA.W #0x54,A7
00015a28 48 e7 f3 f0 |H | MOVEM.L A3+A2+A1+A0+D7+D6+D3+D2+D1+D0,-(A7)
00015a2c 45 ee ff f8 |E | LEA.L (A6-0x8),A2
00015a30 47 ee 00 0e |G | LEA.L (A6+0xe),A3
00015a34 74 01 |t | MOVEQ.L #0x01,D2
00015a36 76 0a |v | MOVEQ.L #0x0a,D3
00015a38 10 2e 00 08 | . | MOVE.B (A6+0x8),D0
00015a3c 48 80 |H | EXTB.W D0
00015a3e 72 0a |r | MOVEQ.L #0x0a,D1
00015a40 c3 c0 | | MULS.W D0,D1
00015a42 41 fa f7 b8 |A | LEA.L 0x151fc,A0
00015a46 9e c3 | | SUBA.W D3,A7
00015a48 22 4f |"O | MOVEA.L A7,A1
00015a4a 41 f0 10 00 |A | LEA.L (A0+D1.W),A0
00015a4e 72 09 |r | MOVEQ.L #0x09,D1
00015a50 12 d8 | | MOVE.B (A0)+,(A1)+
00015a52 51 c9 ff fc |Q | DBF D1,0x15a50
00015a56 9e fc 00 10 | | SUBA.W #0x10,A7
00015a5a 2f 2e 00 0a |/. | MOVE.L (A6+0xa),-(A7)
00015a5e 4e b9 00 01 0e da |N | JSR _StringDup(a : String) : String
00015a64 48 6f 00 14 |Ho | PEA.L (A7+0x14)
00015a68 3f 02 |? | MOVE.W D2,-(A7)
00015a6a 3f 03 |? | MOVE.W D3,-(A7)
00015a6c 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00015a72 50 4f |PO | ADDQ.L #0x8,A7
00015a74 4e b9 00 01 0f 2c |N , | JSR _StringCat2(a, b : String) : String
00015a7a 50 4f |PO | ADDQ.L #0x8,A7
00015a7c 4e ba fc 16 |N | JSR _AskConsoleString(prompt : String) : String
00015a80 58 4f |XO | ADDQ.L #0x4,A7
00015a82 4e b9 00 01 13 b0 |N | JSR _ToUpper(a : String) : String
00015a88 58 4f |XO | ADDQ.L #0x4,A7
00015a8a 24 9f |$ | MOVE.L (A7)+,(A2)
00015a8c de c3 | | ADDA.W D3,A7
00015a8e 7e 01 |~ | MOVEQ.L #0x01,D7
00015a90 20 52 | R | MOVEA.L (A2),A0
00015a92 4a 50 |JP | TST.W (A0)
00015a94 66 04 |f | BNE 0x15a9a
00015a96 16 80 | | MOVE.B D0,(A3)
00015a98 60 22 |`" | BRA 0x15abc
00015a9a 30 10 |0 | MOVE.W (A0),D0
00015a9c b0 42 | B | CMP.W D2,D0
00015a9e 67 02 |g | BEQ 0x15aa2
00015aa0 60 18 |` | BRA 0x15aba
00015aa2 1c 28 00 02 | ( | MOVE.B (A0+0x2),D6
00015aa6 0c 06 00 59 | Y | CMPI.B #0x59,D6
00015aaa 66 04 |f | BNE 0x15ab0
00015aac 16 82 | | MOVE.B D2,(A3)
00015aae 60 0c |` | BRA 0x15abc
00015ab0 0c 06 00 4e | N | CMPI.B #0x4e,D6
00015ab4 66 04 |f | BNE 0x15aba
00015ab6 42 13 |B | CLR.B (A3)
00015ab8 60 02 |` | BRA 0x15abc
00015aba 7e 00 |~ | MOVEQ.L #0x00,D7
00015abc 48 52 |HR | PEA.L (A2)
00015abe 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
00015ac4 58 4f |XO | ADDQ.L #0x4,A7
00015ac6 4a 07 |J | TST.B D7
00015ac8 66 28 |f( | BNE 0x15af2
00015aca 41 fa f6 da |A | LEA.L 0x151a6,A0
00015ace 70 04 |p | MOVEQ.L #0x04,D0
00015ad0 2f 20 |/ | MOVE.L -(A0),-(A7)
00015ad2 51 c8 ff fc |Q | DBF D0,0x15ad0
00015ad6 59 4f |YO | SUBQ.L #0x4,A7
00015ad8 48 6f 00 04 |Ho | PEA.L (A7+0x4)
00015adc 3f 02 |? | MOVE.W D2,-(A7)
00015ade 3f 3c 00 14 |?< | MOVE.W #0x14,-(A7)
00015ae2 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00015ae8 50 4f |PO | ADDQ.L #0x8,A7
00015aea 4e ba f9 c4 |N | JSR _WriteConsoleStringCrLf(str : String)
00015aee de fc 00 18 | | ADDA.W #0x18,A7
00015af2 4a 07 |J | TST.B D7
00015af4 67 00 ff 42 |g B | BEQ 0x15a38
00015af8 48 6e 00 0a |Hn | PEA.L (A6+0xa)
00015afc 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
00015b02 58 4f |XO | ADDQ.L #0x4,A7
00015b04 4c df 0f cf |L | MOVEM.L (A7)+,D0+D1+D2+D3+D6+D7+A0+A1+A2+A3
00015b08 4e 5e |N^ | UNLK A6
00015b0a 4e 75 |Nu | RTS
00015b0c ; --------------------------------------------------------------------------------------
00015b0c ; SetConsoleConfig(a : Long)
00015b0c ; Stack:
00015b0c ; A6+0x8 a : Long
00015b0c ; OMSI PASCAL Function
00015b0c ; <LVAR 0x008 4(r)>
00015b0c ; --------------------------------------------------------------------------------------
00015b0c _SetConsoleConfig(a : Long):
00015b0c 4e 56 ff ec |NV | LINK.W A6,#0xffec
00015b10 bf d5 | | CMPA.L (A5),A7
00015b12 62 06 |b | BHI 0x15b1a
00015b14 44 fc 00 02 |D | MOVE.W #0x2,CCR
00015b18 4e 76 |Nv | TRAPV
00015b1a de fc 00 04 | | ADDA.W #0x4,A7
00015b1e 23 ee 00 08 00 01 b1 c6 |# | MOVE.L (A6+0x8),console_config
00015b26 4e 5e |N^ | UNLK A6
00015b28 4e 75 |Nu | RTS
00015b2a ; --------------------------------------------------------------------------------------
00015b2a ; GetConsoleConfig() : Long
00015b2a ; Stack:
00015b2a ; A6+0x8 VAR RETURN : Long
00015b2a ; OMSI PASCAL Function
00015b2a ; <LVAR 0x008 4(w)>
00015b2a ; --------------------------------------------------------------------------------------
00015b2a _GetConsoleConfig() : Long:
00015b2a 4e 56 ff fc |NV | LINK.W A6,#0xfffc
00015b2e bf d5 | | CMPA.L (A5),A7
00015b30 62 06 |b | BHI 0x15b38
00015b32 44 fc 00 02 |D | MOVE.W #0x2,CCR
00015b36 4e 76 |Nv | TRAPV
00015b38 de fc 00 04 | | ADDA.W #0x4,A7
00015b3c 2d 79 00 01 b1 c6 00 08 |-y | MOVE.L console_config,(A6+0x8)
00015b44 4e 5e |N^ | UNLK A6
00015b46 4e 75 |Nu | RTS
00015b48 ; --------------------------------------------------------------------------------------
00015b48 ; SetConsolePrinter(a: Byte; b: Word; c: Word)
00015b48 ; Stack:
00015b48 ; A6+0xc a : Byte
00015b48 ; A6+0xa b : Word
00015b48 ; A6+0x8 c : Word
00015b48 ; OMSI PASCAL Function
00015b48 ; <LVAR 0x00c 1(r)>
00015b48 ; <LVAR 0x00a 2(r)>
00015b48 ; <LVAR 0x008 2(r)>
00015b48 ; --------------------------------------------------------------------------------------
00015b48 _SetConsolePrinter(a: Byte; b: Word; c: Word):
00015b48 4e 56 ff e6 |NV | LINK.W A6,#0xffe6
00015b4c bf d5 | | CMPA.L (A5),A7
00015b4e 62 06 |b | BHI 0x15b56
00015b50 44 fc 00 02 |D | MOVE.W #0x2,CCR
00015b54 4e 76 |Nv | TRAPV
00015b56 de fc 00 08 | | ADDA.W #0x8,A7
00015b5a 48 e7 80 00 |H | MOVEM.L D0,-(A7)
00015b5e 13 ee 00 0c 00 01 b1 ca | | MOVE.B (A6+0xc),console_prt_1
00015b66 30 2e 00 0a |0. | MOVE.W (A6+0xa),D0
00015b6a 41 bc 00 ff |A | CHK.W #0xff,D0
00015b6e 33 c0 00 01 b1 cc |3 | MOVE.W D0,console_prt_2
00015b74 33 ee 00 08 00 01 b1 ce |3 | MOVE.W (A6+0x8),console_prt_3
00015b7c 4c df 00 01 |L | MOVEM.L (A7)+,D0
00015b80 4e 5e |N^ | UNLK A6
00015b82 4e 75 |Nu | RTS
00015b84 ; --------------------------------------------------------------------------------------
00015b84 ; FSCALL_10400
00015b84 ; OMSI PASCAL Function
00015b84 ; <LVAR -0x00a @>
00015b84 ; <LVAR -0x00c @ 1(r)>
00015b84 ; --------------------------------------------------------------------------------------
00015b84 _FSCALL_10400:
00015b84 4e 56 ff 8c |NV | LINK.W A6,#0xff8c
00015b88 bf d5 | | CMPA.L (A5),A7
00015b8a 62 06 |b | BHI 0x15b92
00015b8c 44 fc 00 02 |D | MOVE.W #0x2,CCR
00015b90 4e 76 |Nv | TRAPV
00015b92 de fc 00 58 | X | ADDA.W #0x58,A7
00015b96 48 e7 f1 e0 |H | MOVEM.L A2+A1+A0+D7+D3+D2+D1+D0,-(A7)
00015b9a 43 f9 00 01 b1 c6 |C | LEA.L console_config,A1
00015ba0 45 f9 00 01 b1 ce |E | LEA.L console_prt_3,A2
00015ba6 72 01 |r | MOVEQ.L #0x01,D1
00015ba8 74 26 |t& | MOVEQ.L #0x26,D2
00015baa 76 1c |v | MOVEQ.L #0x1c,D3
00015bac 48 6e ff f4 |Hn | PEA.L (A6-0xc)
00015bb0 48 6e ff f6 |Hn | PEA.L (A6-0xa)
00015bb4 4e b9 00 01 02 00 |N | JSR KC00_GetBootDev(VAR a : Byte; VAR b : Word)
00015bba 50 4f |PO | ADDQ.L #0x8,A7
00015bbc 10 2e ff f4 | . | MOVE.B (A6-0xc),D0
00015bc0 0c 00 00 02 | | CMPI.B #0x02,D0
00015bc4 66 10 |f | BNE 0x15bd6
00015bc6 20 11 | | MOVE.L (A1),D0
00015bc8 0c 80 00 00 00 03 | | CMPI.L #0x00000003,D0
00015bce 67 02 |g | BEQ 0x15bd2
00015bd0 22 81 |" | MOVE.L D1,(A1)
00015bd2 60 00 00 a2 |` | BRA 0x15c76
00015bd6 22 81 |" | MOVE.L D1,(A1)
00015bd8 41 fa f6 06 |A | LEA.L 0x151e0,A0
00015bdc 70 12 |p | MOVEQ.L #0x12,D0
00015bde 3f 20 |? | MOVE.W -(A0),-(A7)
00015be0 51 c8 ff fc |Q | DBF D0,0x15bde
00015be4 5d 4f |]O | SUBQ.L #0x6,A7
00015be6 48 6f 00 06 |Ho | PEA.L (A7+0x6)
00015bea 3f 01 |? | MOVE.W D1,-(A7)
00015bec 3f 02 |? | MOVE.W D2,-(A7)
00015bee 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00015bf4 5c 4f |\O | ADDQ.L #0x6,A7
00015bf6 42 17 |B | CLR.B (A7)
00015bf8 4e ba fe 1c |N | JSR _AskOnConsoleYesNo(prompt : String; default : Bool) : Bool
00015bfc 5c 4f |\O | ADDQ.L #0x6,A7
00015bfe 10 1f | | MOVE.B (A7)+,D0
00015c00 48 80 |H | EXTB.W D0
00015c02 41 81 |A | CHK.W D1,D0
00015c04 de c2 | | ADDA.W D2,A7
00015c06 13 c0 00 01 b1 ca | | MOVE.B D0,console_prt_1
00015c0c 4a 00 |J | TST.B D0
00015c0e 67 54 |gT | BEQ 0x15c64
00015c10 41 fa f5 ea |A | LEA.L 0x151fc,A0
00015c14 70 06 |p | MOVEQ.L #0x06,D0
00015c16 2f 20 |/ | MOVE.L -(A0),-(A7)
00015c18 51 c8 ff fc |Q | DBF D0,0x15c16
00015c1c 51 4f |QO | SUBQ.L #0x8,A7
00015c1e 48 6f 00 08 |Ho | PEA.L (A7+0x8)
00015c22 3f 01 |? | MOVE.W D1,-(A7)
00015c24 3f 03 |? | MOVE.W D3,-(A7)
00015c26 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00015c2c 50 4f |PO | ADDQ.L #0x8,A7
00015c2e 48 78 00 10 |Hx | PEA.L 0x10
00015c32 48 78 00 ff |Hx | PEA.L 0xff
00015c36 4e ba fd 18 |N | JSR _AskOnConsoleIntRange(prompt: String; low : Long; High : Long) : Long
00015c3a de fc 00 0c | | ADDA.W #0xc,A7
00015c3e 20 1f | | MOVE.L (A7)+,D0
00015c40 0c 80 00 00 ff ff | | CMPI.L #0x0000ffff,D0
00015c46 63 02 |c | BLS 0x15c4a
00015c48 4e 4f |NO | TRAP #15
00015c4a de c3 | | ADDA.W D3,A7
00015c4c 3e 00 |> | MOVE.W D0,D7
00015c4e 30 07 |0 | MOVE.W D7,D0
00015c50 e8 48 | H | LSR.W #0x4,D0
00015c52 53 40 |S@ | SUBQ.W #0x1,D0
00015c54 41 bc 00 ff |A | CHK.W #0xff,D0
00015c58 33 c0 00 01 b1 cc |3 | MOVE.W D0,console_prt_2
00015c5e 34 87 |4 | MOVE.W D7,(A2)
00015c60 02 52 00 0f | R | ANDI.W #0x000f,(A2)
00015c64 13 c1 00 02 01 08 | | MOVE.B D1,somekindoffsflag
00015c6a 3f 01 |? | MOVE.W D1,-(A7)
00015c6c 1f 01 | | MOVE.B D1,-(A7)
00015c6e 4e b9 00 01 02 10 |N | JSR KC08_PortSomething(port: Word; b: Byte)
00015c74 58 4f |XO | ADDQ.L #0x4,A7
00015c76 4c df 07 8f |L | MOVEM.L (A7)+,D0+D1+D2+D3+D7+A0+A1+A2
00015c7a 4e 5e |N^ | UNLK A6
00015c7c 4e 75 |Nu | RTS
00015c7e ; --------------------------------------------------------------------------------------
00015c7e ; SetSomeKindOfFlag(a : Byte)
00015c7e ; Stack:
00015c7e ; A6+0x8 a : Byte
00015c7e ; OMSI PASCAL Function
00015c7e ; <LVAR 0x008 1(r)>
00015c7e ; --------------------------------------------------------------------------------------
00015c7e _SetSomeKindOfFlag(a : Byte):
00015c7e 4e 56 ff fa |NV | LINK.W A6,#0xfffa
00015c82 bf d5 | | CMPA.L (A5),A7
00015c84 62 06 |b | BHI 0x15c8c
00015c86 44 fc 00 02 |D | MOVE.W #0x2,CCR
00015c8a 4e 76 |Nv | TRAPV
00015c8c de fc 00 04 | | ADDA.W #0x4,A7
00015c90 13 ee 00 08 00 02 01 08 | | MOVE.B (A6+0x8),somekindoffsflag
00015c98 44 39 00 02 01 08 |D9 | NEG.B somekindoffsflag
00015c9e 52 39 00 02 01 08 |R9 | ADDQ.B #0x1,somekindoffsflag
00015ca4 4e 5e |N^ | UNLK A6
00015ca6 4e 75 |Nu | RTS
00015ca8 tape_error_messages:
00015ca8 54 61 70 65 20 6f 70 65 |Tape ope| .TXT 'Tape operation successful '
00015cc6 4e 6f 20 73 75 63 68 20 |No such | .TXT 'No such unit '
00015ce4 55 6e 69 74 20 64 6f 65 |Unit doe| .TXT 'Unit does not respond '
00015d02 55 6e 69 74 20 69 73 20 |Unit is | .TXT 'Unit is already open '
00015d20 55 6e 69 74 20 69 73 20 |Unit is | .TXT 'Unit is write locked '
00015d3e 55 6e 69 74 20 69 73 20 |Unit is | .TXT 'Unit is not on-line '
00015d5c 52 65 61 64 20 74 61 70 |Read tap| .TXT 'Read tape mark '
00015d7a 52 65 63 6f 72 64 20 74 |Record t| .TXT 'Record too short '
00015d98 52 65 63 6f 72 64 20 74 |Record t| .TXT 'Record too long '
00015db6 54 6f 6f 20 6d 61 6e 79 |Too many| .TXT 'Too many retries '
00015dd4 57 72 6f 6e 67 20 64 65 |Wrong de| .TXT 'Wrong density '
00015df2 54 61 70 65 20 65 72 72 |Tape err| .TXT 'Tape error '
00015e10 48 61 72 64 20 64 65 76 |Hard dev| .TXT 'Hard device error '
00015e2e 55 6e 69 74 20 6e 6f 74 |Unit not| .TXT 'Unit not opened '
00015e4c 2c 20 75 6e 69 74 5f 20 |, unit_ | .TXT ', unit_ '
00015e54 52 65 61 63 68 65 64 20 |Reached | .TXT 'Reached EOT, mount next tape and enter unit number ?_ '
00015e8a 00 00 01 01 01 01 | | .XXX[0x6]
00015e90 00 00 00 00 00 01 01 00 | | .XXX[0x20]
00015e98 00 00 00 00 00 00 00 00 | |
00015ea0 00 00 00 00 00 00 0a 0f | |
00015ea8 06 08 07 09 12 13 14 15 | |
00015eb0 16 17 | | .XXX[0x2]
00015eb2 tape2_error_messages:
00015eb2 54 61 70 65 20 6f 70 65 |Tape ope| .TXT 'Tape operation successful '
00015ed0 4e 6f 20 73 75 63 68 20 |No such | .TXT 'No such unit '
00015eee 55 6e 69 74 20 64 6f 65 |Unit doe| .TXT 'Unit does not respond '
00015f0c 55 6e 69 74 20 69 73 20 |Unit is | .TXT 'Unit is already open '
00015f2a 55 6e 69 74 20 69 73 20 |Unit is | .TXT 'Unit is write locked '
00015f48 55 6e 69 74 20 69 73 20 |Unit is | .TXT 'Unit is not on-line '
00015f66 52 65 61 64 20 74 61 70 |Read tap| .TXT 'Read tape mark '
00015f84 52 65 63 6f 72 64 20 74 |Record t| .TXT 'Record too short '
00015fa2 52 65 63 6f 72 64 20 74 |Record t| .TXT 'Record too long '
00015fc0 54 6f 6f 20 6d 61 6e 79 |Too many| .TXT 'Too many retries '
00015fde 57 72 6f 6e 67 20 64 65 |Wrong de| .TXT 'Wrong density '
00015ffc 54 61 70 65 20 65 72 72 |Tape err| .TXT 'Tape error '
0001601a 48 61 72 64 20 64 65 76 |Hard dev| .TXT 'Hard device error '
00016038 55 6e 69 74 20 6e 6f 74 |Unit not| .TXT 'Unit not opened '
00016056 ; --------------------------------------------------------------------------------------
00016056 ; OMSI PASCAL Function
00016056 ; <LVAR 0x014 1(r)>
00016056 ; <LVAR 0x010 4(r)>
00016056 ; <LVAR 0x00e 2(r)>
00016056 ; <LVAR 0x00c 1(r)>
00016056 ; <LVAR 0x008 4(r)>
00016056 ; <LVAR -0x006 2(w)>
00016056 ; <LVAR -0x008 2(w)>
00016056 ; <LVAR -0x00e 2(w)>
00016056 ; <LVAR -0x012 @>
00016056 ; --------------------------------------------------------------------------------------
00016056 DiskIO(a: Byte; dst: Pointer; c: Word; wait: Byte; VAR status: Byte):
00016056 4e 56 ff d0 |NV | LINK.W A6,#0xffd0
0001605a bf d5 | | CMPA.L (A5),A7
0001605c 62 06 |b | BHI 0x16064
0001605e 44 fc 00 02 |D | MOVE.W #0x2,CCR
00016062 4e 76 |Nv | TRAPV
00016064 de fc 00 1e | | ADDA.W #0x1e,A7
00016068 48 e7 e0 80 |H | MOVEM.L A0+D2+D1+D0,-(A7)
0001606c 74 01 |t | MOVEQ.L #0x01,D2
0001606e 3d 7c 00 03 ff f2 |=| | MOVE.W #0x3,(A6-0xe)
00016074 30 39 00 01 b5 ec |09 | MOVE.W 0x1b5ec,D0
0001607a e1 40 | @ | ASL.W #0x8,D0
0001607c 12 2e 00 14 | . | MOVE.B (A6+0x14),D1
00016080 48 81 |H | EXTB.W D1
00016082 d2 40 | @ | ADD.W D0,D1
00016084 0c 41 ff ff | A | CMPI.W #0xffff,D1
00016088 63 02 |c | BLS 0x1608c
0001608a 4e 4f |NO | TRAP #15
0001608c 3d 41 ff f8 |=A | MOVE.W D1,(A6-0x8)
00016090 3d 6e 00 0e ff fa |=n | MOVE.W (A6+0xe),(A6-0x6)
00016096 48 6e ff ee |Hn | PEA.L (A6-0x12)
0001609a 2f 2e 00 10 |/. | MOVE.L (A6+0x10),-(A7)
0001609e 3f 02 |? | MOVE.W D2,-(A7)
000160a0 4e b9 00 01 02 04 |N | JSR KC02_Start_Disk_IO(desc : Pointer; dst : Pointer ; c : W)
000160a6 de fc 00 0a | | ADDA.W #0xa,A7
000160aa 4a 2e 00 0c |J. | TST.B (A6+0xc)
000160ae 67 10 |g | BEQ 0x160c0
000160b0 3f 02 |? | MOVE.W D2,-(A7)
000160b2 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
000160b6 48 50 |HP | PEA.L (A0)
000160b8 4e b9 00 01 02 06 |N | JSR KC03_Wait_Disk_IO(a : W; VAR status : Byte)
000160be 5c 4f |\O | ADDQ.L #0x6,A7
000160c0 4c df 01 07 |L | MOVEM.L (A7)+,D0+D1+D2+A0
000160c4 4e 5e |N^ | UNLK A6
000160c6 4e 75 |Nu | RTS
000160c8 ; --------------------------------------------------------------------------------------
000160c8 ; OMSI PASCAL Function
000160c8 ; <LVAR 0x008 1(rw)>
000160c8 ; <LVAR -0x004 @ 1(r)>
000160c8 ; <LVAR -0x00c 2(r)>
000160c8 ; <LVAR -0x018 @>
000160c8 ; --------------------------------------------------------------------------------------
000160c8 4e 56 ff ce |NV | LINK.W A6,#0xffce
000160cc bf d5 | | CMPA.L (A5),A7
000160ce 62 06 |b | BHI 0x160d6
000160d0 44 fc 00 02 |D | MOVE.W #0x2,CCR
000160d4 4e 76 |Nv | TRAPV
000160d6 de fc 00 1a | | ADDA.W #0x1a,A7
000160da 48 e7 80 80 |H | MOVEM.L A0+D0,-(A7)
000160de 42 27 |B' | CLR.B -(A7)
000160e0 41 ee ff e8 |A | LEA.L (A6-0x18),A0
000160e4 2f 08 |/ | MOVE.L A0,-(A7)
000160e6 42 67 |Bg | CLR.W -(A7)
000160e8 1f 3c 00 01 | < | MOVE.B #0x01,-(A7)
000160ec 48 6e ff fc |Hn | PEA.L (A6-0x4)
000160f0 4e ba ff 64 |N d | JSR DiskIO(a: Byte; dst: Pointer; c: Word; wait: Byte; VAR status: Byte)
000160f4 de fc 00 0e | | ADDA.W #0xe,A7
000160f8 4a 2e ff fc |J. | TST.B (A6-0x4)
000160fc 66 0c |f | BNE 0x1610a
000160fe 48 78 00 0c |Hx | PEA.L 0xc
00016102 4e b9 00 01 02 20 |N | JSR KC10_Panic(code : Long)
00016108 58 4f |XO | ADDQ.L #0x4,A7
0001610a 42 2e 00 08 |B. | CLR.B (A6+0x8)
0001610e 30 2e ff f4 |0. | MOVE.W (A6-0xc),D0
00016112 02 40 00 04 | @ | ANDI.W #0x0004,D0
00016116 67 04 |g | BEQ 0x1611c
00016118 52 2e 00 08 |R. | ADDQ.B #0x1,(A6+0x8)
0001611c 4c df 01 01 |L | MOVEM.L (A7)+,D0+A0
00016120 4e 5e |N^ | UNLK A6
00016122 4e 75 |Nu | RTS
00016124 ; --------------------------------------------------------------------------------------
00016124 ; OMSI PASCAL Function
00016124 ; <LVAR 0x00c 4(r)>
00016124 ; <LVAR 0x008 4(r)>
00016124 ; --------------------------------------------------------------------------------------
00016124 4e 56 ff e2 |NV | LINK.W A6,#0xffe2
00016128 bf d5 | | CMPA.L (A5),A7
0001612a 62 06 |b | BHI 0x16132
0001612c 44 fc 00 02 |D | MOVE.W #0x2,CCR
00016130 4e 76 |Nv | TRAPV
00016132 de fc 00 1e | | ADDA.W #0x1e,A7
00016136 48 e7 80 c0 |H | MOVEM.L A1+A0+D0,-(A7)
0001613a 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001613e 42 10 |B | CLR.B (A0)
00016140 22 6e 00 0c |"n | MOVEA.L (A6+0xc),A1
00016144 30 29 00 0e |0) | MOVE.W (A1+0xe),D0
00016148 02 40 00 08 | @ | ANDI.W #0x0008,D0
0001614c 67 04 |g | BEQ 0x16152
0001614e 10 bc 00 0a | | MOVE.B #0x0a,(A0)
00016152 30 11 |0 | MOVE.W (A1),D0
00016154 02 40 00 40 | @ @ | ANDI.W #0x0040,D0
00016158 67 04 |g | BEQ 0x1615e
0001615a 10 bc 00 05 | | MOVE.B #0x05,(A0)
0001615e 30 29 00 0a |0) | MOVE.W (A1+0xa),D0
00016162 02 40 00 20 | @ | ANDI.W #0x0020,D0
00016166 67 14 |g | BEQ 0x1617c
00016168 10 bc 00 0b | | MOVE.B #0x0b,(A0)
0001616c 1f 3c 00 01 | < | MOVE.B #0x01,-(A7)
00016170 20 49 | I | MOVEA.L A1,A0
00016172 2f 08 |/ | MOVE.L A0,-(A7)
00016174 4e b9 00 01 44 e6 |N D | JSR _Write_ERROR_LOG(VAR a : Bool; MOD b : Pointer)
0001617a 5c 4f |\O | ADDQ.L #0x6,A7
0001617c 4c df 03 01 |L | MOVEM.L (A7)+,D0+A0+A1
00016180 4e 5e |N^ | UNLK A6
00016182 4e 75 |Nu | RTS
00016184 ; --------------------------------------------------------------------------------------
00016184 ; OMSI PASCAL Function
00016184 ; <LVAR 0x008 4(r)>
00016184 ; --------------------------------------------------------------------------------------
00016184 Write_ERROR_LOG_true(a: Pointer):
00016184 4e 56 ff f2 |NV | LINK.W A6,#0xfff2
00016188 bf d5 | | CMPA.L (A5),A7
0001618a 62 06 |b | BHI 0x16192
0001618c 44 fc 00 02 |D | MOVE.W #0x2,CCR
00016190 4e 76 |Nv | TRAPV
00016192 de fc 00 0e | | ADDA.W #0xe,A7
00016196 48 e7 00 80 |H | MOVEM.L A0,-(A7)
0001619a 1f 3c 00 01 | < | MOVE.B #0x01,-(A7)
0001619e 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
000161a2 2f 08 |/ | MOVE.L A0,-(A7)
000161a4 4e b9 00 01 44 e6 |N D | JSR _Write_ERROR_LOG(VAR a : Bool; MOD b : Pointer)
000161aa 5c 4f |\O | ADDQ.L #0x6,A7
000161ac 4c df 01 00 |L | MOVEM.L (A7)+,A0
000161b0 4e 5e |N^ | UNLK A6
000161b2 4e 75 |Nu | RTS
000161b4 ; --------------------------------------------------------------------------------------
000161b4 ; OMSI PASCAL Function
000161b4 ; <LVAR 0x00c 4(r)>
000161b4 ; <LVAR 0x008 4(r)>
000161b4 ; --------------------------------------------------------------------------------------
000161b4 4e 56 ff c8 |NV | LINK.W A6,#0xffc8
000161b8 bf d5 | | CMPA.L (A5),A7
000161ba 62 06 |b | BHI 0x161c2
000161bc 44 fc 00 02 |D | MOVE.W #0x2,CCR
000161c0 4e 76 |Nv | TRAPV
000161c2 de fc 00 38 | 8 | ADDA.W #0x38,A7
000161c6 48 e7 fc f0 |H | MOVEM.L A3+A2+A1+A0+D5+D4+D3+D2+D1+D0,-(A7)
000161ca 45 ee 00 08 |E | LEA.L (A6+0x8),A2
000161ce 47 f9 00 01 b5 ea |G | LEA.L 0x1b5ea,A3
000161d4 74 01 |t | MOVEQ.L #0x01,D2
000161d6 36 3c 20 03 |6< | MOVE.W #0x2003,D3
000161da 78 07 |x | MOVEQ.L #0x07,D4
000161dc 7a 02 |z | MOVEQ.L #0x02,D5
000161de 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
000161e2 30 28 00 0e |0( | MOVE.W (A0+0xe),D0
000161e6 c0 42 | B | AND.W D2,D0
000161e8 32 28 00 08 |2( | MOVE.W (A0+0x8),D1
000161ec c2 43 | C | AND.W D3,D1
000161ee 66 04 |f | BNE 0x161f4
000161f0 4a 40 |J@ | TST.W D0
000161f2 67 04 |g | BEQ 0x161f8
000161f4 22 52 |"R | MOVEA.L (A2),A1
000161f6 42 11 |B | CLR.B (A1)
000161f8 32 28 00 08 |2( | MOVE.W (A0+0x8),D1
000161fc 02 41 10 00 | A | ANDI.W #0x1000,D1
00016200 67 06 |g | BEQ 0x16208
00016202 22 52 |"R | MOVEA.L (A2),A1
00016204 12 bc 00 08 | | MOVE.B #0x08,(A1)
00016208 32 28 00 08 |2( | MOVE.W (A0+0x8),D1
0001620c 02 41 40 00 | A@ | ANDI.W #0x4000,D1
00016210 67 1e |g | BEQ 0x16230
00016212 12 13 | | MOVE.B (A3),D1
00016214 b2 04 | | CMP.B D4,D1
00016216 67 06 |g | BEQ 0x1621e
00016218 0c 01 00 09 | | CMPI.B #0x09,D1
0001621c 66 06 |f | BNE 0x16224
0001621e 22 52 |"R | MOVEA.L (A2),A1
00016220 42 11 |B | CLR.B (A1)
00016222 60 0c |` | BRA 0x16230
00016224 b2 05 | | CMP.B D5,D1
00016226 67 04 |g | BEQ 0x1622c
00016228 b2 03 | | CMP.B D3,D1
0001622a 66 04 |f | BNE 0x16230
0001622c 22 52 |"R | MOVEA.L (A2),A1
0001622e 12 84 | | MOVE.B D4,(A1)
00016230 32 28 00 08 |2( | MOVE.W (A0+0x8),D1
00016234 02 41 80 00 | A | ANDI.W #0x8000,D1
00016238 67 12 |g | BEQ 0x1624c
0001623a 12 13 | | MOVE.B (A3),D1
0001623c b2 05 | | CMP.B D5,D1
0001623e 67 06 |g | BEQ 0x16246
00016240 12 13 | | MOVE.B (A3),D1
00016242 b2 03 | | CMP.B D3,D1
00016244 66 06 |f | BNE 0x1624c
00016246 22 52 |"R | MOVEA.L (A2),A1
00016248 12 bc 00 06 | | MOVE.B #0x06,(A1)
0001624c 32 28 00 08 |2( | MOVE.W (A0+0x8),D1
00016250 02 41 f0 03 | A | ANDI.W #0xf003,D1
00016254 66 10 |f | BNE 0x16266
00016256 4a 40 |J@ | TST.W D0
00016258 66 0c |f | BNE 0x16266
0001625a 1f 02 | | MOVE.B D2,-(A7)
0001625c 2f 08 |/ | MOVE.L A0,-(A7)
0001625e 4e b9 00 01 44 e6 |N D | JSR _Write_ERROR_LOG(VAR a : Bool; MOD b : Pointer)
00016264 5c 4f |\O | ADDQ.L #0x6,A7
00016266 4c df 0f 3f |L ? | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D5+A0+A1+A2+A3
0001626a 4e 5e |N^ | UNLK A6
0001626c 4e 75 |Nu | RTS
0001626e ; --------------------------------------------------------------------------------------
0001626e ; OMSI PASCAL Function
0001626e ; <LVAR 0x00c 4(r)>
0001626e ; <LVAR 0x008 4(r)>
0001626e ; --------------------------------------------------------------------------------------
0001626e 4e 56 ff d8 |NV | LINK.W A6,#0xffd8
00016272 bf d5 | | CMPA.L (A5),A7
00016274 62 06 |b | BHI 0x1627c
00016276 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001627a 4e 76 |Nv | TRAPV
0001627c de fc 00 28 | ( | ADDA.W #0x28,A7
00016280 48 e7 e0 e0 |H | MOVEM.L A2+A1+A0+D2+D1+D0,-(A7)
00016284 45 ee 00 08 |E | LEA.L (A6+0x8),A2
00016288 74 40 |t@ | MOVEQ.L #0x40,D2
0001628a 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
0001628e 30 28 00 08 |0( | MOVE.W (A0+0x8),D0
00016292 02 40 00 02 | @ | ANDI.W #0x0002,D0
00016296 67 04 |g | BEQ 0x1629c
00016298 22 52 |"R | MOVEA.L (A2),A1
0001629a 42 11 |B | CLR.B (A1)
0001629c 30 10 |0 | MOVE.W (A0),D0
0001629e c0 42 | B | AND.W D2,D0
000162a0 66 0a |f | BNE 0x162ac
000162a2 32 28 00 08 |2( | MOVE.W (A0+0x8),D1
000162a6 02 41 00 10 | A | ANDI.W #0x0010,D1
000162aa 67 06 |g | BEQ 0x162b2
000162ac 22 52 |"R | MOVEA.L (A2),A1
000162ae 12 bc 00 05 | | MOVE.B #0x05,(A1)
000162b2 32 28 00 08 |2( | MOVE.W (A0+0x8),D1
000162b6 02 41 08 00 | A | ANDI.W #0x0800,D1
000162ba 67 06 |g | BEQ 0x162c2
000162bc 22 52 |"R | MOVEA.L (A2),A1
000162be 12 bc 00 04 | | MOVE.B #0x04,(A1)
000162c2 4a 40 |J@ | TST.W D0
000162c4 66 20 |f | BNE 0x162e6
000162c6 30 28 00 08 |0( | MOVE.W (A0+0x8),D0
000162ca c0 42 | B | AND.W D2,D0
000162cc 67 18 |g | BEQ 0x162e6
000162ce 30 28 00 08 |0( | MOVE.W (A0+0x8),D0
000162d2 02 40 0c 12 | @ | ANDI.W #0x0c12,D0
000162d6 66 0e |f | BNE 0x162e6
000162d8 1f 3c 00 01 | < | MOVE.B #0x01,-(A7)
000162dc 2f 08 |/ | MOVE.L A0,-(A7)
000162de 4e b9 00 01 44 e6 |N D | JSR _Write_ERROR_LOG(VAR a : Bool; MOD b : Pointer)
000162e4 5c 4f |\O | ADDQ.L #0x6,A7
000162e6 4c df 07 07 |L | MOVEM.L (A7)+,D0+D1+D2+A0+A1+A2
000162ea 4e 5e |N^ | UNLK A6
000162ec 4e 75 |Nu | RTS
000162ee ; --------------------------------------------------------------------------------------
000162ee ; OMSI PASCAL Function
000162ee ; <LVAR 0x014 4(r)>
000162ee ; <LVAR 0x010 4(r)>
000162ee ; <LVAR 0x00c 4(r)>
000162ee ; <LVAR 0x008 4(r)>
000162ee ; --------------------------------------------------------------------------------------
000162ee 4e 56 ff e6 |NV | LINK.W A6,#0xffe6
000162f2 bf d5 | | CMPA.L (A5),A7
000162f4 62 06 |b | BHI 0x162fc
000162f6 44 fc 00 02 |D | MOVE.W #0x2,CCR
000162fa 4e 76 |Nv | TRAPV
000162fc de fc 00 1a | | ADDA.W #0x1a,A7
00016300 48 e7 e0 c0 |H | MOVEM.L A1+A0+D2+D1+D0,-(A7)
00016304 43 ee 00 08 |C | LEA.L (A6+0x8),A1
00016308 74 1b |t | MOVEQ.L #0x1b,D2
0001630a 10 39 00 01 b5 ea | 9 | MOVE.B 0x1b5ea,D0
00016310 48 80 |H | EXTB.W D0
00016312 41 82 |A | CHK.W D2,D0
00016314 41 fa fb 74 |A t | LEA.L 0x15e8a,A0
00016318 4a 30 00 00 |J0 | TST.B (A0+D0.W)
0001631c 66 08 |f | BNE 0x16326
0001631e 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
00016322 42 10 |B | CLR.B (A0)
00016324 60 64 |`d | BRA 0x1638a
00016326 20 6e 00 10 | n | MOVEA.L (A6+0x10),A0
0001632a 10 bc 00 09 | | MOVE.B #0x09,(A0)
0001632e 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
00016332 10 bc 00 01 | | MOVE.B #0x01,(A0)
00016336 20 6e 00 14 | n | MOVEA.L (A6+0x14),A0
0001633a 32 10 |2 | MOVE.W (A0),D1
0001633c 02 41 00 02 | A | ANDI.W #0x0002,D1
00016340 67 08 |g | BEQ 0x1634a
00016342 20 51 | Q | MOVEA.L (A1),A0
00016344 41 82 |A | CHK.W D2,D0
00016346 10 80 | | MOVE.B D0,(A0)
00016348 60 40 |`@ | BRA 0x1638a
0001634a 55 40 |U@ | SUBQ.W #0x2,D0
0001634c 0c 40 00 0a | @ | CMPI.W #0x000a,D0
00016350 63 02 |c | BLS 0x16354
00016352 switch@0x16356[0x4]:
00016352 switch@0x16356[0x5]:
00016352 switch@0x16356[0x6]:
00016352 switch@0x16356[0x7]:
00016352 switch@0x16356[0x8]:
00016352 4e 4e |NN | TRAP #14
00016354 d0 40 | @ | ADD.W D0,D0
00016356 30 3b 00 06 4e fb 00 02 |0; N | SWITCH D0.W
0001635e 00 16 | | .CONST 0x16 ; [0x0] -> 0x16374
00016360 00 16 | | .CONST 0x16 ; [0x1] -> 0x16374
00016362 00 1e | | .CONST 0x1e ; [0x2] -> 0x1637c
00016364 00 1e | | .CONST 0x1e ; [0x3] -> 0x1637c
00016366 ff f4 | | .CONST 0xfff4 ; [0x4] -> 0x16352
00016368 ff f4 | | .CONST 0xfff4 ; [0x5] -> 0x16352
0001636a ff f4 | | .CONST 0xfff4 ; [0x6] -> 0x16352
0001636c ff f4 | | .CONST 0xfff4 ; [0x7] -> 0x16352
0001636e ff f4 | | .CONST 0xfff4 ; [0x8] -> 0x16352
00016370 00 26 | & | .CONST 0x26 ; [0x9] -> 0x16384
00016372 00 26 | & | .CONST 0x26 ; [0xa] -> 0x16384
00016374 switch@0x16356[0x0]:
00016374 switch@0x16356[0x1]:
00016374 20 51 | Q | MOVEA.L (A1),A0
00016376 10 bc 00 03 | | MOVE.B #0x03,(A0)
0001637a 60 0e |` | BRA 0x1638a
0001637c switch@0x16356[0x2]:
0001637c switch@0x16356[0x3]:
0001637c 20 51 | Q | MOVEA.L (A1),A0
0001637e 10 bc 00 05 | | MOVE.B #0x05,(A0)
00016382 60 06 |` | BRA 0x1638a
00016384 switch@0x16356[0x9]:
00016384 switch@0x16356[0xa]:
00016384 20 51 | Q | MOVEA.L (A1),A0
00016386 10 bc 00 0c | | MOVE.B #0x0c,(A0)
0001638a 4c df 03 07 |L | MOVEM.L (A7)+,D0+D1+D2+A0+A1
0001638e 4e 5e |N^ | UNLK A6
00016390 4e 75 |Nu | RTS
00016392 ; --------------------------------------------------------------------------------------
00016392 ; OMSI PASCAL Function
00016392 ; <LVAR 0x00c 4(r)>
00016392 ; <LVAR 0x008 4(r)>
00016392 ; --------------------------------------------------------------------------------------
00016392 4e 56 ff e6 |NV | LINK.W A6,#0xffe6
00016396 bf d5 | | CMPA.L (A5),A7
00016398 62 06 |b | BHI 0x163a0
0001639a 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001639e 4e 76 |Nv | TRAPV
000163a0 de fc 00 1a | | ADDA.W #0x1a,A7
000163a4 48 e7 80 c0 |H | MOVEM.L A1+A0+D0,-(A7)
000163a8 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
000163ac 30 28 00 0e |0( | MOVE.W (A0+0xe),D0
000163b0 02 40 00 08 | @ | ANDI.W #0x0008,D0
000163b4 67 08 |g | BEQ 0x163be
000163b6 22 6e 00 08 |"n | MOVEA.L (A6+0x8),A1
000163ba 12 bc 00 0a | | MOVE.B #0x0a,(A1)
000163be 1f 3c 00 01 | < | MOVE.B #0x01,-(A7)
000163c2 2f 08 |/ | MOVE.L A0,-(A7)
000163c4 4e b9 00 01 44 e6 |N D | JSR _Write_ERROR_LOG(VAR a : Bool; MOD b : Pointer)
000163ca 5c 4f |\O | ADDQ.L #0x6,A7
000163cc 4c df 03 01 |L | MOVEM.L (A7)+,D0+A0+A1
000163d0 4e 5e |N^ | UNLK A6
000163d2 4e 75 |Nu | RTS
000163d4 ; --------------------------------------------------------------------------------------
000163d4 ; OMSI PASCAL Function
000163d4 ; <LVAR 0x00c 4(r)>
000163d4 ; <LVAR 0x008 4(r)>
000163d4 ; --------------------------------------------------------------------------------------
000163d4 4e 56 ff f2 |NV | LINK.W A6,#0xfff2
000163d8 bf d5 | | CMPA.L (A5),A7
000163da 62 06 |b | BHI 0x163e2
000163dc 44 fc 00 02 |D | MOVE.W #0x2,CCR
000163e0 4e 76 |Nv | TRAPV
000163e2 de fc 00 0e | | ADDA.W #0xe,A7
000163e6 48 e7 00 80 |H | MOVEM.L A0,-(A7)
000163ea 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
000163ee 10 bc 00 0c | | MOVE.B #0x0c,(A0)
000163f2 1f 3c 00 01 | < | MOVE.B #0x01,-(A7)
000163f6 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
000163fa 2f 08 |/ | MOVE.L A0,-(A7)
000163fc 4e b9 00 01 44 e6 |N D | JSR _Write_ERROR_LOG(VAR a : Bool; MOD b : Pointer)
00016402 5c 4f |\O | ADDQ.L #0x6,A7
00016404 4c df 01 00 |L | MOVEM.L (A7)+,A0
00016408 4e 5e |N^ | UNLK A6
0001640a 4e 75 |Nu | RTS
0001640c ; --------------------------------------------------------------------------------------
0001640c ; FSCALL_10408
0001640c ; OMSI PASCAL Function
0001640c ; <LVAR 0x008 4(r)>
0001640c ; <LVAR -0x00c 2(r)>
0001640c ; <LVAR -0x00e 2(r)>
0001640c ; <LVAR -0x014 @ 2(r)>
0001640c ; <LVAR -0x015 @ 1(r)>
0001640c ; <LVAR -0x016 @ 1(r)>
0001640c ; <LVAR -0x017 @ 1(r)>
0001640c ; <LVAR -0x018 @ 1(r)>
0001640c ; --------------------------------------------------------------------------------------
0001640c _FSCALL_10408:
0001640c 4e 56 ff a8 |NV | LINK.W A6,#0xffa8
00016410 bf d5 | | CMPA.L (A5),A7
00016412 62 06 |b | BHI 0x1641a
00016414 44 fc 00 02 |D | MOVE.W #0x2,CCR
00016418 4e 76 |Nv | TRAPV
0001641a de fc 00 40 | @ | ADDA.W #0x40,A7
0001641e 48 e7 f1 f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D3+D2+D1+D0,-(A7)
00016422 45 ee ff ec |E | LEA.L (A6-0x14),A2
00016426 47 ee ff e8 |G | LEA.L (A6-0x18),A3
0001642a 49 ee ff ea |I | LEA.L (A6-0x16),A4
0001642e 72 01 |r | MOVEQ.L #0x01,D1
00016430 74 0e |t | MOVEQ.L #0x0e,D2
00016432 76 1b |v | MOVEQ.L #0x1b,D3
00016434 7e 00 |~ | MOVEQ.L #0x00,D7
00016436 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001643a 42 10 |B | CLR.B (A0)
0001643c 42 28 00 01 |B( | CLR.B (A0+0x1)
00016440 3f 01 |? | MOVE.W D1,-(A7)
00016442 48 54 |HT | PEA.L (A4)
00016444 4e b9 00 01 02 06 |N | JSR KC03_Wait_Disk_IO(a : W; VAR status : Byte)
0001644a 5c 4f |\O | ADDQ.L #0x6,A7
0001644c 4a 14 |J | TST.B (A4)
0001644e 66 00 01 0e |f | BNE 0x1655e
00016452 52 87 |R | ADDQ.L #0x1,D7
00016454 42 13 |B | CLR.B (A3)
00016456 1f 01 | | MOVE.B D1,-(A7)
00016458 22 4a |"J | MOVEA.L A2,A1
0001645a 2f 09 |/ | MOVE.L A1,-(A7)
0001645c 42 67 |Bg | CLR.W -(A7)
0001645e 1f 01 | | MOVE.B D1,-(A7)
00016460 48 6e ff eb |Hn | PEA.L (A6-0x15)
00016464 4e ba fb f0 |N | JSR DiskIO(a: Byte; dst: Pointer; c: Word; wait: Byte; VAR status: Byte)
00016468 de c2 | | ADDA.W D2,A7
0001646a 4a 2e ff eb |J. | TST.B (A6-0x15)
0001646e 66 0c |f | BNE 0x1647c
00016470 48 78 00 0d |Hx | PEA.L 0xd
00016474 4e b9 00 01 02 20 |N | JSR KC10_Panic(code : Long)
0001647a 58 4f |XO | ADDQ.L #0x4,A7
0001647c 42 80 |B | CLR.L D0
0001647e 30 2e ff f2 |0. | MOVE.W (A6-0xe),D0
00016482 23 c0 00 01 b5 dc |# | MOVE.L D0,0x1b5dc
00016488 42 28 00 01 |B( | CLR.B (A0+0x1)
0001648c 30 2e ff f4 |0. | MOVE.W (A6-0xc),D0
00016490 c0 41 | A | AND.W D1,D0
00016492 67 04 |g | BEQ 0x16498
00016494 52 28 00 01 |R( | ADDQ.B #0x1,(A0+0x1)
00016498 10 bc 00 0b | | MOVE.B #0x0b,(A0)
0001649c 30 12 |0 | MOVE.W (A2),D0
0001649e c0 42 | B | AND.W D2,D0
000164a0 e2 48 | H | LSR.W #0x1,D0
000164a2 0c 40 00 07 | @ | CMPI.W #0x0007,D0
000164a6 63 02 |c | BLS 0x164aa
000164a8 4e 4e |NN | TRAP #14
000164aa d0 40 | @ | ADD.W D0,D0
000164ac 30 3b 00 06 4e fb 00 02 |0; N | SWITCH D0.W
000164b4 00 10 | | .CONST 0x10 ; [0x0] -> 0x164c4
000164b6 00 1a | | .CONST 0x1a ; [0x1] -> 0x164ce
000164b8 00 24 | $ | .CONST 0x24 ; [0x2] -> 0x164d8
000164ba 00 2e | . | .CONST 0x2e ; [0x3] -> 0x164e2
000164bc 00 38 | 8 | .CONST 0x38 ; [0x4] -> 0x164ec
000164be 00 38 | 8 | .CONST 0x38 ; [0x5] -> 0x164ec
000164c0 00 4c | L | .CONST 0x4c ; [0x6] -> 0x16500
000164c2 00 56 | V | .CONST 0x56 ; [0x7] -> 0x1650a
000164c4 switch@0x164ac[0x0]:
000164c4 48 52 |HR | PEA.L (A2)
000164c6 48 50 |HP | PEA.L (A0)
000164c8 4e ba fc 5a |N Z | JSR 0x16124
000164cc 60 44 |`D | BRA 0x16512
000164ce switch@0x164ac[0x1]:
000164ce 48 52 |HR | PEA.L (A2)
000164d0 4e ba fc b2 |N | JSR Write_ERROR_LOG_true(a: Pointer)
000164d4 58 4f |XO | ADDQ.L #0x4,A7
000164d6 60 3c |`< | BRA 0x16514
000164d8 switch@0x164ac[0x2]:
000164d8 48 52 |HR | PEA.L (A2)
000164da 48 50 |HP | PEA.L (A0)
000164dc 4e ba fc d6 |N | JSR 0x161b4
000164e0 60 30 |`0 | BRA 0x16512
000164e2 switch@0x164ac[0x3]:
000164e2 48 52 |HR | PEA.L (A2)
000164e4 48 50 |HP | PEA.L (A0)
000164e6 4e ba fd 86 |N | JSR 0x1626e
000164ea 60 26 |`& | BRA 0x16512
000164ec switch@0x164ac[0x4]:
000164ec switch@0x164ac[0x5]:
000164ec 48 52 |HR | PEA.L (A2)
000164ee 48 50 |HP | PEA.L (A0)
000164f0 48 53 |HS | PEA.L (A3)
000164f2 48 6e ff e9 |Hn | PEA.L (A6-0x17)
000164f6 4e ba fd f6 |N | JSR 0x162ee
000164fa de fc 00 10 | | ADDA.W #0x10,A7
000164fe 60 14 |` | BRA 0x16514
00016500 switch@0x164ac[0x6]:
00016500 48 52 |HR | PEA.L (A2)
00016502 48 50 |HP | PEA.L (A0)
00016504 4e ba fe 8c |N | JSR 0x16392
00016508 60 08 |` | BRA 0x16512
0001650a switch@0x164ac[0x7]:
0001650a 48 52 |HR | PEA.L (A2)
0001650c 48 50 |HP | PEA.L (A0)
0001650e 4e ba fe c4 |N | JSR 0x163d4
00016512 50 4f |PO | ADDQ.L #0x8,A7
00016514 4a 13 |J | TST.B (A3)
00016516 67 46 |gF | BEQ 0x1655e
00016518 10 2e ff e9 | . | MOVE.B (A6-0x17),D0
0001651c 48 80 |H | EXTB.W D0
0001651e 41 83 |A | CHK.W D3,D0
00016520 13 c0 00 01 b5 ea | | MOVE.B D0,0x1b5ea
00016526 0c 87 00 00 00 14 | | CMPI.L #0x00000014,D7
0001652c 6e 20 |n | BGT 0x1654e
0001652e 48 80 |H | EXTB.W D0
00016530 41 83 |A | CHK.W D3,D0
00016532 1f 00 | | MOVE.B D0,-(A7)
00016534 2f 39 00 01 b5 e6 |/9 | MOVE.L 0x1b5e6,-(A7)
0001653a 3f 39 00 01 b5 e4 |?9 | MOVE.W 0x1b5e4,-(A7)
00016540 42 27 |B' | CLR.B -(A7)
00016542 48 6e ff eb |Hn | PEA.L (A6-0x15)
00016546 4e ba fb 0e |N | JSR DiskIO(a: Byte; dst: Pointer; c: Word; wait: Byte; VAR status: Byte)
0001654a de c2 | | ADDA.W D2,A7
0001654c 60 10 |` | BRA 0x1655e
0001654e 42 13 |B | CLR.B (A3)
00016550 1f 01 | | MOVE.B D1,-(A7)
00016552 20 4a | J | MOVEA.L A2,A0
00016554 2f 08 |/ | MOVE.L A0,-(A7)
00016556 4e b9 00 01 44 e6 |N D | JSR _Write_ERROR_LOG(VAR a : Bool; MOD b : Pointer)
0001655c 5c 4f |\O | ADDQ.L #0x6,A7
0001655e 4a 14 |J | TST.B (A4)
00016560 66 06 |f | BNE 0x16568
00016562 4a 13 |J | TST.B (A3)
00016564 66 00 fe d0 |f | BNE 0x16436
00016568 4c df 1f 8f |L | MOVEM.L (A7)+,D0+D1+D2+D3+D7+A0+A1+A2+A3+A4
0001656c 4e 5e |N^ | UNLK A6
0001656e 4e 75 |Nu | RTS
00016570 ; --------------------------------------------------------------------------------------
00016570 ; FSCALL_1040c
00016570 ; OMSI PASCAL Function
00016570 ; <LVAR 0x010 2(r)>
00016570 ; <LVAR 0x00e 1(r)>
00016570 ; <LVAR 0x00c 1(r)>
00016570 ; <LVAR 0x008 4(r)>
00016570 ; <LVAR -0x002 @ 1(r)>
00016570 ; <LVAR -0x012 2(r)>
00016570 ; <LVAR -0x016 @ 2(r)>
00016570 ; --------------------------------------------------------------------------------------
00016570 _FSCALL_1040c:
00016570 4e 56 ff c4 |NV | LINK.W A6,#0xffc4
00016574 bf d5 | | CMPA.L (A5),A7
00016576 62 06 |b | BHI 0x1657e
00016578 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001657c 4e 76 |Nv | TRAPV
0001657e de fc 00 26 | & | ADDA.W #0x26,A7
00016582 48 e7 c0 e0 |H | MOVEM.L A2+A1+A0+D1+D0,-(A7)
00016586 43 ee 00 08 |C | LEA.L (A6+0x8),A1
0001658a 45 f9 00 01 b5 da |E | LEA.L 0x1b5da,A2
00016590 72 01 |r | MOVEQ.L #0x01,D1
00016592 33 ee 00 10 00 01 b5 ec |3 | MOVE.W (A6+0x10),0x1b5ec
0001659a 42 27 |B' | CLR.B -(A7)
0001659c 41 ee ff ea |A | LEA.L (A6-0x16),A0
000165a0 2f 08 |/ | MOVE.L A0,-(A7)
000165a2 42 67 |Bg | CLR.W -(A7)
000165a4 1f 01 | | MOVE.B D1,-(A7)
000165a6 48 6e ff fe |Hn | PEA.L (A6-0x2)
000165aa 4e ba fa aa |N | JSR DiskIO(a: Byte; dst: Pointer; c: Word; wait: Byte; VAR status: Byte)
000165ae de fc 00 0e | | ADDA.W #0xe,A7
000165b2 4a 2e ff fe |J. | TST.B (A6-0x2)
000165b6 66 0c |f | BNE 0x165c4
000165b8 48 78 00 0c |Hx | PEA.L 0xc
000165bc 4e b9 00 01 02 20 |N | JSR KC10_Panic(code : Long)
000165c2 58 4f |XO | ADDQ.L #0x4,A7
000165c4 4a 6e ff ea |Jn | TST.W (A6-0x16)
000165c8 66 06 |f | BNE 0x165d0
000165ca 20 51 | Q | MOVEA.L (A1),A0
000165cc 10 81 | | MOVE.B D1,(A0)
000165ce 60 44 |`D | BRA 0x16614
000165d0 30 2e ff ee |0. | MOVE.W (A6-0x12),D0
000165d4 02 40 00 40 | @ @ | ANDI.W #0x0040,D0
000165d8 67 08 |g | BEQ 0x165e2
000165da 20 51 | Q | MOVEA.L (A1),A0
000165dc 10 bc 00 05 | | MOVE.B #0x05,(A0)
000165e0 60 32 |`2 | BRA 0x16614
000165e2 4a 2e 00 0e |J. | TST.B (A6+0xe)
000165e6 67 12 |g | BEQ 0x165fa
000165e8 55 4f |UO | SUBQ.L #0x2,A7
000165ea 4e ba fa dc |N | JSR 0x160c8
000165ee 4a 1f |J | TST.B (A7)+
000165f0 67 08 |g | BEQ 0x165fa
000165f2 20 51 | Q | MOVEA.L (A1),A0
000165f4 10 bc 00 04 | | MOVE.B #0x04,(A0)
000165f8 60 1a |` | BRA 0x16614
000165fa 4a 2e 00 0c |J. | TST.B (A6+0xc)
000165fe 67 10 |g | BEQ 0x16610
00016600 42 27 |B' | CLR.B -(A7)
00016602 20 51 | Q | MOVEA.L (A1),A0
00016604 48 50 |HP | PEA.L (A0)
00016606 4e b9 00 01 66 42 |N fB | JSR _FSCALL_10414
0001660c 5c 4f |\O | ADDQ.L #0x6,A7
0001660e 60 04 |` | BRA 0x16614
00016610 20 51 | Q | MOVEA.L (A1),A0
00016612 42 10 |B | CLR.B (A0)
00016614 42 12 |B | CLR.B (A2)
00016616 20 51 | Q | MOVEA.L (A1),A0
00016618 4a 10 |J | TST.B (A0)
0001661a 66 02 |f | BNE 0x1661e
0001661c 52 12 |R | ADDQ.B #0x1,(A2)
0001661e 4c df 07 03 |L | MOVEM.L (A7)+,D0+D1+A0+A1+A2
00016622 4e 5e |N^ | UNLK A6
00016624 4e 75 |Nu | RTS
00016626 ; --------------------------------------------------------------------------------------
00016626 ; FSCALL_10410
00016626 ; OMSI PASCAL Function
00016626 ; --------------------------------------------------------------------------------------
00016626 _FSCALL_10410:
00016626 4e 56 ff fc |NV | LINK.W A6,#0xfffc
0001662a bf d5 | | CMPA.L (A5),A7
0001662c 62 06 |b | BHI 0x16634
0001662e 44 fc 00 02 |D | MOVE.W #0x2,CCR
00016632 4e 76 |Nv | TRAPV
00016634 de fc 00 04 | | ADDA.W #0x4,A7
00016638 42 39 00 01 b5 da |B9 | CLR.B 0x1b5da
0001663e 4e 5e |N^ | UNLK A6
00016640 4e 75 |Nu | RTS
00016642 ; --------------------------------------------------------------------------------------
00016642 ; FSCALL_10414
00016642 ; OMSI PASCAL Function
00016642 ; <LVAR 0x00c 1(r)>
00016642 ; <LVAR 0x008 4(r)>
00016642 ; <LVAR -0x002 @>
00016642 ; --------------------------------------------------------------------------------------
00016642 _FSCALL_10414:
00016642 4e 56 ff e4 |NV | LINK.W A6,#0xffe4
00016646 bf d5 | | CMPA.L (A5),A7
00016648 62 06 |b | BHI 0x16650
0001664a 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001664e 4e 76 |Nv | TRAPV
00016650 de fc 00 1a | | ADDA.W #0x1a,A7
00016654 48 e7 80 80 |H | MOVEM.L A0+D0,-(A7)
00016658 10 2e 00 0c | . | MOVE.B (A6+0xc),D0
0001665c 48 80 |H | EXTB.W D0
0001665e 41 fa f8 46 |A F | LEA.L 0x15ea6,A0
00016662 1f 30 00 00 | 0 | MOVE.B (A0+D0.W),-(A7)
00016666 48 78 00 00 |Hx | PEA.L 0x0
0001666a 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
0001666e 42 27 |B' | CLR.B -(A7)
00016670 48 6e ff fe |Hn | PEA.L (A6-0x2)
00016674 4e ba f9 e0 |N | JSR DiskIO(a: Byte; dst: Pointer; c: Word; wait: Byte; VAR status: Byte)
00016678 de fc 00 0e | | ADDA.W #0xe,A7
0001667c 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00016680 48 50 |HP | PEA.L (A0)
00016682 4e ba fd 88 |N | JSR _FSCALL_10408
00016686 58 4f |XO | ADDQ.L #0x4,A7
00016688 4c df 01 01 |L | MOVEM.L (A7)+,D0+A0
0001668c 4e 5e |N^ | UNLK A6
0001668e 4e 75 |Nu | RTS
00016690 ; --------------------------------------------------------------------------------------
00016690 ; FSCALL_10418
00016690 ; OMSI PASCAL Function
00016690 ; <LVAR 0x00a 4(r)>
00016690 ; <LVAR 0x008 2(r)>
00016690 ; <LVAR -0x002 @>
00016690 ; --------------------------------------------------------------------------------------
00016690 _FSCALL_10418:
00016690 4e 56 ff e8 |NV | LINK.W A6,#0xffe8
00016694 bf d5 | | CMPA.L (A5),A7
00016696 62 06 |b | BHI 0x1669e
00016698 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001669c 4e 76 |Nv | TRAPV
0001669e de fc 00 16 | | ADDA.W #0x16,A7
000166a2 48 e7 80 00 |H | MOVEM.L D0,-(A7)
000166a6 70 02 |p | MOVEQ.L #0x02,D0
000166a8 13 c0 00 01 b5 ea | | MOVE.B D0,0x1b5ea
000166ae 33 ee 00 08 00 01 b5 e4 |3 | MOVE.W (A6+0x8),0x1b5e4
000166b6 23 ee 00 0a 00 01 b5 e6 |# | MOVE.L (A6+0xa),0x1b5e6
000166be 1f 00 | | MOVE.B D0,-(A7)
000166c0 2f 2e 00 0a |/. | MOVE.L (A6+0xa),-(A7)
000166c4 3f 2e 00 08 |?. | MOVE.W (A6+0x8),-(A7)
000166c8 42 27 |B' | CLR.B -(A7)
000166ca 48 6e ff fe |Hn | PEA.L (A6-0x2)
000166ce 4e ba f9 86 |N | JSR DiskIO(a: Byte; dst: Pointer; c: Word; wait: Byte; VAR status: Byte)
000166d2 de fc 00 0e | | ADDA.W #0xe,A7
000166d6 4c df 00 01 |L | MOVEM.L (A7)+,D0
000166da 4e 5e |N^ | UNLK A6
000166dc 4e 75 |Nu | RTS
000166de ; --------------------------------------------------------------------------------------
000166de ; FSCALL_1041c
000166de ; OMSI PASCAL Function
000166de ; <LVAR 0x00a 4(r)>
000166de ; <LVAR 0x008 2(r)>
000166de ; <LVAR -0x002 @>
000166de ; --------------------------------------------------------------------------------------
000166de _FSCALL_1041c:
000166de 4e 56 ff e8 |NV | LINK.W A6,#0xffe8
000166e2 bf d5 | | CMPA.L (A5),A7
000166e4 62 06 |b | BHI 0x166ec
000166e6 44 fc 00 02 |D | MOVE.W #0x2,CCR
000166ea 4e 76 |Nv | TRAPV
000166ec de fc 00 16 | | ADDA.W #0x16,A7
000166f0 48 e7 80 00 |H | MOVEM.L D0,-(A7)
000166f4 70 04 |p | MOVEQ.L #0x04,D0
000166f6 13 c0 00 01 b5 ea | | MOVE.B D0,0x1b5ea
000166fc 33 ee 00 08 00 01 b5 e4 |3 | MOVE.W (A6+0x8),0x1b5e4
00016704 23 ee 00 0a 00 01 b5 e6 |# | MOVE.L (A6+0xa),0x1b5e6
0001670c 1f 00 | | MOVE.B D0,-(A7)
0001670e 2f 2e 00 0a |/. | MOVE.L (A6+0xa),-(A7)
00016712 3f 2e 00 08 |?. | MOVE.W (A6+0x8),-(A7)
00016716 42 27 |B' | CLR.B -(A7)
00016718 48 6e ff fe |Hn | PEA.L (A6-0x2)
0001671c 4e ba f9 38 |N 8 | JSR DiskIO(a: Byte; dst: Pointer; c: Word; wait: Byte; VAR status: Byte)
00016720 de fc 00 0e | | ADDA.W #0xe,A7
00016724 4c df 00 01 |L | MOVEM.L (A7)+,D0
00016728 4e 5e |N^ | UNLK A6
0001672a 4e 75 |Nu | RTS
0001672c ; --------------------------------------------------------------------------------------
0001672c ; FSCALL_10420
0001672c ; OMSI PASCAL Function
0001672c ; <LVAR -0x004 @>
0001672c ; --------------------------------------------------------------------------------------
0001672c _FSCALL_10420:
0001672c 4e 56 ff e6 |NV | LINK.W A6,#0xffe6
00016730 bf d5 | | CMPA.L (A5),A7
00016732 62 06 |b | BHI 0x1673a
00016734 44 fc 00 02 |D | MOVE.W #0x2,CCR
00016738 4e 76 |Nv | TRAPV
0001673a de fc 00 16 | | ADDA.W #0x16,A7
0001673e 48 e7 80 00 |H | MOVEM.L D0,-(A7)
00016742 70 0b |p | MOVEQ.L #0x0b,D0
00016744 13 c0 00 01 b5 ea | | MOVE.B D0,0x1b5ea
0001674a 42 79 00 01 b5 e4 |By | CLR.W 0x1b5e4
00016750 42 b9 00 01 b5 e6 |B | CLR.L 0x1b5e6
00016756 1f 00 | | MOVE.B D0,-(A7)
00016758 48 78 00 00 |Hx | PEA.L 0x0
0001675c 42 67 |Bg | CLR.W -(A7)
0001675e 42 27 |B' | CLR.B -(A7)
00016760 48 6e ff fc |Hn | PEA.L (A6-0x4)
00016764 4e ba f8 f0 |N | JSR DiskIO(a: Byte; dst: Pointer; c: Word; wait: Byte; VAR status: Byte)
00016768 de fc 00 0e | | ADDA.W #0xe,A7
0001676c 4c df 00 01 |L | MOVEM.L (A7)+,D0
00016770 4e 5e |N^ | UNLK A6
00016772 4e 75 |Nu | RTS
00016774 ; --------------------------------------------------------------------------------------
00016774 ; TapeErrorMsg(a : Byte) : String
00016774 ; Stack:
00016774 ; A6+0xa VAR RETURN : String
00016774 ; A6+0x8 a : Byte
00016774 ; OMSI PASCAL Function
00016774 ; <LVAR 0x00a 4(w)>
00016774 ; <LVAR 0x008 1(r)>
00016774 ; --------------------------------------------------------------------------------------
00016774 _TapeErrorMsg(a : Byte) : String:
00016774 4e 56 ff c4 |NV | LINK.W A6,#0xffc4
00016778 bf d5 | | CMPA.L (A5),A7
0001677a 62 06 |b | BHI 0x16782
0001677c 44 fc 00 02 |D | MOVE.W #0x2,CCR
00016780 4e 76 |Nv | TRAPV
00016782 de fc 00 3a | : | ADDA.W #0x3a,A7
00016786 48 e7 c0 80 |H | MOVEM.L A0+D1+D0,-(A7)
0001678a 72 1e |r | MOVEQ.L #0x1e,D1
0001678c 10 2e 00 08 | . | MOVE.B (A6+0x8),D0
00016790 48 80 |H | EXTB.W D0
00016792 c1 c1 | | MULS.W D1,D0
00016794 41 fa f7 1c |A | LEA.L tape2_error_messages,A0
00016798 41 f0 00 1e |A | LEA.L (A0+D0.W+#0x1e),A0
0001679c 70 0e |p | MOVEQ.L #0x0e,D0
0001679e 3f 20 |? | MOVE.W -(A0),-(A7)
000167a0 51 c8 ff fc |Q | DBF D0,0x1679e
000167a4 59 4f |YO | SUBQ.L #0x4,A7
000167a6 48 6f 00 04 |Ho | PEA.L (A7+0x4)
000167aa 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
000167ae 3f 01 |? | MOVE.W D1,-(A7)
000167b0 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
000167b6 50 4f |PO | ADDQ.L #0x8,A7
000167b8 2d 5f 00 0a |-_ | MOVE.L (A7)+,(A6+0xa)
000167bc de c1 | | ADDA.W D1,A7
000167be 4c df 01 03 |L | MOVEM.L (A7)+,D0+D1+A0
000167c2 4e 5e |N^ | UNLK A6
000167c4 4e 75 |Nu | RTS
000167c6 ; --------------------------------------------------------------------------------------
000167c6 ; FSCALL_10428
000167c6 ; OMSI PASCAL Function
000167c6 ; <LVAR 0x00c 1(r)>
000167c6 ; <LVAR 0x008 4(r)>
000167c6 ; <LVAR -0x006 @ 4(rw)>
000167c6 ; --------------------------------------------------------------------------------------
000167c6 _FSCALL_10428:
000167c6 4e 56 ff ca |NV | LINK.W A6,#0xffca
000167ca bf d5 | | CMPA.L (A5),A7
000167cc 62 06 |b | BHI 0x167d4
000167ce 44 fc 00 02 |D | MOVE.W #0x2,CCR
000167d2 4e 76 |Nv | TRAPV
000167d4 de fc 00 30 | 0 | ADDA.W #0x30,A7
000167d8 48 e7 80 e0 |H | MOVEM.L A2+A1+A0+D0,-(A7)
000167dc 45 ee ff fa |E | LEA.L (A6-0x6),A2
000167e0 51 4f |QO | SUBQ.L #0x8,A7
000167e2 20 4f | O | MOVEA.L A7,A0
000167e4 43 fa f6 66 |C f | LEA.L 0x15e4c,A1
000167e8 70 06 |p | MOVEQ.L #0x06,D0
000167ea 10 d9 | | MOVE.B (A1)+,(A0)+
000167ec 51 c8 ff fc |Q | DBF D0,0x167ea
000167f0 51 4f |QO | SUBQ.L #0x8,A7
000167f2 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
000167f6 55 4f |UO | SUBQ.L #0x2,A7
000167f8 1e 90 | | MOVE.B (A0),(A7)
000167fa 1f 68 00 01 00 01 | h | MOVE.B (A0+0x1),(A7+0x1)
00016800 4e ba ff 72 |N r | JSR _TapeErrorMsg(a : Byte) : String
00016804 55 4f |UO | SUBQ.L #0x2,A7
00016806 48 6f 00 0c |Ho | PEA.L (A7+0xc)
0001680a 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
0001680e 3f 3c 00 07 |?< | MOVE.W #0x7,-(A7)
00016812 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00016818 58 4f |XO | ADDQ.L #0x4,A7
0001681a 30 39 00 01 b5 ec |09 | MOVE.W 0x1b5ec,D0
00016820 48 c0 |H | EXTW.L D0
00016822 2f 00 |/ | MOVE.L D0,-(A7)
00016824 4e b9 00 01 10 c0 |N | JSR _Long2String(a : Long) : String
0001682a 58 4f |XO | ADDQ.L #0x4,A7
0001682c 4e b9 00 01 0f ca |N | JSR _StringCat3(a, b, c : String) : String
00016832 de fc 00 0c | | ADDA.W #0xc,A7
00016836 24 9f |$ | MOVE.L (A7)+,(A2)
00016838 50 4f |PO | ADDQ.L #0x8,A7
0001683a 10 2e 00 0c | . | MOVE.B (A6+0xc),D0
0001683e 48 80 |H | EXTB.W D0
00016840 0c 40 00 02 | @ | CMPI.W #0x0002,D0
00016844 63 02 |c | BLS 0x16848
00016846 4e 4e |NN | TRAP #14
00016848 d0 40 | @ | ADD.W D0,D0
0001684a 30 3b 00 06 4e fb 00 02 |0; N | SWITCH D0.W
00016852 00 06 | | .CONST 0x6 ; [0x0] -> 0x16858
00016854 00 12 | | .CONST 0x12 ; [0x1] -> 0x16864
00016856 00 1c | | .CONST 0x1c ; [0x2] -> 0x1686e
00016858 switch@0x1684a[0x0]:
00016858 48 52 |HR | PEA.L (A2)
0001685a 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
00016860 58 4f |XO | ADDQ.L #0x4,A7
00016862 60 18 |` | BRA 0x1687c
00016864 switch@0x1684a[0x1]:
00016864 2f 12 |/ | MOVE.L (A2),-(A7)
00016866 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
0001686c 60 f2 |` | BRA 0x16860
0001686e switch@0x1684a[0x2]:
0001686e 1f 3c 00 04 | < | MOVE.B #0x04,-(A7)
00016872 2f 12 |/ | MOVE.L (A2),-(A7)
00016874 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
0001687a 5c 4f |\O | ADDQ.L #0x6,A7
0001687c 4c df 07 01 |L | MOVEM.L (A7)+,D0+A0+A1+A2
00016880 4e 5e |N^ | UNLK A6
00016882 4e 75 |Nu | RTS
00016884 ; --------------------------------------------------------------------------------------
00016884 ; FSCALL_1042c
00016884 ; OMSI PASCAL Function
00016884 ; <LVAR -0x006 @ 1(r)>
00016884 ; --------------------------------------------------------------------------------------
00016884 _FSCALL_1042c:
00016884 4e 56 ff 86 |NV | LINK.W A6,#0xff86
00016888 bf d5 | | CMPA.L (A5),A7
0001688a 62 06 |b | BHI 0x16892
0001688c 44 fc 00 02 |D | MOVE.W #0x2,CCR
00016890 4e 76 |Nv | TRAPV
00016892 de fc 00 72 | r | ADDA.W #0x72,A7
00016896 48 e7 f7 e0 |H | MOVEM.L A2+A1+A0+D7+D6+D5+D3+D2+D1+D0,-(A7)
0001689a 45 ee ff fa |E | LEA.L (A6-0x6),A2
0001689e 72 01 |r | MOVEQ.L #0x01,D1
000168a0 74 36 |t6 | MOVEQ.L #0x36,D2
000168a2 76 03 |v | MOVEQ.L #0x03,D3
000168a4 7e 00 |~ | MOVEQ.L #0x00,D7
000168a6 55 4f |UO | SUBQ.L #0x2,A7
000168a8 4e ba f8 1e |N | JSR 0x160c8
000168ac 10 1f | | MOVE.B (A7)+,D0
000168ae 48 80 |H | EXTB.W D0
000168b0 41 81 |A | CHK.W D1,D0
000168b2 1a 00 | | MOVE.B D0,D5
000168b4 1f 01 | | MOVE.B D1,-(A7)
000168b6 48 52 |HR | PEA.L (A2)
000168b8 4e ba fd 88 |N | JSR _FSCALL_10414
000168bc 5c 4f |\O | ADDQ.L #0x6,A7
000168be 4e ba fd 66 |N f | JSR _FSCALL_10410
000168c2 9e c2 | | SUBA.W D2,A7
000168c4 20 4f | O | MOVEA.L A7,A0
000168c6 43 fa f5 8c |C | LEA.L 0x15e54,A1
000168ca 70 34 |p4 | MOVEQ.L #0x34,D0
000168cc 10 d9 | | MOVE.B (A1)+,(A0)+
000168ce 51 c8 ff fc |Q | DBF D0,0x168cc
000168d2 51 4f |QO | SUBQ.L #0x8,A7
000168d4 48 6f 00 08 |Ho | PEA.L (A7+0x8)
000168d8 3f 01 |? | MOVE.W D1,-(A7)
000168da 3f 3c 00 35 |?< 5 | MOVE.W #0x35,-(A7)
000168de 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
000168e4 50 4f |PO | ADDQ.L #0x8,A7
000168e6 48 78 00 00 |Hx | PEA.L 0x0
000168ea 48 78 00 03 |Hx | PEA.L 0x3
000168ee 4e b9 00 01 59 50 |N YP | JSR _AskOnConsoleIntRange(prompt: String; low : Long; High : Long) : Long
000168f4 de fc 00 0c | | ADDA.W #0xc,A7
000168f8 20 1f | | MOVE.L (A7)+,D0
000168fa b0 83 | | CMP.L D3,D0
000168fc 63 02 |c | BLS 0x16900
000168fe 4e 4f |NO | TRAP #15
00016900 de c2 | | ADDA.W D2,A7
00016902 3c 00 |< | MOVE.W D0,D6
00016904 4d 83 |M | CHK.W D3,D6
00016906 3f 06 |? | MOVE.W D6,-(A7)
00016908 1f 05 | | MOVE.B D5,-(A7)
0001690a 44 17 |D | NEG.B (A7)
0001690c 52 17 |R | ADDQ.B #0x1,(A7)
0001690e 1f 01 | | MOVE.B D1,-(A7)
00016910 48 52 |HR | PEA.L (A2)
00016912 4e ba fc 5c |N \ | JSR _FSCALL_1040c
00016916 de fc 00 0a | | ADDA.W #0xa,A7
0001691a 4a 12 |J | TST.B (A2)
0001691c 66 04 |f | BNE 0x16922
0001691e 7e 01 |~ | MOVEQ.L #0x01,D7
00016920 60 16 |` | BRA 0x16938
00016922 1f 01 | | MOVE.B D1,-(A7)
00016924 48 52 |HR | PEA.L (A2)
00016926 4e ba fe 9e |N | JSR _FSCALL_10428
0001692a 5c 4f |\O | ADDQ.L #0x6,A7
0001692c 4a 39 00 01 b5 da |J9 | TST.B 0x1b5da
00016932 67 04 |g | BEQ 0x16938
00016934 4e ba fc f0 |N | JSR _FSCALL_10410
00016938 4a 07 |J | TST.B D7
0001693a 67 86 |g | BEQ 0x168c2
0001693c 4c df 07 ef |L | MOVEM.L (A7)+,D0+D1+D2+D3+D5+D6+D7+A0+A1+A2
00016940 4e 5e |N^ | UNLK A6
00016942 4e 75 |Nu | RTS
00016944 ; --------------------------------------------------------------------------------------
00016944 ; FSCALL_10430
00016944 ; OMSI PASCAL Function
00016944 ; <LVAR 0x008 4(w)>
00016944 ; --------------------------------------------------------------------------------------
00016944 _FSCALL_10430:
00016944 4e 56 ff fc |NV | LINK.W A6,#0xfffc
00016948 bf d5 | | CMPA.L (A5),A7
0001694a 62 06 |b | BHI 0x16952
0001694c 44 fc 00 02 |D | MOVE.W #0x2,CCR
00016950 4e 76 |Nv | TRAPV
00016952 de fc 00 04 | | ADDA.W #0x4,A7
00016956 2d 79 00 01 b5 dc 00 08 |-y | MOVE.L 0x1b5dc,(A6+0x8)
0001695e 4e 5e |N^ | UNLK A6
00016960 4e 75 |Nu | RTS
00016962 57 72 69 74 69 6e 67 20 |Writing | .TXT 'Writing ->_ '
0001696e 4f 62 73 6f 6c 65 74 65 |Obsolete| .TXT 'Obsolete tape header version. '
0001698c 52 65 61 64 69 6e 67 20 |Reading | .TXT 'Reading ->_ '
00016998 46 69 6c 65 |File | .TXT 'File'
0001699c 20 6f 70 65 | ope | .TXT ' ope'
000169a0 6e 20 65 72 |n er | .TXT 'n er'
000169a4 72 6f 72 2e |ror. | .TXT 'ror.'
000169a8 55 6e 72 65 63 6f 76 65 |Unrecove| .TXT 'Unrecoverable file error. '
000169c2 46 69 6c 65 20 63 6c 6f |File clo| .TXT 'File close error. '
000169d4 ; --------------------------------------------------------------------------------------
000169d4 ; OMSI PASCAL Function
000169d4 ; <LVAR 0x008 4(r)>
000169d4 ; <LVAR -0x008 4(rw)>
000169d4 ; --------------------------------------------------------------------------------------
000169d4 4e 56 ff d8 |NV | LINK.W A6,#0xffd8
000169d8 bf d5 | | CMPA.L (A5),A7
000169da 62 06 |b | BHI 0x169e2
000169dc 44 fc 00 02 |D | MOVE.W #0x2,CCR
000169e0 4e 76 |Nv | TRAPV
000169e2 de fc 00 20 | | ADDA.W #0x20,A7
000169e6 48 e7 80 f0 |H | MOVEM.L A3+A2+A1+A0+D0,-(A7)
000169ea 41 f9 00 01 b5 f6 |A | LEA.L 0x1b5f6,A0
000169f0 2f 08 |/ | MOVE.L A0,-(A7)
000169f2 2d 5f ff f8 |-_ | MOVE.L (A7)+,(A6-0x8)
000169f6 20 6e ff f8 | n | MOVEA.L (A6-0x8),A0
000169fa 22 6e 00 08 |"n | MOVEA.L (A6+0x8),A1
000169fe 24 48 |$H | MOVEA.L A0,A2
00016a00 26 49 |&I | MOVEA.L A1,A3
00016a02 70 1d |p | MOVEQ.L #0x1d,D0
00016a04 14 db | | MOVE.B (A3)+,(A2)+
00016a06 51 c8 ff fc |Q | DBF D0,0x16a04
00016a0a 30 29 00 20 |0) | MOVE.W (A1+0x20),D0
00016a0e 41 bc 40 00 |A @ | CHK.W #0x4000,D0
00016a12 31 40 00 1e |1@ | MOVE.W D0,(A0+0x1e)
00016a16 11 69 00 3a 00 24 | i : $ | MOVE.B (A1+0x3a),(A0+0x24)
00016a1c 11 69 00 3b 00 25 | i ; % | MOVE.B (A1+0x3b),(A0+0x25)
00016a22 11 69 00 3c 00 26 | i < & | MOVE.B (A1+0x3c),(A0+0x26)
00016a28 11 69 00 3d 00 27 | i = ' | MOVE.B (A1+0x3d),(A0+0x27)
00016a2e 31 7c 04 00 00 20 |1| | MOVE.W #0x400,(A0+0x20)
00016a34 31 7c 00 01 00 28 |1| ( | MOVE.W #0x1,(A0+0x28)
00016a3a 10 29 00 3f | ) ? | MOVE.B (A1+0x3f),D0
00016a3e ed 08 | | LSL.B #0x6,D0
00016a40 ee 08 | | LSR.B #0x7,D0
00016a42 11 40 00 23 | @ # | MOVE.B D0,(A0+0x23)
00016a46 10 29 00 3f | ) ? | MOVE.B (A1+0x3f),D0
00016a4a eb 08 | | LSL.B #0x5,D0
00016a4c ee 08 | | LSR.B #0x7,D0
00016a4e 11 40 00 22 | @ " | MOVE.B D0,(A0+0x22)
00016a52 4c df 0f 01 |L | MOVEM.L (A7)+,D0+A0+A1+A2+A3
00016a56 4e 5e |N^ | UNLK A6
00016a58 4e 75 |Nu | RTS
00016a5a ; --------------------------------------------------------------------------------------
00016a5a ; FSCALL_10434
00016a5a ; OMSI PASCAL Function
00016a5a ; <LVAR 0x010 1(r)>
00016a5a ; <LVAR 0x00c 4(r)>
00016a5a ; <LVAR 0x008 4(r)>
00016a5a ; <LVAR -0x004 1(rw)>
00016a5a ; <LVAR -0x008 4(w)>
00016a5a ; <LVAR -0x00c 4(w)>
00016a5a ; <LVAR -0x012 @ 1(r)>
00016a5a ; <LVAR -0x013 1(r)>
00016a5a ; <LVAR -0x014 @ 1(r)>
00016a5a ; --------------------------------------------------------------------------------------
00016a5a _FSCALL_10434:
00016a5a 4e 56 ff 70 |NV p | LINK.W A6,#0xff70
00016a5e bf d5 | | CMPA.L (A5),A7
00016a60 62 06 |b | BHI 0x16a68
00016a62 44 fc 00 02 |D | MOVE.W #0x2,CCR
00016a66 4e 76 |Nv | TRAPV
00016a68 de fc 00 76 | v | ADDA.W #0x76,A7
00016a6c 48 e7 ff f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D6+D5+D4+D3+D2+D1+D0,-(A7)
00016a70 45 ee ff ec |E | LEA.L (A6-0x14),A2
00016a74 47 ee 00 08 |G | LEA.L (A6+0x8),A3
00016a78 49 f9 00 01 67 c6 |I g | LEA.L _FSCALL_10428,A4
00016a7e 74 01 |t | MOVEQ.L #0x01,D2
00016a80 76 02 |v | MOVEQ.L #0x02,D3
00016a82 78 1e |x | MOVEQ.L #0x1e,D4
00016a84 41 f9 00 01 b5 f6 |A | LEA.L 0x1b5f6,A0
00016a8a 2f 08 |/ | MOVE.L A0,-(A7)
00016a8c 2d 5f ff f4 |-_ | MOVE.L (A7)+,(A6-0xc)
00016a90 41 f9 00 01 b9 f6 |A | LEA.L 0x1b9f6,A0
00016a96 2f 08 |/ | MOVE.L A0,-(A7)
00016a98 2d 5f ff f8 |-_ | MOVE.L (A7)+,(A6-0x8)
00016a9c 2f 13 |/ | MOVE.L (A3),-(A7)
00016a9e 4e ba ff 34 |N 4 | JSR 0x169d4
00016aa2 58 4f |XO | ADDQ.L #0x4,A7
00016aa4 7e 00 |~ | MOVEQ.L #0x00,D7
00016aa6 7c 01 || | MOVEQ.L #0x01,D6
00016aa8 7a 40 |z@ | MOVEQ.L #0x40,D5
00016aaa 4a 2e 00 10 |J. | TST.B (A6+0x10)
00016aae 67 56 |gV | BEQ 0x16b06
00016ab0 9e fc 00 0c | | SUBA.W #0xc,A7
00016ab4 20 4f | O | MOVEA.L A7,A0
00016ab6 43 fa fe aa |C | LEA.L 0x16962,A1
00016aba 70 0a |p | MOVEQ.L #0x0a,D0
00016abc 10 d9 | | MOVE.B (A1)+,(A0)+
00016abe 51 c8 ff fc |Q | DBF D0,0x16abc
00016ac2 20 53 | S | MOVEA.L (A3),A0
00016ac4 9e c4 | | SUBA.W D4,A7
00016ac6 22 4f |"O | MOVEA.L A7,A1
00016ac8 70 1d |p | MOVEQ.L #0x1d,D0
00016aca 12 d8 | | MOVE.B (A0)+,(A1)+
00016acc 51 c8 ff fc |Q | DBF D0,0x16aca
00016ad0 51 4f |QO | SUBQ.L #0x8,A7
00016ad2 48 6f 00 26 |Ho & | PEA.L (A7+0x26)
00016ad6 3f 02 |? | MOVE.W D2,-(A7)
00016ad8 3f 3c 00 0b |?< | MOVE.W #0xb,-(A7)
00016adc 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00016ae2 58 4f |XO | ADDQ.L #0x4,A7
00016ae4 48 6f 00 0c |Ho | PEA.L (A7+0xc)
00016ae8 3f 02 |? | MOVE.W D2,-(A7)
00016aea 3f 04 |? | MOVE.W D4,-(A7)
00016aec 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00016af2 50 4f |PO | ADDQ.L #0x8,A7
00016af4 4e b9 00 01 0f 2c |N , | JSR _StringCat2(a, b : String) : String
00016afa 50 4f |PO | ADDQ.L #0x8,A7
00016afc 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
00016b02 de fc 00 2e | . | ADDA.W #0x2e,A7
00016b06 20 53 | S | MOVEA.L (A3),A0
00016b08 30 28 00 20 |0( | MOVE.W (A0+0x20),D0
00016b0c 48 c0 |H | EXTW.L D0
00016b0e b0 ae 00 0c | | CMP.L (A6+0xc),D0
00016b12 6d 08 |m | BLT 0x16b1c
00016b14 1d 7c 00 06 ff fc | | | MOVE.B #0x06,(A6-0x4)
00016b1a 60 06 |` | BRA 0x16b22
00016b1c 1d 7c 00 07 ff fc | | | MOVE.B #0x07,(A6-0x4)
00016b22 10 2e ff fc | . | MOVE.B (A6-0x4),D0
00016b26 48 80 |H | EXTB.W D0
00016b28 41 bc 00 0b |A | CHK.W #0xb,D0
00016b2c 1f 00 | | MOVE.B D0,-(A7)
00016b2e 48 52 |HR | PEA.L (A2)
00016b30 4e b9 00 01 66 42 |N fB | JSR _FSCALL_10414
00016b36 5c 4f |\O | ADDQ.L #0x6,A7
00016b38 4a 12 |J | TST.B (A2)
00016b3a 67 08 |g | BEQ 0x16b44
00016b3c 1f 03 | | MOVE.B D3,-(A7)
00016b3e 48 52 |HR | PEA.L (A2)
00016b40 4e 94 |N | JSR (A4)
00016b42 5c 4f |\O | ADDQ.L #0x6,A7
00016b44 30 28 00 20 |0( | MOVE.W (A0+0x20),D0
00016b48 53 40 |S@ | SUBQ.W #0x1,D0
00016b4a 48 c0 |H | EXTW.L D0
00016b4c 2f 00 |/ | MOVE.L D0,-(A7)
00016b4e 70 00 |p | MOVEQ.L #0x00,D0
00016b50 b0 97 | | CMP.L (A7),D0
00016b52 6e 00 00 b2 |n | BGT 0x16c06
00016b56 4f 82 |O | CHK.W D2,D7
00016b58 42 81 |B | CLR.L D1
00016b5a 32 07 |2 | MOVE.W D7,D1
00016b5c e5 81 | | ASL.L #0x2,D1
00016b5e 2f 36 18 f4 |/6 | MOVE.L (A6+D1.L-#0xc),-(A7)
00016b62 3f 05 |? | MOVE.W D5,-(A7)
00016b64 4e b9 00 01 66 de |N f | JSR _FSCALL_1041c
00016b6a 54 4f |TO | ADDQ.L #0x2,A7
00016b6c 2e 93 |. | MOVE.L (A3),(A7)
00016b6e 0c 80 00 00 40 00 | @ | CMPI.L #0x00004000,D0
00016b74 63 02 |c | BLS 0x16b78
00016b76 4e 4f |NO | TRAP #15
00016b78 3f 00 |? | MOVE.W D0,-(A7)
00016b7a 42 67 |Bg | CLR.W -(A7)
00016b7c 3f 3c 02 00 |?< | MOVE.W #0x200,-(A7)
00016b80 1f 02 | | MOVE.B D2,-(A7)
00016b82 4d 82 |M | CHK.W D2,D6
00016b84 42 81 |B | CLR.L D1
00016b86 32 06 |2 | MOVE.W D6,D1
00016b88 e5 81 | | ASL.L #0x2,D1
00016b8a 2f 36 18 f4 |/6 | MOVE.L (A6+D1.L-#0xc),-(A7)
00016b8e 48 6e ff ee |Hn | PEA.L (A6-0x12)
00016b92 4e b9 00 01 3a e6 |N : | JSR _ReadFile(file : File; w : W; x : W; a : W; b: B; c : L; d : L)
00016b98 de fc 00 14 | | ADDA.W #0x14,A7
00016b9c 48 52 |HR | PEA.L (A2)
00016b9e 4e b9 00 01 64 0c |N d | JSR _FSCALL_10408
00016ba4 58 4f |XO | ADDQ.L #0x4,A7
00016ba6 4a 12 |J | TST.B (A2)
00016ba8 67 08 |g | BEQ 0x16bb2
00016baa 1f 03 | | MOVE.B D3,-(A7)
00016bac 48 52 |HR | PEA.L (A2)
00016bae 4e 94 |N | JSR (A4)
00016bb0 5c 4f |\O | ADDQ.L #0x6,A7
00016bb2 4a 2e ff ee |J. | TST.B (A6-0x12)
00016bb6 67 0e |g | BEQ 0x16bc6
00016bb8 1f 02 | | MOVE.B D2,-(A7)
00016bba 48 78 00 01 |Hx | PEA.L 0x1
00016bbe 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
00016bc4 5c 4f |\O | ADDQ.L #0x6,A7
00016bc6 4a 2e ff ed |J. | TST.B (A6-0x13)
00016bca 67 22 |g" | BEQ 0x16bee
00016bcc 4e b9 00 01 67 2c |N g, | JSR _FSCALL_10420
00016bd2 48 52 |HR | PEA.L (A2)
00016bd4 4e b9 00 01 64 0c |N d | JSR _FSCALL_10408
00016bda 58 4f |XO | ADDQ.L #0x4,A7
00016bdc 4a 12 |J | TST.B (A2)
00016bde 67 08 |g | BEQ 0x16be8
00016be0 1f 03 | | MOVE.B D3,-(A7)
00016be2 48 52 |HR | PEA.L (A2)
00016be4 4e 94 |N | JSR (A4)
00016be6 5c 4f |\O | ADDQ.L #0x6,A7
00016be8 4e b9 00 01 68 84 |N h | JSR _FSCALL_1042c
00016bee 4a 47 |JG | TST.W D7
00016bf0 66 06 |f | BNE 0x16bf8
00016bf2 7e 01 |~ | MOVEQ.L #0x01,D7
00016bf4 7c 00 || | MOVEQ.L #0x00,D6
00016bf6 60 04 |` | BRA 0x16bfc
00016bf8 7e 00 |~ | MOVEQ.L #0x00,D7
00016bfa 7c 01 || | MOVEQ.L #0x01,D6
00016bfc 3a 3c 04 00 |:< | MOVE.W #0x400,D5
00016c00 52 80 |R | ADDQ.L #0x1,D0
00016c02 68 00 ff 4c |h L | BVC 0x16b50
00016c06 58 4f |XO | ADDQ.L #0x4,A7
00016c08 4f 82 |O | CHK.W D2,D7
00016c0a 42 80 |B | CLR.L D0
00016c0c 30 07 |0 | MOVE.W D7,D0
00016c0e e5 80 | | ASL.L #0x2,D0
00016c10 2f 36 08 f4 |/6 | MOVE.L (A6+D0.L-#0xc),-(A7)
00016c14 3f 05 |? | MOVE.W D5,-(A7)
00016c16 4e b9 00 01 66 de |N f | JSR _FSCALL_1041c
00016c1c 5c 4f |\O | ADDQ.L #0x6,A7
00016c1e 48 52 |HR | PEA.L (A2)
00016c20 4e b9 00 01 64 0c |N d | JSR _FSCALL_10408
00016c26 58 4f |XO | ADDQ.L #0x4,A7
00016c28 4a 12 |J | TST.B (A2)
00016c2a 67 08 |g | BEQ 0x16c34
00016c2c 1f 03 | | MOVE.B D3,-(A7)
00016c2e 48 52 |HR | PEA.L (A2)
00016c30 4e 94 |N | JSR (A4)
00016c32 5c 4f |\O | ADDQ.L #0x6,A7
00016c34 4c df 1f ff |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D5+D6+D7+A0+A1+A2+A3+A4
00016c38 4e 5e |N^ | UNLK A6
00016c3a 4e 75 |Nu | RTS
00016c3c ; --------------------------------------------------------------------------------------
00016c3c ; FSCALL_10438
00016c3c ; OMSI PASCAL Function
00016c3c ; <LVAR 0x012 1(r)>
00016c3c ; <LVAR 0x010 1(r)>
00016c3c ; <LVAR 0x00c 4(r)>
00016c3c ; <LVAR 0x008 4(r)>
00016c3c ; <LVAR -0x004 1(rw)>
00016c3c ; <LVAR -0x008 4(rw)>
00016c3c ; <LVAR -0x00c 4(w)>
00016c3c ; <LVAR -0x010 4(w)>
00016c3c ; <LVAR -0x018 @ 4(r)>
00016c3c ; <LVAR -0x01c @ 4(rw)>
00016c3c ; <LVAR -0x034 2(r)>
00016c3c ; <LVAR -0x035 1(r)>
00016c3c ; <LVAR -0x036 1(r)>
00016c3c ; <LVAR -0x037 1(r)>
00016c3c ; <LVAR -0x038 1(r)>
00016c3c ; <LVAR -0x039 1(r)>
00016c3c ; <LVAR -0x03a 1(r)>
00016c3c ; <LVAR -0x03e 2(r)>
00016c3c ; <LVAR -0x05c @>
00016c3c ; <LVAR -0x05d @ 1(r)>
00016c3c ; <LVAR -0x05e 1(r)>
00016c3c ; <LVAR -0x05f @ 1(r)>
00016c3c ; --------------------------------------------------------------------------------------
00016c3c _FSCALL_10438:
00016c3c 4e 56 ff 26 |NV & | LINK.W A6,#0xff26
00016c40 bf d5 | | CMPA.L (A5),A7
00016c42 62 06 |b | BHI 0x16c4a
00016c44 44 fc 00 02 |D | MOVE.W #0x2,CCR
00016c48 4e 76 |Nv | TRAPV
00016c4a de fc 00 76 | v | ADDA.W #0x76,A7
00016c4e 48 e7 ff f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D6+D5+D4+D3+D2+D1+D0,-(A7)
00016c52 45 ee ff a1 |E | LEA.L (A6-0x5f),A2
00016c56 47 f9 00 01 0d a4 |G | LEA.L _StringLit(Src : Pointer; Offset: W; Len : W) : String,A3
00016c5c 49 ee ff c2 |I | LEA.L (A6-0x3e),A4
00016c60 74 01 |t | MOVEQ.L #0x01,D2
00016c62 76 02 |v | MOVEQ.L #0x02,D3
00016c64 78 06 |x | MOVEQ.L #0x06,D4
00016c66 41 f9 00 01 b5 f6 |A | LEA.L 0x1b5f6,A0
00016c6c 2f 08 |/ | MOVE.L A0,-(A7)
00016c6e 2d 5f ff f0 |-_ | MOVE.L (A7)+,(A6-0x10)
00016c72 41 f9 00 01 b9 f6 |A | LEA.L 0x1b9f6,A0
00016c78 2f 08 |/ | MOVE.L A0,-(A7)
00016c7a 2d 5f ff f4 |-_ | MOVE.L (A7)+,(A6-0xc)
00016c7e 7e 00 |~ | MOVEQ.L #0x00,D7
00016c80 7c 01 || | MOVEQ.L #0x01,D6
00016c82 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00016c86 2f 08 |/ | MOVE.L A0,-(A7)
00016c88 10 82 | | MOVE.B D2,(A0)
00016c8a 43 ee ff a4 |C | LEA.L (A6-0x5c),A1
00016c8e 2f 09 |/ | MOVE.L A1,-(A7)
00016c90 3f 3c 00 40 |?< @ | MOVE.W #0x40,-(A7)
00016c94 4e b9 00 01 66 90 |N f | JSR _FSCALL_10418
00016c9a 5c 4f |\O | ADDQ.L #0x6,A7
00016c9c 48 52 |HR | PEA.L (A2)
00016c9e 4e b9 00 01 64 0c |N d | JSR _FSCALL_10408
00016ca4 58 4f |XO | ADDQ.L #0x4,A7
00016ca6 10 12 | | MOVE.B (A2),D0
00016ca8 b0 04 | | CMP.B D4,D0
00016caa 66 1c |f | BNE 0x16cc8
00016cac 41 ee ff a4 |A | LEA.L (A6-0x5c),A0
00016cb0 2f 08 |/ | MOVE.L A0,-(A7)
00016cb2 3f 3c 00 40 |?< @ | MOVE.W #0x40,-(A7)
00016cb6 4e b9 00 01 66 90 |N f | JSR _FSCALL_10418
00016cbc 5c 4f |\O | ADDQ.L #0x6,A7
00016cbe 48 52 |HR | PEA.L (A2)
00016cc0 4e b9 00 01 64 0c |N d | JSR _FSCALL_10408
00016cc6 58 4f |XO | ADDQ.L #0x4,A7
00016cc8 10 12 | | MOVE.B (A2),D0
00016cca b0 04 | | CMP.B D4,D0
00016ccc 66 26 |f& | BNE 0x16cf4
00016cce 1f 3c 00 05 | < | MOVE.B #0x05,-(A7)
00016cd2 48 52 |HR | PEA.L (A2)
00016cd4 4e b9 00 01 66 42 |N fB | JSR _FSCALL_10414
00016cda 5c 4f |\O | ADDQ.L #0x6,A7
00016cdc 4a 12 |J | TST.B (A2)
00016cde 67 0c |g | BEQ 0x16cec
00016ce0 1f 03 | | MOVE.B D3,-(A7)
00016ce2 48 52 |HR | PEA.L (A2)
00016ce4 4e b9 00 01 67 c6 |N g | JSR _FSCALL_10428
00016cea 5c 4f |\O | ADDQ.L #0x6,A7
00016cec 58 4f |XO | ADDQ.L #0x4,A7
00016cee 60 00 03 cc |` | BRA 0x170bc
00016cf2 60 56 |`V | .XXX[0x2]
00016cf4 4a 2e ff a2 |J. | TST.B (A6-0x5e)
00016cf8 67 02 |g | BEQ 0x16cfc
00016cfa 60 f0 |` | BRA 0x16cec
00016cfc 4a 00 |J | TST.B D0
00016cfe 67 0e |g | BEQ 0x16d0e
00016d00 1f 03 | | MOVE.B D3,-(A7)
00016d02 48 52 |HR | PEA.L (A2)
00016d04 4e b9 00 01 67 c6 |N g | JSR _FSCALL_10428
00016d0a 5c 4f |\O | ADDQ.L #0x6,A7
00016d0c 60 3c |`< | BRA 0x16d4a
00016d0e 20 57 | W | MOVEA.L (A7),A0
00016d10 42 10 |B | CLR.B (A0)
00016d12 30 2e ff cc |0. | MOVE.W (A6-0x34),D0
00016d16 b0 42 | B | CMP.W D2,D0
00016d18 67 30 |g0 | BEQ 0x16d4a
00016d1a 9e fc 00 1e | | SUBA.W #0x1e,A7
00016d1e 20 4f | O | MOVEA.L A7,A0
00016d20 43 fa fc 4c |C L | LEA.L 0x1696e,A1
00016d24 70 1c |p | MOVEQ.L #0x1c,D0
00016d26 10 d9 | | MOVE.B (A1)+,(A0)+
00016d28 51 c8 ff fc |Q | DBF D0,0x16d26
00016d2c 1f 3c 00 04 | < | MOVE.B #0x04,-(A7)
00016d30 59 4f |YO | SUBQ.L #0x4,A7
00016d32 48 6f 00 06 |Ho | PEA.L (A7+0x6)
00016d36 3f 02 |? | MOVE.W D2,-(A7)
00016d38 3f 3c 00 1d |?< | MOVE.W #0x1d,-(A7)
00016d3c 4e 93 |N | JSR (A3)
00016d3e 50 4f |PO | ADDQ.L #0x8,A7
00016d40 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
00016d46 de fc 00 24 | $ | ADDA.W #0x24,A7
00016d4a 58 4f |XO | ADDQ.L #0x4,A7
00016d4c 4a 2e 00 12 |J. | TST.B (A6+0x12)
00016d50 67 4c |gL | BEQ 0x16d9e
00016d52 9e fc 00 0c | | SUBA.W #0xc,A7
00016d56 20 4f | O | MOVEA.L A7,A0
00016d58 43 fa fc 32 |C 2 | LEA.L 0x1698c,A1
00016d5c 70 0a |p | MOVEQ.L #0x0a,D0
00016d5e 10 d9 | | MOVE.B (A1)+,(A0)+
00016d60 51 c8 ff fc |Q | DBF D0,0x16d5e
00016d64 20 4c | L | MOVEA.L A4,A0
00016d66 70 0e |p | MOVEQ.L #0x0e,D0
00016d68 3f 20 |? | MOVE.W -(A0),-(A7)
00016d6a 51 c8 ff fc |Q | DBF D0,0x16d68
00016d6e 51 4f |QO | SUBQ.L #0x8,A7
00016d70 48 6f 00 26 |Ho & | PEA.L (A7+0x26)
00016d74 3f 02 |? | MOVE.W D2,-(A7)
00016d76 3f 3c 00 0b |?< | MOVE.W #0xb,-(A7)
00016d7a 4e 93 |N | JSR (A3)
00016d7c 58 4f |XO | ADDQ.L #0x4,A7
00016d7e 48 6f 00 0c |Ho | PEA.L (A7+0xc)
00016d82 3f 02 |? | MOVE.W D2,-(A7)
00016d84 3f 3c 00 1e |?< | MOVE.W #0x1e,-(A7)
00016d88 4e 93 |N | JSR (A3)
00016d8a 50 4f |PO | ADDQ.L #0x8,A7
00016d8c 4e b9 00 01 0f 2c |N , | JSR _StringCat2(a, b : String) : String
00016d92 50 4f |PO | ADDQ.L #0x8,A7
00016d94 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
00016d9a de fc 00 2e | . | ADDA.W #0x2e,A7
00016d9e 4a 2e 00 10 |J. | TST.B (A6+0x10)
00016da2 67 12 |g | BEQ 0x16db6
00016da4 30 14 |0 | MOVE.W (A4),D0
00016da6 48 c0 |H | EXTW.L D0
00016da8 b0 ae 00 0c | | CMP.L (A6+0xc),D0
00016dac 6c 08 |l | BGE 0x16db6
00016dae 1d 7c 00 07 ff fc | | | MOVE.B #0x07,(A6-0x4)
00016db4 60 04 |` | BRA 0x16dba
00016db6 1d 44 ff fc | D | MOVE.B D4,(A6-0x4)
00016dba 10 2e ff fc | . | MOVE.B (A6-0x4),D0
00016dbe 48 80 |H | EXTB.W D0
00016dc0 41 bc 00 0b |A | CHK.W #0xb,D0
00016dc4 1f 00 | | MOVE.B D0,-(A7)
00016dc6 48 52 |HR | PEA.L (A2)
00016dc8 4e b9 00 01 66 42 |N fB | JSR _FSCALL_10414
00016dce 5c 4f |\O | ADDQ.L #0x6,A7
00016dd0 4a 12 |J | TST.B (A2)
00016dd2 67 0c |g | BEQ 0x16de0
00016dd4 1f 03 | | MOVE.B D3,-(A7)
00016dd6 48 52 |HR | PEA.L (A2)
00016dd8 4e b9 00 01 67 c6 |N g | JSR _FSCALL_10428
00016dde 5c 4f |\O | ADDQ.L #0x6,A7
00016de0 4a 2e 00 10 |J. | TST.B (A6+0x10)
00016de4 66 10 |f | BNE 0x16df6
00016de6 1f 03 | | MOVE.B D3,-(A7)
00016de8 48 52 |HR | PEA.L (A2)
00016dea 4e b9 00 01 66 42 |N fB | JSR _FSCALL_10414
00016df0 5c 4f |\O | ADDQ.L #0x6,A7
00016df2 60 00 00 ea |` | BRA 0x16ede
00016df6 4f 82 |O | CHK.W D2,D7
00016df8 42 80 |B | CLR.L D0
00016dfa 30 07 |0 | MOVE.W D7,D0
00016dfc e5 80 | | ASL.L #0x2,D0
00016dfe 2f 36 08 f0 |/6 | MOVE.L (A6+D0.L-#0x10),-(A7)
00016e02 3f 3c 04 00 |?< | MOVE.W #0x400,-(A7)
00016e06 4e b9 00 01 66 90 |N f | JSR _FSCALL_10418
00016e0c 5c 4f |\O | ADDQ.L #0x6,A7
00016e0e 20 4c | L | MOVEA.L A4,A0
00016e10 70 0e |p | MOVEQ.L #0x0e,D0
00016e12 3f 20 |? | MOVE.W -(A0),-(A7)
00016e14 51 c8 ff fc |Q | DBF D0,0x16e12
00016e18 59 4f |YO | SUBQ.L #0x4,A7
00016e1a 48 6f 00 04 |Ho | PEA.L (A7+0x4)
00016e1e 3f 02 |? | MOVE.W D2,-(A7)
00016e20 3f 3c 00 1e |?< | MOVE.W #0x1e,-(A7)
00016e24 4e 93 |N | JSR (A3)
00016e26 50 4f |PO | ADDQ.L #0x8,A7
00016e28 2d 5f ff e4 |-_ | MOVE.L (A7)+,(A6-0x1c)
00016e2c de fc 00 1e | | ADDA.W #0x1e,A7
00016e30 4a 2e ff c7 |J. | TST.B (A6-0x39)
00016e34 67 06 |g | BEQ 0x16e3c
00016e36 30 14 |0 | MOVE.W (A4),D0
00016e38 44 40 |D@ | NEG.W D0
00016e3a 60 02 |` | BRA 0x16e3e
00016e3c 30 14 |0 | MOVE.W (A4),D0
00016e3e 48 c0 |H | EXTW.L D0
00016e40 2d 40 ff f8 |-@ | MOVE.L D0,(A6-0x8)
00016e44 2f 2e ff e4 |/. | MOVE.L (A6-0x1c),-(A7)
00016e48 1f 02 | | MOVE.B D2,-(A7)
00016e4a 1f 02 | | MOVE.B D2,-(A7)
00016e4c 2f 2e ff f8 |/. | MOVE.L (A6-0x8),-(A7)
00016e50 48 6e ff a3 |Hn | PEA.L (A6-0x5d)
00016e54 48 6e ff e8 |Hn | PEA.L (A6-0x18)
00016e58 4e b9 00 01 38 b4 |N 8 | JSR _OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
00016e5e de fc 00 14 | | ADDA.W #0x14,A7
00016e62 4a 2e ff a3 |J. | TST.B (A6-0x5d)
00016e66 67 36 |g6 | BEQ 0x16e9e
00016e68 48 52 |HR | PEA.L (A2)
00016e6a 4e b9 00 01 64 0c |N d | JSR _FSCALL_10408
00016e70 2e ba fb 32 |. 2 | MOVE.L 0x169a4,(A7)
00016e74 2f 3a fb 2a |/: * | MOVE.L 0x169a0,-(A7)
00016e78 2f 3a fb 22 |/: " | MOVE.L 0x1699c,-(A7)
00016e7c 2f 3a fb 1a |/: | MOVE.L 0x16998,-(A7)
00016e80 1f 3c 00 0e | < | MOVE.B #0x0e,-(A7)
00016e84 59 4f |YO | SUBQ.L #0x4,A7
00016e86 48 6f 00 06 |Ho | PEA.L (A7+0x6)
00016e8a 3f 02 |? | MOVE.W D2,-(A7)
00016e8c 3f 3c 00 10 |?< | MOVE.W #0x10,-(A7)
00016e90 4e 93 |N | JSR (A3)
00016e92 50 4f |PO | ADDQ.L #0x8,A7
00016e94 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
00016e9a de fc 00 16 | | ADDA.W #0x16,A7
00016e9e 20 6e ff e8 | n | MOVEA.L (A6-0x18),A0
00016ea2 10 2e ff c7 | . | MOVE.B (A6-0x39),D0
00016ea6 02 28 00 fd 00 3f | ( ? | ANDI.B #0xfd,(A0+0x3f)
00016eac e3 08 | | LSL.B #0x1,D0
00016eae 81 28 00 3f | ( ? | OR.B D0,(A0+0x3f)
00016eb2 10 2e ff c6 | . | MOVE.B (A6-0x3a),D0
00016eb6 02 28 00 fb 00 3f | ( ? | ANDI.B #0xfb,(A0+0x3f)
00016ebc e5 08 | | LSL.B #0x2,D0
00016ebe 81 28 00 3f | ( ? | OR.B D0,(A0+0x3f)
00016ec2 11 6e ff c8 00 3a | n : | MOVE.B (A6-0x38),(A0+0x3a)
00016ec8 11 6e ff c9 00 3b | n ; | MOVE.B (A6-0x37),(A0+0x3b)
00016ece 11 6e ff ca 00 3c | n < | MOVE.B (A6-0x36),(A0+0x3c)
00016ed4 11 6e ff cb 00 3d | n = | MOVE.B (A6-0x35),(A0+0x3d)
00016eda 11 42 00 4c | B L | MOVE.B D2,(A0+0x4c)
00016ede 30 14 |0 | MOVE.W (A4),D0
00016ee0 53 40 |S@ | SUBQ.W #0x1,D0
00016ee2 48 c0 |H | EXTW.L D0
00016ee4 2f 00 |/ | MOVE.L D0,-(A7)
00016ee6 70 00 |p | MOVEQ.L #0x00,D0
00016ee8 b0 97 | | CMP.L (A7),D0
00016eea 6f 06 |o | BLE 0x16ef2
00016eec 59 4f |YO | SUBQ.L #0x4,A7
00016eee 60 00 01 3c |` < | BRA 0x1702c
00016ef2 2f 00 |/ | MOVE.L D0,-(A7)
00016ef4 7a 00 |z | MOVEQ.L #0x00,D5
00016ef6 30 14 |0 | MOVE.W (A4),D0
00016ef8 53 40 |S@ | SUBQ.W #0x1,D0
00016efa 22 17 |" | MOVE.L (A7),D1
00016efc 48 c0 |H | EXTW.L D0
00016efe b2 80 | | CMP.L D0,D1
00016f00 66 02 |f | BNE 0x16f04
00016f02 52 05 |R | ADDQ.B #0x1,D5
00016f04 4a 2e 00 10 |J. | TST.B (A6+0x10)
00016f08 67 0a |g | BEQ 0x16f14
00016f0a 48 52 |HR | PEA.L (A2)
00016f0c 4e b9 00 01 64 0c |N d | JSR _FSCALL_10408
00016f12 58 4f |XO | ADDQ.L #0x4,A7
00016f14 10 12 | | MOVE.B (A2),D0
00016f16 b0 04 | | CMP.B D4,D0
00016f18 66 38 |f8 | BNE 0x16f52
00016f1a 4e b9 00 01 68 84 |N h | JSR _FSCALL_1042c
00016f20 4a 2e 00 10 |J. | TST.B (A6+0x10)
00016f24 66 0c |f | BNE 0x16f32
00016f26 1f 03 | | MOVE.B D3,-(A7)
00016f28 48 52 |HR | PEA.L (A2)
00016f2a 4e b9 00 01 66 42 |N fB | JSR _FSCALL_10414
00016f30 60 1a |` | BRA 0x16f4c
00016f32 4a 05 |J | TST.B D5
00016f34 66 18 |f | BNE 0x16f4e
00016f36 4f 82 |O | CHK.W D2,D7
00016f38 42 80 |B | CLR.L D0
00016f3a 30 07 |0 | MOVE.W D7,D0
00016f3c e5 80 | | ASL.L #0x2,D0
00016f3e 2f 36 08 f0 |/6 | MOVE.L (A6+D0.L-#0x10),-(A7)
00016f42 3f 3c 04 00 |?< | MOVE.W #0x400,-(A7)
00016f46 4e b9 00 01 66 90 |N f | JSR _FSCALL_10418
00016f4c 5c 4f |\O | ADDQ.L #0x6,A7
00016f4e 60 a4 |` | BRA 0x16ef4
00016f50 60 10 |` | .XXX[0x2]
00016f52 4a 00 |J | TST.B D0
00016f54 67 0c |g | BEQ 0x16f62
00016f56 1f 03 | | MOVE.B D3,-(A7)
00016f58 48 52 |HR | PEA.L (A2)
00016f5a 4e b9 00 01 67 c6 |N g | JSR _FSCALL_10428
00016f60 5c 4f |\O | ADDQ.L #0x6,A7
00016f62 4a 47 |JG | TST.W D7
00016f64 66 06 |f | BNE 0x16f6c
00016f66 7e 01 |~ | MOVEQ.L #0x01,D7
00016f68 7c 00 || | MOVEQ.L #0x00,D6
00016f6a 60 04 |` | BRA 0x16f70
00016f6c 7e 00 |~ | MOVEQ.L #0x00,D7
00016f6e 7c 01 || | MOVEQ.L #0x01,D6
00016f70 4a 2e 00 10 |J. | TST.B (A6+0x10)
00016f74 67 00 00 9a |g | BEQ 0x17010
00016f78 4a 05 |J | TST.B D5
00016f7a 66 18 |f | BNE 0x16f94
00016f7c 4f 82 |O | CHK.W D2,D7
00016f7e 42 80 |B | CLR.L D0
00016f80 30 07 |0 | MOVE.W D7,D0
00016f82 e5 80 | | ASL.L #0x2,D0
00016f84 2f 36 08 f0 |/6 | MOVE.L (A6+D0.L-#0x10),-(A7)
00016f88 3f 3c 04 00 |?< | MOVE.W #0x400,-(A7)
00016f8c 4e b9 00 01 66 90 |N f | JSR _FSCALL_10418
00016f92 5c 4f |\O | ADDQ.L #0x6,A7
00016f94 2f 2e ff e8 |/. | MOVE.L (A6-0x18),-(A7)
00016f98 20 2f 00 04 | / | MOVE.L (A7+0x4),D0
00016f9c 0c 80 00 00 40 00 | @ | CMPI.L #0x00004000,D0
00016fa2 63 02 |c | BLS 0x16fa6
00016fa4 4e 4f |NO | TRAP #15
00016fa6 3f 00 |? | MOVE.W D0,-(A7)
00016fa8 42 67 |Bg | CLR.W -(A7)
00016faa 3f 3c 02 00 |?< | MOVE.W #0x200,-(A7)
00016fae 1f 02 | | MOVE.B D2,-(A7)
00016fb0 4d 82 |M | CHK.W D2,D6
00016fb2 42 80 |B | CLR.L D0
00016fb4 30 06 |0 | MOVE.W D6,D0
00016fb6 e5 80 | | ASL.L #0x2,D0
00016fb8 2f 36 08 f0 |/6 | MOVE.L (A6+D0.L-#0x10),-(A7)
00016fbc 48 6e ff a3 |Hn | PEA.L (A6-0x5d)
00016fc0 4e b9 00 01 3b b8 |N ; | JSR _WriteFile(file : File; y : W; x : W; a : W; b: B; c: L; d: L)
00016fc6 de fc 00 14 | | ADDA.W #0x14,A7
00016fca 4a 2e ff a3 |J. | TST.B (A6-0x5d)
00016fce 67 3e |g> | BEQ 0x1700e
00016fd0 4a 05 |J | TST.B D5
00016fd2 66 0a |f | BNE 0x16fde
00016fd4 48 52 |HR | PEA.L (A2)
00016fd6 4e b9 00 01 64 0c |N d | JSR _FSCALL_10408
00016fdc 58 4f |XO | ADDQ.L #0x4,A7
00016fde 9e fc 00 1a | | SUBA.W #0x1a,A7
00016fe2 20 4f | O | MOVEA.L A7,A0
00016fe4 43 fa f9 c2 |C | LEA.L 0x169a8,A1
00016fe8 70 18 |p | MOVEQ.L #0x18,D0
00016fea 10 d9 | | MOVE.B (A1)+,(A0)+
00016fec 51 c8 ff fc |Q | DBF D0,0x16fea
00016ff0 1f 3c 00 0e | < | MOVE.B #0x0e,-(A7)
00016ff4 59 4f |YO | SUBQ.L #0x4,A7
00016ff6 48 6f 00 06 |Ho | PEA.L (A7+0x6)
00016ffa 3f 02 |? | MOVE.W D2,-(A7)
00016ffc 3f 3c 00 19 |?< | MOVE.W #0x19,-(A7)
00017000 4e 93 |N | JSR (A3)
00017002 50 4f |PO | ADDQ.L #0x8,A7
00017004 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
0001700a de fc 00 20 | | ADDA.W #0x20,A7
0001700e 60 10 |` | BRA 0x17020
00017010 4a 05 |J | TST.B D5
00017012 66 0c |f | BNE 0x17020
00017014 1f 03 | | MOVE.B D3,-(A7)
00017016 48 52 |HR | PEA.L (A2)
00017018 4e b9 00 01 66 42 |N fB | JSR _FSCALL_10414
0001701e 5c 4f |\O | ADDQ.L #0x6,A7
00017020 20 17 | | MOVE.L (A7),D0
00017022 52 80 |R | ADDQ.L #0x1,D0
00017024 69 06 |i | BVS 0x1702c
00017026 58 4f |XO | ADDQ.L #0x4,A7
00017028 60 00 fe be |` | BRA 0x16ee8
0001702c 50 4f |PO | ADDQ.L #0x8,A7
0001702e 4a 2e 00 10 |J. | TST.B (A6+0x10)
00017032 67 6a |gj | BEQ 0x1709e
00017034 48 6e ff e4 |Hn | PEA.L (A6-0x1c)
00017038 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
0001703e 54 4f |TO | ADDQ.L #0x2,A7
00017040 42 17 |B | CLR.B (A7)
00017042 1f 02 | | MOVE.B D2,-(A7)
00017044 48 78 00 01 |Hx | PEA.L 0x1
00017048 48 6e ff a3 |Hn | PEA.L (A6-0x5d)
0001704c 48 6e ff e8 |Hn | PEA.L (A6-0x18)
00017050 4e b9 00 01 3c 8a |N < | JSR _CloseFile(a : L; VAR status : B; VAR file : File)
00017056 de fc 00 10 | | ADDA.W #0x10,A7
0001705a 4a 05 |J | TST.B D5
0001705c 66 0a |f | BNE 0x17068
0001705e 48 52 |HR | PEA.L (A2)
00017060 4e b9 00 01 64 0c |N d | JSR _FSCALL_10408
00017066 58 4f |XO | ADDQ.L #0x4,A7
00017068 4a 2e ff a3 |J. | TST.B (A6-0x5d)
0001706c 67 30 |g0 | BEQ 0x1709e
0001706e 9e fc 00 12 | | SUBA.W #0x12,A7
00017072 20 4f | O | MOVEA.L A7,A0
00017074 43 fa f9 4c |C L | LEA.L 0x169c2,A1
00017078 70 10 |p | MOVEQ.L #0x10,D0
0001707a 10 d9 | | MOVE.B (A1)+,(A0)+
0001707c 51 c8 ff fc |Q | DBF D0,0x1707a
00017080 1f 3c 00 0e | < | MOVE.B #0x0e,-(A7)
00017084 59 4f |YO | SUBQ.L #0x4,A7
00017086 48 6f 00 06 |Ho | PEA.L (A7+0x6)
0001708a 3f 02 |? | MOVE.W D2,-(A7)
0001708c 3f 3c 00 11 |?< | MOVE.W #0x11,-(A7)
00017090 4e 93 |N | JSR (A3)
00017092 50 4f |PO | ADDQ.L #0x8,A7
00017094 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
0001709a de fc 00 18 | | ADDA.W #0x18,A7
0001709e 1f 3c 00 07 | < | MOVE.B #0x07,-(A7)
000170a2 48 52 |HR | PEA.L (A2)
000170a4 4e b9 00 01 66 42 |N fB | JSR _FSCALL_10414
000170aa 5c 4f |\O | ADDQ.L #0x6,A7
000170ac 4a 12 |J | TST.B (A2)
000170ae 67 0c |g | BEQ 0x170bc
000170b0 1f 03 | | MOVE.B D3,-(A7)
000170b2 48 52 |HR | PEA.L (A2)
000170b4 4e b9 00 01 67 c6 |N g | JSR _FSCALL_10428
000170ba 5c 4f |\O | ADDQ.L #0x6,A7
000170bc 4c df 1f ff |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D5+D6+D7+A0+A1+A2+A3+A4
000170c0 4e 5e |N^ | UNLK A6
000170c2 4e 75 |Nu | RTS
000170c4 ; --------------------------------------------------------------------------------------
000170c4 ; FileReadLine(file : File; VAR a : String; VAR b : Byte)
000170c4 ; Stack:
000170c4 ; A6+0x10 file : File
000170c4 ; A6+0xc VAR a : String
000170c4 ; A6+0x8 VAR b : Byte
000170c4 ; OMSI PASCAL Function
000170c4 ; <LVAR 0x010 4(r)>
000170c4 ; <LVAR 0x00c 4(r)>
000170c4 ; <LVAR 0x008 4(r)>
000170c4 ; <LVAR -0x002 @>
000170c4 ; --------------------------------------------------------------------------------------
000170c4 _FileReadLine(file : File; VAR a : String; VAR b : Byte):
000170c4 4e 56 ff ae |NV | LINK.W A6,#0xffae
000170c8 bf d5 | | CMPA.L (A5),A7
000170ca 62 06 |b | BHI 0x170d2
000170cc 44 fc 00 02 |D | MOVE.W #0x2,CCR
000170d0 4e 76 |Nv | TRAPV
000170d2 de fc 00 4a | J | ADDA.W #0x4a,A7
000170d6 48 e7 e7 f0 |H | MOVEM.L A3+A2+A1+A0+D7+D6+D5+D2+D1+D0,-(A7)
000170da 45 ee 00 08 |E | LEA.L (A6+0x8),A2
000170de 47 ee 00 10 |G | LEA.L (A6+0x10),A3
000170e2 22 3c ff ff 80 00 |"< | MOVE.L #0xffff8000,D1
000170e8 74 01 |t | MOVEQ.L #0x01,D2
000170ea 41 f9 00 01 bd fe |A | LEA.L 0x1bdfe,A0
000170f0 2f 08 |/ | MOVE.L A0,-(A7)
000170f2 2a 1f |* | MOVE.L (A7)+,D5
000170f4 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
000170f8 20 50 | P | MOVEA.L (A0),A0
000170fa 2f 08 |/ | MOVE.L A0,-(A7)
000170fc 42 50 |BP | CLR.W (A0)
000170fe 22 53 |"S | MOVEA.L (A3),A1
00017100 2f 09 |/ | MOVE.L A1,-(A7)
00017102 20 57 | W | MOVEA.L (A7),A0
00017104 22 79 00 01 00 26 |"y & | MOVEA.L 0x10026,A1
0001710a b3 d3 | | CMPA.L (A3),A1
0001710c 66 0c |f | BNE 0x1711a
0001710e 30 39 00 01 00 2a |09 * | MOVE.W 0x1002a,D0
00017114 b0 68 00 48 | h H | CMP.W (A0+0x48),D0
00017118 67 48 |gH | BEQ 0x17162
0001711a 30 28 00 48 |0( H | MOVE.W (A0+0x48),D0
0001711e b0 68 00 20 | h | CMP.W (A0+0x20),D0
00017122 6d 0a |m | BLT 0x1712e
00017124 22 52 |"R | MOVEA.L (A2),A1
00017126 12 82 | | MOVE.B D2,(A1)
00017128 58 4f |XO | ADDQ.L #0x4,A7
0001712a 60 00 00 e0 |` | BRA 0x1720c
0001712e 22 57 |"W | MOVEA.L (A7),A1
00017130 30 29 00 48 |0) H | MOVE.W (A1+0x48),D0
00017134 41 bc 40 00 |A @ | CHK.W #0x4000,D0
00017138 2f 13 |/ | MOVE.L (A3),-(A7)
0001713a 3f 00 |? | MOVE.W D0,-(A7)
0001713c 42 67 |Bg | CLR.W -(A7)
0001713e 3f 3c 02 00 |?< | MOVE.W #0x200,-(A7)
00017142 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
00017146 2f 05 |/ | MOVE.L D5,-(A7)
00017148 48 6e ff fe |Hn | PEA.L (A6-0x2)
0001714c 4e b9 00 01 3a e6 |N : | JSR _ReadFile(file : File; w : W; x : W; a : W; b: B; c : L; d : L)
00017152 de fc 00 14 | | ADDA.W #0x14,A7
00017156 23 d3 00 01 00 26 |# & | MOVE.L (A3),0x10026
0001715c 33 c0 00 01 00 2a |3 * | MOVE.W D0,0x1002a
00017162 20 57 | W | MOVEA.L (A7),A0
00017164 30 28 00 4a |0( J | MOVE.W (A0+0x4a),D0
00017168 41 bc 03 ff |A | CHK.W #0x3ff,D0
0001716c 43 f9 00 01 bd f6 |C | LEA.L 0x1bdf6,A1
00017172 1c 31 00 08 | 1 | MOVE.B (A1+D0.W+#0x8),D6
00017176 66 06 |f | BNE 0x1717e
00017178 20 52 | R | MOVEA.L (A2),A0
0001717a 10 82 | | MOVE.B D2,(A0)
0001717c 60 36 |`6 | BRA 0x171b4
0001717e 30 28 00 4a |0( J | MOVE.W (A0+0x4a),D0
00017182 48 c0 |H | EXTW.L D0
00017184 52 80 |R | ADDQ.L #0x1,D0
00017186 90 81 | | SUB.L D1,D0
00017188 0c 80 00 00 ff ff | | CMPI.L #0x0000ffff,D0
0001718e 63 02 |c | BLS 0x17192
00017190 4e 4f |NO | TRAP #15
00017192 d0 81 | | ADD.L D1,D0
00017194 31 40 00 4a |1@ J | MOVE.W D0,(A0+0x4a)
00017198 0c 40 04 00 | @ | CMPI.W #0x0400,D0
0001719c 66 12 |f | BNE 0x171b0
0001719e 30 28 00 48 |0( H | MOVE.W (A0+0x48),D0
000171a2 52 40 |R@ | ADDQ.W #0x1,D0
000171a4 41 bc 40 00 |A @ | CHK.W #0x4000,D0
000171a8 31 40 00 48 |1@ H | MOVE.W D0,(A0+0x48)
000171ac 42 68 00 4a |Bh J | CLR.W (A0+0x4a)
000171b0 20 52 | R | MOVEA.L (A2),A0
000171b2 42 10 |B | CLR.B (A0)
000171b4 7e 00 |~ | MOVEQ.L #0x00,D7
000171b6 20 52 | R | MOVEA.L (A2),A0
000171b8 4a 10 |J | TST.B (A0)
000171ba 66 06 |f | BNE 0x171c2
000171bc 0c 06 00 0a | | CMPI.B #0x0a,D6
000171c0 66 02 |f | BNE 0x171c4
000171c2 52 07 |R | ADDQ.B #0x1,D7
000171c4 4a 07 |J | TST.B D7
000171c6 66 3c |f< | BNE 0x17204
000171c8 0c 06 00 0d | | CMPI.B #0x0d,D6
000171cc 67 36 |g6 | BEQ 0x17204
000171ce 20 6f 00 04 | o | MOVEA.L (A7+0x4),A0
000171d2 30 10 |0 | MOVE.W (A0),D0
000171d4 48 c0 |H | EXTW.L D0
000171d6 52 80 |R | ADDQ.L #0x1,D0
000171d8 90 81 | | SUB.L D1,D0
000171da 0c 80 00 00 ff ff | | CMPI.L #0x0000ffff,D0
000171e0 63 02 |c | BLS 0x171e4
000171e2 4e 4f |NO | TRAP #15
000171e4 d0 81 | | ADD.L D1,D0
000171e6 30 80 |0 | MOVE.W D0,(A0)
000171e8 48 c0 |H | EXTW.L D0
000171ea 53 80 |S | SUBQ.L #0x1,D0
000171ec 0c 80 00 00 00 7d | } | CMPI.L #0x0000007d,D0
000171f2 63 02 |c | BLS 0x171f6
000171f4 4e 4f |NO | TRAP #15
000171f6 11 86 08 02 | | MOVE.B D6,(A0+D0.L+#0x2)
000171fa 30 10 |0 | MOVE.W (A0),D0
000171fc 0c 40 00 7e | @ ~ | CMPI.W #0x007e,D0
00017200 66 02 |f | BNE 0x17204
00017202 7e 01 |~ | MOVEQ.L #0x01,D7
00017204 4a 07 |J | TST.B D7
00017206 67 00 fe fa |g | BEQ 0x17102
0001720a 58 4f |XO | ADDQ.L #0x4,A7
0001720c 20 52 | R | MOVEA.L (A2),A0
0001720e 70 00 |p | MOVEQ.L #0x00,D0
00017210 4a 10 |J | TST.B (A0)
00017212 67 08 |g | BEQ 0x1721c
00017214 22 57 |"W | MOVEA.L (A7),A1
00017216 4a 51 |JQ | TST.W (A1)
00017218 66 02 |f | BNE 0x1721c
0001721a 52 00 |R | ADDQ.B #0x1,D0
0001721c 10 80 | | MOVE.B D0,(A0)
0001721e 58 4f |XO | ADDQ.L #0x4,A7
00017220 4c df 0f e7 |L | MOVEM.L (A7)+,D0+D1+D2+D5+D6+D7+A0+A1+A2+A3
00017224 4e 5e |N^ | UNLK A6
00017226 4e 75 |Nu | RTS
00017228 ; --------------------------------------------------------------------------------------
00017228 ; FSCALL_10440
00017228 ; OMSI PASCAL Function
00017228 ; <LVAR 0x010 4(r)>
00017228 ; <LVAR 0x00c 4(r)>
00017228 ; <LVAR 0x008 4(r)>
00017228 ; <LVAR -0x006 4(rw)>
00017228 ; <LVAR -0x012 4(rw)>
00017228 ; <LVAR -0x017 @>
00017228 ; --------------------------------------------------------------------------------------
00017228 _FSCALL_10440:
00017228 4e 56 ff 94 |NV | LINK.W A6,#0xff94
0001722c bf d5 | | CMPA.L (A5),A7
0001722e 62 06 |b | BHI 0x17236
00017230 44 fc 00 02 |D | MOVE.W #0x2,CCR
00017234 4e 76 |Nv | TRAPV
00017236 de fc 00 50 | P | ADDA.W #0x50,A7
0001723a 48 e7 f7 f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D6+D5+D3+D2+D1+D0,-(A7)
0001723e 47 ee ff ee |G | LEA.L (A6-0x12),A3
00017242 49 ee 00 0c |I | LEA.L (A6+0xc),A4
00017246 72 01 |r | MOVEQ.L #0x01,D1
00017248 74 02 |t | MOVEQ.L #0x02,D2
0001724a 26 3c ff ff 80 00 |&< | MOVE.L #0xffff8000,D3
00017250 20 54 | T | MOVEA.L (A4),A0
00017252 30 10 |0 | MOVE.W (A0),D0
00017254 48 c0 |H | EXTW.L D0
00017256 2d 40 ff fa |-@ | MOVE.L D0,(A6-0x6)
0001725a c0 41 | A | AND.W D1,D0
0001725c 66 0e |f | BNE 0x1726c
0001725e 2f 14 |/ | MOVE.L (A4),-(A7)
00017260 1f 3c 00 0d | < | MOVE.B #0x0d,-(A7)
00017264 4e b9 00 01 0d 66 |N f | JSR _AppendChar(MOD b : String; a : char)
0001726a 5c 4f |\O | ADDQ.L #0x6,A7
0001726c 2f 14 |/ | MOVE.L (A4),-(A7)
0001726e 1f 3c 00 0a | < | MOVE.B #0x0a,-(A7)
00017272 4e b9 00 01 0d 66 |N f | JSR _AppendChar(MOD b : String; a : char)
00017278 5c 4f |\O | ADDQ.L #0x6,A7
0001727a 43 e8 00 02 |C | LEA.L (A0+0x2),A1
0001727e 2f 09 |/ | MOVE.L A1,-(A7)
00017280 2a 1f |* | MOVE.L (A7)+,D5
00017282 30 10 |0 | MOVE.W (A0),D0
00017284 48 c0 |H | EXTW.L D0
00017286 81 c2 | | DIVS.W D2,D0
00017288 48 c0 |H | EXTW.L D0
0001728a 26 80 |& | MOVE.L D0,(A3)
0001728c 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00017290 42 10 |B | CLR.B (A0)
00017292 22 6e 00 10 |"n | MOVEA.L (A6+0x10),A1
00017296 2f 09 |/ | MOVE.L A1,-(A7)
00017298 24 79 00 01 00 26 |$y & | MOVEA.L 0x10026,A2
0001729e b5 ee 00 10 | | CMPA.L (A6+0x10),A2
000172a2 66 06 |f | BNE 0x172aa
000172a4 23 c1 00 01 00 26 |# & | MOVE.L D1,0x10026
000172aa 30 29 00 48 |0) H | MOVE.W (A1+0x48),D0
000172ae b0 69 00 20 | i | CMP.W (A1+0x20),D0
000172b2 6d 06 |m | BLT 0x172ba
000172b4 10 81 | | MOVE.B D1,(A0)
000172b6 60 00 00 ae |` | BRA 0x17366
000172ba 20 57 | W | MOVEA.L (A7),A0
000172bc 30 28 00 4a |0( J | MOVE.W (A0+0x4a),D0
000172c0 48 c0 |H | EXTW.L D0
000172c2 81 c2 | | DIVS.W D2,D0
000172c4 48 c0 |H | EXTW.L D0
000172c6 2e 00 |. | MOVE.L D0,D7
000172c8 2c 3c 00 00 02 00 |,< | MOVE.L #0x200,D6
000172ce 9c 87 | | SUB.L D7,D6
000172d0 bc 93 | | CMP.L (A3),D6
000172d2 6f 02 |o | BLE 0x172d6
000172d4 2c 13 |, | MOVE.L (A3),D6
000172d6 20 57 | W | MOVEA.L (A7),A0
000172d8 2f 2e 00 10 |/. | MOVE.L (A6+0x10),-(A7)
000172dc 30 28 00 48 |0( H | MOVE.W (A0+0x48),D0
000172e0 41 bc 40 00 |A @ | CHK.W #0x4000,D0
000172e4 3f 00 |? | MOVE.W D0,-(A7)
000172e6 0c 87 00 00 01 ff | | CMPI.L #0x000001ff,D7
000172ec 63 02 |c | BLS 0x172f0
000172ee 4e 4f |NO | TRAP #15
000172f0 3f 07 |? | MOVE.W D7,-(A7)
000172f2 53 86 |S | SUBQ.L #0x1,D6
000172f4 0c 86 00 00 01 ff | | CMPI.L #0x000001ff,D6
000172fa 63 02 |c | BLS 0x172fe
000172fc 4e 4f |NO | TRAP #15
000172fe 52 86 |R | ADDQ.L #0x1,D6
00017300 3f 06 |? | MOVE.W D6,-(A7)
00017302 1f 02 | | MOVE.B D2,-(A7)
00017304 2f 05 |/ | MOVE.L D5,-(A7)
00017306 48 6e ff e9 |Hn | PEA.L (A6-0x17)
0001730a 4e b9 00 01 3b b8 |N ; | JSR _WriteFile(file : File; y : W; x : W; a : W; b: B; c: L; d: L)
00017310 de fc 00 14 | | ADDA.W #0x14,A7
00017314 20 06 | | MOVE.L D6,D0
00017316 e3 80 | | ASL.L #0x1,D0
00017318 da 80 | | ADD.L D0,D5
0001731a de 86 | | ADD.L D6,D7
0001731c 0c 87 00 00 02 00 | | CMPI.L #0x00000200,D7
00017322 66 1c |f | BNE 0x17340
00017324 30 28 00 48 |0( H | MOVE.W (A0+0x48),D0
00017328 52 40 |R@ | ADDQ.W #0x1,D0
0001732a 41 bc 40 00 |A @ | CHK.W #0x4000,D0
0001732e 31 40 00 48 |1@ H | MOVE.W D0,(A0+0x48)
00017332 7e 00 |~ | MOVEQ.L #0x00,D7
00017334 b0 68 00 20 | h | CMP.W (A0+0x20),D0
00017338 6d 06 |m | BLT 0x17340
0001733a 22 6e 00 08 |"n | MOVEA.L (A6+0x8),A1
0001733e 12 81 | | MOVE.B D1,(A1)
00017340 9d 93 | | SUB.L D6,(A3)
00017342 22 6e 00 08 |"n | MOVEA.L (A6+0x8),A1
00017346 4a 11 |J | TST.B (A1)
00017348 66 06 |f | BNE 0x17350
0001734a 4a 93 |J | TST.L (A3)
0001734c 66 00 ff 7a |f z | BNE 0x172c8
00017350 20 07 | | MOVE.L D7,D0
00017352 e3 80 | | ASL.L #0x1,D0
00017354 90 83 | | SUB.L D3,D0
00017356 0c 80 00 00 ff ff | | CMPI.L #0x0000ffff,D0
0001735c 63 02 |c | BLS 0x17360
0001735e 4e 4f |NO | TRAP #15
00017360 d0 83 | | ADD.L D3,D0
00017362 31 40 00 4a |1@ J | MOVE.W D0,(A0+0x4a)
00017366 58 4f |XO | ADDQ.L #0x4,A7
00017368 20 54 | T | MOVEA.L (A4),A0
0001736a 20 2e ff fa | . | MOVE.L (A6-0x6),D0
0001736e 90 83 | | SUB.L D3,D0
00017370 0c 80 00 00 ff ff | | CMPI.L #0x0000ffff,D0
00017376 63 02 |c | BLS 0x1737a
00017378 4e 4f |NO | TRAP #15
0001737a d0 83 | | ADD.L D3,D0
0001737c 30 80 |0 | MOVE.W D0,(A0)
0001737e 4c df 1f ef |L | MOVEM.L (A7)+,D0+D1+D2+D3+D5+D6+D7+A0+A1+A2+A3+A4
00017382 4e 5e |N^ | UNLK A6
00017384 4e 75 |Nu | RTS
00017386 ; --------------------------------------------------------------------------------------
00017386 ; FSCALL_10444
00017386 ; OMSI PASCAL Function
00017386 ; <LVAR 0x008 4(r)>
00017386 ; --------------------------------------------------------------------------------------
00017386 _FSCALL_10444:
00017386 4e 56 ff f4 |NV | LINK.W A6,#0xfff4
0001738a bf d5 | | CMPA.L (A5),A7
0001738c 62 06 |b | BHI 0x17394
0001738e 44 fc 00 02 |D | MOVE.W #0x2,CCR
00017392 4e 76 |Nv | TRAPV
00017394 de fc 00 0c | | ADDA.W #0xc,A7
00017398 48 e7 00 80 |H | MOVEM.L A0,-(A7)
0001739c 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
000173a0 42 68 00 48 |Bh H | CLR.W (A0+0x48)
000173a4 42 68 00 4a |Bh J | CLR.W (A0+0x4a)
000173a8 20 79 00 01 00 26 | y & | MOVEA.L 0x10026,A0
000173ae b1 ee 00 08 | | CMPA.L (A6+0x8),A0
000173b2 66 12 |f | BNE 0x173c6
000173b4 4a 79 00 01 00 2a |Jy * | TST.W 0x1002a
000173ba 67 0a |g | BEQ 0x173c6
000173bc 23 fc 00 00 00 01 00 01 |# | MOVE.L #0x1,0x10026
000173c4 00 26 | & |
000173c6 4c df 01 00 |L | MOVEM.L (A7)+,A0
000173ca 4e 5e |N^ | UNLK A6
000173cc 4e 75 |Nu | RTS
000173ce ; --------------------------------------------------------------------------------------
000173ce ; FSCALL_10448
000173ce ; OMSI PASCAL Function
000173ce ; <LVAR 0x008 4(r)>
000173ce ; <LVAR -0x004 @>
000173ce ; <LVAR -0x008 @ 4(r)>
000173ce ; --------------------------------------------------------------------------------------
000173ce _FSCALL_10448:
000173ce 4e 56 ff d0 |NV | LINK.W A6,#0xffd0
000173d2 bf d5 | | CMPA.L (A5),A7
000173d4 62 06 |b | BHI 0x173dc
000173d6 44 fc 00 02 |D | MOVE.W #0x2,CCR
000173da 4e 76 |Nv | TRAPV
000173dc de fc 00 28 | ( | ADDA.W #0x28,A7
000173e0 48 e7 c0 80 |H | MOVEM.L A0+D1+D0,-(A7)
000173e4 72 02 |r | MOVEQ.L #0x02,D1
000173e6 42 ae ff f8 |B | CLR.L (A6-0x8)
000173ea 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
000173ee 2f 2e 00 08 |/. | MOVE.L (A6+0x8),-(A7)
000173f2 30 28 00 48 |0( H | MOVE.W (A0+0x48),D0
000173f6 41 bc 40 00 |A @ | CHK.W #0x4000,D0
000173fa 3f 00 |? | MOVE.W D0,-(A7)
000173fc 30 28 00 4a |0( J | MOVE.W (A0+0x4a),D0
00017400 48 c0 |H | EXTW.L D0
00017402 81 c1 | | DIVS.W D1,D0
00017404 55 4f |UO | SUBQ.L #0x2,A7
00017406 41 bc 01 ff |A | CHK.W #0x1ff,D0
0001740a 3e 80 |> | MOVE.W D0,(A7)
0001740c 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
00017410 1f 01 | | MOVE.B D1,-(A7)
00017412 41 ee ff f8 |A | LEA.L (A6-0x8),A0
00017416 2f 08 |/ | MOVE.L A0,-(A7)
00017418 48 6e ff fc |Hn | PEA.L (A6-0x4)
0001741c 4e b9 00 01 3b b8 |N ; | JSR _WriteFile(file : File; y : W; x : W; a : W; b: B; c: L; d: L)
00017422 de fc 00 14 | | ADDA.W #0x14,A7
00017426 4c df 01 03 |L | MOVEM.L (A7)+,D0+D1+A0
0001742a 4e 5e |N^ | UNLK A6
0001742c 4e 75 |Nu | RTS
0001742e 5c 20 |\ | .TXT '\ '
00017430 49 6c 6c 65 67 61 6c 20 |Illegal | .TXT 'Illegal marker'
0001743e 42 61 64 20 65 72 72 6f |Bad erro| .TXT 'Bad error message file format.'
0001745c 55 6e 6b 6e |Unkn | .TXT 'Unkn'
00017460 6f 77 6e 20 |own | .TXT 'own '
00017464 65 72 72 6f |erro | .TXT 'erro'
00017468 72 20 3a 5f |r :_ | .TXT 'r :_'
0001746c 2c 20 65 72 72 6f 72 20 |, error | .TXT ', error message file :_ '
00017484 ; --------------------------------------------------------------------------------------
00017484 ; OMSI PASCAL Function
00017484 ; <LVAR 0x00c 4(r)>
00017484 ; <LVAR 0x008 4(r)>
00017484 ; <LVAR -0x004 @ 4(rw)>
00017484 ; --------------------------------------------------------------------------------------
00017484 4e 56 ff b6 |NV | LINK.W A6,#0xffb6
00017488 bf d5 | | CMPA.L (A5),A7
0001748a 62 06 |b | BHI 0x17492
0001748c 44 fc 00 02 |D | MOVE.W #0x2,CCR
00017490 4e 76 |Nv | TRAPV
00017492 de fc 00 3e | > | ADDA.W #0x3e,A7
00017496 48 e7 fb e0 |H | MOVEM.L A2+A1+A0+D7+D6+D4+D3+D2+D1+D0,-(A7)
0001749a 43 ee ff fc |C | LEA.L (A6-0x4),A1
0001749e 45 ee 00 0c |E | LEA.L (A6+0xc),A2
000174a2 24 3c ff ff 80 00 |$< | MOVE.L #0xffff8000,D2
000174a8 76 01 |v | MOVEQ.L #0x01,D3
000174aa 78 7d |x} | MOVEQ.L #0x7d,D4
000174ac 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
000174b0 20 83 | | MOVE.L D3,(A0)
000174b2 3f 3a ff 7a |?: z | MOVE.W 0x1742e,-(A7)
000174b6 59 4f |YO | SUBQ.L #0x4,A7
000174b8 48 6f 00 04 |Ho | PEA.L (A7+0x4)
000174bc 3f 03 |? | MOVE.W D3,-(A7)
000174be 3f 3c 00 02 |?< | MOVE.W #0x2,-(A7)
000174c2 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
000174c8 50 4f |PO | ADDQ.L #0x8,A7
000174ca 22 9f |" | MOVE.L (A7)+,(A1)
000174cc 55 4f |UO | SUBQ.L #0x2,A7
000174ce 2f 12 |/ | MOVE.L (A2),-(A7)
000174d0 2f 11 |/ | MOVE.L (A1),-(A7)
000174d2 4e b9 00 01 15 f4 |N | JSR _FSCALL_10300
000174d8 50 4f |PO | ADDQ.L #0x8,A7
000174da 2c 1f |, | MOVE.L (A7)+,D6
000174dc 48 51 |HQ | PEA.L (A1)
000174de 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
000174e4 58 4f |XO | ADDQ.L #0x4,A7
000174e6 4a 86 |J | TST.L D6
000174e8 67 78 |gx | BEQ 0x17562
000174ea 59 4f |YO | SUBQ.L #0x4,A7
000174ec 2f 12 |/ | MOVE.L (A2),-(A7)
000174ee 4e b9 00 01 0e da |N | JSR _StringDup(a : String) : String
000174f4 58 4f |XO | ADDQ.L #0x4,A7
000174f6 20 9f | | MOVE.L (A7)+,(A0)
000174f8 20 50 | P | MOVEA.L (A0),A0
000174fa 20 06 | | MOVE.L D6,D0
000174fc 53 80 |S | SUBQ.L #0x1,D0
000174fe 90 82 | | SUB.L D2,D0
00017500 0c 80 00 00 ff ff | | CMPI.L #0x0000ffff,D0
00017506 63 02 |c | BLS 0x1750a
00017508 4e 4f |NO | TRAP #15
0001750a d0 82 | | ADD.L D2,D0
0001750c 30 80 |0 | MOVE.W D0,(A0)
0001750e 20 52 | R | MOVEA.L (A2),A0
00017510 2f 08 |/ | MOVE.L A0,-(A7)
00017512 20 06 | | MOVE.L D6,D0
00017514 52 80 |R | ADDQ.L #0x1,D0
00017516 32 10 |2 | MOVE.W (A0),D1
00017518 48 c1 |H | EXTW.L D1
0001751a 2f 01 |/ | MOVE.L D1,-(A7)
0001751c 2e 00 |. | MOVE.L D0,D7
0001751e be 97 | | CMP.L (A7),D7
00017520 6e 24 |n$ | BGT 0x17546
00017522 20 07 | | MOVE.L D7,D0
00017524 90 86 | | SUB.L D6,D0
00017526 53 80 |S | SUBQ.L #0x1,D0
00017528 b0 84 | | CMP.L D4,D0
0001752a 63 02 |c | BLS 0x1752e
0001752c 4e 4f |NO | TRAP #15
0001752e 20 6f 00 04 | o | MOVEA.L (A7+0x4),A0
00017532 22 07 |" | MOVE.L D7,D1
00017534 53 81 |S | SUBQ.L #0x1,D1
00017536 b2 84 | | CMP.L D4,D1
00017538 63 02 |c | BLS 0x1753c
0001753a 4e 4f |NO | TRAP #15
0001753c 11 b0 18 02 08 02 | | MOVE.B (A0+D1.L+#0x2),(A0+D0.L+#0x2)
00017542 52 87 |R | ADDQ.L #0x1,D7
00017544 68 d8 |h | BVC 0x1751e
00017546 58 4f |XO | ADDQ.L #0x4,A7
00017548 20 57 | W | MOVEA.L (A7),A0
0001754a 30 10 |0 | MOVE.W (A0),D0
0001754c 48 c0 |H | EXTW.L D0
0001754e 90 86 | | SUB.L D6,D0
00017550 90 82 | | SUB.L D2,D0
00017552 0c 80 00 00 ff ff | | CMPI.L #0x0000ffff,D0
00017558 63 02 |c | BLS 0x1755c
0001755a 4e 4f |NO | TRAP #15
0001755c d0 82 | | ADD.L D2,D0
0001755e 30 80 |0 | MOVE.W D0,(A0)
00017560 58 4f |XO | ADDQ.L #0x4,A7
00017562 4c df 07 df |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D6+D7+A0+A1+A2
00017566 4e 5e |N^ | UNLK A6
00017568 4e 75 |Nu | RTS
0001756a ; --------------------------------------------------------------------------------------
0001756a ; OMSI PASCAL Function
0001756a ; <LVAR 0x00c 4(r)>
0001756a ; <LVAR 0x008 4(r)>
0001756a ; <LVAR -0x004 @ 4(rw)>
0001756a ; <LVAR -0x00a @ 1(r)>
0001756a ; <LVAR -0x012 @ 4(r)>
0001756a ; <LVAR -0x01a @ 4(r)>
0001756a ; --------------------------------------------------------------------------------------
0001756a 4e 56 ff 7e |NV ~ | LINK.W A6,#0xff7e
0001756e bf d5 | | CMPA.L (A5),A7
00017570 62 06 |b | BHI 0x17578
00017572 44 fc 00 02 |D | MOVE.W #0x2,CCR
00017576 4e 76 |Nv | TRAPV
00017578 de fc 00 66 | f | ADDA.W #0x66,A7
0001757c 48 e7 ff f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D6+D5+D4+D3+D2+D1+D0,-(A7)
00017580 43 ee ff fc |C | LEA.L (A6-0x4),A1
00017584 45 ee ff e6 |E | LEA.L (A6-0x1a),A2
00017588 47 ee ff ee |G | LEA.L (A6-0x12),A3
0001758c 74 01 |t | MOVEQ.L #0x01,D2
0001758e 76 0e |v | MOVEQ.L #0x0e,D3
00017590 78 12 |x | MOVEQ.L #0x12,D4
00017592 7c 00 || | MOVEQ.L #0x00,D6
00017594 48 51 |HQ | PEA.L (A1)
00017596 4e b9 00 01 0c fa |N | JSR _NewString(VAR a : String)
0001759c 58 4f |XO | ADDQ.L #0x4,A7
0001759e 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
000175a2 2f 08 |/ | MOVE.L A0,-(A7)
000175a4 30 10 |0 | MOVE.W (A0),D0
000175a6 48 c0 |H | EXTW.L D0
000175a8 2f 00 |/ | MOVE.L D0,-(A7)
000175aa 70 02 |p | MOVEQ.L #0x02,D0
000175ac b0 97 | | CMP.L (A7),D0
000175ae 6f 06 |o | BLE 0x175b6
000175b0 59 4f |YO | SUBQ.L #0x4,A7
000175b2 60 00 00 de |` | BRA 0x17692
000175b6 2f 00 |/ | MOVE.L D0,-(A7)
000175b8 22 00 |" | MOVE.L D0,D1
000175ba 53 81 |S | SUBQ.L #0x1,D1
000175bc 0c 81 00 00 00 7d | } | CMPI.L #0x0000007d,D1
000175c2 63 02 |c | BLS 0x175c6
000175c4 4e 4f |NO | TRAP #15
000175c6 20 6f 00 08 | o | MOVEA.L (A7+0x8),A0
000175ca 1a 30 18 02 | 0 | MOVE.B (A0+D1.L+#0x2),D5
000175ce 0c 05 00 25 | % | CMPI.B #0x25,D5
000175d2 67 18 |g | BEQ 0x175ec
000175d4 4a 06 |J | TST.B D6
000175d6 67 04 |g | BEQ 0x175dc
000175d8 2f 12 |/ | MOVE.L (A2),-(A7)
000175da 60 02 |` | BRA 0x175de
000175dc 2f 11 |/ | MOVE.L (A1),-(A7)
000175de 1f 05 | | MOVE.B D5,-(A7)
000175e0 4e b9 00 01 0d 66 |N f | JSR _AppendChar(MOD b : String; a : char)
000175e6 5c 4f |\O | ADDQ.L #0x6,A7
000175e8 60 00 00 9c |` | BRA 0x17686
000175ec 4a 06 |J | TST.B D6
000175ee 66 0e |f | BNE 0x175fe
000175f0 48 52 |HR | PEA.L (A2)
000175f2 4e b9 00 01 0c fa |N | JSR _NewString(VAR a : String)
000175f8 58 4f |XO | ADDQ.L #0x4,A7
000175fa 60 00 00 86 |` | BRA 0x17682
000175fe 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00017602 b0 c2 | | CMPA.W D2,A0
00017604 66 0a |f | BNE 0x17610
00017606 48 52 |HR | PEA.L (A2)
00017608 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
0001760e 60 e8 |` | BRA 0x175f8
00017610 2f 12 |/ | MOVE.L (A2),-(A7)
00017612 48 6e ff f6 |Hn | PEA.L (A6-0xa)
00017616 48 53 |HS | PEA.L (A3)
00017618 4e b9 00 01 12 7c |N | | JSR _String2Long(src : String; VAR status : Bool; VAR retval : Long)
0001761e de fc 00 0c | | ADDA.W #0xc,A7
00017622 4a 2e ff f6 |J. | TST.B (A6-0xa)
00017626 66 28 |f( | BNE 0x17650
00017628 41 fa fe 14 |A | LEA.L 0x1743e,A0
0001762c 72 06 |r | MOVEQ.L #0x06,D1
0001762e 3f 20 |? | MOVE.W -(A0),-(A7)
00017630 51 c9 ff fc |Q | DBF D1,0x1762e
00017634 59 4f |YO | SUBQ.L #0x4,A7
00017636 48 6f 00 04 |Ho | PEA.L (A7+0x4)
0001763a 3f 02 |? | MOVE.W D2,-(A7)
0001763c 3f 03 |? | MOVE.W D3,-(A7)
0001763e 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00017644 50 4f |PO | ADDQ.L #0x8,A7
00017646 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
0001764c de c4 | | ADDA.W D4,A7
0001764e 60 32 |`2 | BRA 0x17682
00017650 28 48 |(H | MOVEA.L A0,A4
00017652 7e 00 |~ | MOVEQ.L #0x00,D7
00017654 52 87 |R | ADDQ.L #0x1,D7
00017656 be 93 | | CMP.L (A3),D7
00017658 66 1c |f | BNE 0x17676
0001765a 59 4f |YO | SUBQ.L #0x4,A7
0001765c 2f 11 |/ | MOVE.L (A1),-(A7)
0001765e 59 4f |YO | SUBQ.L #0x4,A7
00017660 2f 14 |/ | MOVE.L (A4),-(A7)
00017662 4e b9 00 01 0e da |N | JSR _StringDup(a : String) : String
00017668 58 4f |XO | ADDQ.L #0x4,A7
0001766a 4e b9 00 01 0f 2c |N , | JSR _StringCat2(a, b : String) : String
00017670 50 4f |PO | ADDQ.L #0x8,A7
00017672 22 9f |" | MOVE.L (A7)+,(A1)
00017674 60 04 |` | BRA 0x1767a
00017676 28 6c 00 04 |(l | MOVEA.L (A4+0x4),A4
0001767a b8 c2 | | CMPA.W D2,A4
0001767c 67 04 |g | BEQ 0x17682
0001767e be 93 | | CMP.L (A3),D7
00017680 66 d2 |f | BNE 0x17654
00017682 44 06 |D | NEG.B D6
00017684 52 06 |R | ADDQ.B #0x1,D6
00017686 20 17 | | MOVE.L (A7),D0
00017688 52 80 |R | ADDQ.L #0x1,D0
0001768a 69 06 |i | BVS 0x17692
0001768c 58 4f |XO | ADDQ.L #0x4,A7
0001768e 60 00 ff 1c |` | BRA 0x175ac
00017692 50 4f |PO | ADDQ.L #0x8,A7
00017694 2e 91 |. | MOVE.L (A1),(A7)
00017696 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
0001769c 58 4f |XO | ADDQ.L #0x4,A7
0001769e 4a 06 |J | TST.B D6
000176a0 67 26 |g& | BEQ 0x176c8
000176a2 41 fa fd 9a |A | LEA.L 0x1743e,A0
000176a6 70 06 |p | MOVEQ.L #0x06,D0
000176a8 3f 20 |? | MOVE.W -(A0),-(A7)
000176aa 51 c8 ff fc |Q | DBF D0,0x176a8
000176ae 59 4f |YO | SUBQ.L #0x4,A7
000176b0 48 6f 00 04 |Ho | PEA.L (A7+0x4)
000176b4 3f 02 |? | MOVE.W D2,-(A7)
000176b6 3f 03 |? | MOVE.W D3,-(A7)
000176b8 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
000176be 50 4f |PO | ADDQ.L #0x8,A7
000176c0 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
000176c6 de c4 | | ADDA.W D4,A7
000176c8 4c df 1f ff |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D5+D6+D7+A0+A1+A2+A3+A4
000176cc 4e 5e |N^ | UNLK A6
000176ce 4e 75 |Nu | RTS
000176d0 ; --------------------------------------------------------------------------------------
000176d0 ; WriteErrorMessage(file : String; txt : String; number : Long) : Bool
000176d0 ; Stack:
000176d0 ; A6+0x14 VAR RETURN : Bool
000176d0 ; A6+0x10 file : String
000176d0 ; A6+0xc txt : String
000176d0 ; A6+0x8 number : Long
000176d0 ; OMSI PASCAL Function
000176d0 ; <LVAR 0x010 @ 4(r)>
000176d0 ; <LVAR 0x00c 4(r)>
000176d0 ; <LVAR 0x008 4(r)>
000176d0 ; <LVAR -0x006 @ 4(rw)>
000176d0 ; <LVAR -0x00a @ 4(rw)>
000176d0 ; <LVAR -0x00e 4(rw)>
000176d0 ; <LVAR -0x012 @ 4(r)>
000176d0 ; <LVAR -0x016 @ 4(r)>
000176d0 ; <LVAR -0x01a @ 4(r)>
000176d0 ; <LVAR -0x01b @ 1(r)>
000176d0 ; <LVAR -0x01d @ 1(r)>
000176d0 ; <LVAR -0x022 @ 4(r)>
000176d0 ; <LVAR -0x024 @ 1(r)>
000176d0 ; <LVAR -0x028 @ 4(r)>
000176d0 ; <LVAR -0x02c @ 4(r)>
000176d0 ; --------------------------------------------------------------------------------------
000176d0 _WriteErrorMessage(file : String; txt : String; number : Long) : Bool:
000176d0 4e 56 ff 60 |NV ` | LINK.W A6,#0xff60
000176d4 bf d5 | | CMPA.L (A5),A7
000176d6 62 06 |b | BHI 0x176de
000176d8 44 fc 00 02 |D | MOVE.W #0x2,CCR
000176dc 4e 76 |Nv | TRAPV
000176de de fc 00 74 | t | ADDA.W #0x74,A7
000176e2 48 e7 fb f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D6+D4+D3+D2+D1+D0,-(A7)
000176e6 45 ee ff f2 |E | LEA.L (A6-0xe),A2
000176ea 47 ee ff ee |G | LEA.L (A6-0x12),A3
000176ee 49 f9 00 01 0d a4 |I | LEA.L _StringLit(Src : Pointer; Offset: W; Len : W) : String,A4
000176f4 72 01 |r | MOVEQ.L #0x01,D1
000176f6 74 10 |t | MOVEQ.L #0x10,D2
000176f8 76 14 |v | MOVEQ.L #0x14,D3
000176fa 78 0c |x | MOVEQ.L #0x0c,D4
000176fc 2f 2e 00 10 |/. | MOVE.L (A6+0x10),-(A7)
00017700 42 27 |B' | CLR.B -(A7)
00017702 1f 01 | | MOVE.B D1,-(A7)
00017704 48 78 00 00 |Hx | PEA.L 0x0
00017708 48 6e ff dc |Hn | PEA.L (A6-0x24)
0001770c 48 6e ff de |Hn | PEA.L (A6-0x22)
00017710 4e b9 00 01 38 b4 |N 8 | JSR _OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
00017716 de c3 | | ADDA.W D3,A7
00017718 4a 2e ff dc |J. | TST.B (A6-0x24)
0001771c 67 3c |g< | BEQ 0x1775a
0001771e 2f 3a fd 48 |/: H | MOVE.L 0x17468,-(A7)
00017722 2f 3a fd 40 |/: @ | MOVE.L 0x17464,-(A7)
00017726 2f 3a fd 38 |/: 8 | MOVE.L 0x17460,-(A7)
0001772a 2f 3a fd 30 |/: 0 | MOVE.L 0x1745c,-(A7)
0001772e 51 4f |QO | SUBQ.L #0x8,A7
00017730 48 6f 00 08 |Ho | PEA.L (A7+0x8)
00017734 3f 01 |? | MOVE.W D1,-(A7)
00017736 3f 02 |? | MOVE.W D2,-(A7)
00017738 4e 94 |N | JSR (A4)
0001773a 2e ae 00 08 |. | MOVE.L (A6+0x8),(A7)
0001773e 4e b9 00 01 10 c0 |N | JSR _Long2String(a : Long) : String
00017744 58 4f |XO | ADDQ.L #0x4,A7
00017746 4e b9 00 01 0f 2c |N , | JSR _StringCat2(a, b : String) : String
0001774c 50 4f |PO | ADDQ.L #0x8,A7
0001774e 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
00017754 de c3 | | ADDA.W D3,A7
00017756 60 00 01 fc |` | BRA 0x17954
0001775a 24 81 |$ | MOVE.L D1,(A2)
0001775c 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
00017760 b0 c1 | | CMPA.W D1,A0
00017762 67 62 |gb | BEQ 0x177c6
00017764 59 4f |YO | SUBQ.L #0x4,A7
00017766 2f 08 |/ | MOVE.L A0,-(A7)
00017768 4e b9 00 01 0e da |N | JSR _StringDup(a : String) : String
0001776e 58 4f |XO | ADDQ.L #0x4,A7
00017770 2d 5f ff fa |-_ | MOVE.L (A7)+,(A6-0x6)
00017774 2f 2e ff fa |/. | MOVE.L (A6-0x6),-(A7)
00017778 48 6e ff ea |Hn | PEA.L (A6-0x16)
0001777c 4e ba fd 06 |N | JSR 0x17484
00017780 50 4f |PO | ADDQ.L #0x8,A7
00017782 20 6e ff ea | n | MOVEA.L (A6-0x16),A0
00017786 b0 c1 | | CMPA.W D1,A0
00017788 67 2c |g, | BEQ 0x177b6
0001778a 48 53 |HS | PEA.L (A3)
0001778c 48 78 00 08 |Hx | PEA.L 0x8
00017790 4e b9 00 01 08 56 |N V | JSR _Malloc1(length : Long) : Pointer
00017796 50 4f |PO | ADDQ.L #0x8,A7
00017798 22 53 |"S | MOVEA.L (A3),A1
0001779a 22 88 |" | MOVE.L A0,(A1)
0001779c 23 41 00 04 |#A | MOVE.L D1,(A1+0x4)
000177a0 22 52 |"R | MOVEA.L (A2),A1
000177a2 b2 c1 | | CMPA.W D1,A1
000177a4 66 04 |f | BNE 0x177aa
000177a6 24 93 |$ | MOVE.L (A3),(A2)
000177a8 60 08 |` | BRA 0x177b2
000177aa 22 6e ff f6 |"n | MOVEA.L (A6-0xa),A1
000177ae 23 53 00 04 |#S | MOVE.L (A3),(A1+0x4)
000177b2 2d 53 ff f6 |-S | MOVE.L (A3),(A6-0xa)
000177b6 b0 c1 | | CMPA.W D1,A0
000177b8 66 ba |f | BNE 0x17774
000177ba 48 6e ff fa |Hn | PEA.L (A6-0x6)
000177be 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
000177c4 58 4f |XO | ADDQ.L #0x4,A7
000177c6 7e 00 |~ | MOVEQ.L #0x00,D7
000177c8 7c 00 || | MOVEQ.L #0x00,D6
000177ca 48 6e ff d4 |Hn | PEA.L (A6-0x2c)
000177ce 4e b9 00 01 0c fa |N | JSR _NewString(VAR a : String)
000177d4 58 4f |XO | ADDQ.L #0x4,A7
000177d6 2f 2e ff de |/. | MOVE.L (A6-0x22),-(A7)
000177da 48 6e ff d4 |Hn | PEA.L (A6-0x2c)
000177de 48 6e ff e3 |Hn | PEA.L (A6-0x1d)
000177e2 4e b9 00 01 70 c4 |N p | JSR _FileReadLine(file : File; VAR a : String; VAR b : Byte)
000177e8 de c4 | | ADDA.W D4,A7
000177ea 4a 2e ff e3 |J. | TST.B (A6-0x1d)
000177ee 67 06 |g | BEQ 0x177f6
000177f0 7e 01 |~ | MOVEQ.L #0x01,D7
000177f2 60 00 00 a4 |` | BRA 0x17898
000177f6 20 6e ff d4 | n | MOVEA.L (A6-0x2c),A0
000177fa 10 28 00 02 | ( | MOVE.B (A0+0x2),D0
000177fe 0c 00 00 09 | | CMPI.B #0x09,D0
00017802 66 14 |f | BNE 0x17818
00017804 4a 06 |J | TST.B D6
00017806 67 0c |g | BEQ 0x17814
00017808 2f 2e ff d4 |/. | MOVE.L (A6-0x2c),-(A7)
0001780c 2f 12 |/ | MOVE.L (A2),-(A7)
0001780e 4e ba fd 5a |N Z | JSR 0x1756a
00017812 50 4f |PO | ADDQ.L #0x8,A7
00017814 60 00 00 82 |` | BRA 0x17898
00017818 4a 06 |J | TST.B D6
0001781a 67 02 |g | BEQ 0x1781e
0001781c 60 d2 |` | BRA 0x177f0
0001781e 48 6e ff d8 |Hn | PEA.L (A6-0x28)
00017822 4e b9 00 01 0c fa |N | JSR _NewString(VAR a : String)
00017828 2e ae ff d4 |. | MOVE.L (A6-0x2c),(A7)
0001782c 2f 2e ff d8 |/. | MOVE.L (A6-0x28),-(A7)
00017830 48 6e ff e5 |Hn | PEA.L (A6-0x1b)
00017834 4e b9 00 01 14 ea |N | JSR _FirstField(MOD input : String; MOD output : String; VAR c : Bool
0001783a 50 4f |PO | ADDQ.L #0x8,A7
0001783c 2e ae ff d8 |. | MOVE.L (A6-0x28),(A7)
00017840 48 6e ff e5 |Hn | PEA.L (A6-0x1b)
00017844 48 6e ff e6 |Hn | PEA.L (A6-0x1a)
00017848 4e b9 00 01 12 7c |N | | JSR _String2Long(src : String; VAR status : Bool; VAR retval : Long)
0001784e de c4 | | ADDA.W D4,A7
00017850 4a 2e ff e5 |J. | TST.B (A6-0x1b)
00017854 66 2a |f* | BNE 0x17880
00017856 41 fa fc 04 |A | LEA.L 0x1745c,A0
0001785a 70 0e |p | MOVEQ.L #0x0e,D0
0001785c 3f 20 |? | MOVE.W -(A0),-(A7)
0001785e 51 c8 ff fc |Q | DBF D0,0x1785c
00017862 1f 3c 00 0e | < | MOVE.B #0x0e,-(A7)
00017866 59 4f |YO | SUBQ.L #0x4,A7
00017868 48 6f 00 06 |Ho | PEA.L (A7+0x6)
0001786c 3f 01 |? | MOVE.W D1,-(A7)
0001786e 3f 3c 00 1e |?< | MOVE.W #0x1e,-(A7)
00017872 4e 94 |N | JSR (A4)
00017874 50 4f |PO | ADDQ.L #0x8,A7
00017876 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
0001787c de fc 00 24 | $ | ADDA.W #0x24,A7
00017880 20 2e ff e6 | . | MOVE.L (A6-0x1a),D0
00017884 b0 ae 00 08 | | CMP.L (A6+0x8),D0
00017888 66 0e |f | BNE 0x17898
0001788a 7c 01 || | MOVEQ.L #0x01,D6
0001788c 2f 2e ff d4 |/. | MOVE.L (A6-0x2c),-(A7)
00017890 2f 12 |/ | MOVE.L (A2),-(A7)
00017892 4e ba fc d6 |N | JSR 0x1756a
00017896 50 4f |PO | ADDQ.L #0x8,A7
00017898 4a 07 |J | TST.B D7
0001789a 67 00 ff 3a |g : | BEQ 0x177d6
0001789e 4a 06 |J | TST.B D6
000178a0 66 62 |fb | BNE 0x17904
000178a2 2f 3a fb c4 |/: | MOVE.L 0x17468,-(A7)
000178a6 2f 3a fb bc |/: | MOVE.L 0x17464,-(A7)
000178aa 2f 3a fb b4 |/: | MOVE.L 0x17460,-(A7)
000178ae 2f 3a fb ac |/: | MOVE.L 0x1745c,-(A7)
000178b2 9e fc 00 18 | | SUBA.W #0x18,A7
000178b6 20 4f | O | MOVEA.L A7,A0
000178b8 43 fa fb b2 |C | LEA.L 0x1746c,A1
000178bc 70 16 |p | MOVEQ.L #0x16,D0
000178be 10 d9 | | MOVE.B (A1)+,(A0)+
000178c0 51 c8 ff fc |Q | DBF D0,0x178be
000178c4 51 4f |QO | SUBQ.L #0x8,A7
000178c6 48 6f 00 20 |Ho | PEA.L (A7+0x20)
000178ca 3f 01 |? | MOVE.W D1,-(A7)
000178cc 3f 02 |? | MOVE.W D2,-(A7)
000178ce 4e 94 |N | JSR (A4)
000178d0 2e ae 00 08 |. | MOVE.L (A6+0x8),(A7)
000178d4 4e b9 00 01 10 c0 |N | JSR _Long2String(a : Long) : String
000178da 48 6f 00 10 |Ho | PEA.L (A7+0x10)
000178de 3f 01 |? | MOVE.W D1,-(A7)
000178e0 3f 3c 00 17 |?< | MOVE.W #0x17,-(A7)
000178e4 4e 94 |N | JSR (A4)
000178e6 2e ae 00 10 |. | MOVE.L (A6+0x10),(A7)
000178ea 4e b9 00 01 0e da |N | JSR _StringDup(a : String) : String
000178f0 58 4f |XO | ADDQ.L #0x4,A7
000178f2 4e b9 00 01 10 00 |N | JSR _StringCat4(a, b, c, d : String) : String
000178f8 de c2 | | ADDA.W D2,A7
000178fa 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
00017900 de fc 00 2c | , | ADDA.W #0x2c,A7
00017904 42 27 |B' | CLR.B -(A7)
00017906 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
0001790a 48 78 00 01 |Hx | PEA.L 0x1
0001790e 48 6e ff dc |Hn | PEA.L (A6-0x24)
00017912 48 6e ff de |Hn | PEA.L (A6-0x22)
00017916 4e b9 00 01 3c 8a |N < | JSR _CloseFile(a : L; VAR status : B; VAR file : File)
0001791c de c2 | | ADDA.W D2,A7
0001791e 48 6e ff d4 |Hn | PEA.L (A6-0x2c)
00017922 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
00017928 58 4f |XO | ADDQ.L #0x4,A7
0001792a 20 52 | R | MOVEA.L (A2),A0
0001792c b0 c1 | | CMPA.W D1,A0
0001792e 67 24 |g$ | BEQ 0x17954
00017930 48 50 |HP | PEA.L (A0)
00017932 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
00017938 58 4f |XO | ADDQ.L #0x4,A7
0001793a 2d 48 ff f6 |-H | MOVE.L A0,(A6-0xa)
0001793e 24 a8 00 04 |$ | MOVE.L (A0+0x4),(A2)
00017942 48 6e ff f6 |Hn | PEA.L (A6-0xa)
00017946 48 78 00 08 |Hx | PEA.L 0x8
0001794a 4e b9 00 01 08 fa |N | JSR _Free2(a : Pointer; b : Long)
00017950 50 4f |PO | ADDQ.L #0x8,A7
00017952 60 d6 |` | BRA 0x1792a
00017954 48 6e 00 10 |Hn | PEA.L (A6+0x10)
00017958 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
0001795e 58 4f |XO | ADDQ.L #0x4,A7
00017960 4c df 1f df |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D6+D7+A0+A1+A2+A3+A4
00017964 4e 5e |N^ | UNLK A6
00017966 4e 75 |Nu | RTS
00017968 ; --------------------------------------------------------------------------------------
00017968 ; FS_10450(&, &)
00017968 ; OMSI PASCAL Function
00017968 ; <LVAR 0x00c 4(r)>
00017968 ; <LVAR 0x008 4(r)>
00017968 ; --------------------------------------------------------------------------------------
00017968 _FS_10450(&, &):
00017968 4e 56 ff f0 |NV | LINK.W A6,#0xfff0
0001796c bf d5 | | CMPA.L (A5),A7
0001796e 62 06 |b | BHI 0x17976
00017970 44 fc 00 02 |D | MOVE.W #0x2,CCR
00017974 4e 76 |Nv | TRAPV
00017976 de fc 00 10 | | ADDA.W #0x10,A7
0001797a 2f 2e 00 0c |/. | MOVE.L (A6+0xc),-(A7)
0001797e 48 78 00 01 |Hx | PEA.L 0x1
00017982 2f 2e 00 08 |/. | MOVE.L (A6+0x8),-(A7)
00017986 4e ba fd 48 |N H | JSR _WriteErrorMessage(file : String; txt : String; number : Long) : Bool
0001798a de fc 00 0c | | ADDA.W #0xc,A7
0001798e 4e 5e |N^ | UNLK A6
00017990 4e 75 |Nu | RTS
00017992 44 69 72 65 63 74 6f 72 |Director| .TXT 'Directory read error! '
000179a8 44 69 72 65 63 74 6f 72 |Director| .TXT 'Directory read error'
000179bc 00 01 00 01 | | .XXX[0x4]
000179c0 00 01 | | .XXX[0x2]
000179c2 ; --------------------------------------------------------------------------------------
000179c2 ; Glob(input : String; pattern : String): Bool
000179c2 ; Stack:
000179c2 ; A6+0x10 VAR RETURN : Bool
000179c2 ; A6+0xc input : String
000179c2 ; A6+0x8 pattern : String
000179c2 ; OMSI PASCAL Function
000179c2 ; <LVAR 0x010 1(rw)>
000179c2 ; <LVAR 0x00c 4(r)>
000179c2 ; <LVAR 0x008 4(r)>
000179c2 ; <LVAR -0x002 1(w)>
000179c2 ; <LVAR -0x008 2(rw)>
000179c2 ; <LVAR -0x00a 2(rw)>
000179c2 ; <LVAR -0x010 4(w)>
000179c2 ; <LVAR -0x014 4(w)>
000179c2 ; <LVAR -0x018 2(rw)>
000179c2 ; <LVAR -0x01a 2(rw)>
000179c2 ; <LVAR -0x01c @ 2(rw)>
000179c2 ; <LVAR -0x09c @>
000179c2 ; --------------------------------------------------------------------------------------
000179c2 _Glob(input : String; pattern : String): Bool:
000179c2 4e 56 ff 14 |NV | LINK.W A6,#0xff14
000179c6 bf d5 | | CMPA.L (A5),A7
000179c8 62 06 |b | BHI 0x179d0
000179ca 44 fc 00 02 |D | MOVE.W #0x2,CCR
000179ce 4e 76 |Nv | TRAPV
000179d0 de fc 00 50 | P | ADDA.W #0x50,A7
000179d4 48 e7 ff f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D6+D5+D4+D3+D2+D1+D0,-(A7)
000179d8 47 ee ff e8 |G | LEA.L (A6-0x18),A3
000179dc 49 ee ff e4 |I | LEA.L (A6-0x1c),A4
000179e0 28 3c 00 00 ff ff |(< | MOVE.L #0xffff,D4
000179e6 7c 00 || | MOVEQ.L #0x00,D6
000179e8 7e 00 |~ | MOVEQ.L #0x00,D7
000179ea 38 ba ff d0 |8 | MOVE.W 0x179bc,(A4)
000179ee 3d 7a ff ce ff e6 |=z | MOVE.W 0x179be,(A6-0x1a)
000179f4 36 ba ff ca |6 | MOVE.W 0x179c0,(A3)
000179f8 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
000179fc 30 10 |0 | MOVE.W (A0),D0
000179fe b0 44 | D | CMP.W D4,D0
00017a00 63 02 |c | BLS 0x17a04
00017a02 4e 4f |NO | TRAP #15
00017a04 3d 40 ff f6 |=@ | MOVE.W D0,(A6-0xa)
00017a08 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00017a0c 30 10 |0 | MOVE.W (A0),D0
00017a0e b0 44 | D | CMP.W D4,D0
00017a10 63 02 |c | BLS 0x17a14
00017a12 4e 4f |NO | TRAP #15
00017a14 3d 40 ff f8 |=@ | MOVE.W D0,(A6-0x8)
00017a18 4a 07 |J | TST.B D7
00017a1a 66 00 01 ac |f | BNE 0x17bc8
00017a1e 42 80 |B | CLR.L D0
00017a20 30 2e ff f6 |0. | MOVE.W (A6-0xa),D0
00017a24 52 80 |R | ADDQ.L #0x1,D0
00017a26 42 81 |B | CLR.L D1
00017a28 32 14 |2 | MOVE.W (A4),D1
00017a2a 44 81 |D | NEG.L D1
00017a2c d2 80 | | ADD.L D0,D1
00017a2e 2d 41 ff ec |-A | MOVE.L D1,(A6-0x14)
00017a32 42 82 |B | CLR.L D2
00017a34 34 2e ff f8 |4. | MOVE.W (A6-0x8),D2
00017a38 52 82 |R | ADDQ.L #0x1,D2
00017a3a 42 83 |B | CLR.L D3
00017a3c 36 2e ff e6 |6. | MOVE.W (A6-0x1a),D3
00017a40 44 83 |D | NEG.L D3
00017a42 d6 82 | | ADD.L D2,D3
00017a44 2d 43 ff f0 |-C | MOVE.L D3,(A6-0x10)
00017a48 4a 83 |J | TST.L D3
00017a4a 66 0e |f | BNE 0x17a5a
00017a4c 4a 81 |J | TST.L D1
00017a4e 66 04 |f | BNE 0x17a54
00017a50 7e 04 |~ | MOVEQ.L #0x04,D7
00017a52 60 02 |` | BRA 0x17a56
00017a54 7e 01 |~ | MOVEQ.L #0x01,D7
00017a56 60 00 00 c2 |` | BRA 0x17b1a
00017a5a 36 bc 00 01 |6 | MOVE.W #0x1,(A3)
00017a5e 7e 01 |~ | MOVEQ.L #0x01,D7
00017a60 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00017a64 42 82 |B | CLR.L D2
00017a66 34 2e ff e6 |4. | MOVE.W (A6-0x1a),D2
00017a6a 53 82 |S | SUBQ.L #0x1,D2
00017a6c 0c 82 00 00 00 7d | } | CMPI.L #0x0000007d,D2
00017a72 63 02 |c | BLS 0x17a76
00017a74 4e 4f |NO | TRAP #15
00017a76 16 30 28 02 | 0( | MOVE.B (A0+D2.L+#0x2),D3
00017a7a 0c 03 00 2a | * | CMPI.B #0x2a,D3
00017a7e 66 16 |f | BNE 0x17a96
00017a80 42 81 |B | CLR.L D1
00017a82 32 14 |2 | MOVE.W (A4),D1
00017a84 44 81 |D | NEG.L D1
00017a86 d2 80 | | ADD.L D0,D1
00017a88 b2 84 | | CMP.L D4,D1
00017a8a 63 02 |c | BLS 0x17a8e
00017a8c 4e 4f |NO | TRAP #15
00017a8e 36 81 |6 | MOVE.W D1,(A3)
00017a90 7e 02 |~ | MOVEQ.L #0x02,D7
00017a92 60 00 00 86 |` | BRA 0x17b1a
00017a96 0c 03 00 2d | - | CMPI.B #0x2d,D3
00017a9a 66 50 |fP | BNE 0x17aec
00017a9c 42 53 |BS | CLR.W (A3)
00017a9e 42 80 |B | CLR.L D0
00017aa0 30 14 |0 | MOVE.W (A4),D0
00017aa2 2a 00 |* | MOVE.L D0,D5
00017aa4 70 00 |p | MOVEQ.L #0x00,D0
00017aa6 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
00017aaa 22 05 |" | MOVE.L D5,D1
00017aac 53 81 |S | SUBQ.L #0x1,D1
00017aae 0c 81 00 00 00 7d | } | CMPI.L #0x0000007d,D1
00017ab4 63 02 |c | BLS 0x17ab8
00017ab6 4e 4f |NO | TRAP #15
00017ab8 12 30 18 02 | 0 | MOVE.B (A0+D1.L+#0x2),D1
00017abc 0c 01 00 2e | . | CMPI.B #0x2e,D1
00017ac0 66 02 |f | BNE 0x17ac4
00017ac2 52 00 |R | ADDQ.B #0x1,D0
00017ac4 1d 40 ff fe | @ | MOVE.B D0,(A6-0x2)
00017ac8 4a 00 |J | TST.B D0
00017aca 66 0e |f | BNE 0x17ada
00017acc 42 81 |B | CLR.L D1
00017ace 32 13 |2 | MOVE.W (A3),D1
00017ad0 52 81 |R | ADDQ.L #0x1,D1
00017ad2 b2 84 | | CMP.L D4,D1
00017ad4 63 02 |c | BLS 0x17ad8
00017ad6 4e 4f |NO | TRAP #15
00017ad8 36 81 |6 | MOVE.W D1,(A3)
00017ada 52 85 |R | ADDQ.L #0x1,D5
00017adc 42 81 |B | CLR.L D1
00017ade 32 2e ff f6 |2. | MOVE.W (A6-0xa),D1
00017ae2 ba 81 | | CMP.L D1,D5
00017ae4 62 04 |b | BHI 0x17aea
00017ae6 4a 00 |J | TST.B D0
00017ae8 67 ba |g | BEQ 0x17aa4
00017aea 60 a4 |` | BRA 0x17a90
00017aec 0c 03 00 26 | & | CMPI.B #0x26,D3
00017af0 66 08 |f | BNE 0x17afa
00017af2 4a 81 |J | TST.L D1
00017af4 6f 02 |o | BLE 0x17af8
00017af6 7e 00 |~ | MOVEQ.L #0x00,D7
00017af8 60 20 |` | BRA 0x17b1a
00017afa 4a 81 |J | TST.L D1
00017afc 6f 1c |o | BLE 0x17b1a
00017afe 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
00017b02 42 80 |B | CLR.L D0
00017b04 30 14 |0 | MOVE.W (A4),D0
00017b06 53 80 |S | SUBQ.L #0x1,D0
00017b08 0c 80 00 00 00 7d | } | CMPI.L #0x0000007d,D0
00017b0e 63 02 |c | BLS 0x17b12
00017b10 4e 4f |NO | TRAP #15
00017b12 b6 30 08 02 | 0 | CMP.B (A0+D0.L+#0x2),D3
00017b16 66 02 |f | BNE 0x17b1a
00017b18 7e 00 |~ | MOVEQ.L #0x00,D7
00017b1a 0c 07 00 02 | | CMPI.B #0x02,D7
00017b1e 66 2a |f* | BNE 0x17b4a
00017b20 42 80 |B | CLR.L D0
00017b22 30 06 |0 | MOVE.W D6,D0
00017b24 52 80 |R | ADDQ.L #0x1,D0
00017b26 b0 84 | | CMP.L D4,D0
00017b28 63 02 |c | BLS 0x17b2c
00017b2a 4e 4f |NO | TRAP #15
00017b2c 3c 00 |< | MOVE.W D0,D6
00017b2e 4d bc 00 14 |M | CHK.W #0x14,D6
00017b32 70 06 |p | MOVEQ.L #0x06,D0
00017b34 c0 c6 | | MULU.W D6,D0
00017b36 41 ee ff 64 |A d | LEA.L (A6-0x9c),A0
00017b3a 41 f0 08 00 |A | LEA.L (A0+D0.L),A0
00017b3e 22 4c |"L | MOVEA.L A4,A1
00017b40 70 05 |p | MOVEQ.L #0x05,D0
00017b42 10 d9 | | MOVE.B (A1)+,(A0)+
00017b44 51 c8 ff fc |Q | DBF D0,0x17b42
00017b48 7e 00 |~ | MOVEQ.L #0x00,D7
00017b4a 0c 07 00 01 | | CMPI.B #0x01,D7
00017b4e 66 4c |fL | BNE 0x17b9c
00017b50 4d bc 00 14 |M | CHK.W #0x14,D6
00017b54 70 06 |p | MOVEQ.L #0x06,D0
00017b56 c0 c6 | | MULU.W D6,D0
00017b58 41 ee ff 64 |A d | LEA.L (A6-0x9c),A0
00017b5c 22 4c |"L | MOVEA.L A4,A1
00017b5e 45 f0 08 00 |E | LEA.L (A0+D0.L),A2
00017b62 72 05 |r | MOVEQ.L #0x05,D1
00017b64 12 da | | MOVE.B (A2)+,(A1)+
00017b66 51 c9 ff fc |Q | DBF D1,0x17b64
00017b6a 4a 46 |JF | TST.W D6
00017b6c 66 04 |f | BNE 0x17b72
00017b6e 7e 03 |~ | MOVEQ.L #0x03,D7
00017b70 60 28 |`( | BRA 0x17b9a
00017b72 4a 53 |JS | TST.W (A3)
00017b74 66 10 |f | BNE 0x17b86
00017b76 42 80 |B | CLR.L D0
00017b78 30 06 |0 | MOVE.W D6,D0
00017b7a 53 80 |S | SUBQ.L #0x1,D0
00017b7c b0 84 | | CMP.L D4,D0
00017b7e 63 02 |c | BLS 0x17b82
00017b80 4e 4f |NO | TRAP #15
00017b82 3c 00 |< | MOVE.W D0,D6
00017b84 60 12 |` | BRA 0x17b98
00017b86 42 81 |B | CLR.L D1
00017b88 32 13 |2 | MOVE.W (A3),D1
00017b8a 53 81 |S | SUBQ.L #0x1,D1
00017b8c b2 84 | | CMP.L D4,D1
00017b8e 63 02 |c | BLS 0x17b92
00017b90 4e 4f |NO | TRAP #15
00017b92 36 81 |6 | MOVE.W D1,(A3)
00017b94 31 81 08 04 |1 | MOVE.W D1,(A0+D0.L+#0x4)
00017b98 7e 00 |~ | MOVEQ.L #0x00,D7
00017b9a 60 ae |` | BRA 0x17b4a
00017b9c 4a 07 |J | TST.B D7
00017b9e 66 24 |f$ | BNE 0x17bc4
00017ba0 42 80 |B | CLR.L D0
00017ba2 30 14 |0 | MOVE.W (A4),D0
00017ba4 42 81 |B | CLR.L D1
00017ba6 32 13 |2 | MOVE.W (A3),D1
00017ba8 d2 80 | | ADD.L D0,D1
00017baa b2 84 | | CMP.L D4,D1
00017bac 63 02 |c | BLS 0x17bb0
00017bae 4e 4f |NO | TRAP #15
00017bb0 38 81 |8 | MOVE.W D1,(A4)
00017bb2 42 80 |B | CLR.L D0
00017bb4 30 2e ff e6 |0. | MOVE.W (A6-0x1a),D0
00017bb8 52 80 |R | ADDQ.L #0x1,D0
00017bba b0 84 | | CMP.L D4,D0
00017bbc 63 02 |c | BLS 0x17bc0
00017bbe 4e 4f |NO | TRAP #15
00017bc0 3d 40 ff e6 |=@ | MOVE.W D0,(A6-0x1a)
00017bc4 60 00 fe 52 |` R | BRA 0x17a18
00017bc8 42 2e 00 10 |B. | CLR.B (A6+0x10)
00017bcc 0c 07 00 04 | | CMPI.B #0x04,D7
00017bd0 66 04 |f | BNE 0x17bd6
00017bd2 52 2e 00 10 |R. | ADDQ.B #0x1,(A6+0x10)
00017bd6 4c df 1f ff |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D5+D6+D7+A0+A1+A2+A3+A4
00017bda 4e 5e |N^ | UNLK A6
00017bdc 4e 75 |Nu | RTS
00017bde ; --------------------------------------------------------------------------------------
00017bde ; OMSI PASCAL Function
00017bde ; <LVAR 0x00c 1(rw)>
00017bde ; <LVAR 0x008 4(r)>
00017bde ; --------------------------------------------------------------------------------------
00017bde 4e 56 ff d6 |NV | LINK.W A6,#0xffd6
00017be2 bf d5 | | CMPA.L (A5),A7
00017be4 62 06 |b | BHI 0x17bec
00017be6 44 fc 00 02 |D | MOVE.W #0x2,CCR
00017bea 4e 76 |Nv | TRAPV
00017bec de fc 00 26 | & | ADDA.W #0x26,A7
00017bf0 48 e7 c1 80 |H | MOVEM.L A0+D7+D1+D0,-(A7)
00017bf4 1d 7c 00 01 00 0c | | | MOVE.B #0x01,(A6+0xc)
00017bfa 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00017bfe 2f 08 |/ | MOVE.L A0,-(A7)
00017c00 30 10 |0 | MOVE.W (A0),D0
00017c02 48 c0 |H | EXTW.L D0
00017c04 2f 00 |/ | MOVE.L D0,-(A7)
00017c06 7e 01 |~ | MOVEQ.L #0x01,D7
00017c08 be 97 | | CMP.L (A7),D7
00017c0a 6e 30 |n0 | BGT 0x17c3c
00017c0c 20 07 | | MOVE.L D7,D0
00017c0e 53 80 |S | SUBQ.L #0x1,D0
00017c10 0c 80 00 00 00 7d | } | CMPI.L #0x0000007d,D0
00017c16 63 02 |c | BLS 0x17c1a
00017c18 4e 4f |NO | TRAP #15
00017c1a 20 6f 00 04 | o | MOVEA.L (A7+0x4),A0
00017c1e 12 30 08 02 | 0 | MOVE.B (A0+D0.L+#0x2),D1
00017c22 0c 01 00 2a | * | CMPI.B #0x2a,D1
00017c26 67 0c |g | BEQ 0x17c34
00017c28 0c 01 00 26 | & | CMPI.B #0x26,D1
00017c2c 67 06 |g | BEQ 0x17c34
00017c2e 0c 01 00 2d | - | CMPI.B #0x2d,D1
00017c32 66 04 |f | BNE 0x17c38
00017c34 50 4f |PO | ADDQ.L #0x8,A7
00017c36 60 0a |` | BRA 0x17c42
00017c38 52 87 |R | ADDQ.L #0x1,D7
00017c3a 68 cc |h | BVC 0x17c08
00017c3c 50 4f |PO | ADDQ.L #0x8,A7
00017c3e 42 2e 00 0c |B. | CLR.B (A6+0xc)
00017c42 4c df 01 83 |L | MOVEM.L (A7)+,D0+D1+D7+A0
00017c46 4e 5e |N^ | UNLK A6
00017c48 4e 75 |Nu | RTS
00017c4a ; --------------------------------------------------------------------------------------
00017c4a ; OMSI PASCAL Function
00017c4a ; <LVAR -0x004 @ 1(r)>
00017c4a ; --------------------------------------------------------------------------------------
00017c4a 4e 56 ff b4 |NV | LINK.W A6,#0xffb4
00017c4e bf d5 | | CMPA.L (A5),A7
00017c50 62 06 |b | BHI 0x17c58
00017c52 44 fc 00 02 |D | MOVE.W #0x2,CCR
00017c56 4e 76 |Nv | TRAPV
00017c58 de fc 00 48 | H | ADDA.W #0x48,A7
00017c5c 48 e7 f9 c0 |H | MOVEM.L A1+A0+D7+D4+D3+D2+D1+D0,-(A7)
00017c60 74 01 |t | MOVEQ.L #0x01,D2
00017c62 28 39 00 02 00 fc |(9 | MOVE.L file_ERROR_LOG,D4
00017c68 26 3c 00 00 01 00 |&< | MOVE.L #0x100,D3
00017c6e 4e b9 00 01 08 0a |N | JSR _?divs_d3_d4
00017c74 0c 84 00 00 00 07 | | CMPI.L #0x00000007,D4
00017c7a 63 02 |c | BLS 0x17c7e
00017c7c 4e 4f |NO | TRAP #15
00017c7e e3 84 | | ASL.L #0x1,D4
00017c80 41 f8 00 00 |A | LEA.L 0x0,A0
00017c84 d1 fc 00 01 00 0e | | ADDA.L #superblock_sector,A0
00017c8a 42 80 |B | CLR.L D0
00017c8c 30 30 48 04 |00H | MOVE.W (A0+D4.L+#0x4),D0
00017c90 d6 80 | | ADD.L D0,D3
00017c92 0c 83 00 00 ff ff | | CMPI.L #0x0000ffff,D3
00017c98 63 02 |c | BLS 0x17c9c
00017c9a 4e 4f |NO | TRAP #15
00017c9c 3e 03 |> | MOVE.W D3,D7
00017c9e 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
00017ca2 3f 07 |? | MOVE.W D7,-(A7)
00017ca4 48 78 00 01 |Hx | PEA.L 0x1
00017ca8 20 79 00 02 00 f6 | y | MOVEA.L 0x200f6,A0
00017cae 30 39 00 02 01 04 |09 | MOVE.W 0x20104,D0
00017cb4 41 bc 00 03 |A | CHK.W #0x3,D0
00017cb8 42 81 |B | CLR.L D1
00017cba 32 00 |2 | MOVE.W D0,D1
00017cbc e1 81 | | ASL.L #0x8,D1
00017cbe e5 81 | | ASL.L #0x2,D1
00017cc0 41 f0 18 00 |A | LEA.L (A0+D1.L),A0
00017cc4 2f 08 |/ | MOVE.L A0,-(A7)
00017cc6 48 6e ff fc |Hn | PEA.L (A6-0x4)
00017cca 4e b9 00 01 27 c4 |N ' | JSR _RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
00017cd0 de fc 00 10 | | ADDA.W #0x10,A7
00017cd4 4a 2e ff fc |J. | TST.B (A6-0x4)
00017cd8 66 32 |f2 | BNE 0x17d0c
00017cda 9e fc 00 16 | | SUBA.W #0x16,A7
00017cde 20 4f | O | MOVEA.L A7,A0
00017ce0 43 fa fc b0 |C | LEA.L 0x17992,A1
00017ce4 70 14 |p | MOVEQ.L #0x14,D0
00017ce6 10 d9 | | MOVE.B (A1)+,(A0)+
00017ce8 51 c8 ff fc |Q | DBF D0,0x17ce6
00017cec 1f 02 | | MOVE.B D2,-(A7)
00017cee 59 4f |YO | SUBQ.L #0x4,A7
00017cf0 48 6f 00 06 |Ho | PEA.L (A7+0x6)
00017cf4 3f 02 |? | MOVE.W D2,-(A7)
00017cf6 3f 3c 00 15 |?< | MOVE.W #0x15,-(A7)
00017cfa 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00017d00 50 4f |PO | ADDQ.L #0x8,A7
00017d02 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
00017d08 de fc 00 1c | | ADDA.W #0x1c,A7
00017d0c 53 b9 00 02 01 00 |S | SUBQ.L #0x1,0x20100
00017d12 4c df 03 9f |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D7+A0+A1
00017d16 4e 5e |N^ | UNLK A6
00017d18 4e 75 |Nu | RTS
00017d1a ; --------------------------------------------------------------------------------------
00017d1a ; OMSI PASCAL Function
00017d1a ; <LVAR -0x004 @ 1(r)>
00017d1a ; --------------------------------------------------------------------------------------
00017d1a 4e 56 ff ae |NV | LINK.W A6,#0xffae
00017d1e bf d5 | | CMPA.L (A5),A7
00017d20 62 06 |b | BHI 0x17d28
00017d22 44 fc 00 02 |D | MOVE.W #0x2,CCR
00017d26 4e 76 |Nv | TRAPV
00017d28 de fc 00 4a | J | ADDA.W #0x4a,A7
00017d2c 48 e7 ff 80 |H | MOVEM.L A0+D7+D6+D5+D4+D3+D2+D1+D0,-(A7)
00017d30 74 0f |t | MOVEQ.L #0x0f,D2
00017d32 2a 3c 00 00 08 00 |*< | MOVE.L #0x800,D5
00017d38 52 b9 00 02 01 00 |R | ADDQ.L #0x1,0x20100
00017d3e 20 39 00 02 01 00 | 9 | MOVE.L 0x20100,D0
00017d44 b0 82 | | CMP.L D2,D0
00017d46 6f 00 00 fa |o | BLE 0x17e42
00017d4a 52 b9 00 02 00 fc |R | ADDQ.L #0x1,file_ERROR_LOG
00017d50 42 80 |B | CLR.L D0
00017d52 30 39 00 02 01 04 |09 | MOVE.W 0x20104,D0
00017d58 52 80 |R | ADDQ.L #0x1,D0
00017d5a 0c 80 00 00 ff ff | | CMPI.L #0x0000ffff,D0
00017d60 63 02 |c | BLS 0x17d64
00017d62 4e 4f |NO | TRAP #15
00017d64 33 c0 00 02 01 04 |3 | MOVE.W D0,0x20104
00017d6a 42 b9 00 02 01 00 |B | CLR.L 0x20100
00017d70 20 39 00 02 00 fc | 9 | MOVE.L file_ERROR_LOG,D0
00017d76 b0 85 | | CMP.L D5,D0
00017d78 6d 04 |m | BLT 0x17d7e
00017d7a 60 00 01 08 |` | BRA 0x17e84
00017d7e 30 39 00 02 01 04 |09 | MOVE.W 0x20104,D0
00017d84 b0 79 00 02 01 06 | y | CMP.W 0x20106,D0
00017d8a 65 00 00 b6 |e | BCS 0x17e42
00017d8e 42 80 |B | CLR.L D0
00017d90 30 39 00 02 01 06 |09 | MOVE.W 0x20106,D0
00017d96 22 39 00 02 00 fc |"9 | MOVE.L file_ERROR_LOG,D1
00017d9c d2 80 | | ADD.L D0,D1
00017d9e b2 85 | | CMP.L D5,D1
00017da0 6f 0a |o | BLE 0x17dac
00017da2 2e 05 |. | MOVE.L D5,D7
00017da4 9e b9 00 02 00 fc | | SUB.L file_ERROR_LOG,D7
00017daa 60 02 |` | BRA 0x17dae
00017dac 2e 00 |. | MOVE.L D0,D7
00017dae 28 39 00 02 00 fc |(9 | MOVE.L file_ERROR_LOG,D4
00017db4 26 3c 00 00 01 00 |&< | MOVE.L #0x100,D3
00017dba 4e b9 00 01 08 0a |N | JSR _?divs_d3_d4
00017dc0 0c 84 00 00 00 07 | | CMPI.L #0x00000007,D4
00017dc6 63 02 |c | BLS 0x17dca
00017dc8 4e 4f |NO | TRAP #15
00017dca e3 84 | | ASL.L #0x1,D4
00017dcc 41 f8 00 00 |A | LEA.L 0x0,A0
00017dd0 d1 fc 00 01 00 0e | | ADDA.L #superblock_sector,A0
00017dd6 42 80 |B | CLR.L D0
00017dd8 30 30 48 04 |00H | MOVE.W (A0+D4.L+#0x4),D0
00017ddc d6 80 | | ADD.L D0,D3
00017dde 0c 83 00 00 ff ff | | CMPI.L #0x0000ffff,D3
00017de4 63 02 |c | BLS 0x17de8
00017de6 4e 4f |NO | TRAP #15
00017de8 3c 03 |< | MOVE.W D3,D6
00017dea 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
00017dee 3f 06 |? | MOVE.W D6,-(A7)
00017df0 2f 07 |/ | MOVE.L D7,-(A7)
00017df2 2f 39 00 02 00 f6 |/9 | MOVE.L 0x200f6,-(A7)
00017df8 48 6e ff fc |Hn | PEA.L (A6-0x4)
00017dfc 4e b9 00 01 27 c4 |N ' | JSR _RW_Sectors(oper : B; lba : Word; cnt : L; ptr : Pointer; VAR status : B)
00017e02 de fc 00 10 | | ADDA.W #0x10,A7
00017e06 4a 2e ff fc |J. | TST.B (A6-0x4)
00017e0a 66 30 |f0 | BNE 0x17e3c
00017e0c 41 fa fb ae |A | LEA.L 0x179bc,A0
00017e10 70 04 |p | MOVEQ.L #0x04,D0
00017e12 2f 20 |/ | MOVE.L -(A0),-(A7)
00017e14 51 c8 ff fc |Q | DBF D0,0x17e12
00017e18 1f 3c 00 01 | < | MOVE.B #0x01,-(A7)
00017e1c 59 4f |YO | SUBQ.L #0x4,A7
00017e1e 48 6f 00 06 |Ho | PEA.L (A7+0x6)
00017e22 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
00017e26 3f 3c 00 14 |?< | MOVE.W #0x14,-(A7)
00017e2a 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00017e30 50 4f |PO | ADDQ.L #0x8,A7
00017e32 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
00017e38 de fc 00 1a | | ADDA.W #0x1a,A7
00017e3c 42 79 00 02 01 04 |By | CLR.W 0x20104
00017e42 20 79 00 02 00 f6 | y | MOVEA.L 0x200f6,A0
00017e48 30 39 00 02 01 04 |09 | MOVE.W 0x20104,D0
00017e4e 41 bc 00 03 |A | CHK.W #0x3,D0
00017e52 42 81 |B | CLR.L D1
00017e54 32 00 |2 | MOVE.W D0,D1
00017e56 e1 81 | | ASL.L #0x8,D1
00017e58 e5 81 | | ASL.L #0x2,D1
00017e5a 20 39 00 02 01 00 | 9 | MOVE.L 0x20100,D0
00017e60 b0 82 | | CMP.L D2,D0
00017e62 63 02 |c | BLS 0x17e66
00017e64 4e 4f |NO | TRAP #15
00017e66 ed 80 | | ASL.L #0x6,D0
00017e68 41 f0 18 00 |A | LEA.L (A0+D1.L),A0
00017e6c 12 30 08 3f | 0 ? | MOVE.B (A0+D0.L+#0x3f),D1
00017e70 e9 09 | | LSL.B #0x4,D1
00017e72 ee 09 | | LSR.B #0x7,D1
00017e74 67 08 |g | BEQ 0x17e7e
00017e76 23 c2 00 02 01 00 |# | MOVE.L D2,0x20100
00017e7c 60 02 |` | BRA 0x17e80
00017e7e 60 0e |` | BRA 0x17e8e
00017e80 60 00 fe b6 |` | BRA 0x17d38
00017e84 23 fc ff ff ff ff 00 02 |# | MOVE.L #0xffffffff,0x20100
00017e8c 01 00 | |
00017e8e 4c df 01 ff |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D5+D6+D7+A0
00017e92 4e 5e |N^ | UNLK A6
00017e94 4e 75 |Nu | RTS
00017e96 ; --------------------------------------------------------------------------------------
00017e96 ; OMSI PASCAL Function
00017e96 ; <LVAR 0x008 4(r)>
00017e96 ; <LVAR -0x006 @ 4(rw)>
00017e96 ; --------------------------------------------------------------------------------------
00017e96 4e 56 ff 92 |NV | LINK.W A6,#0xff92
00017e9a bf d5 | | CMPA.L (A5),A7
00017e9c 62 06 |b | BHI 0x17ea4
00017e9e 44 fc 00 02 |D | MOVE.W #0x2,CCR
00017ea2 4e 76 |Nv | TRAPV
00017ea4 de fc 00 66 | f | ADDA.W #0x66,A7
00017ea8 48 e7 fd f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D5+D4+D3+D2+D1+D0,-(A7)
00017eac 74 1e |t | MOVEQ.L #0x1e,D2
00017eae 7a 01 |z | MOVEQ.L #0x01,D5
00017eb0 4e ba fe 68 |N h | JSR 0x17d1a
00017eb4 20 39 00 02 01 00 | 9 | MOVE.L 0x20100,D0
00017eba 0c 80 ff ff ff ff | | CMPI.L #0xffffffff,D0
00017ec0 66 04 |f | BNE 0x17ec6
00017ec2 60 00 01 46 |` F | BRA 0x1800a
00017ec6 20 79 00 02 00 f6 | y | MOVEA.L 0x200f6,A0
00017ecc 30 39 00 02 01 04 |09 | MOVE.W 0x20104,D0
00017ed2 41 bc 00 03 |A | CHK.W #0x3,D0
00017ed6 42 81 |B | CLR.L D1
00017ed8 32 00 |2 | MOVE.W D0,D1
00017eda e1 81 | | ASL.L #0x8,D1
00017edc e5 81 | | ASL.L #0x2,D1
00017ede 20 39 00 02 01 00 | 9 | MOVE.L 0x20100,D0
00017ee4 0c 80 00 00 00 0f | | CMPI.L #0x0000000f,D0
00017eea 63 02 |c | BLS 0x17eee
00017eec 4e 4f |NO | TRAP #15
00017eee ed 80 | | ASL.L #0x6,D0
00017ef0 41 f0 18 00 |A | LEA.L (A0+D1.L),A0
00017ef4 2f 00 |/ | MOVE.L D0,-(A7)
00017ef6 2f 08 |/ | MOVE.L A0,-(A7)
00017ef8 4a 39 00 02 00 fb |J9 | TST.B 0x200fb
00017efe 67 04 |g | BEQ 0x17f04
00017f00 7e 01 |~ | MOVEQ.L #0x01,D7
00017f02 60 4e |`N | BRA 0x17f52
00017f04 9e c2 | | SUBA.W D2,A7
00017f06 22 4f |"O | MOVEA.L A7,A1
00017f08 41 f0 08 00 |A | LEA.L (A0+D0.L),A0
00017f0c 70 1d |p | MOVEQ.L #0x1d,D0
00017f0e 12 d8 | | MOVE.B (A0)+,(A1)+
00017f10 51 c8 ff fc |Q | DBF D0,0x17f0e
00017f14 59 4f |YO | SUBQ.L #0x4,A7
00017f16 48 6f 00 04 |Ho | PEA.L (A7+0x4)
00017f1a 3f 05 |? | MOVE.W D5,-(A7)
00017f1c 3f 02 |? | MOVE.W D2,-(A7)
00017f1e 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00017f24 50 4f |PO | ADDQ.L #0x8,A7
00017f26 2d 5f ff fa |-_ | MOVE.L (A7)+,(A6-0x6)
00017f2a de fc 00 18 | | ADDA.W #0x18,A7
00017f2e 2e ae ff fa |. | MOVE.L (A6-0x6),(A7)
00017f32 2f 39 00 02 00 f2 |/9 | MOVE.L 0x200f2,-(A7)
00017f38 4e ba fa 88 |N | JSR _Glob(input : String; pattern : String): Bool
00017f3c 50 4f |PO | ADDQ.L #0x8,A7
00017f3e 10 1f | | MOVE.B (A7)+,D0
00017f40 48 80 |H | EXTB.W D0
00017f42 41 85 |A | CHK.W D5,D0
00017f44 1e 00 | | MOVE.B D0,D7
00017f46 48 6e ff fa |Hn | PEA.L (A6-0x6)
00017f4a 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
00017f50 58 4f |XO | ADDQ.L #0x4,A7
00017f52 4a 07 |J | TST.B D7
00017f54 67 00 00 ae |g | BEQ 0x18004
00017f58 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00017f5c 22 50 |"P | MOVEA.L (A0),A1
00017f5e 24 57 |$W | MOVEA.L (A7),A2
00017f60 20 2f 00 04 | / | MOVE.L (A7+0x4),D0
00017f64 26 49 |&I | MOVEA.L A1,A3
00017f66 49 f2 08 00 |I | LEA.L (A2+D0.L),A4
00017f6a 72 1d |r | MOVEQ.L #0x1d,D1
00017f6c 16 dc | | MOVE.B (A4)+,(A3)+
00017f6e 51 c9 ff fc |Q | DBF D1,0x17f6c
00017f72 33 72 08 1e 00 1e |3r | MOVE.W (A2+D0.L+#0x1e),(A1+0x1e)
00017f78 47 e9 00 20 |G | LEA.L (A1+0x20),A3
00017f7c 45 f2 08 20 |E | LEA.L (A2+D0.L+#0x20),A2
00017f80 70 1f |p | MOVEQ.L #0x1f,D0
00017f82 16 da | | MOVE.B (A2)+,(A3)+
00017f84 51 c8 ff fc |Q | DBF D0,0x17f82
00017f88 42 29 00 4c |B) L | CLR.B (A1+0x4c)
00017f8c 20 39 00 02 01 00 | 9 | MOVE.L 0x20100,D0
00017f92 04 80 ff ff 80 00 | | SUBI.L #0xffff8000,D0
00017f98 0c 80 00 00 ff ff | | CMPI.L #0x0000ffff,D0
00017f9e 63 02 |c | BLS 0x17fa2
00017fa0 4e 4f |NO | TRAP #15
00017fa2 06 80 ff ff 80 00 | | ADDI.L #0xffff8000,D0
00017fa8 33 40 00 42 |3@ B | MOVE.W D0,(A1+0x42)
00017fac 28 39 00 02 00 fc |(9 | MOVE.L file_ERROR_LOG,D4
00017fb2 26 3c 00 00 01 00 |&< | MOVE.L #0x100,D3
00017fb8 4e b9 00 01 08 0a |N | JSR _?divs_d3_d4
00017fbe 0c 84 00 00 00 07 | | CMPI.L #0x00000007,D4
00017fc4 63 02 |c | BLS 0x17fc8
00017fc6 4e 4f |NO | TRAP #15
00017fc8 e3 84 | | ASL.L #0x1,D4
00017fca 45 f8 00 00 |E | LEA.L 0x0,A2
00017fce 47 f2 48 00 |G H | LEA.L (A2+D4.L),A3
00017fd2 d7 fc 00 01 00 12 | | ADDA.L #0x10012,A3
00017fd8 42 80 |B | CLR.L D0
00017fda 30 13 |0 | MOVE.W (A3),D0
00017fdc d6 80 | | ADD.L D0,D3
00017fde 0c 83 00 00 ff ff | | CMPI.L #0x0000ffff,D3
00017fe4 63 02 |c | BLS 0x17fe8
00017fe6 4e 4f |NO | TRAP #15
00017fe8 33 43 00 40 |3C @ | MOVE.W D3,(A1+0x40)
00017fec 42 69 00 48 |Bi H | CLR.W (A1+0x48)
00017ff0 42 69 00 4a |Bi J | CLR.W (A1+0x4a)
00017ff4 d5 fc 00 02 00 20 | | ADDA.L #0x20020,A2
00017ffa 23 52 00 44 |#R D | MOVE.L (A2),(A1+0x44)
00017ffe 24 90 |$ | MOVE.L (A0),(A2)
00018000 50 4f |PO | ADDQ.L #0x8,A7
00018002 60 12 |` | BRA 0x18016
00018004 50 4f |PO | ADDQ.L #0x8,A7
00018006 60 00 fe a8 |` | BRA 0x17eb0
0001800a 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001800e 20 50 | P | MOVEA.L (A0),A0
00018010 00 28 00 08 00 3f | ( ? | ORI.B #0x08,(A0+0x3f)
00018016 4c df 1f bf |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D5+D7+A0+A1+A2+A3+A4
0001801a 4e 5e |N^ | UNLK A6
0001801c 4e 75 |Nu | RTS
0001801e ; --------------------------------------------------------------------------------------
0001801e ; DirFirst(MOD c : Bool; a : String; VAR b : File)
0001801e ; Stack:
0001801e ; A6+0x10 c : Bool
0001801e ; A6+0xc a : String
0001801e ; A6+0x8 VAR b : File
0001801e ; OMSI PASCAL Function
0001801e ; <LVAR 0x010 1(r)>
0001801e ; <LVAR 0x00c 4(r)>
0001801e ; <LVAR 0x008 4(r)>
0001801e ; <LVAR -0x002 @>
0001801e ; --------------------------------------------------------------------------------------
0001801e _DirFirst(MOD c : Bool; a : String; VAR b : File):
0001801e 4e 56 ff d6 |NV | LINK.W A6,#0xffd6
00018022 bf d5 | | CMPA.L (A5),A7
00018024 62 06 |b | BHI 0x1802c
00018026 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001802a 4e 76 |Nv | TRAPV
0001802c de fc 00 28 | ( | ADDA.W #0x28,A7
00018030 48 e7 c0 c0 |H | MOVEM.L A1+A0+D1+D0,-(A7)
00018034 43 ee 00 0c |C | LEA.L (A6+0xc),A1
00018038 72 01 |r | MOVEQ.L #0x01,D1
0001803a 55 4f |UO | SUBQ.L #0x2,A7
0001803c 2f 11 |/ | MOVE.L (A1),-(A7)
0001803e 4e ba fb 9e |N | JSR 0x17bde
00018042 58 4f |XO | ADDQ.L #0x4,A7
00018044 10 1f | | MOVE.B (A7)+,D0
00018046 48 80 |H | EXTB.W D0
00018048 41 81 |A | CHK.W D1,D0
0001804a 13 c0 00 02 00 fa | | MOVE.B D0,0x200fa
00018050 23 d1 00 02 00 f2 |# | MOVE.L (A1),0x200f2
00018056 4a 39 00 02 00 fa |J9 | TST.B 0x200fa
0001805c 66 22 |f" | BNE 0x18080
0001805e 2f 11 |/ | MOVE.L (A1),-(A7)
00018060 42 27 |B' | CLR.B -(A7)
00018062 1f 01 | | MOVE.B D1,-(A7)
00018064 48 78 00 00 |Hx | PEA.L 0x0
00018068 48 6e ff fe |Hn | PEA.L (A6-0x2)
0001806c 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00018070 48 50 |HP | PEA.L (A0)
00018072 4e b9 00 01 38 b4 |N 8 | JSR _OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
00018078 de fc 00 14 | | ADDA.W #0x14,A7
0001807c 60 00 00 94 |` | BRA 0x18112
00018080 20 51 | Q | MOVEA.L (A1),A0
00018082 42 39 00 02 00 fb |B9 | CLR.B 0x200fb
00018088 30 10 |0 | MOVE.W (A0),D0
0001808a b0 41 | A | CMP.W D1,D0
0001808c 66 10 |f | BNE 0x1809e
0001808e 10 28 00 02 | ( | MOVE.B (A0+0x2),D0
00018092 0c 00 00 2a | * | CMPI.B #0x2a,D0
00018096 66 06 |f | BNE 0x1809e
00018098 52 39 00 02 00 fb |R9 | ADDQ.B #0x1,0x200fb
0001809e 10 2e 00 10 | . | MOVE.B (A6+0x10),D0
000180a2 b0 01 | | CMP.B D1,D0
000180a4 66 0a |f | BNE 0x180b0
000180a6 33 fc 00 04 00 02 01 06 |3 | MOVE.W #0x4,0x20106
000180ae 60 06 |` | BRA 0x180b6
000180b0 33 c1 00 02 01 06 |3 | MOVE.W D1,0x20106
000180b6 23 fc ff ff ff ff 00 02 |# | MOVE.L #0xffffffff,file_ERROR_LOG
000180be 00 fc | |
000180c0 23 fc 00 00 00 0f 00 02 |# | MOVE.L #0xf,0x20100
000180c8 01 00 | |
000180ca 42 80 |B | CLR.L D0
000180cc 30 39 00 02 01 06 |09 | MOVE.W 0x20106,D0
000180d2 53 80 |S | SUBQ.L #0x1,D0
000180d4 0c 80 00 00 ff ff | | CMPI.L #0x0000ffff,D0
000180da 63 02 |c | BLS 0x180de
000180dc 4e 4f |NO | TRAP #15
000180de 33 c0 00 02 01 04 |3 | MOVE.W D0,0x20104
000180e4 30 39 00 02 01 06 |09 | MOVE.W 0x20106,D0
000180ea c0 fc 04 00 | | MULU.W #0x400,D0
000180ee 59 4f |YO | SUBQ.L #0x4,A7
000180f0 2f 00 |/ | MOVE.L D0,-(A7)
000180f2 4e b9 00 01 08 3a |N : | JSR _Malloc2(VAR dst : Pointer; length : Word)
000180f8 58 4f |XO | ADDQ.L #0x4,A7
000180fa 23 df 00 02 00 f6 |# | MOVE.L (A7)+,0x200f6
00018100 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00018104 20 81 | | MOVE.L D1,(A0)
00018106 42 27 |B' | CLR.B -(A7)
00018108 48 50 |HP | PEA.L (A0)
0001810a 4e b9 00 01 81 1a |N | JSR _DirNext(MOD a : Bool; VAR b : File)
00018110 5c 4f |\O | ADDQ.L #0x6,A7
00018112 4c df 03 03 |L | MOVEM.L (A7)+,D0+D1+A0+A1
00018116 4e 5e |N^ | UNLK A6
00018118 4e 75 |Nu | RTS
0001811a ; --------------------------------------------------------------------------------------
0001811a ; DirNext(MOD a : Bool; VAR b : File)
0001811a ; Stack:
0001811a ; A6+0xc a : Bool
0001811a ; A6+0x8 VAR b : File
0001811a ; OMSI PASCAL Function
0001811a ; <LVAR 0x00c 1(r)>
0001811a ; <LVAR 0x008 4(r)>
0001811a ; <LVAR -0x002 @>
0001811a ; --------------------------------------------------------------------------------------
0001811a _DirNext(MOD a : Bool; VAR b : File):
0001811a 4e 56 ff d2 |NV | LINK.W A6,#0xffd2
0001811e bf d5 | | CMPA.L (A5),A7
00018120 62 06 |b | BHI 0x18128
00018122 44 fc 00 02 |D | MOVE.W #0x2,CCR
00018126 4e 76 |Nv | TRAPV
00018128 de fc 00 2c | , | ADDA.W #0x2c,A7
0001812c 48 e7 c0 e0 |H | MOVEM.L A2+A1+A0+D1+D0,-(A7)
00018130 45 ee 00 08 |E | LEA.L (A6+0x8),A2
00018134 72 01 |r | MOVEQ.L #0x01,D1
00018136 20 52 | R | MOVEA.L (A2),A0
00018138 22 50 |"P | MOVEA.L (A0),A1
0001813a b2 c1 | | CMPA.W D1,A1
0001813c 67 1a |g | BEQ 0x18158
0001813e 42 27 |B' | CLR.B -(A7)
00018140 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
00018144 48 78 00 01 |Hx | PEA.L 0x1
00018148 48 6e ff fe |Hn | PEA.L (A6-0x2)
0001814c 48 50 |HP | PEA.L (A0)
0001814e 4e b9 00 01 3c 8a |N < | JSR _CloseFile(a : L; VAR status : B; VAR file : File)
00018154 de fc 00 10 | | ADDA.W #0x10,A7
00018158 4a 39 00 02 00 fa |J9 | TST.B 0x200fa
0001815e 66 02 |f | BNE 0x18162
00018160 60 58 |`X | BRA 0x181ba
00018162 4a 2e 00 0c |J. | TST.B (A6+0xc)
00018166 67 04 |g | BEQ 0x1816c
00018168 4e ba fa e0 |N | JSR 0x17c4a
0001816c 20 52 | R | MOVEA.L (A2),A0
0001816e 48 50 |HP | PEA.L (A0)
00018170 48 78 00 4d |Hx M | PEA.L 0x4d
00018174 4e b9 00 01 08 56 |N V | JSR _Malloc1(length : Long) : Pointer
0001817a 50 4f |PO | ADDQ.L #0x8,A7
0001817c 48 50 |HP | PEA.L (A0)
0001817e 4e ba fd 16 |N | JSR 0x17e96
00018182 58 4f |XO | ADDQ.L #0x4,A7
00018184 22 50 |"P | MOVEA.L (A0),A1
00018186 10 29 00 3f | ) ? | MOVE.B (A1+0x3f),D0
0001818a e9 08 | | LSL.B #0x4,D0
0001818c ee 08 | | LSR.B #0x7,D0
0001818e 67 2a |g* | BEQ 0x181ba
00018190 48 50 |HP | PEA.L (A0)
00018192 48 78 00 4d |Hx M | PEA.L 0x4d
00018196 4e b9 00 01 08 fa |N | JSR _Free2(a : Pointer; b : Long)
0001819c 50 4f |PO | ADDQ.L #0x8,A7
0001819e 30 39 00 02 01 06 |09 | MOVE.W 0x20106,D0
000181a4 c0 fc 04 00 | | MULU.W #0x400,D0
000181a8 2f 39 00 02 00 f6 |/9 | MOVE.L 0x200f6,-(A7)
000181ae 2f 00 |/ | MOVE.L D0,-(A7)
000181b0 4e b9 00 01 08 de |N | JSR _Free1(a : Pointer; b : Long)
000181b6 50 4f |PO | ADDQ.L #0x8,A7
000181b8 20 81 | | MOVE.L D1,(A0)
000181ba 20 52 | R | MOVEA.L (A2),A0
000181bc 20 50 | P | MOVEA.L (A0),A0
000181be b0 c1 | | CMPA.W D1,A0
000181c0 66 0e |f | BNE 0x181d0
000181c2 48 79 00 02 00 f2 |Hy | PEA.L 0x200f2
000181c8 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
000181ce 58 4f |XO | ADDQ.L #0x4,A7
000181d0 4c df 07 03 |L | MOVEM.L (A7)+,D0+D1+A0+A1+A2
000181d4 4e 5e |N^ | UNLK A6
000181d6 4e 75 |Nu | RTS
000181d8 50 61 72 61 6d 65 74 65 |Paramete| .TXT 'Parameter direction error '
000181f2 49 6c 6c 65 67 61 6c 20 |Illegal | .TXT 'Illegal Hex data! '
00018204 45 78 70 65 72 69 6d 65 |Experime| .TXT 'Experiment io not initialized.'
00018222 41 74 74 65 6d 70 74 20 |Attempt | .TXT 'Attempt to re-load ->_'
00018238 45 78 70 65 72 69 6d 65 |Experime| .TXT 'Experiment cache overflow ->_ '
00018256 45 78 70 65 72 69 6d 65 |Experime| .TXT 'Experiment CLOSE with invalid pointer.'
0001827c 20 20 5b 32 4b 20 | [2K | .TXT ' [2K '
00018282 board_names:
00018282 49 4f 41 20 20 20 20 20 |IOA | .TXT 'IOA '
0001828c 57 69 64 67 65 74 20 20 |Widget | .TXT 'Widget '
00018296 53 65 71 75 65 6e 63 65 |Sequence| .TXT 'Sequencer '
000182a0 46 49 55 20 20 20 20 20 |FIU | .TXT 'FIU '
000182aa 53 79 73 62 75 73 20 20 |Sysbus | .TXT 'Sysbus '
000182b4 41 6c 6c 20 20 20 20 20 |All | .TXT 'All '
000182be 54 79 70 65 20 20 20 20 |Type | .TXT 'Type '
000182c8 56 61 6c 75 65 20 20 20 |Value | .TXT 'Value '
000182d2 41 6c 6c 20 6d 65 6d 6f |All memo| .TXT 'All memory'
000182dc 46 49 55 20 2f 20 4d 45 |FIU / ME| .TXT 'FIU / MEM '
000182e6 54 20 56 20 53 20 51 20 |T V S Q | .TXT 'T V S Q '
000182f0 41 6c 6c 20 6e 6f 20 6d |All no m| .TXT 'All no mem'
000182fa 4d 65 6d 6f 72 79 20 30 |Memory 0| .TXT 'Memory 0 '
00018304 4d 65 6d 6f 72 79 20 31 |Memory 1| .TXT 'Memory 1 '
0001830e 4d 65 6d 6f 72 79 20 32 |Memory 2| .TXT 'Memory 2 '
00018318 4d 65 6d 6f 72 79 20 33 |Memory 3| .TXT 'Memory 3 '
00018322 t_I:
00018322 49 |I | .TXT 'I'
00018323 t_O:
00018323 4f |O | .TXT 'O'
00018324 t_C:
00018324 43 |C | .TXT 'C'
00018325 20 | | .XXX[0x1]
00018326 54 20 56 20 49 20 51 20 |T V I Q | .TXT 'T V I Q '
0001832e status_names:
0001832e 4e 6f 74 20 75 6e 69 71 |Not uniq| .TXT 'Not unique'
00018338 44 6f 6e 65 20 20 20 20 |Done | .TXT 'Done '
00018342 4c 6f 6f 70 69 6e 67 20 |Looping | .TXT 'Looping '
0001834c 50 61 75 73 65 64 20 20 |Paused | .TXT 'Paused '
00018356 45 72 72 6f 72 20 20 20 |Error | .TXT 'Error '
00018360 52 65 73 65 74 20 20 20 |Reset | .TXT 'Reset '
0001836a 52 75 6e 6e 69 6e 67 20 |Running | .TXT 'Running '
00018374 52 65 73 65 72 76 65 64 |Reserved| .TXT 'Reserved 1'
0001837e 52 65 73 65 72 76 65 64 |Reserved| .TXT 'Reserved 2'
00018388 54 69 6d 65 6f 75 74 20 |Timeout | .TXT 'Timeout '
00018392 45 78 70 65 72 69 6d 65 |Experime| .TXT 'Experiment error: got a NAK from a Download '
000183be 20 20 6f 66 | of | .TXT ' of'
000183c2 20 65 78 70 | exp | .TXT ' exp'
000183c6 65 72 69 6d |erim | .TXT 'erim'
000183ca 65 6e 74 5f |ent_ | .TXT 'ent_'
000183ce 20 74 6f 20 62 6f 61 72 | to boar| .TXT ' to board_'
000183d8 46 61 74 61 6c 20 65 78 |Fatal ex| .TXT 'Fatal experiment error. '
000183f0 45 52 52 4f 52 3a 20 65 |ERROR: e| .TXT 'ERROR: experiment running too long'
00018412 45 78 70 65 72 69 6d 65 |Experime| .TXT 'Experiment error: status =_ '
0001842e 20 20 20 66 | f | .TXT ' f'
00018432 72 6f 6d 5f |rom_ | .TXT 'rom_'
00018436 20 6f 6e 20 62 6f 61 72 | on boar| .TXT ' on board_'
00018440 46 61 74 61 6c 20 65 78 |Fatal ex| .TXT 'Fatal experiment error. '
00018458 diproc_adr_valid:
00018458 01 01 01 01 01 00 01 01 | | .CONST 0x1,0x1,0x1,0x1,0x1,0x0,0x1,0x1,0x0,0x0,0x0,0x0,0x1,0x1,0x1,0x1
00018468 00 02 00 01 00 02 00 01 | | .XXX[0x8]
00018470 00 02 00 01 | | .XXX[0x4]
00018474 diproc_adr_table[TVISF]:
00018474 06 07 04 02 03 | | .CONST 0x6,0x7,0x4,0x2,0x3
00018479 ExpDestinations[16]:
00018479 49 4f 41 20 20 20 20 20 |IOA | .TXT 'IOA '
00018483 57 69 64 67 65 74 20 20 |Widget | .TXT 'Widget '
0001848d 53 65 71 75 65 6e 63 65 |Sequence| .TXT 'Sequencer '
00018497 46 49 55 20 20 20 20 20 |FIU | .TXT 'FIU '
000184a1 53 79 73 62 75 73 20 20 |Sysbus | .TXT 'Sysbus '
000184ab 41 6c 6c 20 20 20 20 20 |All | .TXT 'All '
000184b5 54 79 70 65 20 20 20 20 |Type | .TXT 'Type '
000184bf 56 61 6c 75 65 20 20 20 |Value | .TXT 'Value '
000184c9 41 6c 6c 20 6d 65 6d 6f |All memo| .TXT 'All memory'
000184d3 46 49 55 20 2f 20 4d 45 |FIU / ME| .TXT 'FIU / MEM '
000184dd 54 20 56 20 53 20 51 20 |T V S Q | .TXT 'T V S Q '
000184e7 41 6c 6c 20 6e 6f 20 6d |All no m| .TXT 'All no mem'
000184f1 4d 65 6d 6f 72 79 20 30 |Memory 0| .TXT 'Memory 0 '
000184fb 4d 65 6d 6f 72 79 20 31 |Memory 1| .TXT 'Memory 1 '
00018505 4d 65 6d 6f 72 79 20 32 |Memory 2| .TXT 'Memory 2 '
0001850f 4d 65 6d 6f 72 79 20 33 |Memory 3| .TXT 'Memory 3 '
00018519 ExpStatus[10]:
00018519 4e 6f 74 20 75 6e 69 71 |Not uniq| .TXT 'Not unique'
00018523 44 6f 6e 65 20 20 20 20 |Done | .TXT 'Done '
0001852d 4c 6f 6f 70 69 6e 67 20 |Looping | .TXT 'Looping '
00018537 50 61 75 73 65 64 20 20 |Paused | .TXT 'Paused '
00018541 45 72 72 6f 72 20 20 20 |Error | .TXT 'Error '
0001854b 52 65 73 65 74 20 20 20 |Reset | .TXT 'Reset '
00018555 52 75 6e 6e 69 6e 67 20 |Running | .TXT 'Running '
0001855f 52 65 73 65 72 76 65 64 |Reserved| .TXT 'Reserved 1'
00018569 52 65 73 65 72 76 65 64 |Reserved| .TXT 'Reserved 2'
00018573 54 69 6d 65 6f 75 74 20 |Timeout | .TXT 'Timeout '
0001857d 00 | | .XXX[0x1]
0001857e ; --------------------------------------------------------------------------------------
0001857e ; OMSI PASCAL Function
0001857e ; <LVAR 0x00a 4(w)>
0001857e ; <LVAR 0x008 1(r)>
0001857e ; --------------------------------------------------------------------------------------
0001857e 4e 56 ff bc |NV | LINK.W A6,#0xffbc
00018582 bf d5 | | CMPA.L (A5),A7
00018584 62 06 |b | BHI 0x1858c
00018586 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001858a 4e 76 |Nv | TRAPV
0001858c de fc 00 3e | > | ADDA.W #0x3e,A7
00018590 48 e7 e1 c0 |H | MOVEM.L A1+A0+D7+D2+D1+D0,-(A7)
00018594 74 30 |t0 | MOVEQ.L #0x30,D2
00018596 10 2e 00 08 | . | MOVE.B (A6+0x8),D0
0001859a b0 02 | | CMP.B D2,D0
0001859c 65 12 |e | BCS 0x185b0
0001859e 0c 00 00 39 | 9 | CMPI.B #0x39,D0
000185a2 62 0c |b | BHI 0x185b0
000185a4 42 81 |B | CLR.L D1
000185a6 12 00 | | MOVE.B D0,D1
000185a8 92 42 | B | SUB.W D2,D1
000185aa 48 c1 |H | EXTW.L D1
000185ac 2e 01 |. | MOVE.L D1,D7
000185ae 60 4c |`L | BRA 0x185fc
000185b0 0c 00 00 41 | A | CMPI.B #0x41,D0
000185b4 65 10 |e | BCS 0x185c6
000185b6 0c 00 00 46 | F | CMPI.B #0x46,D0
000185ba 62 0a |b | BHI 0x185c6
000185bc 42 81 |B | CLR.L D1
000185be 12 00 | | MOVE.B D0,D1
000185c0 04 41 00 37 | A 7 | SUBI.W #0x0037,D1
000185c4 60 e4 |` | BRA 0x185aa
000185c6 9e fc 00 12 | | SUBA.W #0x12,A7
000185ca 20 4f | O | MOVEA.L A7,A0
000185cc 43 fa fc 24 |C $ | LEA.L 0x181f2,A1
000185d0 70 10 |p | MOVEQ.L #0x10,D0
000185d2 10 d9 | | MOVE.B (A1)+,(A0)+
000185d4 51 c8 ff fc |Q | DBF D0,0x185d2
000185d8 1f 3c 00 0e | < | MOVE.B #0x0e,-(A7)
000185dc 59 4f |YO | SUBQ.L #0x4,A7
000185de 48 6f 00 06 |Ho | PEA.L (A7+0x6)
000185e2 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
000185e6 3f 3c 00 11 |?< | MOVE.W #0x11,-(A7)
000185ea 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
000185f0 50 4f |PO | ADDQ.L #0x8,A7
000185f2 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
000185f8 de fc 00 18 | | ADDA.W #0x18,A7
000185fc 2d 47 00 0a |-G | MOVE.L D7,(A6+0xa)
00018600 4c df 03 87 |L | MOVEM.L (A7)+,D0+D1+D2+D7+A0+A1
00018604 4e 5e |N^ | UNLK A6
00018606 4e 75 |Nu | RTS
00018608 ; --------------------------------------------------------------------------------------
00018608 ; OMSI PASCAL Function
00018608 ; <LVAR 0x00c 4(r)>
00018608 ; <LVAR 0x008 4(r)>
00018608 ; --------------------------------------------------------------------------------------
00018608 4e 56 ff b8 |NV | LINK.W A6,#0xffb8
0001860c bf d5 | | CMPA.L (A5),A7
0001860e 62 06 |b | BHI 0x18616
00018610 44 fc 00 02 |D | MOVE.W #0x2,CCR
00018614 4e 76 |Nv | TRAPV
00018616 de fc 00 48 | H | ADDA.W #0x48,A7
0001861a 48 e7 c0 c0 |H | MOVEM.L A1+A0+D1+D0,-(A7)
0001861e 72 1e |r | MOVEQ.L #0x1e,D1
00018620 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
00018624 9e c1 | | SUBA.W D1,A7
00018626 22 4f |"O | MOVEA.L A7,A1
00018628 41 e8 00 fc |A | LEA.L (A0+0xfc),A0
0001862c 70 1d |p | MOVEQ.L #0x1d,D0
0001862e 12 d8 | | MOVE.B (A0)+,(A1)+
00018630 51 c8 ff fc |Q | DBF D0,0x1862e
00018634 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
00018638 59 4f |YO | SUBQ.L #0x4,A7
0001863a 2f 2e 00 08 |/. | MOVE.L (A6+0x8),-(A7)
0001863e 59 4f |YO | SUBQ.L #0x4,A7
00018640 48 6f 00 0e |Ho | PEA.L (A7+0xe)
00018644 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
00018648 3f 01 |? | MOVE.W D1,-(A7)
0001864a 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00018650 50 4f |PO | ADDQ.L #0x8,A7
00018652 4e b9 00 01 0f 2c |N , | JSR _StringCat2(a, b : String) : String
00018658 50 4f |PO | ADDQ.L #0x8,A7
0001865a 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
00018660 de fc 00 24 | $ | ADDA.W #0x24,A7
00018664 4c df 03 03 |L | MOVEM.L (A7)+,D0+D1+A0+A1
00018668 4e 5e |N^ | UNLK A6
0001866a 4e 75 |Nu | RTS
0001866c ; --------------------------------------------------------------------------------------
0001866c ; ExpLoad(a : String; b: Pointer)
0001866c ; Stack:
0001866c ; A6+0xc a : String
0001866c ; A6+0x8 b : Pointer
0001866c ; OMSI PASCAL Function
0001866c ; <LVAR 0x00c @ 4(r)>
0001866c ; <LVAR 0x008 4(r)>
0001866c ; <LVAR -0x002 2(r)>
0001866c ; <LVAR -0x004 2(r)>
0001866c ; <LVAR -0x006 @ 2(r)>
0001866c ; <LVAR -0x008 1(rw)>
0001866c ; <LVAR -0x010 @ 4(w)>
0001866c ; <LVAR -0x014 @ 4(rw)>
0001866c ; <LVAR -0x016 @ 1(r)>
0001866c ; <LVAR -0x01a 4(w)>
0001866c ; <LVAR -0x026 @ 4(r)>
0001866c ; <LVAR -0x028 @>
0001866c ; <LVAR -0x02c @ 4(r)>
0001866c ; --------------------------------------------------------------------------------------
0001866c _ExpLoad(a : String; b: Pointer):
0001866c 4e 56 ff 62 |NV b | LINK.W A6,#0xff62
00018670 bf d5 | | CMPA.L (A5),A7
00018672 62 06 |b | BHI 0x1867a
00018674 44 fc 00 02 |D | MOVE.W #0x2,CCR
00018678 4e 76 |Nv | TRAPV
0001867a de fc 00 72 | r | ADDA.W #0x72,A7
0001867e 48 e7 ff f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D6+D5+D4+D3+D2+D1+D0,-(A7)
00018682 49 f9 00 01 07 ea |I | LEA.L _?muls_d3_d4,A4
00018688 74 01 |t | MOVEQ.L #0x01,D2
0001868a 4a 39 00 02 00 24 |J9 $ | TST.B exp_init_done
00018690 67 22 |g" | BEQ 0x186b4
00018692 5d 4f |]O | SUBQ.L #0x6,A7
00018694 4e b9 00 01 5b 2a |N [* | JSR _GetConsoleConfig() : Long
0001869a 20 1f | | MOVE.L (A7)+,D0
0001869c 0c 80 00 00 ff ff | | CMPI.L #0x0000ffff,D0
000186a2 63 02 |c | BLS 0x186a6
000186a4 4e 4f |NO | TRAP #15
000186a6 3e 80 |> | MOVE.W D0,(A7)
000186a8 2f 2e 00 0c |/. | MOVE.L (A6+0xc),-(A7)
000186ac 4e b9 00 01 02 0a |N | JSR KC05_PortWriteString(port : Word ; str : String)
000186b2 5c 4f |\O | ADDQ.L #0x6,A7
000186b4 4a 39 00 02 00 25 |J9 % | TST.B 0x20025
000186ba 66 2e |f. | BNE 0x186ea
000186bc 41 fa fb 64 |A d | LEA.L 0x18222,A0
000186c0 70 0e |p | MOVEQ.L #0x0e,D0
000186c2 3f 20 |? | MOVE.W -(A0),-(A7)
000186c4 51 c8 ff fc |Q | DBF D0,0x186c2
000186c8 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
000186cc 59 4f |YO | SUBQ.L #0x4,A7
000186ce 48 6f 00 06 |Ho | PEA.L (A7+0x6)
000186d2 3f 02 |? | MOVE.W D2,-(A7)
000186d4 3f 3c 00 1e |?< | MOVE.W #0x1e,-(A7)
000186d8 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
000186de 50 4f |PO | ADDQ.L #0x8,A7
000186e0 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
000186e6 de fc 00 24 | $ | ADDA.W #0x24,A7
000186ea 42 2e ff f8 |B. | CLR.B (A6-0x8)
000186ee 7c ff || | MOVEQ.L #-0x01,D6
000186f0 52 86 |R | ADDQ.L #0x1,D6
000186f2 28 06 |( | MOVE.L D6,D4
000186f4 76 06 |v | MOVEQ.L #0x06,D3
000186f6 4e 94 |N | JSR (A4)
000186f8 41 f8 00 00 |A | LEA.L 0x0,A0
000186fc 41 f0 48 00 |A H | LEA.L (A0+D4.L),A0
00018700 d1 fc 00 02 00 2c | , | ADDA.L #0x2002c,A0
00018706 2f 08 |/ | MOVE.L A0,-(A7)
00018708 22 68 00 02 |"h | MOVEA.L (A0+0x2),A1
0001870c b2 c2 | | CMPA.W D2,A1
0001870e 66 06 |f | BNE 0x18716
00018710 58 4f |XO | ADDQ.L #0x4,A7
00018712 60 00 00 86 |` | BRA 0x1879a
00018716 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
0001871a 2f 08 |/ | MOVE.L A0,-(A7)
0001871c 30 10 |0 | MOVE.W (A0),D0
0001871e 48 c0 |H | EXTW.L D0
00018720 2f 00 |/ | MOVE.L D0,-(A7)
00018722 7e 01 |~ | MOVEQ.L #0x01,D7
00018724 be 97 | | CMP.L (A7),D7
00018726 6e 24 |n$ | BGT 0x1874c
00018728 20 6f 00 08 | o | MOVEA.L (A7+0x8),A0
0001872c 20 68 00 02 | h | MOVEA.L (A0+0x2),A0
00018730 41 f0 78 00 |A x | LEA.L (A0+D7.L),A0
00018734 22 6f 00 04 |"o | MOVEA.L (A7+0x4),A1
00018738 10 28 00 fb | ( | MOVE.B (A0+0xfb),D0
0001873c b0 31 78 01 | 1x | CMP.B (A1+D7.L+#0x1),D0
00018740 67 06 |g | BEQ 0x18748
00018742 de fc 00 0c | | ADDA.W #0xc,A7
00018746 60 44 |`D | BRA 0x1878c
00018748 52 87 |R | ADDQ.L #0x1,D7
0001874a 68 d8 |h | BVC 0x18724
0001874c 58 4f |XO | ADDQ.L #0x4,A7
0001874e 20 6f 00 04 | o | MOVEA.L (A7+0x4),A0
00018752 4a 10 |J | TST.B (A0)
00018754 67 2c |g, | BEQ 0x18782
00018756 43 fa fa e0 |C | LEA.L 0x18238,A1
0001875a 70 0a |p | MOVEQ.L #0x0a,D0
0001875c 3f 21 |?! | MOVE.W -(A1),-(A7)
0001875e 51 c8 ff fc |Q | DBF D0,0x1875c
00018762 2f 28 00 02 |/( | MOVE.L (A0+0x2),-(A7)
00018766 59 4f |YO | SUBQ.L #0x4,A7
00018768 48 6f 00 08 |Ho | PEA.L (A7+0x8)
0001876c 3f 02 |? | MOVE.W D2,-(A7)
0001876e 3f 3c 00 16 |?< | MOVE.W #0x16,-(A7)
00018772 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00018778 50 4f |PO | ADDQ.L #0x8,A7
0001877a 4e ba fe 8c |N | JSR 0x18608
0001877e de fc 00 1e | | ADDA.W #0x1e,A7
00018782 1d 42 ff f8 | B | MOVE.B D2,(A6-0x8)
00018786 50 4f |PO | ADDQ.L #0x8,A7
00018788 60 10 |` | BRA 0x1879a
0001878a 50 4f |PO | .XXX[0x2]
0001878c 42 80 |B | CLR.L D0
0001878e 30 39 00 02 00 26 |09 & | MOVE.W 0x20026,D0
00018794 bc 80 | | CMP.L D0,D6
00018796 66 00 ff 58 |f X | BNE 0x186f0
0001879a 4a 2e ff f8 |J. | TST.B (A6-0x8)
0001879e 67 00 00 8a |g | BEQ 0x1882a
000187a2 4a 86 |J | TST.L D6
000187a4 67 76 |gv | BEQ 0x1881c
000187a6 28 06 |( | MOVE.L D6,D4
000187a8 76 06 |v | MOVEQ.L #0x06,D3
000187aa 4e 94 |N | JSR (A4)
000187ac 41 f8 00 00 |A | LEA.L 0x0,A0
000187b0 41 f0 48 00 |A H | LEA.L (A0+D4.L),A0
000187b4 d1 fc 00 02 00 2c | , | ADDA.L #0x2002c,A0
000187ba 43 ee ff fa |C | LEA.L (A6-0x6),A1
000187be 70 05 |p | MOVEQ.L #0x05,D0
000187c0 12 d8 | | MOVE.B (A0)+,(A1)+
000187c2 51 c8 ff fc |Q | DBF D0,0x187c0
000187c6 20 06 | | MOVE.L D6,D0
000187c8 53 80 |S | SUBQ.L #0x1,D0
000187ca 2e 00 |. | MOVE.L D0,D7
000187cc 4a 87 |J | TST.L D7
000187ce 6d 34 |m4 | BLT 0x18804
000187d0 20 07 | | MOVE.L D7,D0
000187d2 52 80 |R | ADDQ.L #0x1,D0
000187d4 28 00 |( | MOVE.L D0,D4
000187d6 76 06 |v | MOVEQ.L #0x06,D3
000187d8 4e 94 |N | JSR (A4)
000187da 41 f8 00 00 |A | LEA.L 0x0,A0
000187de 43 f0 48 00 |C H | LEA.L (A0+D4.L),A1
000187e2 d3 fc 00 02 00 2c | , | ADDA.L #0x2002c,A1
000187e8 28 07 |( | MOVE.L D7,D4
000187ea 76 06 |v | MOVEQ.L #0x06,D3
000187ec 4e 94 |N | JSR (A4)
000187ee 41 f0 48 00 |A H | LEA.L (A0+D4.L),A0
000187f2 d1 fc 00 02 00 2c | , | ADDA.L #0x2002c,A0
000187f8 70 05 |p | MOVEQ.L #0x05,D0
000187fa 12 d8 | | MOVE.B (A0)+,(A1)+
000187fc 51 c8 ff fc |Q | DBF D0,0x187fa
00018800 53 87 |S | SUBQ.L #0x1,D7
00018802 68 c8 |h | BVC 0x187cc
00018804 33 ee ff fa 00 02 00 2c |3 ,| MOVE.W (A6-0x6),0x2002c
0001880c 33 ee ff fc 00 02 00 2e |3 .| MOVE.W (A6-0x4),0x2002e
00018814 33 ee ff fe 00 02 00 30 |3 0| MOVE.W (A6-0x2),0x20030
0001881c 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00018820 20 b9 00 02 00 2e | . | MOVE.L 0x2002e,(A0)
00018826 60 00 02 da |` | BRA 0x18b02
0001882a 28 06 |( | MOVE.L D6,D4
0001882c 76 06 |v | MOVEQ.L #0x06,D3
0001882e 4e 94 |N | JSR (A4)
00018830 41 f8 00 00 |A | LEA.L 0x0,A0
00018834 41 f0 48 00 |A H | LEA.L (A0+D4.L),A0
00018838 22 48 |"H | MOVEA.L A0,A1
0001883a d3 fc 00 02 00 2c | , | ADDA.L #0x2002c,A1
00018840 4a 11 |J | TST.B (A1)
00018842 67 3a |g: | BEQ 0x1887e
00018844 53 86 |S | SUBQ.L #0x1,D6
00018846 6c 34 |l4 | BGE 0x1887c
00018848 9e fc 00 1e | | SUBA.W #0x1e,A7
0001884c 22 4f |"O | MOVEA.L A7,A1
0001884e 45 fa f9 e8 |E | LEA.L 0x18238,A2
00018852 70 1c |p | MOVEQ.L #0x1c,D0
00018854 12 da | | MOVE.B (A2)+,(A1)+
00018856 51 c8 ff fc |Q | DBF D0,0x18854
0001885a 22 6e 00 08 |"n | MOVEA.L (A6+0x8),A1
0001885e 2f 11 |/ | MOVE.L (A1),-(A7)
00018860 59 4f |YO | SUBQ.L #0x4,A7
00018862 48 6f 00 08 |Ho | PEA.L (A7+0x8)
00018866 3f 02 |? | MOVE.W D2,-(A7)
00018868 3f 3c 00 1d |?< | MOVE.W #0x1d,-(A7)
0001886c 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00018872 50 4f |PO | ADDQ.L #0x8,A7
00018874 4e ba fd 92 |N | JSR 0x18608
00018878 de fc 00 26 | & | ADDA.W #0x26,A7
0001887c 60 ac |` | BRA 0x1882a
0001887e d1 fc 00 02 00 2e | . | ADDA.L #0x2002e,A0
00018884 22 50 |"P | MOVEA.L (A0),A1
00018886 b2 c2 | | CMPA.W D2,A1
00018888 67 4c |gL | BEQ 0x188d6
0001888a 2d 69 00 f8 ff ec |-i | MOVE.L (A1+0xf8),(A6-0x14)
00018890 20 6e ff ec | n | MOVEA.L (A6-0x14),A0
00018894 b0 c2 | | CMPA.W D2,A0
00018896 67 1c |g | BEQ 0x188b4
00018898 2d 48 ff f0 |-H | MOVE.L A0,(A6-0x10)
0001889c 2d 68 00 02 ff ec |-h | MOVE.L (A0+0x2),(A6-0x14)
000188a2 48 6e ff f0 |Hn | PEA.L (A6-0x10)
000188a6 48 78 00 06 |Hx | PEA.L 0x6
000188aa 4e b9 00 01 08 fa |N | JSR _Free2(a : Pointer; b : Long)
000188b0 50 4f |PO | ADDQ.L #0x8,A7
000188b2 60 dc |` | BRA 0x18890
000188b4 28 06 |( | MOVE.L D6,D4
000188b6 76 06 |v | MOVEQ.L #0x06,D3
000188b8 4e 94 |N | JSR (A4)
000188ba 41 f8 00 00 |A | LEA.L 0x0,A0
000188be 41 f0 48 00 |A H | LEA.L (A0+D4.L),A0
000188c2 d1 fc 00 02 00 2e | . | ADDA.L #0x2002e,A0
000188c8 48 50 |HP | PEA.L (A0)
000188ca 48 78 01 1d |Hx | PEA.L 0x11d
000188ce 4e b9 00 01 08 fa |N | JSR _Free2(a : Pointer; b : Long)
000188d4 50 4f |PO | ADDQ.L #0x8,A7
000188d6 20 06 | | MOVE.L D6,D0
000188d8 53 80 |S | SUBQ.L #0x1,D0
000188da 2e 00 |. | MOVE.L D0,D7
000188dc 4a 87 |J | TST.L D7
000188de 6d 34 |m4 | BLT 0x18914
000188e0 20 07 | | MOVE.L D7,D0
000188e2 52 80 |R | ADDQ.L #0x1,D0
000188e4 28 00 |( | MOVE.L D0,D4
000188e6 76 06 |v | MOVEQ.L #0x06,D3
000188e8 4e 94 |N | JSR (A4)
000188ea 41 f8 00 00 |A | LEA.L 0x0,A0
000188ee 43 f0 48 00 |C H | LEA.L (A0+D4.L),A1
000188f2 d3 fc 00 02 00 2c | , | ADDA.L #0x2002c,A1
000188f8 28 07 |( | MOVE.L D7,D4
000188fa 76 06 |v | MOVEQ.L #0x06,D3
000188fc 4e 94 |N | JSR (A4)
000188fe 41 f0 48 00 |A H | LEA.L (A0+D4.L),A0
00018902 d1 fc 00 02 00 2c | , | ADDA.L #0x2002c,A0
00018908 70 05 |p | MOVEQ.L #0x05,D0
0001890a 12 d8 | | MOVE.B (A0)+,(A1)+
0001890c 51 c8 ff fc |Q | DBF D0,0x1890a
00018910 53 87 |S | SUBQ.L #0x1,D7
00018912 68 c8 |h | BVC 0x188dc
00018914 2f 2e 00 0c |/. | MOVE.L (A6+0xc),-(A7)
00018918 42 27 |B' | CLR.B -(A7)
0001891a 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
0001891e 48 78 00 00 |Hx | PEA.L 0x0
00018922 48 6e ff d8 |Hn | PEA.L (A6-0x28)
00018926 48 6e ff d4 |Hn | PEA.L (A6-0x2c)
0001892a 4e b9 00 01 38 b4 |N 8 | JSR _OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
00018930 de fc 00 14 | | ADDA.W #0x14,A7
00018934 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00018938 48 50 |HP | PEA.L (A0)
0001893a 48 78 01 1d |Hx | PEA.L 0x11d
0001893e 4e b9 00 01 08 56 |N V | JSR _Malloc1(length : Long) : Pointer
00018944 50 4f |PO | ADDQ.L #0x8,A7
00018946 23 d0 00 02 00 2e |# . | MOVE.L (A0),0x2002e
0001894c 20 50 | P | MOVEA.L (A0),A0
0001894e 22 6e ff d4 |"n | MOVEA.L (A6-0x2c),A1
00018952 45 e8 00 fc |E | LEA.L (A0+0xfc),A2
00018956 70 1d |p | MOVEQ.L #0x1d,D0
00018958 14 d9 | | MOVE.B (A1)+,(A2)+
0001895a 51 c8 ff fc |Q | DBF D0,0x18958
0001895e 21 42 00 f8 |!B | MOVE.L D2,(A0+0xf8)
00018962 11 7c 00 ff 01 1a | | | MOVE.B #0xff,(A0+0x11a)
00018968 42 28 01 1b |B( | CLR.B (A0+0x11b)
0001896c 02 28 00 7f 01 1c | ( | ANDI.B #0x7f,(A0+0x11c)
00018972 48 6e ff da |Hn | PEA.L (A6-0x26)
00018976 4e b9 00 01 0c fa |N | JSR _NewString(VAR a : String)
0001897c 58 4f |XO | ADDQ.L #0x4,A7
0001897e 7a 10 |z | MOVEQ.L #0x10,D5
00018980 20 6e ff da | n | MOVEA.L (A6-0x26),A0
00018984 2f 08 |/ | MOVE.L A0,-(A7)
00018986 22 6e 00 08 |"n | MOVEA.L (A6+0x8),A1
0001898a 22 51 |"Q | MOVEA.L (A1),A1
0001898c 2f 09 |/ | MOVE.L A1,-(A7)
0001898e 2f 2e ff d4 |/. | MOVE.L (A6-0x2c),-(A7)
00018992 48 6e ff da |Hn | PEA.L (A6-0x26)
00018996 48 6e ff ea |Hn | PEA.L (A6-0x16)
0001899a 4e b9 00 01 70 c4 |N p | JSR _FileReadLine(file : File; VAR a : String; VAR b : Byte)
000189a0 de fc 00 0c | | ADDA.W #0xc,A7
000189a4 20 6f 00 04 | o | MOVEA.L (A7+0x4),A0
000189a8 4a 50 |JP | TST.W (A0)
000189aa 67 00 01 08 |g | BEQ 0x18ab4
000189ae 10 28 00 02 | ( | MOVE.B (A0+0x2),D0
000189b2 0c 00 00 50 | P | CMPI.B #0x50,D0
000189b6 66 00 00 d4 |f | BNE 0x18a8c
000189ba 48 6e ff ec |Hn | PEA.L (A6-0x14)
000189be 48 78 00 06 |Hx | PEA.L 0x6
000189c2 4e b9 00 01 08 56 |N V | JSR _Malloc1(length : Long) : Pointer
000189c8 50 4f |PO | ADDQ.L #0x8,A7
000189ca 22 6e ff ec |"n | MOVEA.L (A6-0x14),A1
000189ce 23 42 00 02 |#B | MOVE.L D2,(A1+0x2)
000189d2 24 57 |$W | MOVEA.L (A7),A2
000189d4 26 6a 00 f8 |&j | MOVEA.L (A2+0xf8),A3
000189d8 b6 c2 | | CMPA.W D2,A3
000189da 66 08 |f | BNE 0x189e4
000189dc 25 6e ff ec 00 f8 |%n | MOVE.L (A6-0x14),(A2+0xf8)
000189e2 60 0a |` | BRA 0x189ee
000189e4 26 6a 00 f4 |&j | MOVEA.L (A2+0xf4),A3
000189e8 27 6e ff ec 00 02 |'n | MOVE.L (A6-0x14),(A3+0x2)
000189ee 25 6e ff ec 00 f4 |%n | MOVE.L (A6-0x14),(A2+0xf4)
000189f4 59 4f |YO | SUBQ.L #0x4,A7
000189f6 1f 28 00 03 | ( | MOVE.B (A0+0x3),-(A7)
000189fa 4e ba fb 82 |N | JSR 0x1857e
000189fe 54 4f |TO | ADDQ.L #0x2,A7
00018a00 20 1f | | MOVE.L (A7)+,D0
00018a02 e9 80 | | ASL.L #0x4,D0
00018a04 59 4f |YO | SUBQ.L #0x4,A7
00018a06 1f 28 00 04 | ( | MOVE.B (A0+0x4),-(A7)
00018a0a 4e ba fb 72 |N r | JSR 0x1857e
00018a0e 54 4f |TO | ADDQ.L #0x2,A7
00018a10 d0 9f | | ADD.L (A7)+,D0
00018a12 13 40 00 01 | @ | MOVE.B D0,(A1+0x1)
00018a16 59 4f |YO | SUBQ.L #0x4,A7
00018a18 1f 28 00 07 | ( | MOVE.B (A0+0x7),-(A7)
00018a1c 4e ba fb 60 |N ` | JSR 0x1857e
00018a20 54 4f |TO | ADDQ.L #0x2,A7
00018a22 20 1f | | MOVE.L (A7)+,D0
00018a24 02 11 00 c0 | | ANDI.B #0xc0,(A1)
00018a28 81 11 | | OR.B D0,(A1)
00018a2a 02 11 00 bf | | ANDI.B #0xbf,(A1)
00018a2e 10 28 00 06 | ( | MOVE.B (A0+0x6),D0
00018a32 0c 00 00 46 | F | CMPI.B #0x46,D0
00018a36 66 04 |f | BNE 0x18a3c
00018a38 00 11 00 40 | @ | ORI.B #0x40,(A1)
00018a3c 10 28 00 05 | ( | MOVE.B (A0+0x5),D0
00018a40 0c 00 00 49 | I | CMPI.B #0x49,D0
00018a44 66 06 |f | BNE 0x18a4c
00018a46 00 11 00 80 | | ORI.B #0x80,(A1)
00018a4a 60 3e |`> | BRA 0x18a8a
00018a4c 00 2a 00 80 01 1c | * | ORI.B #0x80,(A2+0x11c)
00018a52 02 11 00 7f | | ANDI.B #0x7f,(A1)
00018a56 10 11 | | MOVE.B (A1),D0
00018a58 e3 08 | | LSL.B #0x1,D0
00018a5a ee 08 | | LSR.B #0x7,D0
00018a5c 66 2c |f, | BNE 0x18a8a
00018a5e 10 29 00 01 | ) | MOVE.B (A1+0x1),D0
00018a62 b0 2a 01 1a | * | CMP.B (A2+0x11a),D0
00018a66 64 04 |d | BCC 0x18a6c
00018a68 15 40 01 1a | @ | MOVE.B D0,(A2+0x11a)
00018a6c 42 81 |B | CLR.L D1
00018a6e 12 00 | | MOVE.B D0,D1
00018a70 42 80 |B | CLR.L D0
00018a72 10 11 | | MOVE.B (A1),D0
00018a74 e5 08 | | LSL.B #0x2,D0
00018a76 e4 08 | | LSR.B #0x2,D0
00018a78 d0 41 | A | ADD.W D1,D0
00018a7a 53 40 |S@ | SUBQ.W #0x1,D0
00018a7c 42 81 |B | CLR.L D1
00018a7e 12 2a 01 1b | * | MOVE.B (A2+0x11b),D1
00018a82 b0 41 | A | CMP.W D1,D0
00018a84 63 04 |c | BLS 0x18a8a
00018a86 15 40 01 1b | @ | MOVE.B D0,(A2+0x11b)
00018a8a 60 28 |`( | BRA 0x18ab4
00018a8c 59 4f |YO | SUBQ.L #0x4,A7
00018a8e 1f 00 | | MOVE.B D0,-(A7)
00018a90 4e ba fa ec |N | JSR 0x1857e
00018a94 54 4f |TO | ADDQ.L #0x2,A7
00018a96 20 1f | | MOVE.L (A7)+,D0
00018a98 e9 80 | | ASL.L #0x4,D0
00018a9a 59 4f |YO | SUBQ.L #0x4,A7
00018a9c 1f 28 00 03 | ( | MOVE.B (A0+0x3),-(A7)
00018aa0 4e ba fa dc |N | JSR 0x1857e
00018aa4 54 4f |TO | ADDQ.L #0x2,A7
00018aa6 d0 9f | | ADD.L (A7)+,D0
00018aa8 2d 40 ff e6 |-@ | MOVE.L D0,(A6-0x1a)
00018aac 20 57 | W | MOVEA.L (A7),A0
00018aae 11 80 58 f4 | X | MOVE.B D0,(A0+D5.L-#0xc)
00018ab2 52 85 |R | ADDQ.L #0x1,D5
00018ab4 4a 2e ff ea |J. | TST.B (A6-0x16)
00018ab8 67 00 fe d4 |g | BEQ 0x1898e
00018abc 50 4f |PO | ADDQ.L #0x8,A7
00018abe 48 6e ff da |Hn | PEA.L (A6-0x26)
00018ac2 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
00018ac8 54 4f |TO | ADDQ.L #0x2,A7
00018aca 42 17 |B | CLR.B (A7)
00018acc 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
00018ad0 48 78 00 01 |Hx | PEA.L 0x1
00018ad4 48 6e ff d8 |Hn | PEA.L (A6-0x28)
00018ad8 48 6e ff d4 |Hn | PEA.L (A6-0x2c)
00018adc 4e b9 00 01 3c 8a |N < | JSR _CloseFile(a : L; VAR status : B; VAR file : File)
00018ae2 de fc 00 10 | | ADDA.W #0x10,A7
00018ae6 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00018aea 20 50 | P | MOVEA.L (A0),A0
00018aec 20 05 | | MOVE.L D5,D0
00018aee 04 80 00 00 00 0f | | SUBI.L #0x0000000f,D0
00018af4 0c 80 00 00 00 ff | | CMPI.L #0x000000ff,D0
00018afa 63 02 |c | BLS 0x18afe
00018afc 4e 4f |NO | TRAP #15
00018afe 11 40 00 02 | @ | MOVE.B D0,(A0+0x2)
00018b02 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00018b06 20 50 | P | MOVEA.L (A0),A0
00018b08 21 68 00 f8 00 f4 |!h | MOVE.L (A0+0xf8),(A0+0xf4)
00018b0e 13 c2 00 02 00 2c | , | MOVE.B D2,0x2002c
00018b14 48 6e 00 0c |Hn | PEA.L (A6+0xc)
00018b18 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
00018b1e 58 4f |XO | ADDQ.L #0x4,A7
00018b20 4c df 1f ff |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D5+D6+D7+A0+A1+A2+A3+A4
00018b24 4e 5e |N^ | UNLK A6
00018b26 4e 75 |Nu | RTS
00018b28 ; --------------------------------------------------------------------------------------
00018b28 ; ExpInputParam(exp : Pointer; ptr : Pointer; len : L)
00018b28 ; Stack:
00018b28 ; A6+0x10 exp : Pointer
00018b28 ; A6+0xc ptr : Pointer
00018b28 ; A6+0x8 len : L
00018b28 ; OMSI PASCAL Function
00018b28 ; <LVAR 0x014 4(r)>
00018b28 ; <LVAR 0x010 4(r)>
00018b28 ; <LVAR 0x00c 4(r)>
00018b28 ; <LVAR 0x008 4(r)>
00018b28 ; --------------------------------------------------------------------------------------
00018b28 _ExpInputParam(exp : Pointer; ptr : Pointer; len : L):
00018b28 4e 56 ff d0 |NV | LINK.W A6,#0xffd0
00018b2c bf d5 | | CMPA.L (A5),A7
00018b2e 62 06 |b | BHI 0x18b36
00018b30 44 fc 00 02 |D | MOVE.W #0x2,CCR
00018b34 4e 76 |Nv | TRAPV
00018b36 de fc 00 28 | ( | ADDA.W #0x28,A7
00018b3a 48 e7 c3 c0 |H | MOVEM.L A1+A0+D7+D6+D1+D0,-(A7)
00018b3e 20 6e 00 14 | n | MOVEA.L (A6+0x14),A0
00018b42 2f 08 |/ | MOVE.L A0,-(A7)
00018b44 22 68 00 f4 |"h | MOVEA.L (A0+0xf4),A1
00018b48 42 80 |B | CLR.L D0
00018b4a 10 29 00 01 | ) | MOVE.B (A1+0x1),D0
00018b4e 2c 00 |, | MOVE.L D0,D6
00018b50 21 69 00 02 00 f4 |!i | MOVE.L (A1+0x2),(A0+0xf4)
00018b56 2f 2e 00 08 |/. | MOVE.L (A6+0x8),-(A7)
00018b5a 7e 00 |~ | MOVEQ.L #0x00,D7
00018b5c be 97 | | CMP.L (A7),D7
00018b5e 6e 1c |n | BGT 0x18b7c
00018b60 20 06 | | MOVE.L D6,D0
00018b62 d0 87 | | ADD.L D7,D0
00018b64 20 6f 00 04 | o | MOVEA.L (A7+0x4),A0
00018b68 22 6e 00 10 |"n | MOVEA.L (A6+0x10),A1
00018b6c 22 07 |" | MOVE.L D7,D1
00018b6e 92 ae 00 0c | | SUB.L (A6+0xc),D1
00018b72 11 b1 18 00 08 f4 | | MOVE.B (A1+D1.L),(A0+D0.L-#0xc)
00018b78 52 87 |R | ADDQ.L #0x1,D7
00018b7a 68 e0 |h | BVC 0x18b5c
00018b7c 50 4f |PO | ADDQ.L #0x8,A7
00018b7e 4c df 03 c3 |L | MOVEM.L (A7)+,D0+D1+D6+D7+A0+A1
00018b82 4e 5e |N^ | UNLK A6
00018b84 4e 75 |Nu | RTS
00018b86 ; --------------------------------------------------------------------------------------
00018b86 ; ExpInputFlag(exp : Pointer; val : Word)
00018b86 ; Stack:
00018b86 ; A6+0xa exp : Pointer
00018b86 ; A6+0x8 val : Word
00018b86 ; OMSI PASCAL Function
00018b86 ; <LVAR 0x00a 4(r)>
00018b86 ; <LVAR 0x008 1(r)>
00018b86 ; --------------------------------------------------------------------------------------
00018b86 _ExpInputFlag(exp : Pointer; val : Word):
00018b86 4e 56 ff da |NV | LINK.W A6,#0xffda
00018b8a bf d5 | | CMPA.L (A5),A7
00018b8c 62 06 |b | BHI 0x18b94
00018b8e 44 fc 00 02 |D | MOVE.W #0x2,CCR
00018b92 4e 76 |Nv | TRAPV
00018b94 de fc 00 20 | | ADDA.W #0x20,A7
00018b98 48 e7 c1 c0 |H | MOVEM.L A1+A0+D7+D1+D0,-(A7)
00018b9c 20 6e 00 0a | n | MOVEA.L (A6+0xa),A0
00018ba0 22 68 00 f4 |"h | MOVEA.L (A0+0xf4),A1
00018ba4 42 80 |B | CLR.L D0
00018ba6 10 11 | | MOVE.B (A1),D0
00018ba8 e5 08 | | LSL.B #0x2,D0
00018baa e4 08 | | LSR.B #0x2,D0
00018bac 2e 00 |. | MOVE.L D0,D7
00018bae 21 69 00 02 00 f4 |!i | MOVE.L (A1+0x2),(A0+0xf4)
00018bb4 4a 2e 00 08 |J. | TST.B (A6+0x8)
00018bb8 67 18 |g | BEQ 0x18bd2
00018bba 20 07 | | MOVE.L D7,D0
00018bbc e3 80 | | ASL.L #0x1,D0
00018bbe 43 fa f8 a8 |C | LEA.L 0x18468,A1
00018bc2 42 81 |B | CLR.L D1
00018bc4 12 28 00 05 | ( | MOVE.B (A0+0x5),D1
00018bc8 82 71 08 00 | q | OR.W (A1+D0.L),D1
00018bcc 11 41 00 05 | A | MOVE.B D1,(A0+0x5)
00018bd0 60 1a |` | BRA 0x18bec
00018bd2 20 07 | | MOVE.L D7,D0
00018bd4 e3 80 | | ASL.L #0x1,D0
00018bd6 43 fa f8 94 |C | LEA.L 0x1846c,A1
00018bda 30 31 08 00 |01 | MOVE.W (A1+D0.L),D0
00018bde 46 40 |F@ | NOT.W D0
00018be0 42 81 |B | CLR.L D1
00018be2 12 28 00 05 | ( | MOVE.B (A0+0x5),D1
00018be6 c0 41 | A | AND.W D1,D0
00018be8 11 40 00 05 | @ | MOVE.B D0,(A0+0x5)
00018bec 4c df 03 83 |L | MOVEM.L (A7)+,D0+D1+D7+A0+A1
00018bf0 4e 5e |N^ | UNLK A6
00018bf2 4e 75 |Nu | RTS
00018bf4 ; --------------------------------------------------------------------------------------
00018bf4 ; ExpOutputParam(exp : Pointer; b : Pointer; c : L; d : L)
00018bf4 ; Stack:
00018bf4 ; A6+0x14 exp : Pointer
00018bf4 ; A6+0x10 b : Pointer
00018bf4 ; A6+0xc c : L
00018bf4 ; A6+0x8 d : L
00018bf4 ; OMSI PASCAL Function
00018bf4 ; <LVAR 0x014 4(r)>
00018bf4 ; <LVAR 0x010 4(r)>
00018bf4 ; <LVAR 0x00c 4(r)>
00018bf4 ; <LVAR 0x008 4(r)>
00018bf4 ; --------------------------------------------------------------------------------------
00018bf4 _ExpOutputParam(exp : Pointer; b : Pointer; c : L; d : L):
00018bf4 4e 56 ff a2 |NV | LINK.W A6,#0xffa2
00018bf8 bf d5 | | CMPA.L (A5),A7
00018bfa 62 06 |b | BHI 0x18c02
00018bfc 44 fc 00 02 |D | MOVE.W #0x2,CCR
00018c00 4e 76 |Nv | TRAPV
00018c02 de fc 00 56 | V | ADDA.W #0x56,A7
00018c06 48 e7 c3 f0 |H | MOVEM.L A3+A2+A1+A0+D7+D6+D1+D0,-(A7)
00018c0a 20 6e 00 14 | n | MOVEA.L (A6+0x14),A0
00018c0e 22 68 00 f4 |"h | MOVEA.L (A0+0xf4),A1
00018c12 10 11 | | MOVE.B (A1),D0
00018c14 ee 08 | | LSR.B #0x7,D0
00018c16 67 34 |g4 | BEQ 0x18c4c
00018c18 9e fc 00 1a | | SUBA.W #0x1a,A7
00018c1c 24 4f |$O | MOVEA.L A7,A2
00018c1e 47 fa f5 b8 |G | LEA.L 0x181d8,A3
00018c22 70 18 |p | MOVEQ.L #0x18,D0
00018c24 14 db | | MOVE.B (A3)+,(A2)+
00018c26 51 c8 ff fc |Q | DBF D0,0x18c24
00018c2a 2f 2e 00 14 |/. | MOVE.L (A6+0x14),-(A7)
00018c2e 59 4f |YO | SUBQ.L #0x4,A7
00018c30 48 6f 00 08 |Ho | PEA.L (A7+0x8)
00018c34 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
00018c38 3f 3c 00 19 |?< | MOVE.W #0x19,-(A7)
00018c3c 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00018c42 50 4f |PO | ADDQ.L #0x8,A7
00018c44 4e ba f9 c2 |N | JSR 0x18608
00018c48 de fc 00 22 | " | ADDA.W #0x22,A7
00018c4c 42 80 |B | CLR.L D0
00018c4e 10 29 00 01 | ) | MOVE.B (A1+0x1),D0
00018c52 2c 00 |, | MOVE.L D0,D6
00018c54 21 69 00 02 00 f4 |!i | MOVE.L (A1+0x2),(A0+0xf4)
00018c5a 20 79 00 02 00 28 | y ( | MOVEA.L 0x20028,A0
00018c60 2f 08 |/ | MOVE.L A0,-(A7)
00018c62 2f 2e 00 08 |/. | MOVE.L (A6+0x8),-(A7)
00018c66 7e 00 |~ | MOVEQ.L #0x00,D7
00018c68 be 97 | | CMP.L (A7),D7
00018c6a 6e 1c |n | BGT 0x18c88
00018c6c 20 6e 00 10 | n | MOVEA.L (A6+0x10),A0
00018c70 20 07 | | MOVE.L D7,D0
00018c72 90 ae 00 0c | | SUB.L (A6+0xc),D0
00018c76 22 06 |" | MOVE.L D6,D1
00018c78 d2 87 | | ADD.L D7,D1
00018c7a 22 6f 00 04 |"o | MOVEA.L (A7+0x4),A1
00018c7e 11 b1 18 f4 08 00 | | MOVE.B (A1+D1.L-#0xc),(A0+D0.L)
00018c84 52 87 |R | ADDQ.L #0x1,D7
00018c86 68 e0 |h | BVC 0x18c68
00018c88 50 4f |PO | ADDQ.L #0x8,A7
00018c8a 4c df 0f c3 |L | MOVEM.L (A7)+,D0+D1+D6+D7+A0+A1+A2+A3
00018c8e 4e 5e |N^ | UNLK A6
00018c90 4e 75 |Nu | RTS
00018c92 ; --------------------------------------------------------------------------------------
00018c92 ; ExpOutputFlag(exp : Pointer; VAR status : Bool)
00018c92 ; Stack:
00018c92 ; A6+0xc exp : Pointer
00018c92 ; A6+0x8 VAR status : Bool
00018c92 ; OMSI PASCAL Function
00018c92 ; <LVAR 0x00c 4(r)>
00018c92 ; <LVAR 0x008 4(r)>
00018c92 ; --------------------------------------------------------------------------------------
00018c92 _ExpOutputFlag(exp : Pointer; VAR status : Bool):
00018c92 4e 56 ff aa |NV | LINK.W A6,#0xffaa
00018c96 bf d5 | | CMPA.L (A5),A7
00018c98 62 06 |b | BHI 0x18ca0
00018c9a 44 fc 00 02 |D | MOVE.W #0x2,CCR
00018c9e 4e 76 |Nv | TRAPV
00018ca0 de fc 00 52 | R | ADDA.W #0x52,A7
00018ca4 48 e7 c1 f0 |H | MOVEM.L A3+A2+A1+A0+D7+D1+D0,-(A7)
00018ca8 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
00018cac 22 68 00 f4 |"h | MOVEA.L (A0+0xf4),A1
00018cb0 10 11 | | MOVE.B (A1),D0
00018cb2 ee 08 | | LSR.B #0x7,D0
00018cb4 67 34 |g4 | BEQ 0x18cea
00018cb6 9e fc 00 1a | | SUBA.W #0x1a,A7
00018cba 24 4f |$O | MOVEA.L A7,A2
00018cbc 47 fa f5 1a |G | LEA.L 0x181d8,A3
00018cc0 70 18 |p | MOVEQ.L #0x18,D0
00018cc2 14 db | | MOVE.B (A3)+,(A2)+
00018cc4 51 c8 ff fc |Q | DBF D0,0x18cc2
00018cc8 2f 2e 00 0c |/. | MOVE.L (A6+0xc),-(A7)
00018ccc 59 4f |YO | SUBQ.L #0x4,A7
00018cce 48 6f 00 08 |Ho | PEA.L (A7+0x8)
00018cd2 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
00018cd6 3f 3c 00 19 |?< | MOVE.W #0x19,-(A7)
00018cda 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00018ce0 50 4f |PO | ADDQ.L #0x8,A7
00018ce2 4e ba f9 24 |N $ | JSR 0x18608
00018ce6 de fc 00 22 | " | ADDA.W #0x22,A7
00018cea 42 80 |B | CLR.L D0
00018cec 10 11 | | MOVE.B (A1),D0
00018cee e5 08 | | LSL.B #0x2,D0
00018cf0 e4 08 | | LSR.B #0x2,D0
00018cf2 2e 00 |. | MOVE.L D0,D7
00018cf4 21 69 00 02 00 f4 |!i | MOVE.L (A1+0x2),(A0+0xf4)
00018cfa 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00018cfe 42 10 |B | CLR.B (A0)
00018d00 22 79 00 02 00 28 |"y ( | MOVEA.L 0x20028,A1
00018d06 20 07 | | MOVE.L D7,D0
00018d08 e3 80 | | ASL.L #0x1,D0
00018d0a 45 fa f7 64 |E d | LEA.L 0x18470,A2
00018d0e 42 81 |B | CLR.L D1
00018d10 12 29 00 02 | ) | MOVE.B (A1+0x2),D1
00018d14 c2 72 08 00 | r | AND.W (A2+D0.L),D1
00018d18 67 02 |g | BEQ 0x18d1c
00018d1a 52 10 |R | ADDQ.B #0x1,(A0)
00018d1c 4c df 0f 83 |L | MOVEM.L (A7)+,D0+D1+D7+A0+A1+A2+A3
00018d20 4e 5e |N^ | UNLK A6
00018d22 4e 75 |Nu | RTS
00018d24 ; --------------------------------------------------------------------------------------
00018d24 ; ExpXmit(adr : Byte; b : Pointer)
00018d24 ; Stack:
00018d24 ; A6+0xc adr : Byte
00018d24 ; A6+0x8 b : Pointer
00018d24 ; OMSI PASCAL Function
00018d24 ; <LVAR 0x00c 1(r)>
00018d24 ; <LVAR 0x008 4(r)>
00018d24 ; <LVAR -0x002 @>
00018d24 ; --------------------------------------------------------------------------------------
00018d24 _ExpXmit(adr : Byte; b : Pointer):
00018d24 4e 56 ff e8 |NV | LINK.W A6,#0xffe8
00018d28 bf d5 | | CMPA.L (A5),A7
00018d2a 62 06 |b | BHI 0x18d32
00018d2c 44 fc 00 02 |D | MOVE.W #0x2,CCR
00018d30 4e 76 |Nv | TRAPV
00018d32 de fc 00 16 | | ADDA.W #0x16,A7
00018d36 48 e7 00 80 |H | MOVEM.L A0,-(A7)
00018d3a 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00018d3e 11 6e 00 0c 00 01 | n | MOVE.B (A6+0xc),(A0+0x1)
00018d44 2f 2e 00 08 |/. | MOVE.L (A6+0x8),-(A7)
00018d48 3f 3c 00 05 |?< | MOVE.W #0x5,-(A7)
00018d4c 48 6e ff fe |Hn | PEA.L (A6-0x2)
00018d50 4e b9 00 01 02 2a |N * | JSR KC15_DiagBus(a : Word; b : Long) : Byte
00018d56 de fc 00 0a | | ADDA.W #0xa,A7
00018d5a 4c df 01 00 |L | MOVEM.L (A7)+,A0
00018d5e 4e 5e |N^ | UNLK A6
00018d60 4e 75 |Nu | RTS
00018d62 ; --------------------------------------------------------------------------------------
00018d62 ; DiProcPing(adr : Byte; VAR status : Byte; VAR b80 : Bool; VAR b40 : Bool)
00018d62 ; Stack:
00018d62 ; A6+0x14 adr : Byte
00018d62 ; A6+0x10 VAR status : Byte
00018d62 ; A6+0xc VAR b80 : Bool
00018d62 ; A6+0x8 VAR b40 : Bool
00018d62 ; OMSI PASCAL Function
00018d62 ; <LVAR 0x014 1(r)>
00018d62 ; <LVAR 0x010 4(r)>
00018d62 ; <LVAR 0x00c 4(r)>
00018d62 ; <LVAR 0x008 4(r)>
00018d62 ; <LVAR -0x004 @ 2(r)>
00018d62 ; <LVAR -0x005 1(w)>
00018d62 ; <LVAR -0x006 @>
00018d62 ; --------------------------------------------------------------------------------------
00018d62 _DiProcPing(adr : Byte; VAR status : Byte; VAR b80 : Bool; VAR b40 : Bool):
00018d62 4e 56 ff de |NV | LINK.W A6,#0xffde
00018d66 bf d5 | | CMPA.L (A5),A7
00018d68 62 06 |b | BHI 0x18d70
00018d6a 44 fc 00 02 |D | MOVE.W #0x2,CCR
00018d6e 4e 76 |Nv | TRAPV
00018d70 de fc 00 1c | | ADDA.W #0x1c,A7
00018d74 48 e7 80 c0 |H | MOVEM.L A1+A0+D0,-(A7)
00018d78 43 ee ff fc |C | LEA.L (A6-0x4),A1
00018d7c 10 2e 00 14 | . | MOVE.B (A6+0x14),D0
00018d80 48 80 |H | EXTB.W D0
00018d82 41 fa f6 d4 |A | LEA.L diproc_adr_valid,A0
00018d86 4a 30 00 00 |J0 | TST.B (A0+D0.W)
00018d8a 66 16 |f | BNE 0x18da2
00018d8c 20 6e 00 10 | n | MOVEA.L (A6+0x10),A0
00018d90 42 10 |B | CLR.B (A0)
00018d92 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00018d96 10 bc 00 01 | | MOVE.B #0x01,(A0)
00018d9a 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
00018d9e 42 10 |B | CLR.B (A0)
00018da0 60 4e |`N | BRA 0x18df0
00018da2 1d 40 ff fb | @ | MOVE.B D0,(A6-0x5)
00018da6 41 ee ff fa |A | LEA.L (A6-0x6),A0
00018daa 2f 08 |/ | MOVE.L A0,-(A7)
00018dac 42 67 |Bg | CLR.W -(A7)
00018dae 48 51 |HQ | PEA.L (A1)
00018db0 4e b9 00 01 02 2a |N * | JSR KC15_DiagBus(a : Word; b : Long) : Byte
00018db6 de fc 00 0a | | ADDA.W #0xa,A7
00018dba 20 6e 00 10 | n | MOVEA.L (A6+0x10),A0
00018dbe 30 11 |0 | MOVE.W (A1),D0
00018dc0 02 40 00 0f | @ | ANDI.W #0x000f,D0
00018dc4 1f 00 | | MOVE.B D0,-(A7)
00018dc6 42 80 |B | CLR.L D0
00018dc8 10 1f | | MOVE.B (A7)+,D0
00018dca 41 bc 00 09 |A | CHK.W #0x9,D0
00018dce 10 80 | | MOVE.B D0,(A0)
00018dd0 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00018dd4 42 10 |B | CLR.B (A0)
00018dd6 30 11 |0 | MOVE.W (A1),D0
00018dd8 02 40 00 40 | @ @ | ANDI.W #0x0040,D0
00018ddc 66 02 |f | BNE 0x18de0
00018dde 52 10 |R | ADDQ.B #0x1,(A0)
00018de0 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
00018de4 42 10 |B | CLR.B (A0)
00018de6 30 11 |0 | MOVE.W (A1),D0
00018de8 02 40 00 80 | @ | ANDI.W #0x0080,D0
00018dec 67 02 |g | BEQ 0x18df0
00018dee 52 10 |R | ADDQ.B #0x1,(A0)
00018df0 4c df 03 01 |L | MOVEM.L (A7)+,D0+A0+A1
00018df4 4e 5e |N^ | UNLK A6
00018df6 4e 75 |Nu | RTS
00018df8 ; --------------------------------------------------------------------------------------
00018df8 ; DiProcCmd(board : Byte; cmd : Byte)
00018df8 ; Stack:
00018df8 ; A6+0xa board : Byte
00018df8 ; A6+0x8 cmd : Byte
00018df8 ; OMSI PASCAL Function
00018df8 ; <LVAR 0x00a 1(r)>
00018df8 ; <LVAR 0x008 1(r)>
00018df8 ; <LVAR -0x002 @>
00018df8 ; <LVAR -0x003 1(w)>
00018df8 ; <LVAR -0x004 @>
00018df8 ; --------------------------------------------------------------------------------------
00018df8 _DiProcCmd(board : Byte; cmd : Byte):
00018df8 4e 56 ff e2 |NV | LINK.W A6,#0xffe2
00018dfc bf d5 | | CMPA.L (A5),A7
00018dfe 62 06 |b | BHI 0x18e06
00018e00 44 fc 00 02 |D | MOVE.W #0x2,CCR
00018e04 4e 76 |Nv | TRAPV
00018e06 de fc 00 1a | | ADDA.W #0x1a,A7
00018e0a 48 e7 c0 80 |H | MOVEM.L A0+D1+D0,-(A7)
00018e0e 1d 6e 00 0a ff fd | n | MOVE.B (A6+0xa),(A6-0x3)
00018e14 41 ee ff fc |A | LEA.L (A6-0x4),A0
00018e18 2f 08 |/ | MOVE.L A0,-(A7)
00018e1a 10 2e 00 08 | . | MOVE.B (A6+0x8),D0
00018e1e 48 80 |H | EXTB.W D0
00018e20 41 fa f6 52 |A R | LEA.L diproc_adr_table[TVISF],A0
00018e24 12 30 00 00 | 0 | MOVE.B (A0+D0.W),D1
00018e28 48 81 |H | EXTB.W D1
00018e2a 3f 01 |? | MOVE.W D1,-(A7)
00018e2c 48 6e ff fe |Hn | PEA.L (A6-0x2)
00018e30 4e b9 00 01 02 2a |N * | JSR KC15_DiagBus(a : Word; b : Long) : Byte
00018e36 de fc 00 0a | | ADDA.W #0xa,A7
00018e3a 4c df 01 03 |L | MOVEM.L (A7)+,D0+D1+A0
00018e3e 4e 5e |N^ | UNLK A6
00018e40 4e 75 |Nu | RTS
00018e42 ; --------------------------------------------------------------------------------------
00018e42 ; ExpUpload(adr: Byte; ptr: Pointer; VAR status : Byte)
00018e42 ; Stack:
00018e42 ; A6+0x10 adr : Byte
00018e42 ; A6+0xc ptr : Pointer
00018e42 ; A6+0x8 VAR status : Byte
00018e42 ; OMSI PASCAL Function
00018e42 ; <LVAR 0x010 1(r)>
00018e42 ; <LVAR 0x00c 4(r)>
00018e42 ; <LVAR 0x008 4(r)>
00018e42 ; <LVAR -0x002 @ 2(r)>
00018e42 ; --------------------------------------------------------------------------------------
00018e42 _ExpUpload(adr: Byte; ptr: Pointer; VAR status : Byte):
00018e42 4e 56 ff d6 |NV | LINK.W A6,#0xffd6
00018e46 bf d5 | | CMPA.L (A5),A7
00018e48 62 06 |b | BHI 0x18e50
00018e4a 44 fc 00 02 |D | MOVE.W #0x2,CCR
00018e4e 4e 76 |Nv | TRAPV
00018e50 de fc 00 28 | ( | ADDA.W #0x28,A7
00018e54 48 e7 e0 c0 |H | MOVEM.L A1+A0+D2+D1+D0,-(A7)
00018e58 10 2e 00 10 | . | MOVE.B (A6+0x10),D0
00018e5c 48 80 |H | EXTB.W D0
00018e5e 41 fa f5 f8 |A | LEA.L diproc_adr_valid,A0
00018e62 4a 30 00 00 |J0 | TST.B (A0+D0.W)
00018e66 66 08 |f | BNE 0x18e70
00018e68 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00018e6c 42 10 |B | CLR.B (A0)
00018e6e 60 74 |`t | BRA 0x18ee4
00018e70 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
00018e74 12 28 01 1c | ( | MOVE.B (A0+0x11c),D1
00018e78 ee 09 | | LSR.B #0x7,D1
00018e7a 67 68 |gh | BEQ 0x18ee4
00018e7c 22 79 00 02 00 28 |"y ( | MOVEA.L 0x20028,A1
00018e82 13 40 00 01 | @ | MOVE.B D0,(A1+0x1)
00018e86 13 68 01 1a 00 03 | h | MOVE.B (A0+0x11a),(A1+0x3)
00018e8c 10 28 01 1a | ( | MOVE.B (A0+0x11a),D0
00018e90 b0 28 01 1b | ( | CMP.B (A0+0x11b),D0
00018e94 63 06 |c | BLS 0x18e9c
00018e96 42 29 00 02 |B) | CLR.B (A1+0x2)
00018e9a 60 18 |` | BRA 0x18eb4
00018e9c 42 81 |B | CLR.L D1
00018e9e 12 28 01 1b | ( | MOVE.B (A0+0x11b),D1
00018ea2 42 82 |B | CLR.L D2
00018ea4 14 00 | | MOVE.B D0,D2
00018ea6 44 42 |DB | NEG.W D2
00018ea8 d4 41 | A | ADD.W D1,D2
00018eaa 52 42 |RB | ADDQ.W #0x1,D2
00018eac 45 bc 00 ff |E | CHK.W #0xff,D2
00018eb0 13 42 00 02 | B | MOVE.B D2,(A1+0x2)
00018eb4 2f 39 00 02 00 28 |/9 ( | MOVE.L 0x20028,-(A7)
00018eba 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
00018ebe 48 6e ff fe |Hn | PEA.L (A6-0x2)
00018ec2 4e b9 00 01 02 2a |N * | JSR KC15_DiagBus(a : Word; b : Long) : Byte
00018ec8 de fc 00 0a | | ADDA.W #0xa,A7
00018ecc 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00018ed0 30 2e ff fe |0. | MOVE.W (A6-0x2),D0
00018ed4 02 40 00 0f | @ | ANDI.W #0x000f,D0
00018ed8 1f 00 | | MOVE.B D0,-(A7)
00018eda 42 80 |B | CLR.L D0
00018edc 10 1f | | MOVE.B (A7)+,D0
00018ede 41 bc 00 09 |A | CHK.W #0x9,D0
00018ee2 10 80 | | MOVE.B D0,(A0)
00018ee4 4c df 03 07 |L | MOVEM.L (A7)+,D0+D1+D2+A0+A1
00018ee8 4e 5e |N^ | UNLK A6
00018eea 4e 75 |Nu | RTS
00018eec ; --------------------------------------------------------------------------------------
00018eec ; ExpClose(exp : Pointer)
00018eec ; Stack:
00018eec ; A6+0x8 exp : Pointer
00018eec ; OMSI PASCAL Function
00018eec ; <LVAR 0x008 4(r)>
00018eec ; <LVAR -0x008 @ 4(rw)>
00018eec ; --------------------------------------------------------------------------------------
00018eec _ExpClose(exp : Pointer):
00018eec 4e 56 ff 9c |NV | LINK.W A6,#0xff9c
00018ef0 bf d5 | | CMPA.L (A5),A7
00018ef2 62 06 |b | BHI 0x18efa
00018ef4 44 fc 00 02 |D | MOVE.W #0x2,CCR
00018ef8 4e 76 |Nv | TRAPV
00018efa de fc 00 5c | \ | ADDA.W #0x5c,A7
00018efe 48 e7 d9 f0 |H | MOVEM.L A3+A2+A1+A0+D7+D4+D3+D1+D0,-(A7)
00018f02 47 ee ff f8 |G | LEA.L (A6-0x8),A3
00018f06 72 01 |r | MOVEQ.L #0x01,D1
00018f08 42 80 |B | CLR.L D0
00018f0a 30 39 00 02 00 26 |09 & | MOVE.W 0x20026,D0
00018f10 2f 00 |/ | MOVE.L D0,-(A7)
00018f12 7e 00 |~ | MOVEQ.L #0x00,D7
00018f14 be 97 | | CMP.L (A7),D7
00018f16 6e 34 |n4 | BGT 0x18f4c
00018f18 28 07 |( | MOVE.L D7,D4
00018f1a 76 06 |v | MOVEQ.L #0x06,D3
00018f1c 4e b9 00 01 07 ea |N | JSR _?muls_d3_d4
00018f22 41 f8 00 00 |A | LEA.L 0x0,A0
00018f26 41 f0 48 00 |A H | LEA.L (A0+D4.L),A0
00018f2a 22 48 |"H | MOVEA.L A0,A1
00018f2c d3 fc 00 02 00 2e | . | ADDA.L #0x2002e,A1
00018f32 24 6e 00 08 |$n | MOVEA.L (A6+0x8),A2
00018f36 22 51 |"Q | MOVEA.L (A1),A1
00018f38 b3 d2 | | CMPA.L (A2),A1
00018f3a 66 0c |f | BNE 0x18f48
00018f3c d1 fc 00 02 00 2c | , | ADDA.L #0x2002c,A0
00018f42 42 10 |B | CLR.B (A0)
00018f44 58 4f |XO | ADDQ.L #0x4,A7
00018f46 60 34 |`4 | BRA 0x18f7c
00018f48 52 87 |R | ADDQ.L #0x1,D7
00018f4a 68 c8 |h | BVC 0x18f14
00018f4c 58 4f |XO | ADDQ.L #0x4,A7
00018f4e 41 fa f3 2c |A , | LEA.L 0x1827c,A0
00018f52 70 12 |p | MOVEQ.L #0x12,D0
00018f54 3f 20 |? | MOVE.W -(A0),-(A7)
00018f56 51 c8 ff fc |Q | DBF D0,0x18f54
00018f5a 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
00018f5e 59 4f |YO | SUBQ.L #0x4,A7
00018f60 48 6f 00 06 |Ho | PEA.L (A7+0x6)
00018f64 3f 01 |? | MOVE.W D1,-(A7)
00018f66 3f 3c 00 26 |?< & | MOVE.W #0x26,-(A7)
00018f6a 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00018f70 50 4f |PO | ADDQ.L #0x8,A7
00018f72 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
00018f78 de fc 00 2c | , | ADDA.W #0x2c,A7
00018f7c 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00018f80 20 81 | | MOVE.L D1,(A0)
00018f82 4a 39 00 02 00 24 |J9 $ | TST.B exp_init_done
00018f88 67 60 |g` | BEQ 0x18fea
00018f8a 5d 4f |]O | SUBQ.L #0x6,A7
00018f8c 20 4f | O | MOVEA.L A7,A0
00018f8e 43 fa f2 ec |C | LEA.L 0x1827c,A1
00018f92 70 04 |p | MOVEQ.L #0x04,D0
00018f94 10 d9 | | MOVE.B (A1)+,(A0)+
00018f96 51 c8 ff fc |Q | DBF D0,0x18f94
00018f9a 59 4f |YO | SUBQ.L #0x4,A7
00018f9c 48 6f 00 04 |Ho | PEA.L (A7+0x4)
00018fa0 3f 01 |? | MOVE.W D1,-(A7)
00018fa2 3f 3c 00 05 |?< | MOVE.W #0x5,-(A7)
00018fa6 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00018fac 50 4f |PO | ADDQ.L #0x8,A7
00018fae 26 9f |& | MOVE.L (A7)+,(A3)
00018fb0 5c 4f |\O | ADDQ.L #0x6,A7
00018fb2 20 53 | S | MOVEA.L (A3),A0
00018fb4 11 7c 00 0d 00 02 | | | MOVE.B #0x0d,(A0+0x2)
00018fba 11 7c 00 1b 00 03 | | | MOVE.B #0x1b,(A0+0x3)
00018fc0 5d 4f |]O | SUBQ.L #0x6,A7
00018fc2 4e b9 00 01 5b 2a |N [* | JSR _GetConsoleConfig() : Long
00018fc8 20 1f | | MOVE.L (A7)+,D0
00018fca 0c 80 00 00 ff ff | | CMPI.L #0x0000ffff,D0
00018fd0 63 02 |c | BLS 0x18fd4
00018fd2 4e 4f |NO | TRAP #15
00018fd4 3e 80 |> | MOVE.W D0,(A7)
00018fd6 2f 13 |/ | MOVE.L (A3),-(A7)
00018fd8 4e b9 00 01 02 0a |N | JSR KC05_PortWriteString(port : Word ; str : String)
00018fde 5c 4f |\O | ADDQ.L #0x6,A7
00018fe0 48 53 |HS | PEA.L (A3)
00018fe2 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
00018fe8 58 4f |XO | ADDQ.L #0x4,A7
00018fea 4c df 0f 9b |L | MOVEM.L (A7)+,D0+D1+D3+D4+D7+A0+A1+A2+A3
00018fee 4e 5e |N^ | UNLK A6
00018ff0 4e 75 |Nu | RTS
00018ff2 ; --------------------------------------------------------------------------------------
00018ff2 ; BoardName(address : B) : String
00018ff2 ; Stack:
00018ff2 ; A6+0xa VAR RETURN : String
00018ff2 ; A6+0x8 address : B
00018ff2 ; OMSI PASCAL Function
00018ff2 ; <LVAR 0x00a 4(w)>
00018ff2 ; <LVAR 0x008 1(r)>
00018ff2 ; --------------------------------------------------------------------------------------
00018ff2 _BoardName(address : B) : String:
00018ff2 4e 56 ff c6 |NV | LINK.W A6,#0xffc6
00018ff6 bf d5 | | CMPA.L (A5),A7
00018ff8 62 06 |b | BHI 0x19000
00018ffa 44 fc 00 02 |D | MOVE.W #0x2,CCR
00018ffe 4e 76 |Nv | TRAPV
00019000 de fc 00 38 | 8 | ADDA.W #0x38,A7
00019004 48 e7 e0 f0 |H | MOVEM.L A3+A2+A1+A0+D2+D1+D0,-(A7)
00019008 45 f9 00 01 0d a4 |E | LEA.L _StringLit(Src : Pointer; Offset: W; Len : W) : String,A2
0001900e 47 ee 00 0a |G | LEA.L (A6+0xa),A3
00019012 72 0a |r | MOVEQ.L #0x0a,D1
00019014 74 01 |t | MOVEQ.L #0x01,D2
00019016 10 2e 00 08 | . | MOVE.B (A6+0x8),D0
0001901a 0c 00 00 04 | | CMPI.B #0x04,D0
0001901e 66 28 |f( | BNE 0x19048
00019020 59 4f |YO | SUBQ.L #0x4,A7
00019022 1e ba f2 fe | | MOVE.B t_I,(A7)
00019026 1f 7a f2 fb 00 01 | z | MOVE.B t_O,(A7+0x1)
0001902c 1f 7a f2 f6 00 02 | z | MOVE.B t_C,(A7+0x2)
00019032 59 4f |YO | SUBQ.L #0x4,A7
00019034 48 6f 00 04 |Ho | PEA.L (A7+0x4)
00019038 3f 02 |? | MOVE.W D2,-(A7)
0001903a 3f 3c 00 03 |?< | MOVE.W #0x3,-(A7)
0001903e 4e 92 |N | JSR (A2)
00019040 50 4f |PO | ADDQ.L #0x8,A7
00019042 26 9f |& | MOVE.L (A7)+,(A3)
00019044 58 4f |XO | ADDQ.L #0x4,A7
00019046 60 54 |`T | BRA 0x1909c
00019048 b0 01 | | CMP.B D1,D0
0001904a 66 26 |f& | BNE 0x19072
0001904c 51 4f |QO | SUBQ.L #0x8,A7
0001904e 20 4f | O | MOVEA.L A7,A0
00019050 43 fa f2 d4 |C | LEA.L 0x18326,A1
00019054 70 06 |p | MOVEQ.L #0x06,D0
00019056 10 d9 | | MOVE.B (A1)+,(A0)+
00019058 51 c8 ff fc |Q | DBF D0,0x19056
0001905c 59 4f |YO | SUBQ.L #0x4,A7
0001905e 48 6f 00 04 |Ho | PEA.L (A7+0x4)
00019062 3f 02 |? | MOVE.W D2,-(A7)
00019064 3f 3c 00 07 |?< | MOVE.W #0x7,-(A7)
00019068 4e 92 |N | JSR (A2)
0001906a 50 4f |PO | ADDQ.L #0x8,A7
0001906c 26 9f |& | MOVE.L (A7)+,(A3)
0001906e 50 4f |PO | ADDQ.L #0x8,A7
00019070 60 2a |`* | BRA 0x1909c
00019072 48 80 |H | EXTB.W D0
00019074 c1 c1 | | MULS.W D1,D0
00019076 41 fa f4 01 |A | LEA.L ExpDestinations[16],A0
0001907a 9e c1 | | SUBA.W D1,A7
0001907c 22 4f |"O | MOVEA.L A7,A1
0001907e 41 f0 00 00 |A | LEA.L (A0+D0.W),A0
00019082 70 09 |p | MOVEQ.L #0x09,D0
00019084 12 d8 | | MOVE.B (A0)+,(A1)+
00019086 51 c8 ff fc |Q | DBF D0,0x19084
0001908a 59 4f |YO | SUBQ.L #0x4,A7
0001908c 48 6f 00 04 |Ho | PEA.L (A7+0x4)
00019090 3f 02 |? | MOVE.W D2,-(A7)
00019092 3f 01 |? | MOVE.W D1,-(A7)
00019094 4e 92 |N | JSR (A2)
00019096 50 4f |PO | ADDQ.L #0x8,A7
00019098 26 9f |& | MOVE.L (A7)+,(A3)
0001909a de c1 | | ADDA.W D1,A7
0001909c 4c df 0f 07 |L | MOVEM.L (A7)+,D0+D1+D2+A0+A1+A2+A3
000190a0 4e 5e |N^ | UNLK A6
000190a2 4e 75 |Nu | RTS
000190a4 ; --------------------------------------------------------------------------------------
000190a4 ; ExpStatus2Text(status.B, &String)
000190a4 ; OMSI PASCAL Function
000190a4 ; <LVAR 0x00a 4(w)>
000190a4 ; <LVAR 0x008 1(r)>
000190a4 ; --------------------------------------------------------------------------------------
000190a4 _ExpStatus2Text(status.B, &String):
000190a4 4e 56 ff d4 |NV | LINK.W A6,#0xffd4
000190a8 bf d5 | | CMPA.L (A5),A7
000190aa 62 06 |b | BHI 0x190b2
000190ac 44 fc 00 02 |D | MOVE.W #0x2,CCR
000190b0 4e 76 |Nv | TRAPV
000190b2 de fc 00 2a | * | ADDA.W #0x2a,A7
000190b6 48 e7 c0 c0 |H | MOVEM.L A1+A0+D1+D0,-(A7)
000190ba 72 0a |r | MOVEQ.L #0x0a,D1
000190bc 10 2e 00 08 | . | MOVE.B (A6+0x8),D0
000190c0 48 80 |H | EXTB.W D0
000190c2 c1 c1 | | MULS.W D1,D0
000190c4 41 fa f4 53 |A S | LEA.L ExpStatus[10],A0
000190c8 9e c1 | | SUBA.W D1,A7
000190ca 22 4f |"O | MOVEA.L A7,A1
000190cc 41 f0 00 00 |A | LEA.L (A0+D0.W),A0
000190d0 70 09 |p | MOVEQ.L #0x09,D0
000190d2 12 d8 | | MOVE.B (A0)+,(A1)+
000190d4 51 c8 ff fc |Q | DBF D0,0x190d2
000190d8 59 4f |YO | SUBQ.L #0x4,A7
000190da 48 6f 00 04 |Ho | PEA.L (A7+0x4)
000190de 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
000190e2 3f 01 |? | MOVE.W D1,-(A7)
000190e4 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
000190ea 50 4f |PO | ADDQ.L #0x8,A7
000190ec 2d 5f 00 0a |-_ | MOVE.L (A7)+,(A6+0xa)
000190f0 de c1 | | ADDA.W D1,A7
000190f2 4c df 03 03 |L | MOVEM.L (A7)+,D0+D1+A0+A1
000190f6 4e 5e |N^ | UNLK A6
000190f8 4e 75 |Nu | RTS
000190fa ; --------------------------------------------------------------------------------------
000190fa ; ?FS104a8(VAR : Pointer; b : L; c : L ; VAR : Pointer; e: L; f : L) : Bool
000190fa ; Stack:
000190fa ; A6+0x20 VAR RETURN : Bool
000190fa ; A6+0x1c VAR : Pointer
000190fa ; A6+0x18 b : L
000190fa ; A6+0x14 c : L
000190fa ; A6+0x10 VAR : Pointer
000190fa ; A6+0xc e : L
000190fa ; A6+0x8 f : L
000190fa ; OMSI PASCAL Function
000190fa ; <LVAR 0x020 1(rw)>
000190fa ; <LVAR 0x01c 4(r)>
000190fa ; <LVAR 0x018 4(r)>
000190fa ; <LVAR 0x014 4(r)>
000190fa ; <LVAR 0x010 4(r)>
000190fa ; <LVAR 0x00c 4(r)>
000190fa ; <LVAR 0x008 4(r)>
000190fa ; --------------------------------------------------------------------------------------
000190fa _?FS104a8(VAR : Pointer; b : L; c : L ; VAR : Pointer; e: L; f : L) : Bool:
000190fa 4e 56 ff dc |NV | LINK.W A6,#0xffdc
000190fe bf d5 | | CMPA.L (A5),A7
00019100 62 06 |b | BHI 0x19108
00019102 44 fc 00 02 |D | MOVE.W #0x2,CCR
00019106 4e 76 |Nv | TRAPV
00019108 de fc 00 20 | | ADDA.W #0x20,A7
0001910c 48 e7 c1 c0 |H | MOVEM.L A1+A0+D7+D1+D0,-(A7)
00019110 42 2e 00 20 |B. | CLR.B (A6+0x20)
00019114 4a ae 00 18 |J | TST.L (A6+0x18)
00019118 66 48 |fH | BNE 0x19162
0001911a 4a ae 00 0c |J | TST.L (A6+0xc)
0001911e 66 42 |fB | BNE 0x19162
00019120 20 2e 00 14 | . | MOVE.L (A6+0x14),D0
00019124 b0 ae 00 08 | | CMP.L (A6+0x8),D0
00019128 66 38 |f8 | BNE 0x19162
0001912a 2f 2e 00 14 |/. | MOVE.L (A6+0x14),-(A7)
0001912e 7e 00 |~ | MOVEQ.L #0x00,D7
00019130 be 97 | | CMP.L (A7),D7
00019132 6e 26 |n& | BGT 0x1915a
00019134 20 6e 00 1c | n | MOVEA.L (A6+0x1c),A0
00019138 20 07 | | MOVE.L D7,D0
0001913a 90 ae 00 18 | | SUB.L (A6+0x18),D0
0001913e 22 6e 00 10 |"n | MOVEA.L (A6+0x10),A1
00019142 22 07 |" | MOVE.L D7,D1
00019144 92 ae 00 0c | | SUB.L (A6+0xc),D1
00019148 10 30 08 00 | 0 | MOVE.B (A0+D0.L),D0
0001914c b0 31 18 00 | 1 | CMP.B (A1+D1.L),D0
00019150 67 04 |g | BEQ 0x19156
00019152 58 4f |XO | ADDQ.L #0x4,A7
00019154 60 0c |` | BRA 0x19162
00019156 52 87 |R | ADDQ.L #0x1,D7
00019158 68 d6 |h | BVC 0x19130
0001915a 58 4f |XO | ADDQ.L #0x4,A7
0001915c 1d 7c 00 01 00 20 | | | MOVE.B #0x01,(A6+0x20)
00019162 4c df 03 83 |L | MOVEM.L (A7)+,D0+D1+D7+A0+A1
00019166 4e 5e |N^ | UNLK A6
00019168 4e 75 |Nu | RTS
0001916a ; --------------------------------------------------------------------------------------
0001916a ; FSCALL_104ae
0001916a ; OMSI PASCAL Function
0001916a ; <LVAR 0x010 4(r)>
0001916a ; <LVAR 0x00c 4(r)>
0001916a ; <LVAR 0x008 4(r)>
0001916a ; --------------------------------------------------------------------------------------
0001916a _FSCALL_104ae:
0001916a 4e 56 ff d8 |NV | LINK.W A6,#0xffd8
0001916e bf d5 | | CMPA.L (A5),A7
00019170 62 06 |b | BHI 0x19178
00019172 44 fc 00 02 |D | MOVE.W #0x2,CCR
00019176 4e 76 |Nv | TRAPV
00019178 de fc 00 1c | | ADDA.W #0x1c,A7
0001917c 48 e7 c1 80 |H | MOVEM.L A0+D7+D1+D0,-(A7)
00019180 7e 00 |~ | MOVEQ.L #0x00,D7
00019182 20 07 | | MOVE.L D7,D0
00019184 e3 80 | | ASL.L #0x1,D0
00019186 32 36 08 14 |26 | MOVE.W (A6+D0.L+#0x14),D1
0001918a e0 49 | I | LSR.W #0x8,D1
0001918c 1d 81 08 f4 | | MOVE.B D1,(A6+D0.L-#0xc)
00019190 32 36 08 14 |26 | MOVE.W (A6+D0.L+#0x14),D1
00019194 02 41 00 ff | A | ANDI.W #0x00ff,D1
00019198 1d 81 08 f5 | | MOVE.B D1,(A6+D0.L-#0xb)
0001919c 52 87 |R | ADDQ.L #0x1,D7
0001919e 0c 87 00 00 00 03 | | CMPI.L #0x00000003,D7
000191a4 6f dc |o | BLE 0x19182
000191a6 2f 2e 00 08 |/. | MOVE.L (A6+0x8),-(A7)
000191aa 7e 00 |~ | MOVEQ.L #0x00,D7
000191ac be 97 | | CMP.L (A7),D7
000191ae 6e 1c |n | BGT 0x191cc
000191b0 20 6e 00 10 | n | MOVEA.L (A6+0x10),A0
000191b4 20 07 | | MOVE.L D7,D0
000191b6 90 ae 00 0c | | SUB.L (A6+0xc),D0
000191ba 72 07 |r | MOVEQ.L #0x07,D1
000191bc 92 ae 00 08 | | SUB.L (A6+0x8),D1
000191c0 d2 87 | | ADD.L D7,D1
000191c2 11 b6 18 f4 08 00 | | MOVE.B (A6+D1.L-#0xc),(A0+D0.L)
000191c8 52 87 |R | ADDQ.L #0x1,D7
000191ca 68 e0 |h | BVC 0x191ac
000191cc 58 4f |XO | ADDQ.L #0x4,A7
000191ce 4c df 01 83 |L | MOVEM.L (A7)+,D0+D1+D7+A0
000191d2 4e 5e |N^ | UNLK A6
000191d4 4e 75 |Nu | RTS
000191d6 ; --------------------------------------------------------------------------------------
000191d6 ; ?FS104b4(VAR a: Long; b: L; MOD c: L; VAR d : Q)
000191d6 ; Stack:
000191d6 ; A6+0x14 VAR a : Long
000191d6 ; A6+0x10 b : L
000191d6 ; A6+0xc c : L
000191d6 ; A6+0x8 VAR d : Q
000191d6 ; OMSI PASCAL Function
000191d6 ; <LVAR 0x014 4(r)>
000191d6 ; <LVAR 0x010 4(r)>
000191d6 ; <LVAR 0x00c 4(r)>
000191d6 ; <LVAR 0x008 4(r)>
000191d6 ; <LVAR -0x005 1(r)>
000191d6 ; <LVAR -0x006 1(r)>
000191d6 ; <LVAR -0x007 1(r)>
000191d6 ; <LVAR -0x008 1(r)>
000191d6 ; <LVAR -0x009 1(r)>
000191d6 ; <LVAR -0x00a 1(r)>
000191d6 ; <LVAR -0x00b 1(r)>
000191d6 ; <LVAR -0x00c 1(r)>
000191d6 ; --------------------------------------------------------------------------------------
000191d6 _?FS104b4(VAR a: Long; b: L; MOD c: L; VAR d : Q):
000191d6 4e 56 ff d8 |NV | LINK.W A6,#0xffd8
000191da bf d5 | | CMPA.L (A5),A7
000191dc 62 06 |b | BHI 0x191e4
000191de 44 fc 00 02 |D | MOVE.W #0x2,CCR
000191e2 4e 76 |Nv | TRAPV
000191e4 de fc 00 1c | | ADDA.W #0x1c,A7
000191e8 48 e7 c1 80 |H | MOVEM.L A0+D7+D1+D0,-(A7)
000191ec 7e 00 |~ | MOVEQ.L #0x00,D7
000191ee 42 36 78 f4 |B6x | CLR.B (A6+D7.L-#0xc)
000191f2 52 87 |R | ADDQ.L #0x1,D7
000191f4 0c 87 00 00 00 07 | | CMPI.L #0x00000007,D7
000191fa 6f f2 |o | BLE 0x191ee
000191fc 2f 2e 00 0c |/. | MOVE.L (A6+0xc),-(A7)
00019200 7e 00 |~ | MOVEQ.L #0x00,D7
00019202 be 97 | | CMP.L (A7),D7
00019204 6e 1c |n | BGT 0x19222
00019206 70 07 |p | MOVEQ.L #0x07,D0
00019208 90 ae 00 0c | | SUB.L (A6+0xc),D0
0001920c d0 87 | | ADD.L D7,D0
0001920e 20 6e 00 14 | n | MOVEA.L (A6+0x14),A0
00019212 22 07 |" | MOVE.L D7,D1
00019214 92 ae 00 10 | | SUB.L (A6+0x10),D1
00019218 1d b0 18 00 08 f4 | | MOVE.B (A0+D1.L),(A6+D0.L-#0xc)
0001921e 52 87 |R | ADDQ.L #0x1,D7
00019220 68 e0 |h | BVC 0x19202
00019222 58 4f |XO | ADDQ.L #0x4,A7
00019224 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00019228 42 80 |B | CLR.L D0
0001922a 10 2e ff f4 | . | MOVE.B (A6-0xc),D0
0001922e e1 40 | @ | ASL.W #0x8,D0
00019230 42 81 |B | CLR.L D1
00019232 12 2e ff f5 | . | MOVE.B (A6-0xb),D1
00019236 d2 40 | @ | ADD.W D0,D1
00019238 30 81 |0 | MOVE.W D1,(A0)
0001923a 42 80 |B | CLR.L D0
0001923c 10 2e ff f6 | . | MOVE.B (A6-0xa),D0
00019240 e1 40 | @ | ASL.W #0x8,D0
00019242 42 81 |B | CLR.L D1
00019244 12 2e ff f7 | . | MOVE.B (A6-0x9),D1
00019248 d2 40 | @ | ADD.W D0,D1
0001924a 31 41 00 02 |1A | MOVE.W D1,(A0+0x2)
0001924e 42 80 |B | CLR.L D0
00019250 10 2e ff f8 | . | MOVE.B (A6-0x8),D0
00019254 e1 40 | @ | ASL.W #0x8,D0
00019256 42 81 |B | CLR.L D1
00019258 12 2e ff f9 | . | MOVE.B (A6-0x7),D1
0001925c d2 40 | @ | ADD.W D0,D1
0001925e 31 41 00 04 |1A | MOVE.W D1,(A0+0x4)
00019262 42 80 |B | CLR.L D0
00019264 10 2e ff fa | . | MOVE.B (A6-0x6),D0
00019268 e1 40 | @ | ASL.W #0x8,D0
0001926a 42 81 |B | CLR.L D1
0001926c 12 2e ff fb | . | MOVE.B (A6-0x5),D1
00019270 d2 40 | @ | ADD.W D0,D1
00019272 31 41 00 06 |1A | MOVE.W D1,(A0+0x6)
00019276 4c df 01 83 |L | MOVEM.L (A7)+,D0+D1+D7+A0
0001927a 4e 5e |N^ | UNLK A6
0001927c 4e 75 |Nu | RTS
0001927e ; --------------------------------------------------------------------------------------
0001927e ; ExpRun(a: Bool; adr: Byte; b: Pointer)
0001927e ; Stack:
0001927e ; A6+0xe a : Bool
0001927e ; A6+0xc adr : Byte
0001927e ; A6+0x8 b : Pointer
0001927e ; OMSI PASCAL Function
0001927e ; <LVAR 0x00e 1(r)>
0001927e ; <LVAR 0x00c 1(r)>
0001927e ; <LVAR 0x008 4(r)>
0001927e ; <LVAR -0x002 @ 1(r)>
0001927e ; <LVAR -0x003 @ 1(r)>
0001927e ; <LVAR -0x004 @>
0001927e ; --------------------------------------------------------------------------------------
0001927e _ExpRun(a: Bool; adr: Byte; b: Pointer):
0001927e 4e 56 ff 70 |NV p | LINK.W A6,#0xff70
00019282 bf d5 | | CMPA.L (A5),A7
00019284 62 06 |b | BHI 0x1928c
00019286 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001928a 4e 76 |Nv | TRAPV
0001928c de fc 00 88 | | ADDA.W #0x88,A7
00019290 48 e7 ff f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D6+D5+D4+D3+D2+D1+D0,-(A7)
00019294 45 f9 00 01 0d a4 |E | LEA.L _StringLit(Src : Pointer; Offset: W; Len : W) : String,A2
0001929a 47 ee 00 0c |G | LEA.L (A6+0xc),A3
0001929e 49 ee 00 08 |I | LEA.L (A6+0x8),A4
000192a2 74 01 |t | MOVEQ.L #0x01,D2
000192a4 76 1e |v | MOVEQ.L #0x1e,D3
000192a6 78 10 |x | MOVEQ.L #0x10,D4
000192a8 7a 0a |z | MOVEQ.L #0x0a,D5
000192aa 7c 0e || | MOVEQ.L #0x0e,D6
000192ac 1f 13 | | MOVE.B (A3),-(A7)
000192ae 2f 14 |/ | MOVE.L (A4),-(A7)
000192b0 4e ba fa 72 |N r | JSR _ExpXmit(adr : Byte; b : Pointer)
000192b4 5c 4f |\O | ADDQ.L #0x6,A7
000192b6 4a 2e 00 0e |J. | TST.B (A6+0xe)
000192ba 66 08 |f | BNE 0x192c4
000192bc 2e 3c 00 01 11 70 |.< p | MOVE.L #0x11170,D7
000192c2 60 06 |` | BRA 0x192ca
000192c4 2e 3c 00 04 93 e0 |.< | MOVE.L #0x493e0,D7
000192ca 1f 13 | | MOVE.B (A3),-(A7)
000192cc 48 6e ff fe |Hn | PEA.L (A6-0x2)
000192d0 48 6e ff fc |Hn | PEA.L (A6-0x4)
000192d4 48 6e ff fd |Hn | PEA.L (A6-0x3)
000192d8 4e ba fa 88 |N | JSR _DiProcPing(adr : Byte; VAR status : Byte; VAR b80 : Bool; VAR b40 : Bool)
000192dc de c6 | | ADDA.W D6,A7
000192de 4a 2e ff fd |J. | TST.B (A6-0x3)
000192e2 66 00 00 d0 |f | BNE 0x193b4
000192e6 4e b9 00 01 54 0a |N T | JSR _WriteConsoleCrLf(void)
000192ec 9e fc 00 2c | , | SUBA.W #0x2c,A7
000192f0 20 4f | O | MOVEA.L A7,A0
000192f2 43 fa f0 9e |C | LEA.L 0x18392,A1
000192f6 70 2a |p* | MOVEQ.L #0x2a,D0
000192f8 10 d9 | | MOVE.B (A1)+,(A0)+
000192fa 51 c8 ff fc |Q | DBF D0,0x192f8
000192fe 59 4f |YO | SUBQ.L #0x4,A7
00019300 48 6f 00 04 |Ho | PEA.L (A7+0x4)
00019304 3f 02 |? | MOVE.W D2,-(A7)
00019306 3f 3c 00 2b |?< + | MOVE.W #0x2b,-(A7)
0001930a 4e 92 |N | JSR (A2)
0001930c 50 4f |PO | ADDQ.L #0x8,A7
0001930e 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
00019314 de fc 00 2c | , | ADDA.W #0x2c,A7
00019318 2e ba f0 b0 |. | MOVE.L 0x183ca,(A7)
0001931c 2f 3a f0 a8 |/: | MOVE.L 0x183c6,-(A7)
00019320 2f 3a f0 a0 |/: | MOVE.L 0x183c2,-(A7)
00019324 2f 3a f0 98 |/: | MOVE.L 0x183be,-(A7)
00019328 20 54 | T | MOVEA.L (A4),A0
0001932a 9e c3 | | SUBA.W D3,A7
0001932c 22 4f |"O | MOVEA.L A7,A1
0001932e 41 e8 00 fc |A | LEA.L (A0+0xfc),A0
00019332 70 1d |p | MOVEQ.L #0x1d,D0
00019334 12 d8 | | MOVE.B (A0)+,(A1)+
00019336 51 c8 ff fc |Q | DBF D0,0x19334
0001933a 41 fa f0 9c |A | LEA.L 0x183d8,A0
0001933e 70 04 |p | MOVEQ.L #0x04,D0
00019340 3f 20 |? | MOVE.W -(A0),-(A7)
00019342 51 c8 ff fc |Q | DBF D0,0x19340
00019346 51 4f |QO | SUBQ.L #0x8,A7
00019348 48 6f 00 30 |Ho 0 | PEA.L (A7+0x30)
0001934c 3f 02 |? | MOVE.W D2,-(A7)
0001934e 3f 04 |? | MOVE.W D4,-(A7)
00019350 4e 92 |N | JSR (A2)
00019352 58 4f |XO | ADDQ.L #0x4,A7
00019354 48 6f 00 16 |Ho | PEA.L (A7+0x16)
00019358 3f 02 |? | MOVE.W D2,-(A7)
0001935a 3f 03 |? | MOVE.W D3,-(A7)
0001935c 4e 92 |N | JSR (A2)
0001935e 58 4f |XO | ADDQ.L #0x4,A7
00019360 48 6f 00 10 |Ho | PEA.L (A7+0x10)
00019364 3f 02 |? | MOVE.W D2,-(A7)
00019366 3f 05 |? | MOVE.W D5,-(A7)
00019368 4e 92 |N | JSR (A2)
0001936a 54 4f |TO | ADDQ.L #0x2,A7
0001936c 1e 93 | | MOVE.B (A3),(A7)
0001936e 4e ba fc 82 |N | JSR _BoardName(address : B) : String
00019372 54 4f |TO | ADDQ.L #0x2,A7
00019374 4e b9 00 01 10 00 |N | JSR _StringCat4(a, b, c, d : String) : String
0001937a de c4 | | ADDA.W D4,A7
0001937c 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
00019382 de fc 00 24 | $ | ADDA.W #0x24,A7
00019386 20 4f | O | MOVEA.L A7,A0
00019388 43 fa f0 4e |C N | LEA.L 0x183d8,A1
0001938c 70 16 |p | MOVEQ.L #0x16,D0
0001938e 10 d9 | | MOVE.B (A1)+,(A0)+
00019390 51 c8 ff fc |Q | DBF D0,0x1938e
00019394 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
00019398 59 4f |YO | SUBQ.L #0x4,A7
0001939a 48 6f 00 06 |Ho | PEA.L (A7+0x6)
0001939e 3f 02 |? | MOVE.W D2,-(A7)
000193a0 3f 3c 00 17 |?< | MOVE.W #0x17,-(A7)
000193a4 4e 92 |N | JSR (A2)
000193a6 50 4f |PO | ADDQ.L #0x8,A7
000193a8 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
000193ae de c3 | | ADDA.W D3,A7
000193b0 60 00 01 3c |` < | BRA 0x194ee
000193b4 10 2e ff fe | . | MOVE.B (A6-0x2),D0
000193b8 0c 00 00 06 | | CMPI.B #0x06,D0
000193bc 66 28 |f( | BNE 0x193e6
000193be 4a 87 |J | TST.L D7
000193c0 67 24 |g$ | BEQ 0x193e6
000193c2 53 87 |S | SUBQ.L #0x1,D7
000193c4 48 78 00 4e |Hx N | PEA.L 0x4e
000193c8 4e b9 00 01 02 24 |N $ | JSR KC12_Sleep(dur: Long)
000193ce 54 4f |TO | ADDQ.L #0x2,A7
000193d0 1e 93 | | MOVE.B (A3),(A7)
000193d2 48 6e ff fe |Hn | PEA.L (A6-0x2)
000193d6 48 6e ff fc |Hn | PEA.L (A6-0x4)
000193da 48 6e ff fd |Hn | PEA.L (A6-0x3)
000193de 4e ba f9 82 |N | JSR _DiProcPing(adr : Byte; VAR status : Byte; VAR b80 : Bool; VAR b40 : Bool)
000193e2 de c6 | | ADDA.W D6,A7
000193e4 60 ce |` | BRA 0x193b4
000193e6 b0 02 | | CMP.B D2,D0
000193e8 67 00 00 ec |g | BEQ 0x194d6
000193ec 4e b9 00 01 54 0a |N T | JSR _WriteConsoleCrLf(void)
000193f2 0c 00 00 06 | | CMPI.B #0x06,D0
000193f6 66 28 |f( | BNE 0x19420
000193f8 41 fa f0 18 |A | LEA.L 0x18412,A0
000193fc 70 10 |p | MOVEQ.L #0x10,D0
000193fe 3f 20 |? | MOVE.W -(A0),-(A7)
00019400 51 c8 ff fc |Q | DBF D0,0x193fe
00019404 59 4f |YO | SUBQ.L #0x4,A7
00019406 48 6f 00 04 |Ho | PEA.L (A7+0x4)
0001940a 3f 02 |? | MOVE.W D2,-(A7)
0001940c 3f 3c 00 22 |?< " | MOVE.W #0x22,-(A7)
00019410 4e 92 |N | JSR (A2)
00019412 50 4f |PO | ADDQ.L #0x8,A7
00019414 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
0001941a de fc 00 26 | & | ADDA.W #0x26,A7
0001941e 60 3c |`< | BRA 0x1945c
00019420 9e fc 00 1c | | SUBA.W #0x1c,A7
00019424 20 4f | O | MOVEA.L A7,A0
00019426 43 fa ef ea |C | LEA.L 0x18412,A1
0001942a 72 1a |r | MOVEQ.L #0x1a,D1
0001942c 10 d9 | | MOVE.B (A1)+,(A0)+
0001942e 51 c9 ff fc |Q | DBF D1,0x1942c
00019432 51 4f |QO | SUBQ.L #0x8,A7
00019434 48 6f 00 08 |Ho | PEA.L (A7+0x8)
00019438 3f 02 |? | MOVE.W D2,-(A7)
0001943a 3f 3c 00 1b |?< | MOVE.W #0x1b,-(A7)
0001943e 4e 92 |N | JSR (A2)
00019440 54 4f |TO | ADDQ.L #0x2,A7
00019442 1e 80 | | MOVE.B D0,(A7)
00019444 4e ba fc 5e |N ^ | JSR _ExpStatus2Text(status.B, &String)
00019448 54 4f |TO | ADDQ.L #0x2,A7
0001944a 4e b9 00 01 0f 2c |N , | JSR _StringCat2(a, b : String) : String
00019450 50 4f |PO | ADDQ.L #0x8,A7
00019452 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
00019458 de fc 00 20 | | ADDA.W #0x20,A7
0001945c 2f 3a ef d4 |/: | MOVE.L 0x18432,-(A7)
00019460 2f 3a ef cc |/: | MOVE.L 0x1842e,-(A7)
00019464 20 54 | T | MOVEA.L (A4),A0
00019466 9e c3 | | SUBA.W D3,A7
00019468 22 4f |"O | MOVEA.L A7,A1
0001946a 41 e8 00 fc |A | LEA.L (A0+0xfc),A0
0001946e 70 1d |p | MOVEQ.L #0x1d,D0
00019470 12 d8 | | MOVE.B (A0)+,(A1)+
00019472 51 c8 ff fc |Q | DBF D0,0x19470
00019476 41 fa ef c8 |A | LEA.L 0x18440,A0
0001947a 70 04 |p | MOVEQ.L #0x04,D0
0001947c 3f 20 |? | MOVE.W -(A0),-(A7)
0001947e 51 c8 ff fc |Q | DBF D0,0x1947c
00019482 51 4f |QO | SUBQ.L #0x8,A7
00019484 48 6f 00 30 |Ho 0 | PEA.L (A7+0x30)
00019488 3f 02 |? | MOVE.W D2,-(A7)
0001948a 3f 3c 00 08 |?< | MOVE.W #0x8,-(A7)
0001948e 4e 92 |N | JSR (A2)
00019490 58 4f |XO | ADDQ.L #0x4,A7
00019492 48 6f 00 16 |Ho | PEA.L (A7+0x16)
00019496 3f 02 |? | MOVE.W D2,-(A7)
00019498 3f 03 |? | MOVE.W D3,-(A7)
0001949a 4e 92 |N | JSR (A2)
0001949c 58 4f |XO | ADDQ.L #0x4,A7
0001949e 48 6f 00 10 |Ho | PEA.L (A7+0x10)
000194a2 3f 02 |? | MOVE.W D2,-(A7)
000194a4 3f 05 |? | MOVE.W D5,-(A7)
000194a6 4e 92 |N | JSR (A2)
000194a8 54 4f |TO | ADDQ.L #0x2,A7
000194aa 1e 93 | | MOVE.B (A3),(A7)
000194ac 4e ba fb 44 |N D | JSR _BoardName(address : B) : String
000194b0 54 4f |TO | ADDQ.L #0x2,A7
000194b2 4e b9 00 01 10 00 |N | JSR _StringCat4(a, b, c, d : String) : String
000194b8 de c4 | | ADDA.W D4,A7
000194ba 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
000194c0 de fc 00 1c | | ADDA.W #0x1c,A7
000194c4 20 4f | O | MOVEA.L A7,A0
000194c6 43 fa ef 78 |C x | LEA.L 0x18440,A1
000194ca 70 16 |p | MOVEQ.L #0x16,D0
000194cc 10 d9 | | MOVE.B (A1)+,(A0)+
000194ce 51 c8 ff fc |Q | DBF D0,0x194cc
000194d2 60 00 fe c0 |` | BRA 0x19394
000194d6 20 54 | T | MOVEA.L (A4),A0
000194d8 10 28 01 1c | ( | MOVE.B (A0+0x11c),D0
000194dc ee 08 | | LSR.B #0x7,D0
000194de 67 0e |g | BEQ 0x194ee
000194e0 1f 13 | | MOVE.B (A3),-(A7)
000194e2 2f 14 |/ | MOVE.L (A4),-(A7)
000194e4 48 6e ff fe |Hn | PEA.L (A6-0x2)
000194e8 4e ba f9 58 |N X | JSR _ExpUpload(adr: Byte; ptr: Pointer; VAR status : Byte)
000194ec de c5 | | ADDA.W D5,A7
000194ee 4c df 1f ff |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D5+D6+D7+A0+A1+A2+A3+A4
000194f2 4e 5e |N^ | UNLK A6
000194f4 4e 75 |Nu | RTS
000194f6 ; --------------------------------------------------------------------------------------
000194f6 ; HasBoard(diproc_addr: Byte) : Byte
000194f6 ; Stack:
000194f6 ; A6+0xa VAR RETURN : Byte
000194f6 ; A6+0x8 diproc_addr : Byte
000194f6 ; OMSI PASCAL Function
000194f6 ; <LVAR 0x00a 1(rw)>
000194f6 ; <LVAR 0x008 1(r)>
000194f6 ; --------------------------------------------------------------------------------------
000194f6 _HasBoard(diproc_addr: Byte) : Byte:
000194f6 4e 56 ff ec |NV | LINK.W A6,#0xffec
000194fa bf d5 | | CMPA.L (A5),A7
000194fc 62 06 |b | BHI 0x19504
000194fe 44 fc 00 02 |D | MOVE.W #0x2,CCR
00019502 4e 76 |Nv | TRAPV
00019504 de fc 00 12 | | ADDA.W #0x12,A7
00019508 48 e7 81 80 |H | MOVEM.L A0+D7+D0,-(A7)
0001950c 10 2e 00 08 | . | MOVE.B (A6+0x8),D0
00019510 48 80 |H | EXTB.W D0
00019512 41 fa ef 44 |A D | LEA.L diproc_adr_valid,A0
00019516 4a 30 00 00 |J0 | TST.B (A0+D0.W)
0001951a 66 06 |f | BNE 0x19522
0001951c 42 2e 00 0a |B. | CLR.B (A6+0xa)
00019520 60 58 |`X | BRA 0x1957a
00019522 04 40 00 0c | @ | SUBI.W #0x000c,D0
00019526 0c 40 00 03 | @ | CMPI.W #0x0003,D0
0001952a 62 3c |b< | BHI 0x19568
0001952c d0 40 | @ | ADD.W D0,D0
0001952e 30 3b 00 06 4e fb 00 02 |0; N | SWITCH D0.W
00019536 00 08 | | .CONST 0x8 ; [0x0] -> 0x1953e
00019538 00 16 | | .CONST 0x16 ; [0x1] -> 0x1954c
0001953a 00 20 | | .CONST 0x20 ; [0x2] -> 0x19556
0001953c 00 2a | * | .CONST 0x2a ; [0x3] -> 0x19560
0001953e switch@0x1952e[0x0]:
0001953e 10 39 00 01 c2 16 | 9 | MOVE.B 0x1c216,D0
00019544 e7 08 | | LSL.B #0x3,D0
00019546 ee 08 | | LSR.B #0x7,D0
00019548 1e 00 | | MOVE.B D0,D7
0001954a 60 1e |` | BRA 0x1956a
0001954c switch@0x1952e[0x1]:
0001954c 10 39 00 01 c2 16 | 9 | MOVE.B 0x1c216,D0
00019552 e5 08 | | LSL.B #0x2,D0
00019554 60 f0 |` | BRA 0x19546
00019556 switch@0x1952e[0x2]:
00019556 10 39 00 01 c2 16 | 9 | MOVE.B 0x1c216,D0
0001955c e3 08 | | LSL.B #0x1,D0
0001955e 60 e6 |` | BRA 0x19546
00019560 switch@0x1952e[0x3]:
00019560 10 39 00 01 c2 16 | 9 | MOVE.B 0x1c216,D0
00019566 60 de |` | BRA 0x19546
00019568 7e 01 |~ | MOVEQ.L #0x01,D7
0001956a 10 39 00 01 c2 17 | 9 | MOVE.B 0x1c217,D0
00019570 e9 08 | | LSL.B #0x4,D0
00019572 ee 08 | | LSR.B #0x7,D0
00019574 c0 07 | | AND.B D7,D0
00019576 1d 40 00 0a | @ | MOVE.B D0,(A6+0xa)
0001957a 4c df 01 81 |L | MOVEM.L (A7)+,D0+D7+A0
0001957e 4e 5e |N^ | UNLK A6
00019580 4e 75 |Nu | RTS
00019582 ; --------------------------------------------------------------------------------------
00019582 ; EQ_1c218(a : Byte) : Bool
00019582 ; Stack:
00019582 ; A6+0xa VAR RETURN : Bool
00019582 ; A6+0x8 a : Byte
00019582 ; OMSI PASCAL Function
00019582 ; <LVAR 0x00a 1(rw)>
00019582 ; <LVAR 0x008 1(r)>
00019582 ; --------------------------------------------------------------------------------------
00019582 _EQ_1c218(a : Byte) : Bool:
00019582 4e 56 ff f6 |NV | LINK.W A6,#0xfff6
00019586 bf d5 | | CMPA.L (A5),A7
00019588 62 06 |b | BHI 0x19590
0001958a 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001958e 4e 76 |Nv | TRAPV
00019590 de fc 00 08 | | ADDA.W #0x8,A7
00019594 48 e7 80 00 |H | MOVEM.L D0,-(A7)
00019598 42 2e 00 0a |B. | CLR.B (A6+0xa)
0001959c 10 2e 00 08 | . | MOVE.B (A6+0x8),D0
000195a0 b0 39 00 01 c2 18 | 9 | CMP.B 0x1c218,D0
000195a6 66 04 |f | BNE 0x195ac
000195a8 52 2e 00 0a |R. | ADDQ.B #0x1,(A6+0xa)
000195ac 4c df 00 01 |L | MOVEM.L (A7)+,D0
000195b0 4e 5e |N^ | UNLK A6
000195b2 4e 75 |Nu | RTS
000195b4 ; --------------------------------------------------------------------------------------
000195b4 ; MemOnly2MB() : Bool
000195b4 ; Stack:
000195b4 ; A6+0x8 VAR RETURN : Bool
000195b4 ; OMSI PASCAL Function
000195b4 ; <LVAR 0x008 1(w)>
000195b4 ; --------------------------------------------------------------------------------------
000195b4 _MemOnly2MB() : Bool:
000195b4 4e 56 ff f8 |NV | LINK.W A6,#0xfff8
000195b8 bf d5 | | CMPA.L (A5),A7
000195ba 62 06 |b | BHI 0x195c2
000195bc 44 fc 00 02 |D | MOVE.W #0x2,CCR
000195c0 4e 76 |Nv | TRAPV
000195c2 de fc 00 08 | | ADDA.W #0x8,A7
000195c6 48 e7 80 00 |H | MOVEM.L D0,-(A7)
000195ca 10 39 00 01 c2 16 | 9 | MOVE.B 0x1c216,D0
000195d0 e9 08 | | LSL.B #0x4,D0
000195d2 ee 08 | | LSR.B #0x7,D0
000195d4 1d 40 00 08 | @ | MOVE.B D0,(A6+0x8)
000195d8 4c df 00 01 |L | MOVEM.L (A7)+,D0
000195dc 4e 5e |N^ | UNLK A6
000195de 4e 75 |Nu | RTS
000195e0 ; --------------------------------------------------------------------------------------
000195e0 ; SetExpInitDone(a : Byte)
000195e0 ; Stack:
000195e0 ; A6+0x8 a : Byte
000195e0 ; OMSI PASCAL Function
000195e0 ; <LVAR 0x008 1(r)>
000195e0 ; --------------------------------------------------------------------------------------
000195e0 _SetExpInitDone(a : Byte):
000195e0 4e 56 ff fa |NV | LINK.W A6,#0xfffa
000195e4 bf d5 | | CMPA.L (A5),A7
000195e6 62 06 |b | BHI 0x195ee
000195e8 44 fc 00 02 |D | MOVE.W #0x2,CCR
000195ec 4e 76 |Nv | TRAPV
000195ee de fc 00 04 | | ADDA.W #0x4,A7
000195f2 13 ee 00 08 00 02 00 24 | $| MOVE.B (A6+0x8),exp_init_done
000195fa 4e 5e |N^ | UNLK A6
000195fc 4e 75 |Nu | RTS
000195fe ; --------------------------------------------------------------------------------------
000195fe ; ExpInit(a : Long)
000195fe ; Stack:
000195fe ; A6+0x8 a : Long
000195fe ; OMSI PASCAL Function
000195fe ; --------------------------------------------------------------------------------------
000195fe _ExpInit(a : Long):
000195fe 4e 56 ff c8 |NV | LINK.W A6,#0xffc8
00019602 bf d5 | | CMPA.L (A5),A7
00019604 62 06 |b | BHI 0x1960c
00019606 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001960a 4e 76 |Nv | TRAPV
0001960c de fc 00 30 | 0 | ADDA.W #0x30,A7
00019610 48 e7 fb c0 |H | MOVEM.L A1+A0+D7+D6+D4+D3+D2+D1+D0,-(A7)
00019614 43 f9 00 01 c2 18 |C | LEA.L 0x1c218,A1
0001961a 72 01 |r | MOVEQ.L #0x01,D1
0001961c 74 1f |t | MOVEQ.L #0x1f,D2
0001961e 13 c1 00 02 00 24 | $ | MOVE.B D1,exp_init_done
00019624 13 c1 00 02 00 25 | % | MOVE.B D1,0x20025
0001962a 33 c2 00 02 00 26 |3 & | MOVE.W D2,0x20026
00019630 7e 00 |~ | MOVEQ.L #0x00,D7
00019632 28 07 |( | MOVE.L D7,D4
00019634 76 06 |v | MOVEQ.L #0x06,D3
00019636 4e b9 00 01 07 ea |N | JSR _?muls_d3_d4
0001963c 41 f8 00 00 |A | LEA.L 0x0,A0
00019640 41 f0 48 00 |A H | LEA.L (A0+D4.L),A0
00019644 d1 fc 00 02 00 2c | , | ADDA.L #0x2002c,A0
0001964a 21 41 00 02 |!A | MOVE.L D1,(A0+0x2)
0001964e 42 10 |B | CLR.B (A0)
00019650 52 87 |R | ADDQ.L #0x1,D7
00019652 be 82 | | CMP.L D2,D7
00019654 6f dc |o | BLE 0x19632
00019656 48 79 00 02 00 28 |Hy ( | PEA.L 0x20028
0001965c 48 78 01 1d |Hx | PEA.L 0x11d
00019660 4e b9 00 01 08 56 |N V | JSR _Malloc1(length : Long) : Pointer
00019666 50 4f |PO | ADDQ.L #0x8,A7
00019668 48 79 00 01 c2 16 |Hy | PEA.L 0x1c216
0001966e 4e b9 00 01 aa 98 |N | JSR _Read_fc0c() : Word
00019674 58 4f |XO | ADDQ.L #0x4,A7
00019676 12 81 | | MOVE.B D1,(A1)
00019678 10 39 00 01 c2 17 | 9 | MOVE.B 0x1c217,D0
0001967e e9 08 | | LSL.B #0x4,D0
00019680 ee 08 | | LSR.B #0x7,D0
00019682 67 1a |g | BEQ 0x1969e
00019684 7c 0f || | MOVEQ.L #0x0f,D6
00019686 55 4f |UO | SUBQ.L #0x2,A7
00019688 1f 06 | | MOVE.B D6,-(A7)
0001968a 4e ba fe 6a |N j | JSR _HasBoard(diproc_addr: Byte) : Byte
0001968e 54 4f |TO | ADDQ.L #0x2,A7
00019690 4a 1f |J | TST.B (A7)+
00019692 67 02 |g | BEQ 0x19696
00019694 12 86 | | MOVE.B D6,(A1)
00019696 53 06 |S | SUBQ.B #0x1,D6
00019698 0c 06 00 0c | | CMPI.B #0x0c,D6
0001969c 6c e8 |l | BGE 0x19686
0001969e 4c df 03 df |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D6+D7+A0+A1
000196a2 4e 5e |N^ | UNLK A6
000196a4 4e 75 |Nu | RTS
000196a6 ; --------------------------------------------------------------------------------------
000196a6 ; Get20028(void) : L
000196a6 ; Stack:
000196a6 ; A6+0x8 VAR RETURN : L
000196a6 ; OMSI PASCAL Function
000196a6 ; <LVAR 0x008 4(w)>
000196a6 ; --------------------------------------------------------------------------------------
000196a6 _Get20028(void) : L:
000196a6 4e 56 ff fc |NV | LINK.W A6,#0xfffc
000196aa bf d5 | | CMPA.L (A5),A7
000196ac 62 06 |b | BHI 0x196b4
000196ae 44 fc 00 02 |D | MOVE.W #0x2,CCR
000196b2 4e 76 |Nv | TRAPV
000196b4 de fc 00 04 | | ADDA.W #0x4,A7
000196b8 2d 79 00 02 00 28 00 08 |-y ( | MOVE.L 0x20028,(A6+0x8)
000196c0 4e 5e |N^ | UNLK A6
000196c2 4e 75 |Nu | RTS
000196c4 ; --------------------------------------------------------------------------------------
000196c4 ; FindWord(src : Pointer; x : Word; length : Word) : Bool
000196c4 ; Stack:
000196c4 ; A6+0x10 VAR RETURN : Bool
000196c4 ; A6+0xc src : Pointer
000196c4 ; A6+0xa x : Word
000196c4 ; A6+0x8 length : Word
000196c4 ; --------------------------------------------------------------------------------------
000196c4 _FindWord(src : Pointer; x : Word; length : Word) : Bool:
000196c4 4e 56 00 00 |NV | LINK.W A6,#0x0000
000196c8 48 e7 c0 80 |H | MOVEM.L A0+D1+D0,-(A7)
000196cc bf d5 | | CMPA.L (A5),A7
000196ce 4e 76 |Nv | TRAPV
000196d0 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
000196d4 32 2e 00 0a |2. | MOVE.W (A6+0xa),D1
000196d8 30 2e 00 08 |0. | MOVE.W (A6+0x8),D0
000196dc 67 0e |g | BEQ 0x196ec
000196de 42 2e 00 10 |B. | CLR.B (A6+0x10)
000196e2 53 40 |S@ | SUBQ.W #0x1,D0
000196e4 b2 58 | X | CMP.W (A0)+,D1
000196e6 56 c8 ff fc |V | DBNE D0,0x196e4
000196ea 66 06 |f | BNE 0x196f2
000196ec 1d 7c 00 01 00 10 | | | MOVE.B #0x01,(A6+0x10)
000196f2 4c df 01 03 |L | MOVEM.L (A7)+,D0+D1+A0
000196f6 4e 5e |N^ | UNLK A6
000196f8 4e 75 |Nu | RTS
000196fa ; --------------------------------------------------------------------------------------
000196fa ; FillWords(dst : Pointer; x : Word; length : Word)
000196fa ; Stack:
000196fa ; A6+0xc dst : Pointer
000196fa ; A6+0xa x : Word
000196fa ; A6+0x8 length : Word
000196fa ; --------------------------------------------------------------------------------------
000196fa _FillWords(dst : Pointer; x : Word; length : Word):
000196fa 4e 56 00 00 |NV | LINK.W A6,#0x0000
000196fe 48 e7 c0 80 |H | MOVEM.L A0+D1+D0,-(A7)
00019702 bf d5 | | CMPA.L (A5),A7
00019704 4e 76 |Nv | TRAPV
00019706 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
0001970a 32 2e 00 0a |2. | MOVE.W (A6+0xa),D1
0001970e 30 2e 00 08 |0. | MOVE.W (A6+0x8),D0
00019712 67 08 |g | BEQ 0x1971c
00019714 53 40 |S@ | SUBQ.W #0x1,D0
00019716 30 c1 |0 | MOVE.W D1,(A0)+
00019718 51 c8 ff fc |Q | DBF D0,0x19716
0001971c 4c df 01 03 |L | MOVEM.L (A7)+,D0+D1+A0
00019720 4e 5e |N^ | UNLK A6
00019722 4e 75 |Nu | RTS
00019724 ; --------------------------------------------------------------------------------------
00019724 ; SwapBytes(src : Pointer; dst : Pointer; words : Word)
00019724 ; Stack:
00019724 ; A6+0xe src : Pointer
00019724 ; A6+0xa dst : Pointer
00019724 ; A6+0x8 words : Word
00019724 ; --------------------------------------------------------------------------------------
00019724 _SwapBytes(src : Pointer; dst : Pointer; words : Word):
00019724 4e 56 00 00 |NV | LINK.W A6,#0x0000
00019728 48 e7 c0 c0 |H | MOVEM.L A1+A0+D1+D0,-(A7)
0001972c bf d5 | | CMPA.L (A5),A7
0001972e 4e 76 |Nv | TRAPV
00019730 20 6e 00 0e | n | MOVEA.L (A6+0xe),A0
00019734 22 6e 00 0a |"n | MOVEA.L (A6+0xa),A1
00019738 30 2e 00 08 |0. | MOVE.W (A6+0x8),D0
0001973c 67 0c |g | BEQ 0x1974a
0001973e 53 40 |S@ | SUBQ.W #0x1,D0
00019740 32 18 |2 | MOVE.W (A0)+,D1
00019742 e0 59 | Y | ROR.W #0x8,D1
00019744 32 c1 |2 | MOVE.W D1,(A1)+
00019746 51 c8 ff f8 |Q | DBF D0,0x19740
0001974a 4c df 03 03 |L | MOVEM.L (A7)+,D0+D1+A0+A1
0001974e 4e 5e |N^ | UNLK A6
00019750 4e 75 |Nu | RTS
00019752 ; --------------------------------------------------------------------------------------
00019752 ; CopyBytes(src : Pointer; dst : Pointer; bytes : Word)
00019752 ; Stack:
00019752 ; A6+0xe src : Pointer
00019752 ; A6+0xa dst : Pointer
00019752 ; A6+0x8 bytes : Word
00019752 ; --------------------------------------------------------------------------------------
00019752 _CopyBytes(src : Pointer; dst : Pointer; bytes : Word):
00019752 4e 56 00 00 |NV | LINK.W A6,#0x0000
00019756 48 e7 80 c0 |H | MOVEM.L A1+A0+D0,-(A7)
0001975a bf d5 | | CMPA.L (A5),A7
0001975c 4e 76 |Nv | TRAPV
0001975e 20 6e 00 0e | n | MOVEA.L (A6+0xe),A0
00019762 22 6e 00 0a |"n | MOVEA.L (A6+0xa),A1
00019766 30 2e 00 08 |0. | MOVE.W (A6+0x8),D0
0001976a 67 08 |g | BEQ 0x19774
0001976c 53 40 |S@ | SUBQ.W #0x1,D0
0001976e 12 d8 | | MOVE.B (A0)+,(A1)+
00019770 51 c8 ff fc |Q | DBF D0,0x1976e
00019774 4c df 03 01 |L | MOVEM.L (A7)+,D0+A0+A1
00019778 4e 5e |N^ | UNLK A6
0001977a 4e 75 |Nu | RTS
0001977c 49 6e 63 6f 72 72 65 63 |Incorrec| .TXT 'Incorrect parameter type'
00019794 4e 6f 74 20 |Not | .TXT 'Not '
00019798 65 6e 6f 75 |enou | .TXT 'enou'
0001979c 67 68 20 67 |gh g | .TXT 'gh g'
000197a0 65 74 73 2e |ets. | .TXT 'ets.'
000197a4 ; --------------------------------------------------------------------------------------
000197a4 ; IPC_PutVar(src : Pointer; length : Long ; type : Long)
000197a4 ; Stack:
000197a4 ; A6+0x10 src : Pointer
000197a4 ; A6+0xc length : Long
000197a4 ; A6+0x8 type : Long
000197a4 ; OMSI PASCAL Function
000197a4 ; <LVAR 0x010 4(r)>
000197a4 ; <LVAR 0x008 4(r)>
000197a4 ; <LVAR -0x00c @ 4(w)>
000197a4 ; --------------------------------------------------------------------------------------
000197a4 _IPC_PutVar(src : Pointer; length : Long ; type : Long):
000197a4 4e 56 ff ba |NV | LINK.W A6,#0xffba
000197a8 bf d5 | | CMPA.L (A5),A7
000197aa 62 06 |b | BHI 0x197b2
000197ac 44 fc 00 02 |D | MOVE.W #0x2,CCR
000197b0 4e 76 |Nv | TRAPV
000197b2 de fc 00 2e | . | ADDA.W #0x2e,A7
000197b6 48 e7 e1 f0 |H | MOVEM.L A3+A2+A1+A0+D7+D2+D1+D0,-(A7)
000197ba 43 ee 00 08 |C | LEA.L (A6+0x8),A1
000197be 45 ee ff f4 |E | LEA.L (A6-0xc),A2
000197c2 47 f9 00 01 c2 22 |G " | LEA.L 0x1c222,A3
000197c8 74 0c |t | MOVEQ.L #0x0c,D2
000197ca 24 91 |$ | MOVE.L (A1),(A2)
000197cc 52 92 |R | ADDQ.L #0x1,(A2)
000197ce 2f 11 |/ | MOVE.L (A1),-(A7)
000197d0 7e 00 |~ | MOVEQ.L #0x00,D7
000197d2 be 97 | | CMP.L (A7),D7
000197d4 6e 2c |n, | BGT 0x19802
000197d6 70 07 |p | MOVEQ.L #0x07,D0
000197d8 90 91 | | SUB.L (A1),D0
000197da d0 87 | | ADD.L D7,D0
000197dc 0c 80 00 00 00 07 | | CMPI.L #0x00000007,D0
000197e2 63 02 |c | BLS 0x197e6
000197e4 4e 4f |NO | TRAP #15
000197e6 20 6e 00 10 | n | MOVEA.L (A6+0x10),A0
000197ea 22 07 |" | MOVE.L D7,D1
000197ec b2 91 | | CMP.L (A1),D1
000197ee 6e 06 |n | BGT 0x197f6
000197f0 92 ae 00 0c | | SUB.L (A6+0xc),D1
000197f4 6c 02 |l | BGE 0x197f8
000197f6 4e 4f |NO | TRAP #15
000197f8 1d b0 18 00 08 f8 | | MOVE.B (A0+D1.L),(A6+D0.L-#0x8)
000197fe 52 87 |R | ADDQ.L #0x1,D7
00019800 68 d0 |h | BVC 0x197d2
00019802 58 4f |XO | ADDQ.L #0x4,A7
00019804 20 4a | J | MOVEA.L A2,A0
00019806 2f 08 |/ | MOVE.L A0,-(A7)
00019808 2f 13 |/ | MOVE.L (A3),-(A7)
0001980a 3f 02 |? | MOVE.W D2,-(A7)
0001980c 4e b9 00 01 97 52 |N R | JSR _CopyBytes(src : Pointer; dst : Pointer; bytes : Word)
00019812 de fc 00 0a | | ADDA.W #0xa,A7
00019816 d5 93 | | ADD.L D2,(A3)
00019818 4c df 0f 87 |L | MOVEM.L (A7)+,D0+D1+D2+D7+A0+A1+A2+A3
0001981c 4e 5e |N^ | UNLK A6
0001981e 4e 75 |Nu | RTS
00019820 ; --------------------------------------------------------------------------------------
00019820 ; IPC_PutBool(a : Bool)
00019820 ; Stack:
00019820 ; A6+0x8 a : Bool
00019820 ; OMSI PASCAL Function
00019820 ; <LVAR 0x008 1(r)>
00019820 ; <LVAR -0x006 4(rw)>
00019820 ; <LVAR -0x00a @ 4(r)>
00019820 ; --------------------------------------------------------------------------------------
00019820 _IPC_PutBool(a : Bool):
00019820 4e 56 ff e0 |NV | LINK.W A6,#0xffe0
00019824 bf d5 | | CMPA.L (A5),A7
00019826 62 06 |b | BHI 0x1982e
00019828 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001982c 4e 76 |Nv | TRAPV
0001982e de fc 00 16 | | ADDA.W #0x16,A7
00019832 48 e7 00 c0 |H | MOVEM.L A1+A0,-(A7)
00019836 43 f9 00 01 c2 22 |C " | LEA.L 0x1c222,A1
0001983c 42 ae ff f6 |B | CLR.L (A6-0xa)
00019840 4a 2e 00 08 |J. | TST.B (A6+0x8)
00019844 67 0a |g | BEQ 0x19850
00019846 2d 7c 00 00 00 01 ff fa |-| | MOVE.L #0x1,(A6-0x6)
0001984e 60 04 |` | BRA 0x19854
00019850 42 ae ff fa |B | CLR.L (A6-0x6)
00019854 41 ee ff f6 |A | LEA.L (A6-0xa),A0
00019858 2f 08 |/ | MOVE.L A0,-(A7)
0001985a 2f 11 |/ | MOVE.L (A1),-(A7)
0001985c 3f 3c 00 08 |?< | MOVE.W #0x8,-(A7)
00019860 4e b9 00 01 97 52 |N R | JSR _CopyBytes(src : Pointer; dst : Pointer; bytes : Word)
00019866 de fc 00 0a | | ADDA.W #0xa,A7
0001986a 50 91 |P | ADDQ.L #0x8,(A1)
0001986c 4c df 03 00 |L | MOVEM.L (A7)+,A0+A1
00019870 4e 5e |N^ | UNLK A6
00019872 4e 75 |Nu | RTS
00019874 ; --------------------------------------------------------------------------------------
00019874 ; IPC_PutString(a : String)
00019874 ; Stack:
00019874 ; A6+0x8 a : String
00019874 ; OMSI PASCAL Function
00019874 ; <LVAR 0x008 @ 4(r)>
00019874 ; <LVAR -0x080 @>
00019874 ; <LVAR -0x084 @ 4(w)>
00019874 ; --------------------------------------------------------------------------------------
00019874 _IPC_PutString(a : String):
00019874 4e 56 ff 5e |NV ^ | LINK.W A6,#0xff5e
00019878 bf d5 | | CMPA.L (A5),A7
0001987a 62 06 |b | BHI 0x19882
0001987c 44 fc 00 02 |D | MOVE.W #0x2,CCR
00019880 4e 76 |Nv | TRAPV
00019882 de fc 00 1e | | ADDA.W #0x1e,A7
00019886 48 e7 80 e0 |H | MOVEM.L A2+A1+A0+D0,-(A7)
0001988a 45 f9 00 01 c2 22 |E " | LEA.L 0x1c222,A2
00019890 2d 7c 00 00 00 09 ff 7c |-| || MOVE.L #0x9,(A6-0x84)
00019898 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001989c 43 ee ff 80 |C | LEA.L (A6-0x80),A1
000198a0 70 7f |p | MOVEQ.L #0x7f,D0
000198a2 12 d8 | | MOVE.B (A0)+,(A1)+
000198a4 51 c8 ff fc |Q | DBF D0,0x198a2
000198a8 48 6e 00 08 |Hn | PEA.L (A6+0x8)
000198ac 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
000198b2 58 4f |XO | ADDQ.L #0x4,A7
000198b4 41 ee ff 7c |A | | LEA.L (A6-0x84),A0
000198b8 2f 08 |/ | MOVE.L A0,-(A7)
000198ba 2f 12 |/ | MOVE.L (A2),-(A7)
000198bc 3f 3c 00 84 |?< | MOVE.W #0x84,-(A7)
000198c0 4e b9 00 01 97 52 |N R | JSR _CopyBytes(src : Pointer; dst : Pointer; bytes : Word)
000198c6 de fc 00 0a | | ADDA.W #0xa,A7
000198ca 06 92 00 00 00 84 | | ADDI.L #0x00000084,(A2)
000198d0 4c df 07 01 |L | MOVEM.L (A7)+,D0+A0+A1+A2
000198d4 4e 5e |N^ | UNLK A6
000198d6 4e 75 |Nu | RTS
000198d8 ; --------------------------------------------------------------------------------------
000198d8 ; IPC_PutLong(a : L)
000198d8 ; Stack:
000198d8 ; A6+0x8 a : L
000198d8 ; OMSI PASCAL Function
000198d8 ; <LVAR 0x008 4(r)>
000198d8 ; <LVAR -0x004 4(w)>
000198d8 ; <LVAR -0x008 @ 4(w)>
000198d8 ; --------------------------------------------------------------------------------------
000198d8 _IPC_PutLong(a : L):
000198d8 4e 56 ff de |NV | LINK.W A6,#0xffde
000198dc bf d5 | | CMPA.L (A5),A7
000198de 62 06 |b | BHI 0x198e6
000198e0 44 fc 00 02 |D | MOVE.W #0x2,CCR
000198e4 4e 76 |Nv | TRAPV
000198e6 de fc 00 1a | | ADDA.W #0x1a,A7
000198ea 48 e7 80 c0 |H | MOVEM.L A1+A0+D0,-(A7)
000198ee 43 f9 00 01 c2 22 |C " | LEA.L 0x1c222,A1
000198f4 70 0a |p | MOVEQ.L #0x0a,D0
000198f6 2d 40 ff f8 |-@ | MOVE.L D0,(A6-0x8)
000198fa 2d 6e 00 08 ff fc |-n | MOVE.L (A6+0x8),(A6-0x4)
00019900 41 ee ff f8 |A | LEA.L (A6-0x8),A0
00019904 2f 08 |/ | MOVE.L A0,-(A7)
00019906 2f 11 |/ | MOVE.L (A1),-(A7)
00019908 3f 3c 00 08 |?< | MOVE.W #0x8,-(A7)
0001990c 4e b9 00 01 97 52 |N R | JSR _CopyBytes(src : Pointer; dst : Pointer; bytes : Word)
00019912 de c0 | | ADDA.W D0,A7
00019914 50 91 |P | ADDQ.L #0x8,(A1)
00019916 4c df 03 01 |L | MOVEM.L (A7)+,D0+A0+A1
0001991a 4e 5e |N^ | UNLK A6
0001991c 4e 75 |Nu | RTS
0001991e ; --------------------------------------------------------------------------------------
0001991e ; IPC_PutEnd(void)
0001991e ; Stack:
0001991e ; OMSI PASCAL Function
0001991e ; <LVAR -0x004 @ 4(w)>
0001991e ; --------------------------------------------------------------------------------------
0001991e _IPC_PutEnd(void):
0001991e 4e 56 ff e6 |NV | LINK.W A6,#0xffe6
00019922 bf d5 | | CMPA.L (A5),A7
00019924 62 06 |b | BHI 0x1992c
00019926 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001992a 4e 76 |Nv | TRAPV
0001992c de fc 00 16 | | ADDA.W #0x16,A7
00019930 48 e7 00 c0 |H | MOVEM.L A1+A0,-(A7)
00019934 43 f9 00 01 c2 22 |C " | LEA.L 0x1c222,A1
0001993a 2d 7c ff ff ff ff ff fc |-| | MOVE.L #0xffffffff,(A6-0x4)
00019942 41 ee ff fc |A | LEA.L (A6-0x4),A0
00019946 2f 08 |/ | MOVE.L A0,-(A7)
00019948 2f 11 |/ | MOVE.L (A1),-(A7)
0001994a 3f 3c 00 04 |?< | MOVE.W #0x4,-(A7)
0001994e 4e b9 00 01 97 52 |N R | JSR _CopyBytes(src : Pointer; dst : Pointer; bytes : Word)
00019954 de fc 00 0a | | ADDA.W #0xa,A7
00019958 58 91 |X | ADDQ.L #0x4,(A1)
0001995a 4c df 03 00 |L | MOVEM.L (A7)+,A0+A1
0001995e 4e 5e |N^ | UNLK A6
00019960 4e 75 |Nu | RTS
00019962 ; --------------------------------------------------------------------------------------
00019962 ; IPC_GetEnd(void)
00019962 ; Stack:
00019962 ; OMSI PASCAL Function
00019962 ; <LVAR -0x004 @ 4(r)>
00019962 ; --------------------------------------------------------------------------------------
00019962 _IPC_GetEnd(void):
00019962 4e 56 ff d2 |NV | LINK.W A6,#0xffd2
00019966 bf d5 | | CMPA.L (A5),A7
00019968 62 06 |b | BHI 0x19970
0001996a 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001996e 4e 76 |Nv | TRAPV
00019970 de fc 00 2a | * | ADDA.W #0x2a,A7
00019974 48 e7 80 80 |H | MOVEM.L A0+D0,-(A7)
00019978 2f 39 00 01 c2 22 |/9 " | MOVE.L 0x1c222,-(A7)
0001997e 41 ee ff fc |A | LEA.L (A6-0x4),A0
00019982 2f 08 |/ | MOVE.L A0,-(A7)
00019984 3f 3c 00 04 |?< | MOVE.W #0x4,-(A7)
00019988 4e b9 00 01 97 52 |N R | JSR _CopyBytes(src : Pointer; dst : Pointer; bytes : Word)
0001998e de fc 00 0a | | ADDA.W #0xa,A7
00019992 20 2e ff fc | . | MOVE.L (A6-0x4),D0
00019996 0c 80 ff ff ff ff | | CMPI.L #0xffffffff,D0
0001999c 67 34 |g4 | BEQ 0x199d2
0001999e 2f 3a fe 00 |/: | MOVE.L 0x197a0,-(A7)
000199a2 2f 3a fd f8 |/: | MOVE.L 0x1979c,-(A7)
000199a6 2f 3a fd f0 |/: | MOVE.L 0x19798,-(A7)
000199aa 2f 3a fd e8 |/: | MOVE.L 0x19794,-(A7)
000199ae 1f 3c 00 05 | < | MOVE.B #0x05,-(A7)
000199b2 59 4f |YO | SUBQ.L #0x4,A7
000199b4 48 6f 00 06 |Ho | PEA.L (A7+0x6)
000199b8 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
000199bc 3f 3c 00 10 |?< | MOVE.W #0x10,-(A7)
000199c0 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
000199c6 50 4f |PO | ADDQ.L #0x8,A7
000199c8 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
000199ce de fc 00 16 | | ADDA.W #0x16,A7
000199d2 4c df 01 01 |L | MOVEM.L (A7)+,D0+A0
000199d6 4e 5e |N^ | UNLK A6
000199d8 4e 75 |Nu | RTS
000199da ; --------------------------------------------------------------------------------------
000199da ; IPC_GetVar(MOD dst : Pointer; length : Long ; type : Long)
000199da ; Stack:
000199da ; A6+0x10 dst : Pointer
000199da ; A6+0xc length : Long
000199da ; A6+0x8 type : Long
000199da ; OMSI PASCAL Function
000199da ; <LVAR 0x010 4(r)>
000199da ; <LVAR 0x008 4(r)>
000199da ; <LVAR -0x010 @ 4(r)>
000199da ; --------------------------------------------------------------------------------------
000199da _IPC_GetVar(MOD dst : Pointer; length : Long ; type : Long):
000199da 4e 56 ff aa |NV | LINK.W A6,#0xffaa
000199de bf d5 | | CMPA.L (A5),A7
000199e0 62 06 |b | BHI 0x199e8
000199e2 44 fc 00 02 |D | MOVE.W #0x2,CCR
000199e6 4e 76 |Nv | TRAPV
000199e8 de fc 00 46 | F | ADDA.W #0x46,A7
000199ec 48 e7 e1 e0 |H | MOVEM.L A2+A1+A0+D7+D2+D1+D0,-(A7)
000199f0 43 ee 00 08 |C | LEA.L (A6+0x8),A1
000199f4 45 f9 00 01 c2 22 |E " | LEA.L 0x1c222,A2
000199fa 74 0c |t | MOVEQ.L #0x0c,D2
000199fc 2f 12 |/ | MOVE.L (A2),-(A7)
000199fe 41 ee ff f0 |A | LEA.L (A6-0x10),A0
00019a02 2f 08 |/ | MOVE.L A0,-(A7)
00019a04 3f 02 |? | MOVE.W D2,-(A7)
00019a06 4e b9 00 01 97 52 |N R | JSR _CopyBytes(src : Pointer; dst : Pointer; bytes : Word)
00019a0c de fc 00 0a | | ADDA.W #0xa,A7
00019a10 d5 92 | | ADD.L D2,(A2)
00019a12 20 11 | | MOVE.L (A1),D0
00019a14 52 80 |R | ADDQ.L #0x1,D0
00019a16 b0 ae ff f0 | | CMP.L (A6-0x10),D0
00019a1a 67 30 |g0 | BEQ 0x19a4c
00019a1c 41 fa fd 76 |A v | LEA.L 0x19794,A0
00019a20 70 05 |p | MOVEQ.L #0x05,D0
00019a22 2f 20 |/ | MOVE.L -(A0),-(A7)
00019a24 51 c8 ff fc |Q | DBF D0,0x19a22
00019a28 1f 3c 00 05 | < | MOVE.B #0x05,-(A7)
00019a2c 59 4f |YO | SUBQ.L #0x4,A7
00019a2e 48 6f 00 06 |Ho | PEA.L (A7+0x6)
00019a32 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
00019a36 3f 3c 00 18 |?< | MOVE.W #0x18,-(A7)
00019a3a 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00019a40 50 4f |PO | ADDQ.L #0x8,A7
00019a42 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
00019a48 de fc 00 1e | | ADDA.W #0x1e,A7
00019a4c 2f 11 |/ | MOVE.L (A1),-(A7)
00019a4e 7e 00 |~ | MOVEQ.L #0x00,D7
00019a50 be 97 | | CMP.L (A7),D7
00019a52 6e 2c |n, | BGT 0x19a80
00019a54 20 6e 00 10 | n | MOVEA.L (A6+0x10),A0
00019a58 20 07 | | MOVE.L D7,D0
00019a5a b0 91 | | CMP.L (A1),D0
00019a5c 6e 06 |n | BGT 0x19a64
00019a5e 90 ae 00 0c | | SUB.L (A6+0xc),D0
00019a62 6c 02 |l | BGE 0x19a66
00019a64 4e 4f |NO | TRAP #15
00019a66 72 07 |r | MOVEQ.L #0x07,D1
00019a68 92 91 | | SUB.L (A1),D1
00019a6a d2 87 | | ADD.L D7,D1
00019a6c 0c 81 00 00 00 07 | | CMPI.L #0x00000007,D1
00019a72 63 02 |c | BLS 0x19a76
00019a74 4e 4f |NO | TRAP #15
00019a76 11 b6 18 f4 08 00 | | MOVE.B (A6+D1.L-#0xc),(A0+D0.L)
00019a7c 52 87 |R | ADDQ.L #0x1,D7
00019a7e 68 d0 |h | BVC 0x19a50
00019a80 58 4f |XO | ADDQ.L #0x4,A7
00019a82 4c df 07 87 |L | MOVEM.L (A7)+,D0+D1+D2+D7+A0+A1+A2
00019a86 4e 5e |N^ | UNLK A6
00019a88 4e 75 |Nu | RTS
00019a8a ; --------------------------------------------------------------------------------------
00019a8a ; IPC_GetBool() : Bool
00019a8a ; Stack:
00019a8a ; A6+0x8 VAR RETURN : Bool
00019a8a ; OMSI PASCAL Function
00019a8a ; <LVAR 0x008 4(r)>
00019a8a ; <LVAR -0x004 4(r)>
00019a8a ; <LVAR -0x008 @ 4(r)>
00019a8a ; --------------------------------------------------------------------------------------
00019a8a _IPC_GetBool() : Bool:
00019a8a 4e 56 ff be |NV | LINK.W A6,#0xffbe
00019a8e bf d5 | | CMPA.L (A5),A7
00019a90 62 06 |b | BHI 0x19a98
00019a92 44 fc 00 02 |D | MOVE.W #0x2,CCR
00019a96 4e 76 |Nv | TRAPV
00019a98 de fc 00 3a | : | ADDA.W #0x3a,A7
00019a9c 48 e7 c0 c0 |H | MOVEM.L A1+A0+D1+D0,-(A7)
00019aa0 43 f9 00 01 c2 22 |C " | LEA.L 0x1c222,A1
00019aa6 72 01 |r | MOVEQ.L #0x01,D1
00019aa8 2f 11 |/ | MOVE.L (A1),-(A7)
00019aaa 41 ee ff f8 |A | LEA.L (A6-0x8),A0
00019aae 2f 08 |/ | MOVE.L A0,-(A7)
00019ab0 3f 3c 00 08 |?< | MOVE.W #0x8,-(A7)
00019ab4 4e b9 00 01 97 52 |N R | JSR _CopyBytes(src : Pointer; dst : Pointer; bytes : Word)
00019aba de fc 00 0a | | ADDA.W #0xa,A7
00019abe 50 91 |P | ADDQ.L #0x8,(A1)
00019ac0 4a ae ff f8 |J | TST.L (A6-0x8)
00019ac4 67 2e |g. | BEQ 0x19af4
00019ac6 41 fa fc cc |A | LEA.L 0x19794,A0
00019aca 70 05 |p | MOVEQ.L #0x05,D0
00019acc 2f 20 |/ | MOVE.L -(A0),-(A7)
00019ace 51 c8 ff fc |Q | DBF D0,0x19acc
00019ad2 1f 3c 00 05 | < | MOVE.B #0x05,-(A7)
00019ad6 59 4f |YO | SUBQ.L #0x4,A7
00019ad8 48 6f 00 06 |Ho | PEA.L (A7+0x6)
00019adc 3f 01 |? | MOVE.W D1,-(A7)
00019ade 3f 3c 00 18 |?< | MOVE.W #0x18,-(A7)
00019ae2 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00019ae8 50 4f |PO | ADDQ.L #0x8,A7
00019aea 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
00019af0 de fc 00 1e | | ADDA.W #0x1e,A7
00019af4 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00019af8 42 10 |B | CLR.B (A0)
00019afa 20 2e ff fc | . | MOVE.L (A6-0x4),D0
00019afe b0 81 | | CMP.L D1,D0
00019b00 66 02 |f | BNE 0x19b04
00019b02 52 10 |R | ADDQ.B #0x1,(A0)
00019b04 4c df 03 03 |L | MOVEM.L (A7)+,D0+D1+A0+A1
00019b08 4e 5e |N^ | UNLK A6
00019b0a 4e 75 |Nu | RTS
00019b0c ; --------------------------------------------------------------------------------------
00019b0c ; IPC_GetString(VAR retval : String)
00019b0c ; Stack:
00019b0c ; A6+0x8 VAR retval : String
00019b0c ; OMSI PASCAL Function
00019b0c ; <LVAR 0x008 4(r)>
00019b0c ; <LVAR -0x080 @>
00019b0c ; <LVAR -0x084 @ 4(r)>
00019b0c ; --------------------------------------------------------------------------------------
00019b0c _IPC_GetString(VAR retval : String):
00019b0c 4e 56 ff 42 |NV B | LINK.W A6,#0xff42
00019b10 bf d5 | | CMPA.L (A5),A7
00019b12 62 06 |b | BHI 0x19b1a
00019b14 44 fc 00 02 |D | MOVE.W #0x2,CCR
00019b18 4e 76 |Nv | TRAPV
00019b1a de fc 00 3a | : | ADDA.W #0x3a,A7
00019b1e 48 e7 80 e0 |H | MOVEM.L A2+A1+A0+D0,-(A7)
00019b22 45 f9 00 01 c2 22 |E " | LEA.L 0x1c222,A2
00019b28 2f 12 |/ | MOVE.L (A2),-(A7)
00019b2a 41 ee ff 7c |A | | LEA.L (A6-0x84),A0
00019b2e 2f 08 |/ | MOVE.L A0,-(A7)
00019b30 3f 3c 00 84 |?< | MOVE.W #0x84,-(A7)
00019b34 4e b9 00 01 97 52 |N R | JSR _CopyBytes(src : Pointer; dst : Pointer; bytes : Word)
00019b3a de fc 00 0a | | ADDA.W #0xa,A7
00019b3e 06 92 00 00 00 84 | | ADDI.L #0x00000084,(A2)
00019b44 20 2e ff 7c | . | | MOVE.L (A6-0x84),D0
00019b48 0c 80 00 00 00 09 | | CMPI.L #0x00000009,D0
00019b4e 67 30 |g0 | BEQ 0x19b80
00019b50 41 fa fc 42 |A B | LEA.L 0x19794,A0
00019b54 70 05 |p | MOVEQ.L #0x05,D0
00019b56 2f 20 |/ | MOVE.L -(A0),-(A7)
00019b58 51 c8 ff fc |Q | DBF D0,0x19b56
00019b5c 1f 3c 00 05 | < | MOVE.B #0x05,-(A7)
00019b60 59 4f |YO | SUBQ.L #0x4,A7
00019b62 48 6f 00 06 |Ho | PEA.L (A7+0x6)
00019b66 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
00019b6a 3f 3c 00 18 |?< | MOVE.W #0x18,-(A7)
00019b6e 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00019b74 50 4f |PO | ADDQ.L #0x8,A7
00019b76 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
00019b7c de fc 00 1e | | ADDA.W #0x1e,A7
00019b80 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00019b84 48 50 |HP | PEA.L (A0)
00019b86 4e b9 00 01 0c fa |N | JSR _NewString(VAR a : String)
00019b8c 58 4f |XO | ADDQ.L #0x4,A7
00019b8e 20 50 | P | MOVEA.L (A0),A0
00019b90 43 ee ff 80 |C | LEA.L (A6-0x80),A1
00019b94 70 7f |p | MOVEQ.L #0x7f,D0
00019b96 10 d9 | | MOVE.B (A1)+,(A0)+
00019b98 51 c8 ff fc |Q | DBF D0,0x19b96
00019b9c 4c df 07 01 |L | MOVEM.L (A7)+,D0+A0+A1+A2
00019ba0 4e 5e |N^ | UNLK A6
00019ba2 4e 75 |Nu | RTS
00019ba4 ; --------------------------------------------------------------------------------------
00019ba4 ; IPC_GetLong() : Long
00019ba4 ; Stack:
00019ba4 ; A6+0x8 VAR RETURN : Long
00019ba4 ; OMSI PASCAL Function
00019ba4 ; <LVAR 0x008 4(r)>
00019ba4 ; <LVAR -0x004 4(r)>
00019ba4 ; <LVAR -0x008 @ 4(r)>
00019ba4 ; --------------------------------------------------------------------------------------
00019ba4 _IPC_GetLong() : Long:
00019ba4 4e 56 ff be |NV | LINK.W A6,#0xffbe
00019ba8 bf d5 | | CMPA.L (A5),A7
00019baa 62 06 |b | BHI 0x19bb2
00019bac 44 fc 00 02 |D | MOVE.W #0x2,CCR
00019bb0 4e 76 |Nv | TRAPV
00019bb2 de fc 00 3a | : | ADDA.W #0x3a,A7
00019bb6 48 e7 c0 c0 |H | MOVEM.L A1+A0+D1+D0,-(A7)
00019bba 43 f9 00 01 c2 22 |C " | LEA.L 0x1c222,A1
00019bc0 72 0a |r | MOVEQ.L #0x0a,D1
00019bc2 2f 11 |/ | MOVE.L (A1),-(A7)
00019bc4 41 ee ff f8 |A | LEA.L (A6-0x8),A0
00019bc8 2f 08 |/ | MOVE.L A0,-(A7)
00019bca 3f 3c 00 08 |?< | MOVE.W #0x8,-(A7)
00019bce 4e b9 00 01 97 52 |N R | JSR _CopyBytes(src : Pointer; dst : Pointer; bytes : Word)
00019bd4 de c1 | | ADDA.W D1,A7
00019bd6 50 91 |P | ADDQ.L #0x8,(A1)
00019bd8 20 2e ff f8 | . | MOVE.L (A6-0x8),D0
00019bdc b0 81 | | CMP.L D1,D0
00019bde 67 30 |g0 | BEQ 0x19c10
00019be0 41 fa fb b2 |A | LEA.L 0x19794,A0
00019be4 70 05 |p | MOVEQ.L #0x05,D0
00019be6 2f 20 |/ | MOVE.L -(A0),-(A7)
00019be8 51 c8 ff fc |Q | DBF D0,0x19be6
00019bec 1f 3c 00 05 | < | MOVE.B #0x05,-(A7)
00019bf0 59 4f |YO | SUBQ.L #0x4,A7
00019bf2 48 6f 00 06 |Ho | PEA.L (A7+0x6)
00019bf6 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
00019bfa 3f 3c 00 18 |?< | MOVE.W #0x18,-(A7)
00019bfe 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00019c04 50 4f |PO | ADDQ.L #0x8,A7
00019c06 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
00019c0c de fc 00 1e | | ADDA.W #0x1e,A7
00019c10 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00019c14 20 ae ff fc | | MOVE.L (A6-0x4),(A0)
00019c18 4c df 03 03 |L | MOVEM.L (A7)+,D0+D1+A0+A1
00019c1c 4e 5e |N^ | UNLK A6
00019c1e 4e 75 |Nu | RTS
00019c20 ; --------------------------------------------------------------------------------------
00019c20 ; IPC_Init(void)
00019c20 ; Stack:
00019c20 ; OMSI PASCAL Function
00019c20 ; --------------------------------------------------------------------------------------
00019c20 _IPC_Init(void):
00019c20 4e 56 ff fc |NV | LINK.W A6,#0xfffc
00019c24 bf d5 | | CMPA.L (A5),A7
00019c26 62 06 |b | BHI 0x19c2e
00019c28 44 fc 00 02 |D | MOVE.W #0x2,CCR
00019c2c 4e 76 |Nv | TRAPV
00019c2e de fc 00 04 | | ADDA.W #0x4,A7
00019c32 23 fc 00 01 fc 00 00 01 |# | MOVE.L #0x1fc00,0x1c222
00019c3a c2 22 | " |
00019c3c 4e 5e |N^ | UNLK A6
00019c3e 4e 75 |Nu | RTS
00019c40 52 75 6e 6e |Runn | .TXT 'Runn'
00019c44 69 6e 67 20 |ing | .TXT 'ing '
00019c48 46 52 55 5f |FRU_ | .TXT 'FRU_'
00019c4c ; --------------------------------------------------------------------------------------
00019c4c ; FSCALL_1053e
00019c4c ; OMSI PASCAL Function
00019c4c ; <LVAR 0x020 4(r)>
00019c4c ; <LVAR 0x01e 1(r)>
00019c4c ; <LVAR 0x01c 1(r)>
00019c4c ; <LVAR 0x018 4(r)>
00019c4c ; <LVAR 0x014 4(r)>
00019c4c ; <LVAR 0x010 4(r)>
00019c4c ; <LVAR 0x00c 4(r)>
00019c4c ; <LVAR 0x008 4(r)>
00019c4c ; <LVAR -0x004 @>
00019c4c ; --------------------------------------------------------------------------------------
00019c4c _FSCALL_1053e:
00019c4c 4e 56 ff d0 |NV | LINK.W A6,#0xffd0
00019c50 bf d5 | | CMPA.L (A5),A7
00019c52 62 06 |b | BHI 0x19c5a
00019c54 44 fc 00 02 |D | MOVE.W #0x2,CCR
00019c58 4e 76 |Nv | TRAPV
00019c5a de fc 00 2c | , | ADDA.W #0x2c,A7
00019c5e 48 e7 80 c0 |H | MOVEM.L A1+A0+D0,-(A7)
00019c62 43 f8 00 00 |C | LEA.L 0x0,A1
00019c66 70 0c |p | MOVEQ.L #0x0c,D0
00019c68 4e b9 00 01 9c 20 |N | JSR _IPC_Init(void)
00019c6e 1f 2e 00 1e | . | MOVE.B (A6+0x1e),-(A7)
00019c72 4e b9 00 01 98 20 |N | JSR _IPC_PutBool(a : Bool)
00019c78 1e ae 00 1c | | MOVE.B (A6+0x1c),(A7)
00019c7c 4e b9 00 01 98 20 |N | JSR _IPC_PutBool(a : Bool)
00019c82 54 4f |TO | ADDQ.L #0x2,A7
00019c84 4e b9 00 01 99 1e |N | JSR _IPC_PutEnd(void)
00019c8a 2f 3a ff bc |/: | MOVE.L 0x19c48,-(A7)
00019c8e 2f 3a ff b4 |/: | MOVE.L 0x19c44,-(A7)
00019c92 2f 3a ff ac |/: | MOVE.L 0x19c40,-(A7)
00019c96 51 4f |QO | SUBQ.L #0x8,A7
00019c98 48 6f 00 08 |Ho | PEA.L (A7+0x8)
00019c9c 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
00019ca0 3f 00 |? | MOVE.W D0,-(A7)
00019ca2 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00019ca8 2e ae 00 20 |. | MOVE.L (A6+0x20),(A7)
00019cac 4e b9 00 01 0e da |N | JSR _StringDup(a : String) : String
00019cb2 58 4f |XO | ADDQ.L #0x4,A7
00019cb4 4e b9 00 01 0f 2c |N , | JSR _StringCat2(a, b : String) : String
00019cba 50 4f |PO | ADDQ.L #0x8,A7
00019cbc 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
00019cc2 de c0 | | ADDA.W D0,A7
00019cc4 2e ae 00 20 |. | MOVE.L (A6+0x20),(A7)
00019cc8 48 78 00 01 |Hx | PEA.L 0x1
00019ccc 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
00019cd0 48 6e ff fc |Hn | PEA.L (A6-0x4)
00019cd4 4e b9 00 01 47 5e |N G^ | JSR _PushProgram(a : String; b : String; MOD c : B; VAR d : Bool)
00019cda de fc 00 0e | | ADDA.W #0xe,A7
00019cde 4e b9 00 01 9c 20 |N | JSR _IPC_Init(void)
00019ce4 20 6e 00 18 | n | MOVEA.L (A6+0x18),A0
00019ce8 48 50 |HP | PEA.L (A0)
00019cea 4e b9 00 01 9a 8a |N | JSR _IPC_GetBool() : Bool
00019cf0 58 4f |XO | ADDQ.L #0x4,A7
00019cf2 20 6e 00 14 | n | MOVEA.L (A6+0x14),A0
00019cf6 48 50 |HP | PEA.L (A0)
00019cf8 4e b9 00 01 9b 0c |N | JSR _IPC_GetString(VAR retval : String)
00019cfe 58 4f |XO | ADDQ.L #0x4,A7
00019d00 20 6e 00 10 | n | MOVEA.L (A6+0x10),A0
00019d04 48 50 |HP | PEA.L (A0)
00019d06 4e b9 00 01 9b 0c |N | JSR _IPC_GetString(VAR retval : String)
00019d0c 58 4f |XO | ADDQ.L #0x4,A7
00019d0e 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
00019d12 48 50 |HP | PEA.L (A0)
00019d14 48 51 |HQ | PEA.L (A1)
00019d16 48 51 |HQ | PEA.L (A1)
00019d18 4e b9 00 01 99 da |N | JSR _IPC_GetVar(MOD dst : Pointer; length : Long ; type : Long)
00019d1e de c0 | | ADDA.W D0,A7
00019d20 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00019d24 48 50 |HP | PEA.L (A0)
00019d26 48 51 |HQ | PEA.L (A1)
00019d28 48 78 00 07 |Hx | PEA.L 0x7
00019d2c 4e b9 00 01 99 da |N | JSR _IPC_GetVar(MOD dst : Pointer; length : Long ; type : Long)
00019d32 de c0 | | ADDA.W D0,A7
00019d34 4e b9 00 01 99 62 |N b | JSR _IPC_GetEnd(void)
00019d3a 4c df 03 01 |L | MOVEM.L (A7)+,D0+A0+A1
00019d3e 4e 5e |N^ | UNLK A6
00019d40 4e 75 |Nu | RTS
00019d42 ; --------------------------------------------------------------------------------------
00019d42 ; IPC_InitGetTwoBools(VAR a : Bool; VAR b : Bool)
00019d42 ; Stack:
00019d42 ; A6+0xc VAR a : Bool
00019d42 ; A6+0x8 VAR b : Bool
00019d42 ; OMSI PASCAL Function
00019d42 ; <LVAR 0x00c 4(r)>
00019d42 ; <LVAR 0x008 4(r)>
00019d42 ; --------------------------------------------------------------------------------------
00019d42 _IPC_InitGetTwoBools(VAR a : Bool; VAR b : Bool):
00019d42 4e 56 ff f4 |NV | LINK.W A6,#0xfff4
00019d46 bf d5 | | CMPA.L (A5),A7
00019d48 62 06 |b | BHI 0x19d50
00019d4a 44 fc 00 02 |D | MOVE.W #0x2,CCR
00019d4e 4e 76 |Nv | TRAPV
00019d50 de fc 00 0c | | ADDA.W #0xc,A7
00019d54 48 e7 00 80 |H | MOVEM.L A0,-(A7)
00019d58 4e b9 00 01 9c 20 |N | JSR _IPC_Init(void)
00019d5e 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
00019d62 48 50 |HP | PEA.L (A0)
00019d64 4e b9 00 01 9a 8a |N | JSR _IPC_GetBool() : Bool
00019d6a 58 4f |XO | ADDQ.L #0x4,A7
00019d6c 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00019d70 48 50 |HP | PEA.L (A0)
00019d72 4e b9 00 01 9a 8a |N | JSR _IPC_GetBool() : Bool
00019d78 58 4f |XO | ADDQ.L #0x4,A7
00019d7a 4e b9 00 01 99 62 |N b | JSR _IPC_GetEnd(void)
00019d80 4c df 01 00 |L | MOVEM.L (A7)+,A0
00019d84 4e 5e |N^ | UNLK A6
00019d86 4e 75 |Nu | RTS
00019d88 ; --------------------------------------------------------------------------------------
00019d88 ; ?IPC_Puts(a : Bool; b : String; c : String; d: Bool; e : Long; f : Long)
00019d88 ; Stack:
00019d88 ; A6+0x1a a : Bool
00019d88 ; A6+0x16 b : String
00019d88 ; A6+0x12 c : String
00019d88 ; A6+0x10 d : Bool
00019d88 ; A6+0xc e : Long
00019d88 ; A6+0x8 f : Long
00019d88 ; OMSI PASCAL Function
00019d88 ; <LVAR 0x01a 1(r)>
00019d88 ; <LVAR 0x016 4(r)>
00019d88 ; <LVAR 0x012 4(r)>
00019d88 ; <LVAR 0x010 1(r)>
00019d88 ; <LVAR 0x00c 4(r)>
00019d88 ; <LVAR 0x008 4(r)>
00019d88 ; --------------------------------------------------------------------------------------
00019d88 _?IPC_Puts(a : Bool; b : String; c : String; d: Bool; e : Long; f : Long):
00019d88 4e 56 ff e4 |NV | LINK.W A6,#0xffe4
00019d8c bf d5 | | CMPA.L (A5),A7
00019d8e 62 06 |b | BHI 0x19d96
00019d90 44 fc 00 02 |D | MOVE.W #0x2,CCR
00019d94 4e 76 |Nv | TRAPV
00019d96 de fc 00 1c | | ADDA.W #0x1c,A7
00019d9a 48 e7 00 80 |H | MOVEM.L A0,-(A7)
00019d9e 41 f8 00 00 |A | LEA.L 0x0,A0
00019da2 4e b9 00 01 9c 20 |N | JSR _IPC_Init(void)
00019da8 1f 2e 00 1a | . | MOVE.B (A6+0x1a),-(A7)
00019dac 4e b9 00 01 98 20 |N | JSR _IPC_PutBool(a : Bool)
00019db2 54 4f |TO | ADDQ.L #0x2,A7
00019db4 2f 2e 00 16 |/. | MOVE.L (A6+0x16),-(A7)
00019db8 4e b9 00 01 98 74 |N t | JSR _IPC_PutString(a : String)
00019dbe 2e ae 00 12 |. | MOVE.L (A6+0x12),(A7)
00019dc2 4e b9 00 01 98 74 |N t | JSR _IPC_PutString(a : String)
00019dc8 54 4f |TO | ADDQ.L #0x2,A7
00019dca 1e ae 00 10 | | MOVE.B (A6+0x10),(A7)
00019dce 48 57 |HW | PEA.L (A7)
00019dd0 48 50 |HP | PEA.L (A0)
00019dd2 48 50 |HP | PEA.L (A0)
00019dd4 4e b9 00 01 97 a4 |N | JSR _IPC_PutVar(src : Pointer; length : Long ; type : Long)
00019dda de fc 00 0a | | ADDA.W #0xa,A7
00019dde 2e ae 00 0c |. | MOVE.L (A6+0xc),(A7)
00019de2 2f 2e 00 08 |/. | MOVE.L (A6+0x8),-(A7)
00019de6 48 57 |HW | PEA.L (A7)
00019de8 48 50 |HP | PEA.L (A0)
00019dea 48 78 00 07 |Hx | PEA.L 0x7
00019dee 4e b9 00 01 97 a4 |N | JSR _IPC_PutVar(src : Pointer; length : Long ; type : Long)
00019df4 de fc 00 14 | | ADDA.W #0x14,A7
00019df8 4e b9 00 01 99 1e |N | JSR _IPC_PutEnd(void)
00019dfe 42 27 |B' | CLR.B -(A7)
00019e00 48 78 00 01 |Hx | PEA.L 0x1
00019e04 4e b9 00 01 4e 18 |N N | JSR _PopProgram(status : Byte; msg : String)
00019e0a 5c 4f |\O | ADDQ.L #0x6,A7
00019e0c 4c df 01 00 |L | MOVEM.L (A7)+,A0
00019e10 4e 5e |N^ | UNLK A6
00019e12 4e 75 |Nu | RTS
00019e14 ; --------------------------------------------------------------------------------------
00019e14 ; ?ExecFRU(VAR a : L; VAR b : W; VAR c: L; VAR d : L; VAR e: B)
00019e14 ; Stack:
00019e14 ; A6+0x18 VAR a : L
00019e14 ; A6+0x14 VAR b : W
00019e14 ; A6+0x10 VAR c : L
00019e14 ; A6+0xc VAR d : L
00019e14 ; A6+0x8 VAR e : B
00019e14 ; OMSI PASCAL Function
00019e14 ; <LVAR 0x024 1(r)>
00019e14 ; <LVAR 0x020 4(r)>
00019e14 ; <LVAR 0x01e 1(r)>
00019e14 ; <LVAR 0x01c 1(r)>
00019e14 ; <LVAR 0x018 4(r)>
00019e14 ; <LVAR 0x014 4(r)>
00019e14 ; <LVAR 0x010 4(r)>
00019e14 ; <LVAR 0x00c 4(r)>
00019e14 ; <LVAR 0x008 4(r)>
00019e14 ; <LVAR -0x002 @>
00019e14 ; --------------------------------------------------------------------------------------
00019e14 _?ExecFRU(VAR a : L; VAR b : W; VAR c: L; VAR d : L; VAR e: B):
00019e14 4e 56 ff d2 |NV | LINK.W A6,#0xffd2
00019e18 bf d5 | | CMPA.L (A5),A7
00019e1a 62 06 |b | BHI 0x19e22
00019e1c 44 fc 00 02 |D | MOVE.W #0x2,CCR
00019e20 4e 76 |Nv | TRAPV
00019e22 de fc 00 2c | , | ADDA.W #0x2c,A7
00019e26 48 e7 80 c0 |H | MOVEM.L A1+A0+D0,-(A7)
00019e2a 43 f8 00 00 |C | LEA.L 0x0,A1
00019e2e 70 0c |p | MOVEQ.L #0x0c,D0
00019e30 4e b9 00 01 9c 20 |N | JSR _IPC_Init(void)
00019e36 1f 2e 00 24 | . $ | MOVE.B (A6+0x24),-(A7)
00019e3a 48 57 |HW | PEA.L (A7)
00019e3c 48 51 |HQ | PEA.L (A1)
00019e3e 48 51 |HQ | PEA.L (A1)
00019e40 4e b9 00 01 97 a4 |N | JSR _IPC_PutVar(src : Pointer; length : Long ; type : Long)
00019e46 de c0 | | ADDA.W D0,A7
00019e48 1e ae 00 1e | | MOVE.B (A6+0x1e),(A7)
00019e4c 4e b9 00 01 98 20 |N | JSR _IPC_PutBool(a : Bool)
00019e52 1e ae 00 1c | | MOVE.B (A6+0x1c),(A7)
00019e56 4e b9 00 01 98 20 |N | JSR _IPC_PutBool(a : Bool)
00019e5c 54 4f |TO | ADDQ.L #0x2,A7
00019e5e 4e b9 00 01 99 1e |N | JSR _IPC_PutEnd(void)
00019e64 2f 3a fd e2 |/: | MOVE.L 0x19c48,-(A7)
00019e68 2f 3a fd da |/: | MOVE.L 0x19c44,-(A7)
00019e6c 2f 3a fd d2 |/: | MOVE.L 0x19c40,-(A7)
00019e70 51 4f |QO | SUBQ.L #0x8,A7
00019e72 48 6f 00 08 |Ho | PEA.L (A7+0x8)
00019e76 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
00019e7a 3f 00 |? | MOVE.W D0,-(A7)
00019e7c 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00019e82 2e ae 00 20 |. | MOVE.L (A6+0x20),(A7)
00019e86 4e b9 00 01 0e da |N | JSR _StringDup(a : String) : String
00019e8c 58 4f |XO | ADDQ.L #0x4,A7
00019e8e 4e b9 00 01 0f 2c |N , | JSR _StringCat2(a, b : String) : String
00019e94 50 4f |PO | ADDQ.L #0x8,A7
00019e96 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
00019e9c de c0 | | ADDA.W D0,A7
00019e9e 2e ae 00 20 |. | MOVE.L (A6+0x20),(A7)
00019ea2 48 78 00 01 |Hx | PEA.L 0x1
00019ea6 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
00019eaa 48 6e ff fe |Hn | PEA.L (A6-0x2)
00019eae 4e b9 00 01 47 5e |N G^ | JSR _PushProgram(a : String; b : String; MOD c : B; VAR d : Bool)
00019eb4 de fc 00 0e | | ADDA.W #0xe,A7
00019eb8 4e b9 00 01 9c 20 |N | JSR _IPC_Init(void)
00019ebe 20 6e 00 18 | n | MOVEA.L (A6+0x18),A0
00019ec2 48 50 |HP | PEA.L (A0)
00019ec4 4e b9 00 01 9a 8a |N | JSR _IPC_GetBool() : Bool
00019eca 58 4f |XO | ADDQ.L #0x4,A7
00019ecc 20 6e 00 14 | n | MOVEA.L (A6+0x14),A0
00019ed0 48 50 |HP | PEA.L (A0)
00019ed2 4e b9 00 01 9b 0c |N | JSR _IPC_GetString(VAR retval : String)
00019ed8 58 4f |XO | ADDQ.L #0x4,A7
00019eda 20 6e 00 10 | n | MOVEA.L (A6+0x10),A0
00019ede 48 50 |HP | PEA.L (A0)
00019ee0 4e b9 00 01 9b 0c |N | JSR _IPC_GetString(VAR retval : String)
00019ee6 58 4f |XO | ADDQ.L #0x4,A7
00019ee8 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
00019eec 48 50 |HP | PEA.L (A0)
00019eee 48 51 |HQ | PEA.L (A1)
00019ef0 48 51 |HQ | PEA.L (A1)
00019ef2 4e b9 00 01 99 da |N | JSR _IPC_GetVar(MOD dst : Pointer; length : Long ; type : Long)
00019ef8 de c0 | | ADDA.W D0,A7
00019efa 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00019efe 48 50 |HP | PEA.L (A0)
00019f00 48 51 |HQ | PEA.L (A1)
00019f02 48 78 00 07 |Hx | PEA.L 0x7
00019f06 4e b9 00 01 99 da |N | JSR _IPC_GetVar(MOD dst : Pointer; length : Long ; type : Long)
00019f0c de c0 | | ADDA.W D0,A7
00019f0e 4e b9 00 01 99 62 |N b | JSR _IPC_GetEnd(void)
00019f14 4c df 03 01 |L | MOVEM.L (A7)+,D0+A0+A1
00019f18 4e 5e |N^ | UNLK A6
00019f1a 4e 75 |Nu | RTS
00019f1c ; --------------------------------------------------------------------------------------
00019f1c ; ?IPC_GetStd(MOD a : Pointer; VAR b : Bool ; VAR c : Bool)
00019f1c ; Stack:
00019f1c ; A6+0x10 a : Pointer
00019f1c ; A6+0xc VAR b : Bool
00019f1c ; A6+0x8 VAR c : Bool
00019f1c ; OMSI PASCAL Function
00019f1c ; <LVAR 0x010 4(r)>
00019f1c ; <LVAR 0x00c 4(r)>
00019f1c ; <LVAR 0x008 4(r)>
00019f1c ; --------------------------------------------------------------------------------------
00019f1c _?IPC_GetStd(MOD a : Pointer; VAR b : Bool ; VAR c : Bool):
00019f1c 4e 56 ff ec |NV | LINK.W A6,#0xffec
00019f20 bf d5 | | CMPA.L (A5),A7
00019f22 62 06 |b | BHI 0x19f2a
00019f24 44 fc 00 02 |D | MOVE.W #0x2,CCR
00019f28 4e 76 |Nv | TRAPV
00019f2a de fc 00 14 | | ADDA.W #0x14,A7
00019f2e 48 e7 00 80 |H | MOVEM.L A0,-(A7)
00019f32 4e b9 00 01 9c 20 |N | JSR _IPC_Init(void)
00019f38 20 6e 00 10 | n | MOVEA.L (A6+0x10),A0
00019f3c 48 50 |HP | PEA.L (A0)
00019f3e 48 78 00 00 |Hx | PEA.L 0x0
00019f42 48 78 00 00 |Hx | PEA.L 0x0
00019f46 4e b9 00 01 99 da |N | JSR _IPC_GetVar(MOD dst : Pointer; length : Long ; type : Long)
00019f4c de fc 00 0c | | ADDA.W #0xc,A7
00019f50 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
00019f54 48 50 |HP | PEA.L (A0)
00019f56 4e b9 00 01 9a 8a |N | JSR _IPC_GetBool() : Bool
00019f5c 58 4f |XO | ADDQ.L #0x4,A7
00019f5e 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
00019f62 48 50 |HP | PEA.L (A0)
00019f64 4e b9 00 01 9a 8a |N | JSR _IPC_GetBool() : Bool
00019f6a 58 4f |XO | ADDQ.L #0x4,A7
00019f6c 4e b9 00 01 99 62 |N b | JSR _IPC_GetEnd(void)
00019f72 4c df 01 00 |L | MOVEM.L (A7)+,A0
00019f76 4e 5e |N^ | UNLK A6
00019f78 4e 75 |Nu | RTS
00019f7a ; --------------------------------------------------------------------------------------
00019f7a ; FSCALL_1055c
00019f7a ; OMSI PASCAL Function
00019f7a ; <LVAR 0x028 1(r)>
00019f7a ; <LVAR 0x024 4(r)>
00019f7a ; <LVAR 0x022 1(r)>
00019f7a ; <LVAR 0x020 1(r)>
00019f7a ; <LVAR 0x01e 1(r)>
00019f7a ; <LVAR 0x01c 1(r)>
00019f7a ; <LVAR 0x018 4(r)>
00019f7a ; <LVAR 0x014 4(r)>
00019f7a ; <LVAR 0x010 4(r)>
00019f7a ; <LVAR 0x00c 4(r)>
00019f7a ; <LVAR 0x008 4(r)>
00019f7a ; <LVAR -0x002 @>
00019f7a ; --------------------------------------------------------------------------------------
00019f7a _FSCALL_1055c:
00019f7a 4e 56 ff ce |NV | LINK.W A6,#0xffce
00019f7e bf d5 | | CMPA.L (A5),A7
00019f80 62 06 |b | BHI 0x19f88
00019f82 44 fc 00 02 |D | MOVE.W #0x2,CCR
00019f86 4e 76 |Nv | TRAPV
00019f88 de fc 00 30 | 0 | ADDA.W #0x30,A7
00019f8c 48 e7 80 e0 |H | MOVEM.L A2+A1+A0+D0,-(A7)
00019f90 43 f8 00 00 |C | LEA.L 0x0,A1
00019f94 45 f9 00 01 98 20 |E | LEA.L _IPC_PutBool(a : Bool),A2
00019f9a 70 0c |p | MOVEQ.L #0x0c,D0
00019f9c 4e b9 00 01 9c 20 |N | JSR _IPC_Init(void)
00019fa2 1f 2e 00 28 | . ( | MOVE.B (A6+0x28),-(A7)
00019fa6 48 57 |HW | PEA.L (A7)
00019fa8 48 51 |HQ | PEA.L (A1)
00019faa 48 51 |HQ | PEA.L (A1)
00019fac 4e b9 00 01 97 a4 |N | JSR _IPC_PutVar(src : Pointer; length : Long ; type : Long)
00019fb2 de c0 | | ADDA.W D0,A7
00019fb4 1e ae 00 22 | " | MOVE.B (A6+0x22),(A7)
00019fb8 4e 92 |N | JSR (A2)
00019fba 1e ae 00 20 | | MOVE.B (A6+0x20),(A7)
00019fbe 4e 92 |N | JSR (A2)
00019fc0 1e ae 00 1e | | MOVE.B (A6+0x1e),(A7)
00019fc4 4e 92 |N | JSR (A2)
00019fc6 1e ae 00 1c | | MOVE.B (A6+0x1c),(A7)
00019fca 4e 92 |N | JSR (A2)
00019fcc 54 4f |TO | ADDQ.L #0x2,A7
00019fce 4e b9 00 01 99 1e |N | JSR _IPC_PutEnd(void)
00019fd4 2f 3a fc 72 |/: r | MOVE.L 0x19c48,-(A7)
00019fd8 2f 3a fc 6a |/: j | MOVE.L 0x19c44,-(A7)
00019fdc 2f 3a fc 62 |/: b | MOVE.L 0x19c40,-(A7)
00019fe0 51 4f |QO | SUBQ.L #0x8,A7
00019fe2 48 6f 00 08 |Ho | PEA.L (A7+0x8)
00019fe6 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
00019fea 3f 00 |? | MOVE.W D0,-(A7)
00019fec 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
00019ff2 2e ae 00 24 |. $ | MOVE.L (A6+0x24),(A7)
00019ff6 4e b9 00 01 0e da |N | JSR _StringDup(a : String) : String
00019ffc 58 4f |XO | ADDQ.L #0x4,A7
00019ffe 4e b9 00 01 0f 2c |N , | JSR _StringCat2(a, b : String) : String
0001a004 50 4f |PO | ADDQ.L #0x8,A7
0001a006 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
0001a00c de c0 | | ADDA.W D0,A7
0001a00e 2e ae 00 24 |. $ | MOVE.L (A6+0x24),(A7)
0001a012 48 78 00 01 |Hx | PEA.L 0x1
0001a016 1f 3c 00 02 | < | MOVE.B #0x02,-(A7)
0001a01a 48 6e ff fe |Hn | PEA.L (A6-0x2)
0001a01e 4e b9 00 01 47 5e |N G^ | JSR _PushProgram(a : String; b : String; MOD c : B; VAR d : Bool)
0001a024 de fc 00 0e | | ADDA.W #0xe,A7
0001a028 4e b9 00 01 9c 20 |N | JSR _IPC_Init(void)
0001a02e 20 6e 00 18 | n | MOVEA.L (A6+0x18),A0
0001a032 48 50 |HP | PEA.L (A0)
0001a034 4e b9 00 01 9a 8a |N | JSR _IPC_GetBool() : Bool
0001a03a 58 4f |XO | ADDQ.L #0x4,A7
0001a03c 20 6e 00 14 | n | MOVEA.L (A6+0x14),A0
0001a040 48 50 |HP | PEA.L (A0)
0001a042 4e b9 00 01 9b 0c |N | JSR _IPC_GetString(VAR retval : String)
0001a048 58 4f |XO | ADDQ.L #0x4,A7
0001a04a 20 6e 00 10 | n | MOVEA.L (A6+0x10),A0
0001a04e 48 50 |HP | PEA.L (A0)
0001a050 4e b9 00 01 9b 0c |N | JSR _IPC_GetString(VAR retval : String)
0001a056 58 4f |XO | ADDQ.L #0x4,A7
0001a058 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
0001a05c 48 50 |HP | PEA.L (A0)
0001a05e 48 51 |HQ | PEA.L (A1)
0001a060 48 51 |HQ | PEA.L (A1)
0001a062 4e b9 00 01 99 da |N | JSR _IPC_GetVar(MOD dst : Pointer; length : Long ; type : Long)
0001a068 de c0 | | ADDA.W D0,A7
0001a06a 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001a06e 48 50 |HP | PEA.L (A0)
0001a070 48 51 |HQ | PEA.L (A1)
0001a072 48 78 00 07 |Hx | PEA.L 0x7
0001a076 4e b9 00 01 99 da |N | JSR _IPC_GetVar(MOD dst : Pointer; length : Long ; type : Long)
0001a07c de c0 | | ADDA.W D0,A7
0001a07e 4e b9 00 01 99 62 |N b | JSR _IPC_GetEnd(void)
0001a084 4c df 07 01 |L | MOVEM.L (A7)+,D0+A0+A1+A2
0001a088 4e 5e |N^ | UNLK A6
0001a08a 4e 75 |Nu | RTS
0001a08c ; --------------------------------------------------------------------------------------
0001a08c ; ?IPC_GetVar4xBool(VAR a : Pointer; VAR b : Bool ; VAR c : Bool; VAR d: Bool; VAR e: Bool)
0001a08c ; Stack:
0001a08c ; A6+0x18 VAR a : Pointer
0001a08c ; A6+0x14 VAR b : Bool
0001a08c ; A6+0x10 VAR c : Bool
0001a08c ; A6+0xc VAR d : Bool
0001a08c ; A6+0x8 VAR e : Bool
0001a08c ; OMSI PASCAL Function
0001a08c ; <LVAR 0x018 4(r)>
0001a08c ; <LVAR 0x014 4(r)>
0001a08c ; <LVAR 0x010 4(r)>
0001a08c ; <LVAR 0x00c 4(r)>
0001a08c ; <LVAR 0x008 4(r)>
0001a08c ; --------------------------------------------------------------------------------------
0001a08c _?IPC_GetVar4xBool(VAR a : Pointer; VAR b : Bool ; VAR c : Bool; VAR d: Bool; VAR e: Bool):
0001a08c 4e 56 ff e8 |NV | LINK.W A6,#0xffe8
0001a090 bf d5 | | CMPA.L (A5),A7
0001a092 62 06 |b | BHI 0x1a09a
0001a094 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001a098 4e 76 |Nv | TRAPV
0001a09a de fc 00 18 | | ADDA.W #0x18,A7
0001a09e 48 e7 00 c0 |H | MOVEM.L A1+A0,-(A7)
0001a0a2 43 f9 00 01 9a 8a |C | LEA.L _IPC_GetBool() : Bool,A1
0001a0a8 4e b9 00 01 9c 20 |N | JSR _IPC_Init(void)
0001a0ae 20 6e 00 18 | n | MOVEA.L (A6+0x18),A0
0001a0b2 48 50 |HP | PEA.L (A0)
0001a0b4 48 78 00 00 |Hx | PEA.L 0x0
0001a0b8 48 78 00 00 |Hx | PEA.L 0x0
0001a0bc 4e b9 00 01 99 da |N | JSR _IPC_GetVar(MOD dst : Pointer; length : Long ; type : Long)
0001a0c2 de fc 00 0c | | ADDA.W #0xc,A7
0001a0c6 20 6e 00 14 | n | MOVEA.L (A6+0x14),A0
0001a0ca 48 50 |HP | PEA.L (A0)
0001a0cc 4e 91 |N | JSR (A1)
0001a0ce 58 4f |XO | ADDQ.L #0x4,A7
0001a0d0 20 6e 00 10 | n | MOVEA.L (A6+0x10),A0
0001a0d4 48 50 |HP | PEA.L (A0)
0001a0d6 4e 91 |N | JSR (A1)
0001a0d8 58 4f |XO | ADDQ.L #0x4,A7
0001a0da 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
0001a0de 48 50 |HP | PEA.L (A0)
0001a0e0 4e 91 |N | JSR (A1)
0001a0e2 58 4f |XO | ADDQ.L #0x4,A7
0001a0e4 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001a0e8 48 50 |HP | PEA.L (A0)
0001a0ea 4e 91 |N | JSR (A1)
0001a0ec 58 4f |XO | ADDQ.L #0x4,A7
0001a0ee 4e b9 00 01 99 62 |N b | JSR _IPC_GetEnd(void)
0001a0f4 4c df 03 00 |L | MOVEM.L (A7)+,A0+A1
0001a0f8 4e 5e |N^ | UNLK A6
0001a0fa 4e 75 |Nu | RTS
0001a0fc 88 00 00 10 | | .CONST 0x88,0x00,0x00,0x10 ; Param Type 0x9
0001a100 14 40 00 0a | @ | .CONST 0x14,0x40,0x00,0x0a ; Param Type 0xa
0001a104 14 31 00 0a | 1 | .CONST 0x14,0x31,0x00,0x0a ; Param Type 0xb
0001a108 88 12 00 14 | | .CONST 0x88,0x12,0x00,0x14 ; Param Type 0xc
0001a10c 81 00 00 0a | | .CONST 0x81,0x00,0x00,0x0a ; Param Type 0xd
0001a110 22 11 30 0a |" 0 | .CONST 0x22,0x11,0x30,0x0a ; Param Type 0xe
0001a114 21 11 00 06 |! | .CONST 0x21,0x11,0x00,0x06 ; Param Type 0xf
0001a118 ; --------------------------------------------------------------------------------------
0001a118 ; Run_Experiment()
0001a118 ; --------------------------------------------------------------------------------------
0001a118 _Run_Experiment():
0001a118 48 e7 f0 e0 |H | MOVEM.L A2+A1+A0+D3+D2+D1+D0,-(A7)
0001a11c 41 ef 00 1c |A | LEA.L (A7+0x1c),A0 ; Return PC
0001a120 22 50 |"P | MOVEA.L (A0),A1
0001a122 d0 d9 | | ADDA.W (A1)+,A0 ; Stack Delta
0001a124 59 8f |Y | SUBQ.L #0x4,A7
0001a126 24 4f |$O | MOVEA.L A7,A2
0001a128 42 80 |B | CLR.L D0
0001a12a 10 19 | | MOVE.B (A1)+,D0 ; Name Length
0001a12c 59 8f |Y | SUBQ.L #0x4,A7
0001a12e 2f 09 |/ | MOVE.L A1,-(A7)
0001a130 d3 c0 | | ADDA.L D0,A1
0001a132 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
0001a136 3f 00 |? | MOVE.W D0,-(A7)
0001a138 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
0001a13e 50 4f |PO | ADDQ.L #0x8,A7
0001a140 2f 0a |/ | MOVE.L A2,-(A7)
0001a142 4e b9 00 01 86 6c |N l | JSR _ExpLoad(a : String; b: Pointer)
0001a148 50 4f |PO | ADDQ.L #0x8,A7
0001a14a 1f 19 | | MOVE.B (A1)+,-(A7)
0001a14c 1f 19 | | MOVE.B (A1)+,-(A7)
0001a14e 6a 04 |j | BPL 0x1a154
0001a150 55 88 |U | SUBQ.L #0x2,A0
0001a152 1e 90 | | MOVE.B (A0),(A7)
0001a154 2f 12 |/ | MOVE.L (A2),-(A7)
0001a156 42 82 |B | CLR.L D2
0001a158 42 81 |B | CLR.L D1
0001a15a 12 19 | | MOVE.B (A1)+,D1 ; D1 => number of O_params
0001a15c 10 19 | | MOVE.B (A1)+,D0 ; D0 => number of I_params
0001a15e 67 60 |g` | BEQ 0x1a1c0
0001a160 14 19 | | MOVE.B (A1)+,D2
0001a162 0c 02 00 08 | | CMPI.B #0x08,D2
0001a166 6d 3a |m: | BLT 0x1a1a2
0001a168 67 2c |g, | BEQ 0x1a196
0001a16a 26 3b 25 20 ff 6c |&;% l | MOVE.L (D2.W*4+#0x1a0d8),D3 ; LEW=2520
0001a170 14 03 | | MOVE.B D3,D2
0001a172 91 c2 | | SUBA.L D2,A0
0001a174 2f 08 |/ | MOVE.L A0,-(A7)
0001a176 42 a7 |B | CLR.L -(A7)
0001a178 42 03 |B | CLR.B D3
0001a17a e9 9b | | ROL.L #0x4,D3
0001a17c 14 03 | | MOVE.B D3,D2
0001a17e 67 12 |g | BEQ 0x1a192
0001a180 2f 02 |/ | MOVE.L D2,-(A7)
0001a182 53 97 |S | SUBQ.L #0x1,(A7)
0001a184 4e b9 00 01 8b 28 |N ( | JSR _ExpInputParam(exp : Pointer; ptr : Pointer; len : L)
0001a18a 58 8f |X | ADDQ.L #0x4,A7
0001a18c d5 af 00 04 | | ADD.L D2,(A7+0x4)
0001a190 60 e6 |` | BRA 0x1a178
0001a192 50 8f |P | ADDQ.L #0x8,A7
0001a194 60 26 |`& | BRA 0x1a1bc
0001a196 3f 20 |? | MOVE.W -(A0),-(A7) ; I_Param: 8 (flag)
0001a198 4e b9 00 01 8b 86 |N | JSR _ExpInputFlag(exp : Pointer; val : Word)
0001a19e 54 8f |T | ADDQ.L #0x2,A7
0001a1a0 60 1a |` | BRA 0x1a1bc
0001a1a2 26 02 |& | MOVE.L D2,D3 ; I_Param: length - 1
0001a1a4 54 82 |T | ADDQ.L #0x2,D2
0001a1a6 02 42 ff fe | B | ANDI.W #0xfffe,D2
0001a1aa 91 c2 | | SUBA.L D2,A0
0001a1ac 2f 08 |/ | MOVE.L A0,-(A7)
0001a1ae 42 a7 |B | CLR.L -(A7)
0001a1b0 2f 03 |/ | MOVE.L D3,-(A7)
0001a1b2 4e b9 00 01 8b 28 |N ( | JSR _ExpInputParam(exp : Pointer; ptr : Pointer; len : L)
0001a1b8 de fc 00 0c | | ADDA.W #0xc,A7
0001a1bc 53 80 |S | SUBQ.L #0x1,D0
0001a1be 6e 9e |n | BGT 0x1a15e
0001a1c0 4e b9 00 01 92 7e |N ~ | JSR _ExpRun(a: Bool; adr: Byte; b: Pointer)
0001a1c6 4a 81 |J | TST.L D1 ; D1 => number of O_params
0001a1c8 67 56 |gV | BEQ 0x1a220
0001a1ca 14 19 | | MOVE.B (A1)+,D2
0001a1cc 0c 02 00 08 | | CMPI.B #0x08,D2
0001a1d0 6d 3a |m: | BLT 0x1a20c
0001a1d2 67 2c |g, | BEQ 0x1a200
0001a1d4 26 3b 25 20 ff 02 |&;% | MOVE.L (D2.W*4+#0x1a0d8),D3 ; LEW=2520
0001a1da 2f 20 |/ | MOVE.L -(A0),-(A7)
0001a1dc 42 a7 |B | CLR.L -(A7)
0001a1de 42 03 |B | CLR.B D3
0001a1e0 e9 9b | | ROL.L #0x4,D3
0001a1e2 14 03 | | MOVE.B D3,D2
0001a1e4 67 16 |g | BEQ 0x1a1fc
0001a1e6 20 02 | | MOVE.L D2,D0
0001a1e8 53 82 |S | SUBQ.L #0x1,D2
0001a1ea 2f 02 |/ | MOVE.L D2,-(A7)
0001a1ec 4e b9 00 01 8b f4 |N | JSR _ExpOutputParam(exp : Pointer; b : Pointer; c : L; d : L)
0001a1f2 de fc 00 04 | | ADDA.W #0x4,A7
0001a1f6 d1 af 00 04 | | ADD.L D0,(A7+0x4)
0001a1fa 60 e2 |` | BRA 0x1a1de
0001a1fc 50 8f |P | ADDQ.L #0x8,A7
0001a1fe 60 1c |` | BRA 0x1a21c
0001a200 2f 20 |/ | MOVE.L -(A0),-(A7) ; O_Param: 8 (flag)
0001a202 4e b9 00 01 8c 92 |N | JSR _ExpOutputFlag(exp : Pointer; VAR status : Bool)
0001a208 58 8f |X | ADDQ.L #0x4,A7
0001a20a 60 10 |` | BRA 0x1a21c
0001a20c 2f 20 |/ | MOVE.L -(A0),-(A7) ; O_Param: length - 1
0001a20e 42 a7 |B | CLR.L -(A7)
0001a210 2f 02 |/ | MOVE.L D2,-(A7)
0001a212 4e b9 00 01 8b f4 |N | JSR _ExpOutputParam(exp : Pointer; b : Pointer; c : L; d : L)
0001a218 de fc 00 0c | | ADDA.W #0xc,A7
0001a21c 53 81 |S | SUBQ.L #0x1,D1
0001a21e 6e a8 |n | BGT 0x1a1c8
0001a220 50 8f |P | ADDQ.L #0x8,A7
0001a222 2f 0a |/ | MOVE.L A2,-(A7)
0001a224 4e b9 00 01 8e ec |N | JSR _ExpClose(exp : Pointer)
0001a22a 50 8f |P | ADDQ.L #0x8,A7
0001a22c 4c df 07 0f |L | MOVEM.L (A7)+,D0+D1+D2+D3+A0+A1+A2
0001a230 58 8f |X | ADDQ.L #0x4,A7
0001a232 4e 75 |Nu | RTS
0001a234 49 6e 63 6f 72 72 65 63 |Incorrec| .TXT 'Incorrect configuration version '
0001a254 50 72 6f 67 72 61 6d 20 |Program | .TXT 'Program expects obsolete configuration version'
0001a282 48 41 52 44 57 41 52 45 |HARDWARE| .TXT 'HARDWARE.M200_CONFIG'
0001a296 48 41 52 44 57 41 52 45 |HARDWARE| .TXT 'HARDWARE.M200_CONFIG'
0001a2aa config_strings:
0001a2aa 41 44 41 5f 42 41 53 45 |ADA_BASE| .TXT 'ADA_BASE '
0001a2be 4d 41 43 48 49 4e 45 5f |MACHINE_| .TXT 'MACHINE_INTERFACE '
0001a2d2 4b 45 52 4e 45 4c 5f 44 |KERNEL_D| .TXT 'KERNEL_DEBUGGER_IO '
0001a2e6 4b 45 52 4e 45 4c 5f 44 |KERNEL_D| .TXT 'KERNEL_DEBUGGER '
0001a2fa 4b 45 52 4e 45 4c 20 20 |KERNEL | .TXT 'KERNEL '
0001a30e 45 4e 56 49 52 4f 4e 4d |ENVIRONM| .TXT 'ENVIRONMENT_DEBUGGER'
0001a322 41 42 53 54 52 41 43 54 |ABSTRACT| .TXT 'ABSTRACT_TYPES '
0001a336 4d 49 53 43 45 4c 4c 41 |MISCELLA| .TXT 'MISCELLANEOUS '
0001a34a 4f 53 5f 55 54 49 4c 49 |OS_UTILI| .TXT 'OS_UTILITIES '
0001a35e 45 4c 41 42 4f 52 41 54 |ELABORAT| .TXT 'ELABORATOR_DATABASE '
0001a372 41 44 41 5f 42 41 53 45 |ADA_BASE| .TXT 'ADA_BASE '
0001a386 4d 41 43 48 49 4e 45 5f |MACHINE_| .TXT 'MACHINE_INTERFACE '
0001a39a 4b 45 52 4e 45 4c 5f 44 |KERNEL_D| .TXT 'KERNEL_DEBUGGER_IO '
0001a3ae 4b 45 52 4e 45 4c 5f 44 |KERNEL_D| .TXT 'KERNEL_DEBUGGER '
0001a3c2 4b 45 52 4e 45 4c 20 20 |KERNEL | .TXT 'KERNEL '
0001a3d6 45 4e 56 49 52 4f 4e 4d |ENVIRONM| .TXT 'ENVIRONMENT_DEBUGGER'
0001a3ea 41 42 53 54 52 41 43 54 |ABSTRACT| .TXT 'ABSTRACT_TYPES '
0001a3fe 4d 49 53 43 45 4c 4c 41 |MISCELLA| .TXT 'MISCELLANEOUS '
0001a412 4f 53 5f 55 54 49 4c 49 |OS_UTILI| .TXT 'OS_UTILITIES '
0001a426 45 4c 41 42 4f 52 41 54 |ELABORAT| .TXT 'ELABORATOR_DATABASE '
0001a43a ; --------------------------------------------------------------------------------------
0001a43a ; OMSI PASCAL Function
0001a43a ; <LVAR 0x00c 4(rw)>
0001a43a ; <LVAR 0x008 4(r)>
0001a43a ; --------------------------------------------------------------------------------------
0001a43a 4e 56 ff d8 |NV | LINK.W A6,#0xffd8
0001a43e bf d5 | | CMPA.L (A5),A7
0001a440 62 06 |b | BHI 0x1a448
0001a442 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001a446 4e 76 |Nv | TRAPV
0001a448 de fc 00 1c | | ADDA.W #0x1c,A7
0001a44c 48 e7 83 08 |H | MOVEM.L A4+D7+D6+D0,-(A7)
0001a450 2f 2e 00 08 |/. | MOVE.L (A6+0x8),-(A7)
0001a454 7e 01 |~ | MOVEQ.L #0x01,D7
0001a456 be 97 | | CMP.L (A7),D7
0001a458 6e 1e |n | BGT 0x1a478
0001a45a 28 6e 00 0c |(n | MOVEA.L (A6+0xc),A4
0001a45e 42 80 |B | CLR.L D0
0001a460 10 14 | | MOVE.B (A4),D0
0001a462 3c 00 |< | MOVE.W D0,D6
0001a464 18 ac 00 01 | | MOVE.B (A4+0x1),(A4)
0001a468 4d bc 00 ff |M | CHK.W #0xff,D6
0001a46c 19 46 00 01 | F | MOVE.B D6,(A4+0x1)
0001a470 54 ae 00 0c |T | ADDQ.L #0x2,(A6+0xc)
0001a474 52 87 |R | ADDQ.L #0x1,D7
0001a476 68 de |h | BVC 0x1a456
0001a478 58 4f |XO | ADDQ.L #0x4,A7
0001a47a 4c df 10 c1 |L | MOVEM.L (A7)+,D0+D6+D7+A4
0001a47e 4e 5e |N^ | UNLK A6
0001a480 4e 75 |Nu | RTS
0001a482 ; --------------------------------------------------------------------------------------
0001a482 ; OMSI PASCAL Function
0001a482 ; <LVAR 0x008 4(r)>
0001a482 ; --------------------------------------------------------------------------------------
0001a482 4e 56 ff dc |NV | LINK.W A6,#0xffdc
0001a486 bf d5 | | CMPA.L (A5),A7
0001a488 62 06 |b | BHI 0x1a490
0001a48a 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001a48e 4e 76 |Nv | TRAPV
0001a490 de fc 00 20 | | ADDA.W #0x20,A7
0001a494 48 e7 03 c0 |H | MOVEM.L A1+A0+D7+D6,-(A7)
0001a498 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001a49c 3e 10 |> | MOVE.W (A0),D7
0001a49e 3c 28 00 28 |<( ( | MOVE.W (A0+0x28),D6
0001a4a2 22 48 |"H | MOVEA.L A0,A1
0001a4a4 2f 09 |/ | MOVE.L A1,-(A7)
0001a4a6 48 78 00 c9 |Hx | PEA.L 0xc9
0001a4aa 4e ba ff 8e |N | JSR 0x1a43a
0001a4ae 50 4f |PO | ADDQ.L #0x8,A7
0001a4b0 30 87 |0 | MOVE.W D7,(A0)
0001a4b2 31 46 00 28 |1F ( | MOVE.W D6,(A0+0x28)
0001a4b6 4c df 03 c0 |L | MOVEM.L (A7)+,D6+D7+A0+A1
0001a4ba 4e 5e |N^ | UNLK A6
0001a4bc 4e 75 |Nu | RTS
0001a4be ; --------------------------------------------------------------------------------------
0001a4be ; Read_ConfigFile(name: String; version: Long; dst: Pointer; VAR status: Bool)
0001a4be ; Stack:
0001a4be ; A6+0x14 name : String
0001a4be ; A6+0x10 version : Long
0001a4be ; A6+0xc dst : Pointer
0001a4be ; A6+0x8 VAR status : Bool
0001a4be ; OMSI PASCAL Function
0001a4be ; <LVAR 0x014 4(r)>
0001a4be ; <LVAR 0x010 4(r)>
0001a4be ; <LVAR 0x00c 4(r)>
0001a4be ; <LVAR 0x008 4(r)>
0001a4be ; <LVAR -0x012 4(r)>
0001a4be ; <LVAR -0x016 @ 4(r)>
0001a4be ; <LVAR -0x018 @ 1(r)>
0001a4be ; --------------------------------------------------------------------------------------
0001a4be _Read_ConfigFile(name: String; version: Long; dst: Pointer; VAR status: Bool):
0001a4be 4e 56 ff 76 |NV v | LINK.W A6,#0xff76
0001a4c2 bf d5 | | CMPA.L (A5),A7
0001a4c4 62 06 |b | BHI 0x1a4cc
0001a4c6 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001a4ca 4e 76 |Nv | TRAPV
0001a4cc de fc 00 72 | r | ADDA.W #0x72,A7
0001a4d0 48 e7 ff f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D6+D5+D4+D3+D2+D1+D0,-(A7)
0001a4d4 45 ee ff e8 |E | LEA.L (A6-0x18),A2
0001a4d8 47 ee 00 0c |G | LEA.L (A6+0xc),A3
0001a4dc 49 ee ff ee |I | LEA.L (A6-0x12),A4
0001a4e0 72 01 |r | MOVEQ.L #0x01,D1
0001a4e2 74 03 |t | MOVEQ.L #0x03,D2
0001a4e4 76 14 |v | MOVEQ.L #0x14,D3
0001a4e6 78 02 |x | MOVEQ.L #0x02,D4
0001a4e8 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001a4ec 42 10 |B | CLR.B (A0)
0001a4ee 20 2e 00 10 | . | MOVE.L (A6+0x10),D0
0001a4f2 b0 82 | | CMP.L D2,D0
0001a4f4 67 2e |g. | BEQ 0x1a524
0001a4f6 41 fa fd 8a |A | LEA.L 0x1a282,A0
0001a4fa 70 16 |p | MOVEQ.L #0x16,D0
0001a4fc 3f 20 |? | MOVE.W -(A0),-(A7)
0001a4fe 51 c8 ff fc |Q | DBF D0,0x1a4fc
0001a502 59 4f |YO | SUBQ.L #0x4,A7
0001a504 48 6f 00 04 |Ho | PEA.L (A7+0x4)
0001a508 3f 01 |? | MOVE.W D1,-(A7)
0001a50a 3f 3c 00 2e |?< . | MOVE.W #0x2e,-(A7)
0001a50e 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
0001a514 50 4f |PO | ADDQ.L #0x8,A7
0001a516 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
0001a51c de fc 00 32 | 2 | ADDA.W #0x32,A7
0001a520 60 00 00 ec |` | BRA 0x1a60e
0001a524 20 53 | S | MOVEA.L (A3),A0
0001a526 2f 08 |/ | MOVE.L A0,-(A7)
0001a528 2c 1f |, | MOVE.L (A7)+,D6
0001a52a 42 94 |B | CLR.L (A4)
0001a52c 2f 2e 00 14 |/. | MOVE.L (A6+0x14),-(A7)
0001a530 42 27 |B' | CLR.B -(A7)
0001a532 1f 01 | | MOVE.B D1,-(A7)
0001a534 48 78 00 00 |Hx | PEA.L 0x0
0001a538 48 52 |HR | PEA.L (A2)
0001a53a 48 6e ff ea |Hn | PEA.L (A6-0x16)
0001a53e 4e b9 00 01 38 b4 |N 8 | JSR _OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
0001a544 de c3 | | ADDA.W D3,A7
0001a546 4a 12 |J | TST.B (A2)
0001a548 66 00 00 c4 |f | BNE 0x1a60e
0001a54c 2f 14 |/ | MOVE.L (A4),-(A7)
0001a54e 7a 00 |z | MOVEQ.L #0x00,D5
0001a550 ba 97 | | CMP.L (A7),D5
0001a552 6e 00 00 90 |n | BGT 0x1a5e4
0001a556 ba 94 | | CMP.L (A4),D5
0001a558 66 08 |f | BNE 0x1a562
0001a55a 2e 3c 00 00 00 c9 |.< | MOVE.L #0xc9,D7
0001a560 60 06 |` | BRA 0x1a568
0001a562 2e 3c 00 00 02 00 |.< | MOVE.L #0x200,D7
0001a568 2f 2e ff ea |/. | MOVE.L (A6-0x16),-(A7)
0001a56c 0c 85 00 00 40 00 | @ | CMPI.L #0x00004000,D5
0001a572 63 02 |c | BLS 0x1a576
0001a574 4e 4f |NO | TRAP #15
0001a576 3f 05 |? | MOVE.W D5,-(A7)
0001a578 42 67 |Bg | CLR.W -(A7)
0001a57a 53 87 |S | SUBQ.L #0x1,D7
0001a57c 0c 87 00 00 01 ff | | CMPI.L #0x000001ff,D7
0001a582 63 02 |c | BLS 0x1a586
0001a584 4e 4f |NO | TRAP #15
0001a586 52 87 |R | ADDQ.L #0x1,D7
0001a588 3f 07 |? | MOVE.W D7,-(A7)
0001a58a 1f 04 | | MOVE.B D4,-(A7)
0001a58c 2f 06 |/ | MOVE.L D6,-(A7)
0001a58e 48 52 |HR | PEA.L (A2)
0001a590 4e b9 00 01 3a e6 |N : | JSR _ReadFile(file : File; w : W; x : W; a : W; b: B; c : L; d : L)
0001a596 de c3 | | ADDA.W D3,A7
0001a598 06 86 00 00 04 00 | | ADDI.L #0x00000400,D6
0001a59e 4a 85 |J | TST.L D5
0001a5a0 66 3c |f< | BNE 0x1a5de
0001a5a2 20 53 | S | MOVEA.L (A3),A0
0001a5a4 30 10 |0 | MOVE.W (A0),D0
0001a5a6 b0 42 | B | CMP.W D2,D0
0001a5a8 67 34 |g4 | BEQ 0x1a5de
0001a5aa 9e fc 00 20 | | SUBA.W #0x20,A7
0001a5ae 20 4f | O | MOVEA.L A7,A0
0001a5b0 43 fa fc 82 |C | LEA.L 0x1a234,A1
0001a5b4 70 1e |p | MOVEQ.L #0x1e,D0
0001a5b6 10 d9 | | MOVE.B (A1)+,(A0)+
0001a5b8 51 c8 ff fc |Q | DBF D0,0x1a5b6
0001a5bc 59 4f |YO | SUBQ.L #0x4,A7
0001a5be 48 6f 00 04 |Ho | PEA.L (A7+0x4)
0001a5c2 3f 01 |? | MOVE.W D1,-(A7)
0001a5c4 3f 3c 00 1f |?< | MOVE.W #0x1f,-(A7)
0001a5c8 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
0001a5ce 50 4f |PO | ADDQ.L #0x8,A7
0001a5d0 4e b9 00 01 54 b0 |N T | JSR _WriteConsoleStringCrLf(str : String)
0001a5d6 de fc 00 24 | $ | ADDA.W #0x24,A7
0001a5da 58 4f |XO | ADDQ.L #0x4,A7
0001a5dc 60 18 |` | BRA 0x1a5f6
0001a5de 52 85 |R | ADDQ.L #0x1,D5
0001a5e0 68 00 ff 6e |h n | BVC 0x1a550
0001a5e4 58 4f |XO | ADDQ.L #0x4,A7
0001a5e6 20 53 | S | MOVEA.L (A3),A0
0001a5e8 48 50 |HP | PEA.L (A0)
0001a5ea 4e ba fe 96 |N | JSR 0x1a482
0001a5ee 58 4f |XO | ADDQ.L #0x4,A7
0001a5f0 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001a5f4 10 81 | | MOVE.B D1,(A0)
0001a5f6 42 27 |B' | CLR.B -(A7)
0001a5f8 1f 04 | | MOVE.B D4,-(A7)
0001a5fa 48 78 00 01 |Hx | PEA.L 0x1
0001a5fe 48 52 |HR | PEA.L (A2)
0001a600 48 6e ff ea |Hn | PEA.L (A6-0x16)
0001a604 4e b9 00 01 3c 8a |N < | JSR _CloseFile(a : L; VAR status : B; VAR file : File)
0001a60a de fc 00 10 | | ADDA.W #0x10,A7
0001a60e 4c df 1f ff |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+D5+D6+D7+A0+A1+A2+A3+A4
0001a612 4e 5e |N^ | UNLK A6
0001a614 4e 75 |Nu | RTS
0001a616 ; --------------------------------------------------------------------------------------
0001a616 ; Write_ConfigFile(name: String; dst: Pointer)
0001a616 ; Stack:
0001a616 ; A6+0xc name : String
0001a616 ; A6+0x8 dst : Pointer
0001a616 ; OMSI PASCAL Function
0001a616 ; <LVAR 0x00c 4(r)>
0001a616 ; <LVAR 0x008 4(r)>
0001a616 ; <LVAR -0x012 4(r)>
0001a616 ; <LVAR -0x016 @ 4(r)>
0001a616 ; <LVAR -0x018 @>
0001a616 ; --------------------------------------------------------------------------------------
0001a616 _Write_ConfigFile(name: String; dst: Pointer):
0001a616 4e 56 ff a4 |NV | LINK.W A6,#0xffa4
0001a61a bf d5 | | CMPA.L (A5),A7
0001a61c 62 06 |b | BHI 0x1a624
0001a61e 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001a622 4e 76 |Nv | TRAPV
0001a624 de fc 00 44 | D | ADDA.W #0x44,A7
0001a628 48 e7 c7 f0 |H | MOVEM.L A3+A2+A1+A0+D7+D6+D5+D1+D0,-(A7)
0001a62c 43 ee ff ee |C | LEA.L (A6-0x12),A1
0001a630 45 ee ff e8 |E | LEA.L (A6-0x18),A2
0001a634 47 ee ff ea |G | LEA.L (A6-0x16),A3
0001a638 70 02 |p | MOVEQ.L #0x02,D0
0001a63a 72 10 |r | MOVEQ.L #0x10,D1
0001a63c 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001a640 30 bc 00 03 |0 | MOVE.W #0x3,(A0)
0001a644 48 50 |HP | PEA.L (A0)
0001a646 4e ba fe 3a |N : | JSR 0x1a482
0001a64a 2e 88 |. | MOVE.L A0,(A7)
0001a64c 2c 1f |, | MOVE.L (A7)+,D6
0001a64e 42 91 |B | CLR.L (A1)
0001a650 2f 2e 00 0c |/. | MOVE.L (A6+0xc),-(A7)
0001a654 1f 3c 00 01 | < | MOVE.B #0x01,-(A7)
0001a658 1f 00 | | MOVE.B D0,-(A7)
0001a65a 2f 11 |/ | MOVE.L (A1),-(A7)
0001a65c 52 97 |R | ADDQ.L #0x1,(A7)
0001a65e 48 52 |HR | PEA.L (A2)
0001a660 48 53 |HS | PEA.L (A3)
0001a662 4e b9 00 01 38 b4 |N 8 | JSR _OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
0001a668 de c1 | | ADDA.W D1,A7
0001a66a 2e 91 |. | MOVE.L (A1),(A7)
0001a66c 7a 00 |z | MOVEQ.L #0x00,D5
0001a66e ba 97 | | CMP.L (A7),D5
0001a670 6e 4c |nL | BGT 0x1a6be
0001a672 ba 91 | | CMP.L (A1),D5
0001a674 66 08 |f | BNE 0x1a67e
0001a676 2e 3c 00 00 00 c9 |.< | MOVE.L #0xc9,D7
0001a67c 60 06 |` | BRA 0x1a684
0001a67e 2e 3c 00 00 02 00 |.< | MOVE.L #0x200,D7
0001a684 2f 13 |/ | MOVE.L (A3),-(A7)
0001a686 0c 85 00 00 40 00 | @ | CMPI.L #0x00004000,D5
0001a68c 63 02 |c | BLS 0x1a690
0001a68e 4e 4f |NO | TRAP #15
0001a690 3f 05 |? | MOVE.W D5,-(A7)
0001a692 42 67 |Bg | CLR.W -(A7)
0001a694 53 87 |S | SUBQ.L #0x1,D7
0001a696 0c 87 00 00 01 ff | | CMPI.L #0x000001ff,D7
0001a69c 63 02 |c | BLS 0x1a6a0
0001a69e 4e 4f |NO | TRAP #15
0001a6a0 52 87 |R | ADDQ.L #0x1,D7
0001a6a2 3f 07 |? | MOVE.W D7,-(A7)
0001a6a4 1f 00 | | MOVE.B D0,-(A7)
0001a6a6 2f 06 |/ | MOVE.L D6,-(A7)
0001a6a8 48 52 |HR | PEA.L (A2)
0001a6aa 4e b9 00 01 3b b8 |N ; | JSR _WriteFile(file : File; y : W; x : W; a : W; b: B; c: L; d: L)
0001a6b0 de fc 00 14 | | ADDA.W #0x14,A7
0001a6b4 06 86 00 00 04 00 | | ADDI.L #0x00000400,D6
0001a6ba 52 85 |R | ADDQ.L #0x1,D5
0001a6bc 68 b0 |h | BVC 0x1a66e
0001a6be 54 4f |TO | ADDQ.L #0x2,A7
0001a6c0 42 17 |B | CLR.B (A7)
0001a6c2 1f 00 | | MOVE.B D0,-(A7)
0001a6c4 48 78 00 01 |Hx | PEA.L 0x1
0001a6c8 48 52 |HR | PEA.L (A2)
0001a6ca 48 53 |HS | PEA.L (A3)
0001a6cc 4e b9 00 01 3c 8a |N < | JSR _CloseFile(a : L; VAR status : B; VAR file : File)
0001a6d2 de c1 | | ADDA.W D1,A7
0001a6d4 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001a6d8 48 50 |HP | PEA.L (A0)
0001a6da 4e ba fd a6 |N | JSR 0x1a482
0001a6de 58 4f |XO | ADDQ.L #0x4,A7
0001a6e0 4c df 0f e3 |L | MOVEM.L (A7)+,D0+D1+D5+D6+D7+A0+A1+A2+A3
0001a6e4 4e 5e |N^ | UNLK A6
0001a6e6 4e 75 |Nu | RTS
0001a6e8 ; --------------------------------------------------------------------------------------
0001a6e8 ; Read_HARDWARE.M200_CONFIG(a : Pointer; VAR status : Bool)
0001a6e8 ; Stack:
0001a6e8 ; A6+0xc a : Pointer
0001a6e8 ; A6+0x8 VAR status : Bool
0001a6e8 ; OMSI PASCAL Function
0001a6e8 ; <LVAR 0x00c 4(r)>
0001a6e8 ; <LVAR 0x008 4(r)>
0001a6e8 ; <LVAR -0x006 @ 4(rw)>
0001a6e8 ; <LVAR -0x012 @ 4(r)>
0001a6e8 ; <LVAR -0x014 @ 1(r)>
0001a6e8 ; --------------------------------------------------------------------------------------
0001a6e8 _Read_HARDWARE.M200_CONFIG(a : Pointer; VAR status : Bool):
0001a6e8 4e 56 ff 9c |NV | LINK.W A6,#0xff9c
0001a6ec bf d5 | | CMPA.L (A5),A7
0001a6ee 62 06 |b | BHI 0x1a6f6
0001a6f0 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001a6f4 4e 76 |Nv | TRAPV
0001a6f6 de fc 00 50 | P | ADDA.W #0x50,A7
0001a6fa 48 e7 f3 f8 |H | MOVEM.L A4+A3+A2+A1+A0+D7+D6+D3+D2+D1+D0,-(A7)
0001a6fe 45 ee ff ec |E | LEA.L (A6-0x14),A2
0001a702 47 ee ff fa |G | LEA.L (A6-0x6),A3
0001a706 49 ee ff ee |I | LEA.L (A6-0x12),A4
0001a70a 72 01 |r | MOVEQ.L #0x01,D1
0001a70c 74 14 |t | MOVEQ.L #0x14,D2
0001a70e 76 02 |v | MOVEQ.L #0x02,D3
0001a710 41 fa fb 84 |A | LEA.L 0x1a296,A0
0001a714 70 04 |p | MOVEQ.L #0x04,D0
0001a716 2f 20 |/ | MOVE.L -(A0),-(A7)
0001a718 51 c8 ff fc |Q | DBF D0,0x1a716
0001a71c 59 4f |YO | SUBQ.L #0x4,A7
0001a71e 48 6f 00 04 |Ho | PEA.L (A7+0x4)
0001a722 3f 01 |? | MOVE.W D1,-(A7)
0001a724 3f 02 |? | MOVE.W D2,-(A7)
0001a726 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
0001a72c 50 4f |PO | ADDQ.L #0x8,A7
0001a72e 26 9f |& | MOVE.L (A7)+,(A3)
0001a730 de c2 | | ADDA.W D2,A7
0001a732 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001a736 42 10 |B | CLR.B (A0)
0001a738 22 6e 00 0c |"n | MOVEA.L (A6+0xc),A1
0001a73c 2f 09 |/ | MOVE.L A1,-(A7)
0001a73e 2e 1f |. | MOVE.L (A7)+,D7
0001a740 7c 03 || | MOVEQ.L #0x03,D6
0001a742 2f 13 |/ | MOVE.L (A3),-(A7)
0001a744 42 27 |B' | CLR.B -(A7)
0001a746 1f 01 | | MOVE.B D1,-(A7)
0001a748 48 78 00 00 |Hx | PEA.L 0x0
0001a74c 48 52 |HR | PEA.L (A2)
0001a74e 48 54 |HT | PEA.L (A4)
0001a750 4e b9 00 01 38 b4 |N 8 | JSR _OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
0001a756 de c2 | | ADDA.W D2,A7
0001a758 4a 12 |J | TST.B (A2)
0001a75a 66 48 |fH | BNE 0x1a7a4
0001a75c 2f 14 |/ | MOVE.L (A4),-(A7)
0001a75e 42 67 |Bg | CLR.W -(A7)
0001a760 42 67 |Bg | CLR.W -(A7)
0001a762 53 86 |S | SUBQ.L #0x1,D6
0001a764 0c 86 00 00 01 ff | | CMPI.L #0x000001ff,D6
0001a76a 63 02 |c | BLS 0x1a76e
0001a76c 4e 4f |NO | TRAP #15
0001a76e 52 86 |R | ADDQ.L #0x1,D6
0001a770 3f 06 |? | MOVE.W D6,-(A7)
0001a772 1f 03 | | MOVE.B D3,-(A7)
0001a774 2f 07 |/ | MOVE.L D7,-(A7)
0001a776 48 52 |HR | PEA.L (A2)
0001a778 4e b9 00 01 3a e6 |N : | JSR _ReadFile(file : File; w : W; x : W; a : W; b: B; c : L; d : L)
0001a77e de fc 00 12 | | ADDA.W #0x12,A7
0001a782 42 17 |B | CLR.B (A7)
0001a784 1f 03 | | MOVE.B D3,-(A7)
0001a786 48 78 00 01 |Hx | PEA.L 0x1
0001a78a 48 52 |HR | PEA.L (A2)
0001a78c 48 54 |HT | PEA.L (A4)
0001a78e 4e b9 00 01 3c 8a |N < | JSR _CloseFile(a : L; VAR status : B; VAR file : File)
0001a794 de fc 00 0c | | ADDA.W #0xc,A7
0001a798 2e 87 |. | MOVE.L D7,(A7)
0001a79a 2f 06 |/ | MOVE.L D6,-(A7)
0001a79c 4e ba fc 9c |N | JSR 0x1a43a
0001a7a0 50 4f |PO | ADDQ.L #0x8,A7
0001a7a2 10 81 | | MOVE.B D1,(A0)
0001a7a4 48 53 |HS | PEA.L (A3)
0001a7a6 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
0001a7ac 58 4f |XO | ADDQ.L #0x4,A7
0001a7ae 4c df 1f cf |L | MOVEM.L (A7)+,D0+D1+D2+D3+D6+D7+A0+A1+A2+A3+A4
0001a7b2 4e 5e |N^ | UNLK A6
0001a7b4 4e 75 |Nu | RTS
0001a7b6 ; --------------------------------------------------------------------------------------
0001a7b6 ; Write_HARDWARE.M200_CONFIG(a : Pointer)
0001a7b6 ; Stack:
0001a7b6 ; A6+0x8 a : Pointer
0001a7b6 ; OMSI PASCAL Function
0001a7b6 ; <LVAR 0x008 4(r)>
0001a7b6 ; <LVAR -0x006 @ 4(rw)>
0001a7b6 ; <LVAR -0x012 @ 4(r)>
0001a7b6 ; <LVAR -0x014 @>
0001a7b6 ; --------------------------------------------------------------------------------------
0001a7b6 _Write_HARDWARE.M200_CONFIG(a : Pointer):
0001a7b6 4e 56 ff a0 |NV | LINK.W A6,#0xffa0
0001a7ba bf d5 | | CMPA.L (A5),A7
0001a7bc 62 06 |b | BHI 0x1a7c4
0001a7be 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001a7c2 4e 76 |Nv | TRAPV
0001a7c4 de fc 00 4c | L | ADDA.W #0x4c,A7
0001a7c8 48 e7 f3 f0 |H | MOVEM.L A3+A2+A1+A0+D7+D6+D3+D2+D1+D0,-(A7)
0001a7cc 43 ee ff fa |C | LEA.L (A6-0x6),A1
0001a7d0 45 ee ff ec |E | LEA.L (A6-0x14),A2
0001a7d4 47 ee ff ee |G | LEA.L (A6-0x12),A3
0001a7d8 72 02 |r | MOVEQ.L #0x02,D1
0001a7da 74 01 |t | MOVEQ.L #0x01,D2
0001a7dc 76 14 |v | MOVEQ.L #0x14,D3
0001a7de 41 fa fa ca |A | LEA.L config_strings,A0
0001a7e2 70 04 |p | MOVEQ.L #0x04,D0
0001a7e4 2f 20 |/ | MOVE.L -(A0),-(A7)
0001a7e6 51 c8 ff fc |Q | DBF D0,0x1a7e4
0001a7ea 59 4f |YO | SUBQ.L #0x4,A7
0001a7ec 48 6f 00 04 |Ho | PEA.L (A7+0x4)
0001a7f0 3f 02 |? | MOVE.W D2,-(A7)
0001a7f2 3f 03 |? | MOVE.W D3,-(A7)
0001a7f4 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
0001a7fa 50 4f |PO | ADDQ.L #0x8,A7
0001a7fc 22 9f |" | MOVE.L (A7)+,(A1)
0001a7fe de c3 | | ADDA.W D3,A7
0001a800 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001a804 2f 08 |/ | MOVE.L A0,-(A7)
0001a806 2e 1f |. | MOVE.L (A7)+,D7
0001a808 7c 03 || | MOVEQ.L #0x03,D6
0001a80a 2f 07 |/ | MOVE.L D7,-(A7)
0001a80c 2f 06 |/ | MOVE.L D6,-(A7)
0001a80e 4e ba fc 2a |N * | JSR 0x1a43a
0001a812 58 4f |XO | ADDQ.L #0x4,A7
0001a814 2e 91 |. | MOVE.L (A1),(A7)
0001a816 1f 02 | | MOVE.B D2,-(A7)
0001a818 1f 01 | | MOVE.B D1,-(A7)
0001a81a 48 78 00 01 |Hx | PEA.L 0x1
0001a81e 48 52 |HR | PEA.L (A2)
0001a820 48 53 |HS | PEA.L (A3)
0001a822 4e b9 00 01 38 b4 |N 8 | JSR _OpenFile(name : String; a : W; b: B; c : L; VAR status : B; VAR file : File)
0001a828 de fc 00 10 | | ADDA.W #0x10,A7
0001a82c 2e 93 |. | MOVE.L (A3),(A7)
0001a82e 42 67 |Bg | CLR.W -(A7)
0001a830 42 67 |Bg | CLR.W -(A7)
0001a832 53 86 |S | SUBQ.L #0x1,D6
0001a834 0c 86 00 00 01 ff | | CMPI.L #0x000001ff,D6
0001a83a 63 02 |c | BLS 0x1a83e
0001a83c 4e 4f |NO | TRAP #15
0001a83e 52 86 |R | ADDQ.L #0x1,D6
0001a840 3f 06 |? | MOVE.W D6,-(A7)
0001a842 1f 01 | | MOVE.B D1,-(A7)
0001a844 2f 07 |/ | MOVE.L D7,-(A7)
0001a846 48 52 |HR | PEA.L (A2)
0001a848 4e b9 00 01 3b b8 |N ; | JSR _WriteFile(file : File; y : W; x : W; a : W; b: B; c: L; d: L)
0001a84e de fc 00 12 | | ADDA.W #0x12,A7
0001a852 42 17 |B | CLR.B (A7)
0001a854 1f 01 | | MOVE.B D1,-(A7)
0001a856 48 78 00 01 |Hx | PEA.L 0x1
0001a85a 48 52 |HR | PEA.L (A2)
0001a85c 48 53 |HS | PEA.L (A3)
0001a85e 4e b9 00 01 3c 8a |N < | JSR _CloseFile(a : L; VAR status : B; VAR file : File)
0001a864 de fc 00 0c | | ADDA.W #0xc,A7
0001a868 2e 87 |. | MOVE.L D7,(A7)
0001a86a 2f 06 |/ | MOVE.L D6,-(A7)
0001a86c 4e ba fb cc |N | JSR 0x1a43a
0001a870 50 4f |PO | ADDQ.L #0x8,A7
0001a872 48 51 |HQ | PEA.L (A1)
0001a874 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
0001a87a 58 4f |XO | ADDQ.L #0x4,A7
0001a87c 4c df 0f cf |L | MOVEM.L (A7)+,D0+D1+D2+D3+D6+D7+A0+A1+A2+A3
0001a880 4e 5e |N^ | UNLK A6
0001a882 4e 75 |Nu | RTS
0001a884 ; --------------------------------------------------------------------------------------
0001a884 ; Config_Entry_Name(a : Byte) : String
0001a884 ; Stack:
0001a884 ; A6+0xa VAR RETURN : String
0001a884 ; A6+0x8 a : Byte
0001a884 ; OMSI PASCAL Function
0001a884 ; <LVAR 0x00a 4(w)>
0001a884 ; <LVAR 0x008 1(r)>
0001a884 ; --------------------------------------------------------------------------------------
0001a884 _Config_Entry_Name(a : Byte) : String:
0001a884 4e 56 ff ce |NV | LINK.W A6,#0xffce
0001a888 bf d5 | | CMPA.L (A5),A7
0001a88a 62 06 |b | BHI 0x1a892
0001a88c 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001a890 4e 76 |Nv | TRAPV
0001a892 de fc 00 30 | 0 | ADDA.W #0x30,A7
0001a896 48 e7 c0 80 |H | MOVEM.L A0+D1+D0,-(A7)
0001a89a 72 14 |r | MOVEQ.L #0x14,D1
0001a89c 10 2e 00 08 | . | MOVE.B (A6+0x8),D0
0001a8a0 48 80 |H | EXTB.W D0
0001a8a2 c1 c1 | | MULS.W D1,D0
0001a8a4 41 fa fa cc |A | LEA.L 0x1a372,A0
0001a8a8 41 f0 00 14 |A | LEA.L (A0+D0.W+#0x14),A0
0001a8ac 70 04 |p | MOVEQ.L #0x04,D0
0001a8ae 2f 20 |/ | MOVE.L -(A0),-(A7)
0001a8b0 51 c8 ff fc |Q | DBF D0,0x1a8ae
0001a8b4 59 4f |YO | SUBQ.L #0x4,A7
0001a8b6 48 6f 00 04 |Ho | PEA.L (A7+0x4)
0001a8ba 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
0001a8be 3f 01 |? | MOVE.W D1,-(A7)
0001a8c0 4e b9 00 01 0d a4 |N | JSR _StringLit(Src : Pointer; Offset: W; Len : W) : String
0001a8c6 50 4f |PO | ADDQ.L #0x8,A7
0001a8c8 2d 5f 00 0a |-_ | MOVE.L (A7)+,(A6+0xa)
0001a8cc de c1 | | ADDA.W D1,A7
0001a8ce 4c df 01 03 |L | MOVEM.L (A7)+,D0+D1+A0
0001a8d2 4e 5e |N^ | UNLK A6
0001a8d4 4e 75 |Nu | RTS
0001a8d6 ; --------------------------------------------------------------------------------------
0001a8d6 ; FSCALL_1058c
0001a8d6 ; OMSI PASCAL Function
0001a8d6 ; <LVAR 0x010 @ 4(r)>
0001a8d6 ; <LVAR 0x00c 4(r)>
0001a8d6 ; <LVAR 0x008 4(r)>
0001a8d6 ; --------------------------------------------------------------------------------------
0001a8d6 _FSCALL_1058c:
0001a8d6 4e 56 ff d4 |NV | LINK.W A6,#0xffd4
0001a8da bf d5 | | CMPA.L (A5),A7
0001a8dc 62 06 |b | BHI 0x1a8e4
0001a8de 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001a8e2 4e 76 |Nv | TRAPV
0001a8e4 de fc 00 28 | ( | ADDA.W #0x28,A7
0001a8e8 48 e7 f1 c0 |H | MOVEM.L A1+A0+D7+D3+D2+D1+D0,-(A7)
0001a8ec 74 1e |t | MOVEQ.L #0x1e,D2
0001a8ee 76 1d |v | MOVEQ.L #0x1d,D3
0001a8f0 20 6e 00 10 | n | MOVEA.L (A6+0x10),A0
0001a8f4 2f 08 |/ | MOVE.L A0,-(A7)
0001a8f6 30 10 |0 | MOVE.W (A0),D0
0001a8f8 b0 42 | B | CMP.W D2,D0
0001a8fa 6f 08 |o | BLE 0x1a904
0001a8fc 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001a900 42 10 |B | CLR.B (A0)
0001a902 60 50 |`P | BRA 0x1a954
0001a904 7e 01 |~ | MOVEQ.L #0x01,D7
0001a906 20 57 | W | MOVEA.L (A7),A0
0001a908 30 10 |0 | MOVE.W (A0),D0
0001a90a 48 c0 |H | EXTW.L D0
0001a90c be 80 | | CMP.L D0,D7
0001a90e 6f 14 |o | BLE 0x1a924
0001a910 20 6e 00 0c | n | MOVEA.L (A6+0xc),A0
0001a914 20 07 | | MOVE.L D7,D0
0001a916 53 80 |S | SUBQ.L #0x1,D0
0001a918 b0 83 | | CMP.L D3,D0
0001a91a 63 02 |c | BLS 0x1a91e
0001a91c 4e 4f |NO | TRAP #15
0001a91e 42 30 08 00 |B0 | CLR.B (A0+D0.L)
0001a922 60 22 |`" | BRA 0x1a946
0001a924 22 6e 00 0c |"n | MOVEA.L (A6+0xc),A1
0001a928 20 07 | | MOVE.L D7,D0
0001a92a 53 80 |S | SUBQ.L #0x1,D0
0001a92c b0 83 | | CMP.L D3,D0
0001a92e 63 02 |c | BLS 0x1a932
0001a930 4e 4f |NO | TRAP #15
0001a932 22 07 |" | MOVE.L D7,D1
0001a934 53 81 |S | SUBQ.L #0x1,D1
0001a936 0c 81 00 00 00 7d | } | CMPI.L #0x0000007d,D1
0001a93c 63 02 |c | BLS 0x1a940
0001a93e 4e 4f |NO | TRAP #15
0001a940 13 b0 18 02 08 00 | | MOVE.B (A0+D1.L+#0x2),(A1+D0.L)
0001a946 52 87 |R | ADDQ.L #0x1,D7
0001a948 be 82 | | CMP.L D2,D7
0001a94a 6f ba |o | BLE 0x1a906
0001a94c 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001a950 10 bc 00 01 | | MOVE.B #0x01,(A0)
0001a954 58 4f |XO | ADDQ.L #0x4,A7
0001a956 48 6e 00 10 |Hn | PEA.L (A6+0x10)
0001a95a 4e b9 00 01 0d 36 |N 6 | JSR _FreeString(VAR a : String)
0001a960 58 4f |XO | ADDQ.L #0x4,A7
0001a962 4c df 03 8f |L | MOVEM.L (A7)+,D0+D1+D2+D3+D7+A0+A1
0001a966 4e 5e |N^ | UNLK A6
0001a968 4e 75 |Nu | RTS
0001a96a ; --------------------------------------------------------------------------------------
0001a96a ; ReadConfig(where : Long) : Word
0001a96a ; Stack:
0001a96a ; A6+0xc VAR RETURN : Word
0001a96a ; A6+0x8 where : Long
0001a96a ; OMSI PASCAL Function
0001a96a ; <LVAR 0x00c 2(w)>
0001a96a ; <LVAR 0x008 4(rw)>
0001a96a ; <LVAR -0x004 @ 2(r)>
0001a96a ; --------------------------------------------------------------------------------------
0001a96a _ReadConfig(where : Long) : Word:
0001a96a 4e 56 ff e6 |NV | LINK.W A6,#0xffe6
0001a96e bf d5 | | CMPA.L (A5),A7
0001a970 62 06 |b | BHI 0x1a978
0001a972 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001a976 4e 76 |Nv | TRAPV
0001a978 de fc 00 16 | | ADDA.W #0x16,A7
0001a97c 48 e7 00 c0 |H | MOVEM.L A1+A0,-(A7)
0001a980 43 ee 00 08 |C | LEA.L (A6+0x8),A1
0001a984 02 91 00 00 01 ff | | ANDI.L #0x000001ff,(A1)
0001a98a 06 91 80 00 7e 00 | ~ | ADDI.L #0x80007e00,(A1)
0001a990 2f 11 |/ | MOVE.L (A1),-(A7)
0001a992 41 ee ff fc |A | LEA.L (A6-0x4),A0
0001a996 2f 08 |/ | MOVE.L A0,-(A7)
0001a998 52 97 |R | ADDQ.L #0x1,(A7)
0001a99a 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
0001a99e 4e b9 00 01 02 38 |N 8 | JSR KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
0001a9a4 de fc 00 0a | | ADDA.W #0xa,A7
0001a9a8 3d 6e ff fc 00 0c |=n | MOVE.W (A6-0x4),(A6+0xc)
0001a9ae 02 6e 00 ff 00 0c | n | ANDI.W #0x00ff,(A6+0xc)
0001a9b4 4c df 03 00 |L | MOVEM.L (A7)+,A0+A1
0001a9b8 4e 5e |N^ | UNLK A6
0001a9ba 4e 75 |Nu | RTS
0001a9bc ; --------------------------------------------------------------------------------------
0001a9bc ; WriteConfig(what: Word; where : Long)
0001a9bc ; Stack:
0001a9bc ; A6+0xc what : Word
0001a9bc ; A6+0x8 where : Long
0001a9bc ; OMSI PASCAL Function
0001a9bc ; <LVAR 0x00a 4(rw)>
0001a9bc ; <LVAR 0x008 2(r)>
0001a9bc ; <LVAR -0x002 @ 2(w)>
0001a9bc ; --------------------------------------------------------------------------------------
0001a9bc _WriteConfig(what: Word; where : Long):
0001a9bc 4e 56 ff e8 |NV | LINK.W A6,#0xffe8
0001a9c0 bf d5 | | CMPA.L (A5),A7
0001a9c2 62 06 |b | BHI 0x1a9ca
0001a9c4 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001a9c8 4e 76 |Nv | TRAPV
0001a9ca de fc 00 16 | | ADDA.W #0x16,A7
0001a9ce 48 e7 00 c0 |H | MOVEM.L A1+A0,-(A7)
0001a9d2 43 ee 00 0a |C | LEA.L (A6+0xa),A1
0001a9d6 3d 6e 00 08 ff fe |=n | MOVE.W (A6+0x8),(A6-0x2)
0001a9dc 02 91 00 00 01 ff | | ANDI.L #0x000001ff,(A1)
0001a9e2 06 91 80 00 7e 00 | ~ | ADDI.L #0x80007e00,(A1)
0001a9e8 41 ee ff fe |A | LEA.L (A6-0x2),A0
0001a9ec 2f 08 |/ | MOVE.L A0,-(A7)
0001a9ee 52 97 |R | ADDQ.L #0x1,(A7)
0001a9f0 2f 11 |/ | MOVE.L (A1),-(A7)
0001a9f2 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
0001a9f6 4e b9 00 01 02 38 |N 8 | JSR KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
0001a9fc de fc 00 0a | | ADDA.W #0xa,A7
0001aa00 48 78 03 d0 |Hx | PEA.L 0x3d0
0001aa04 4e b9 00 01 02 24 |N $ | JSR KC12_Sleep(dur: Long)
0001aa0a 58 4f |XO | ADDQ.L #0x4,A7
0001aa0c 4c df 03 00 |L | MOVEM.L (A7)+,A0+A1
0001aa10 4e 5e |N^ | UNLK A6
0001aa12 4e 75 |Nu | RTS
0001aa14 ; --------------------------------------------------------------------------------------
0001aa14 ; ReadClusterNo(VAR a : Long)
0001aa14 ; Stack:
0001aa14 ; A6+0x8 VAR a : Long
0001aa14 ; OMSI PASCAL Function
0001aa14 ; <LVAR 0x008 4(r)>
0001aa14 ; --------------------------------------------------------------------------------------
0001aa14 _ReadClusterNo(VAR a : Long):
0001aa14 4e 56 ff de |NV | LINK.W A6,#0xffde
0001aa18 bf d5 | | CMPA.L (A5),A7
0001aa1a 62 06 |b | BHI 0x1aa22
0001aa1c 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001aa20 4e 76 |Nv | TRAPV
0001aa22 de fc 00 1e | | ADDA.W #0x1e,A7
0001aa26 48 e7 c1 80 |H | MOVEM.L A0+D7+D1+D0,-(A7)
0001aa2a 72 03 |r | MOVEQ.L #0x03,D1
0001aa2c 7e 00 |~ | MOVEQ.L #0x00,D7
0001aa2e 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001aa32 be 81 | | CMP.L D1,D7
0001aa34 63 02 |c | BLS 0x1aa38
0001aa36 4e 4f |NO | TRAP #15
0001aa38 55 4f |UO | SUBQ.L #0x2,A7
0001aa3a 48 78 00 84 |Hx | PEA.L 0x84
0001aa3e df 97 | | ADD.L D7,(A7)
0001aa40 4e ba ff 28 |N ( | JSR _ReadConfig(where : Long) : Word
0001aa44 58 4f |XO | ADDQ.L #0x4,A7
0001aa46 30 1f |0 | MOVE.W (A7)+,D0
0001aa48 41 bc 00 ff |A | CHK.W #0xff,D0
0001aa4c 11 80 78 00 | x | MOVE.B D0,(A0+D7.L)
0001aa50 52 87 |R | ADDQ.L #0x1,D7
0001aa52 be 81 | | CMP.L D1,D7
0001aa54 6f d8 |o | BLE 0x1aa2e
0001aa56 4c df 01 83 |L | MOVEM.L (A7)+,D0+D1+D7+A0
0001aa5a 4e 5e |N^ | UNLK A6
0001aa5c 4e 75 |Nu | RTS
0001aa5e ; --------------------------------------------------------------------------------------
0001aa5e ; OMSI PASCAL Function
0001aa5e ; <LVAR 0x008 4(r)>
0001aa5e ; --------------------------------------------------------------------------------------
0001aa5e _Write_fc0c(VAR a: Word):
0001aa5e 4e 56 ff ee |NV | LINK.W A6,#0xffee
0001aa62 bf d5 | | CMPA.L (A5),A7
0001aa64 62 06 |b | BHI 0x1aa6c
0001aa66 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001aa6a 4e 76 |Nv | TRAPV
0001aa6c de fc 00 12 | | ADDA.W #0x12,A7
0001aa70 48 e7 00 80 |H | MOVEM.L A0,-(A7)
0001aa74 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001aa78 2f 08 |/ | MOVE.L A0,-(A7)
0001aa7a 41 f9 00 00 fc 0c |A | LEA.L 0xfc0c,A0
0001aa80 2f 08 |/ | MOVE.L A0,-(A7)
0001aa82 3f 3c 00 02 |?< | MOVE.W #0x2,-(A7)
0001aa86 4e b9 00 01 02 38 |N 8 | JSR KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
0001aa8c de fc 00 0a | | ADDA.W #0xa,A7
0001aa90 4c df 01 00 |L | MOVEM.L (A7)+,A0
0001aa94 4e 5e |N^ | UNLK A6
0001aa96 4e 75 |Nu | RTS
0001aa98 ; --------------------------------------------------------------------------------------
0001aa98 ; Read_fc0c() : Word
0001aa98 ; Stack:
0001aa98 ; A6+0x8 VAR RETURN : Word
0001aa98 ; OMSI PASCAL Function
0001aa98 ; <LVAR 0x008 4(r)>
0001aa98 ; --------------------------------------------------------------------------------------
0001aa98 _Read_fc0c() : Word:
0001aa98 4e 56 ff ee |NV | LINK.W A6,#0xffee
0001aa9c bf d5 | | CMPA.L (A5),A7
0001aa9e 62 06 |b | BHI 0x1aaa6
0001aaa0 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001aaa4 4e 76 |Nv | TRAPV
0001aaa6 de fc 00 12 | | ADDA.W #0x12,A7
0001aaaa 48 e7 00 80 |H | MOVEM.L A0,-(A7)
0001aaae 41 f9 00 00 fc 0c |A | LEA.L 0xfc0c,A0
0001aab4 2f 08 |/ | MOVE.L A0,-(A7)
0001aab6 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001aaba 2f 08 |/ | MOVE.L A0,-(A7)
0001aabc 3f 3c 00 02 |?< | MOVE.W #0x2,-(A7)
0001aac0 4e b9 00 01 02 38 |N 8 | JSR KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
0001aac6 de fc 00 0a | | ADDA.W #0xa,A7
0001aaca 4c df 01 00 |L | MOVEM.L (A7)+,A0
0001aace 4e 5e |N^ | UNLK A6
0001aad0 4e 75 |Nu | RTS
0001aad2 ; --------------------------------------------------------------------------------------
0001aad2 ; Read_fc00() : Byte
0001aad2 ; Stack:
0001aad2 ; A6+0x8 VAR RETURN : Byte
0001aad2 ; OMSI PASCAL Function
0001aad2 ; <LVAR 0x008 4(r)>
0001aad2 ; --------------------------------------------------------------------------------------
0001aad2 _Read_fc00() : Byte:
0001aad2 4e 56 ff ee |NV | LINK.W A6,#0xffee
0001aad6 bf d5 | | CMPA.L (A5),A7
0001aad8 62 06 |b | BHI 0x1aae0
0001aada 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001aade 4e 76 |Nv | TRAPV
0001aae0 de fc 00 12 | | ADDA.W #0x12,A7
0001aae4 48 e7 00 80 |H | MOVEM.L A0,-(A7)
0001aae8 41 f9 00 00 fc 00 |A | LEA.L 0xfc00,A0
0001aaee 2f 08 |/ | MOVE.L A0,-(A7)
0001aaf0 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001aaf4 2f 08 |/ | MOVE.L A0,-(A7)
0001aaf6 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
0001aafa 4e b9 00 01 02 38 |N 8 | JSR KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
0001ab00 de fc 00 0a | | ADDA.W #0xa,A7
0001ab04 4c df 01 00 |L | MOVEM.L (A7)+,A0
0001ab08 4e 5e |N^ | UNLK A6
0001ab0a 4e 75 |Nu | RTS
0001ab0c ; --------------------------------------------------------------------------------------
0001ab0c ; FifoInit(void)
0001ab0c ; Stack:
0001ab0c ; OMSI PASCAL Function
0001ab0c ; <LVAR -0x004 @ 4(r)>
0001ab0c ; --------------------------------------------------------------------------------------
0001ab0c _FifoInit(void):
0001ab0c 4e 56 ff e6 |NV | LINK.W A6,#0xffe6
0001ab10 bf d5 | | CMPA.L (A5),A7
0001ab12 62 06 |b | BHI 0x1ab1a
0001ab14 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001ab18 4e 76 |Nv | TRAPV
0001ab1a de fc 00 16 | | ADDA.W #0x16,A7
0001ab1e 48 e7 00 80 |H | MOVEM.L A0,-(A7)
0001ab22 42 ae ff fc |B | CLR.L (A6-0x4)
0001ab26 41 ee ff fc |A | LEA.L (A6-0x4),A0
0001ab2a 2f 08 |/ | MOVE.L A0,-(A7)
0001ab2c 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
0001ab30 48 78 f5 00 |Hx | PEA.L 0xfffff500
0001ab34 3f 3c 00 05 |?< | MOVE.W #0x5,-(A7)
0001ab38 3f 3c 00 04 |?< | MOVE.W #0x4,-(A7)
0001ab3c 4e b9 00 01 02 3a |N : | JSR KC1d_BusCopy(src : Pointer; sfc : Word; dst : Pointer; dfc : Word; len : Word
0001ab42 de fc 00 0e | | ADDA.W #0xe,A7
0001ab46 4c df 01 00 |L | MOVEM.L (A7)+,A0
0001ab4a 4e 5e |N^ | UNLK A6
0001ab4c 4e 75 |Nu | RTS
0001ab4e ; --------------------------------------------------------------------------------------
0001ab4e ; R1000_Reset_L(void)
0001ab4e ; Stack:
0001ab4e ; OMSI PASCAL Function
0001ab4e ; <LVAR -0x006 @ 4(rw)>
0001ab4e ; <LVAR -0x007 1(w)>
0001ab4e ; <LVAR -0x008 @>
0001ab4e ; --------------------------------------------------------------------------------------
0001ab4e _R1000_Reset_L(void):
0001ab4e 4e 56 ff ca |NV | LINK.W A6,#0xffca
0001ab52 bf d5 | | CMPA.L (A5),A7
0001ab54 62 06 |b | BHI 0x1ab5c
0001ab56 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001ab5a 4e 76 |Nv | TRAPV
0001ab5c de fc 00 2e | . | ADDA.W #0x2e,A7
0001ab60 48 e7 f8 c0 |H | MOVEM.L A1+A0+D4+D3+D2+D1+D0,-(A7)
0001ab64 43 ee ff fa |C | LEA.L (A6-0x6),A1
0001ab68 72 05 |r | MOVEQ.L #0x05,D1
0001ab6a 74 01 |t | MOVEQ.L #0x01,D2
0001ab6c 76 04 |v | MOVEQ.L #0x04,D3
0001ab6e 78 0e |x | MOVEQ.L #0x0e,D4
0001ab70 48 78 f8 00 |Hx | PEA.L 0xfffff800
0001ab74 3f 01 |? | MOVE.W D1,-(A7)
0001ab76 20 49 | I | MOVEA.L A1,A0
0001ab78 2f 08 |/ | MOVE.L A0,-(A7)
0001ab7a 3f 02 |? | MOVE.W D2,-(A7)
0001ab7c 3f 03 |? | MOVE.W D3,-(A7)
0001ab7e 4e b9 00 01 02 3a |N : | JSR KC1d_BusCopy(src : Pointer; sfc : Word; dst : Pointer; dfc : Word; len : Word
0001ab84 de c4 | | ADDA.W D4,A7
0001ab86 20 11 | | MOVE.L (A1),D0
0001ab88 e0 88 | | LSR.L #0x8,D0
0001ab8a 02 80 00 00 00 fe | | ANDI.L #0x000000fe,D0
0001ab90 22 80 |" | MOVE.L D0,(A1)
0001ab92 20 49 | I | MOVEA.L A1,A0
0001ab94 2f 08 |/ | MOVE.L A0,-(A7)
0001ab96 3f 02 |? | MOVE.W D2,-(A7)
0001ab98 48 78 fe 00 |Hx | PEA.L 0xfffffe00
0001ab9c 3f 01 |? | MOVE.W D1,-(A7)
0001ab9e 3f 03 |? | MOVE.W D3,-(A7)
0001aba0 4e b9 00 01 02 3a |N : | JSR KC1d_BusCopy(src : Pointer; sfc : Word; dst : Pointer; dfc : Word; len : Word
0001aba6 de c4 | | ADDA.W D4,A7
0001aba8 48 6e ff f8 |Hn | PEA.L (A6-0x8)
0001abac 4e ba fe ea |N | JSR _Read_fc0c() : Word
0001abb0 58 4f |XO | ADDQ.L #0x4,A7
0001abb2 02 2e 00 f7 ff f9 | . | ANDI.B #0xf7,(A6-0x7)
0001abb8 48 6e ff f8 |Hn | PEA.L (A6-0x8)
0001abbc 4e ba fe a0 |N | JSR _Write_fc0c(VAR a: Word)
0001abc0 58 4f |XO | ADDQ.L #0x4,A7
0001abc2 4c df 03 1f |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+A0+A1
0001abc6 4e 5e |N^ | UNLK A6
0001abc8 4e 75 |Nu | RTS
0001abca ; --------------------------------------------------------------------------------------
0001abca ; R1000_Reset_H(void)
0001abca ; Stack:
0001abca ; OMSI PASCAL Function
0001abca ; <LVAR -0x006 @ 4(rw)>
0001abca ; <LVAR -0x007 1(w)>
0001abca ; <LVAR -0x008 @>
0001abca ; --------------------------------------------------------------------------------------
0001abca _R1000_Reset_H(void):
0001abca 4e 56 ff ca |NV | LINK.W A6,#0xffca
0001abce bf d5 | | CMPA.L (A5),A7
0001abd0 62 06 |b | BHI 0x1abd8
0001abd2 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001abd6 4e 76 |Nv | TRAPV
0001abd8 de fc 00 2e | . | ADDA.W #0x2e,A7
0001abdc 48 e7 f8 c0 |H | MOVEM.L A1+A0+D4+D3+D2+D1+D0,-(A7)
0001abe0 43 ee ff fa |C | LEA.L (A6-0x6),A1
0001abe4 72 01 |r | MOVEQ.L #0x01,D1
0001abe6 74 04 |t | MOVEQ.L #0x04,D2
0001abe8 76 05 |v | MOVEQ.L #0x05,D3
0001abea 78 0e |x | MOVEQ.L #0x0e,D4
0001abec 48 78 f8 00 |Hx | PEA.L 0xfffff800
0001abf0 3f 03 |? | MOVE.W D3,-(A7)
0001abf2 20 49 | I | MOVEA.L A1,A0
0001abf4 2f 08 |/ | MOVE.L A0,-(A7)
0001abf6 3f 01 |? | MOVE.W D1,-(A7)
0001abf8 3f 02 |? | MOVE.W D2,-(A7)
0001abfa 4e b9 00 01 02 3a |N : | JSR KC1d_BusCopy(src : Pointer; sfc : Word; dst : Pointer; dfc : Word; len : Word
0001ac00 de c4 | | ADDA.W D4,A7
0001ac02 20 11 | | MOVE.L (A1),D0
0001ac04 e0 88 | | LSR.L #0x8,D0
0001ac06 80 81 | | OR.L D1,D0
0001ac08 22 80 |" | MOVE.L D0,(A1)
0001ac0a 20 49 | I | MOVEA.L A1,A0
0001ac0c 2f 08 |/ | MOVE.L A0,-(A7)
0001ac0e 3f 01 |? | MOVE.W D1,-(A7)
0001ac10 48 78 fe 00 |Hx | PEA.L 0xfffffe00
0001ac14 3f 03 |? | MOVE.W D3,-(A7)
0001ac16 3f 02 |? | MOVE.W D2,-(A7)
0001ac18 4e b9 00 01 02 3a |N : | JSR KC1d_BusCopy(src : Pointer; sfc : Word; dst : Pointer; dfc : Word; len : Word
0001ac1e de c4 | | ADDA.W D4,A7
0001ac20 48 6e ff f8 |Hn | PEA.L (A6-0x8)
0001ac24 4e ba fe 72 |N r | JSR _Read_fc0c() : Word
0001ac28 58 4f |XO | ADDQ.L #0x4,A7
0001ac2a 85 2e ff f9 | . | OR.B D2,(A6-0x7)
0001ac2e 00 2e 00 08 ff f9 | . | ORI.B #0x08,(A6-0x7)
0001ac34 48 6e ff f8 |Hn | PEA.L (A6-0x8)
0001ac38 4e ba fe 24 |N $ | JSR _Write_fc0c(VAR a: Word)
0001ac3c 58 4f |XO | ADDQ.L #0x4,A7
0001ac3e 4c df 03 1f |L | MOVEM.L (A7)+,D0+D1+D2+D3+D4+A0+A1
0001ac42 4e 5e |N^ | UNLK A6
0001ac44 4e 75 |Nu | RTS
0001ac46 ; --------------------------------------------------------------------------------------
0001ac46 ; Or_fc0c_80(void)
0001ac46 ; Stack:
0001ac46 ; OMSI PASCAL Function
0001ac46 ; <LVAR -0x003 1(w)>
0001ac46 ; <LVAR -0x004 @>
0001ac46 ; --------------------------------------------------------------------------------------
0001ac46 _Or_fc0c_80(void):
0001ac46 4e 56 ff f4 |NV | LINK.W A6,#0xfff4
0001ac4a bf d5 | | CMPA.L (A5),A7
0001ac4c 62 06 |b | BHI 0x1ac54
0001ac4e 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001ac52 4e 76 |Nv | TRAPV
0001ac54 de fc 00 08 | | ADDA.W #0x8,A7
0001ac58 48 6e ff fc |Hn | PEA.L (A6-0x4)
0001ac5c 4e ba fe 3a |N : | JSR _Read_fc0c() : Word
0001ac60 58 4f |XO | ADDQ.L #0x4,A7
0001ac62 00 2e 00 80 ff fd | . | ORI.B #0x80,(A6-0x3)
0001ac68 48 6e ff fc |Hn | PEA.L (A6-0x4)
0001ac6c 4e ba fd f0 |N | JSR _Write_fc0c(VAR a: Word)
0001ac70 58 4f |XO | ADDQ.L #0x4,A7
0001ac72 4e 5e |N^ | UNLK A6
0001ac74 4e 75 |Nu | RTS
0001ac76 ; --------------------------------------------------------------------------------------
0001ac76 ; And_fc0c_7f(void)
0001ac76 ; Stack:
0001ac76 ; OMSI PASCAL Function
0001ac76 ; <LVAR -0x003 1(w)>
0001ac76 ; <LVAR -0x004 @>
0001ac76 ; --------------------------------------------------------------------------------------
0001ac76 _And_fc0c_7f(void):
0001ac76 4e 56 ff f4 |NV | LINK.W A6,#0xfff4
0001ac7a bf d5 | | CMPA.L (A5),A7
0001ac7c 62 06 |b | BHI 0x1ac84
0001ac7e 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001ac82 4e 76 |Nv | TRAPV
0001ac84 de fc 00 08 | | ADDA.W #0x8,A7
0001ac88 48 6e ff fc |Hn | PEA.L (A6-0x4)
0001ac8c 4e ba fe 0a |N | JSR _Read_fc0c() : Word
0001ac90 58 4f |XO | ADDQ.L #0x4,A7
0001ac92 02 2e 00 7f ff fd | . | ANDI.B #0x7f,(A6-0x3)
0001ac98 48 6e ff fc |Hn | PEA.L (A6-0x4)
0001ac9c 4e ba fd c0 |N | JSR _Write_fc0c(VAR a: Word)
0001aca0 58 4f |XO | ADDQ.L #0x4,A7
0001aca2 4e 5e |N^ | UNLK A6
0001aca4 4e 75 |Nu | RTS
0001aca6 ; --------------------------------------------------------------------------------------
0001aca6 ; ReadKeySwitch() : Bool
0001aca6 ; Stack:
0001aca6 ; A6+0x8 VAR RETURN : Bool
0001aca6 ; OMSI PASCAL Function
0001aca6 ; <LVAR 0x008 1(rw)>
0001aca6 ; <LVAR -0x004 @ 4(r)>
0001aca6 ; --------------------------------------------------------------------------------------
0001aca6 _ReadKeySwitch() : Bool:
0001aca6 4e 56 ff e2 |NV | LINK.W A6,#0xffe2
0001acaa bf d5 | | CMPA.L (A5),A7
0001acac 62 06 |b | BHI 0x1acb4
0001acae 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001acb2 4e 76 |Nv | TRAPV
0001acb4 de fc 00 1a | | ADDA.W #0x1a,A7
0001acb8 48 e7 80 80 |H | MOVEM.L A0+D0,-(A7)
0001acbc 48 78 f8 00 |Hx | PEA.L 0xfffff800
0001acc0 3f 3c 00 05 |?< | MOVE.W #0x5,-(A7)
0001acc4 41 ee ff fc |A | LEA.L (A6-0x4),A0
0001acc8 2f 08 |/ | MOVE.L A0,-(A7)
0001acca 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
0001acce 3f 3c 00 04 |?< | MOVE.W #0x4,-(A7)
0001acd2 4e b9 00 01 02 3a |N : | JSR KC1d_BusCopy(src : Pointer; sfc : Word; dst : Pointer; dfc : Word; len : Word
0001acd8 de fc 00 0e | | ADDA.W #0xe,A7
0001acdc 42 2e 00 08 |B. | CLR.B (A6+0x8)
0001ace0 20 2e ff fc | . | MOVE.L (A6-0x4),D0
0001ace4 02 80 00 00 00 08 | | ANDI.L #0x00000008,D0
0001acea 67 04 |g | BEQ 0x1acf0
0001acec 52 2e 00 08 |R. | ADDQ.B #0x1,(A6+0x8)
0001acf0 4c df 01 01 |L | MOVEM.L (A7)+,D0+A0
0001acf4 4e 5e |N^ | UNLK A6
0001acf6 4e 75 |Nu | RTS
0001acf8 ; --------------------------------------------------------------------------------------
0001acf8 ; Update_fc0c(new : Byte)
0001acf8 ; Stack:
0001acf8 ; A6+0x8 new : Byte
0001acf8 ; OMSI PASCAL Function
0001acf8 ; <LVAR 0x008 1(r)>
0001acf8 ; <LVAR -0x002 @ 1(w)>
0001acf8 ; --------------------------------------------------------------------------------------
0001acf8 _Update_fc0c(new : Byte):
0001acf8 4e 56 ff ea |NV | LINK.W A6,#0xffea
0001acfc bf d5 | | CMPA.L (A5),A7
0001acfe 62 06 |b | BHI 0x1ad06
0001ad00 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001ad04 4e 76 |Nv | TRAPV
0001ad06 de fc 00 14 | | ADDA.W #0x14,A7
0001ad0a 48 e7 80 c0 |H | MOVEM.L A1+A0+D0,-(A7)
0001ad0e 41 ee ff fe |A | LEA.L (A6-0x2),A0
0001ad12 43 ee 00 08 |C | LEA.L (A6+0x8),A1
0001ad16 48 50 |HP | PEA.L (A0)
0001ad18 4e ba fd 7e |N ~ | JSR _Read_fc0c() : Word
0001ad1c 58 4f |XO | ADDQ.L #0x4,A7
0001ad1e 10 11 | | MOVE.B (A1),D0
0001ad20 02 10 00 f7 | | ANDI.B #0xf7,(A0)
0001ad24 02 00 00 08 | | ANDI.B #0x08,D0
0001ad28 81 10 | | OR.B D0,(A0)
0001ad2a 10 11 | | MOVE.B (A1),D0
0001ad2c 02 10 00 ef | | ANDI.B #0xef,(A0)
0001ad30 02 00 00 10 | | ANDI.B #0x10,D0
0001ad34 81 10 | | OR.B D0,(A0)
0001ad36 10 11 | | MOVE.B (A1),D0
0001ad38 02 10 00 df | | ANDI.B #0xdf,(A0)
0001ad3c 02 00 00 20 | | ANDI.B #0x20,D0
0001ad40 81 10 | | OR.B D0,(A0)
0001ad42 10 11 | | MOVE.B (A1),D0
0001ad44 02 10 00 bf | | ANDI.B #0xbf,(A0)
0001ad48 02 00 00 40 | @ | ANDI.B #0x40,D0
0001ad4c 81 10 | | OR.B D0,(A0)
0001ad4e 10 11 | | MOVE.B (A1),D0
0001ad50 02 10 00 7f | | ANDI.B #0x7f,(A0)
0001ad54 02 00 00 80 | | ANDI.B #0x80,D0
0001ad58 81 10 | | OR.B D0,(A0)
0001ad5a 48 50 |HP | PEA.L (A0)
0001ad5c 4e ba fd 00 |N | JSR _Write_fc0c(VAR a: Word)
0001ad60 58 4f |XO | ADDQ.L #0x4,A7
0001ad62 4c df 03 01 |L | MOVEM.L (A7)+,D0+A0+A1
0001ad66 4e 5e |N^ | UNLK A6
0001ad68 4e 75 |Nu | RTS
0001ad6a ; --------------------------------------------------------------------------------------
0001ad6a ; EmergencyStop(boot_reason_code : Byte)
0001ad6a ; Stack:
0001ad6a ; A6+0x8 boot_reason_code : Byte
0001ad6a ; OMSI PASCAL Function
0001ad6a ; <LVAR 0x008 @>
0001ad6a ; --------------------------------------------------------------------------------------
0001ad6a _EmergencyStop(boot_reason_code : Byte):
0001ad6a 4e 56 ff ec |NV | LINK.W A6,#0xffec
0001ad6e bf d5 | | CMPA.L (A5),A7
0001ad70 62 06 |b | BHI 0x1ad78
0001ad72 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001ad76 4e 76 |Nv | TRAPV
0001ad78 de fc 00 12 | | ADDA.W #0x12,A7
0001ad7c 48 e7 00 80 |H | MOVEM.L A0,-(A7)
0001ad80 41 ee 00 08 |A | LEA.L (A6+0x8),A0
0001ad84 2f 08 |/ | MOVE.L A0,-(A7)
0001ad86 41 f9 00 00 fc 01 |A | LEA.L 0xfc01,A0
0001ad8c 2f 08 |/ | MOVE.L A0,-(A7)
0001ad8e 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
0001ad92 4e b9 00 01 02 38 |N 8 | JSR KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
0001ad98 de fc 00 0a | | ADDA.W #0xa,A7
0001ad9c 4e b9 00 01 02 40 |N @ | JSR KC20_Estop(void)
0001ada2 4c df 01 00 |L | MOVEM.L (A7)+,A0
0001ada6 4e 5e |N^ | UNLK A6
0001ada8 4e 75 |Nu | RTS
0001adaa ; --------------------------------------------------------------------------------------
0001adaa ; Get_BootReasonCode() : Byte
0001adaa ; Stack:
0001adaa ; A6+0x8 VAR RETURN : Byte
0001adaa ; OMSI PASCAL Function
0001adaa ; <LVAR 0x008 4(r)>
0001adaa ; --------------------------------------------------------------------------------------
0001adaa _Get_BootReasonCode() : Byte:
0001adaa 4e 56 ff ee |NV | LINK.W A6,#0xffee
0001adae bf d5 | | CMPA.L (A5),A7
0001adb0 62 06 |b | BHI 0x1adb8
0001adb2 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001adb6 4e 76 |Nv | TRAPV
0001adb8 de fc 00 12 | | ADDA.W #0x12,A7
0001adbc 48 e7 00 80 |H | MOVEM.L A0,-(A7)
0001adc0 41 f9 00 00 fc 01 |A | LEA.L 0xfc01,A0
0001adc6 2f 08 |/ | MOVE.L A0,-(A7)
0001adc8 20 6e 00 08 | n | MOVEA.L (A6+0x8),A0
0001adcc 2f 08 |/ | MOVE.L A0,-(A7)
0001adce 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
0001add2 4e b9 00 01 02 38 |N 8 | JSR KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
0001add8 de fc 00 0a | | ADDA.W #0xa,A7
0001addc 4c df 01 00 |L | MOVEM.L (A7)+,A0
0001ade0 4e 5e |N^ | UNLK A6
0001ade2 4e 75 |Nu | RTS
0001ade4 ; --------------------------------------------------------------------------------------
0001ade4 ; Set_fc04_to_01(void)
0001ade4 ; Stack:
0001ade4 ; OMSI PASCAL Function
0001ade4 ; <LVAR -0x004 @ 1(w)>
0001ade4 ; --------------------------------------------------------------------------------------
0001ade4 _Set_fc04_to_01(void):
0001ade4 4e 56 ff e6 |NV | LINK.W A6,#0xffe6
0001ade8 bf d5 | | CMPA.L (A5),A7
0001adea 62 06 |b | BHI 0x1adf2
0001adec 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001adf0 4e 76 |Nv | TRAPV
0001adf2 de fc 00 16 | | ADDA.W #0x16,A7
0001adf6 48 e7 80 80 |H | MOVEM.L A0+D0,-(A7)
0001adfa 70 01 |p | MOVEQ.L #0x01,D0
0001adfc 1d 40 ff fc | @ | MOVE.B D0,(A6-0x4)
0001ae00 41 ee ff fc |A | LEA.L (A6-0x4),A0
0001ae04 2f 08 |/ | MOVE.L A0,-(A7)
0001ae06 41 f9 00 00 fc 04 |A | LEA.L 0xfc04,A0
0001ae0c 2f 08 |/ | MOVE.L A0,-(A7)
0001ae0e 3f 00 |? | MOVE.W D0,-(A7)
0001ae10 4e b9 00 01 02 38 |N 8 | JSR KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
0001ae16 de fc 00 0a | | ADDA.W #0xa,A7
0001ae1a 4c df 01 01 |L | MOVEM.L (A7)+,D0+A0
0001ae1e 4e 5e |N^ | UNLK A6
0001ae20 4e 75 |Nu | RTS
0001ae22 ; --------------------------------------------------------------------------------------
0001ae22 ; Get_fc05() : Byte
0001ae22 ; Stack:
0001ae22 ; A6+0x8 VAR RETURN : Byte
0001ae22 ; OMSI PASCAL Function
0001ae22 ; <LVAR 0x008 1(w)>
0001ae22 ; <LVAR -0x004 @ 1(r)>
0001ae22 ; --------------------------------------------------------------------------------------
0001ae22 _Get_fc05() : Byte:
0001ae22 4e 56 ff ea |NV | LINK.W A6,#0xffea
0001ae26 bf d5 | | CMPA.L (A5),A7
0001ae28 62 06 |b | BHI 0x1ae30
0001ae2a 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001ae2e 4e 76 |Nv | TRAPV
0001ae30 de fc 00 12 | | ADDA.W #0x12,A7
0001ae34 48 e7 00 80 |H | MOVEM.L A0,-(A7)
0001ae38 41 f9 00 00 fc 05 |A | LEA.L 0xfc05,A0
0001ae3e 2f 08 |/ | MOVE.L A0,-(A7)
0001ae40 41 ee ff fc |A | LEA.L (A6-0x4),A0
0001ae44 2f 08 |/ | MOVE.L A0,-(A7)
0001ae46 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
0001ae4a 4e b9 00 01 02 38 |N 8 | JSR KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
0001ae50 de fc 00 0a | | ADDA.W #0xa,A7
0001ae54 1d 6e ff fc 00 08 | n | MOVE.B (A6-0x4),(A6+0x8)
0001ae5a 4c df 01 00 |L | MOVEM.L (A7)+,A0
0001ae5e 4e 5e |N^ | UNLK A6
0001ae60 4e 75 |Nu | RTS
0001ae62 ; --------------------------------------------------------------------------------------
0001ae62 ; Get_fc02() : Word
0001ae62 ; Stack:
0001ae62 ; A6+0x8 VAR RETURN : Word
0001ae62 ; OMSI PASCAL Function
0001ae62 ; <LVAR 0x008 2(w)>
0001ae62 ; <LVAR -0x004 @ 2(r)>
0001ae62 ; --------------------------------------------------------------------------------------
0001ae62 _Get_fc02() : Word:
0001ae62 4e 56 ff ea |NV | LINK.W A6,#0xffea
0001ae66 bf d5 | | CMPA.L (A5),A7
0001ae68 62 06 |b | BHI 0x1ae70
0001ae6a 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001ae6e 4e 76 |Nv | TRAPV
0001ae70 de fc 00 12 | | ADDA.W #0x12,A7
0001ae74 48 e7 00 80 |H | MOVEM.L A0,-(A7)
0001ae78 41 f9 00 00 fc 02 |A | LEA.L 0xfc02,A0
0001ae7e 2f 08 |/ | MOVE.L A0,-(A7)
0001ae80 41 ee ff fc |A | LEA.L (A6-0x4),A0
0001ae84 2f 08 |/ | MOVE.L A0,-(A7)
0001ae86 3f 3c 00 02 |?< | MOVE.W #0x2,-(A7)
0001ae8a 4e b9 00 01 02 38 |N 8 | JSR KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
0001ae90 de fc 00 0a | | ADDA.W #0xa,A7
0001ae94 3d 6e ff fc 00 08 |=n | MOVE.W (A6-0x4),(A6+0x8)
0001ae9a 4c df 01 00 |L | MOVEM.L (A7)+,A0
0001ae9e 4e 5e |N^ | UNLK A6
0001aea0 4e 75 |Nu | RTS
0001aea2 ; --------------------------------------------------------------------------------------
0001aea2 ; Is_machine_type_one() : Bool
0001aea2 ; Stack:
0001aea2 ; A6+0x8 VAR RETURN : Bool
0001aea2 ; OMSI PASCAL Function
0001aea2 ; <LVAR 0x008 1(rw)>
0001aea2 ; <LVAR -0x004 @ 1(r)>
0001aea2 ; --------------------------------------------------------------------------------------
0001aea2 _Is_machine_type_one() : Bool:
0001aea2 4e 56 ff e2 |NV | LINK.W A6,#0xffe2
0001aea6 bf d5 | | CMPA.L (A5),A7
0001aea8 62 06 |b | BHI 0x1aeb0
0001aeaa 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001aeae 4e 76 |Nv | TRAPV
0001aeb0 de fc 00 1a | | ADDA.W #0x1a,A7
0001aeb4 48 e7 c0 80 |H | MOVEM.L A0+D1+D0,-(A7)
0001aeb8 72 01 |r | MOVEQ.L #0x01,D1
0001aeba 41 f9 00 00 fc 07 |A | LEA.L 0xfc07,A0
0001aec0 2f 08 |/ | MOVE.L A0,-(A7)
0001aec2 41 ee ff fc |A | LEA.L (A6-0x4),A0
0001aec6 2f 08 |/ | MOVE.L A0,-(A7)
0001aec8 3f 01 |? | MOVE.W D1,-(A7)
0001aeca 4e b9 00 01 02 38 |N 8 | JSR KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
0001aed0 de fc 00 0a | | ADDA.W #0xa,A7
0001aed4 42 2e 00 08 |B. | CLR.B (A6+0x8)
0001aed8 10 2e ff fc | . | MOVE.B (A6-0x4),D0
0001aedc b0 01 | | CMP.B D1,D0
0001aede 66 04 |f | BNE 0x1aee4
0001aee0 52 2e 00 08 |R. | ADDQ.B #0x1,(A6+0x8)
0001aee4 4c df 01 03 |L | MOVEM.L (A7)+,D0+D1+A0
0001aee8 4e 5e |N^ | UNLK A6
0001aeea 4e 75 |Nu | RTS
0001aeec ; --------------------------------------------------------------------------------------
0001aeec ; Is_machine_type_two() : Bool
0001aeec ; Stack:
0001aeec ; A6+0x8 VAR RETURN : Bool
0001aeec ; OMSI PASCAL Function
0001aeec ; <LVAR 0x008 1(rw)>
0001aeec ; <LVAR -0x004 @ 1(r)>
0001aeec ; --------------------------------------------------------------------------------------
0001aeec _Is_machine_type_two() : Bool:
0001aeec 4e 56 ff e6 |NV | LINK.W A6,#0xffe6
0001aef0 bf d5 | | CMPA.L (A5),A7
0001aef2 62 06 |b | BHI 0x1aefa
0001aef4 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001aef8 4e 76 |Nv | TRAPV
0001aefa de fc 00 16 | | ADDA.W #0x16,A7
0001aefe 48 e7 80 80 |H | MOVEM.L A0+D0,-(A7)
0001af02 41 f9 00 00 fc 07 |A | LEA.L 0xfc07,A0
0001af08 2f 08 |/ | MOVE.L A0,-(A7)
0001af0a 41 ee ff fc |A | LEA.L (A6-0x4),A0
0001af0e 2f 08 |/ | MOVE.L A0,-(A7)
0001af10 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
0001af14 4e b9 00 01 02 38 |N 8 | JSR KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
0001af1a de fc 00 0a | | ADDA.W #0xa,A7
0001af1e 42 2e 00 08 |B. | CLR.B (A6+0x8)
0001af22 10 2e ff fc | . | MOVE.B (A6-0x4),D0
0001af26 0c 00 00 02 | | CMPI.B #0x02,D0
0001af2a 66 04 |f | BNE 0x1af30
0001af2c 52 2e 00 08 |R. | ADDQ.B #0x1,(A6+0x8)
0001af30 4c df 01 01 |L | MOVEM.L (A7)+,D0+A0
0001af34 4e 5e |N^ | UNLK A6
0001af36 4e 75 |Nu | RTS
0001af38 ; --------------------------------------------------------------------------------------
0001af38 ; Is_machine_type_three() : Bool
0001af38 ; Stack:
0001af38 ; A6+0x8 VAR RETURN : Bool
0001af38 ; OMSI PASCAL Function
0001af38 ; <LVAR 0x008 1(rw)>
0001af38 ; <LVAR -0x004 @ 1(r)>
0001af38 ; --------------------------------------------------------------------------------------
0001af38 _Is_machine_type_three() : Bool:
0001af38 4e 56 ff e6 |NV | LINK.W A6,#0xffe6
0001af3c bf d5 | | CMPA.L (A5),A7
0001af3e 62 06 |b | BHI 0x1af46
0001af40 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001af44 4e 76 |Nv | TRAPV
0001af46 de fc 00 16 | | ADDA.W #0x16,A7
0001af4a 48 e7 80 80 |H | MOVEM.L A0+D0,-(A7)
0001af4e 41 f9 00 00 fc 07 |A | LEA.L 0xfc07,A0
0001af54 2f 08 |/ | MOVE.L A0,-(A7)
0001af56 41 ee ff fc |A | LEA.L (A6-0x4),A0
0001af5a 2f 08 |/ | MOVE.L A0,-(A7)
0001af5c 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
0001af60 4e b9 00 01 02 38 |N 8 | JSR KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
0001af66 de fc 00 0a | | ADDA.W #0xa,A7
0001af6a 42 2e 00 08 |B. | CLR.B (A6+0x8)
0001af6e 10 2e ff fc | . | MOVE.B (A6-0x4),D0
0001af72 0c 00 00 03 | | CMPI.B #0x03,D0
0001af76 66 04 |f | BNE 0x1af7c
0001af78 52 2e 00 08 |R. | ADDQ.B #0x1,(A6+0x8)
0001af7c 4c df 01 01 |L | MOVEM.L (A7)+,D0+A0
0001af80 4e 5e |N^ | UNLK A6
0001af82 4e 75 |Nu | RTS
0001af84 ; --------------------------------------------------------------------------------------
0001af84 ; Is_machine_type_four() : Bool
0001af84 ; Stack:
0001af84 ; A6+0x8 VAR RETURN : Bool
0001af84 ; OMSI PASCAL Function
0001af84 ; <LVAR 0x008 1(rw)>
0001af84 ; <LVAR -0x004 @ 1(r)>
0001af84 ; --------------------------------------------------------------------------------------
0001af84 _Is_machine_type_four() : Bool:
0001af84 4e 56 ff e6 |NV | LINK.W A6,#0xffe6
0001af88 bf d5 | | CMPA.L (A5),A7
0001af8a 62 06 |b | BHI 0x1af92
0001af8c 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001af90 4e 76 |Nv | TRAPV
0001af92 de fc 00 16 | | ADDA.W #0x16,A7
0001af96 48 e7 80 80 |H | MOVEM.L A0+D0,-(A7)
0001af9a 41 f9 00 00 fc 07 |A | LEA.L 0xfc07,A0
0001afa0 2f 08 |/ | MOVE.L A0,-(A7)
0001afa2 41 ee ff fc |A | LEA.L (A6-0x4),A0
0001afa6 2f 08 |/ | MOVE.L A0,-(A7)
0001afa8 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
0001afac 4e b9 00 01 02 38 |N 8 | JSR KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
0001afb2 de fc 00 0a | | ADDA.W #0xa,A7
0001afb6 42 2e 00 08 |B. | CLR.B (A6+0x8)
0001afba 10 2e ff fc | . | MOVE.B (A6-0x4),D0
0001afbe 0c 00 00 04 | | CMPI.B #0x04,D0
0001afc2 66 04 |f | BNE 0x1afc8
0001afc4 52 2e 00 08 |R. | ADDQ.B #0x1,(A6+0x8)
0001afc8 4c df 01 01 |L | MOVEM.L (A7)+,D0+A0
0001afcc 4e 5e |N^ | UNLK A6
0001afce 4e 75 |Nu | RTS
0001afd0 ; --------------------------------------------------------------------------------------
0001afd0 ; Is_machine_type_one_or_three() : Bool
0001afd0 ; Stack:
0001afd0 ; A6+0x8 VAR RETURN : Bool
0001afd0 ; OMSI PASCAL Function
0001afd0 ; <LVAR 0x008 1(rw)>
0001afd0 ; <LVAR -0x004 @ 1(r)>
0001afd0 ; --------------------------------------------------------------------------------------
0001afd0 _Is_machine_type_one_or_three() : Bool:
0001afd0 4e 56 ff e2 |NV | LINK.W A6,#0xffe2
0001afd4 bf d5 | | CMPA.L (A5),A7
0001afd6 62 06 |b | BHI 0x1afde
0001afd8 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001afdc 4e 76 |Nv | TRAPV
0001afde de fc 00 1a | | ADDA.W #0x1a,A7
0001afe2 48 e7 c0 80 |H | MOVEM.L A0+D1+D0,-(A7)
0001afe6 72 01 |r | MOVEQ.L #0x01,D1
0001afe8 41 f9 00 00 fc 07 |A | LEA.L 0xfc07,A0
0001afee 2f 08 |/ | MOVE.L A0,-(A7)
0001aff0 41 ee ff fc |A | LEA.L (A6-0x4),A0
0001aff4 2f 08 |/ | MOVE.L A0,-(A7)
0001aff6 3f 01 |? | MOVE.W D1,-(A7)
0001aff8 4e b9 00 01 02 38 |N 8 | JSR KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
0001affe de fc 00 0a | | ADDA.W #0xa,A7
0001b002 42 2e 00 08 |B. | CLR.B (A6+0x8)
0001b006 10 2e ff fc | . | MOVE.B (A6-0x4),D0
0001b00a b0 01 | | CMP.B D1,D0
0001b00c 67 06 |g | BEQ 0x1b014
0001b00e 0c 00 00 03 | | CMPI.B #0x03,D0
0001b012 66 04 |f | BNE 0x1b018
0001b014 52 2e 00 08 |R. | ADDQ.B #0x1,(A6+0x8)
0001b018 4c df 01 03 |L | MOVEM.L (A7)+,D0+D1+A0
0001b01c 4e 5e |N^ | UNLK A6
0001b01e 4e 75 |Nu | RTS
0001b020 ; --------------------------------------------------------------------------------------
0001b020 ; Is_machine_type_two_or_four() : Bool
0001b020 ; Stack:
0001b020 ; A6+0x8 VAR RETURN : Bool
0001b020 ; OMSI PASCAL Function
0001b020 ; <LVAR 0x008 1(rw)>
0001b020 ; <LVAR -0x004 @ 1(r)>
0001b020 ; --------------------------------------------------------------------------------------
0001b020 _Is_machine_type_two_or_four() : Bool:
0001b020 4e 56 ff e6 |NV | LINK.W A6,#0xffe6
0001b024 bf d5 | | CMPA.L (A5),A7
0001b026 62 06 |b | BHI 0x1b02e
0001b028 44 fc 00 02 |D | MOVE.W #0x2,CCR
0001b02c 4e 76 |Nv | TRAPV
0001b02e de fc 00 16 | | ADDA.W #0x16,A7
0001b032 48 e7 80 80 |H | MOVEM.L A0+D0,-(A7)
0001b036 41 f9 00 00 fc 07 |A | LEA.L 0xfc07,A0
0001b03c 2f 08 |/ | MOVE.L A0,-(A7)
0001b03e 41 ee ff fc |A | LEA.L (A6-0x4),A0
0001b042 2f 08 |/ | MOVE.L A0,-(A7)
0001b044 3f 3c 00 01 |?< | MOVE.W #0x1,-(A7)
0001b048 4e b9 00 01 02 38 |N 8 | JSR KC1c_ProtCopy(src : Pointer; dst : Pointer; len : Word)
0001b04e de fc 00 0a | | ADDA.W #0xa,A7
0001b052 42 2e 00 08 |B. | CLR.B (A6+0x8)
0001b056 10 2e ff fc | . | MOVE.B (A6-0x4),D0
0001b05a 0c 00 00 02 | | CMPI.B #0x02,D0
0001b05e 67 06 |g | BEQ 0x1b066
0001b060 0c 00 00 04 | | CMPI.B #0x04,D0
0001b064 66 04 |f | BNE 0x1b06a
0001b066 52 2e 00 08 |R. | ADDQ.B #0x1,(A6+0x8)
0001b06a 4c df 01 01 |L | MOVEM.L (A7)+,D0+A0
0001b06e 4e 5e |N^ | UNLK A6
0001b070 4e 75 |Nu | RTS