Table of Contents

BACKUP

Header for : Backup
Module size: $4B2  #1202
Module CRC : $129C2B (Good)
Hdr parity : $9E
Exec. off  : $0176  #374
Data size  : $1250  #4688
Edition    : $08  #8
Ty/La At/Rv: $11 $81
Prog mod, 6809 Obj, re-ent, R/O

CODE

* Disassembly by Os9disasm of backup

 mod L04b2,L000d,$11,$81,L0176,D1250

* OS-9 system function equates

F$Exit equ $06
F$PErr equ $0f
F$PrsNam equ $10
I$Open equ $84
I$Seek equ $88
I$Read equ $89
I$Write equ $8a
I$WritLn equ $8c
I$GetStt equ $8d
I$SetStt equ $8e
I$Close equ $8f

* class D external label equates

Dfff0 equ $fff0
Dfff1 equ $fff1
Dfffa equ $fffa
Dffff equ $ffff

* OS9 data area definitions

D0000 rmb 1
D0001 rmb 1
D0002 rmb 2
D0004 rmb 5
D0009 rmb 1
D000a rmb 1
D000b rmb 1
D000c rmb 1
D000d rmb 1
D000e rmb 1
D000f rmb 1
D0010 rmb 1
D0011 rmb 2
D0013 rmb 1
D0014 rmb 12
D0020 rmb 53
D0055 rmb 1
D0056 rmb 4602
D1250 equ .

L000d fcb $42
 fcb $61
 com   11,s
 fcb $75
 subb  $082f
L0014 equ *-1
 lsr   Dfff0,y
 bra   L0048
 lsr   Dfff1,y
 tst   D000a
L001c equ *-1
 fcb $55
 com   $653a
 bra   L0065
 fcb $61
 com   11,s
 fcb $75
 neg   $205b
 fcb $65
 tstb  
 bra   L0089
 com   23840
 fcb $5b
 blt   L00aa
 tstb  
 dec   D0020
 bra   L0059
 bra   L005b
 bra   L005d
 bra   L005f
 bra   L0061
 bra   L009e
 ble   L00a9
 fcb $65
 ror   12576
L0048 equ *-1
 fcb $5b
 ble   L00b0
 fcb $65
 ror   12893
 tstb  
 dec   D0020
 bra   L00ba
 bra   L0084
 bra   L00ba
L0059 fcb $62
 clr   -14,s
L005b equ *-1
 lsr   $2069
L005d equ *-2
L005f fcb $66
 bra   L00d4
L0061 equ *-1
 fcb $65
 fcb $61
 fcb $64
L0065 bra   L00cc
 fcb $72
 fcb $72
 clr   -14,s
 dec   D0020
 bra   L00e2
 bra   L009e
 bra   L00e6
 rol   14,s
 asr   12,s
 fcb $65
 bra   L00de
 fcb $72
 rol   -10,s
 fcb $65
 bra   L00f0
 fcb $72
 clr   13,s
 neg   29811
L0084 equ *-2
 dec   D0020
 blt   L0100
L0089 equ *-1
 bra   L00b9
 bra   L00f7
 jmp   8,s
 rol   2,s
 rol   -12,s
 bra   L010c
 fcb $65
 fcb $72
 rol   6,s
 rol   $2070
 fcb $61
L009e com   29581
L00a0 equ *-1
L00a1 fcb $52
 fcb $65
L00a3 fcb $61
 lsr   -7,s
 bra   L011c
 fcb $6f
L00a9 bra   L010d
L00aa equ *-1
 fcb $61
 com   11,s
 fcb $75
 neg   $2066
L00b0 equ *-2
 fcb $72
 clr   13,s
L00b5 fcb $a0
L00b6 bra   L012c
 clr   ,y+
L00b9 equ *-1
L00ba clra  
 fcb $6b
L00bc bra   L00fd
 abx   
 suba  -14,u
L00c0 equ *-1
 fcb $65
 fcb $61
 lsr   -7,s
 bra   L011a
 clr   -11,s
 fcb $72
 com   5,s
L00cc bge   L00ee
 asl   9,s
 lsr   $2061
 bra   L0140
L00d4 equ *-1
 fcb $65
L00d6 rol   15008
L00d9 fcb $52
 fcb $65
 fcb $61
 lsr   -7,s
L00de bra   L0124
 fcb $65
 com   29801
L00e2 equ *-2
 jmp   1,s
L00e6 lsr   $696f
 jmp   D000c,y
 bra   L0155
 rol   -12,s
L00ee equ *-1
 bra   L0152
L00f0 equ *-1
 bra   L015e
 fcb $65
 rol   15008
L00f7 comb  
 fcb $65
 com   -12,s
 clr   -14,s
L00fd bra   L00a3
L00ff comb  
L0100 fcb $65
 com   -12,s
 clr   -14,s
 com   $2020
 bra   L016d
 clr   -16,s
