Table of Contents

MDIR

Header for : Mdir
Module size: $1A6  #422
Module CRC : $C459BC (Good)
Hdr parity : $8F
Exec. off  : $0066  #102
Data size  : $0127  #295
Edition    : $03  #3
Ty/La At/Rv: $11 $81
Prog mod, 6809 Obj, re-ent, R/O

CODE

* Disassembly by Os9disasm of mdir

 mod L01a6,L000d,$11,$81,L0066,D0127

* OS-9 system function equates

F$Exit equ $06
F$Time equ $15
I$WritLn equ $8c

* OS9 data area definitions

D0000 rmb 2
D0002 rmb 2
D0004 rmb 2
D0006 rmb 1
D0007 rmb 1
D0008 rmb 37
D002d rmb 3
D0030 rmb 111
D009f rmb 136
D0127 equ .

L000d tsta  
 lsr   9,s
 sbcb  $030a
 bra   L0062
 clr   4,s
 fcb $75
 inc   5,s
 bra   L0060
 rol   -14,s
 fcb $65
 com   -12,s
 clr   -14,s
 rol   $2061
 lsr   $200a
L0028 equ *-1
 fcb $41
 lsra  
 lsra  
 fcb $52
 bra   L0082
 rola  
 decb  
 fcb $45
 bra   L0088
 rolb  
 bra   L0089
 rorb  
 bra   L007b
 lsrb  
 bra   L0092
 coma  
 bra   L0060
 bra   L0090
 fcb $41
 tsta  
 fcb $45
 dec   D002d
 blt   L0076
 blt   L006b
 blt   L007a
 blt   L007c
 bra   L007e
 blt   L0073
 blt   L0082
 bra   L0084
 blt   L0079
 blt   L0088
 bra   L008a
 blt   L008c
 blt   L008e
L0060 equ *-1
 blt   L0090
L0062 equ *-1
 blt   L0092
 tst   D009f
L0066 equ *-1
 lsr   D0030
 cmpx  #$a710
L006b equ *-1
 ldx   #$0016
 lda   #1
 os9 I$WritLn
L0073 equ *-1
 leax  9,u
L0076 os9 F$Time
L0079 leax  15,u
L007a equ *-1
L007b stx   D0007
L007c equ *-1
 leax  12,u
L007e equ *-1
 lbsr  L017d
L0082 lbsr  L016a
L0084 equ *-1
 ldx   >$0026
L0088 stx   D0000
L0089 equ *-1
L008a ldd   >$0028
L008c equ *-1
 std   D0002
L008e equ *-1
 leax  -4,x
L0090 equ *-1
 ldy   D0004
L0092 equ *-2
 lda   ,y+
 eora  #$45
 anda  #$df
 bne   L00cf
 leax  >L0028,pcr
 ldy   #$003e
 lda   #1
 os9 I$WritLn
 ldx   D0000
 bra   L0113
L00ad ldy   ,x
 beq   L00d4
 ldd   D0004,y
 leay  d,y
 lbsr  L015f
L00b9 lbsr  L014c
 ldb   D0008
 subb  #$0f
 cmpb  #$15
 bhi   L00cc
L00c4 subb  #$0a
 bhi   L00c4
 bne   L00b9
 bra   L00d4
L00cc lbsr  L016a
L00cf leay  15,u
 sty   D0007
L00d4 leax  4,x
 cmpx  D0002
 bcs   L00ad
 lbsr  L016a
 bra   L0117
L00df leay  15,u
 sty   D0007
 ldy   ,x
 beq   L0111
 ldd   ,x
 bsr   L011b
 ldd   D0002,y
 bsr   L011b
 lda   D0006,y
 bsr   L0123
 lda   D0007,y
 anda  #$0f
 bsr   L0123
 ldb   D0007,y
 lda   #$72
 bsr   L0158
 bsr   L014c
 bsr   L014c
 lda   2,x
 bsr   L0123
 ldd   D0004,y
 leay  d,y
 bsr   L015f
 bsr   L016a
L0111 leax  4,x
L0113 cmpx  D0002
 bcs   L00df
L0117 clrb  
 os9 F$Exit
L011b bsr   L0127
 tfr   b,a
 bsr   L0129
 bra   L014c
L0123 bsr   L0127
 bra   L014c
L0127 clr   D0006
L0129 pshs  a
 lsra  
 lsra  
 lsra  
 lsra  
 bsr   L0135
 lda   ,s+
 anda  #$0f
L0135 tsta  
 beq   L013a
 sta   D0006
L013a tst   D0006
 bne   L0142
 lda   #$20
 bra   L014e
L0142 adda  #$30
 cmpa  #$39
 bls   L014e
 adda  #7
 bra   L014e
L014c lda   #$20
L014e pshs  x
 ldx   D0007
 sta   ,x+
 stx   D0007
 puls  x,pc
L0158 rolb  
 bcs   L014e
 lda   #$2e
 bra   L014e
L015f lda   ,y
 anda  #$7f
 bsr   L014e
 lda   ,y+
 bpl   L015f
 rts   
L016a pshs  a,x,y
 lda   #$0d
 bsr   L014e
 leax  15,u
 ldy   #$0050
 lda   #1
 os9 I$WritLn
 puls  a,x,y,pc
L017d bsr   L0185
 bsr   L0181
L0181 lda   #$3a
 bsr   L014e
L0185 ldb   ,x+
 lda   #$2f
L0189 inca  
 subb  #$64
 bcc   L0189
 cmpa  #$30
 beq   L0194
 bsr   L014e
L0194 lda   #$3a
L0196 deca  
 addb  #$0a
 bcc   L0196
 bsr   L014e
 tfr   b,a
 adda  #$30
 bra   L014e

 emod 

L01a6 equ *

 end

RTS

Return to OS-9 or Top