*---------------------------------------------------------* * Disassembled with The Flaming Bird Disassembler * * (c) Phoenix corp. 1992,93 - All rights reserved * *---------------------------------------------------------* mx %00 rel lst off *----------------------- use 4/Desk.Macs use 4/Event.Macs use 4/Int.Macs use 4/Load.Macs use 4/Locator.Macs use 4/Mem.Macs use 4/Menu.Macs use 4/Misc.Macs use 4/QD.Macs use 4/QDAux.Macs use 4/Resource.Macs use 4/SANE.Macs use 4/Util.Macs use 4/Window.Macs use DISASM.E use DISASM.X *----------------------- BRL L020D45 L020003 DW $0000 L020005 DW $0000 L020007 DW $0000 L020009 DB $00 L02000A DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L020059 DB $00 DB $01 L02005B DB $00 L02005C DB $00 L02005D DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L02015B DB $01 DB $10 L02015D DB $00 DB $00 DB $02 DB $10 DB $00 DB $00 DB $03 DB $10 DB $00 DB $00 DB $04 DB $10 DB $00 DB $00 DB $05 DB $10 DB $00 DB $00 DB $06 DB $10 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L020177 DB $00 L020178 DB $00 L020179 DB $00 DB $00 L02017B DB $00 L02017C DB $00 L02017D DB $00 DB $00 L02017F DB $00 L020180 DB $00 L020181 DB $00 DB $00 L020183 DB $00 L020184 DB $00 L020185 DB $00 DB $00 L020187 DB $00 L020188 DB $00 L020189 DB $00 DB $00 L02018B DB $00 L02018C DB $00 L02018D DB $00 DB $00 L02018F STRL '9:Expand:' L02019A STRL '9:Configs:' *L0201A6 STR "The Flaming Bird Disassembler Written by Ferox - (c) 1994 Phoenix corporation" L0201A6 STR "The Flaming Bird Disassembler Written by Ferox - (c) 1994-2023 Phoenix Corp" L0201F7 STR 87">ERR: " L0201FF DA L020239 ; 0 Not enough memory DA L02024C ; 1 Syntax DA L020254 ; 2 Duplicate label DA L020265 ; 3 Parameter out of range DA L02027D ; 4 Invalid label DA L02028C ; 5 Label not found DA L02029D ; 6 Label expected DA L0202AD ; 7 No such constant DA L0202BF ; 8 File/Segment longer than 64K DA L0202DD ; 9 File should be in OMF 1 or 2 DA L0202FB ; 10 No file in memory DA L02030E ; 11 Not an OMF load file DA L020324 ; 12 Invalid segment number DA L02033C ; 13 Invalid file type DA L02034F ; 14 No resource fork DA L020361 ; 15 Specified resource not found DA L02037F ; 16 Not a code resource DA L020394 ; 17 File is empty DA L0203A3 ; 18 Not a TFBD expansion file DA L0203BE ; 19 This expansion can't be runned with this version of TFBD DA L0203F8 ; 20 This expansion can't process that file DA L020420 ; 21 Not a configuration file DA L02043A ; 22 Not enough bank zero memory DA L020457 ; 23 Structure too complex DA L02046E ; 24 Resource fork is empty DA L020486 ; 25 No string in memory DA L02049B ; 26 Needs System v6.0 or higher DA L0204B8 ; 27 Misformatted OMF segment DA L0204D2 ; 28 Not a valid LNK file L020239 STR "Not enough memory " L02024C STR "Syntax " L020254 STR "Duplicate label " L020265 STR "Parameter out of range " L02027D STR "Invalid label " L02028C STR "Label not found " L02029D STR "Label expected " L0202AD STR "No such constant " L0202BF STR "File/Segment longer than 64K " L0202DD STR "File should be in OMF 1 or 2 " L0202FB STR "No file in memory " L02030E STR "Not an OMF load file " L020324 STR "Invalid segment number " L02033C STR "Invalid file type " L02034F STR "No resource fork " L020361 STR "Specified resource not found " L02037F STR "Not a code resource " L020394 STR "File is empty " L0203A3 STR "Not a TFBD expansion file " L0203BE STR "This expansion can't be runned with this version of TFBD " L0203F8 STR "This expansion can't process that file " L020420 STR "Not a configuration file " L02043A STR "Not enough bank zero memory " L020457 STR "Structure too complex " L02046E STR "Resource fork is empty " L020486 STR "No string in memory " L02049B STR "Needs System v6.0 or higher " L0204B8 STR "Misformatted OMF segment " L0204D2 STR "Not a valid LNK file " L0204E8 STR "GS/OS MLI $" L0204F4 STR "Loader error $" L020503 ASC "LOA" ; 0 ASC 'D' ASC "TCL" ; 1 ASC 'R' ASC "TLOA" ; 2 ASC 'D' ASC "TSAV" ; 3 ASC 'E' ASC "GENLA" ; 4 ASC 'B' ASC "LIS" ; 5 ASC 'T' ASC "RE" ; 6 ASC 'M' ASC '?' ; 7 ASC "INFO" ; 8 ASC 'S' ASC "QUI" ; 9 ASC 'T' ASC "BY" ; 10 ASC 'E' ASC "PF" ; 11 ASC 'X' ASC "OF" ; 12 ASC 'F' ASC "SE" ; 13 ASC 'G' ASC "SLOA" ; 14 ASC 'D' ASC '\' ; 15 ASC "PH" ; 16 ASC 'L' ASC "RPH" ; 17 ASC 'L' ASC "PHL" ; 18 ASC '2' ASC "MATC" ; 19 ASC 'H' ASC "SR" ; 20 ASC 'C' ASC "CO" ; 21 ASC 'M' ASC "TAB" ; 22 ASC 'S' ASC "CA" ; 23 ASC 'T' ASC "RO" ; 24 ASC 'M' ASC "STOO" ; 25 ASC 'L' ASC "MLAB" ; 26 ASC 'S' ASC "MRE" ; 27 ASC 'L' ASC "REL" ; 28 ASC '8' ASC "RREL" ; 29 ASC '8' ASC "RE" ; 30 ASC 'L' ASC "T" ; 31 ASC 'C' ASC "TRO" ; 32 ASC 'N' ASC "TROF" ; 33 ASC 'F' ASC "BU" ; 34 ASC 'G' ASC "RLOA" ; 35 ASC 'D' ASC '$' ; 36 ASC "SEDI" ; 37 ASC 'T' ASC "PO" ; 38 ASC 'P' ASC "DS" ; 39 ASC 'K' ASC "SSAV" ; 40 ASC 'E' ASC "HIS" ; 41 ASC 'T' ASC '-' ; 42 ASC "CF" ; 43 ASC 'G' ASC "C" ; 44 ASC 'S' ASC "C" ; 45 ASC '1' ASC '[' ; 46 ASC "M" ; 47 ASC 'D' ASC "TS" ; 48 ASC 'T' ASC "FIN" ; 49 ASC 'D' ASC "SCA" ; 50 ASC 'N' * AV 202010 - Two new commands asc "CHO" ; 51 asc 'N' asc "CHOF" ; 52 asc 'F' ASC 00 *--- The commands L0205B7 ADRL L020503 ; COMMANDS... ADRL L040326 ; DB... ADRL L040358 ; LAB... ADRL L04036A ; ORG... ADRL $00000000 *--- The routines L0205CB ADRL L021AC8 ; COMMANDS... ADRL L021758 ; DB... ADRL L021F0A ; LAB... ADRL L0220D2 ; ORG... *--- The flags L0205DB ADRL L021B94 ; COMMANDS... ADRL L02179C ; DB... ADRL L021F22 ; LAB... ADRL L0220EA ; ORG... L0205EB BRL L0205F8 DW $7771 STR 'InitAll' L0205F8 PHP REP #$30 JSR L02076E _TLStartUp PHA _MMStartUp PLA STA $FE STA L0209B1 ORA #$0100 STA $FC JSR L020736 JSR L02067C BCC L02066B JSR L02084C JSR L02095E JSR L0208B1 JSR L0207C2 JSR L02077C JSL L041D74 BCS L02066F JSR L020694 JSR L0206CA JSR L02071D PEA ^L020678 PEA L020678 PEA $200F ; GetSysPrefs JSL GSOS2 LDA L02067A PHA ORA #$8000 STA L02067A PEA ^L020678 PEA L020678 PEA $200C ; SetSysPrefs JSL GSOS2 PLA STA L02067A JSR L026659 PLP RTS L02066B LDA #$001A DB $CF L02066F LDA #$0000 JSR L020AB8 BRL L020A10 L020678 DW $0001 ; Parms for SetSysPrefs L02067A DW $0000 ; preferences L02067C JSL GSOS DW $202A ; GetVersion ADRL L020690 LDA L020692 AND #$7FFF CMP #$0400 RTS L020690 DW $0001 ; Parms for GetVersion L020692 DW $0000 ; version number L020694 LDA L020007 BEQ L0206C9 LDX #$0000 L02069C LDA L02015B,X TAY ORA L02015D,X BEQ L0206C9 PHX PHA PHA PEA $8022 LDA L02015D,X PHA PHY _LoadResource PLA PLY PLX BCS L0206C3 STA L020177,X TYA STA L020179,X L0206C3 INX INX INX INX BRA L02069C L0206C9 RTS L0206CA LDA L020178 BEQ L0206DE LDX L020177 LDY L020179 JSR L023EF2 STX L020719 STY L020719+2 L0206DE LDA L02017C BEQ L0206F2 LDX L02017B LDY L02017D JSR L023EF2 STX L020711 STY L020711+2 L0206F2 PEA ^L02070D PEA L02070D PEA $2009 ; SetPrefix JSL GSOS2 PEA ^L020715 PEA L020715 PEA $2009 ; SetPrefix JSL GSOS2 RTS L02070D DW $0002 ; Parms for SetPrefix DW $0002 ; prefix num L020711 ADRL L02018F ; prefix ptr L020715 DW $0002 ; Parms for SetPrefix DW $0003 ; prefix num L020719 ADRL L02019A ; prefix ptr L02071D LDA L020180 BEQ L02072D LDX L02017F LDY L020181 JSR L023EF2 BRA L020731 L02072D LDX #$0000 TXY L020731 JSL L044B1B RTS L020736 PHP SEP #$30 JSL L030006 JSL L030314 ADR L0201A6 JSR L020A56 LDA #$16 JSL L03006F JSR L020A56 LDX #$00 LDY #$02 JSL L0300E2 JSL L030035 DB $02 DB $15 DB $00 DB $4F LDX #$24 STX $44 LDX #$2A STX $45 LDX #$3A STX $46 PLP RTS MX %00 L02076E PHP REP #$30 LDX #$00FE L020774 STZ $00,X DEX DEX BPL L020774 PLP RTS L02077C PHP REP #$30 LDA L0207BD BEQ L020793 LDA L0207BE PHA LDA L0207BC PHA _DisposeHandle L020793 PHA PHA PEA $0000 PEA $0FA0 PEI $FC PEA $0008 PHA PHA _NewHandle PLX PLY BCS L0207B9 STX L0207BC STY L0207BE STZ L0207C0 PLP CLC RTS L0207B9 PLP SEC RTS L0207BC DB $00 L0207BD DB $00 L0207BE DB $00 DB $00 L0207C0 DB $00 DB $00 L0207C2 JSR L020836 PHA PHA PEA $0000 PEA $0100 LDA $FE PHA PEA $C015 PEA $0000 PEA $0000 _NewHandle PLX PLY BCC L0207E5 RTS L0207E5 STY L02080D+2 STX L02080D PHB PHY PLB LDA |$0000,X PLB PLB PHA PEA $0800 PEA $0000 PEA $027F PEA $0000 PEA $00C7 PEI $FE _EMStartUp RTS L02080D ADRL $00000000 L020811 PHA _EMStatus PLA BEQ L020835 _EMShutDown LDA L02080D+2 PHA LDA L02080D PHA _DisposeHandle JSR L020836 L020835 RTS L020836 PHP SEP #$30 LDX #$10 L02083B LDAL $E0C019 BPL L02083B L020841 LDAL $E0C019 BMI L020841 DEX BNE L02083B PLP RTS MX %00 L02084C PEA ^L020898 PEA L020898 PEA $2027 ; GetName JSL GSOS2 LDX L021658 L02085C LDA L021658,X STA L021656+4,X DEX BNE L02085C LDA #$39 DEC STA L021656+4 INC L021658 INC L021658 PEI $FE _ResourceStartUp PHA PEA $0000 PEA $0000 PEA $0000 PEA ^L021658 PEA L021658 _OpenResourceFile PLA BCS L020897 STA L020007 L020897 RTS L020898 DW $0001 ; Parms for GetName ADRL L021656 ; buffer ptr L02089E LDA L020007 PHA _CloseResourceFile _ResourceShutDown RTS L0208B1 PHA _SANEStatus PLA BNE L0208F2 PHA PHA PEA $0000 PEA $0100 LDA $FE PHA PEA $C015 PEA $0000 PEA $0000 _NewHandle PLX PLY BCC L0208DC RTS L0208DC STY L0208F5 STX L0208F3 PHB PHY PLB LDA |$0000,X PLB PLB PHA _SANEStartUp L0208F2 RTS L0208F3 DB $00 DB $00 L0208F5 DB $00 DB $00 L0208F7 PHA _SANEStatus PLA BEQ L020918 _SANEShutDown LDA L0208F5 PHA LDA L0208F3 PHA _DisposeHandle L020918 RTS L020919 STR 'Phoenix~QuitCDA~' L02092A ADR L0209AD DB $00 L02092E DB $00 DB $00 L020930 DB $00 DB $00 L020932 STZ L020930 PEA $C300 PEA $8001 PEA ^L020919 PEA L020919 PEA $0000 PEA $0000 PEA ^L02092E PEA L02092E _SendRequest BCS L02095C LDA L020930 BEQ L02095C RTS L02095C SEC RTS L02095E LDA L020930 BNE L020987 JSR L020932 BCS L020987 PEA $C303 PEA $8001 PEA ^L020919 PEA L020919 PEA ^L02092A PEA L02092A PEA ^L02092E PEA L02092E _SendRequest L020987 RTS L020988 JSR L020932 BCS L0209AC PEA $C304 PEA $8001 PEA ^L020919 PEA L020919 PEA ^L02092A PEA L02092A PEA ^L02092E PEA L02092E _SendRequest L0209AC RTS L0209AD DB $00 DB $00 DB $00 DB $00 L0209B1 DW $0000 DW $A55A REP #$30 PHK PLB PHD LDA L020005 TCD JSR L020988 SEP #$20 LDAL $E0C025 REP #$20 BMI L0209EF LDA $82 BEQ L0209EF JSL L044EAB LDA L02018C BEQ L0209E5 LDX L02018B LDY L02018D JSR L023EF2 PHY PHX BRA L0209EB L0209E5 PEA ^L020A05 PEA L020A05 L0209EB JSL L042166 L0209EF LDA L0267A9 BEQ L0209F7 JSR L0267B9 L0209F7 PLD LDA $02,S STA $08,S LDA $01,S STA $07,S PLA PLA PLA CLC RTL L020A05 STRL '0:TMP.BAK' L020A10 REP #$30 JSL L050537 JSL L041DDC JSL L040FF1 JSR L020988 JSR L020811 JSR L0208F7 JSR L02089E LDA $FC PHA _DisposeAll LDA $FE PHA _MMShutDown JSL GSOS DW $200C ; SetSysPrefs ADRL L020678 JSL GSOS DW $2029 ; Quit ADRL L020A54 BRK $00 L020A54 DW $0000 ; Parms for Quit L020A56 PHP SEP #$30 LDX #$50 L020A5B PHX LDA #$53 JSL L03022D PLX DEX BNE L020A5B PLP RTS L020A68 PHP REP #$30 JSL L0300EE PHX PHY L020A71 REP #$30 LDA #$0017 JSL L03006F LDA #$FFFF STA L020F6A PEA ^L020F6C PEA L020F6C PEA ^L020009 PEA L020009 PEA $00BA JSL L03050A SEP #$30 LDX L020009 BEQ L020A71 L020A9A LDA L020009,X CMP #$A0 BNE L020AA6 DEX BNE L020A9A BRA L020A71 L020AA6 REP #$30 PLY PLX JSL L0300E2 PLP RTS PHB PHK PLB JSR L020AB8 PLB RTL L020AB8 PHP REP #$20 SEP #$10 AND #$007F ASL TAX LDAL L0201FF,X STAL L020AE8 SEP #$20 JSL L0300EE PHX PHY LDX #$00 LDY #$17 JSL L0300E2 JSR L020CED JSL L030314 ADR L0201F7 JSL L030314 L020AE8 ADR L0201FF JSL L03034A PLY PLX JSL L0300E2 PLP RTS L020AF7 PHP REP #$30 PHA JSL L0300EE PHX PHY LDX #$0000 LDY #$0017 JSL L0300E2 JSR L020CED JSL L030314 ADR L0201F7 JSL L030314 ADR L0204E8 LDA $05,S PHA JSL L030670 LDA $05,S LDX #$0000 L020B28 LDY L020B61,X BEQ L020B4E CMP L020B61,X BEQ L020B38 INX INX INX INX BRA L020B28 L020B38 INX INX LDA L020B61,X STA L020B4B JSL L0302E1 STR ": " JSL L030314 L020B4B ADR L020BB0 L020B4E JSL L0302E1 STR " " JSL L03034A PLY PLX JSL L0300E2 PLA PLP RTS L020B61 DW $0010 DA L020B9F DW $0027 DA L020BB0 DW $002B DA L020BBA DW $0040 DA L020BD2 DW $0044 DA L020BEA DW $0045 DA L020BF9 DW $0046 DA L020C0A DW $0048 DA L020C19 DW $0049 DA L020C25 DW $004A DA L020C34 DW $004C DA L020C4D DW $004D DA L020C64 DW $0050 DA L020C7A DW $0051 DA L020C91 DW $0058 DA L020CA1 DW $0000 L020B9F STR "Device not found" L020BB0 STR "I/O Error" L020BBA STR "Disk is write-protected" L020BD2 STR "Invalid pathname syntax" L020BEA STR "Path not found" L020BF9 STR "Volume not found" L020C0A STR "File not found" L020C19 STR "Volume full" L020C25 STR "Directory full" L020C34 STR "Incompatible file format" L020C4D STR "Unexpected end of file" L020C64 STR "Position out of range" L020C7A STR "File is already opened" L020C91 STR "Directory error" L020CA1 STR "Not a block device" L020CB4 PHP REP #$30 PHA JSL L0300EE PHX PHY LDX #$0000 LDY #$0017 JSL L0300E2 JSR L020CED JSL L030314 ADR L0201F7 JSL L030314 ADR L0204F4 LDA $05,S PHA JSL L030670 JSL L03034A PLY PLX JSL L0300E2 PLA PLP RTS L020CED PHP SEP #$30 LDA #$A0 STAL $E0C055 JSR L020CFE STAL $E0C054 PLP L020CFE PHP SEP #$30 LDX #$27 L020D03 STAL $E007D0,X DEX BPL L020D03 PLP RTS L020D0C PHP SEP #$30 JSL L03074E DB $0A DB $0E DB $1E DB $31 LDX #$21 LDY #$0C JSL L0300E2 JSL L0302E1 STR "Please wait..." PLP RTS L020D34 PHP SEP #$30 JSL L030035 DB $02 DB $15 DB $00 DB $4F JSL L0300D1 PLP RTS L020D45 PHK PLB CLC XCE REP #$30 TSC STA L020003 TDC STA L020005 JSR L0205EB JSR L02728C LDY #$0014 LDX #$0015 JSL L0300E2 JSL L0302E1 STR "Type ? for help, $ for shareware page." L020D8E JSR L020A68 JSR L020DE5 BCC L020D9B BVC L020D9B BRL L020A10 L020D9B LDA L0207BD BNE L020DA5 JSR L02077C BCS L020D8E L020DA5 LDX L0207BC LDY L0207BE JSR L023EF2 STX $00 STY $02 CLC LDA #$0050 ADC $00 STA $04 LDA #$0000 ADC $02 STA $06 LDY #$0F4E L020DC4 LDA [$00],Y STA [$04],Y DEY DEY BPL L020DC4 LDY #$004E L020DCF LDA L020009,Y STA [$00],Y DEY DEY BPL L020DCF LDA L0207C0 CMP #$0032 BCS L020D8E INC L0207C0 BRA L020D8E L020DE5 BRL L020DF6 DW $7771 STR 'ExecCommand' L020DF6 PHP REP #$30 LDA L02000A AND #$00FF BNE L020E04 BRL L020EBD L020E04 LDX #$0000 L020E07 LDA L0205B7+2,X TAY ORA L0205B7,X BEQ L020E20 LDA L0205B7,X PHX JSR L020EE1 PLX BCC L020E52 INX INX INX INX BRA L020E07 L020E20 LDA #L02000A STA $F8 LDA #^L020009 STA $FA JSR L020F52 JSR L027040 BCC L020E44 JSR L021586 JSR L026740 BCS L020EAA LDA L0283C2 BEQ L020E71 JSR L0267F3 BRA L020E4C L020E44 LDA L0283C2 BEQ L020E71 JSR L027076 L020E4C JSR L021E04 BRL L020EDC L020E52 LDY L0205DB,X STY $00 LDY L0205DB+2,X STY $02 PHA TAY LDA [$00],Y AND #$00FF STA L020EDF BIT #$0080 BEQ L020E7A LDA L0283C2 BNE L020E7A PLA L020E71 LDA #$000A JSR L020AB8 PLP CLC RTS L020E7A PLA LDY L0205CB,X STY $00 LDY L0205CB+2,X STY $02 ASL ASL TAY LDA [$00],Y BEQ L020EBD DEC PER L020EB4-1 PHA LDA #$0000 TAX TAY PHP SEP #$20 PHA LDAL $E0C025 LSR BCS L020EA5 PLA PLP BRA L020EA9 L020EA5 PLA PLP BRK $00 L020EA9 RTS MX %00 L020EAA LDA #$0001 JSR L020AB8 PLP SEC CLV RTS L020EB4 REP #$30 BCC L020EC7 BVS L020EC1 JSR L020EC6 L020EBD PLP SEC CLV RTS L020EC1 PLP SEC SEP #$40 RTS L020EC6 PHP L020EC7 LDA L020EDF BIT #$0020 BEQ L020ED4 PHA JSR L020736 PLA L020ED4 BIT #$0040 BEQ L020EDC JSR L021E04 L020EDC PLP CLC RTS L020EDF DB $00 DB $00 L020EE1 PHP REP #$30 STA $00 STY $02 STZ $04 SEP #$30 L020EEC LDY #$00 LDX #$00 L020EF0 LDA [$00],Y BEQ L020F4F ORA #$80 CMP L02000A,X BEQ L020F22 CMP #$C1 BCC L020F0A CMP #$DB BCS L020F0A ORA #$20 CMP L02000A,X BEQ L020F22 L020F0A LDA [$00],Y BPL L020F11 INY BRA L020F0A L020F11 INY TYA CLC ADC $00 STA $00 LDA #$00 ADC $01 STA $01 INC $04 BRA L020EEC L020F22 LDA [$00],Y BPL L020F2A INX INY BRA L020EF0 L020F2A INX CPX #$01 BEQ L020F38 LDA L02000A,X BEQ L020F38 CMP #$A0 BNE L020F0A L020F38 REP #$30 INX TXA CLC ADC #L020009 STA $F8 LDA #^L020009 STA $FA JSR L020F52 LDA $04 PLP CLC RTS L020F4F PLP SEC RTS L020F52 PHP SEP #$30 LDY #$FF L020F57 INY LDA [$F8],Y CMP #$A0 BEQ L020F57 REP #$30 TYA CLC ADC $F8 STA $F8 PLP RTS L020F68 DB $00 DB $00 L020F6A DB $00 DB $00 L020F6C PLA PHK PLB SEP #$30 XBA STA L020F98 XBA LDX L020F9A L020F79 CMP L020F9A,X BEQ L020F83 DEX BNE L020F79 SEC RTL L020F83 DEX BIT L0283C2 BMI L020F8E LDA L020FBC,X BMI L020F96 L020F8E REP #$30 TXA ASL TAX JSR (L020FA6,X) L020F96 CLC RTL L020F98 DB $00 DB $00 L020F9A DB $0B DB $0A DB $0B DB $08 DB $02 DB $0E DB $12 DB $03 DB $13 DB $2B DB $2D DB $2A L020FA6 DA L020FC7 DA L02104E DA L021166 DA L021179 DA L02118D DA L0211C2 DA L0211CE DA L0211E0 DA L0211EA DA L021208 DA L021251 L020FBC DB $00 DB $00 DB $80 DB $80 DB $80 DB $00 DB $00 DB $00 DB $80 DB $80 DB $00 L020FC7 LDA L020F98 AND #$0010 BEQ L020FD2 BRL L02125A L020FD2 BIT L0283C2 BPL L020FDE LDA $58 BIT L020F68 BPL L020FDF L020FDE RTS L020FDF BIT $5C BMI L020FE7 CMP $3E BCS L020FDE L020FE7 LDA L020F98 AND #$0001 BEQ L021007 LDX #$0000 LDY #$0002 JSL L0300E2 LDA $5A STA $56 LDA $58 STA $54 LDY #$0014 BRL L021034 L021007 JSL L030139 BIT $48 BPL L021019 LDA $54 CLC ADC #$0010 STA $54 BRA L021025 L021019 PEI $54 PEI $56 JSL L0415A4 STA $54 STX $56 L021025 LDX #$0000 LDY #$0015 JSL L0300E2 LDA $58 LDY #$0001 L021034 JSL L0405F4 STA $58 STZ L020F68 CPY #$00EF BNE L02104D CPX #$6502 BNE L02104D LDA #$FFFF STA L020F68 L02104D RTS L02104E LDA L020F98 AND #$0010 BEQ L021059 BRL L021278 L021059 BIT L0283C2 BMI L02105F RTS L02105F LDA $54 BNE L02106C PHA JSL L04155D CPX $56 BEQ L0210DF L02106C LDA L020F98 AND #$0001 BEQ L0210E0 L021074 BIT $48 BPL L0210A3 LDA $54 CMP #$0140 BCC L021085 SEC SBC #$0140 BRA L021088 L021085 LDA #$0000 L021088 STA $54 LDX #$0000 LDY #$0002 JSL L0300E2 LDA $54 LDY #$0014 JSL L0405F4 STA $58 STZ L020F68 RTS L0210A3 PEI $54 PEI $56 JSL L04163A PHA PHX PEA $0013 JSL L041462 STA $54 STX $56 LDX #$0000 LDY #$0002 JSL L0300E2 LDA $56 STA $5A LDA $54 LDY #$0014 JSL L0405F4 STA $58 STZ L020F68 CPY #$00EF BNE L0210DF LDA #$FFFF STA L020F68 L0210DF RTS L0210E0 BIT L020F68 BPL L021100 DEC $58 BPL L021100 STZ L020F68 LDA $3E STA $58 BIT $48 BPL L0210FC CLC LDA $54 ADC #$0140 BRA L0210FE L0210FC LDA $3E L0210FE STA $58 L021100 BIT $48 BPL L021125 LDA $54 CMP #$0010 BCC L0210DF SEC SBC #$0010 BRA L021114 LDA #$0000 L021114 STA $54 LDA $58 BIT L020F68 BMI L021145 SEC SBC #$0010 STA $58 BRA L021145 L021125 PEI $54 PEI $56 JSL L04163A STA $54 STX $56 BIT L020F68 BMI L021145 PEI $58 PEI $5A JSL L04163A STA $58 STX $5A STZ L020F68 L021145 JSL L030193 LDY #$0002 LDX #$0000 JSL L0300E2 PEI $5A LDA $56 STA $5A LDA $54 LDY #$0001 JSL L0405F4 PLA STA $5A RTS L021166 LDA #$FFFF EOR $48 STA $48 PEI $54 JSL L04155D STX $56 JSR L021E04 RTS L021179 PHP REP #$30 LDA #$0000 STA $54 PHA JSL L04155D STX $56 JSR L021E04 PLP RTS L02118D STZ $56 LDA $3E BIT $48 BPL L0211BD BIT $5C BMI L0211B4 AND #$000F PHA LDA $3E AND #$FFF0 PLY BEQ L0211A9 CLC ADC #$0010 L0211A9 SEC SBC #$0140 BCS L0211B7 LDA #$0000 BRA L0211B7 L0211B4 LDA #$FEC0 L0211B7 STA $54 JSR L021E04 RTS L0211BD STA $54 BRL L021074 L0211C2 LDA #$8000 EOR $5E AND #$BFFF STA $5E BRA L0211D8 L0211CE LDA #$4000 EOR $5E AND #$7FFF STA $5E L0211D8 BIT $48 BPL L0211DF BRL L021E04 L0211DF RTS L0211E0 LDA #$2000 EOR $5E STA $5E BRL L021E04 L0211EA LDX #$001C L0211ED LDA L021231,X STA L021233,X DEX DEX BPL L0211ED LDA $54 STA L021231 LDA L02122F CMP #$0010 BCS L021207 INC L02122F L021207 RTS L021208 LDA L02122F BEQ L021207 DEC L02122F LDY L021231 STY $54 LDX #$0000 L021218 LDA L021233,X STA L021231,X INX INX CPX #$001E BCC L021218 PHY JSL L04155D STX $56 BRL L021E04 L02122F DB $00 DB $00 L021231 DB $00 DB $00 L021233 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L021251 JSR L025DD4 JSR L020736 BRL L021E04 L02125A LDA L0207BD BEQ L021277 LDA L0207C0 BEQ L021277 LDA L020F6A DEC CMP L0207C0 BCC L021271 LDA L0207C0 DEC L021271 STA L020F6A JSR L021295 L021277 RTS L021278 LDA L0207BD BEQ L021277 LDA L0207C0 BEQ L021277 LDA L020F6A INC CMP L0207C0 BCC L02128E LDA #$0000 L02128E STA L020F6A JSR L021295 RTS L021295 LDX L0207BC LDY L0207BE JSR L023EF2 PHY PHX LDA L020F6A ASL ASL ASL ASL PHA ASL ASL ADC $01,S TAY PLA LDX #$0000 LDA $03,S XBA PHA PLB PLB L0212B7 LDA ($01,S),Y STAL L020009,X INY INX CPX #$0050 BCC L0212B7 PHK PLB PLA PLA RTS L0212C9 PHP REP #$30 AND #$007F CMP #$0030 BCC L0212E6 CMP #$0047 BCS L0212E6 CMP #$003A BCC L0212E3 CMP #$0041 BCC L0212E6 L0212E3 PLP CLC RTS L0212E6 PLP SEC RTS L0212E9 PHP REP #$30 AND #$007F CMP #$0041 BCC L021306 CMP #$007B BCS L021306 CMP #$005B BCC L021303 CMP #$0061 BCC L021306 L021303 PLP CLC RTS L021306 PLP SEC RTS L021309 PHP REP #$30 L02130C LDA [$F8] AND #$00FF BEQ L02131D INC $F8 CMP #$00A0 BEQ L02130C PLP CLC RTS L02131D PLP SEC RTS L021320 PHP REP #$30 L021323 LDA [$F8] AND #$00FF BEQ L021336 CMP #$00A0 BNE L021333 INC $F8 BRA L021323 L021333 PLP CLC RTS L021336 PLP SEC RTS L021339 PHP REP #$30 JSR L021367 BCC L021344 PLP SEC RTS L021344 BVS L021364 BIT $F6 BPL L021353 CPY #$0000 BNE L021353 LDY $42 BRA L021364 L021353 PHY PHA JSL L042ABB BCC L021364 LDA #$0003 JSR L020AB8 PLP SEC RTS L021364 PLP CLC RTS L021367 PHP REP #$30 LDA [$F8] AND #$00FF CMP #$00A4 ; $ BEQ L0213A6 CMP #$00B0 ; 0 BCC L0213BB CMP #$00BA ; 9+1 BCC L0213A8 LDA #L0213D1 JSR L021F2A BCS L0213C1 LDA L0213D1 AND #$00FF BEQ L0213C4 PEA ^L0213D1 PEA L0213D1 JSL L0426C7 BCS L0213A1 CPX #$0004 BNE L0213C8 BRA L0213CD L0213A1 LDA #$0005 BRA L0213BE L0213A6 INC $F8 L0213A8 PEI $FA PEI $F8 LDX #$0006 JSL L0306BD PLX STX $F8 PLX STX $FA BCC L0213CD L0213BB LDA #$0001 ; Err: Syntax L0213BE JSR L020AB8 L0213C1 PLP SEC RTS L0213C4 LDA #$0000 TAY L0213C8 PLP CLC SEP #$40 RTS L0213CD PLP CLC CLV RTS L0213D1 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L02141A CLC HEX B0 L02141C SEC PHP REP #$30 BCS L02142C STZ L021496 JSR L021309 BCS L021479 BRA L021442 L02142C JSR L021339 BCS L02148E CPY $42 BNE L021488 STA L021496 JSR L021309 BCS L021479 CMP #$00AE ; . BEQ L021465 L021442 CMP #$00AC ; , BNE L021491 JSR L021564 BCS L02148E CMP #$0000 BEQ L021488 STA L021498 DEC L021455 CLC ADC L021496 BCS L021488 BIT $5C BMI L02147F CMP $3E BCS L021488 BRA L02147F L021465 JSR L021339 BCS L02148E CMP L021496 BCC L021488 SEC SBC L021496 INC STA L021498 BRA L02147F L021479 LDA #$0001 STA L021498 L02147F LDA L021496 LDY L021498 PLP CLC RTS L021488 LDA #$0003 L02148B JSR L020AB8 L02148E PLP SEC RTS L021491 LDA #$0001 BRA L02148B L021496 DW $0000 L021498 DW $0000 L02149A PHP REP #$30 JSR L021309 BCS L021511 CMP #$00DB BNE L021511 STZ L02151F LDA $3E DEC STA L021521 LDA $42 STA L021523 LDA [$F8] AND #$00FF CMP #$00AE BNE L0214C3 INC $F8 BRA L0214E6 L0214C3 JSR L021339 BCS L02151C STA L02151F STY L021523 JSR L021309 BCS L021511 CMP #$00AE BNE L02151C LDA [$F8] AND #$00FF CMP #$00DD BNE L0214E6 INC $F8 BRA L021502 L0214E6 JSR L021339 BCS L02151C STA L021521 CPY L021523 BNE L021516 CMP L02151F BCC L021516 JSR L021309 BCS L021511 CMP #$00DD BNE L021511 L021502 JSR L020F52 LDA L02151F LDX L021521 LDY L021523 PLP CLC RTS L021511 LDA #$0001 BRA L021519 L021516 LDA #$0003 L021519 JSR L020AB8 L02151C PLP SEC RTS L02151F DW $0000 L021521 DW $0000 L021523 DW $0000 L021525 PHP REP #$30 JSR L02149A BCS L02153A CPY $42 BNE L021534 PLP CLC RTS L021534 LDA #$0003 JSR L020AB8 L02153A PLP SEC RTS L02153D LDA L021542 BRA L021542+2 L021542 BIT $0800 SEP #$20 REP #$10 AND #$7F STA L021563 JSR L021309 AND #$7F CMP L021563 BNE L02155B PLP CLC RTS L02155B LDA #$01 JSR L020AB8 PLP SEC RTS L021563 DB $00 L021564 PHP REP #$30 PEI $FA PEI $F8 LDX #$0004 JSL L0306BD PLX STX $F8 PLX STX $FA BCS L02157D PLP CLC RTS L02157D LDA #$0001 JSR L020AB8 PLP SEC RTS L021586 PHP SEP #$20 REP #$10 LDY #$0000 L02158E JSR L021309 BCS L0215C2 AND #$7F CMP #$27 BEQ L02159D CMP #$22 BNE L0215A5 L02159D TYX BNE L0215B9 STA L0215CC BRA L02158E L0215A5 CMP #$2C BEQ L0215C0 CMP #$20 BEQ L0215C0 CMP #$2F BNE L0215B3 LDA #$3A L0215B3 STA L0215CF,Y INY BRA L02158E L0215B9 CMP L0215CC BNE L0215B3 BRA L0215C2 L0215C0 DEC $F8 L0215C2 LDA #$00 STA L0215CF,Y STY L0215CD PLP RTS L0215CC DB $00 L0215CD DB $00 L0215CE DB $00 L0215CF DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L021631 PHP REP #$30 JSR L021586 JSL GSOS DW $200E ; ExpandPath ADRL L02164C BCC L021649 JSR L020AF7 PLP SEC RTS L021649 PLP CLC RTS L02164C DW $0002 ; Parms for ExpandPath ADRL L0215CD ; path name ADRL L021656 ; new pathname L021656 DW $0100 L021658 DS $0002 L02165A DS $00FE L021758 ADRL L0217D6 ; 0 DB ADRL L0217D5 ; 1 DW ADRL L0217D4 ; 2 DDB ADRL L0217D3 ; 3 DA ADRL L0217D2 ; 4 ADRL ADRL L0217D1 ; 5 ADR ADRL L0217D0 ; 6 FLO ADRL L021858 ; 7 HEX ADRL L02186B ; 8 DS ADRL L0218B5 ; 9 ASC ADRL L0219C7 ; 10 DCI ADRL L0218B0 ; 11 REV ADRL L0217AD ; 12 INV ADRL L0217AD ; 13 FLS ADRL L021A4A ; 14 STRL ADRL L021A45 ; 15 STR ADRL L0217C6 ; 16 CHK adrl doRECT ; 17 - AV 202303 RECT L02179C DB $C0 ; 0 DB DB $C0 ; 1 DB $C0 ; 2 DB $C0 ; 3 DB $C0 ; 4 DB $C0 ; 5 DB $C0 ; 6 DB $C0 ; 7 DB $C0 ; 8 DB $C0 ; 9 DB $C0 ; 10 DB $C0 ; 11 DB $C0 ; 12 DB $C0 ; 13 DB $C0 ; 14 DB $C0 ; 15 DB $C0 ; 16 db $c0 ; 17 - AV 202303 RECT L0217AD CLC RTS PHP REP #$30 PHA PHX PEA $E030 PHA PHX PEA $E020 JSL L0435FB JSL L0435FB PLP RTS doRECT iny ; AV 202303 - a RECT is 4 DW L0217C6 INY INY INY INY INY INY INY INY INY INY L0217D0 INY L0217D1 INY L0217D2 INY L0217D3 INY L0217D4 INY L0217D5 INY L0217D6 LDA L021847,Y AND #$00FF STA L021843 ; number of bytes to disassemble STY L021841 ; Y is the index JSR L021339 ; check syntax BCS L0217F7 STA L02183F ; address STY L02183D ; segment JSR L02141A ; check count BCS L0217F7 STY L021845 ; count BRA L0217F9 L0217F7 CLC RTS * AV 202303 - check if a RECT is required L0217F9 lda L021843 ; is that a rect cmp #$0082 bne L0217FA ; not a rect and #$007f ; yes, erase bit 7 sta L021843 ; we want 2 bytes as a word lda #1 ; command is DW - disassemble 2 bytes (ie. a word) sta L021841 lda L021845 ; but 4 times each count asl ; as a RECT is 4 words asl sta L021845 L0217FA LDX L021845 DEX BEQ L021819 LDA L021841 CMP #$0006 BCS L021819 INX CLC LDA #$0000 L02180C ADC L021843 DEX BNE L02180C STA L021843 INX STX L021845 L021819 LDA L02183D ; segment PHA LDA L02183F ; address PHA LDA L021843 ; number of bytes PHA LDA L021841 ; command PHA JSL L043069 LDA L02183F ; address ADC L021843 ; + length STA L02183F ; = address DEC L021845 ; count-- BNE L021819 ; loop CLC RTS L02183D DW $0000 L02183F DW $0000 L021841 DW $0000 L021843 DW $0000 L021845 DW $0000 L021847 DB $01 DB $02 DB $02 DB $02 DB $04 DB $03 DB $0A DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $01 db $82 ; AV 202303 - bit 7 to ID a rect L021858 JSR L02141C BCS L021869 PEI $42 PHA PHY PEA $0007 JSL L043069 CLC L021869 CLV RTS L02186B JSR L02141C BCS L0218A9 STA L0218AB STY L0218AD TYX TAY SEP #$20 LDA [$3A],Y STA L0218AF L02187F INY DEX BEQ L021895 LDA [$3A],Y EOR L0218AF BEQ L02187F REP #$20 LDA #$0007 JSR L020AB8 SEC CLV RTS L021895 REP #$20 PEI $42 LDA L0218AB PHA LDA L0218AD PHA PEA $0008 JSL L043069 CLC L0218A9 CLV RTS L0218AB DW $0000 L0218AD DW $0000 L0218AF DB $00 L0218B0 LDA #$000B BRA L0218B8 L0218B5 LDA #$0009 L0218B8 STA L0219C4 CMP #$0009 BEQ L0218CB JSR L02141C BCS L021902 STA L0219BE TYA BRA L021920 L0218CB JSR L021339 BCS L021902 STA L0219BE CPY $42 BNE L0218FC JSR L021309 BCS L021956 CMP #$00AC BEQ L021905 CMP #$00AE BNE L0218F6 JSR L021339 BCS L021902 CMP L0219BE BCC L0218FC SBC L0219BE INC BRA L021920 L0218F6 LDA #$0001 BRA L0218FF L0218FB PLA L0218FC LDA #$0003 L0218FF JSR L020AB8 L021902 REP #$31 RTS L021905 JSR L021564 BCS L021902 CMP #$0000 BEQ L021902 PHA DEC CLC ADC L0219BE BCS L0218FB BIT $5C BMI L02191F CMP $3E BCS L0218FB L02191F PLA L021920 STA L0219C2 CLC ADC L0219BE STA L0219C0 L02192A SEP #$20 LDY L0219BE JSR L021978 LDX #$0001 L021935 LDA [$3A],Y AND #$7F CMP #$20 BCC L02194D LDA [$3A],Y EOR L0219C6 BPL L02194D DEX L021945 JSR L02198D BCS L021902 JSR L021978 L02194D CPX L0219C2 BCS L021945 INY INX BRA L021935 L021956 SEP #$20 LDY L0219BE LDX #$0001 L02195E LDA [$3A],Y BEQ L021969 INX INY CPY $3E BNE L02195E DEX L021969 STX L0219C2 REP #$20 TXA CLC ADC L0219BE STA L0219C0 BRA L02192A MX %10 L021978 PHY L021979 LDA [$3A],Y PHA AND #$80 STA L0219C6 PLA AND #$7F CMP #$20 BCS L02198B INY BNE L021979 L02198B PLY RTS MX %00 L02198D REP #$20 PEI $42 LDA L0219BE PHA PHX LDA L0219C4 PHA TXA CLC ADC L0219BE STA L0219BE TXA SEC SBC L0219C2 EOR #$FFFF INC STA L0219C2 JSL L043069 LDX #$0001 LDY L0219BE CPY L0219C0 SEP #$20 RTS L0219BE DW $0000 L0219C0 DW $0000 L0219C2 DW $0000 L0219C4 DW $0000 L0219C6 DB $00 L0219C7 PHP REP #$30 JSR L021339 BCS L021A35 STA L021A41 LDA #$0001 STA L021A43 JSR L021309 BCS L0219EF CMP #$00AC BEQ L0219E7 LDA #$0001 BRA L021A3B L0219E7 JSR L021564 BCS L021A35 STA L021A43 L0219EF SEP #$20 LDY L021A41 LDA [$3A],Y AND #$80 STA L021A40 L0219FB SEP #$20 LDY L021A41 LDX #$0001 BRA L021A11 L021A05 INX INY BEQ L021A38 BIT $5D BMI L021A11 CPY $3E BCS L021A38 L021A11 LDA [$3A],Y EOR L021A40 BPL L021A05 REP #$20 PEI $42 LDA L021A41 PHA PHX TXA CLC ADC L021A41 STA L021A41 PEA $000A JSL L043069 DEC L021A43 BNE L0219FB L021A35 PLP CLC RTS L021A38 LDA #$0007 L021A3B JSR L020AB8 BRA L021A35 L021A40 DB $00 L021A41 DW $0000 L021A43 DW $0000 L021A45 LDA #$000F BRA L021A4D L021A4A LDA #$000E L021A4D STA L021AC4 JSR L021339 BCS L021ABF CPY $42 BNE L021AB9 STA L021AC2 JSR L021309 TAX LDA #$0001 BCS L021A6F CPX #$00AC BNE L021AB4 JSR L021564 BCS L021ABF L021A6F STA L021AC6 L021A72 LDY L021AC2 LDA [$3A],Y LDX L021AC4 CPX #$000E BEQ L021A82 AND #$00FF L021A82 INC CPX #$000E BNE L021A89 INC L021A89 PEI $42 PHY PHA CLC ADC L021AC2 BCC L021AA0 BEQ L021AA0 PLA PLA PLA LDA L021AC6 DEC BNE L021AAD BRA L021AAF L021AA0 STA L021AC2 PHX JSL L043069 DEC L021AC6 BNE L021A72 L021AAD CLC RTS L021AAF LDA #$0007 BRA L021ABC L021AB4 LDA #$0001 BRA L021ABC L021AB9 LDA #$0003 L021ABC JSR L020AB8 L021ABF SEC CLV RTS L021AC2 DW $0000 L021AC4 DW $0000 L021AC6 DW $0000 L021AC8 ADRL L028C04 ; 0 LOAD ADRL L021BC7 ; 1 TCLR ADRL L021BF3 ; 2 TLOAD ADRL L021C54 ; 3 TSAVE ADRL L021CA6 ; 4 GENLAB ADRL L021D90 ; 5 LIST ADRL L021CAC ; 6 REM ADRL L02438E ; 7 ? ADRL L029C1B ; 8 INFOS ADRL L021D8C ; 9 QUIT ADRL L021D8C ; 10 BYE ADRL L021E48 ; 11 PFX ADRL L021E80 ; 12 OFF ADRL L028F53 ; 13 SEG ADRL L025C74 ; 14 SLOAD ADRL L025CF4 ; 15 \ ADRL L02238A ; 16 PHL ADRL L02242B ; 17 RPHL ADRL L0224CE ; 18 PHL2 ADRL L022578 ; 19 MATCH ADRL L022D08 ; 20 SRC ADRL L0225D9 ; 21 COM ADRL L025AFE ; 22 TABS ADRL L02269B ; 23 CAT ADRL L023D1C ; 24 ROM ADRL L023DD3 ; 25 STOOL ADRL L023D77 ; 26 MLABS ADRL L023B82 ; 27 MREL ADRL L023CC4 ; 28 REL8 ADRL L023CC7 ; 29 RREL8 ADRL L0221D9 ; 30 RELL ADRL L023F00 ; 31 TC ADRL L023F10 ; 32 TRON ADRL L023F13 ; 33 TROFF ADRL L023F19 ; 34 BUG ADRL L029066 ; 35 RLOAD ADRL L025543 ; 36 $ ADRL L025D7E ; 37 SEDIT ADRL L027365 ; 38 POP ADRL L025DD4 ; 39 DSK ADRL L025CC2 ; 40 SSAVE ADRL L025B75 ; 41 HIST ADRL L0267F2 ; 42 - ADRL L0260AF ; 43 CFG ADRL L024271 ; 44 CS ADRL L0241FF ; 45 C1 ADRL L026F79 ; 46 [ ADRL L027330 ; 47 MD ADRL L027798 ; 48 TST ADRL L02779B ; 49 FIND ADRL L027EB0 ; 50 SCAN * AV 202010 - Two new commands adrl doCHON ; 51 CHON adrl doCHOFF ; 52 CHOFF *--- L021B94 DB $00 ; 0 LOAD DB $C0 ; 1 TCLR DB $C0 ; 2 TLOAD DB $80 ; 3 TSAVE DB $C0 ; 4 GENLAB DB $80 ; 5 LIST DB $C0 ; 6 REM DB $00 ; 7 ? DB $C0 ; 8 INFOS DB $00 ; 9 QUIT DB $00 ; 10 BYE DB $00 ; 11 PFX DB $C0 ; 12 OFF DB $80 ; 13 SEG DB $00 ; 14 SLOAD DB $C0 ; 15 \ DB $C0 ; 16 PHL DB $C0 ; 17 RPHL DB $C0 ; 18 PHL2 DB $C0 ; 19 MATCH DB $C0 ; 20 SRC DB $C0 ; 21 COM DB $C0 ; 22 TABS DB $00 ; 23 CAT DB $40 ; 24 ROM DB $C0 ; 25 STOOL DB $C0 ; 26 MLABS DB $C0 ; 27 MREL DB $C0 ; 28 REL8 DB $C0 ; 29 RREL8 DB $C0 ; 30 RELL DB $C0 ; 31 TC DB $80 ; 32 TRON DB $80 ; 33 TROFF DB $80 ; 34 BUG DB $00 ; 35 RLOAD DB $00 ; 36 $ DB $60 ; 37 SEDIT DB $00 ; 38 POP DB $60 ; 39 DSK DB $00 ; 40 SSAVE DB $40 ; 41 HIST DB $E0 ; 42 - DB $00 ; 43 CFG DB $C0 ; 44 CS DB $C0 ; 45 C1 DB $00 ; 46 [ DB $00 ; 47 MD DB $C0 ; 48 TST DB $80 ; 49 FIND DB $C0 ; 50 SCAN * AV 202010 - Two new commands db $00 ; 51 CHON db $00 ; 52 CHOFF *--- end of AV 202010 L021BC7 JSL L041D74 JSL L040F9B LDA L0283CE PHA LDA L0283CC PHA JSL L0437E4 JSR L020D0C PEA $0000 PEI $3E PEA $FFFF JSL L041015 JSL L0410DD JSR L020D34 CLC RTS L021BF3 PHP REP #$30 JSR L020D0C LDA [$F8] AND #$00FF BEQ L021C0B JSR L021586 PEA ^L0215CD PEA L0215CD BRA L021C31 L021C0B LDAL L041ACE BNE L021C2B LDA L020188 BNE L021C1E PEA ^L021C9B PEA L021C9B BRA L021C31 L021C1E LDX L020187 LDY L020189 JSR L023EF2 PHY PHX BRA L021C31 L021C2B PEA $0000 PEA $0000 L021C31 JSL L041F95 BCC L021C3C JSR L020AF7 BRA L021C4E L021C3C REP #$20 LDA L0283CE PHA LDA L0283CC PHA JSL L0437E4 JSL L042328 L021C4E JSR L020D34 PLP CLC RTS L021C54 PHP REP #$30 LDA [$F8] AND #$00FF BEQ L021C69 JSR L021586 PEA ^L0215CD PEA L0215CD BRA L021C8F L021C69 LDAL L041ACE BNE L021C89 LDA L020188 BNE L021C7C PEA ^L021C9B PEA L021C9B BRA L021C8F L021C7C LDX L020187 LDY L020189 JSR L023EF2 PHY PHX BRA L021C8F L021C89 PEA $0000 PEA $0000 L021C8F JSL L042166 BCC L021C98 JSR L020AF7 L021C98 PLP CLC RTS L021C9B STRL '0:Temps.T' L021CA6 JSL L0443B3 CLC RTS L021CAC PHP REP #$30 STZ L021D33 L021CB2 JSR L021309 BCC L021CC3 LDA L021D33 BEQ L021CCD LDA #$0000 LDY $3E BRA L021D04 L021CC3 CMP #$00AC BEQ L021CFF JSR L021CD6 BCC L021CB2 L021CCD LDA #$0001 JSR L020AB8 L021CD3 PLP CLC RTS L021CD6 CMP #$00C3 BNE L021CE3 LDA #$0001 TSB L021D33 CLC RTS L021CE3 CMP #$00CC BNE L021CF0 LDA #$0002 TSB L021D33 CLC RTS L021CF0 CMP #$00C4 BNE L021CFD LDA #$0004 TSB L021D33 CLC RTS L021CFD SEC RTS L021CFF JSR L02141C BCS L021CD3 L021D04 STA L021D2D TYA BNE L021D0B DEC L021D0B ADC L021D2D STA L021D2F LDA L021D33 LSR PHA BCC L021D1B JSR L021D35 L021D1B PLA LSR PHA BCC L021D23 JSR L021D57 L021D23 PLA LSR BCC L021D2A JSR L021D79 L021D2A PLP CLC RTS L021D2D DB $00 DB $00 L021D2F DB $00 DB $00 DB $00 DB $00 L021D33 DB $00 DB $00 L021D35 LDA L021D2D JSL L0416F3 TAY L021D3D LDA #$8000 JSL L04172C BCS L021D56 CPY L021D2F BCS L021D56 PHY PEI $42 PHY JSL L043563 PLY BRA L021D3D L021D56 RTS L021D57 LDA L021D2D JSL L0416F3 L021D5E TAY LDA #$4000 JSL L04172C BCS L021D78 CPY L021D2F BCS L021D78 PHY PEI $42 PHY JSL L0429D3 PLA BRA L021D5E L021D78 RTS L021D79 PEI $42 LDA L021D2D PHA LDA L021D2F SEC SBC $01,S INC PHA JSL L044E36 RTS L021D8C SEP #$40 SEC RTS L021D90 PHP REP #$30 JSR L021339 BCC L021D9B L021D98 PLP CLC RTS L021D9B CPY $42 BEQ L021DA7 LDA #$0003 JSR L020AB8 BRA L021D98 L021DA7 TAY LDA [$F8] AND #$00FF CMP #$00AA PHP TYA PLP BEQ L021DBA PHA JSL L0416D7 L021DBA PLP L021DBB PHP REP #$30 BIT L0283C2 BPL L021E01 PHA JSL L0300EE PLA PHY PHX PHA LDY #$0002 LDX #$0000 JSL L0300E2 PLA STA $54 PHA PHA JSL L04155D STX $56 STX $5A PLA LDY #$0014 JSL L0405F4 STA $58 STZ L020F68 CPY #$00EF BNE L021DFB LDA #$FFFF STA L020F68 L021DFB PLX PLY JSL L0300E2 L021E01 PLP CLC RTS L021E04 PHP REP #$30 BIT L0283C2 BPL L021E42 JSL L0300EE PHY PHX LDX #$0000 LDY #$0002 JSL L0300E2 LDA $56 STA $5A LDA $54 LDY #$0014 JSL L0405F4 STA $58 STZ L020F68 CPY #$00EF BNE L021E39 LDA #$FFFF STA L020F68 L021E39 PLX PLY JSL L0300E2 PLP CLC RTS L021E42 JSR L020D34 PLP CLC RTS L021E48 SEP #$20 LDA [$F8] BNE L021E51 JMP L0273A6 L021E51 LDX #$0000 L021E54 JSR L021309 BCS L021E61 AND #$7F STA L02005D,X INX BRA L021E54 L021E61 REP #$20 STX L02005B JSL GSOS DW $2009 ; SetPrefix ADRL L021E78 BCC L021E75 JSR L020AF7 L021E75 CLC CLV RTS L021E78 DW $0002 ; Parms for SetPrefix DW $0000 ; prefix num ADRL L02005B ; prefix ptr L021E80 PHP REP #$30 JSR L021339 BCC L021E8B BRL L021F01 L021E8B STA L021F04 STY L021F06 JSR L021309 BCC L021EDF LDA L021F04 LDY L021F06 CPY $42 BNE L021EFB JSL L0410BB BIT #$8000 BNE L021ED0 LDY L021F04 LDA [$3A],Y JSL L04037A TYX INC L021F04 L021EB6 LDY L021F04 LDA [$3A],Y CPX #$0002 BCS L021ECB AND #$00FF CMP #$0080 BCC L021ECB ORA #$FF00 L021ECB STA L021F08 BRA L021EE1 L021ED0 LDY L021F06 PHY LDA L021F04 PHA JSL L04349E TYX BRA L021EB6 L021EDF BRA L021EF6 L021EE1 LDA L021F06 PHA LDA L021F04 PHA LDA L021F08 PHA PEA $0000 JSL L043813 BRA L021F01 L021EF6 LDA #$0001 BRA L021EFE L021EFB LDA #$0003 L021EFE JSR L020AB8 L021F01 PLP CLC RTS L021F04 DB $00 DB $00 L021F06 DB $00 DB $00 L021F08 DB $00 DB $00 L021F0A ADRL L021FA1 ; 0 LAB ADRL L021F9A ; 1 ENT ADRL L021F28 ; 2 EXT ADRL L021F28 ; 3 EXD ADRL L021F93 ; 4 EQU ADRL L021F28 ; 5 DP L021F22 DB $C0 ; 0 LAB DB $C0 ; 1 ENT DB $C0 ; 2 EXT DB $C0 ; 3 EXD DB $C0 ; 4 EQU DB $C0 ; 5 DP L021F28 CLC RTS L021F2A PHP REP #$30 STA $04 JSR L020F52 SEP #$30 LDY #$00 L021F36 LDA [$F8],Y BEQ L021F85 cmp #'a' bcc nochange cmp #'z'+1 bcs nochange sec sbc #$20 nochange CMP #$A0 BEQ L021F85 CMP #$AC ; , BEQ L021F85 CMP #$AE ; . BEQ L021F85 CMP #$BA ; 9+1 BEQ L021F7C CMP #$B0 ; 0 BCC L021F6E CMP #$BA ; 9+1 BCC L021F76 CMP #$FE ; { BEQ L021F80 CMP #$C1 ; A BCC L021F6E CMP #$FB ; z+1 BCS L021F6E CMP #$DD ; ] BEQ L021F7C CMP #$DF ; _ BEQ L021F80 CMP #$DB ; [ BCC L021F80 CMP #$E1 ; a BCS L021F80 L021F6E LDA #$04 JSR L020AB8 PLP SEC RTS L021F76 CPY #$00 BNE L021F80 BRA L021F6E L021F7C CPY #$00 BNE L021F6E L021F80 INY STA ($04),Y BRA L021F36 L021F85 TYA STA ($04) REP #$20 TYA CLC ADC $F8 STA $F8 PLP CLC RTS L021F93 PHP SEP #$30 LDA #$04 BRA L021FA6 L021F9A PHP SEP #$30 LDA #$01 BRA L021FA6 L021FA1 PHP SEP #$30 LDA #$00 L021FA6 STA L022085 REP #$30 JSR L021367 BCS L022013 BVS L021FCD STA L022081 STY L022083 LDX L022085 CPX #$0004 BCS L021FD3 PHY PHA JSL L042ABB BCC L021FCD LDA #$0003 BRA L022010 L021FCD STA L022081 STY L022083 L021FD3 JSR L021309 BCS L022035 CMP #$00AC BEQ L021FE6 LDA #$0001 JSR L020AB8 PLP CLC RTS L021FE6 LDA #L022089 JSR L021F2A BCS L022013 LDA L022089 AND #$00FF BEQ L022064 LDA L02208A AND #$00FF CMP #$00BA BEQ L022016 PEA ^L022089 PEA L022089 JSL L0426C7 BCS L022016 LDA #$0002 L022010 JSR L020AB8 L022013 PLP CLC RTS L022016 JSR L022063 LDA L022083 PHA LDA L022081 PHA PEA $0000 LDA L022085 PHA PEA ^L022089 PEA L022089 JSL L042748 L022032 PLP CLC RTS L022035 LDA L022085 CMP #$0001 BNE L022064 STZ L022089 LDA L022083 PHA LDA L022081 PHA PEA ^L022089 PEA L022089 JSL L0428B4 BCS L022032 LDA L022089 AND #$00FF BEQ L02205E BRA L022016 L02205E LDA #$0006 BRA L022010 L022063 PHP L022064 LDA L022083 PHA LDA L022081 PHA LDA L022085 CMP #$0004 BCC L02207A JSL L0429B6 BRA L02207E L02207A JSL L0429D3 L02207E PLP CLC RTS L022081 DB $00 DB $00 L022083 DB $00 DB $00 L022085 DB $00 DB $00 DB $00 DB $00 L022089 DB $00 L02208A DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L0220D2 ADRL L02218E ; 0 ORG ADRL L0220F0 ; 1 MX ADRL $00000000 ; 2 ORG ADRL $00000000 ; 3 " " ADRL L02233C ; 4 DBR ADRL $00000000 ; 5 B=K L0220EA DB $C0 ; 0 ORG DB $C0 ; 1 MX DB $00 ; 2 ORG DB $00 ; 3 " " DB $C0 ; 4 DBR DB $00 ; 5 B=K L0220F0 PHP REP #$30 LDA [$F8] AND #$00FF CMP #$00A5 BEQ L022139 JSR L021339 BCC L022105 BRL L022187 L022105 STA L02218A JSR L021309 BCS L022114 CMP #$00AC BNE L022181 BRA L022124 L022114 JSR L022119 BRA L022187 L022119 PEI $42 LDA L02218A PHA JSL L042D9E RTS L022124 JSR L022150 BCS L022181 PEI $42 LDA L02218A PHA LDA L02218C PHA JSL L042D43 BRA L022187 L022139 JSR L022150 BCS L022181 SEP #$20 PHA AND #$0F STA $31 PLA LSR LSR LSR LSR STA $30 REP #$20 BRA L022187 L022150 SEP #$20 JSR L021309 BCS L022174 CMP #$A5 BNE L022174 JSR L022178 BCS L022174 ASL ASL ASL ASL STA L02218C JSR L022178 BCS L022174 ORA L02218C STA L02218C CLC HEX B0 L022174 SEC REP #$20 RTS MX %10 L022178 JSR L021309 SEC SBC #$B0 CMP #$02 RTS MX %00 L022181 LDA #$0001 JSR L020AB8 L022187 PLP CLC RTS L02218A DB $00 DB $00 L02218C DB $00 DB $00 L02218E PHP REP #$30 JSR L021339 BCC L022199 L022196 PLP CLC RTS L022199 STA L0221D7 JSR L021309 BCS L0221CB CMP #$00AC BEQ L0221AE LDA #$0001 JSR L020AB8 L0221AC BRA L022196 L0221AE JSR L021367 BCS L022196 LDX L0221D7 PEI $42 PHX PEA $0000 PHY PHA PEI $42 PHX JSL L042C85 JSL L042BC0 BRA L022196 L0221CB PEI $42 LDA L0221D7 PHA JSL L042C85 BRA L022196 L0221D7 DB $00 DB $00 L0221D9 PHP REP #$30 JSR L021339 BCC L0221E4 L0221E1 PLP CLC RTS L0221E4 STA L022330 STZ L022334 STZ L022336 JSR L021309 BCC L02221B LDA L022330 JSL L040586 STA L022332 CPY #$0000 BNE L02220F DEC STA L022332 INC L022330 CMP #$0002 BCC L0221E1 BRA L022244 L02220F CMP #$0005 BCS L0221E1 CMP #$0002 BCC L0221E1 BRA L022244 L02221B CMP #$00AC BEQ L022223 BRL L022323 L022223 JSR L021309 SEC SBC #$00B0 BNE L02222F BRL L022328 L02222F CMP #$0005 BCC L022237 BRL L022328 L022237 STA L022332 STZ L022334 LDA [$F8] AND #$00FF BNE L022280 L022244 LDY L022330 LDA [$3A],Y STA L022338 INY INY LDA [$3A],Y AND #$00FF STA L02233A LDA L022332 CMP #$0003 BCS L02226B PEI $42 LDA L022330 PHA JSL L042A5C STY L02233A L02226B LDA L02233A PHA LDA L022338 PHA JSL L042ABB STA L022338 STY L02233A BRL L0222FE L022280 JSR L02153D BCC L022288 BRL L022320 L022288 LDA [$F8] AND #$00FF CMP #$00AD BNE L02229B JSR L021309 LDA #$FFFF STA L022334 L02229B PEI $FA PEI $F8 LDX #$0002 JSL L0306BD PLX STX $F8 PLX STX $FA BCS L022323 BIT L022334 BPL L0222B7 EOR #$FFFF INC L0222B7 STA L022334 JSR L02153D BCS L022320 JSR L021339 BCS L022320 STA L022338 STY L02233A JSR L021309 BCS L0222FE CMP #$00AB BEQ L0222DF CMP #$00AD BNE L022323 LDA #$FFFF STA L022336 L0222DF PEI $FA PEI $F8 LDX #$0002 JSL L0306BD PLX STX $F8 PLX STX $FA BCS L022323 BIT L022336 BPL L0222FB EOR #$FFFF INC L0222FB STA L022336 L0222FE PEI $42 LDA L022330 PHA LDA L022332 PHA SEP #$20 LDA L022336 PHA LDA L022334 PHA REP #$20 LDY L02233A PHY LDA L022338 PHA JSL L043774 L022320 PLP CLC RTS L022323 LDA #$0001 BRA L02232B L022328 LDA #$0003 L02232B JSR L020AB8 BRA L022320 L022330 DB $00 DB $00 L022332 DB $00 DB $00 L022334 DB $00 DB $00 L022336 DB $00 DB $00 L022338 DB $00 DB $00 L02233A DB $00 DB $00 L02233C PHP REP #$30 JSR L021339 BCS L022385 STA L022388 JSR L021309 BCS L022373 CMP #$00AC BNE L02237F PEI $FA PEI $F8 LDX #$0002 JSL L0306BD PLX STX $F8 PLX STX $FA AND #$00FF TAX PEI $42 LDA L022388 PHA PHX JSL L042E01 BRA L022385 L022373 PEI $42 LDA L022388 PHA JSL L042ED4 BRA L022385 L02237F LDA #$0001 JSR L020AB8 L022385 PLP CLC RTS L022388 DB $00 DB $00 L02238A PHP REP #$30 JSR L021339 BCS L0223EB STA L022425 CPY $42 BNE L0223EB TAY INY LDA [$3A],Y STA L022429 PHA INY INY INY LDA [$3A],Y STA L022427 PHA JSL L042ABB BCS L0223EE STA L022427 STY L022429 PEI $42 LDA L022425 INC PHA PEA $0002 PEA $00F0 LDA L022429 PHA LDA L022427 PHA JSL L043774 PEI $42 LDA L022425 CLC ADC #$0004 PHA PEA $0002 PEA $0000 LDA L022429 PHA LDA L022427 PHA JSL L043774 L0223EB PLP CLC RTS L0223EE PEI $42 LDA L022425 INC PHA PEA $0002 PEA $00F0 LDA L022429 PHA LDA L022427 PHA JSL L043772 PEI $42 LDA L022425 CLC ADC #$0004 PHA PEA $0002 PEA $0000 LDA L022429 PHA LDA L022427 PHA JSL L043772 BRA L0223EB L022425 DB $00 DB $00 L022427 DB $00 DB $00 L022429 DB $00 DB $00 L02242B PHP REP #$30 JSR L021339 BCS L02248E CPY $42 BNE L02248E STA L0224C8 TAY INY LDA [$3A],Y STA L0224CA PHA INY INY INY LDA [$3A],Y STA L0224CC PLX PHA PHX JSL L042ABB BCS L022491 STA L0224CA STY L0224CC PEI $42 LDA L0224C8 INC PHA PEA $0002 PEA $0000 LDA L0224CC PHA LDA L0224CA PHA JSL L043774 PEI $42 LDA L0224C8 CLC ADC #$0004 PHA PEA $0002 PEA $00F0 LDA L0224CC PHA LDA L0224CA PHA JSL L043774 L02248E PLP CLC RTS L022491 PEI $42 LDA L0224C8 INC PHA PEA $0002 PEA $0000 LDA L0224CC PHA LDA L0224CA PHA JSL L043772 PEI $42 LDA L0224C8 CLC ADC #$0004 PHA PEA $0002 PEA $00F0 LDA L0224CC PHA LDA L0224CA PHA JSL L043772 BRA L02248E L0224C8 DB $00 DB $00 L0224CA DB $00 DB $00 L0224CC DB $00 DB $00 L0224CE PHP REP #$30 JSR L021339 BCS L02253B CPY $42 BNE L02253B STA L022570 TAY LDA [$3A],Y STA L022576 JSR L02153D BCS L02253B JSR L021339 BCS L02253B CPY $42 BNE L02253B STA L022572 TAY LDA [$3A],Y STA L022574 LDY L022576 PHY PHA JSL L042ABB BCS L02253E STA L022574 STY L022576 PEI $42 LDA L022570 PHA PEA $0002 PEA $00F0 LDA L022576 PHA LDA L022574 PHA JSL L043774 PEI $42 LDA L022572 PHA PEA $0002 PEA $0000 LDA L022576 PHA LDA L022574 PHA JSL L043774 L02253B PLP CLC RTS L02253E PEI $42 LDA L022570 PHA PEA $0002 PEA $00F0 LDA L022576 PHA LDA L022574 PHA JSL L043772 PEI $42 LDA L022572 PHA PEA $0002 PEA $0000 LDA L022576 PHA LDA L022574 PHA JSL L043772 BRA L02253B L022570 DB $00 DB $00 L022572 DB $00 DB $00 L022574 DB $00 DB $00 L022576 DB $00 DB $00 L022578 PHP REP #$30 STZ L0225D7 L02257E JSR L021309 BCS L0225BA JSR L022591 BCC L02257E L022588 LDA #$0001 JSR L020AB8 PLP CLC RTS L022591 CMP #$00C3 BNE L02259E LDA #$0001 TSB L0225D7 CLC RTS L02259E CMP #$00CC BNE L0225AB LDA #$0002 TSB L0225D7 CLC RTS L0225AB CMP #$00C4 BNE L0225B8 LDA #$0004 TSB L0225D7 CLC RTS L0225B8 SEC RTS L0225BA LDA L0225D7 BEQ L022588 LSR PHA BCC L0225C3 L0225C3 PLA LSR PHA BCC L0225D0 JSL L044A2D JSL L044A71 L0225D0 PLA LSR BCC L0225D4 L0225D4 PLP CLC RTS L0225D7 DB $00 DB $00 L0225D9 JSR L021339 BCS L02261B STA L022650 STY L02264E JSR L021309 BCS L022625 CMP #$00AC BNE L02261D SEP #$20 LDY #$0000 L0225F3 LDA [$F8],Y BEQ L0225FD STA L022653,Y INY BRA L0225F3 L0225FD SEP #$10 STY L022652 REP #$30 CPY #$0000 BEQ L02261D LDA L02264E PHA LDA L022650 PHA PEA ^L022652 PEA L022652 JSL L04386A L02261B CLC RTS L02261D LDA #$0000 JSR L020AB8 CLC RTS L022625 LDA L02264E EOR $42 BNE L02263A LDA L022650 PHA PEA $0001 PEA $0400 JSL L041015 L02263A LDA L02264E PHA LDA L022650 PHA PEA $0001 PEA $FF66 JSL L0435FB CLC RTS L02264E DB $00 DB $00 L022650 DB $00 DB $00 L022652 DB $00 L022653 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L02269B JSR L020D34 JSL L030314 ADR L0228A4 JSL L030314 ADR L0228F5 JSL L030035 DB $04 DB $15 DB $00 DB $4F JSR L021586 LDA L0215CD BNE L0226C5 INC L0215CD LDA #$0030 STA L0215CF L0226C5 PEA ^L022838 PEA L022838 PEA $2010 ; Open JSL GSOS2 BCC L0226D7 BRL L02275C L0226D7 LDA L02283A STA L022846 STA L022842 STZ L02284A STZ L02284C PEA ^L022844 PEA L022844 PEA $201C ; GetDirEntry JSL GSOS2 BCS L022759 LDA #$0001 STA L022832 LDA L022852 STA L022836 BEQ L02272F CMP #$0012 BCC L02270B LDA #$0012 L02270B STA L022834 LDA L022832 L022711 STA L02284C JSR L022824 BCS L022759 JSR L022946 LDA L02284C INC CMP L022834 BEQ L022727 BCS L02272F L022727 PHA JSL L0302D4 PLA BRA L022711 L02272F SEP #$20 L022731 JSL L03059F BCS L022731 XBA TAY XBA REP #$20 AND #$00FF CMP #$008D BEQ L022769 CMP #$009B BEQ L022769 CMP #$008A BEQ L022786 CMP #$008B BNE L02272F BRL L0227DA JSR L020AF7 L022759 JSR L022774 L02275C SEP #$20 STAL $E0C001 REP #$20 JSR L020AF7 BRA L02276C L022769 JSR L022774 L02276C JSR L020D34 JSR L021E04 CLC RTS L022774 PHP PHA PEA ^L022840 PEA L022840 PEA $2014 ; Close JSL GSOS2 PLA PLP RTS L022786 LDA L022834 CMP L022836 BCS L02272F TYA LSR BCC L0227B4 JSL L0300D1 LDA L022834 CLC ADC #$0012 CMP L022836 BCC L0227A7 LDA L022836 BRA L0227A7 L0227A7 STA L022834 SEC SBC #$0011 STA L022832 BRL L022711 L0227B4 LDA L022834 INC STA L022834 STA L02284C INC L022832 JSR L022824 BCS L022759 JSL L030139 LDX #$0000 LDY #$0015 L0227D0 JSL L0300E2 JSR L022946 BRL L02272F L0227DA LDA L022832 DEC BNE L0227E3 BRL L02272F L0227E3 TYA LSR BCC L022803 JSL L0300D1 LDA L022832 SEC SBC #$0012 BMI L0227F6 BNE L0227F9 L0227F6 LDA #$0001 L0227F9 STA L022832 CLC ADC #$0011 BRL L02270B L022803 LDA L022832 DEC STA L022832 STA L02284C DEC L022834 JSR L022824 BCC L022818 BRL L022759 L022818 JSL L030193 LDX #$0000 LDY #$0004 BRA L0227D0 L022824 PEA ^L022844 PEA L022844 PEA $201C ; GetDirEntry JSL GSOS2 RTS L022832 DB $00 DB $00 L022834 DB $00 DB $00 L022836 DB $00 DB $00 L022838 DW $0002 ; Parms for Open L02283A DW $0000 ; ref num ADRL L0215CD ; path name L022840 DW $0001 ; Parms for Close L022842 DW $0000 ; ref num L022844 DW $0011 ; Parms for GetDirEntry L022846 DW $0000 ; ref num DW $0000 ; flags L02284A DW $0000 ; base L02284C DW $0000 ; displacement ADRL L022882 ; file name L022852 DW $0000 ; entry num L022854 DW $0000 ; file type L022856 ADRL $00000000 ; end of file L02285A ADRL $00000000 ; blocks used DS 8 ; creation date L022866 DS 8 ; modification date DW $0000 ; access L022870 ADRL $00000000 ; aux type DW $0000 ; file system ADRL $00000000 ; option list L02287A ADRL $00000000 ; resource eof L02287E ADRL $00000000 ; resource blocks L022882 DW $0020 L022884 DB $00 L022885 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L0228A4 STR " Name Type Blocks| Rez Last modif Length| Rez Auxtype"8D *L0228F5 STR " LLLL LLLL LLLLLLLLLLLL LLLLLLLLLL LLLLLLLLLLLLLL LLLLLLL " L0228F5 DB $50 HEX A04C4C4C4CA0A0A0A0A0A0A0A0A0A0A0 HEX A04C4C4C4CA0A04C4C4C4C4C4C4C4C4C HEX 4C4C4CA0A0A0A0A04C4C4C4C4C4C4C4C HEX 4C4CA0A0A0A0A0A04C4C4C4C4C4C4C4C HEX 4C4C4C4C4C4C4CA0A04C4C4C4C4C4CA0 L022946 PHP SEP #$30 LDX L022884 STX L022885 L02294F LDA L022885,X ORA #$80 STA L022885,X DEX BNE L02294F JSL L0300EE LDX #$01 JSL L0300E2 JSL L030314 ADR L022885 STZ L022885 JSL L0300EE LDX #$12 JSL L0300E2 LDX L022C57 LDA L022854 L02297E CMP L022C57,X BEQ L0229A0 DEX BNE L02297E PHA LDA #$A4 JSL L03022D PLA JSL L030837 XBA PHA XBA JSL L03022D PLA JSL L03022D BRA L0229C2 L0229A0 REP #$30 DEX TXA PHA ASL ADC $01,S STA $01,S PLA TAX SEP #$20 LDY #$0003 L0229B1 LDA L022C84,X PHY PHX JSL L03022D PLX PLY INX DEY BNE L0229B1 SEP #$10 L0229C2 JSL L0300EE LDX #$18 JSL L0300E2 REP #$30 LDA L02285A JSR L022B58 LDX #$0005 JSR L022AE5 LDA #$00A0 JSL L0301F9 LDA L02287E JSR L022B58 LDX #$0005 JSR L022AE5 SEP #$30 JSL L0300EE LDX #$26 JSL L0300E2 LDX #$07 L0229FB LDA L022866,X STA L022AAC,X DEX BPL L0229FB JSR L022A4D JSL L0300EE LDX #$37 JSL L0300E2 REP #$30 LDY L022856+2 LDA L022856 LDX #$0006 JSR L022BD4 JSL L0302E1 STR " " LDY L02287A+2 LDA L02287A LDX #$0006 JSR L022BD4 JSL L0300EE LDX #$004A JSL L0300E2 LDA #$00A4 JSL L03022D LDA L022870 PHA JSL L030670 PLP RTS L022A4D PHP REP #$30 LDA L022AB0 INC JSR L022AD8 SEP #$30 LDA #$AD JSL L03022D LDA L022AB1 PHA ASL ADC $01,S STA $01,S PLX LDY #$03 L022A6B LDA L022AB4,X PHY PHX JSL L03022D PLX PLY INX DEY BNE L022A6B LDA #$AD JSL L03022D REP #$30 LDA L022AAF JSR L022AD8 LDA #$00A0 JSL L03022D LDA L022AAE JSR L022AD8 LDA #$00BA JSL L03022D LDA L022AAD AND #$00FF JSR L022B58 PHA JSL L03065A PLP RTS L022AAC DB $00 L022AAD DB $00 L022AAE DB $00 L022AAF DB $00 L022AB0 DB $00 L022AB1 DB $00 DB $00 DB $00 L022AB4 ASC "JAN" ASC "FEB" ASC "MAR" ASC "APR" ASC "MAY" ASC "JUN" ASC "JUL" ASC "AUG" ASC "SEP" ASC "OCT" ASC "NOV" ASC "DEC" L022AD8 AND #$00FF JSR L022B58 LDX #$0002 JSR L022AFC RTS L022AE5 CMP #$0000 BNE L022AFC CPY #$0000 BNE L022AFC L022AEF PHX LDA #$00A0 JSL L03022D PLX DEX BNE L022AEF RTS L022AFC PHA LSR L022B54 DEX STX L022B52 CPX #$0004 BCS L022B17 L022B09 CPX #$0003 BEQ L022B1E PLA ASL ASL ASL ASL PHA INX BRA L022B09 L022B17 TYA L022B18 JSL L030823 BRA L022B2F L022B1E PLA LDX #$0004 L022B22 ASL ROL L022B56 DEX BNE L022B22 PHA LDA L022B56 BRA L022B18 L022B2F DEC L022B52 BMI L022B47 BIT L022B54 BMI L022B47 CMP #$00B0 BNE L022B43 LDA #$00A0 BRA L022B47 L022B43 SEC ROR L022B54 L022B47 JSL L03022D BIT L022B52 BPL L022B1E PLA RTS L022B52 DB $00 DB $00 L022B54 DB $00 DB $00 L022B56 DB $00 DB $00 L022B58 STA L022B8E STZ L022B92 STZ L022B90 LDX #$0000 L022B64 LSR L022B8E BCC L022B7E SED CLC LDA L022B94,X ADC L022B90 STA L022B90 LDA L022B94+2,X ADC L022B92 STA L022B92 CLD L022B7E INX INX INX INX CPX #$0040 BCC L022B64 LDY L022B92 LDA L022B90 RTS L022B8E DB $00 DB $00 L022B90 DB $00 DB $00 L022B92 DB $00 DB $00 L022B94 ADRL $00000001 ADRL $00000002 ADRL $00000004 ADRL $00000008 ADRL $00000016 ADRL $00000032 ADRL $00000064 ADRL $00000128 ADRL $00000256 ADRL $00000512 ADRL $00001024 ADRL $00002048 ADRL $00004096 ADRL $00008192 ADRL $00016384 ADRL $00032768 MX %00 L022BD4 CMP #$0000 BNE L022BEB CPY #$0000 BNE L022BEB L022BDE PHX LDA #$00A0 JSL L03022D PLX DEX BPL L022BDE RTS L022BEB DEX STX L022C4F STY L022C55 STA L022C53 L022BF5 CPX #$0007 BEQ L022C10 ASL ROL L022C55 ASL ROL L022C55 ASL ROL L022C55 ASL ROL L022C55 STA L022C53 INX BRA L022BF5 L022C10 LSR L022C51 L022C13 LDX #$0004 L022C16 ASL L022C53 ROL L022C55 ROL DEX BNE L022C16 JSL L030823 BIT L022C51 BMI L022C45 CMP #$00B0 BNE L022C38 LDY L022C4F BEQ L022C38 LDA #$00A0 BRA L022C45 L022C38 PHA LDA #$00A4 JSL L03022D PLA SEC ROR L022C51 L022C45 JSL L03022D DEC L022C4F BPL L022C13 RTS L022C4F DB $00 DB $00 L022C51 DB $00 DB $00 L022C53 DB $00 DB $00 L022C55 DB $00 DB $00 L022C57 DB $2C DB $00 DB $04 DB $06 DB $0F DB $B3 DB $FF DB $F8 DB $FC DB $C9 DB $CA DB $B0 DB $B1 DB $B2 DB $B4 DB $B5 DB $B6 DB $B7 DB $B8 DB $B9 DB $BA DB $BB DB $BC DB $BD DB $C7 DB $F9 DB $FA DB $FB DB $FD DB $FE DB $C0 DB $C1 DB $E0 DB $01 DB $5A DB $19 DB $1A DB $1B DB $FE DB $07 DB $D5 DB $D6 DB $D7 DB $D8 DB $5E L022C84 ASC "UNKTXTBINDIRS16SYSLNKBASFNDICNSRCOBJLIBR" ASC "TLEXEPIFTIFNDACDATOLDRVTLKFSTCDVOS INTIV" ASC "RVARRELPNTPICLBRBADCFGADBAWPASPRELFNTMUS" ASC "INSMDISNDDVU" *--- Command SRC (20) L022D08 PHP ; 20 SRC SEP #$20 REP #$10 JSR L022F65 BCC L022D15 BRL L022DB7 L022D15 LDX #$0000 L022D18 JSR L021309 BCS L022D25 AND #$7F STA L02331D+2,X INX BNE L022D18 L022D25 REP #$20 CPX #$0000 BEQ L022D37 LDA #$532E ; .S STA L02331D+2,X INX INX STX L02331D L022D37 JSR L022E10 ; create file BCC L022D3F BRL L022DB7 L022D3F JSR L0233DD LDX #$0024 LDY #$000D JSL L0300E2 LDA L0230B5 PHA JSL L030670 LDA L0230C5 XBA STA L0230C5 CLC ADC L02338F STA L02338F PEA ^L0230C5 PEA L0230C5 LDA L0230B1 PHA LDA L0230AF PHA JSL L030852 STZ L0230C5 CLC LDA L0230BD ADC L0230B5 STA L0230B5 BCS L022D9A BIT L0230B9 BMI L022D8D CMP L0230B7 BCS L022D9A L022D8D LDA L02338F ; length of source CMP #$BF00 BCC L022D98 BRL L022F28 ; must create another file because it is a big source file L022D98 BRA L022D3F L022D9A JSL GSOS DW $2013 ; Write ADRL L023387 BCS L022DBD JSR L022DC5 ; GetMark + Close BCC L022DAE BRL L022E34 L022DAE JSR L0239B0 JSR L02308D ; disposehandle JSR L023AF9 L022DB7 JSR L023079 PLP CLC RTS L022DBD JSR L022DE7 JSR L020AF7 BRA L022DB7 L022DC5 JSL GSOS DW $2017 ; GetMark ADRL L0233C7 BCS L022DE7 LDA L0233CB ; position STA L0233D5 ; eof LDA L0233CB+2 ; position+2 STA L0233D5+2 ; eof+2 JSL GSOS DW $2018 ; SetEOF ADRL L0233CF L022DE7 PHP PHA * AV 202010 - Output one or more source files? lda fgOUTPUT bne L022DE8 JSL GSOS DW $2014 ; Close ADRL L0233D9 L022DE8 PLA PLP RTS L022DF6 JSL GSOS DW $2006 ; GetFileInfo ADRL L023375 BCS L022E0F LDA L02337D SEC SBC #$0004 CMP #$0001 LDA #$0000 L022E0F RTS *--- Create file L022E10 JSL GSOS DW $2001 ; Create ADRL L023367 BCC L022E39 CMP #$0047 BNE L022E34 JSR L022DF6 BCC L022E39 CMP #$0000 BNE L022E34 LDA #$000D JSR L020AB8 BRL L022DB7 L022E34 JSR L020AF7 SEC RTS L022E39 JSL GSOS DW $2010 ; Open ADRL L02337F BCS L022E34 LDA L023381 STA L023389 STA L023399 STA L0233A9 STA L0233B9 STA L0233C9 STA L0233D1 STA L0233DB LDA L0230B3 ; first pass? BNE L022E65 ; no JSR L022E67 ; yes, write header L022E65 CLC RTS *--- Output Disassembled with the Flaming Bird Disassembler L022E67 JSL GSOS DW $2013 ; Write ADRL L023397 STZ L0230C5 LDA L0283CA BEQ L022E8B PEA ^L022F16 PEA L022F16 PEA ^L0230C6 PEA L0230C6 JSL L0307DD BRA L022EE6 L022E8B LDA #$B0A4 STA L022F1C+6 LDA L028451 AND #$00FF PHA PHA PHA PHA _HexIt PLA PLA ORA #$8080 STA L022F1C+7 LDA L022C57 AND #$00FF TAX PLA SEP #$20 L022EB4 CMP L022C57,X BEQ L022EBE DEX BNE L022EB4 BRA L022ED4 L022EBE REP #$20 DEX TXA PHA ASL ADC $01,S PLX TAX LDA L022C84,X STA L022F1C+6 LDA L022C84+1,X STA L022F1C+7 L022ED4 REP #$20 PEA ^L022F1C PEA L022F1C PEA ^L0230C6 PEA L0230C6 JSL L0307DD L022EE6 PEA ^L022F26 PEA L022F26 PEA ^L0230C6 PEA L0230C6 JSL L0307DD LDA L0230C5 XBA STA L0230C5 STA L02338F PEA ^L0230C5 PEA L0230C5 LDA L0230B1 PHA LDA L0230AF PHA JSL L030852 STZ L0230C5 RTS L022F16 STR " REL"8D L022F1C STR " TYP $00"8D L022F26 STR 8D *--- Write L022F28 JSL GSOS DW $2013 ; Write ADRL L023387 BCC L022F37 BRL L022DBD L022F37 JSR L022DC5 ; GetMark + close BCC L022F3F BRL L022E34 * AV 202010 - Shall we output one or more files? L022F3F lda fgOUTPUT ; one file? beq L022F40 ; no, multiple jsr L023064 ; yes, deref brl L022D3F ; loop there if one file L022F40 LDX L02331D LDA L0230B3 ; is that first pass? BNE L022F4C LDA #$312E ; .1 INX INX L022F4C CLC ADC #$0100 STA L0230B3 STA L0232E9+$32,X LDA #$532E ; .S STA L02331D,X STX L02331D ; save counter JSR L023064 ; deref BRL L022D37 ; loop L022F65 PHP SEP #$20 REP #$10 LDX #$0157 L022F6D LDA L0231C5,X CMP #$A0 BNE L022F79 AND #$7F STA L0231C5,X L022F79 DEX BNE L022F6D REP #$30 STZ L0230B5 LDA $3E STA L0230B7 LDA $5C STA L0230B9 LDA [$F8] AND #$007F CMP #$005B BNE L022FB5 STZ L0230B9 JSR L021525 BCC L022FA0 BRL L023061 L022FA0 PHX JSL L0416F3 STA L0230B5 PLX STX L0230B7 BNE L022FB2 DEX STX L0230B9 L022FB2 JSR L020F52 L022FB5 JSL L03074E DB $09 DB $0F DB $18 DB $37 LDX #$001E LDY #$000B JSL L0300E2 JSL L0302E1 STR "Generating source..." LDX #$0023 LDY #$000D JSL L0300E2 JSL L0302E1 STR "$0000/$" SEC LDA L0230B7 SBC L0230B5 INC PHA JSL L030670 JSL L0424A8 LDA #$0000 PHA PHA PEA $0000 PEA $C000 PEI $FC PEA $8008 PHA PHA _NewHandle PLX PLY BCS L02305B STY L0230AD STX L0230AB TYA XBA PHB PHA PLB PLB LDA |$0000,X STAL L0230AF LDA |$0002,X STAL L0230B1 PLB CLC LDA L0230AF ADC #$0002 STA L02338B LDA L0230B1 ADC #$0000 STA L02338B+2 JSR L023064 STZ L0230B3 PLP CLC RTS L02305B LDA #$0000 JSR L020AB8 L023061 PLP SEC RTS L023064 LDA L0230B1 LDX L0230AF PHB PHA PLB LDA #$0000 STA |$0000,X PLB PLB STZ L02338F RTS L023079 PHP REP #$30 JSR L02308D JSL L030035 DB $02 DB $15 DB $00 DB $4F JSL L0300D1 PLP RTS L02308D LDA L0230AD ORA L0230AB BEQ L0230AA LDA L0230AD PHA LDA L0230AB PHA _DisposeHandle STZ L0230AD STZ L0230AB L0230AA RTS L0230AB DB $00 DB $00 L0230AD DB $00 DB $00 L0230AF DB $00 DB $00 L0230B1 DB $00 DB $00 L0230B3 DB $00 DB $00 L0230B5 DB $00 DB $00 L0230B7 DB $00 DB $00 L0230B9 DB $00 DB $00 L0230BB DB $00 DB $00 L0230BD DB $00 DB $00 L0230BF DB $00 DB $00 L0230C1 DB $00 DB $00 L0230C3 DB $00 DB $00 L0230C5 DB $00 L0230C6 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L0231C5 DB $00 L0231C6 ASC 8D ASC "*---------------------------------------------------------*"8D ASC "* Disassembled with The Flaming Bird Disassembler *"8D ASC "* (c) Phoenix corp. 1992,93 - All rights reserved *"8D ASC "*---------------------------------------------------------*"8D8D L0232B8 ASC 8D ASC "* TFBD generated equates"8D ASC "* (c) PHC 1992,93"8D8D8D L0232E9 ASC 8D ASC "* TFBD generated externals"8D ASC "* (c) PHC 1992,93"8D8D8D L02331D STRL '0:Source.S' DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L023367 DW $0004 ; Parms for Create ADRL L02331D ; file name DW $00E3 ; access DW $0004 ; file type ADRL $00000000 ; aux type L023375 DW $0003 ; Parms for GetFileInfo ADRL L02331D ; file name DW $0000 ; access L02337D DW $0000 ; file type L02337F DW $0002 ; Parms for Open L023381 DW $0000 ; ref num ADRL L02331D ; path name L023387 DW $0004 ; Parms for Write L023389 DW $0000 ; ref num L02338B ADRL $00000000 ; buffer ptr L02338F ADRL $00000000 ; request count ADRL $00000000 ; transfer count L023397 DW $0004 ; Parms for Write L023399 DW $0000 ; ref num ADRL L0231C6 ; buffer ptr ADRL $000000F2 ; request count ADRL $00000000 ; transfer count L0233A7 DW $0004 ; Parms for Write L0233A9 DW $0000 ; ref num ADRL L0232B8 ; buffer ptr ADRL $00000031 ; request count ADRL $00000000 ; transfer count L0233B7 DW $0004 ; Parms for Write L0233B9 DW $0000 ; ref num ADRL L0232E9 ; buffer ptr ADRL $00000034 ; request count ADRL $00000000 ; transfer count L0233C7 DW $0002 ; Parms for GetMark L0233C9 DW $0000 ; ref num L0233CB ADRL $00000000 ; position L0233CF DW $0003 ; Parms for SetEOF L0233D1 DW $0000 ; ref num DW $0000 ; base L0233D5 ADRL $00000000 ; displacement L0233D9 DW $0001 ; Parms for Close L0233DB DW $0000 ; ref num L0233DD STZ L0230C6 LDA L0230B5 PHA JSL L041719 LDA $01,S JSL L0410BB STA L0230BB PLA JSL L040586 STY L0230BF STA L0230BD LDA #$8080 AND L0230BB CMP #$8000 BEQ L023413 JSR L0234CF JSR L023527 JSR L02356B JSR L0235A0 L023413 JSR L0235BC JSR L023671 JSR L023465 JSR L023423 JSR L02348D RTS L023423 PHP REP #$30 LDA L0230BB BMI L02344C LDY L0230B5 SEP #$20 LDA [$3A],Y JSR L02344E BCS L02344C REP #$20 TYA ADC L0230BD TAY SEP #$20 LDA [$3A],Y JSR L02344E BCC L02344C REP #$20 JSR L0234A9 L02344C PLP RTS L02344E LDX #$0007 L023451 CMP L02345D,X BEQ L02345B DEX BPL L023451 SEC RTS L02345B CLC RTS L02345D DB $60 DB $40 DB $6B DB $4C DB $5C DB $6C DB $7C DB $DC L023465 LDA L0230BB BIT #$0400 BEQ L023489 JSR L0234A4 LDA #$00BB JSR L0234BE JSR L0234A4 PEI $42 LDA L0230B5 PHA PEA ^L0230C6 PEA L0230C6 JSL L04392C L023489 JSR L0234A9 RTS L02348D SEP #$30 LDX L0230C6 L023492 LDA L0230C6,X ORA #$80 CMP #$A0 BEQ L02349E STA L0230C6,X L02349E DEX BNE L023492 REP #$30 RTS L0234A4 LDA #$00A0 BRA L0234BE L0234A9 LDA #$008D BRA L0234BE L0234AE PHY PHP JSL L030837 REP #$30 PHA JSR L0234BE PLA XBA PLP PLY L0234BE PHY PHP SEP #$30 LDX L0230C6 INX STA L0230C6,X STX L0230C6 PLP PLY RTS MX %00 L0234CF LDA L0230BB L0234D2 BIT #$0018 BEQ L023521 PHA PEA ^L023522 PEA L023522 PEA ^L0230C6 PEA L0230C6 JSL L0307DD PLA BIT #$0008 BEQ L023502 AND #$FFF7 PHA JSR L0234A9 PLA BIT #$0010 BEQ L023521 PHA JSR L0234A4 PLA BRA L0234D2 L023502 JSR L0234A4 PEI $42 LDA L0230B5 PHA JSL L042D12 PHY PHA PEA $0003 PEA ^L0230C6 PEA L0230C6 JSL L044315 JSR L0234A9 L023521 RTS L023522 STR " ORG" L023527 LDA L0230BB BIT #$0001 BEQ L023543 LDY L0230B5 LDA [$3A],Y AND #$00DF CMP #$00C2 BNE L023544 LDA [$3A],Y AND #$3000 BEQ L023544 L023543 RTS L023544 PEA ^L023565 PEA L023565 PEA ^L0230C6 PEA L0230C6 JSL L0307DD PEI $42 LDA L0230B5 PHA JSL L042DD9 JSR L0234AE JSR L0234A9 RTS L023565 STR " MX %" L02356B LDA L0230BB BIT #$2000 BEQ L023599 PEI $42 LDA L0230B5 PHA PEA ^L0230C6 PEA L0230C6 JSL L0428B4 PEA ^L02359A PEA L02359A PEA ^L0230C6 PEA L0230C6 JSL L0307DD LDA #$6000 TRB L0230BB L023599 RTS L02359A STR " ENT"8D L0235A0 LDA L0230BB BIT #$4000 BEQ L0235B8 PEI $42 LDA L0230B5 PHA PEA ^L0230C6 PEA L0230C6 JSL L0428B4 L0235B8 JSR L0234A4 RTS L0235BC LSR L0230C1 LSR L0230C3 LDA L0230BB BMI L023620 LDY L0230B5 LDA [$3A],Y AND #$00FF CMP #$00A2 BNE L023607 INY INY INY LDA [$3A],Y CMP #$0022 BNE L0235FF INY INY LDA [$3A],Y CMP #$E100 BNE L0235FF LDY L0230B5 INY LDA [$3A],Y PHA PEA ^L0230C6 PEA L0230C6 JSL L044C72 BCS L0235FF SEC ROR L0230C1 RTS L0235FF LDY L0230B5 LDA [$3A],Y AND #$00FF L023607 PHA PHA PEA ^L0230C6 PEA L0230C6 JSL L0403B6 PLA AND #$00EF CMP #$0044 BNE L02361F ROR L0230C3 L02361F RTS L023620 LDA L0230BB BIT #$0080 BNE L02362B JSR L0234A4 L02362B LDA L0230BF AND #$001F TAY LDX #$0000 SEP #$20 L023637 DEY BMI L023644 L02363A INX LDAL L040326,X BMI L02363A INX BRA L023637 L023644 LDAL L040326,X PHA PHX JSR L023658 JSR L0234BE PLX INX PLA BMI L023644 REP #$20 RTS MX %10 L023658 PHA LDA $5F AND #$20 BEQ L02366F LDA $01,S AND #$7F CMP #$41 BCC L02366F CMP #$5B BCS L02366F PLA ORA #$20 RTS L02366F PLA RTS MX %00 L023671 LDA L0230BB BMI L0236D7 BIT L0230C1 BMI L0236C2 LDA L0230BD DEC BEQ L0236C2 JSR L0234A4 PEI $42 LDY L0230B5 INY PHY BIT L0230C3 BPL L02369B PEA ^L0230C6 PEA L0230C6 JSL L045887 RTS L02369B PHA STZ L0236C3 PEA ^L0236C3 PEA L0236C3 JSL L04397A LDY L0230B5 LDA [$3A],Y AND #$00FF PHA PEA ^L0236C3 PEA L0236C3 PEA ^L0230C6 PEA L0230C6 JSL L040456 L0236C2 RTS L0236C3 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L0236D7 LDA L0230BD BEQ L0236C2 JSR L0234A4 LDA L0230BF AND #$001F ASL TAX JMP (L0236EA,X) L0236EA DA L023711 DA L023726 DA L02372D DA L023711 DA L023711 DA L023711 DA L023745 DA L02379C DA L0237C4 DA L023947 DA L023839 DA L023822 DA L02370C DA L02370C DA L02385B DA L02386B DA L02370D L02370C RTS L02370D DEC L0230C6 RTS L023711 PEI $42 LDA L0230B5 PHA LDA L0230BD PHA PEA ^L0230C6 PEA L0230C6 JSL L04397A RTS L023726 LDY L0230B5 LDA [$3A],Y BRA L023733 L02372D LDY L0230B5 LDA [$3A],Y XBA L023733 PEA $0000 PHA PEA $0002 PEA ^L0230C6 PEA L0230C6 JSL L044315 RTS L023745 CLC LDA L0230B5 ADC $3A PHA PHA LDA #$0000 ADC $3C STA $03,S PEA ^L02377D PEA L02377D JSL L040D34 SEP #$30 LDA #$A2 JSR L0234BE LDX #$00 L023767 LDA L02377E,X PHX JSR L0234BE PLX INX CPX L02377D BCC L023767 LDA #$A2 JSR L0234BE REP #$30 RTS L02377D DB $00 L02377E DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L02379C LDA L0230BD CMP #$0011 BCC L0237AA LDA #$0010 STA L0230BD L0237AA STA L0237C2 LDY L0230B5 L0237B0 SEP #$20 LDA [$3A],Y PHY JSR L0234AE PLY INY REP #$20 DEC L0237C2 BNE L0237B0 RTS L0237C2 DW $0000 L0237C4 LDA L0230BD PHA CMP #$000A BCC L0237D3 LDA #$00A4 JSR L0234BE L0237D3 LSR L023820 PLA LDX #$0004 L0237DA PHX LDX #$0004 L0237DE ASL ROL L02381E DEX BNE L0237DE PHA LDA L02381E JSL L030823 BIT L023820 BMI L0237FA CMP #$00B0 BEQ L0237FD ROR L023820 L0237FA JSR L0234BE L0237FD PLA PLX DEX BNE L0237DA LDY L0230B5 LDA [$3A],Y AND #$00FF BEQ L02381D PHA LDA #$00AC JSR L0234BE LDA #$00A4 JSR L0234BE PLA JSR L0234AE L02381D RTS L02381E DB $00 DB $00 L023820 DB $00 DB $00 L023822 LDA #$FFFF STA L0238B3 CLC LDA L0230B5 ADC L0230BD DEC TAY LDA L0230BD STA L0238B5 BRA L02387C L023839 LDY L0230B5 LDA L0230BD STA L0238B5 STZ L0238B3 CMP #$0001 BNE L02387C LDA [$3A],Y PHA EOR #$0080 STA [$3A],Y PHY JSR L023893 PLY PLA STA [$3A],Y RTS L02385B LDY L0230B5 LDA [$3A],Y STA L0238B5 BEQ L023880 INY STZ L0238B3 BRA L02387B L02386B LDY L0230B5 LDA [$3A],Y AND #$00FF STA L0238B5 BEQ L023880 STZ L0238B3 L02387B INY L02387C JSR L023893 RTS L023880 SEP #$10 LDX L0230C6 INX LDA #$A7A7 STA L0230C6,X INX STX L0230C6 REP #$10 RTS L023893 SEP #$20 JSR L0238D2 BCS L0238B0 JSR L0238BA STA L0238B9 JSR L0234BE JSR L0238F6 PHP LDA L0238B9 JSR L0234BE PLP BCC L023893 L0238B0 REP #$20 RTS L0238B3 DB $00 DB $00 L0238B5 DB $00 DB $00 L0238B7 DB $00 DB $00 L0238B9 DB $00 MX %10 L0238BA PHY L0238BB LDA [$3A],Y AND #$7F CMP #$20 BCS L0238C6 INY BNE L0238BB L0238C6 LDA [$3A],Y BPL L0238CE LDA #$A2 PLY RTS L0238CE LDA #$A7 PLY RTS L0238D2 LDA [$3A],Y AND #$7F CMP #$20 BCC L0238DC CLC RTS L0238DC LDA [$3A],Y PHY JSR L0234AE PLY INY BIT L0238B3 BPL L0238EB DEY DEY L0238EB REP #$20 DEC L0238B5 SEP #$20 BNE L0238D2 SEC RTS L0238F6 REP #$20 LDA #$FFFF STA L0238B7 L0238FE SEP #$20 LDA [$3A],Y ORA #$80 CMP #$A0 BCS L023909 RTS L023909 BNE L02390F AND #$7F BRA L023926 L02390F CMP L0238B9 BNE L023926 PHY PHA JSR L0234BE PLA PHA CMP #$A7 BNE L023921 AND #$7F L023921 JSR L0234AE PLA PLY L023926 PHY JSR L0234BE PLY INY BIT L0238B3 BPL L023933 DEY DEY L023933 REP #$20 DEC L0238B5 BEQ L023943 DEC L0238B7 BNE L0238FE SEP #$20 CLC RTS L023943 SEP #$20 SEC RTS L023947 STZ L0238B3 LDA L0230BD STA L0238B5 SEP #$20 LDY L0230B5 JSR L0238D2 BCS L023984 CPY L0230B5 BNE L023987 JSR L0238BA STA L0238B9 JSR L0234BE REP #$20 LDA #$0028 STA L0238B7 SEP #$20 JSR L0238FE PHP LDA L0238B9 JSR L0234BE PLP BCS L023984 JSR L0238D2 BCC L023987 L023984 REP #$20 RTS L023987 REP #$20 TYA SEC SBC L0230B5 STA L0230BD RTS L023992 DB $00 DB $00 L023994 DB $00 DB $00 L023996 DB $00 DB $00 L023998 DB $00 DB $00 L02399A DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $E1 DB $00 DB $E0 DB $00 DB $01 DB $00 DB $00 DB $00 L0239A8 STRL " EQU $" L0239B0 JSL L044C3E BCC L0239B7 RTS L0239B7 JSL L0300D1 LDX #$001B LDY #$000C JSL L0300E2 JSL L0302E1 STR "Generating Equates file..." JSR L023064 LDY #$000C L0239EA STY L023992 PHY JSL L044C3E PLY LDA [$CA],Y CLC ADC $CA STA $CA BCC L0239FE INC $CC L0239FE LDY #$0000 L023A01 LDA [$CA],Y BNE L023A08 BRL L023AAC L023A08 STA L023994 INY INY LDA [$CA],Y BIT #$8000 BNE L023A17 BRL L023A9C L023A17 INY LDA [$CA],Y PHY PHA XBA AND #$00FF STA [$CA],Y CLC ADC #$000B ADC L02338F STA L02338F STY L023998 PEA ^L0239A8 PEA L0239A8 LDY L0230B1 PHY LDX L0230AF PHX PEI $CC LDY L023998 TYA CLC ADC $CA PHA BCC L023A4E LDA $03,S INC STA $03,S L023A4E LDY L0230B1 PHY PHX JSL L030852 JSL L030852 LDX L023992 LDA L02399A,X BEQ L023A73 LDY L0230B1 LDX L0230AF JSL L0308AF INC L02338F INC L02338F L023A73 LDY L0230B1 LDX L0230AF PHY PHX LDA L023994 JSL L0308D1 PHD TSC TCD LDA [$03] INC STA [$03] INC TAY LDA #$008D STA [$03],Y PLD PLX PLY PLA PLY STA [$CA],Y INC L023996 DEY L023A9C INY INY LDA [$CA],Y AND #$00FF PHY SEC ADC $01,S PLY TAY BRL L023A01 L023AAC LDY L023992 DEY DEY CPY #$0006 BCC L023AB9 BRL L0239EA L023AB9 LDA L023996 BNE L023ABF RTS L023ABF LDX L02331D LDA L0230B3 BNE L023AC9 INX INX L023AC9 LDA #$452E ; .E STA L0232E9+$32,X LDA #$532E ; .S STA L02331D,X STX L02331D INC L0230B3 JSR L022E10 ; create file BCC L023AE1 RTS L023AE1 JSL GSOS DW $2013 ; Write ADRL L0233A7 JSL GSOS DW $2013 ; Write ADRL L023387 JSR L022DC5 RTS L023AF9 JSL L0300D1 LDX #$001C LDY #$000C JSL L0300E2 JSL L0302E1 STR "Generating Externals..." PEI $42 JSL L0456A6 BCC L023B2C RTS L023B2C CMP #$0000 BEQ L023B81 STA L02338F STZ L02338F+2 PHY PHX JSR L023EF2 STX L02338B STY L02338B+2 LDX L02331D LDA L0230B3 BNE L023B4C INX INX L023B4C LDA #$582E ; .X STA L0232E9+$32,X LDA #$532E STA L02331D,X STX L02331D INC L0230B3 JSR L022E10 ; create file BCS L023B7A JSL GSOS DW $2013 ; Write ADRL L0233B7 JSL GSOS DW $2013 ; Write ADRL L023387 JSR L022DC5 L023B7A _DisposeHandle L023B81 RTS L023B82 STZ L023CC2 LDA [$F8] AND #$00FF CMP #$00AB BNE L023B9E INC $F8 JSR L021564 CMP #$0080 BCS L023BEC STA L023CC2 BRA L023BB4 L023B9E CMP #$00AD BNE L023BB9 INC $F8 JSR L021564 CMP #$0081 BCS L023BEC EOR #$FFFF INC STA L023CC2 L023BB4 JSR L02153D BCS L023BF2 L023BB9 JSR L021339 BCS L023BF2 STA L023CBA CPY $42 BNE L023BEC JSR L02153D BCS L023BF2 JSR L021564 STA L023CC0 LDA [$F8] AND #$00FF BNE L023BF4 LDA #$FFFF STA L023CB8 PEI $42 LDA L023CBA PHA JSL L042A5C STY L023CB2 BRA L023C07 L023BEC LDA #$0003 JSR L020AB8 L023BF2 CLC RTS L023BF4 JSR L02153D BCS L023BF2 STZ L023CB8 JSR L021367 BCS L023BF2 STA L023CB0 STY L023CB2 L023C07 LDA L023CBA JSL L041993 STA L023CBC CMP #$0004 BCC L023C19 LDA #$0003 L023C19 STA L023CBE LDX #$0000 LDY L023CBA SEP #$20 L023C24 LDA [$3A],Y STA L023CB4,X INY INX CPX L023CBE BNE L023C24 L023C30 STZ L023CB4,X INX CPX #$0004 BNE L023C30 REP #$20 BIT L023CB8 BPL L023C52 LDA L023CBE CMP #$0002 BCC L023C9A BNE L023C65 LDA L023CB2 STA L023CB6 BRA L023C65 L023C52 SEP #$20 LDX L023CBE L023C57 CPX #$0003 BEQ L023C65 LDA L023CB0,X STA L023CB4,X INX BRA L023C57 L023C65 REP #$30 PEI $42 LDA L023CBA PHA LDA L023CBE PHA SEP #$20 LDA L023CC2 PHA LDA #$00 PHA REP #$20 LDA L023CB6 PHA L023C80 LDA L023CB4 SEC SBC L023CC2 PHA JSL L042ABB PHY PHA BCS L023C96 JSL L043774 BRA L023C9A L023C96 JSL L043772 L023C9A CLC LDA L023CBA ADC L023CBC STA L023CBA BCS L023CAE DEC L023CC0 BEQ L023CAE BRL L023C07 L023CAE CLC RTS L023CB0 DB $00 DB $00 L023CB2 DB $00 DB $00 L023CB4 DB $00 DB $00 L023CB6 DB $00 DB $00 L023CB8 DB $00 DB $00 L023CBA DB $00 DB $00 L023CBC DB $00 DB $00 L023CBE DB $00 DB $00 L023CC0 DB $00 DB $00 L023CC2 DB $00 DB $00 L023CC4 SEP #$40 HEX 50 L023CC7 CLV JSR L021339 BCS L023D1A TAY LDX #$0001 SEP #$20 INY PEI $42 PHY PHX PHX PHX PHX LDA [$3A],Y XBA INY INY PEI $42 PHY PHX LDA [$3A],Y REP #$20 BVS L023CEB XBA L023CEB TAX LDA #$00F8 BVS L023CF4 LDA #$0000 L023CF4 STA $0B,S EOR #$00F8 PHA PHX PEI $42 PHY JSL L042A5C PLA PHY PHA JSL L042ABB PHA PHA STA $0D,S TYA STA $03,S STA $0F,S JSL L043774 JSL L043774 L023D1A CLC RTS L023D1C BIT L0283C2 BPL L023D4A PEI $38 PEI $36 _DisposeHandle STZ $38 STZ $36 BIT L0283CA BPL L023D4A LDA L0283CE PHA LDA L0283CC PHA _DisposeHandle STZ L0283CE STZ L0283CC L023D4A STZ $3E SEC ROR $5C STZ $3A STZ $32 LDA #$FE00 STA $3B STA $33 LDA #$0001 STA $42 INC STA $40 STZ L0283CA LDA #$FFFF STA L0283C2 STA $F6 STZ $54 LDA #$0004 STA $56 BRL L021BC7 L023D77 BIT $F6 BMI L023D7D L023D7B CLC RTS L023D7D JSL L044C3E BCS L023D7B LDY #$000C LDA [$CA],Y ADC $CA STA $CA BCC L023D90 INC $CC L023D90 LDY #$0000 L023D93 LDA [$CA],Y BEQ L023D7B CMP #$C100 BCC L023DC3 PHY PEA $0002 PHA INY INY LDA [$CA],Y AND #$00FF PHA PEA $0000 INY PEI $CC PEI $CA TYA CLC ADC $01,S STA $01,S BCC L023DBE LDA $03,S INC STA $03,S L023DBE JSL L042748 PLY L023DC3 INY INY INY LDA [$CA],Y AND #$00FF PHY SEC ADC $01,S TAY PLA BRA L023D93 L023DD3 JSR L021339 CPY $42 BNE L023DFD STA L023EAC TAY LDA [$3A],Y STA L023EAE CMP #$0101 BCS L023E03 INY INY LDA [$3A],Y BNE L023E03 JSR L02153D BCS L023E03 JSR L021564 BCS L023E03 STA L023EB0 BRA L023E21 L023DFD LDA #$0003 JSR L020AB8 L023E03 CLC RTS L023E05 PEI $42 LDA L023EAC PHA PEA $0004 PEA $0004 JSL L043069 RTS L023E16 CLC LDA #$0004 ADC L023EAC STA L023EAC RTS L023E21 JSR L023E05 L023E24 JSR L023E16 DEC L023EAE BEQ L023E03 LDA L023EB0 CLC ADC #$0100 STA L023EB0 JSR L023E05 LDY L023EAC LDA [$3A],Y TAX INY INY LDA [$3A],Y PHA PHX ORA $01,S BNE L023E4D PLA PLA BRA L023E24 L023E4D JSL L042ABB STY L023EB4 INC STA L023EB2 PEI $42 LDX L023EAC PHX PEA $0004 PEA $FF00 PHY PHA JSL L043774 LDA L023EB0 PHA STZ L023EB6 PEA ^L023EB6 PEA L023EB6 JSL L044C72 LDA L023EB7 AND #$00FF CMP #$00DF BNE L023E24 SEP #$20 LDA L023EB6 DEC STA L023EB7 REP #$30 LDA L023EB4 PHA LDA L023EB2 PHA PEA $0000 PEA $0000 PEA ^L023EB7 PEA L023EB7 JSL L042748 BRL L023E24 L023EAC DB $00 DB $00 L023EAE DB $00 DB $00 L023EB0 DB $00 DB $00 L023EB2 DB $00 DB $00 L023EB4 DB $00 DB $00 L023EB6 DB $00 L023EB7 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L023ED6 PHA PHA PHY PHX PEI $FC PHA PHA PHA _NewHandle PLX PLY BCC L023EF1 LDA #$0000 JSR L020AB8 SEC L023EF1 RTS L023EF2 PHB PHY PLB LDA |$0002,X TAY LDA |$0000,X TAX PLB PLB RTS L023F00 JSR L020D0C JSL L044EAB JSL L042328 JSR L020D34 CLC RTS L023F10 EOR #$FFFF ; 32 TRON L023F13 JSL L04507E ; 33 TROFF CLC RTS * AV 202010 - Two new commands doCHON stz fgOUTPUT ; we want multiple files (default) clc rts doCHOFF lda #-1 ; we want one file only sta fgOUTPUT clc rts fgOUTPUT ds 2 *--- end of AV 202010 L023F19 LDA [$F8] AND #$00FF BEQ L023F72 JSR L023F44 BCC L023F72 JSR L021339 BCS L023F42 STA L023F68 STA L023F6A STZ L023F6C CPY $42 BNE L023F3C JSR L023F44 BRA L023F72 L023F3C LDA #$0003 JSR L020AB8 L023F42 CLC RTS L023F44 LDA [$F8] AND #$00FF BEQ L023F61 CMP #$00AF BNE L023F61 INC $F8 JSR L021309 SEC SBC #$00B0 CMP #$0003 BCC L023F63 JSR L023F3C L023F61 SEC RTS L023F63 STA L023F6C CLC RTS L023F68 DB $00 DB $00 L023F6A DB $00 DB $00 L023F6C DB $00 DB $00 L023F6E DB $00 DB $00 L023F70 DB $00 DB $00 L023F72 LDA L023F6A JSL L0416F3 STA L023F6A STZ L0240B1 L023F7F LDA L023F6A PHA JSL L0410BB STA L023F6E PLA JSL L041993 STA L023F70 BIT L023F6E BMI L023FA6 LDA L023F6C ASL TAX LDY L023F6A JSR (L023FD7,X) BCC L023FA6 CLC RTS L023FA6 LDA L023F6A CLC ADC L023F70 BCS L023FBA STA L023F6A BIT $5C BMI L023F7F CMP $3E BCC L023F7F L023FBA LDA L023F68 STA L023F6A LDA L023F6C INC STA L023F6C CMP #$0003 BCC L023F7F STZ L023F6C LDA #$0000 JSR L023FDD CLC RTS L023FD7 DA L02408D DA L0240B3 DA L02411E L023FDD PHA JSR L020CED PLA ASL TAX LDA L02401C,X STA L023FFF LDY #$0017 LDX #$0000 JSL L0300E2 JSL L0302E1 STR "> " JSL L030314 L023FFF ADR L023FFF JSL L03034A PHA JSR L020CED PLA AND #$00FF CMP #$008D SEC BEQ L02401B CMP #$009B SEC BEQ L02401B CLC L02401B RTS L02401C DA L024026 DA L02403B DA L024042 DA L024063 DA L024079 L024026 STR "No more bugs found. " L02403B STR "Break " L024042 STR "Branch on middle of instruction " L024063 STR "Branch on a constant " L024079 STR "Never taken branch " L02408D LDA [$3A],Y AND #$00FF BEQ L024099 STZ L0240B1 CLC RTS L024099 LDA L0240B1 BEQ L0240A0 CLC RTS L0240A0 LDA #$0001 STA L0240B1 L0240A6 PHA LDA L023F6A JSR L021DBB PLA BRL L023FDD L0240B1 DB $00 DB $00 L0240B3 LDA [$3A],Y AND #$00FF CMP #$004C BEQ L0240D1 CMP #$0020 BEQ L0240D1 CMP #$0082 BEQ L024100 AND #$001F CMP #$0010 BEQ L02410D L0240CF CLC RTS L0240D1 PHY PEI $42 PHY JSL L042A5C PLA PHY TAY INY LDA [$3A],Y PHA JSL L042ABB BCS L0240CF L0240E6 JSL L0410BB BCS L0240CF BIT #$8000 BNE L0240FB BIT #$0080 BNE L0240CF LDA #$0002 BRA L0240A6 L0240FB LDA #$0003 BRA L0240A6 L024100 INY LDA [$3A],Y L024103 CLC ADC L023F6A CLC ADC #$0003 BRA L0240E6 L02410D INY LDA [$3A],Y AND #$00FF BIT #$0080 BEQ L02411B ORA #$FF00 L02411B DEC BRA L024103 L02411E LDA [$3A],Y CMP #$40E2 BEQ L024136 CMP #$B018 BEQ L02413E CMP #$9038 BEQ L02413E CMP #$70B8 BEQ L02413E L024134 CLC RTS L024136 INY LDA [$3A],Y CMP #$5040 BNE L024134 L02413E LDA #$0004 BRL L0240A6 L024144 PHP REP #$30 LDY #$0000 L02414A SEP #$20 PHY LDA [$3A],Y CMP #$82 BNE L02417E INY REP #$20 LDA [$3A],Y INY INY PHY CLC ADC $01,S STA L0241B3 PLY LDA [$3A],Y AND #$FFF0 CMP #$7770 BNE L02417E INY INY LDA [$3A],Y AND #$00FF INC PHY CLC ADC $01,S PLY CMP L0241B3 BEQ L024187 L02417E PLY INY CPY $3E BNE L02414A PLP CLC RTS L024187 PLY INY INY INY PHY PEI $42 PHY PEA $0002 PEA $0001 JSL L043069 PLY INY INY PEI $42 PHY LDA [$3A],Y AND #$00FF INC PHA PEA $000F JSL L043069 LDY L0241B3 BRL L02414A L0241B3 DW $0000 L0241B5 JSR L020D34 JSL L040FF1 JSL L041D74 JSR L02A229 LDA $37 BEQ L0241D6 PEI $38 PEI $36 _DisposeHandle STZ $36 STZ $38 L0241D6 LDA L0283CD BEQ L0241F0 LDA L0283CE PHA LDA L0283CC PHA _DisposeHandle STZ L0283CC STZ L0283CE L0241F0 STZ L0283C2 STZ $40 STZ $42 STZ $5C STZ $F6 STZ L0283C8 RTS L0241FF JSR L021339 BCC L024206 CLV RTS L024206 STA L02426D LDA #$0001 STA L02426F JSR L021309 BCS L024226 CMP #$00AC BNE L02425F JSR L021564 BCS L02426A STA L02426F CMP #$0000 BEQ L02425D L024226 LDY L02426D L024229 LDA [$3A],Y TAX CLC ADC L02426D BCS L024264 BIT $5C BMI L02423A CMP $3E BCS L024264 L02423A PHX PHY PEI $42 PHY PEA $0002 PEA $0001 JSL L043069 PLY INY INY PLA JSR L0242DC BIT $5C BMI L024258 CPY $3E BCS L02425D L024258 DEC L02426F BNE L024229 L02425D CLC RTS L02425F LDA #$0001 BRA L024267 L024264 LDA #$0007 L024267 JSR L020AB8 L02426A SEC CLV RTS L02426D DB $00 DB $00 L02426F DB $00 DB $00 L024271 JSR L021339 BCC L024278 L024276 CLV RTS L024278 STA L0242D8 LDA #$0001 STA L0242DA JSR L021309 BCS L024298 CMP #$00AC BNE L0242CF JSR L021564 BCS L024276 STA L0242DA CMP #$0000 BEQ L0242CD L024298 LDY L0242D8 L02429B LDX #$0000 L02429E INX LDA [$3A],Y AND #$00FF BEQ L0242B1 INY BEQ L0242B1 BIT $5C BMI L02429E CPY $3E BCC L02429E L0242B1 TXA LDY L0242D8 JSR L0242DC STY L0242D8 CPY #$0000 BEQ L0242CD BIT $5C BMI L0242C8 CPY $3E BCS L0242CD L0242C8 DEC L0242DA BNE L02429B L0242CD CLC RTS L0242CF LDA #$0001 JSR L020AB8 SEC BRA L024276 L0242D8 DB $00 DB $00 L0242DA DB $00 DB $00 L0242DC STY L02438A CLC ADC L02438A STA L02438C L0242E6 JSR L0242ED BNE L0242E6 CLC RTS L0242ED SEP #$20 STY L02438A LDX #$0001 LDA [$3A],Y AND #$7F CMP #$20 BCS L02432C L0242FD LDA [$3A],Y JSR L024374 BCS L02434D INX CPX #$0028 BCS L02434D AND #$7F CMP #$0D BEQ L02431E CMP #$0A BEQ L02431E LDA [$3A],Y AND #$7F CMP #$20 BCC L0242FD BRA L02432C L02431E LDA [$3A],Y AND #$7F CMP #$0D BEQ L0242FD CMP #$0A BEQ L0242FD BRA L02434D L02432C LDA [$3A],Y AND #$80 STA L024373 L024333 JSR L024374 BCS L02434D INX LDA [$3A],Y AND #$7F CMP #$20 BCC L0242FD CPX #$0028 BCS L02434D LDA [$3A],Y EOR L024373 BPL L024333 L02434D REP #$20 PHY PEI $42 LDA L02438A PHA PHX PEA $0009 JSL L043069 PLY STY L02438A DEY JSR L024374 BCC L02436D LDA #$0000 BRA L024372 L02436D LDA [$3A],Y AND #$00FF L024372 RTS L024373 DB $00 L024374 INY BEQ L024388 PHY LDY L02438C BEQ L024385 PLY CPY L02438C BCS L024388 CLC RTS L024385 PLY CLC RTS L024388 SEC RTS L02438A DB $00 DB $00 L02438C DB $00 DB $00 L02438E LDX #$0000 L024391 LDA L0243C9+1,X STA L0243AF+1 LDA L0243C9,X STA L0243AF BEQ L0243C0 PHX JSL L0300D1 PLX PHX BNE L0243AB JSR L02728C L0243AB JSL L030719 L0243AF ADR $000000 JSR L025A40 PLX BCS L0243C0 TXA CLC ADC #$0004 TAX BRA L024391 L0243C0 JSL L0300D1 JSR L021E04 CLC RTS L0243C9 ADRL L0243E9 ADRL L0245B9 ADRL L02483E ADRL L024B44 ADRL L024DC1 ADRL L024FE3 ADRL L025254 ADRL $00000000 L0243E9 DW L0245B9-L0243EB L0243EB ASC 8D ASC " Phoenix wings: Ferox, Bandit II, Nibble, Perfect Bug."8D8D8D8D ASC "Single-key ops:"8D8D ASC " " ASC 'J' ASC " one line down ^* access desktop " ASC " ^+ stack position"8D ASC " " ASC 'K' ASC " one line up " ASC " ^- unstack position"8D ASC " ^S lower/upper" ASC "case opcodes"8D ASC " " ASC 'AJ' ASC " one page down"8D ASC " " ASC 'AK' ASC " one page up ^H hex dump mode"8D8D ASC " ^" ASC 'J' ASC " line history down ^R hilite relocs i" ASC "n hex"8D ASC " ^" ASC 'K' ASC " line history up ^C hilite constant" ASC "s in hex"8D L0245B9 DW L02483E-L0245BB L0245BB ASC 8D ASC "Disk commands:"8D8D ASC " PFX [Path] ................ Set/choose prefix 0"8D ASC " CAT [Path] ................ Catalog a directory or prefix 0"8D ASC " MD DirName ............... Create directory"8D8D ASC " LOAD FileName .............. Load the file to disassemble"8D ASC " RLOAD Filename[,rType,ID] ... Load and disassemble a resource"8D ASC 8D" SEG [SegNum] .............. Load specified segment"8D ASC 8D" SLOAD [FileName] ............ Load a scripts file"8D ASC " SSAVE [FileName] ............ Save script file"8D ASC 8D" TLOAD [FileName] ............ Load a template file"8D ASC " TSAVE [FileName] ............ Save a template file"8D ASC 8D" QUIT or BYE .................. Quit TFBD back to launcher" L02483E DW L024B44-L024840 L024840 ASC 8D ASC "Constants (followed by address [,num]):"8D8D ASC " DB/DW/RECT ................... Byte/Word/Rect"8D ASC " DDB .......................... Double byte"8D ASC " DA/ADR/ADRL .................. 2/3/4 bytes address"8D ASC " DCI .......................... Hi-bit ended string"8D ASC " STR .......................... Pascal string"8D ASC " STRL ......................... C1 (GS/OS) string"8D ASC " FLO .......................... 80-bits IEEE number"8D ASC " CHK .......................... CheckSum byte"8D ASC " OFF .......................... Offset (xxxx-*)"8D ASC " C1 ........................... Word-lengthed text (DW + ASC)"8D ASC " CS ........................... CString"8D ASC 8D" ASC adr,len | adr1.adr2 ...... ASCII zone"8D ASC " REV (Idem) .................. Reversed ASCII"8D ASC " HEX (Idem) .................. Hexa datas"8D ASC " DS (Idem) .................. Reserved space"8D L024B44 DW L024DC1-L024B46 L024B46 ASC 8D ASC "Labels:"8D8D ASC " LAB adr,Label ................ Define label"8D ASC " LAB adr ...................... Delete label at adr"8D ASC " LAB Label .................... Delete label "A2"Label"A2""8D ASC " ENT adr,Label ................ Define entry label"8D ASC " EQU adr,Label ................ Define Equate label"8D ASC " TRON / TROFF ................. 16/24-bits labels for GENLAB"8D ASC " CHON / CHOFF ................. Multiple or one file for SRC"8D ASC " GENLAB ....................... Generate labels"8D ASC 8D"Directives:"8D8D ASC " MX adr,%xx .................. Registers size"8D ASC " ORG adr,orgadr ............... Re-org code"8D ASC " ORG adr ...................... Reset org"8D ASC " DBR adr,xx ................... Assume Data Bank Reg"8D ASC " DBR adr ...................... DBR = Program bank" L024DC1 DW L024FE3-L024DC3 L024DC3 ASC 8D ASC "Relocations:"8D8D ASC " REL adr [,size,shift,refadr,disp] .. Set reloc record"8D ASC " MREL [+/-disp,] adr,n [,refadr] ..... Multiple REL"8D ASC " PHL adr ............................ 2xPEA relocation"8D ASC " PHL2 adr1,adr2 ...................... HiWord,LoWord"8D ASC " RPHL adr ............................ PHL with LoWord first"8D ASC " REL8 ................................ 2x8 bits relocation"8D ASC " RREL8 ............................... Idem, reversed"8D ASC 8D8D"Comments:"8D8D ASC " COM adr,text ........................ Set comment text at adr"8D ASC " COM adr ............................. Remove comment" L024FE3 DW L025254-L024FE5 L024FE5 ASC 8D ASC "Miscellaneous:"8D8D ASC " LIST adr ..................... List from adr"8D ASC " TABS x,y,z ................... Set tabs"8D8D ASC " INFOS ........................ Infos about segment"8D8D ASC " \ ScrName [adr] .............. Execute script"8D ASC " \ * [adr] .................... Choose & exec script"8D ASC " SEDIT ........................ Edit script file"8D8D ASC " SRC [range] Name ............. Generate Name.S source file"8D8D ASC " ROM .......................... Disassemble ROMs"8D ASC " STOOL adr,toolnum ............ Disasm toolset header with routines names"8D ASC " MLABS ........................ Generate monitor labels (when in ROM)"8D8D ASC " [Const list] Name ............ Define structure"8D L025254 DW L025543-L025256 L025256 ASC 8D ASC "Miscellaneous:"8D8D ASC " MATCH [C][L][D] .............. Align or Purge Consts, Labs & Directives"8D ASC " REM [C][L][D][,Range] ...... Remove Consts, Labs & Directives"8D ASC " TCLR ......................... Clear all templates"8D ASC " TC ........................... Templates correction"8D8D ASC " DOS .......................... Search for OS calls & disasm parms tables"8D ASC " BUG [adr][/n] ................ Search for bugs in disassembly"8D8D ASC " DSK .......................... Access desktop"8D ASC " HIST ......................... Commands history"8D8D ASC " -FileName .................... Call an expansion file"8D ASC " CFG [/S or /D] Name .......... Save, Delete or load configuration"8D8D ASC " FIND [range] [objects] ....... Locate a string in object code"8D ASC " SCAN [range] [kinds] ......... Scan for a kind of data" L025543 JSR L025566 JSL L030719 ADR L0255A7 JSR L025A40 JSR L025566 JSL L030719 ADR L025822 JSR L025A40 JSR L020D34 JSR L021E04 CLC CLV RTS L025566 JSR L020D34 JSL L030719 ADR L025571 RTS L025571 dw L0255A7-L025573 L025573 asc 8D" - Shareware info -"8D8D L0255A7 dw L025822-L0255A9 L0255A9 asc 8D"TFB-Disasm is a usefull and a powerfull utility. But it's also a very long and" asc 8D"hard-to-think program. It's been thousands hours of programming and testing. By." asc 8D"the way, it should cost thousands of dollars. But who -except governments- wouldpay such a fee for a soft ? You ?" asc 8D8D8D" TFB-Disasm is a Shareware. But an unusual shareware." asc 8D8D" There's no evaluation period. I don't ask you to delete or to stop using TFBD" asc 8D"within 15 or 30 days. There's no hidden option that some voodoo magic, using a" asc 8D"shareware fee, will make accessible, and the version I send is up-to-date." asc 8D8D8D" So, what am I asking you ?" L025822 dw L025A40-L025824 L025824 asc " Whatever you want." asc 8D8D" You feel it's worth sending any fee ? - Do it." asc 8D" How much ? $1 ? $5 ? $10 ? $30 ? - As you see." asc 8D" And why not your last production ? - I may need it." asc 8D8D8D" Just remember that everything I can receive is only used for the" asc 8D" expansion of my Apple II developpement configuration - for YOU." asc 8D8D8D8D" Send anything to: Philippe Savitch" asc 8D" 19, rue de la Duee" asc 8D" 75020 Paris - France" L025A40 JSR L020CED LDY #$0017 LDX #$0000 JSL L0300E2 JSL L0302E1 STR "> Press any key " JSL L03034A PHA JSR L020CED PLA AND #$00FF CMP #$009B BEQ L025A74 CLC L025A74 RTS L025A75 PHP SEP #$20 REP #$10 LDY #$0000 L025A7D LDX #$0000 L025A80 LDA [$3A],Y CMP L025AF7,X BEQ L025A8A BRL L025AB6 L025A8A INY INX CPX #$0004 BCC L025A80 PHY PEI $42 PHY PEA $0002 PEA $0001 JSL L043069 PLY INY INY PHY PEI $42 PHY PEA $0004 PEA $0004 JSL L043069 PLY INY INY INY BRA L025AE7 L025AB6 LDX #$0000 L025AB9 LDA [$3A],Y CMP L025AFB,X BNE L025AE7 INY INX CPX #$0003 BCC L025AB9 PHY PEI $42 PHY PEA $0001 PEA $0000 JSL L043069 PLY INY PHY PEI $42 PHY PEA $0002 PEA $0003 JSL L043069 PLY INY L025AE7 INY BEQ L025AF5 BIT $5C BMI L025A7D CPY $3E BCS L025AF5 BRL L025A7D L025AF5 PLP RTS L025AF7 HEX 22A800E1 L025AFB HEX 2000BF L025AFE SEP #$30 LDA [$F8] BNE L025B15 LDX #$0E STX L025B72 LDX #$06 STX L025B73 LDX #$10 STX L025B74 BRA L025B4B L025B15 LDX #$00 L025B17 PHX JSR L025B2F PLX BCS L025B2D STA L025B72,X INX CPX #$03 BEQ L025B4B PHX JSR L02153D PLX BCC L025B17 L025B2D CLC RTS L025B2F PEI $FA PEI $F8 LDX #$02 JSL L0306BD REP #$10 PLX STX $F8 PLX STX $FA SEP #$10 RTS L025B44 LDA #$03 JSR L020AB8 CLC RTS L025B4B CLC LDA #$16 ADC L025B72 ADC L025B73 CMP #$2F BCS L025B44 ADC L025B74 CMP #$50 BCS L025B44 LDA #$16 ADC L025B72 STA $44 ADC L025B73 STA $45 ADC L025B74 STA $46 CLC RTS L025B72 DB $00 L025B73 DB $00 L025B74 DB $00 MX %00 L025B75 JSR L020D34 LDA L0207BD BNE L025BBE LDX #$0001 LDY #$0014 JSL L0300E2 JSL L0302E1 STR "Sorry, not enough memory for history buffer." L025BB8 JSR L02A0C1 SEC CLV RTS L025BBE JSL L0302E1 STR " Command-line history from latest:"8D8D LDX L0207BC LDY L0207BE JSR L023EF2 STX $0A STY $0C LDX L0207C0 BNE L025C24 JSL L0302E1 STR " --- History buffer is empty ---" BRA L025BB8 L025C24 STZ L025C72 CPX #$0013 BCC L025C2F LDX #$0012 L025C2F PHX LDA #$00A0 JSL L03022D CLC LDA L025C72 ADC $0A STA L025C50 LDA #$0000 ADC $0C SEP #$20 STA L025C52 REP #$20 JSL L030314 L025C50 DB $00 DB $00 L025C52 DB $00 PLX CPX #$0001 BEQ L025C6C PHX JSL L0302C3 PLX CLC LDA L025C72 ADC #$0050 STA L025C72 DEX BNE L025C2F L025C6C JSR L02A0C1 SEC CLV RTS L025C72 DB $00 DB $00 L025C74 PHP REP #$30 LDA [$F8] AND #$00FF BEQ L025C89 JSR L021586 LDY #^L0215CD LDA #L0215CD BRA L025CAC L025C89 LDAL L050143 BNE L025CA8 LDA L020184 BNE L025C9C LDA #L025CE4 LDY #^L025CE4 BRA L025CAC L025C9C LDX L020183 LDY L020185 JSR L023EF2 TXA BRA L025CAC L025CA8 LDA #$0000 TAY L025CAC JSL L05054C BCC L025CBF CMP #$0000 BNE L025CBC JSR L020AB8 BRA L025CBF L025CBC JSR L020AF7 L025CBF PLP CLC RTS L025CC2 PHP REP #$30 LDA [$F8] AND #$00FF BEQ L025CD7 JSR L021586 LDY #^L0215CD LDA #L0215CD BRA L025CD8 L025CD7 TAY L025CD8 JSL L0523AA BCC L025CE1 JSR L020AF7 L025CE1 PLP CLC RTS L025CE4 STRL '9:ScriptFile.S' L025CF4 PHP REP #$30 LDX #$0000 L025CFA LDA [$F8] INC $F8 AND #$00FF BEQ L025D11 AND #$007F CMP #$0020 BEQ L025D11 STA L025D36,X INX BRA L025CFA L025D11 SEP #$10 STX L025D35 REP #$10 PEA ^L025D35 PEA L025D35 CMP #$0000 BEQ L025D2A JSR L021339 PHY PHA BRA L025D2E L025D2A PEI $42 PEI $54 L025D2E JSL L05063A PLP CLC RTS L025D35 DB $00 L025D36 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L025D7E JSL L051902 CLC RTS L025D84 DB $00 DB $00 L025D86 DB $80 DB $C0 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DW $0011 ; number of tools DW $0004 ; quickdraw II DW $0301 DW $0005 ; desk manager DW $0302 DW $0006 ; event manager DW $0300 DW $000B ; int math tool set DW $0200 DW $000E ; window manager DW $0301 DW $000F ; menu manager DW $0301 DW $0010 ; control manager DW $0301 DW $0012 ; quickdraw II aux DW $0301 DW $0013 ; print manager DW $0300 DW $0014 ; lineedit tool set DW $0301 DW $0015 ; dialog manager DW $0301 DW $0016 ; scrap manager DW $0300 DW $0017 ; std file tool set DW $0301 DW $001B ; font manager DW $0301 DW $001C ; list manager DW $0301 DW $001E DW $0100 DW $0022 DW $0101 L025DD4 JSR L02089E JSR L020811 SEP #$20 LDAL $E0C025 REP #$20 AND #$0080 EOR #$0080 PHA LDA L025D86 AND #$FF7F ORA $01,S STA L025D86 PHA LDA $FE PHA PEA $0000 PEA ^L025D84 PEA L025D84 _StartUpTools PLA STA L025E5C PLA STA L025E5E LDA #$0000 PHA PHA PHA PHA PHA PEA $8000 _UseColorTable _DisposeHandle JSR L025E60 JSR L025FE3 PHP PHA PEA $FFFF PEA $0000 _FlushEvents PLA PEA $0004 PEA ^L025D84 PEA L025D84 _ShutDownTools JSR L0207C2 JSR L02084C PLP BVS L025E5A CLC RTS L025E5A SEC RTS L025E5C DB $00 DB $00 L025E5E DB $00 DB $00 L025E60 PEA $0000 PEA $0000 PEA ^L025F57 PEA L025F57 _NewMenu PEA $0000 _InsertMenu PEA $0000 PEA $0000 PEA ^L025F15 PEA L025F15 _NewMenu PEA $0000 _InsertMenu PEA $0000 PEA $0000 PEA ^L025EE6 PEA L025EE6 _NewMenu PEA $0000 _InsertMenu PEA $0001 _FixAppleMenu PEA $0000 _FixMenuBar PLA PEA $000A _SetMTitleStart _DrawMenuBar _InitCursor CLC RTS L025EE6 ASC '>>@\XH'01000D ASC '==About TFB-Disasm' ASC "I" ASC '\BH'00010D ASC '==-\N500D\0'0D ASC '.' L025F15 ASC '>> File \H'02000D ASC '==Return\BV*RrH'01010D ASC '==Quit\BV*QqH'02010D ASC '==Close\D*WwH'03010D ASC '.' L025F57 ASC '>> Edit \H'03000D ASC '==Undo\*ZzH' ASC "z"000D ASC '==-\N500D'0D ASC '==Cut\*XxH' ASC "{"000D ASC '==Copy\*CcH' ASC "|"000D ASC '==Paste\*VvH' ASC "}"000D ASC '==Clear\H' ASC "~"000D ASC '.' L025FB5 DW $0000 ; event code ADRL $00000000 ; event message ADRL $00000000 ; tick count DW $0000 ; mouse location DW $0000 DW $0000 ; modifiers L025FC5 ADRL $00000000 ; task data ADRL $001FFFFF ; task mask DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 MX %00 L025FE3 PHA PHA _FrontWindow PLA ORA $01,S STA $01,S PLA BEQ L02600B BIT L026063 BMI L02601D PEA $0103 _EnableMItem LDA #$FFFF STA L026063 BRA L02601D L02600B BIT L026063 BPL L02601D PEA $0103 _DisableMItem STZ L026063 L02601D PEA $0000 PEA $FFFF PEA ^L025FB5 PEA L025FB5 _TaskMaster PLA BEQ L025FE3 CMP #$0011 BEQ L02603F CMP #$0019 BNE L025FE3 BRA L026052 L02603F LDA L025FC5 CMP #$0104 BCS L026052 SEC SBC #$00FA ASL TAX JSR (L026065,X) BCS L026062 L026052 PEA $0000 LDA L025FC5+2 PHA _HiliteMenu BRA L025FE3 L026062 RTS L026063 DB $00 DB $00 L026065 DA L026062 DA L026062 DA L026062 DA L026062 DA L026062 DA L026062 DA L026079 DA L02607B DA L02607E DA L026095 L026079 CLC RTS L02607B SEC CLV RTS L02607E PEA $0004 PEA ^L025D84 PEA L025D84 _ShutDownTools LDA L020003 TCS JMP L020A10 L026095 PHA PHA _FrontWindow LDA $02,S BEQ L0260AB _CloseNDAbyWinPtr CLC RTS L0260AB PLA PLA CLC RTS L0260AF JSR L021309 BCC L0260BE JSR L026659 PHP JSR L021E04 PLP CLV RTS L0260BE CMP #$00AF BEQ L0260C8 DEC $F8 BRL L0264AD L0260C8 JSR L021309 CMP #$00C4 BNE L0260E6 JSR L02635B BCC L0260D6 RTS L0260D6 PEA ^L0263B1 PEA L0263B1 PEA $2002 ; Destroy JSL GSOS2 BCS L026112 RTS L0260E6 CMP #$00D3 BEQ L0260EE BRL L026352 L0260EE JSR L021320 BCC L0260F8 JSR L026698 CLV RTS L0260F8 JSR L02635B BCC L0260FE RTS L0260FE PEA ^L026395 PEA L026395 PEA $2006 ; GetFileInfo JSL GSOS2 BCC L026126 CMP #$0046 BEQ L026115 L026112 BRL L026348 L026115 PEA ^L0263A3 PEA L0263A3 PEA $2001 ; Create JSL GSOS2 BCS L026112 BRA L0260FE L026126 LDA L02639D CMP #$005A BEQ L026131 L02612E BRL L02634D L026131 LDA L02639F CMP #$8040 BNE L02612E JSR L02629F BCS L026112 LDA L0263DD STA L0263F1 STA L026417 STZ L026417+2 PEA ^L026411 PEA L026411 PEA $2018 ; SetEOF JSL GSOS2 BCC L02615C L026159 BRL L026345 L02615C PEA ^L026411 PEA L026411 PEA $2016 ; SetMark JSL GSOS2 BCS L026159 LDA #$C6D4 STA L0263E5 LDA #$C4C2 STA L0263E5+2 LDA #$0100 STA L0263E9 LDA $F6 ASL LDA #$0000 ROL ORA $5E STA L0263EB LDA $44 STA L0263ED LDA $46 AND #$00FF STA L0263EF LDA $54 STA L0263FB LDA $56 STA L0263FD LDA L02845D STA L0263FF LDA L02845F STA L026401 LDA L028461 STA L026403 LDA L028463 STA L026405 LDA $42 STA L0263F9 PEA ^L026385 PEA L026385 PEA $200A ; GetPrefix JSL GSOS2 BCS L026159 LDA L021658 INC INC STA L026435 CLC ADC L0263F1 STA L0263F3 PEA ^L02642D PEA L02642D PEA $2013 ; Write JSL GSOS2 BCC L0261ED BRL L026345 L0261ED BIT $F6 BMI L0261F6 BIT L0283C2 BMI L026201 L0261F6 LDA L0263F3 STA L0263F5 STZ L0263F3 BRA L02621F L026201 LDA L0282C2 INC INC STA L026445 CLC ADC L0263F3 STA L0263F5 PEA ^L02643D PEA L02643D PEA $2013 ; Write JSL GSOS2 BCS L026270 L02621F LDAL L041ACA BNE L026230 STZ L0263F5 JSR L026302 STA L0263F7 BRA L02624F L026230 LDAL L041ACE INC INC STA L026455 CLC ADC L0263F5 STA L0263F7 PEA ^L02644D PEA L02644D PEA $2013 ; Write JSL GSOS2 BCS L026270 L02624F LDA $D8 BNE L026258 STZ L0263F7 BRA L026273 L026258 LDAL L050143 INC INC STA L026465 PEA ^L02645D PEA L02645D PEA $2013 ; Write JSL GSOS2 BCC L026273 L026270 BRL L026345 L026273 JSR L026313 BCS L026270 LDA #$0000 JSR L0262F1 PEA ^L0263D5 PEA L0263D5 PEA $2013 ; Write JSL GSOS2 BCS L026270 PEA ^L026407 PEA L026407 PEA $2018 ; SetEOF JSL GSOS2 JSR L0262DF CLC RTS L02629F PEA ^L0263B7 PEA L0263B7 PEA $2010 ; Open JSL GSOS2 BCS L0262DE LDA L0263B9 STA L0263C1 STA L0263C5 STA L0263D7 STA L026409 STA L026413 STA L02641D STA L026425 STA L02642F STA L02643F STA L02644F STA L02645F STA L02646F STA L02647F STA L02648F STA L02649F L0262DE RTS L0262DF PHP PHA PEA ^L0263BF PEA L0263BF PEA $2014 ; Close JSL GSOS2 PLA PLP RTS L0262F1 STA L026429 PEA ^L026423 PEA L026423 PEA $2016 ; SetMark JSL GSOS2 RTS L026302 PEA ^L02641B PEA L02641B PEA $2017 ; GetMark JSL GSOS2 LDA L02641F RTS L026313 PEA ^L02641B PEA L02641B PEA $2017 ; GetMark JSL GSOS2 PHA LDA L02641F LDA L02641F+2 STA L02640D+2 LDA L02641F STA L02640D PLA RTS L026332 PEA ^L0263C3 PEA L0263C3 PEA $2012 ; Read JSL GSOS2 BCS L026344 LDA L0263D3 L026344 RTS L026345 JSR L0262DF L026348 JSR L020AF7 BRA L026358 L02634D LDA #$0015 BRA L026355 L026352 LDA #$0001 L026355 JSR L020AB8 L026358 SEC CLV RTS L02635B JSR L021586 LDA L0215CD BEQ L026352 LDA #$3A33 STA L021656+4 SEP #$20 LDX #$0002 LDY #$0000 L026371 LDA L0215CF,Y INY STA L021656+4,X INX CPY L0215CD BCC L026371 STX L021658 REP #$20 CLC RTS L026385 DW $0002 ; Parms for GetPrefix DW $0000 ; prefix num ADRL L021656 ; prefix ptr L02638D DW $0002 ; Parms for SetPrefix DW $0000 ; prefix num ADRL L021658 ; prefix ptr L026395 DW $0004 ; Parms for GetFileInfo ADRL L021658 ; file name DW $0000 ; access L02639D DW $0000 ; file type L02639F ADRL $00000000 ; aux type L0263A3 DW $0004 ; Parms for Create ADRL L021658 ; file name DW $00C3 ; access DW $005A ; file type ADRL $00008040 ; aux type L0263B1 DW $0001 ; Parms for Destroy ADRL L021658 ; file name L0263B7 DW $0002 ; Parms for Open L0263B9 DW $0000 ; ref num ADRL L021658 ; path name L0263BF DW $0001 ; Parms for Close L0263C1 DW $0000 ; ref num L0263C3 DW $0004 ; Parms for Read L0263C5 DW $0000 ; ref num ADRL L0263D3 ; buffer ptr ADRL $00000002 ; request count ADRL $00000000 ; transfer count L0263D3 DW $0000 L0263D5 DW $0004 ; Parms for Read L0263D7 DW $0000 ; ref num ADRL L0263E5 ; buffer ptr L0263DD ADRL $00000022 ; request count ADRL $00000000 ; transfer count L0263E5 ASC "TFBD" L0263E9 DB $00 DB $01 L0263EB DB $00 DB $00 L0263ED DB $00 L0263EE DB $00 L0263EF DB $00 DB $00 L0263F1 DB $22 DB $00 L0263F3 DB $00 DB $00 L0263F5 DB $00 DB $00 L0263F7 DB $00 DB $00 L0263F9 DB $00 DB $00 L0263FB DB $00 DB $00 L0263FD DB $00 DB $00 L0263FF DB $00 DB $00 L026401 DB $00 DB $00 L026403 DB $00 DB $00 L026405 DB $00 DB $00 L026407 DW $0003 ; Parms for SetEOF L026409 DW $0000 ; ref num DW $0000 ; base L02640D ADRL $00000000 ; displacement L026411 DW $0003 ; Parms for SetMark L026413 DW $0000 ; ref num DW $0000 ; base L026417 ADRL $00000000 ; displacement L02641B DW $0002 ; Parms for GetMark L02641D DW $0000 ; ref num L02641F ADRL $00000000 ; position L026423 DW $0003 ; Parms for SetMark L026425 DW $0000 ; ref num DW $0000 ; base L026429 ADRL $00000000 ; displacement L02642D DW $0004 ; Parms for Write L02642F DW $0000 ; ref num ADRL L021658 ; buffer ptr L026435 ADRL $00000000 ; request count ADRL $00000000 ; transfer count L02643D DW $0004 ; Parms for Write L02643F DW $0000 ; ref num ADRL L0282C2 ; buffer ptr L026445 ADRL $00000000 ; request count ADRL $00000000 ; transfer count L02644D DW $0004 ; Parms for Write L02644F DW $0000 ; ref num ADRL L041ACE ; buffer ptr L026455 ADRL $00000000 ; request count ADRL $00000000 ; transfer count L02645D DW $0004 ; Parms for Write L02645F DW $0000 ; ref num ADRL L050143 ; buffer ptr L026465 ADRL $00000000 ; request count ADRL $00000000 ; transfer count L02646D DW $0004 ; Parms for Read L02646F DW $0000 ; ref num ADRL L021656+4 ; buffer ptr L026475 ADRL $00000000 ; request count ADRL $00000000 ; transfer count L02647D DW $0004 ; Parms for Read L02647F DW $0000 ; ref num ADRL L0282C4 ; buffer ptr L026485 ADRL $00000000 ; request count ADRL $00000000 ; transfer count L02648D DW $0004 ; Parms for Read L02648F DW $0000 ; ref num ADRL L041AD0 ; buffer ptr L026495 ADRL $00000000 ; request count ADRL $00000000 ; transfer count L02649D DW $0004 ; Parms for Read L02649F DW $0000 ; ref num ADRL L050145 ; buffer ptr L0264A5 ADRL $00000000 ; request count ADRL $00000000 ; transfer count L0264AD JSR L02635B BCC L0264B3 RTS L0264B3 PEA ^L026395 PEA L026395 PEA $2006 ; GetFileInfo JSL GSOS2 L0264C0 BCC L0264C5 BRL L026348 L0264C5 LDA L02639D CMP #$005A BEQ L0264D0 L0264CD BRL L02634D L0264D0 LDA L02639F CMP #$8040 BNE L0264CD JSR L02629F BCS L0264C0 PEA ^L0263D5 PEA L0263D5 PEA $2012 ; Read JSL GSOS2 BCC L0264EF L0264EC BRL L026345 L0264EF LDA L0263F1 JSR L0262F1 JSR L026332 BCS L0264EC STA L021658 STA L026475 PEA ^L02646D PEA L02646D PEA $2012 ; Read JSL GSOS2 BCS L0264EC PEA ^L02638D PEA L02638D PEA $2009 ; SetPrefix JSL GSOS2 BCS L0264EC LDA L0263F3 BEQ L026540 JSR L0262F1 JSR L026332 BCS L0264EC STA L0282C2 STA L026485 PEA ^L02647D PEA L02647D PEA $2012 ; Read JSL GSOS2 L02653E BCS L0264EC L026540 LDA L0263F5 BEQ L026563 JSR L0262F1 JSR L026332 BCS L0264EC STAL L041ACE STA L026495 PEA ^L02648D PEA L02648D PEA $2012 ; Read JSL GSOS2 BCS L02653E L026563 LDA L0263F7 BEQ L026586 JSR L0262F1 JSR L026332 BCS L02653E STAL L050143 STA L0264A5 PEA ^L02649D PEA L02649D PEA $2012 ; Read JSL GSOS2 BCS L02653E L026586 LDA L0263EB PHA AND #$FFFE STA $5E STZ $F6 PLA AND #$0001 BEQ L02659C LDA #$FFFF STA $F6 L02659C LDA L0263ED STA $44 LDA L0263EE STA $45 LDA L0263FB STA $54 LDA L0263FD STA $56 LDA L0263FF STA L02845D LDA L026401 STA L02845F LDA L026403 STA L028461 LDA L026405 STA L028463 JSR L0262DF LDA L0263F3 BNE L0265F7 BIT $F6 BPL L0265DC JSR L023D1C JSR L021E04 BRA L02660B L0265DC JSR L020D34 JSL L040FF1 JSL L041D74 JSR L02A229 STZ L0283C2 STZ $40 STZ $42 STZ $5C STZ $F6 BRA L02663D L0265F7 LDA L0263F9 BIT L02845D BPL L026604 JSR L0290DD BRA L026607 L026604 JSR L028C22 L026607 BCC L02660B CLV RTS L02660B LDA L0263F5 BEQ L02663D JSR L020D0C PEA $0000 PEA $0000 JSL L041F95 BCC L026625 JSR L021E04 L026622 BRL L026348 L026625 REP #$20 LDA L0283CE PHA LDA L0283CC PHA JSL L0437E4 JSL L042328 JSR L020D34 JSR L021E04 L02663D LDA L0263F7 BEQ L02664C LDA #$0000 TAY JSL L05054C BCS L02664E L02664C CLC RTS L02664E CMP #$0000 BNE L026622 JSR L020AB8 SEC CLV RTS L026659 SEC LDA L020007 BEQ L026697 PHA PHA PEA $0001 PEA $0000 PEA $0001 _LoadResource PLX PLY BCS L026697 JSR L023EF2 STX $10 STY $12 LDA [$10] STA $5E SEP #$30 LDY #$02 CLC LDA #$16 ADC [$10],Y INY STA $44 ADC [$10],Y INY STA $45 ADC [$10],Y STA $46 REP #$31 L026697 RTS L026698 SEC LDA L020007 BEQ L0266ED PHA PHA PEA $0001 PEA $0000 PEA $0001 _LoadResource PLX PLY BCS L0266ED JSR L023EF2 STX $10 STY $12 LDA $5E STA [$10] SEP #$30 LDY #$02 LDA $44 SEC SBC #$16 STA [$10],Y INY LDA $45 SBC $44 STA [$10],Y INY LDA $46 SBC $45 STA [$10],Y REP #$30 PEA $0001 PEA $0001 PEA $0000 PEA $0001 _MarkResourceChange L0266ED RTS L0266EE DB $00 L0266EF DB $00 L0266F0 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L026740 LDA L0215CD BEQ L02678A TAX INC INC TAY SEP #$20 LDA L0215CF CMP #$3A BNE L026754 DEY DEY L026754 STY L0266EE L026757 LDA L0215CE,X STA L0266EF,Y DEY DEX BNE L026757 REP #$20 AND #$007F CMP #$003A BEQ L026771 LDA #$3A32 STA L0266F0 L026771 PEA ^L026797 PEA L026797 PEA $2006 ; GetFileInfo JSL GSOS2 BCS L026795 LDA L02679F CMP #$00BC BNE L02678F CLC RTS L02678A LDX #$0001 BRA L026792 L02678F LDX #$0012 L026792 LDA #$0000 L026795 SEC RTS L026797 DW $0004 ; Parms for GetFileInfo ADRL L0266EE ; file name DW $0000 ; access L02679F DW $0000 ; file type L0267A1 ADRL $00000000 ; aux type L0267A5 DB $00 DB $00 L0267A7 DB $00 DB $00 L0267A9 DB $00 DB $00 L0267AB DB $00 DB $00 L0267AD DB $00 L0267AE DB $00 L0267AF PHK PLB LDA L0267A5 TCS LDA L0267A7 TCD L0267B9 LDA L0267AD BEQ L0267D2 PHA PHA PEA $0000 PHA _FindHandle _DisposeHandle L0267D2 LDA L0267A9 BEQ L0267F0 PHA LDA L0267A9 PHA PEA $0000 _UserShutDown _DeleteID STZ L0267A9 L0267F0 CLC RTS L0267F2 HEX 2C L0267F3 BRA L026809 JSR L021586 JSR L026740 BCC L026809 CMP #$0000 BEQ L026805 BRL L026958 L026805 TXA BRL L026979 L026809 LDA L0267A1 BEQ L026825 BPL L026818 BIT L0283CA BMI L026818 BRL L026976 L026818 AND #$7FFF BEQ L026825 CMP L028451 BEQ L026825 BRL L026976 L026825 STZ L0267AB STZ L0267AD PHA PHA PHA PHA PHA PHA PEI $FE _GetNewID PEA ^L0266EE PEA L0266EE PEA $0000 PEA $0001 _InitialLoad2 STA L026986 PLA STA L0267A9 PLA STA L026982 STA $00 PLA STA L026984 STA $02 PLA STA L0267AB CLC ADC $01,S STA L0267AD PLA LDA L026986 BEQ L026873 BRL L02695D L026873 LDA L0267AD BNE L0268A9 PHA PHA PEA $0000 PEA $0800 LDA L0267A9 PHA PEA $C015 PEA $0000 PEA $0000 _NewHandle PLX PLY BCC L02689B BRL L026962 L02689B JSR L023EF2 STX L0267AB TXA CLC ADC #$0800 STA L0267AD L0268A9 LDA [$00] CMP #$C6D4 BEQ L0268B3 BRL L02696C L0268B3 LDY #$0002 LDA [$00],Y CMP #$C4C2 BEQ L0268C0 BRL L02696C L0268C0 INY INY LDA [$00],Y CMP #$0101 BCC L0268CC BRL L026971 L0268CC INY INY INY INY LDA #$005C STA [$00],Y INY LDA #L0269D2 STA [$00],Y INY LDA #>L0269D2 STA [$00],Y TSC STA L0267A5 TDC STA L0267A7 LDA L0267AD DEC TCS LDA $42 PHA LDA $3A PHA LDA $3C PHA LDA $3E PHA LDA #$0000 BIT $5C BPL L026902 INC L026902 PHA LDA L0267AB TCD PLA STA $86 PLA STA $84 PLA STA $82 PLA STA $80 PLA STA $88 LDA L0283CC STA $94 LDA L0283CE STA $96 LDA L0267A9 STA $98 LDA L028451 STA $8A LDA L028453 STA $8C LDA L028455 STA $8E LDA #L0283D0 STA $90 LDA #^L0283D0 STA $92 PHK PEA L0267AE SEP #$20 LDA L026984 PHA REP #$21 LDA L026982 ADC #$000B PHA LDA L026983 PHA PLB PLB RTL L026958 JSR L020AF7 BRA L02697C L02695D JSR L020CB4 BRA L02697C L026962 LDA #$0000 BRA L026979 LDA #$0001 BRA L026979 L02696C LDA #$0012 BRA L026979 L026971 LDA #$0013 BRA L026979 L026976 LDA #$0014 L026979 JSR L020AB8 L02697C JSR L0267B9 SEC CLV RTS L026982 DB $00 L026983 DB $00 L026984 DB $00 DB $00 L026986 DB $00 DB $00 L026988 DB $00 DB $00 L02698A DB $00 DB $00 L02698C DB $00 DB $00 L02698E DB $00 L02698F JSR L020CED LDY #$0017 LDX #$0000 JSL L0300E2 JSL L0302E1 STR "> Abort expansion execution ? " JSL L03034A PHA JSR L020CED PLA AND #$005F CMP #$0059 BEQ L0269D1 CLC L0269D1 RTS L0269D2 PHB PHP REP #$30 PHK PLB LDA L0267A7 TCD PLA AND #$FFFE STA L02698A STX L026988 PLA STA L02698C SEP #$20 PLA STA L02698E LDAL $E0C025 BPL L026A0A LDAL $E0C000 AND #$7F CMP #$2E BNE L026A0A REP #$20 JSR L02698F BCC L026A0A BRL L0267AF L026A0A REP #$20 LDA L026988 AND #$00FF CMP #$0002 BCS L026A53 ASL TAX LDA L026A59,X PHA LDA L026988 XBA AND #$00FF RTS L026A25 LDA #$0000 L026A28 STA L026A51 SEP #$20 LDA L02698E PHA REP #$20 LDA L02698C PHA LDA L026A51 BEQ L026A42 LDA #$0001 TSB L02698A L026A42 LDA L02698A PHA LDA L0267AB PHA LDA L026A51 PLD PLP PLB RTL L026A51 DB $00 DB $00 L026A53 LDA #$0001 BRL L026A28 L026A59 DA L026A5D-1 DA L026B36-1 L026A5D CMP #$0003 BCS L026A53 ASL TAX JMP (L026A67,X) L026A67 DA L026A6D DA L026AAA DA L026A70 L026A6D BRL L026A25 L026A70 PLA STA L026A9B SEP #$20 PLA STA L026A9B+2 PLA REP #$20 JSL L0300EE PHX PHY LDX #$0000 LDY #$0017 JSL L0300E2 JSR L020CED JSL L030314 ADR L0201F7 JSL L030314 L026A9B ADR $000000 JSL L03034A PLY PLX JSL L0300E2 BRA L026A6D L026AAA PLA STA L026AD5 SEP #$20 PLA STA L026AD5+2 PLA REP #$20 JSL L0300EE PHX PHY LDX #$0000 LDY #$0017 JSL L0300E2 JSR L020CED JSL L0302E1 STR "> " JSL L030314 L026AD5 ADR $000000 PLY PLX JSL L0300E2 BRA L026A6D L026AE0 DB $06 DB $00 DB $11 DB $00 DB $05 DB $00 DB $07 DB $00 L026AE8 DA L026AF0 DA L026AFC DA L026B1E DA L026B28 L026AF0 DA L026B70 DA L026B81 DA L026B92 DA L026BA1 DA L026BAC DA L026BB9 L026AFC DA L026BC2 DA L026BC2 DA L026BC2 DA L026BC2 DA L026BC2 DA L026BC2 DA L026BC2 DA L026BC2 DA L026BC2 DA L026BC2 DA L026BC2 DA L026BC2 DA L026BC2 DA L026BC2 DA L026BC2 DA L026BC2 DA L026BC2 L026B1E DA L026C53 DA L026C53 DA $0000 DA $0000 DA L026C53 L026B28 DA L026C62 DA L026C78 DA L026C86 DA L026CA7 DA L026CAE DA L026CC8 DA L026CDF L026B36 PHA AND #$001F STA L026B6E PLA AND #$00E0 LSR LSR LSR LSR CMP #$0008 BCC L026B4D BRL L026A53 L026B4D TAX LDA L026B6E CMP L026AE0,X BCC L026B59 BRL L026A53 L026B59 ASL PHA LDA L026AE8,X CLC ADC $01,S PLY TAX LDA |$0000,X BNE L026B6B BRL L026A53 L026B6B DEC PHA RTS L026B6E DB $00 DB $00 L026B70 JSL L042ABB PHY PHA BCS L026B7B BRL L026A6D L026B7B LDA #$0102 BRL L026A28 L026B81 JSL L042A5C PHY PHA BCS L026B8C BRL L026A6D L026B8C LDA #$0101 BRL L026A28 L026B92 JSL L045089 BCS L026B9B BRL L026A6D L026B9B LDA #$0103 BRL L026A28 L026BA1 PEA $0001 JSL L0413FC PHA BRL L026A6D L026BAC PLY INY LDA #$0080 JSL L04172C PHY BRL L026A6D L026BB9 PLA JSL L0416F3 PHA BRL L026A6D L026BC2 LDX L026B6E PHX CPX #$0006 BCC L026BED LDA L026BDC,X AND #$00FF BEQ L026BD5 STA $03,S L026BD5 JSL L043069 BRL L026A25 L026BDC DB $01 DB $02 DB $02 DB $02 DB $04 DB $03 DB $0A DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $01 L026BED TXA ASL TAX LDA $03,S JSR (L026BF9,X) STA $03,S BRA L026BD5 L026BF9 DA L026C05 DA L026C06 DA L026C06 DA L026C06 DA L026C0D DA L026C15 L026C05 RTS L026C06 BIT #$0001 BEQ L026C05 INC RTS L026C0D BIT #$0003 BEQ L026C05 INC BRA L026C0D L026C15 PHA JSR L026C1F PLA BCC L026C05 INC BRA L026C15 L026C1F STA L026C4F STZ L026C51 LDX #$0008 L026C28 LDA #$0000 ASL L026C4F ROL ASL L026C4F ROL ADC L026C51 STA L026C51 DEX BNE L026C28 LDA L026C51 BEQ L026C4A CMP #$0003 BEQ L026C4A BCS L026C1F SEC RTS L026C4A LDA #$0000 CLC RTS L026C4F DB $00 DB $00 L026C51 DB $00 DB $00 L026C53 PLX PLY LDA L026B6E PHA PHY PHX JSL L042748 BRL L026A25 L026C62 LDA $01,S ORA $03,S BNE L026C71 PLA PLA JSL L042C85 BRL L026A25 L026C71 JSL L042BC0 BRL L026A25 L026C78 LDA $01,S AND #$FEFE STA $01,S JSL L042D43 BRL L026A25 L026C86 LDA $07,S XBA AND #$FF00 STA $07,S LDA $05,S AND #$00FF ORA $07,S STA $07,S LDA $03,S STA $05,S LDA $01,S STA $03,S PLA JSL L043774 BRL L026A25 L026CA7 JSL L043772 BRL L026A25 L026CAE LDA $01,S CMP #$8000 BNE L026CBE PLA PLA JSL L042ED4 BRL L026A25 L026CBE STA $03,S PLA JSL L042E01 BRL L026A25 L026CC8 LDA $07,S EOR $42 BEQ L026CD1 BRL L026B8C L026CD1 LDA $05,S TAY LDA [$3A],Y STA $03,S JSL L043813 BRL L026A25 L026CDF LDA $01,S ORA $03,S BNE L026CF4 PLA PLA PEA $0001 PEA $FF66 JSL L0435FB BRL L026A25 L026CF4 JSL L04386A BRL L026A25 L026CFB DB $00 L026CFC DB $00 L026CFD DB $00 DB $00 L026CFF DB $00 L026D00 DB $00 L026D01 DB $00 DB $00 L026D03 DB $00 L026D04 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L026D13 DB $00 DB $00 L026D15 DB $00 DB $00 L026D17 LDA L026CFC BEQ L026D60 LDY L026CFD LDX L026CFB L026D22 STY L026D01 STX L026CFF PHB PHY PLB LDA |$0002,X STA $12 LDA |$0000,X STA $10 PLB PLB SEP #$30 LDY #$04 LDX #$00 L026D3D LDA [$10],Y CMP L026D03,X BNE L026D51 INY INX CPX L026D03 BEQ L026D3D BCC L026D3D REP #$30 CLC RTS L026D51 REP #$30 LDA [$10] TAX LDY #$0002 LDA [$10],Y TAY ORA [$10] BNE L026D22 L026D60 SEC RTS L026D62 LDA L026CFC BEQ L026DA1 LDA L026D00 BEQ L026DA1 LDY L026CFD LDX L026CFB CPX L026CFF BNE L026DA3 CPY L026D01 BNE L026DA3 PHB PHY PLB LDA |$0002,X STA $12 LDA |$0000,X STA $10 PLB PLB PHY PHX LDY #$0002 LDA [$10] STA L026CFB LDA [$10],Y STA L026CFD L026D9A _DisposeHandle L026DA1 CLC RTS L026DA3 PHB PHY PLB LDA |$0002,X STA $12 LDA |$0000,X STA $10 PLB PLB LDY #$0002 LDA [$10] TAX LDA [$10],Y TAY ORA [$10] BEQ L026DA1 CPX L026CFF BNE L026DA3 CPY L026D01 BNE L026DA3 PHY PHX PHB PHY PLB LDA |$0002,X STA $16 LDA |$0000,X STA $14 PLB PLB LDY #$0002 LDA [$14] STA [$10] LDA [$14],Y STA [$10],Y BRA L026D9A L026DE7 LDA $F8 STA L026E62 LDA #$0006 STA L026D13 STZ L026D15 L026DF5 JSR L021320 BCS L026E28 CMP #$00DD BEQ L026E30 JSR L026E64 BCS L026E28 LDA #$0006 ADC L026D13 STA L026D13 INC L026D15 SEP #$30 LDY #$FF L026E14 INY LDA [$F8],Y CMP #$A0 BEQ L026E1F CMP #$DD BNE L026E14 L026E1F REP #$31 TYA ADC $F8 STA $F8 BRA L026DF5 L026E28 LDA #$0001 L026E2B JSR L020AB8 SEC RTS L026E30 INC $F8 LDX #$FFFF L026E35 INX JSR L021309 SEP #$20 STA L026D04,X REP #$20 BCC L026E35 CPX #$0000 BEQ L026E28 LDA L026E62 STA $F8 TXA SEP #$21 STA L026D03 REP #$20 ADC L026D13 STA L026D13 BCC L026E61 LDA #$0017 BRA L026E2B L026E61 RTS L026E62 DB $00 DB $00 L026E64 LDX #$0000 STX L026F5A SEP #$20 L026E6C LDY #$0000 L026E6F JSR L026F4B EORL L040326,X AND #$7F BNE L026E84 LDAL L040326,X BPL L026E98 INX INY BNE L026E6F L026E84 INX LDAL L040326-1,X BMI L026E84 INC L026F5A LDAL L040326,X BNE L026E6C REP #$20 BRA L026EB4 L026E98 REP #$21 INY TYA ADC $F8 STA $F8 LDA #$0001 STA L026F5E LDX L026F5A LDA L026F60,X AND #$00FF STA L026F5C BRA L026EFC L026EB4 LDA #$8000 STA L026F5A SEP #$20 LDX #$0000 L026EBF LDY #$0000 L026EC2 JSR L026F4B EORL L026F71,X AND #$7F BNE L026ED7 LDAL L026F71,X BPL L026EEB INX INY BNE L026EC2 L026ED7 INX LDAL L026F70,X BMI L026ED7 INC L026F5A LDAL L026F71,X BNE L026EBF REP #$20 L026EE9 SEC RTS L026EEB REP #$21 INY TYA ADC $F8 STA $F8 STZ L026F5C LDA #$0001 STA L026F5E L026EFC LDA [$F8] AND #$00FF BEQ L026F40 CMP #$00DD BEQ L026F40 CMP #$00A0 BEQ L026F40 CMP #$00A8 BEQ L026F23 CMP #$00AA BNE L026EE9 INC $F8 JSR L021564 BCS L026EE9 STA L026F5E BRA L026EFC L026F23 INC $F8 JSR L021564 BCS L026EE9 LDX L026F5C BNE L026F32 STA L026F5C L026F32 LDA [$F8] AND #$00FF CMP #$00A9 BNE L026EE9 INC $F8 BRA L026EFC L026F40 LDA L026F5A LDX L026F5E LDY L026F5C CLC RTS MX %10 L026F4B LDA [$F8],Y CMP #$E1 BCC L026F59 CMP #$FB BCS L026F59 AND #$DF STA [$F8],Y L026F59 RTS L026F5A DB $00 DB $00 L026F5C DB $00 DB $00 L026F5E DB $00 DB $00 L026F60 DB $01 DB $02 DB $02 DB $02 DB $04 DB $03 DB $0A DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L026F70 DB $01 L026F71 ASC "SK" ASC 'P' ASC "C" ASC 'S' ASC "C" DB $31 DB $00 MX %00 L026F79 JSR L026DE7 BCC L026F81 L026F7E BRL L02703E L026F81 JSR L026D17 BCS L026F89 JSR L026D62 L026F89 LDX L026D13 LDY #$0000 LDA $08 JSR L023ED6 BCS L026F7E PHY PHX LDA L026D03 PHA STZ L026D03 JSR L026D17 PLA STA L026D03 LDA L026CFC BNE L026FB5 PLX PLY STY L026CFD STX L026CFB BRA L026FC2 L026FB5 LDY #$0002 LDA $01,S STA [$10] LDA $03,S STA [$10],Y PLX PLY L026FC2 STY L026D01 STX L026CFF PHB PHY PLB LDA |$0000,X STA $10 LDA |$0002,X STA $12 PLB PLB LDY #$0002 LDA #$0000 STA [$10] STA [$10],Y INY INY SEP #$30 LDX #$00 L026FE7 LDA L026D03,X INX STA [$10],Y INY CPX L026D03 BEQ L026FE7 BCC L026FE7 REP #$30 LDA L026D15 STA [$10],Y INY INY L026FFE PHY JSR L021320 PLY CMP #$00DD BEQ L02703D PHY PHY PHY JSR L026E64 STA $03,S TYA STA $05,S PLY PLA STA [$10],Y INY INY PLA STA [$10],Y INY INY TXA STA [$10],Y INY INY PHY SEP #$30 LDY #$FF L027028 INY LDA [$F8],Y CMP #$A0 BEQ L027033 CMP #$DD BNE L027028 L027033 REP #$31 TYA ADC $F8 STA $F8 PLY BRA L026FFE L02703D CLC L02703E CLV RTS L027040 SEP #$30 LDY #$00 L027044 LDA [$F8],Y BEQ L02705C CMP #$A0 BEQ L027060 CMP #$E1 BCC L027056 CMP #$FB BCS L027056 AND #$DF L027056 STA L026D04,Y INY BRA L027044 L02705C REP #$30 SEC RTS L027060 STY L026D03 REP #$30 CPY #$0000 BEQ L02705C TYA ADC $F8 STA $F8 JSR L020F52 JSR L026D17 RTS L027076 JSR L021339 BCC L02707D L02707B SEC RTS L02707D STA L027121 LDA #$0001 STA L027123 JSR L021309 BCS L02709D CMP #$00AC BNE L02707B JSR L021564 BCS L02707B CMP #$0000 BEQ L02709D STA L027123 L02709D LDX L026CFF LDY L026D01 JSR L023EF2 STX $10 STY $12 LDY #$0004 LDA [$10],Y AND #$00FF CLC ADC #$0005 ADC $10 STA $10 BCC L0270BE INC $12 L0270BE LDA [$10] STA L026D15 LDY #$0002 L0270C6 LDA [$10],Y INY INY STA L027125 PHA LDA [$10],Y INY INY STA L027127 LDA [$10],Y INY INY STA L027129 PLA PHY ASL TAX BCC L0270E7 JSR (L02711B,X) BRA L0270EA L0270E7 JSR (L0270F9,X) L0270EA PLY BCS L0270F7 DEC L026D15 BNE L0270C6 DEC L027123 BNE L0270BE L0270F7 CLC RTS L0270F9 DA L027152 DA L027152 DA L027152 DA L027152 DA L027152 DA L027152 DA L027164 DA L027170 DA L02717A DA L027170 DA L0271BB DA L027170 DA L02718B DA L02718B DA L02718D DA L0271A3 DA L027164 L02711B DA L0271EF DA L027250 DA L027219 L027121 DB $00 DB $00 L027123 DB $00 DB $00 L027125 DB $00 DB $00 L027127 DB $00 DB $00 L027129 DB $00 DB $00 L02712B PEI $42 LDA L027121 PHA LDA L027127 PHA JSR L0271EF BCC L02713F PLA PLA PLA L02713D SEC RTS L02713F LDA L027125 PHA JSL L043069 LDA L027121 BEQ L02713D CMP $3E BEQ L02713D CLC RTS L027152 CLC LDA #$0000 L027156 ADC L027127 DEC L027129 BNE L027156 INC L027129 STA L027127 L027164 JSR L02712B BCS L02716F DEC L027129 BNE L027164 L02716E CLC L02716F RTS L027170 LDA L027127 BNE L027164 L027175 INC L027127 BRA L027164 L02717A LDA L027127 BNE L027164 LDY L027121 LDA [$3A],Y AND #$00FF BNE L02716E BRA L027175 L02718B CLC RTS L02718D LDY L027121 LDA [$3A],Y INC INC STA L027127 JSR L02712B BCS L02716F DEC L027129 BNE L02718D CLC RTS L0271A3 LDY L027121 LDA [$3A],Y AND #$00FF INC STA L027127 JSR L02712B BCS L02716F DEC L027129 BNE L0271A3 CLC RTS L0271BB SEP #$20 LDY L027121 LDA [$3A],Y STA L0271EE LDX #$0001 L0271C8 INX INY BEQ L0271EC BIT $5D BMI L0271D4 CPY $3E BCS L0271EC L0271D4 LDA [$3A],Y EOR L0271EE BPL L0271C8 STX L027127 REP #$20 JSR L02712B BCS L0271EC DEC L027129 BNE L0271BB CLC RTS L0271EC SEC RTS L0271EE DB $00 L0271EF LDA L027121 CMP $3E BEQ L02720B CLC ADC L027127 BIT $5C BMI L027210 BCS L02720B CMP $3E BEQ L027206 BCS L02720B L027206 STA L027121 CLC RTS L02720B STZ L027121 SEC L02720F RTS L027210 BCC L027206 CMP #$0001 BCS L02720B BRA L027206 L027219 LDY L027121 LDA [$3A],Y STA L027127 PHY PEI $42 PHY PEA $0002 PEA $0001 JSL L043069 PLY INY INY STY L027121 PHY JSR L0271EF PLY BCS L02720F LDA L027127 JSR L0242DC LDY L027121 BEQ L02724E DEC L027129 BNE L027219 CLC RTS L02724E SEC RTS L027250 LDY L027121 LDX #$0001 L027256 LDA [$3A],Y AND #$00FF BEQ L027269 INX INY BEQ L027269 BIT $5C BMI L027256 CPY $3E BCC L027256 L027269 TXA LDY L027121 JSR L0242DC STY L027121 CPY #$0000 BEQ L027287 BIT $5C BMI L027280 CPY $3E BCS L027287 L027280 DEC L027129 BNE L027250 CLC RTS L027287 STZ L027121 SEC RTS L02728C LDA L020007 BEQ L0272C5 PHA PHA PEA $8029 PEA $0000 PEA $0001 _LoadResource PLX PLY BCS L0272C5 JSR L023EF2 STX $10 STY $12 LDY #$0004 L0272B1 LDA [$10],Y PHA DEY DEY BPL L0272B1 PEA ^L027318 PEA L027318 _VersionString L0272C5 SEP #$30 LDX L027318 L0272CA LDA L027318,X ORA #$80 STA L027318,X DEX BNE L0272CA CLC LDA L027318 ADC L02730B ADC L027322 REP #$30 AND #$00FF PHA LDA #$0050 SEC SBC $01,S PLX LSR TAX LDY #$0003 JSL L0300E2 JSL L030314 ADR L02730B JSL L030314 ADR L027318 JSL L030314 ADR L027322 RTS L02730B STR "TFB-Disasm v" L027318 STR "1.0.6" ; was "1.0.5" "1.0.4" was "1.0.2" DB $00 DB $00 DB $00 DB $00 *L027322 STR " 19-SEP-2020"8D ; was "10-MAY-94" *L027322 STR " 21-MAR-2021"8D ; was "10-MAY-94" L027322 STR " 5-MAR-2023"8D ; was "21-MAR-2021" L027330 JSR L021586 LDA L0215CD BEQ L02734D PEA ^L027355 PEA L027355 PEA $2001 ; Create JSL GSOS2 BCS L027348 RTS L027348 JSR L020AF7 BRA L027353 L02734D LDA #$0001 JSR L020AB8 L027353 SEC RTS L027355 DW $0005 ; Parms for Create ADRL L0215CD ; file name DW $00E3 ; access DW $000F ; file type ADRL $00000000 ; aux type DW $000D ; storage L027365 JSL GSOS DW $200A ; GetPrefix ADRL L02739E SEP #$20 LDX L02005B BEQ L027392 L027376 DEX BEQ L027392 LDA L02005C,X CMP #$3A BNE L027376 CPX #$0001 BEQ L027392 STX L02005B JSL GSOS DW $2009 ; SetPrefix ADRL L027396 L027392 REP #$30 CLC RTS L027396 DW $0002 ; Parms for SetPrefix DW $0000 ; prefix num ADRL L02005B ; prefix ptr L02739E DW $0002 ; Parms for GetPrefix DW $0000 ; prefix num ADRL L020059 ; prefix ptr L0273A6 REP #$30 BRL L0273B2 DW $7771 STR 'CPFX' L0273B2 PEA ^L0276FE PEA L0276FE PEA $200A ; GetPrefix JSL GSOS2 BCS L0273FD PEA ^L027706 PEA L027706 PEA $200E ; ExpandPath JSL GSOS2 BCS L0273FD JSR L02765E BCS L027400 JSR L027535 L0273D8 JSR L0276B0 L0273DB JSL L03059F BCS L0273DB AND #$007F CMP #$000D BEQ L0273F5 CMP #$001B BEQ L0273F8 JSR L027458 BCS L027400 BRA L0273D8 L0273F5 JSR L027437 L0273F8 JSR L027447 CLC RTS L0273FD JSR L020AF7 L027400 JSR L027447 SEC CLV RTS L027406 LDA L02771A BEQ L02740E JSR L027447 L02740E PEA ^L027718 PEA L027718 PEA $2010 ; Open JSL GSOS2 BCS L0273FD LDA L02771A STA L027738 STA L027722 RTS L027427 PEA ^L027736 PEA L027736 PEA $201C ; GetDirEntry JSL GSOS2 BCS L0273FD RTS L027437 PEA ^L027710 PEA L027710 PEA $2009 ; SetPrefix JSL GSOS2 BCS L0273FD RTS L027447 PEA ^L027720 PEA L027720 PEA $2014 ; Close JSL GSOS2 STZ L02771A RTS L027458 LDX #$0000 L02745B CMP L027472,X BEQ L02746F INX INX CPX #$0008 BCC L02745B _SysBeep RTS L02746F JMP (L02747A,X) L027472 DW $000A DW $000B DW $0008 DW $0015 L02747A DA L0274D5 DA L0274E4 DA L027699 DA L02766A L027482 LDA #$0001 BNE L02748A L027487 LDA #$FFFF L02748A STA L0274D3 LDA L02771A BNE L02749A JSR L027591 CPX #$0002 BCC L0274F6 L02749A LDX L027748 L02749D CLC LDA L02773E ADC L0274D3 STA L02773E DEC CMP L027748 BCC L0274BB LDA #$0001 BIT L0274D3 BPL L0274B8 LDA L027748 L0274B8 STA L02773E L0274BB PHX JSR L027427 PLX BCC L0274C3 RTS L0274C3 CLV LDA L027746 CMP #$000F BEQ L0274D1 DEX BNE L02749D SEP #$40 L0274D1 CLC RTS L0274D3 DB $00 DB $00 L0274D5 LDA L02005B BEQ L0274D1 JSR L027482 JSR L027588 JSR L027535 RTS L0274E4 LDA L02005B BEQ L0274D1 JSR L027487 JSR L027588 JSR L027535 RTS L0274F3 STZ L027726 L0274F6 INC L027726 PEA ^L027724 PEA L027724 PEA $202C ; DInfo JSL GSOS2 BCS L0274F3 PEA ^L02772C PEA L02772C PEA $2008 ; Volume JSL GSOS2 BCS L0274F6 LDX #$0010 L02751A LDA L02005B,X STA L02774C,X DEX DEX BPL L02751A RTS L027525 STZ L02773E JSR L027427 BCS L027534 LDA L027744 STA L027748 CLC L027534 RTS L027535 LDA L02774C STA L027787 BEQ L02756E SEP #$20 LDX L02005B LDY #$0000 LDA L02774E CMP #$3A BEQ L027559 LDA L02005C,X CMP #$3A BEQ L027559 LDA #$3A STA L02005D,X INX L027559 LDA L02774E,Y STA L027789,Y STA L02005D,X INY INX DEC L02774C BNE L027559 REP #$20 STX L02005B L02756E CLC RTS SEP #$20 LDX L02005B BEQ L027585 INX LDA #$3A CMP L02005B,X BEQ L027585 STA L02005C,X STX L02005B L027585 REP #$20 RTS L027588 JSR L027591 DEX STX L02005B CLC RTS L027591 SEP #$20 LDX L02005B L027596 DEX LDA L02005C,X CMP #$3A BNE L027596 REP #$20 RTS L0275A1 JSR L027591 PHX CPX #$0001 BEQ L0275AB INX L0275AB LDY #$0000 SEP #$20 L0275B0 LDA L02005C,X STA L027789,Y INY INX CPX L02005B BCC L0275B0 BNE L0275CA LDA L02005C,X CMP #$3A BEQ L0275CA STA L027789,Y INY L0275CA STY L027787 REP #$20 PLX DEX STX L02005B CLC RTS L0275D6 LDA L02005B BNE L0275E7 L0275DB JSR L0274F6 JSR L027624 STZ L02005B BCS L0275DB RTS L0275E7 JSR L027406 BCC L0275ED L0275EC RTS L0275ED JSR L027525 BCS L0275EC LDA L027748 STA L02764D BEQ L02761E L0275FA INC L02773E JSR L027427 BCS L0275EC LDA L027746 CMP #$000F BNE L027617 JSR L027624 BCS L027617 LDA L027744 STA L027785 CLC RTS L027617 REP #$20 DEC L02764D BNE L0275FA L02761E LDA #$0044 BRL L0273FD L027624 LDA L02774C TAX CMP L027787 BNE L027649 SEP #$20 L02762F LDA L02774D,X JSR L027651 STA L02764F LDA L027788,X JSR L027651 CMP L02764F BNE L027649 DEX BNE L02762F REP #$21 RTS L027649 REP #$20 SEC RTS L02764D DB $00 DB $00 L02764F DB $00 DB $00 MX %11 L027651 AND #$7F CMP #$61 BCC L02765D CMP #$7B BCS L02765D AND #$5F L02765D RTS MX %00 L02765E LDA L02005B BEQ L027669 JSR L0275A1 JSR L0275D6 L027669 RTS L02766A LDA L02005B BNE L027672 BRL L0274F3 L027672 JSR L027406 BCS L027694 JSR L027525 BCS L027694 LDA L027748 BEQ L027688 JSR L027482 BCS L027694 BVC L027690 L027688 JSR L027447 JSR L02765E BCS L027694 L027690 JSR L027535 RTS L027694 JSR L027447 SEC RTS L027699 LDA L02005B BEQ L0276AE JSR L027447 JSR L027588 BEQ L0276AE JSR L02765E BCS L0276AF JSR L027535 L0276AE CLC L0276AF RTS L0276B0 JSR L020CED LDX #$0000 LDY #$0017 JSL L0300E2 LDA #$00BE JSR L0276F7 LDX #$0000 LDA L02005B BNE L0276D8 JSL L0302E1 STR "[clear]" RTS L0276D8 CMP #$004F BCC L0276E7 SBC #$004D TAX LDA #$0049 JSR L0276F7 L0276E7 LDA L02005D,X ORA #$0080 JSR L0276F7 INX CPX L02005B BCC L0276E7 RTS L0276F7 PHX JSL L0301F9 PLX RTS L0276FE DW $0002 ; Parms for GetPrefix DW $0000 ; prefix num ADRL L021656 ; prefix ptr L027706 DW $0002 ; Parms for ExpandPath ADRL L021658 ; path name ADRL L020059 ; new pathname L027710 DW $0002 ; Parms for SetPrefix DW $0000 ; prefix num ADRL L02005B ; prefix ptr L027718 DW $0003 ; Parms for Open L02771A DW $0000 ; ref num ADRL L02005B ; path name L027720 DW $0001 ; Parms for Close L027722 DW $0000 ; ref num L027724 DW $0002 ; Parms for DInfo L027726 DW $0000 ; device num ADRL L02775E ; device name L02772C DW $0002 ; Parms for Volume ADRL L027760 ; device name ADRL L020059 ; volume name L027736 DW $0007 ; Parms for GetDirEntry L027738 DW $0000 ; ref num DW $0000 ; flags DW $0000 ; base L02773E DW $0000 ; displacement ADRL L02774A ; file name L027744 DW $0000 ; entry num L027746 DW $0000 ; file type L027748 DB $00 DB $00 L02774A DB $13 DB $00 L02774C DB $00 L02774D DB $00 L02774E DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L02775E DB $27 DB $00 L027760 DB $23 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L027785 DB $00 DB $00 L027787 DB $00 L027788 DB $00 L027789 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L027798 SEC CLV RTS L02779B LDA [$F8] AND #$007F BNE L0277A5 BRL L027957 L0277A5 STZ L027D43 LDA $3E STA L027D47 LDA $5C STA L027D49 LDA [$F8] AND #$007F CMP #$005B BNE L0277D6 STZ L027D49 JSR L021525 BCC L0277C7 BRL L0278CC L0277C7 STA L027D43 INX STX L027D47 BNE L0277D6 LDA #$FFFF STA L027D49 L0277D6 STZ L027D82 STZ L027D4B SEP #$20 L0277DE LDA [$F8] BEQ L027830 AND #$7F CMP #$20 BEQ L027830 CMP #$3F BEQ L02782B CMP #$22 BNE L0277F3 BRL L02788C L0277F3 CMP #$3E BNE L0277FA BRL L0278D6 L0277FA CMP #$5E BNE L027801 BRL L0278CF L027801 CMP #$3A BNE L027808 BRL L027903 L027808 JSR L0212C9 BCS L027888 SEC SBC #$30 CMP #$0A BCC L027816 SBC #$07 L027816 PHA JSR L027ADF PLA TSB L027D78 LDA #$0F TSB L027D7C L027823 INC L027D77 L027826 JSR L027AF6 BRA L0277DE L02782B JSR L027ADF BRA L027823 L027830 LDA L027D77 BEQ L02787B CMP #$09 BCC L02783E LDA #$08 STA L027D77 L02783E BIT #$01 BEQ L027859 INC STA L027D77 LSR DEC TAX LDA #$0F AND L027D78,X STA L027D78,X LDA #$F0 ORA L027D7C,X STA L027D7C,X L027859 LSR L027D77 LDY #$0000 LDX L027D82 L027862 LDA L027D78,Y STA L027D84,X LDA L027D7C,Y STA L027DE8,X STZ L027E4C,X INY INX DEC L027D77 BNE L027862 STX L027D82 L02787B JSR L020F52 LDA [$F8] BEQ L027885 BRL L0277DE L027885 BRL L027957 L027888 LDA #$01 BRA L0278C9 L02788C JSR L027AF6 LDA [$F8] BEQ L027885 AND #$7F CMP #$22 BEQ L027826 LDX L027D82 STA L027D84,X PHA LDA #$7F STA L027DE8,X STZ L027E4C,X PLA CMP #$3F BNE L0278B2 STZ L027DE8,X BRA L0278C4 L0278B2 JSR L0212E9 BCS L0278C4 AND #$5F STA L027D84,X LDA #$5F STA L027DE8,X STZ L027E4C,X L0278C4 INC L027D82 BRA L02788C L0278C9 JSR L020AB8 L0278CC CLV SEC RTS L0278CF REP #$20 LDA #$0101 BRA L0278EF L0278D6 REP #$20 LDY #$0001 LDA [$F8],Y AND #$007F CMP #$003E BEQ L0278EA LDA #$0202 BRA L0278EF L0278EA INC $F8 LDA #$0303 L0278EF JSR L027ABD BCS L0278CC SEP #$20 LDA [$F8] AND #$7F BEQ L027957 CMP #$20 BNE L027888 BRL L0277DE L027903 REP #$20 INC $F8 JSR L026E64 BCS L0278CC ASL XBA ROR XBA PHX PHY LDX L027D82 STA L027D84,X CMP #$0080 BEQ L027922 CMP #$0006 BCS L027936 L027922 LDA $03,S TAY LDA $01,S L027927 DEY BEQ L02792F CLC ADC $01,S BRA L027927 L02792F STA $01,S LDA #$0001 STA $03,S L027936 LDA #$0004 STA L027E4C,X INX PLA STA L027D84,X INX INX PLA STA L027D84,X INX INX STX L027D82 LDA #$FFFF STA L027D4B SEP #$20 BRL L02787B L027957 REP #$20 LDA L027D82 BNE L027964 LDA #$0019 BRL L0278C9 L027964 LDAL $E0BFFF BPL L02797B STAL $E0C010 AND #$7F00 CMP #$1B00 BEQ L027998 CMP #$0300 BEQ L027998 L02797B JSR L027AFD BCC L02799B L027980 INC L027D43 BEQ L027998 BIT L027D49 BMI L027964 LDA L027D43 CMP L027D47 BCC L027964 LDA L027D45 STA L027D43 L027998 CLC CLV RTS L02799B BIT $48 BPL L0279B6 LDX #$0000 LDA L027D43 AND #$FFF0 CMP #$00A0 BCS L0279B0 LDA #$00A0 L0279B0 SEC SBC #$00A0 BRA L0279C8 L0279B6 LDA L027D43 JSL L0416F3 PHA PEA $0000 PEA $0008 JSL L041462 L0279C8 STA $54 STX $56 JSR L021E04 JSR L027CCA BCS L027A2B AND #$005F CMP #$0059 BNE L027A19 BIT L027D4B BPL L027A19 LDX #$0000 L0279E4 LDA L027E4C,X AND #$00FF CMP #$0004 BNE L027A10 LDA L027E4D,X STA L027D6F LDA L027D85,X STA L027D73 LDA L027D87,X STA L027D75 LDA L027D84,X AND #$00FF PHX JSR L027A2E PLX INX INX INX INX L027A10 INX CPX L027D82 BCC L0279E4 JSR L021E04 L027A19 CLC LDA L027D80 ADC L027D43 BCS L027A2B DEC STA L027D43 BCS L027A2B BRL L027980 L027A2B CLC CLV L027A2D RTS L027A2E CMP #$0080 BEQ L027A2D BCS L027A6D L027A35 PHA PEI $42 LDY L027D6F PHY LDX L027D73 BNE L027A56 PHA ASL TAX LDA L027C5C,X BEQ L027A4E JSR (L027C5C,X) BRA L027A51 L027A4E LDA #$0001 L027A51 STA L027D73 TAX PLA L027A56 PHX PHA JSL L043069 CLC LDA L027D73 ADC L027D6F STA L027D6F PLA DEC L027D75 BNE L027A35 RTS L027A6D AND #$007F ASL TAX JMP (L027A75,X) L027A75 DA $0000 DA L027A7B DA L027A90 L027A7B LDY L027D6F PHY JSR L027C90 INY STY L027D6F PLY JSR L0242DC DEC L027D75 BNE L027A7B RTS L027A90 LDY L027D6F PHY JSR L027C8B PHA CLC ADC L027D6F STA L027D6F LDA $03,S PEI $42 PHA PEA $0002 PEA $0001 JSL L043069 PLA DEC DEC PLY INY INY JSR L0242DC DEC L027D75 BNE L027A90 RTS L027ABD LDX L027D82 STA L027E4C,X STA L027E4E,X INC $F8 JSR L021339 BCS L027ADE LDX L027D82 STA L027D84,X TYA STA L027D86,X INX INX INX INX STX L027D82 L027ADE RTS L027ADF PHP REP #$30 LDX #$0004 L027AE5 ASL L027D78 ROL L027D7A ASL L027D7C ROL L027D7E DEX BNE L027AE5 PLP RTS L027AF6 REP #$20 INC $F8 SEP #$20 RTS L027AFD SEP #$20 LDY L027D43 LDX #$0000 L027B05 LDA L027E4C,X BNE L027B0D BRL L027BF1 L027B0D DEC BNE L027B13 BRL L027BA6 L027B13 PHX PHY LDX #$0005 STX L027CBA DEC BEQ L027B7F LDX #$000E STX L027CBA DEC BEQ L027B7F PLY PLX PHY INX REP #$21 TYA STA L027E4C,X LDA L027D86,X STA L027D75 LDA L027D83,X AND #$00FF CMP #$0080 BCS L027B4E PHX ASL TAX LDA L027D4D,X PLX CMP #$0000 BEQ L027B5E L027B4E LDA L027D84,X BEQ L027B5E L027B53 DEC L027D75 BEQ L027B6C CLC ADC L027D84,X BRA L027B53 L027B5E LDA L027D83,X AND #$00FF PHX JSR L027C15 PLX STA L027D84,X L027B6C INX INX INX CLC ADC $01,S STA $01,S PLY SEP #$20 BCS L027B7C BRL L027BFC L027B7C BRL L027C11 L027B7F REP #$20 TYA JSL L0410BB SEP #$20 PLY ASL BCC L027B9F XBA BMI L027B9F LDA [$3A],Y LDX #$0000 L027B94 CMP L027CBC,X BEQ L027BA2 INX CPX L027CBA BCC L027B94 L027B9F PLX BRA L027C11 L027BA2 PLX INY BRA L027BB7 L027BA6 REP #$20 PHY TYA JSL L0410BB PLY AND #$9880 CMP #$0080 BEQ L027C11 L027BB7 REP #$20 PHY PHX PEI $42 PHY PEA ^L027D39 PEA L027D39 JSL L045089 PLX PLY BCS L027C11 LDA L027D39 CMP #$0004 BCS L027C11 LDA L027D84,X CMP L027D3F BNE L027C11 LDA L027D86,X CMP L027D41 BNE L027C11 TYA CLC ADC L027D3B TAY SEP #$20 INX INX INX BRA L027BFC L027BF1 LDA [$3A],Y AND L027DE8,X CMP L027D84,X BNE L027C11 INY L027BFC INX CPX L027D82 BCS L027C05 BRL L027B05 L027C05 REP #$20 SEC TYA SBC L027D43 STA L027D80 CLC RTS L027C11 REP #$20 SEC RTS L027C15 STZ L027D73 STY L027D6F STA L027D71 L027C1E LDA L027D71 XBA ASL XBA TAX BCS L027C53 LDA L027D4D,X BNE L027C31 BPL L027C4A L027C2E LDA #$0001 L027C31 CLC PHA ADC L027D73 STA L027D73 PLA ADC L027D6F STA L027D6F TAY DEC L027D75 BNE L027C1E LDA L027D73 RTS L027C4A LDA L027C5C,X BEQ L027C2E JSR (L027C5C,X) RTS L027C53 LDA L027C7E,X BEQ L027C2E JSR (L027C7E,X) RTS L027C5C DA $0000 DA $0000 DA $0000 DA $0000 DA $0000 DA $0000 DA $0000 DA $0000 DA $0000 DA $0000 DA L027CA2 DA $0000 DA $0000 DA $0000 DA L027C8B DA L027C84 DA $0000 L027C7E DA $0000 DA L027C90 DA L027C8B L027C84 LDA [$3A],Y AND #$00FF INC RTS L027C8B LDA [$3A],Y INC INC RTS L027C90 LDX #$0001 SEP #$20 L027C95 LDA [$3A],Y BEQ L027CB5 INX INY CPY L027D47 BNE L027C95 BRA L027CB5 L027CA2 LDX #$0001 SEP #$20 LDA [$3A],Y STA L027CB9 L027CAC INY INX LDA [$3A],Y EOR L027CB9 BPL L027CAC L027CB5 REP #$20 TXA RTS L027CB9 DB $00 L027CBA DB $05 DB $00 L027CBC DB $20 DB $22 DB $4C DB $5C DB $82 DB $80 DB $90 DB $B0 DB $10 DB $30 DB $D0 DB $F0 DB $50 DB $70 L027CCA JSR L020CED LDY #$0017 LDX #$0000 JSL L0300E2 JSL L0302E1 STR "> Found at: " PEI $42 LDA L027D43 PHA JSL L042A5C PHA PHY JSL L03065A LDA #$00AF JSL L03022D JSL L030670 JSL L0302E1 STR ". " BIT L027D4B BPL L027D1F JSL L0302E1 STR "Set csts ? " L027D1F JSL L03034A PHA JSR L020CED PLA AND #$007F CMP #$000D SEC BEQ L027D38 CMP #$001B SEC BEQ L027D38 CLC L027D38 RTS L027D39 DB $00 DB $00 L027D3B DB $00 DB $00 DB $00 DB $00 L027D3F DB $00 DB $00 L027D41 DB $00 DB $00 L027D43 DB $00 DB $00 L027D45 DB $00 DB $00 L027D47 DB $00 DB $00 L027D49 DB $00 DB $00 L027D4B DB $00 DB $00 L027D4D DB $01 DB $00 DB $02 DB $00 DB $02 DB $00 DB $02 DB $00 DB $04 DB $00 DB $03 DB $00 DB $0A DB $00 DB $FF DB $FF DB $FF DB $FF DB $FF DB $FF DB $00 DB $00 DB $FF DB $FF DB $FF DB $FF DB $FF DB $FF DB $00 DB $00 DB $00 DB $00 DB $01 DB $00 L027D6F DB $00 DB $00 L027D71 DB $00 DB $00 L027D73 DB $00 DB $00 L027D75 DB $00 DB $00 L027D77 DB $00 L027D78 DB $00 DB $00 L027D7A DB $00 DB $00 L027D7C DB $00 DB $00 L027D7E DB $00 DB $00 L027D80 DB $00 DB $00 L027D82 DB $00 L027D83 DB $00 L027D84 DB $00 L027D85 DB $00 L027D86 DB $00 L027D87 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L027DE8 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L027E4C DB $00 L027E4D DB $00 L027E4E DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L027EB0 LDA $5E STA L027F2B STZ L027F23 LDA $3E STA L027F25 LDA $5C STA L027F27 LDA [$F8] AND #$007F CMP #$005B BNE L027EE3 STZ L027F27 JSR L021525 CLV BCC L027ED6 RTS L027ED6 STA L027F23 STX L027F25 TXA BNE L027EE3 DEC STA L027F27 L027EE3 LDA #$0003 STA L027F21 LDA [$F8] AND #$00FF BEQ L027F2D STZ L027F21 L027EF3 JSR L021309 BCS L027F2D CMP #$00C1 BNE L027F08 LDA #$0001 ORA L027F21 STA L027F21 BRA L027EF3 L027F08 CMP #$00D3 BNE L027F18 LDA #$0002 ORA L027F21 STA L027F21 BRA L027EF3 L027F18 LDA #$0001 JSR L020AB8 CLV SEC RTS L027F21 DB $00 DB $00 L027F23 DB $00 DB $00 L027F25 DB $00 DB $00 L027F27 DB $00 DB $00 L027F29 DB $00 DB $00 L027F2B DB $00 DB $00 L027F2D LSR L027F21 BCC L027F3C JSR L027F80 LDA L027F2B STA $5E BCS L027F49 L027F3C LSR L027F21 BCC L027F49 JSR L0281DD LDA L027F2B STA $5E L027F49 CLC RTS L027F4B LDA L027F29 INC BEQ L027F5B L027F51 BIT L027F27 BMI L027F5D CMP L027F25 BCC L027F5D L027F5B SEC RTS L027F5D STA L027F29 CLC RTS L027F62 CLC ADC L027F29 BCS L027F5B BRA L027F51 L027F6A LDY #$FFFF STY $48 SEC SBC #$0030 BCS L027F78 LDA #$0000 L027F78 STA $54 STZ $56 JSR L021E04 RTS L027F80 LDA L027F23 STA L027F29 LDA $5E AND #$3FFF ORA #$8000 STA $5E L027F90 LDY L027F29 LDA #$1800 JSL L041764 BCS L027FB4 STY L027F29 BIT L027F27 BMI L027FA9 CPY L027F25 BCS L027FB4 L027FA9 JSR L0280B9 BCS L027FB6 JSR L027FC0 BCC L027F90 RTS L027FB4 CLC RTS L027FB6 LDA L028096 JSR L027F62 BCC L027F90 CLC RTS L027FC0 LDA L028092 JSR L027F6A LDA L028096 DEC ASL ASL TAX LDA L02809A,X STA L027FEA+$D LDA L02809A+2,X STA L027FEA+$F JSR L020CED LDY #$0017 LDX #$0000 JSL L0300E2 JSL L0302E1 L027FEA STR "> adresses: ....x" LDA L028098 PHA JSL L030670 JSL L0302E1 STR " in [" LDA L028092 JSR L02806B LDA #$00AE JSL L03022D LDA L028094 DEC JSR L02806B JSL L0302E1 STR "]. Set ? " JSR L02807D BCS L028065 AND #$00DF CMP #$00D9 BNE L02805E JSL L03022D PEI $42 LDA L028092 PHA SEC LDA L028094 SBC L028092 PHA LDX L028096 LDA L0280AA,X AND #$00FF PHA JSL L043069 L02805E LDA L028094 STA L027F29 CLC L028065 PHP JSR L020CED PLP RTS L02806B PEI $42 PHA JSL L042A5C PHA PHY JSL L03065A JSL L030670 RTS L02807D JSL L03034A AND #$00FF CMP #$008D SEC BEQ L028091 CMP #$009B SEC BEQ L028091 CLC L028091 RTS L028092 DB $00 DB $00 L028094 DB $00 DB $00 L028096 DB $00 DB $00 L028098 DB $00 DB $00 L02809A ASC " DB" ASC " DA" ASC " ADR" ASC "ADRL" L0280AA DB $00 DB $00 DB $03 DB $05 DB $04 L0280AF DB $00 DB $00 L0280B1 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L0280B9 LDA L027F29 STA L028092 LDA #$0001 STA L028096 JSL L0410BB BIT #$8000 BNE L028145 PEI $42 LDA L027F29 PHA PEA ^L0280AF PEA L0280AF JSL L045089 BCS L028145 LDA L0280AF CMP #$0004 BCS L028145 LDA #$0001 STA L028098 JSR L0281BA LDA L0280B1 STA L028096 L0280F7 CLC LDA L028096 ADC L027F29 BCS L02814D BIT L027F27 BMI L02810A CMP L027F25 BCS L02814D L02810A STA L027F29 JSL L0410BB BIT #$8000 BNE L02814D BIT #$1800 BEQ L02814D PEI $42 LDA L027F29 PHA PEA ^L0280AF PEA L0280AF JSL L045089 BCS L02814D LDA L0280AF CMP #$0004 BCS L02814D JSR L0281BA LDA L0280B1 CMP L028096 BNE L02814D INC L028098 BRA L0280F7 L028145 LDA L028092 STA L027F29 SEC RTS L02814D LDA L028098 CMP #$0001 BEQ L028145 LDA L027F29 STA L028094 LDX L028096 CPX #$0001 BEQ L0281B8 CPX #$0004 BEQ L0281B8 LDA L028092 BEQ L0281B8 DEC PHA JSL L0410BB PLY BIT #$9800 BNE L0281B8 LDA [$3A],Y AND #$00FF CPX #$0002 BEQ L0281A4 CMP #$005C BEQ L028195 CMP #$0022 BNE L0281B8 LDA L028098 CMP #$0002 BEQ L028145 L028195 CLC LDA L028096 ADC L028092 STA L028092 DEC L028098 BRA L0281B8 L0281A4 CMP #$007C BEQ L028195 CMP #$006C BEQ L028195 CMP #$00DC BEQ L028195 CMP #$004C BEQ L028195 L0281B8 CLC RTS L0281BA LDA L0280B1 CMP #$0003 BNE L0281DC LDY L027F29 INY INY INY LDA [$3A],Y AND #$00FF BNE L0281DC TYA JSL L0410BB BIT #$1800 BNE L0281DC INC L0280B1 L0281DC RTS L0281DD LDA L027F23 STA L027F29 LDA $5E AND #$3FFF ORA #$4000 STA $5E L0281ED LDY L027F29 JSR L02820E BCS L028207 LDA L027F29 JSL L0410BB AND #$8000 BNE L028207 JSR L02824D BCC L0281ED RTS L028207 JSR L027F4B BCC L0281ED CLC RTS L02820E LDA [$3A],Y AND #$00FF CMP #$0005 BCC L028249 CMP #$0051 BCS L028249 TAX SEP #$20 L028220 INY LDA [$3A],Y AND #$7F CMP #$07 BEQ L028243 CMP #$0A BEQ L028243 CMP #$0D BEQ L028243 CMP #$20 BCC L028249 LDA [$3A],Y CMP #$40 BCC L028249 CMP #$A0 BCS L028243 CMP #$60 BCS L028249 L028243 DEX BNE L028220 REP #$21 RTS L028249 REP #$20 SEC RTS L02824D LDA L027F29 JSR L027F6A JSR L020CED LDY #$0017 LDX #$0000 JSL L0300E2 JSL L0302E1 STR "> string: STR at $" LDA L027F29 JSR L02806B JSL L0302E1 STR ". Set ? " JSR L02807D BCS L0282BC AND #$00DF CMP #$00D9 BNE L0282B9 JSL L03022D PEI $42 LDY L027F29 PHY LDA [$3A],Y AND #$00FF INC PHA CLC ADC L027F29 DEC STA L027F29 PEA $000F JSL L043069 L0282B9 JSR L027F4B L0282BC PHP JSR L020CED PLP RTS L0282C2 DB $00 DB $00 L0282C4 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L0283C2 DB $00 DB $00 L0283C4 DB $00 DB $00 L0283C6 ENT DB $00 DB $00 L0283C8 DB $00 DB $00 L0283CA ENT DB $00 DB $00 L0283CC DB $00 L0283CD DB $00 L0283CE DB $00 DB $00 L0283D0 DB $00 L0283D1 DB $00 L0283D2 DB $00 DB $00 L0283D4 DB $00 DB $00 L0283D6 DB $00 DB $00 L0283D8 DB $00 DB $00 L0283DA DB $00 DB $00 L0283DC DB $00 L0283DD DB $00 L0283DE DB $00 L0283DF DB $00 L0283E0 DB $00 DB $00 L0283E2 DB $00 DB $00 L0283E4 ENT DB $00 DB $00 L0283E6 DB $00 DB $00 L0283E8 DB $00 DB $00 L0283EA DB $00 DB $00 L0283EC DB $00 DB $00 L0283EE DB $00 DB $00 L0283F0 DB $00 L0283F1 DB $00 L0283F2 DB $00 L0283F3 DB $00 L0283F4 DB $00 DB $00 L0283F6 DB $00 DB $00 L0283F8 DB $00 DB $00 L0283FA DB $00 DB $00 L0283FC DB $0A L0283FD DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L028407 DB $00 L028408 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L028428 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L028449 DB $00 DB $00 L02844B DB $00 DB $00 L02844D DB $00 DB $00 L02844F DB $00 DB $00 L028451 DB $00 DB $00 L028453 DB $00 DB $00 L028455 DB $00 DB $00 L028457 DB $00 DB $00 L028459 DB $00 DB $00 L02845B DB $00 DB $00 L02845D DB $00 DB $00 L02845F DB $00 DB $00 L028461 DB $00 DB $00 L028463 DB $00 DB $00 L028465 DB $00 DB $00 L028467 DB $00 DB $00 L028469 DB $00 DB $00 L02846B DB $00 DB $00 L02846D DB $00 DB $00 L02846F DB $00 DB $00 L028471 STZ L02844D LDA L028457 STA L028671 STA L028679 STA L028683 STA L028695 STA L0286A7 PEA ^L02866F PEA L02866F PEA $2017 ; GetMark JSL GSOS2 BCC L028498 BRL L0285D3 L028498 PEA ^L028681 PEA L028681 PEA $2012 ; Read JSL GSOS2 BCC L0284AA BRL L0285D3 L0284AA JSR L02862C BCC L0284B0 RTS L0284B0 LDA L0283F8 CLC ADC L028673 STA L02867D LDA #$0000 ADC L028673+2 STA L02867D+2 PEA ^L028677 PEA L028677 PEA $2016 ; SetMark JSL GSOS2 BCC L0284D5 BRL L0285D3 L0284D5 LDA #$000A STA L02869B LDA L0283DD AND #$00FF STA L028407 BNE L0284E9 INC L02869B L0284E9 PEA ^L028693 PEA L028693 PEA $2012 ; Read JSL GSOS2 BCC L0284FB BRL L0285D3 L0284FB LDA L028407 AND #$00FF CMP #$0020 BCC L02850C LDA #$0020 STA L028407 L02850C STA L0286AD PEA ^L0286A5 PEA L0286A5 PEA $2012 ; Read JSL GSOS2 BCC L028521 BRL L0285D3 L028521 SEP #$20 LDX #$000A L028526 LDA L0283FC,X JSR L0285D8 STA L0283FC,X DEX BNE L028526 LDX #$0020 L028535 LDA L028407,X JSR L0285D8 STA L028407,X STA L028428,X DEX BNE L028535 LDA L028407 STA L028428 TAX BEQ L02856B L02854D LDA L028428,X CMP #$A0 BNE L028568 DEX DEC L028428 BNE L02854D BRA L02856B L02855C LDA L028428,X CMP #$A0 BNE L028568 LDA #$DF STA L028428,X L028568 DEX BNE L02855C L02856B JSR L0285EC REP #$20 LDA #$002D STA L0283F8 LDA L0283FA CLC ADC L028673 STA L02867D LDA #$0000 ADC L028673+2 STA L02867D+2 PEA ^L028677 PEA L028677 PEA $2016 ; SetMark JSL GSOS2 BCS L0285D3 LDA L0283DF AND #$00FF DEC BNE L0285D1 JSR L0286B7 CLC LDA L028673 ADC L0283D0 TAX LDA L028673+2 ADC L0283D2 CMP L02845B BCC L0285D1 BNE L0285BE CPX L028459 BCC L0285D1 L0285BE SEC LDA L028459 SBC L028673 STA L0283D0 LDA L02845B SBC L028673+2 STA L0283D2 L0285D1 CLC RTS L0285D3 JSR L020AF7 SEC RTS MX %11 L0285D8 ORA #$80 CMP #$A0 BCS L0285E0 LDA #$A0 L0285E0 RTS L0285E1 CMP #$E1 BCC L0285EB CMP #$FB BCS L0285EB AND #$DF L0285EB RTS L0285EC PHP SEP #$30 LDX L028407 CPX L028656 BCC L0285FA LDX L028656 L0285FA LDA L028407,X JSR L0285E1 CMP L028656,X BNE L02860A DEX BNE L0285FA BEQ L028623 L02860A LDX L028407 CPX L028662 BCC L028615 LDX L028662 L028615 LDA L028407,X JSR L0285E1 CMP L028662,X BNE L02862A DEX BNE L028615 L028623 REP #$30 DEC L02844D PLP RTS L02862A PLP RTS L02862C LDA L0283D2 CMP #$0100 BCS L02864E ORA L0283D0 BEQ L02864E LDA L0283D6 ORA L0283DA AND #$FF00 BNE L02864E LDA L0283F8 CMP L0283FA BCS L02864E CLC RTS L02864E LDA #$001B JSR L020AB8 SEC RTS L028656 STR "EXPRESSLOAD" L028662 STR "~EXPRESSLOAD" L02866F DW $0002 ; Parms for GetMark L028671 DW $0000 ; ref num L028673 ADRL $00000000 ; position L028677 DW $0003 ; Parms for SetMark L028679 DW $0000 ; ref num DW $0000 ; base L02867D ADRL $00000000 ; displacement L028681 DW $0005 ; Parms for Read L028683 DW $0000 ; ref num ADRL L0283D0 ; buffer ptr ADRL $0000002C ; request count ADRL $00000000 ; transfer count DW $0001 ; cache priority L028693 DW $0005 ; Parms for Read L028695 DW $0000 ; ref num ADRL L0283FD ; buffer ptr L02869B ADRL $00000000 ; request count ADRL $00000000 ; transfer count DW $0001 ; cache priority L0286A5 DW $0005 ; Parms for Read L0286A7 DW $0000 ; ref num ADRL L028408 ; buffer ptr L0286AD ADRL $00000000 ; request count ADRL $00000000 ; transfer count DW $0001 ; cache priority L0286B7 LDA L0283DF AND #$00FF CMP #$0001 BNE L0286E0 LDA L0283D0 STZ L0283D0 STA L0283D1 ASL L0283D0 ROL L0283D2 LDA L0283DC AND #$00FF SEP #$20 ASL REP #$20 ROR STA L0283E4 L0286E0 CLC RTS L0286E2 LDA L028457 STA L028765 STA L02876D LDA L028469 STA L028767 LDA L02846B STA L028767+2 BIT L02845D BMI L02870B PEA ^L028763 PEA L028763 PEA $2019 ; GetEOF JSL GSOS2 BCS L02875E L02870B STZ L02844F STZ L028771+2 STZ L028771 BIT L02845D BPL L028725 LDA L028467 STA L028771+2 LDA L028465 STA L028771 L028725 PEA ^L02876B PEA L02876B PEA $2016 ; SetMark JSL GSOS2 BCS L02875E JSR L028471 BCS L02875D INC L02844F CLC LDA L0283D0 ADC L028771 STA L028771 LDA L0283D2 ADC L028771+2 STA L028771+2 CMP L028767+2 BNE L028725 LDA L028771 CMP L028767 BNE L028725 CLC L02875D RTS L02875E JSR L020AF7 SEC RTS L028763 DW $0002 ; Parms for GetEOF L028765 DW $0000 ; ref num L028767 ADRL $00000000 ; end of file L02876B DW $0003 ; Parms for SetMark L02876D DW $0000 ; ref num DW $0000 ; base L028771 ADRL $00000000 ; displacement L028775 STA L02887A STA L028878 LDA L028457 STA L028890 STA L02887E STA L028886 LDA L028469 STA L028892 LDA L02846B STA L028892+2 LDA L028465 STA L02888A LDA L028467 STA L02888A+2 BIT L02845D BMI L0287B9 PEA ^L02888E PEA L02888E PEA $2019 ; GetEOF JSL GSOS2 BCS L0287F4 STZ L02888A+2 STZ L02888A L0287B9 PEA ^L028884 PEA L028884 PEA $2016 ; SetMark JSL GSOS2 BCS L0287F4 JSR L028471 BCS L0287F3 DEC L028878 BEQ L0287F9 CLC LDA L0283D0 ADC L02888A STA L02888A LDA L0283D2 ADC L02888A+2 STA L02888A+2 CMP L028892+2 BNE L0287B9 LDA L02888A CMP L028892 BNE L0287B9 CLC L0287F3 RTS L0287F4 JSR L020AF7 SEC RTS L0287F9 PEA ^L02887C PEA L02887C PEA $2017 ; GetMark JSL GSOS2 BCS L0287F4 LDA L0283D8 LDY L0283DA CPY #$0000 BEQ L028823 DEY BNE L02881B CMP #$0000 BEQ L028823 L02881B LDA #$0008 ; File/Segment longer than 64K JSR L020AB8 SEC RTS L028823 LDA L0283F2 BNE L02882B LDA L02887A L02882B STA $42 STA L0283F2 JSR L02A241 BCS L0287F3 LDA L0283CE PHA LDA L0283CC PHA _DisposeHandle PEI $38 PEI $36 _DisposeHandle PLX PLY STX $36 STY $38 PHB PHY PLB LDA |$0000,X STA $3A LDA |$0002,X STA $3C PLB PLB PLA STA L028449 PLA STA L02844B PLX PLY STX L0283CC STY L0283CE PLA PLA CLC RTS L028878 DB $00 DB $00 L02887A DB $00 DB $00 L02887C DW $0002 ; Parms for GetMark L02887E DW $0000 ; ref num ADRL $00000000 ; position L028884 DW $0003 ; Parms for SetMark L028886 DW $0000 ; ref num DW $0000 ; base L02888A ADRL $00000000 ; displacement L02888E DW $0002 ; Parms for GetEOF L028890 DW $0000 ; ref num L028892 ADRL $00000000 ; end of file L028896 STA L028918 STY L028918+2 PHA PHA PEA $0001 PEA $0000 PEI $FC PEA $8008 PHA PHA _NewHandle PLX PLY BCC L0288BE LDA #$0000 JSR L020AB8 SEC RTS L0288BE PHB PHY PLB LDA |$0000,X STA $00 STAL L028914 LDA |$0002,X STA $02 PLB PLB STA L028914+2 PHY PHX LDY #$0000 TYA L0288DA STA [$00],Y INY INY BNE L0288DA LDA L028457 STA L028912 PEA ^L028910 PEA L028910 PEA $2012 ; Read JSL GSOS2 BCS L028904 LDA L028918 STA L028449 LDA L028918+2 STA L02844B PLX PLY RTS L028904 JSR L020AF7 _DisposeHandle SEC RTS L028910 DW $0004 ; Parms for Read L028912 DW $0000 ; ref num L028914 ADRL $00000000 ; buffer ptr L028918 ADRL $00000000 ; request count ADRL $00000000 ; transfer count L028920 LDA L028459 SEC SBC $3E STA L028BF2 LDA L02845B SBC #$0000 BIT $5C BPL L028934 DEC L028934 BNE L02894C LDY #$0000 LDX L028BF2 STX L028BFC LDA #$8008 JSR L023ED6 BCC L028954 LDA #$0000 BRA L02894F L02894C LDA #$001C L02894F JSR L020AB8 SEC RTS L028954 STX L028BEE STY L028BF0 PHB PHY PLB LDA |$0002,X TAY LDA |$0000,X TAX PLB PLB STX $AE STY $B0 STX L028BF8 STY L028BF8+2 LDA L028457 STA L028BF6 PEA ^L028BF4 PEA L028BF4 PEA $2012 ; Read JSL GSOS2 BCC L02898C JSR L020AF7 SEC BRA L028994 L02898C JSR L0289A6 BCS L028994 JSR L028B56 L028994 PHP LDA L028BF0 PHA LDA L028BEE PHA _DisposeHandle PLP RTS L0289A6 LDY #$0000 L0289A9 LDA [$AE],Y INY AND #$00FF BEQ L0289CA LDX #$0000 L0289B4 CMP L0289CC,X BEQ L0289C3 INX INX CPX #$0010 BCC L0289B4 L0289C0 BRL L02894C L0289C3 JSR (L0289DC,X) BCS L0289C0 BRA L0289A9 L0289CA CLC RTS L0289CC DW $000F DW $001F DW $002F DW $003F DW $004F DW $008F DW $009F DW $00FF L0289DC DA L0289EC DA L0289F1 DA L028A4A DA L028A1B DA L0289EC DA L028A4F DA L028A20 DA L028A6D L0289EC INY INY INY CLC RTS L0289F1 LDA #$0001 STA L028AB5 PHY LDA [$AE],Y STA L028AB3 TAX INY INY LDA [$AE],Y AND #$00FF STA L028ABF STZ L028AB9 TXY LDA [$3A],Y AND #$00FF BIT #$0080 BEQ L028A19 ORA #$FF00 L028A19 BRA L028A41 L028A1B LDA #$0003 BRA L028A23 L028A20 LDA #$0002 L028A23 PHY STA L028AB5 LDA [$AE],Y STA L028AB3 TAX INY INY LDA [$AE],Y AND #$00FF STA L028ABF STZ L028AB9 TXY SEC LDA [$3A],Y SBC #$8000 L028A41 STA L028AB7 JSR L028B03 PLY L028A48 BRA L0289EC L028A4A LDX #$0003 BRA L028A52 L028A4F LDX #$0002 L028A52 PHY PEI $42 LDA [$AE],Y PHA PHX PEA $0000 TAY LDA [$3A],Y PEI $42 SEC SBC #$8000 PHA JSL L043774 PLY BRA L028A48 L028A6D LDA [$AE],Y STA L028AB3 INY INY LDA [$AE],Y AND #$00FF STA L028ABF INY LDA [$AE],Y AND #$00FF TAX INY SEC LDA [$AE],Y SBC #$8000 STA L028ABB INY INY LDA [$AE],Y AND #$00FF SBC #$0000 STA L028ABD INY PHY TXA SEC SBC #$00D0 CMP #$0008 BCC L028AAA L028AA6 PLY BRL L02894C L028AAA ASL TAX JSR (L028AC1,X) BCS L028AA6 PLY RTS L028AB3 DB $00 DB $00 L028AB5 DB $00 DB $00 L028AB7 DB $00 DB $00 L028AB9 DB $00 DB $00 L028ABB DB $00 DB $00 L028ABD DB $00 DB $00 L028ABF DB $00 DB $00 L028AC1 DA L028AD3 DA L028B45 DA L028AD1 DA L028AD1 DA L028AF7 DA L028AE4 DA L028AD1 DA L028AEF L028AD1 SEC RTS L028AD3 LDA #$0001 STA L028AB5 LDA #$FFF0 STA L028AB9 STZ L028AB7 BRA L028B12 L028AE4 LDA #$FFF8 STA L028AB9 LDA #$0002 BRA L028B00 L028AEF LDA #$FFF8 STA L028AB9 BRA L028AFD L028AF7 LDA #$FFF0 STA L028AB9 L028AFD LDA #$0001 L028B00 STA L028AB5 L028B03 CLC LDA L028ABF STA L028ABB LDA $42 ADC #$0080 STA L028ABD L028B12 CLC LDA L028AB7 ADC #$0080 CMP #$0100 BCS L028B43 PEI $42 LDA L028AB3 PHA LDA L028AB5 PHA SEP #$20 LDA L028AB7 PHA LDA L028AB9 PHA REP #$20 CLC LDA L028ABD ADC $42 PHA LDA L028ABB PHA JSL L043774 L028B43 CLC RTS L028B45 LDA #$0002 STA L028AB5 LDA #$FFF8 STA L028AB9 STZ L028AB7 BRA L028B12 L028B56 TYA CLC ADC $AE STA L028BEA LDA #$0000 ADC $B0 STA L028BEC LDA [$AE],Y PHA AND #$00FF BEQ L028BE7 PLA PHA AND #$FF1F STA [$AE],Y AND #$001F PHA TYA SEC ADC $01,S TAY PLA PLA AND #$00E0 CMP #$0040 BEQ L028BC4 CMP #$0060 BEQ L028BBF CMP #$0080 BNE L028BE4 SEC LDA [$AE],Y SBC #$8000 TAX INY INY LDA [$AE],Y INY PHY AND #$00FF SBC #$0000 CLC ADC #$0080 PHA PHX PEA $0000 PEA $0000 L028BB0 LDA L028BEC PHA LDA L028BEA PHA JSL L042748 PLY BRA L028B56 L028BBF INY INY INY BRA L028B56 L028BC4 SEC LDA [$AE],Y SBC #$8000 TAX INY INY LDA [$AE],Y INY PHY AND #$00FF SBC #$0000 CLC ADC $42 PHA PHX PEA $0000 PEA $0001 BRA L028BB0 L028BE4 BRL L02894C L028BE7 PLA CLC RTS L028BEA DB $00 DB $00 L028BEC DB $00 DB $00 L028BEE DB $00 DB $00 L028BF0 DB $00 DB $00 L028BF2 DB $00 DB $00 L028BF4 DW $0004 ; Parms for Read L028BF6 DW $0000 ; ref num L028BF8 ADRL $00000000 ; buffer ptr L028BFC ADRL $00000000 ; request count ADRL $00000000 ; transfer count L028C04 LDA [$F8] AND #$00FF BEQ L028C1F JSR L021631 BCC L028C12 CLC RTS L028C12 LDX #$00FE L028C15 LDA L021658,X STA L0282C2,X DEX DEX BPL L028C15 L028C1F LDA #$0001 L028C22 STA L028F0D PEA ^L028F13 PEA L028F13 PEA $2006 ; GetFileInfo JSL GSOS2 BCC L028C37 BRL L028D1A L028C37 LDA L028F37 ORA L028F37+2 BNE L028C47 LDA #$0011 JSR L020AB8 CLC RTS L028C47 LDA L028F37 STA L028459 LDA L028F37+2 STA L02845B STZ L028F09 STZ L028F0B LDA L02845D STA L028F07 STZ L02845D LDA L028F1B STA L028451 STZ L0283C8 CMP #$00B1 BCC L028C7D CMP #$00BF BCS L028C7D LDA #$FFFF STA L028F09 BRA L028C88 L028C7D CMP #$00F8 BNE L028C88 LDA #$FFFF STA L028F0B L028C88 PEA ^L028F47 PEA L028F47 PEA $2010 ; Open JSL GSOS2 BCC L028C9A BRL L028D1A L028C9A LDA L028F49 STA L028F11 STA L028457 LDAL $E0C025 AND #$0080 BEQ L028CBC BIT L028F0B BPL L028CB9 LDA #$0000 STA L028F0B BRA L028CBC L028CB9 LDA #$FFFF L028CBC EOR L028F09 STA L028F09 BNE L028CC7 BRL L028E8C L028CC7 JSR L028471 BCS L028D1D LDA L0283DF AND #$00FF DEC CMP #$0002 BCC L028CE0 LDA #$0009 JSR L020AB8 BRA L028D1D L028CE0 BIT L02844D BPL L028CEE LDA L028F0D DEC BNE L028CEE INC L028F0D L028CEE JSR L0286E2 BCS L028D1D JSR L02A0EA BCS L028D1D LDA L028451 CMP #$00B1 BEQ L028D33 CMP #$00B2 BEQ L028D33 LDA L028F0D CMP L02844F BEQ L028D13 BCC L028D13 DEC L028F0D DEC L028D13 JSR L028775 BCS L028D1D BRA L028D33 L028D1A JSR L020AF7 L028D1D PEA ^L028F0F PEA L028F0F PEA $2014 ; Close JSL GSOS2 LDA L028F07 STA L02845D SEC CLV RTS L028D33 LDA #$FFFF STA L0283C2 STZ L0283C8 STZ L0283C6 STZ $F6 STZ L02845D LDA L028F09 STA L0283CA BPL L028D6F STZ $32 LDA L02844F STA $40 LDA $42 XBA STA $33 LDA L0283E4 AND #$0100 BNE L028D6A LDA L0283EE CMP #$0001 BEQ L028D6A BRA L028D7D L028D6A DEC L0283C6 BRA L028D7D L028D6F LDA L028F1D STA $32 LDA L028F1D+1 STA $33 STZ $40 STZ $42 L028D7D JSL L041D74 LDA L0283CA BEQ L028DB3 LDA L028451 CMP #$00B1 BEQ L028D93 CMP #$00B2 BNE L028DB3 L028D93 JSR L020D34 LDA #$FFFF STA L0283C8 INC STA $42 INC JSR L028775 BCC L028DB3 L028DA5 STZ L0283C2 JSL L040FF1 JSL L041DDC BRL L028D1D L028DB3 STZ $5C LDA L028449 STA $3E BNE L028DBF SEC ROR $5C L028DBF JSR L020D34 JSL L040F9B BCS L028DA5 LDA L0283CA BEQ L028DD9 LDA L0283CE PHA LDA L0283CC PHA JSL L0437E4 L028DD9 JSR L020D0C JSR L029A36 JSL L042328 LDA L0283CA BNE L028E04 LDA #$0000 JSL L0410BB AND #$0010 BNE L028E04 PEI $42 PEA $0000 PEI $3E JSR L028E53 PHY PHX JSL L042BC0 L028E04 JSR L028E33 JSR L025A75 JSR L024144 BIT L0283C4 BPL L028E15 JSR L028920 L028E15 JSR L020D34 LDA #$0000 JSR L021DBB LDA L028F1D STA L028453 PEA ^L028F0F PEA L028F0F PEA $2014 ; Close JSL GSOS2 CLC RTS L028E33 LDA L0283CA BEQ L028E4B LDA $40 BIT L02844D BPL L028E40 DEC L028E40 CMP #$0002 LDA #$0000 SBC #$0000 BRA L028E4E L028E4B EOR #$FFFF L028E4E JSL L04507E RTS L028E53 LDA L028F1B CMP #$0006 BEQ L028E6C LDX L028E7E L028E5E CMP L028E80,X BEQ L028E73 DEX DEX BPL L028E5E LDY #$0000 TYX RTS L028E6C LDY L028F1D+2 LDX L028F1D RTS L028E73 TXA ASL TAX LDY L028E86,X LDA L028E84,X TAX RTS L028E7E DB $02 DB $00 L028E80 DB $F8 DB $00 DB $FF DB $00 L028E84 DB $00 DB $80 L028E86 DB $00 DB $00 DB $00 DB $20 DB $00 DB $00 L028E8C LDA L028F0B STA L0283C4 BEQ L028EA2 STZ L028F37+2 LDA L028F1D STA L028F37 BNE L028EA2 INC L028F37+2 L028EA2 LDY L028F37+2 BEQ L028EB9 DEY BNE L028EB0 INY LDA L028F37 BEQ L028EB9 L028EB0 LDA #$0008 ; File/Segment longer than 64K JSR L020AB8 BRL L028D1D L028EB9 LDA L028F37 JSR L028896 BCC L028EC4 BRL L028D1D L028EC4 LDA #$0001 STA L02844F PHY PHX PEI $38 PEI $36 _DisposeHandle LDA L0283CE PHA LDA L0283CC PHA _DisposeHandle STZ L0283CE STZ L0283CC PLX PLY STY $38 STX $36 PHB PHY PLB LDA |$0000,X STA $3A LDA |$0002,X STA $3C PLB PLB JSR L02A229 BRL L028D33 L028F07 DB $00 DB $00 L028F09 DB $00 DB $00 L028F0B DB $00 DB $00 L028F0D DB $00 DB $00 L028F0F DW $0001 ; Parms for Close L028F11 DW $0000 ; ref num L028F13 DW $000C ; Parms for GetFileInfo ADRL L0282C2 ; file name DW $0000 ; access L028F1B DW $0000 ; file type L028F1D ADRL $00000000 ; aux type DW $0000 ; storage DS 8 ; creation date DS 8 ; modification date ADRL $00000000 ; option list L028F37 ADRL $00000000 ; end of file ADRL $00000000 ; blocks used ADRL $00000000 ; resource eof ADRL $00000000 ; resource blocks L028F47 DW $0003 ; Parms for Open L028F49 DW $0000 ; ref num ADRL L0282C2 ; path name DW $0000 ; req access DW $0000 L028F53 BIT $F6 BPL L028FAB JSR L021309 BCS L028F8F SEC SBC #$00B1 CMP #$0002 BCS L028F94 INC STA $42 SEP #$20 CLC ADC #$FD STA $3C STA $34 REP #$20 JSR L020D0C JSL L040F9B JSL L042328 JSR L025A75 JSR L024144 JSR L020D34 LDA #$0000 JSR L021DBB CLC RTS L028F8F LDA #$0001 BRA L028FA1 L028F94 LDA #$0003 BRA L028FA1 L028F99 LDA #$000C BRA L028FA1 L028F9E LDA #$000B L028FA1 JSR L020AB8 L028FA4 CLC RTS L028FA6 JSR L020AF7 BRA L028FA4 L028FAB BIT L0283CA BPL L028F9E LDA [$F8] AND #$00FF BNE L028FC1 JSR L02A20D BCC L028FDB JSR L021E04 CLC RTS L028FC1 PEI $FA PEI $F8 LDX #$0002 JSL L0306BD PLX PLX BCS L028F8F TYX BNE L028F94 DEC BMI L028F94 CMP $40 BCS L028F99 INC L028FDB PHA LDA L02845D AND #$0001 STA L029060 PEA ^L029056 PEA L029056 PEA $2010 ; Open JSL GSOS2 PLX BCS L028FA6 LDA L029058 STA L029064 STA L028457 TXA JSR L028775 PHP PEA ^L029062 PEA L029062 PEA $2014 ; Close JSL GSOS2 PLP BCS L028FA4 STZ $32 LDA $42 XBA STA $33 LDA L028449 STA $3E STZ $5C CMP #$0000 BNE L029029 SEC ROR $5C L029029 JSL L040F9B BCS L02904B LDA L0283CE PHA LDA L0283CC PHA JSL L0437E4 JSR L020D0C JSR L029A36 JSL L042328 JSR L025A75 JSR L024144 L02904B JSR L020D34 LDA #$0000 JSR L021DBB CLC RTS L029056 DW $0004 ; Parms for Open L029058 DW $0000 ; ref num ADRL L0282C2 ; path name DW $0000 ; req access L029060 DW $0000 ; res num L029062 DW $0001 ; Parms for Close L029064 DW $0000 ; ref num L029066 STZ L0293DA LDA [$F8] AND #$00FF BNE L02907D LDA L0283C2 BEQ L0290C5 DEC L0293DA LDA #$0001 BRA L0290DD L02907D JSR L021631 BCS L0290B3 LDA [$F8] AND #$00FF BNE L02908E DEC L0293DA BRA L0290CD L02908E JSR L02153D BCS L0290B3 LDX #$0004 JSR L0290B5 BCS L0290B3 STA L02845F JSR L02153D BCS L0290B3 LDX #$0008 JSR L0290B5 BCS L0290B3 STA L028461 STY L028463 BRA L0290CD L0290B3 CLV RTS L0290B5 PEI $FA PEI $F8 JSL L0306BD PLX STX $F8 PLX STX $FA BCC L0290CC L0290C5 LDA #$0001 JSR L020AB8 SEC L0290CC RTS L0290CD LDX #$00FE L0290D0 LDA L021658,X STA L0282C2,X DEX DEX BPL L0290D0 LDA #$0001 L0290DD STA L02934E JSL GSOS DW $2006 ; GetFileInfo ADRL L029364 BCC L0290EF L0290EC BRL L029251 L0290EF LDA L029372 CMP #$0005 BEQ L029100 LDA #$000E JSR L020AB8 BRL L029245 L029100 JSL GSOS DW $2010 ; Open ADRL L029358 BCS L0290EC LDA L02935A STA L028457 STA L02939A STA L0293A4 STA L0293B4 STA L0293D8 LDA L0293DA BEQ L02912B JSR L02949A BCC L02912B BRL L029245 L02912B STZ L029352 LDAL $E0C025 AND #$0080 BEQ L02913A DEC L029352 L02913A LDA #$0004 STA L02939E STZ L02939E+2 JSR L029308 BCS L0290EC LDA #$0004 STA L0293BA STZ L0293BA+2 JSR L029313 BCS L0290EC LDA L0293C2 STA L02939E LDA L0293C4 STA L02939E+2 JSR L029308 BCS L0290EC LDA #$0010 STA L0293BA JSR L029313 BCS L029194 LDA L0293D0 ADC L02939E STA L02939E LDA #$0000 ADC L02939E+2 STA L02939E+2 JSR L029308 BCS L029194 LDA #$0014 STA L0293BA L02918F JSR L029313 BCC L029197 L029194 BRL L029251 L029197 LDA L0293C2 BEQ L0291C4 CMP L02845F BNE L02918F LDA L0293C4 CMP L028461 BNE L02918F LDA L0293C6 CMP L028463 BNE L02918F LDA L0293CC BIT #$0800 BEQ L0291CD LDA #$FFFF EOR L029352 STA L029352 BRA L0291CD L0291C4 LDA #$000F JSR L020AB8 BRL L029245 L0291CD LDA L0293C8 STA L02939E STA L028465 CLC ADC L0293CE STA L028469 LDA L0293CA STA L02939E+2 STA L028467 ADC L0293D0 STA L02846B JSR L029308 BCS L029194 JSR L0241B5 LDA #$FFFF STA L02845D LDA L029352 BEQ L029259 JSR L028471 BCC L029207 BRL L029245 L029207 LDA L0283DF AND #$00FF DEC CMP #$0002 BCC L029218 STZ L029352 BRA L029259 L029218 BIT L02844D BPL L029220 INC L02934E L029220 JSR L0286E2 BCS L029245 JSR L02A0EA BCS L029245 LDA L02934E CMP L02844F BEQ L029238 BCC L029238 DEC L02934E DEC L029238 JSR L028775 BCS L029245 JSR L02929F L029240 JSR L029329 CLC RTS L029245 JSR L029329 JSR L020D34 JSR L021E04 SEC CLV RTS L029251 JSR L029329 JSR L020AF7 BRA L029245 L029259 LDA L0293CE LDY L0293D0 BEQ L029271 CPY #$0002 BCS L029269 TAX BEQ L029271 L029269 LDA #$0008 ; File/Segment longer than 64K JSR L020AB8 BRA L029245 L029271 STA $3E TYX BEQ L02927B LDX #$FFFF STX $5C L02927B JSR L028896 BCS L029245 LDA #$0001 STA L02844F STY $38 STX $36 JSR L023EF2 STY $3C STX $3A STZ $40 STZ $42 STZ $33 STZ $32 JSR L0292BE BRL L029240 L02929F LDA L02844F STA $40 LDA L02934E STA $42 AND #$00FF XBA STA $33 STZ $32 STZ $5C CLC LDA L028449 STA $3E BNE L0292BE SEC ROR $5C L0292BE LDA #$FFFF STA L0283C2 LDA L029352 STA L0283CA JSL L040F9B BCS L0292F2 LDA L0283CC TAX ORA L0283CE BEQ L0292E2 LDY L0283CE PHY PHX JSL L0437E4 L0292E2 JSR L020D0C JSR L029A36 JSL L042328 JSR L025A75 JSR L024144 L0292F2 JSR L020D34 LDA #$0000 JSR L021DBB LDA L02936C STA L028451 LDA L02936E STA L028453 RTS L029308 JSL GSOS DW $2016 ; SetMark ADRL L029398 RTS L029313 JSL GSOS DW $2012 ; Read ADRL L0293B2 RTS JSL GSOS DW $2012 ; Read ADRL L0293A2 RTS L029329 PHA JSL GSOS DW $2014 ; Close ADRL L0293D6 PLA RTS PEI $FA PEI $F8 JSL L0306BD PLX STX $F8 PLX STX $FA BCC L02934D LDA #$0001 JSR L020AB8 SEC L02934D RTS L02934E DW $0000 DW $0000 L029352 DW $0000 DW $0000 DW $0000 L029358 DW $0004 ; Parms for Open L02935A DW $0000 ; ref num ADRL L0282C2 ; path name DW $0000 ; req access DW $0001 ; res num L029364 DW $000C ; Parms for GetFileInfo ADRL L0282C2 ; file name DW $0000 ; access L02936C DW $0000 ; file type L02936E ADRL $00000000 ; aux type L029372 DW $0000 ; storage DS 8 ; creation date DS 8 ; modification date ADRL $00000000 ; option list ADRL $00000000 ; end of file ADRL $00000000 ; blocks used ADRL $00000000 ; resource eof ADRL $00000000 ; resource blocks L029398 DW $0003 ; Parms for SetMark L02939A DW $0000 ; ref num DW $0000 ; base L02939E ADRL $00000000 ; displacement L0293A2 DW $0004 ; Parms for Read L0293A4 DW $0000 ; ref num ADRL $00000000 ; buffer ptr ADRL $00000000 ; request count ADRL $00000000 ; transfer count L0293B2 DW $0004 ; Parms for Read L0293B4 DW $0000 ; ref num ADRL L0293C2 ; buffer ptr L0293BA ADRL $00000000 ; request count ADRL $00000000 ; transfer count L0293C2 DB $00 DB $00 L0293C4 DB $00 DB $00 L0293C6 DB $00 DB $00 L0293C8 DB $00 DB $00 L0293CA DB $00 DB $00 L0293CC DB $00 DB $00 L0293CE DB $00 DB $00 L0293D0 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L0293D6 DW $0001 ; Parms for Close L0293D8 DW $0000 ; ref num L0293DA DB $00 DB $00 L0293DC LDA L028457 STA L029492 STA L029466 STA L029480 LDA #$0004 STA L029496 STZ L029496+2 JSR L029456 BCS L029449 PEA ^L029464 PEA L029464 PEA $2012 ; Read JSL GSOS2 BCS L029449 LDA L029476 STA L029496 LDA L029478 STA L029496+2 JSR L029456 BCS L029449 LDX L02947A LDY L02947C STX L029486 STY L029486+2 LDA #$8008 JSR L023ED6 BCS L02944E STX L02846D STY L02846F JSR L023EF2 STX L029482 STY L029482+2 PEA ^L02947E PEA L02947E PEA $2012 ; Read JSL GSOS2 BCS L029449 RTS L029449 JSR L020AF7 SEC RTS L02944E LDA #$0000 JSR L020AB8 SEC RTS L029456 PEA ^L029490 PEA L029490 PEA $2016 ; SetMark JSL GSOS2 RTS L029464 DW $0005 ; Parms for Read L029466 DW $0000 ; ref num ADRL L029476 ; buffer ptr ADRL $00000008 ; request count ADRL $00000000 ; transfer count DW $0001 ; cache priority L029476 DB $00 DB $00 L029478 DB $00 DB $00 L02947A DB $00 DB $00 L02947C DB $00 DB $00 L02947E DW $0005 ; Parms for Read L029480 DW $0000 ; ref num L029482 ADRL $00000000 ; buffer ptr L029486 ADRL $00000000 ; request count ADRL $00000000 ; transfer count DW $0001 ; cache priority L029490 DW $0003 ; Parms for SetMark L029492 DW $0000 ; ref num DW $0000 ; base L029496 ADRL $00000000 ; displacement L02949A JSR L0293DC BCC L0294A0 RTS L0294A0 LDX L02846D LDY L02846F JSR L023EF2 STX $10 STY $12 LDY #$0018 LDA [$10],Y STA L02953C BEQ L029507 LDY #$000E LDA [$10],Y CLC ADC $10 STA $10 BCC L0294C5 INC $12 L0294C5 JSL L030B27 DB $05 DB $12 DB $14 DB $3B ADR L02950F DB $00 DB $00 DB $00 DB $00 DB $00 BCS L0294F5 ASL ASL PHA ASL ASL ADC $01,S STA $01,S PLY LDA [$10],Y STA L02845F INY INY LDA [$10],Y STA L028461 INY INY LDA [$10],Y STA L028463 CLC L0294F5 PHP LDA L02846F PHA LDA L02846D PHA _DisposeHandle PLP RTS L029507 LDA #$0018 JSR L020AB8 SEC RTS L02950F LDA $04,S CMP #$FFFF BNE L02951D LDAL L02953C STA $06,S RTL L02951D CMPL L02953C BCC L02952E LDA #^L02953E STA $08,S LDA #L02953E STA $06,S RTL L02952E JSR L029568 LDA #^L02953F STA $08,S LDA #L02953F STA $06,S RTL L02953C DB $00 DB $00 L02953E DB $00 L02953F DB $24 L029540 ASC " 0000 " L029548 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L02955C ASC "00000000" L029564 DB $00 DB $00 L029566 DB $00 DB $00 L029568 PHB PHK PLB JSR L02962F TAY LDA [$10],Y STA L029566 PHA PHA PHA INY INY LDA [$10],Y PHA PHA PHA INY INY LDA [$10],Y PHA PHA PHA INY INY INY INY INY INY LDA [$10],Y STA L029564 _HexIt PLA ORA #$8080 STA L02955C PLA ORA #$8080 STA L02955C+2 _HexIt PLA ORA #$8080 STA L02955C+4 PLA ORA #$8080 STA L02955C+6 _HexIt PLA ORA #$8080 STA L029540+2 PLA ORA #$8080 STA L029540+4 LDA #$A0A0 STA L029540 LDA L029564 BIT #$0800 BEQ L0295E3 LDA #$A0E3 STA L029540 L0295E3 LDA L029566 PHA AND #$3FFF TAY PLA AND #$C000 CMP #$C000 BEQ L029608 CMP #$8000 BNE L02962A TYA CMP #$0030 BCS L02962A DEC JSR L02962F ADC #L02964E BRA L029615 L029608 TYA CMP #$0003 BCS L02962A DEC JSR L02962F ADC #L0299FA L029615 TAX LDY #$0000 L029619 LDA |$0000,X STA L029548,Y INX INX INY INY CPY #$0014 BCC L029619 PLB RTS L02962A LDA #L02963A BRA L029615 L02962F ASL ASL PHA ASL ASL ADC $01,S STA $01,S PLA RTS L02963A ASC "? " L02964E ASC "rIcon " ASC "rPicture " ASC "rControlList " ASC "rControlTemplate " ASC "rC1InputString " ASC "rPString " ASC "rStringList " ASC "rMenuBar " ASC "rMenu " ASC "rMenuItem " ASC "rTextForLETextBox2 " ASC "rCtlDefProc " ASC "rCtlColorTbl " ASC "rWindParam1 " ASC "rWindParam2 " ASC "rWindColor " ASC "rTextBlock " ASC "rStyleBlock " ASC "rToolStartUp " ASC "rResName " ASC "rAlertString " ASC "rText " ASC "rCodeResource " ASC "rCDEVCode " ASC "rCDEVFlags " ASC "rTwoRects " ASC "rFileType " ASC "rListRef " ASC "rCString " ASC "rXCMD " L0298A6 ASC "rXFCN " ASC "rErrorString " ASC "rKTransTable " ASC "rWString " ASC "rC1OutputString " ASC "rSoundSample " ASC "rTERuler " ASC "rFSequence " ASC "rCursor " ASC "rItemStruct " ASC "rVersion " ASC "rComment " ASC "rBundle " ASC "rFinderPath " ASC "rPaletteWindow " ASC "rTaggedString " ASC "rPatternList " L0299FA ASC "rRectList " ASC "rPrintRecord " ASC "rFont " L029A36 PHP REP #$30 LDA $AA ORA $AC BNE L029A41 L029A3F PLP RTS L029A41 LDY #$0002 LDA [$AA] TAX LDA [$AA],Y TAY BNE L029A4F TXA BEQ L029A3F L029A4F STX $AE STY $B0 L029A53 LDA [$AE] INC $AE BNE L029A5B INC $B0 L029A5B AND #$00FF BEQ L029A3F CMP #$00E0 BCS L029A70 CLC ADC $AE STA $AE BCC L029A53 INC $B0 BRA L029A53 L029A70 ASL TAX JMP (L029A75-$1C0,X) L029A75 DA L029AB5 DA L029AB5 DA L029AC3 DA L029AF3 DA L029AB5 DA L029AB5 DA L029AB5 DA L029B48 DA L029AB5 DA L029AB5 DA L029AB5 DA L029B5C DA L029B5C DA L029B5C DA L029B50 DA L029AB5 DA L029B48 DA L029AB5 DA L029AB5 DA L029B5C DA L029AB5 DA L029ADB DA L029B0E DA L029B2B DA L029AB5 DA L029AB5 DA L029AB5 DA L029AB5 DA L029AB5 DA L029AB5 DA L029AB5 DA L029AB5 L029AB5 PLP RTS L029AB7 CLC ADC $AE STA $AE BCC L029AC0 INC $B0 L029AC0 BRL L029A53 L029AC3 JSR L029BB8 LDY #$0006 LDA [$AE],Y STA L029BDB LDA $42 STA L029BDD JSR L029BE3 LDA #$000A BRA L029AB7 L029ADB JSR L029BB8 LDY #$0004 LDA [$AE],Y STA L029BDB LDA $42 STA L029BDD JSR L029BE3 LDA #$0006 BRA L029AB7 L029AF3 JSR L029BB8 LDY #$0008 LDA [$AE],Y STA L029BDD INY INY LDA [$AE],Y STA L029BDB JSR L029BE3 LDA #$000E BRL L029AB7 L029B0E JSR L029BB8 LDY #$0004 LDA [$AE],Y AND #$00FF STA L029BDD INY LDA [$AE],Y STA L029BDB JSR L029BE3 LDA #$0007 BRL L029AB7 L029B2B LDY #$0002 LDA [$AE],Y BEQ L029B35 BRL L029A3F L029B35 LDA [$AE] PHA LDA #$0004 CLC ADC $AE STA $AE BCC L029B44 INC $B0 L029B44 PLA BRL L029AB7 L029B48 JSR L029BA8 LDA #$0004 BRA L029B5F L029B50 CLC LDA #$0004 ADC $AE STA $AE BCC L029B5C INC $B0 L029B5C LDA #$0003 L029B5F CLC ADC $AE STA $AE BCC L029B68 INC $B0 L029B68 LDA [$AE] INC $AE BNE L029B70 INC $B0 L029B70 AND #$00FF BEQ L029B86 CMP #$0080 BCC L029B68 AND #$007F BEQ L029B68 CMP #$0008 BCC L029B89 PLP RTS L029B86 BRL L029A53 L029B89 ASL TAX JMP (L029B8E,X) L029B8E DA $0000 DA L029B9E DA L029BA3 DA L029BA3 DA L029BA3 DA L029BA3 DA L029BA3 DA L029B9E L029B9E LDA #$0004 BRA L029B5F L029BA3 JSR L029BA8 BRA L029B68 L029BA8 LDA [$AE] AND #$00FF INC CLC ADC $AE STA $AE BCC L029BB7 INC $B0 L029BB7 RTS L029BB8 LDA [$AE] AND #$00FF STA L029BDF LDY #$0001 LDA [$AE],Y AND #$00FF STA L029BE1 INY LDA [$AE],Y STA L029BD7 LDA $42 STA L029BD9 RTS L029BD7 DB $00 DB $00 L029BD9 DB $00 DB $00 L029BDB DB $00 DB $00 L029BDD DB $00 DB $00 L029BDF DB $00 DB $00 L029BE1 DB $00 DB $00 L029BE3 LDA L029BE1 BEQ L029C04 BIT #$0080 BEQ L029BFB ORA #$FF00 L029BF0 LSR L029BDD ROR L029BDB INC BNE L029BF0 BRA L029C04 L029BFB ASL L029BDB ROL L029BDD DEC BNE L029BFB L029C04 SEP #$20 LDX #$0000 LDY L029BD7 L029C0C LDA L029BDB,X STA [$3A],Y INX INY CPX L029BDF BCC L029C0C REP #$20 RTS L029C1B BIT L0283C2 BMI L029C23 SEC CLV RTS L029C23 JSR L020D34 LDA L0283CA BNE L029C2E BRL L029F92 L029C2E LDY #$0002 LDX #$001C BIT L02845D BMI L029C5C JSL L0300E2 JSL L0302E1 STR "Infos on current segment" BRA L029C7F L029C5C DEX JSL L0300E2 JSL L0302E1 STR "Infos on resource segment" L029C7F JSR L02A0B4 JSR L02A0B4 JSL L0302E1 STR "Byte count ....... $" LDA L0283D2 PHA JSL L03065A LDA L0283D0 PHA JSL L030670 JSR L02A0B4 JSL L0302E1 STR "Reserved space ... $" LDA L0283D6 PHA JSL L03065A LDA L0283D4 PHA JSL L030670 JSR L02A0B4 JSL L0302E1 STR "Segment length ... $" LDA L0283DA PHA JSL L03065A LDA L0283D8 PHA JSL L030670 JSR L02A0B4 JSL L0302E1 STR " Unused .......... $" LDA L0283DC PHA JSL L03065A JSR L02A0B4 JSL L0302E1 STR "Label length ..... $" LDA L0283DD PHA JSL L03065A JSR L02A0B4 JSL L0302E1 STR "Number length .... $" LDA L0283DE PHA JSL L03065A JSR L02A0B4 JSL L0302E1 STR "OMF version ...... $" LDA L0283DF PHA JSL L03065A JSR L02A0B4 JSL L0302E1 STR "Bank size ........ $" LDA L0283E2 PHA JSL L03065A LDA L0283E0 PHA JSL L030670 JSR L02A0B4 JSL L0302E1 STR "Kind ............. $" LDA L0283E4 PHA PHA JSL L030670 JSL L0302E1 STR " " PLA AND #$001F ASL TAX LDA L02A024,X STA L029E34 JSL L0302E1 STR "(" BIT L0283E4 BPL L029E16 JSL L0302E1 STR "Dynamic, " L029E16 LDA #$1000 AND L0283E4 BEQ L029E30 JSL L0302E1 STR "No spec mem, " L029E30 JSL L030314 L029E34 ADR L02A064 JSR L02A0B4 JSL L0302E1 STR " Unused .......... $" LDA L0283E6 PHA JSL L030670 JSR L02A0B4 JSL L0302E1 STR "Origin ........... $" LDA L0283EA PHA JSL L03065A LDA L0283E8 PHA JSL L030670 JSR L02A0B4 JSL L0302E1 STR "Align ............ $" LDA L0283EE PHA JSL L03065A LDA L0283EC PHA JSL L030670 JSR L02A0B4 JSL L0302E1 STR "Number sex ....... $" LDA L0283F0 PHA JSL L03065A JSR L02A0B4 JSL L0302E1 STR " Unused .......... $" LDA L0283F1 PHA JSL L03065A JSR L02A0B4 JSL L0302E1 STR "Segment number.... $" LDA L0283F2 PHA JSL L030670 JSR L02A0B4 JSL L0302E1 STR "Entry ............ $" LDA L0283F6 PHA JSL L03065A LDA L0283F4 PHA JSL L030670 JSR L02A0B4 JSL L0302E1 STR "Load name ........ " JSL L030314 ADR L0283FC JSR L02A0B4 JSL L0302E1 STR "Segment name ..... " JSL L030314 ADR L028407 BRL L02A0C1 L029F92 LDY #$0002 LDX #$0019 JSL L0300E2 JSL L0302E1 STR "Infos on non-relocatable file" JSR L02A0B4 JSR L02A0B4 JSL L0302E1 STR "File length ...... $" LDA #$0000 BIT $5C BPL L029FE5 INC L029FE5 PHA JSL L03065A PEI $3E JSL L030670 JSR L02A0B4 JSR L02A0B4 JSL L0302E1 STR "(Sorry, nothing more for the moment..)" BRL L02A0C1 L02A024 DA L02A06A DA L02A064 DA L02A070 DA L02A064 DA L02A07C DA L02A064 DA L02A064 DA L02A064 DA L02A086 DA L02A064 DA L02A064 DA L02A064 DA L02A064 DA L02A064 DA L02A064 DA L02A064 DA L02A09A DA L02A064 DA L02A0AA DA L02A064 DA L02A064 DA L02A064 DA L02A064 DA L02A064 DA L02A064 DA L02A064 DA L02A064 DA L02A064 DA L02A064 DA L02A064 DA L02A064 DA L02A064 L02A064 STR "Data)" L02A06A STR "Code)" L02A070 STR "Jump Table)" L02A07C STR "Pathname)" L02A086 STR "Library dictionary)" L02A09A STR "Initialization)" L02A0AA STR "DP/Stack)" L02A0B4 JSL L0300EE INY LDX #$0014 JSL L0300E2 RTS L02A0C1 LDY #$0017 LDX #$0000 JSL L0300E2 JSL L0302E1 STR "> Press any key " JSL L03034A CLC RTS L02A0E6 DB $00 L02A0E7 DB $00 L02A0E8 DB $00 DB $00 L02A0EA JSR L02A229 LDA L02844F STA L02A1FF ASL PHA ASL PHA ASL PHA ASL ADC $01,S ADC $03,S ADC $05,S INC PLX PEA $0000 PHA PEI $FC PEA $8008 PHA PHA _NewHandle PLX PLY BCC L02A120 LDA #$0000 JSR L020AB8 SEC RTS L02A120 STX L02A0E6 STY L02A0E8 PHB PHY PLB LDA |$0000,X STA $10 STAL L02A21C LDA |$0002,X STA $12 PLB PLB STA L02A21E STZ L02A201 LDA L028457 STA L02A205 STZ L02A209 STZ L02A209+2 BIT L02845D BPL L02A15C LDA L028465 STA L02A209 LDA L028467 STA L02A209+2 L02A15C JSL GSOS DW $2016 ; SetMark ADRL L02A203 BCS L02A181 JSR L028471 BCS L02A184 LDA L0283D0 ADC L02A209 STA L02A209 LDA L0283D2 ADC L02A209+2 STA L02A209+2 BRA L02A189 L02A181 JSR L020AF7 L02A184 JSR L02A229 SEC RTS L02A189 SEP #$20 LDY L02A201 LDA L028407 CMP #$19 BCC L02A19B LDA #$18 STA L028407 CLC L02A19B ADC #$05 STA [$10],Y INY REP #$20 PHY LDA L0283F3 JSL L030837 PLY STA [$10],Y INY INY PHY LDA L0283F2 BNE L02A1BD SEC LDA L02844F SBC L02A1FF INC L02A1BD JSL L030837 PLY STA [$10],Y INY INY SEP #$20 LDA #$A0 STA [$10],Y INY LDA L028407 BEQ L02A1E9 LDX #$0001 L02A1D5 LDA L028407,X INX ORA #$80 CMP #$A0 BCS L02A1E1 LDA #$A0 L02A1E1 STA [$10],Y INY DEC L028407 BNE L02A1D5 L02A1E9 STY L02A201 REP #$20 DEC L02A1FF BEQ L02A1F6 BRL L02A15C L02A1F6 SEP #$20 LDA #$00 STA [$10],Y REP #$21 RTS L02A1FF DB $00 DB $00 L02A201 DB $00 DB $00 L02A203 DW $0003 ; Parms for SetMark L02A205 DW $0000 ; ref num DW $0000 ; base L02A209 ADRL $00000000 ; displacement L02A20D LDA L02A0E7 BNE L02A214 SEC RTS L02A214 JSL L0308F3 DB $06 DB $12 DB $18 DB $37 L02A21C DB $00 DB $00 L02A21E DB $00 DB $00 PHP INC PHA JSR L020D34 PLA PLP RTS L02A229 LDA L02A0E7 BEQ L02A240 LDA L02A0E8 PHA LDA L02A0E6 PHA _DisposeHandle STZ L02A0E7 L02A240 RTS L02A241 LDY #$0001 TYX DEX LDA #$8008 JSR L023ED6 BCC L02A24F RTS L02A24F PHB PHY PLB LDA |$0000,X STA $00 STAL L02A831 LDA |$0002,X STA $02 PLB PLB STA L02A831+2 STX L02A89B STY L02A89D LDY #$0000 TYA L02A26F STA [$00],Y INY INY BNE L02A26F LDY #$0001 TYX DEX LDA #$8008 JSR L023ED6 BCC L02A283 RTS L02A283 PHB PHY PLB LDA |$0000,X STA $00 STAL L02A80E LDA |$0002,X STA $02 PLB PLB STA L02A80E+2 STX L02A89F STY L02A8A1 LDA L028457 STA L02A82F STA L02A80C STA L02A7C0 STA L02A7E5 STA L02A865 STA L02A7A3 STZ L02A893 STZ L02A897 STZ L02A895 STZ L02A899 L02A2C0 JSR L02A7AB BNE L02A327 STA [$00] INC L02A897 BNE L02A2CF INC L02A899 L02A2CF LDA L0283D4 STA L02A7F3 LDA L0283D6 STA L02A7F5 JSR L02A6DD BCS L02A339 JSR L02A33E LDA L02A899 PHA LDA L02A897 PHA LDY L02A8A1 PHY LDX L02A89F PHX PHY PHX _HUnlock _SetHandleSize PLX LDA L02A899 PHA LDA L02A897 PHA LDA L02A8A1 PHA LDA L02A89F PHA LDA L02A895 PHA LDA L02A893 PHA LDA L02A89D PHA LDA L02A89B PHA PHX CLC RTS L02A327 CMP #$00E0 BCS L02A331 JSR L02A71E BRA L02A337 L02A331 ASL TAX LSR JSR (L02A36E-$1C0,X) L02A337 BCC L02A2C0 L02A339 JSR L02A761 SEC RTS L02A33E LDA L0283C8 BEQ L02A36D LDA L0283E4 AND #$00FF CMP #$0008 BEQ L02A36D LDA L028428 AND #$00FF BEQ L02A36D LDA L0283F2 PHA PEA $0000 PEA $0001 PEA $0001 PEA ^L028428 PEA L028428 JSL L042748 L02A36D RTS L02A36E DA L02A3AE DA L02A3AE DA L02A622 DA L02A622 DA L02A3B4 DA L02A3B4 DA L02A40F DA L02A583 DA L02A3C0 DA L02A3C0 DA L02A3C0 DA L02A4A2 DA L02A4A2 DA L02A4A2 DA L02A43F DA L02A40A DA L02A583 DA L02A6C4 DA L02A726 DA L02A4A2 DA L02A3B7 DA L02A622 DA L02A622 DA L02A5E8 DA L02A3C0 DA L02A3C0 DA L02A3C0 DA L02A3C0 DA L02A3C0 DA L02A3C0 DA L02A3C0 DA L02A3C0 L02A3AE LDA #$0004 BRL L02A78E L02A3B4 BRL L02A780 L02A3B7 LDA #$0006 JSR L02A78E BRL L02A780 L02A3C0 PHA JSR L02A5CA JSL L0302E1 STR "Unsupported OMF type $" JSL L03065A JSL L0302E1 STR " " JSL L03034A JSR L020CED SEC RTS L02A3F2 LDA L0283DD AND #$00FF BNE L02A400 JSR L02A7AB BCC L02A400 RTS L02A400 STA L02A86B STA L02A873 JSR L02A83D RTS L02A40A LDA #$0000 BRA L02A412 L02A40F LDA #$0001 L02A412 STA L02A43D JSR L02A3F2 BCC L02A41B RTS L02A41B LDA L0283F2 PHA LDA L02A893 PHA PEA $0001 LDA L02A43D PHA PEA ^L02A873 PEA L02A873 JSL L042748 LDA L0283DF INC INC JSR L02A78E RTS L02A43D DB $00 DB $00 L02A43F STZ L02A581 STA [$00] INC $00 BNE L02A44A INC $02 L02A44A INC L02A581 JSR L02A7AB BCC L02A453 RTS L02A453 PHA STA [$00] INC $00 BNE L02A45C INC $02 L02A45C INC L02A581 JSR L02A7D0 PLA BCC L02A466 RTS L02A466 PHA LDA L02A7F3 STA [$00] LDY #$0002 LDA L02A7F5 STA [$00],Y CLC LDA #$0004 PHA ADC $00 STA $00 BCC L02A481 INC $02 L02A481 PLA ADC L02A581 STA L02A581 LDA L02A893 STA [$00] INC $00 BNE L02A493 INC $02 L02A493 INC $00 BNE L02A499 INC $02 L02A499 INC L02A581 INC L02A581 PLA BRA L02A4D8 L02A4A2 STZ L02A581 STA [$00] INC $00 BNE L02A4AD INC $02 L02A4AD INC L02A581 LDA L02A893 STA [$00] INC $00 BNE L02A4BB INC $02 L02A4BB INC $00 BNE L02A4C1 INC $02 L02A4C1 INC L02A581 INC L02A581 JSR L02A7AB BCC L02A4CD RTS L02A4CD STA [$00] INC $00 BNE L02A4D5 INC $02 L02A4D5 INC L02A581 L02A4D8 PHA CLC ADC L02A893 STA L02A893 BCC L02A4E5 INC L02A895 L02A4E5 PLA CLC ADC L02A831 STA L02A831 BCC L02A4F2 INC L02A831+2 L02A4F2 JSR L02A7AB BCC L02A4F8 RTS L02A4F8 STA [$00] INC $00 BNE L02A500 INC $02 L02A500 INC L02A581 CMP #$0000 BEQ L02A517 CMP #$0080 BCC L02A4F2 AND #$007F BEQ L02A4F2 ASL TAX JMP (L02A521,X) L02A517 LDY #$0000 LDX L02A581 JSR L02A66F RTS L02A521 DA $0000 DA L02A531 DA L02A55D DA L02A55D DA L02A55D DA L02A55D DA L02A55D DA L02A531 L02A531 JSR L02A7D0 BCC L02A537 RTS L02A537 LDA L02A7F3 STA [$00] LDY #$0002 LDA L02A7F5 STA [$00],Y LDA #$0004 L02A547 CLC PHA ADC $00 STA $00 LDA #$0000 ADC $02 STA $02 PLA ADC L02A581 STA L02A581 BRA L02A4F2 L02A55D JSR L02A3F2 BCC L02A563 RTS L02A563 LDA L02A873 AND #$00FF INC PHA SEP #$30 LDX #$00 TXY L02A570 LDA L02A873,X STA [$00],Y INX INY DEC L02A873 BPL L02A570 REP #$30 PLA BRA L02A547 L02A581 DB $00 DB $00 L02A583 STZ L02A581 STA [$00] INC $00 BNE L02A58E INC $02 L02A58E INC L02A581 JSR L02A3F2 BCC L02A597 RTS L02A597 LDA L02A873 AND #$00FF INC PHA SEP #$30 LDX #$00 TXY L02A5A4 LDA L02A873,X STA [$00],Y INX INY DEC L02A873 BPL L02A5A4 REP #$30 PLA CLC PHA ADC $00 STA $00 LDA #$0000 ADC $02 STA $02 PLA ADC L02A581 STA L02A581 BRL L02A531 L02A5CA JSR L020CED L02A5CD LDY #$0017 LDX #$0000 JSL L0300E2 JSL L0302E1 STR 87"> Loader: " RTS L02A5E8 STA [$00] INC $00 BNE L02A5F0 INC $02 L02A5F0 JSR L02A7D0 BCC L02A5F6 RTS L02A5F6 LDA L02A7F3 STA [$00] LDY #$0002 LDA L02A7F5 BEQ L02A606 BRL L02A68A L02A606 STA [$00],Y CLC LDA #$0004 ADC $00 STA $00 LDA #$0000 ADC $02 STA $02 LDX #$0005 LDY #$0000 JSR L02A66F BRA L02A63F L02A622 STA [$00] INC $00 BNE L02A62A INC $02 L02A62A INC L02A897 BNE L02A632 INC L02A899 L02A632 TAX LDA L02A5CD,X AND #$00FF STA L02A7F3 STZ L02A7F5 L02A63F LDA L02A7F3 STA L02A812 STZ L02A812+2 LDA $00 STA L02A80E LDA $02 STA L02A80E+2 LDX L02A7F3 LDY #$0000 JSR L02A66F BCC L02A65E RTS L02A65E LDA L02A7F3 ADC $00 STA $00 LDA #$0000 ADC $02 STA $02 BRL L02A7F7 L02A66F CLC TXA ADC L02A897 STA L02A897 TYA ADC L02A899 STA L02A899 BEQ L02A688 DEC BNE L02A68A LDA L02A897 BNE L02A68A L02A688 CLC RTS L02A68A JSR L02A5CA JSL L0302E1 STR "Too many OMF records " L02A6A7 JSL L03034A SEC RTS DB $00 DB $00 DB $0A DB $0E DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $06 DB $07 L02A6C4 JSR L02A7D0 BCC L02A6CA RTS L02A6CA CLC LDA L02A7F3 ADC L02A831 STA L02A831 LDA L02A7F5 ADC L02A831+2 STA L02A831+2 L02A6DD LDA L02A7F3 ADC L02A893 STA L02A893 LDA L02A7F5 ADC L02A895 STA L02A895 BEQ L02A6F9 DEC BNE L02A6FB LDA L02A893 BNE L02A6FB L02A6F9 CLC RTS L02A6FB JSR L02A5CA JSL L0302E1 STR "Segment longer than 64K " BRL L02A6A7 L02A71E STA L02A7F3 STZ L02A7F5 BRA L02A72C L02A726 JSR L02A7D0 BCC L02A72C RTS L02A72C CLC LDA L02A7F3 STA L02A835 LDA L02A7F5 STA L02A835+2 JSR L02A6DD BCC L02A73F RTS L02A73F JSR L02A81A BCC L02A745 RTS L02A745 LDA L02A7F3 ADC L02A831 STA L02A831 LDA L02A7F5 ADC L02A831+2 STA L02A831+2 CLC RTS L02A759 JSR L020AF7 JSR L02A761 SEC RTS L02A761 LDA L02A89D PHA LDA L02A89B PHA _DisposeHandle LDA L02A8A1 PHA LDA L02A89F PHA _DisposeHandle RTS L02A780 LDA L0283DD AND #$00FF BNE L02A78E JSR L02A7AB BCC L02A78E RTS L02A78E STA L02A7A7 PEA ^L02A7A1 PEA L02A7A1 PEA $2016 ; SetMark JSL GSOS2 BCS L02A759 RTS L02A7A1 DW $0003 ; Parms for SetMark L02A7A3 DW $0000 ; ref num DW $0002 ; base L02A7A7 ADRL $00000000 ; displacement L02A7AB PEA ^L02A7BE PEA L02A7BE PEA $2012 ; Read JSL GSOS2 BCS L02A759 LDA L02A7CE RTS L02A7BE DW $0004 ; Parms for Read L02A7C0 DW $0000 ; ref num ADRL L02A7CE ; buffer ptr ADRL $00000001 ; request count ADRL $00000000 ; transfer count L02A7CE DW $0000 L02A7D0 PEA ^L02A7E3 PEA L02A7E3 PEA $2012 ; Read JSL GSOS2 BCC L02A7E2 BRL L02A759 L02A7E2 RTS L02A7E3 DW $0004 ; Parms for Read L02A7E5 DW $0000 ; ref num ADRL L02A7F3 ; buffer ptr ADRL $00000004 ; request count ADRL $00000000 ; transfer count L02A7F3 DW $0000 L02A7F5 DW $0000 L02A7F7 PEA ^L02A80A PEA L02A80A PEA $2012 ; Read JSL GSOS2 BCC L02A809 BRL L02A759 L02A809 RTS L02A80A DW $0004 ; Parms for Read L02A80C DW $0000 ; ref num L02A80E ADRL $00000000 ; buffer ptr L02A812 ADRL $00000000 ; request count ADRL $00000000 ; transfer count L02A81A PEA ^L02A82D PEA L02A82D PEA $2012 ; Read JSL GSOS2 BCC L02A82C BRL L02A759 L02A82C RTS L02A82D DW $0004 ; Parms for Read L02A82F DW $0000 ; ref num L02A831 ADRL $00000000 ; buffer ptr L02A835 ADRL $00000000 ; request count ADRL $00000000 ; transfer count L02A83D PEA ^L02A863 PEA L02A863 PEA $2012 ; Read JSL GSOS2 BCC L02A84F BRL L02A759 L02A84F SEP #$30 LDX L02A873 L02A854 LDA L02A873,X ORA #$80 STA L02A873,X DEX BNE L02A854 REP #$30 CLC RTS L02A863 DW $0004 ; Parms for Read L02A865 DW $0000 ; ref num ADRL L02A874 ; buffer ptr L02A86B ADRL $00000000 ; request count ADRL $00000000 ; transfer count L02A873 DB $00 L02A874 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 DB $00 L02A893 DB $00 DB $00 L02A895 DB $00 DB $00 L02A897 DB $00 DB $00 L02A899 DB $00 DB $00 L02A89B DB $00 DB $00 L02A89D DB $00 DB $00 L02A89F DB $00 DB $00 L02A8A1 DB $00 DB $00