L010c rol   5,s
L010d equ *-1
 lsr   Dfffa,y
 bra   L00b6
L0112 dec   D0056
 fcb $65
 fcb $72
 rol   6,s
 rol   $2070
L011a equ *-1
 fcb $61
L011c com   29581
L011f comb  
 fcb $65
 com   -12,s
 clr   -14,s
L0124 equ *-1
 com   $2076
 fcb $65
 fcb $72
 rol   6,s
L012c rol   5,s
 lsr   Dfffa,y
 bra   L00d6
L0132 dec   D0020
 rol   -13,s
 bra   L019a
 fcb $65
 rol   14,s
 fcb $67
 bra   L01b1
 com   -14,s
L0140 fcb $61
 lsr   $6368
 fcb $65
 lsr   L45b2,pcr
L0147 equ *-2
 com   $6b73
 bra   L01bc
 clr   -12,s
 bra   L01b8
L0152 clr   -14,s
 tst   1,s
L0155 equ *-1
 lsr   29797
 fcb $64
 bra   L01c5
 lsr   5,s
L015e jmp   -12,s
 rol   3,s
 fcb $61
 inc   12,s
 rol   $0a42
L0167 equ *-1
 fcb $61
 com   11,s
 fcb $75
 neg   $2041
L016d equ *-2
 fcb $62
 clr   -14,s
 lsr   $6564
 bsr   L01a9
L0176 equ *-1
 adcb  #1
 stu   13318
 pshs  u
 tfr   y,d
 subd  ,s++
 subd  #$0250
 sta   D0013
 clr   D000b
 clr   D000a
 clr   D000c
 clr   D000d
 leay  87,u
 sty   D0055
 ldd   ,s++
 beq   L01e3
L0199 ldd   ,x+
L019a equ *-1
 cmpa  #$20
 beq   L0199
 cmpa  #$2c
 beq   L0199
 eora  #$45
 anda  #$df
 bne   L01b1
L01a9 cmpb  #$30
 bcc   L01b1
 inc   D000a
 bra   L0199
L01b1 lda   -1,x
 eora  #$53
 anda  #$df
 bne   L01c1
L01b8 equ *-1
 cmpb  #$30
 bcc   L01c1
L01bc equ *-1
 inc   D000b
 bra   L0199
L01c1 ldd   -1,x
 cmpa  #$2d
L01c5 bne   L01d7
 eorb  #$56
 andb  #$df
 bne   L01d7
 ldd   ,x+
 cmpb  #$30
 bcc   L01d7
 inc   D000c
 bra   L0199
L01d7 lda   ,-x
 cmpa  #$2f
 beq   L01e7
 cmpa  #$0d
 lbne  L040e
L01e3 leax  L0014,pcr
L01e7 leay  L00a1,pcr
 lbsr  L044b
 ldy   D0055
 sty   D0002
 lbsr  L043a
L01f7 lda   ,x+
 cmpa  #$20
 beq   L01f7
 cmpa  #$2c
 beq   L01f7
 cmpa  #$0d
 bne   L020b
 inc   D000b
 ldx   D0002
 lda   ,x+
L020b cmpa  #$2f
 lbne  L040e
 leax  -1,x
 leay  L00b6,pcr
 lbsr  L044b
 ldy   D0055
 sty   D0004
 lbsr  L043a
 leay  L00bc,pcr
 lbsr  L0421
 comb  
 eora  #$59
 anda  #$df
 lbne  L03ba
 ldx   D0002
 ldd   #$4020
L0238 cmpb  ,x+
 bne   L0238
 std   -1,x
 ldx   D0002
 lda   #1
 os9 I$Open
 bcs   L027c
 leax  848,u
 ldy   #$0100
 os9 I$Read
 bcs   L027c
 os9 I$Close
 ldx   D0002
 lda   #1
 os9 I$Open
 bcs   L027c
 sta   D0000
 ldx   D0004
 leay  21,u
L0267 ldb   ,x+
 stb   ,y+
 cmpb  #$20
 bne   L0267
 ldd   #$4020
 std   Dffff,y
 leax  21,u
 lda   #3
 os9 I$Open
L027c lblo  L03af
 sta   D0001
 clr   D000e
 clr   D000f
 clr   D0010
 lbsr  L0419
 lda   D0001
 leax  592,u
 ldy   #$0100
 os9 I$Read
 pshs  x,u
 ldx   #0
 leau  ,x
 os9 I$Seek
 puls  x,u
 bcs   L027c
 ldd   256,x
 cmpd  ,x
 bne   L02b7
 ldb   258,x
 cmpb  2,x
 beq   L02be
L02b7 leay  L0147,pcr
 lbra  L03b6
L02be leax  592,u
 lda   #$bf
 sta   63,x
 leay  31,x
 lbsr  L044b
 leay  L0132,pcr
 lbsr  L0456
 leay  L00ba,pcr
 lbsr  L0421
 comb  
 eora  #$59
 anda  #$df
 lbne  L03ba
 lda   D0001
 leax  848,u
 ldy   #$0100
 os9 I$Write
 lblo  L03af
 pshs  u
 ldx   #0
 leau  ,x
 os9 I$Seek
 puls  u
 leax  848,u
 os9 I$Read
 lblo  L03af
 os9 I$Close
 leax  21,u
 lda   #2
 os9 I$Open
 lblo  L03af
 sta   D0001
 leax  53,u
 ldb   #0
 os9 I$GetStt
 ldb   #1
 stb   8,x
 ldb   #0
 os9 I$SetStt
 lblo  L03af
L0332 leay  L00c0,pcr
 lbsr  L041d
 lda   D0013
 sta   D0014
 leax  592,u
 lbsr  L0403
 lbsr  L0419
 ldd   D0011
 leax  592,u
 stx   D0011
 subd  D0011
 beq   L035c
 tfr   d,y
 lda   D0001
 os9 I$Write
 bcs   L03af
L035c lda   D000d
 cmpa  #$d3
 bne   L0332
 leay  L00ff,pcr
 lbsr  L0470
 tst   D000c
 bne   L03ba
 leay  L0112,pcr
 lbsr  L0456
 lda   D0000
 os9 I$Close
 bcs   L03af
 lda   D0001
 os9 I$Close
 bcs   L03af
 leax  21,u
 lda   #1
 os9 I$Open
 bcs   L03af
 sta   D0000
 clr   D000e
 clr   D000f
 clr   D0010
 clr   D000d
L0396 lda   D0013
 sta   D0014
 leax  592,u
 bsr   L0403
 lda   D000d
 cmpa  #$d3
 bne   L0396
 leay  L011f,pcr
 lbsr  L0470
 bra   L03ba
L03af os9 F$PErr
 leay  L0167,pcr
L03b6 lbsr  L0456
 comb  
L03ba ldb   #0
 os9 F$Exit
L03bf ldy   #$0100
 lda   D0000
 os9 I$Read
 bcc   L03dc
 stb   D000d
 cmpb  #$d3
 beq   L040d
 lbsr  L046c
 ldb   D000d
 tst   D000a
 bne   L03af
 os9 F$PErr
L03dc ldd   D000f
 addd  #1
 std   D000f
 bcc   L03e7
 inc   D000e
L03e7 tst   D000d
 beq   L03fd
 pshs  u
 ldx   D000e
 tfr   b,a
 clrb  
 tfr   d,u
 lda   D0000
 os9 I$Seek
 puls  u
 clr   D000d
L03fd ldx   D0011
 leax  256,x
L0403 stx   D0011
 lda   D0014
 suba  #1
 sta   D0014
 bcc   L03bf
L040d rts   
L040e leax  87,u
 stx   D0055
 leay  L001c,pcr
 bra   L03b6
L0419 leay  L00d9,pcr
L041d tst   D000b
 beq   L0439
L0421 bsr   L0456
 pshs  d,x,y
 leax  ,s
 ldy   #1
 clra  
 os9 I$Read
 leay  L00a0,pcr
 bsr   L0456
 puls  d,x,y
 anda  #$7f
L0439 rts   
L043a pshs  x
 os9 F$PrsNam
 puls  x
 bcs   L040e
L0443 lda   ,x+
 bsr   L04a5
 decb  
 bpl   L0443
 rts   
L044b lda   ,y
 anda  #$7f
 bsr   L04a5
 lda   ,y+
 bpl   L044b
L0455 rts   
L0456 bsr   L044b
 pshs  a,x,y
 ldd   D0055
 leax  87,u
 stx   D0055
 subd  D0055
 tfr   d,y
 lda   #2
 os9 I$WritLn
 puls  a,x,y,pc
L046c leay  L00f7,pcr
L0470 bsr   L044b
 lda   D000e
 bsr   L0486
 inc   D0009
 lda   D000f
 bsr   L0488
 lda   D0010
 bsr   L0488
 leay  L00b5,pcr
 bra   L0456
L0486 clr   D0009
L0488 pshs  a
 lsra  
 lsra  
 lsra  
 lsra  
 bsr   L0494
 puls  a
 anda  #$0f
L0494 tsta  
 beq   L0499
 sta   D0009
L0499 tst   D0009
 beq   L0455
 adda  #$30
 cmpa  #$39
 bls   L04a5
 adda  #7
L04a5 pshs  x
 ldx   D0055
 sta   ,x+
 stx   D0055
 puls  x,pc

 emod 

L04b2 equ *

 end

RTS

Return to OS-9 or Top