Table of Contents

PRINTERR

Header for : Printerr
Module size: $F6  #246
Module CRC : $E61370 (Good)
Hdr parity : $DE
Exec. off  : $003D  #61
Data size  : $0056  #86
Edition    : $06  #6
Ty/La At/Rv: $11 $81
Prog mod, 6809 Obj, re-ent, R/O

CODE

* Disassembly by Os9disasm of printerr

 mod L00f6,L000d,$11,$81,L003d,D0056

* OS-9 system function equates

F$Link equ $00
F$Exit equ $06
F$SSvc equ $32
I$Open equ $84
I$ReadLn equ $8b
I$WritLn equ $8c
I$Close equ $8f

* OS9 data area definitions

 rmb 15
D000f rmb 29
D002c rmb 31
D004b rmb 11
D0056 equ .

L000d negb  
 fcb $72
 rol   14,s
 lsr   $6572
 sbcb  $062f
L0016 equ *-1
 lsra  
 leax  D000f,y
 comb  
 rolb  
 comb  
 ble   L0064
 fcb $52
 fcb $52
 tsta  
 comb  
 asra  
 tst   D002c
 bge   L0054
 bge   L0056
 bge   L0058
 bge   L005a
 bge   L005c
 bge   L0077
L0031 equ *-1
 fcb $72
 fcb $72
 clr   -14,s
 bra   L005b
 stu   $0f00
L0039 equ *-2
 fcb $14
 suba  #$4f
L003d equ *-1
 leax  <L000d,pcr
 os9 F$Link
 bcs   L004d
 leay  <L0039,pcr
 os9 F$SSvc
 clrb  
L004d os9 F$Exit
 ldx   D004b
 lda   40,x
L0054 equ *-1
 beq   L008b
L0056 equ *-1
 leas  -86,s
L0058 equ *-2
L005a ldb   2,u
L005b equ *-1
L005c leau  ,s
 sta   ,u
 stb   2,u
 bsr   L00a8
L0064 lda   #1
 leax  >L0016,pcr
 os9 I$Open
 sta   1,u
 bcs   L0088
 bsr   L008d
 bcs   L0083
 bne   L0083
L0077 bsr   L00d4
 bsr   L009c
 bcs   L0083
 ldb   ,x
 cmpb  #$30
 bcs   L0077
L0083 lda   1,u
 os9 I$Close
L0088 leas  86,s
L008b clrb  
 rts   
L008d bsr   L009c
 bcs   L009b
 bsr   L00de
 cmpa  #$30
 bcc   L008d
 cmpb  2,u
 bne   L008d
L009b rts   
L009c lda   1,u
 leax  5,u
 ldy   #$0050
 os9 I$ReadLn
 rts   
L00a8 leax  >L0031,pcr
 leay  5,u
 lda   ,x+
L00b0 sta   ,y+
 lda   ,x+
 bpl   L00b0
 ldb   2,u
 lda   #$2f
L00ba inca  
 subb  #$64
 bcc   L00ba
 sta   ,y+
 lda   #$3a
L00c3 deca  
 addb  #$0a
 bcc   L00c3
 sta   ,y+
 tfr   b,a
 adda  #$30
 ldb   #$0d
 std   ,y+
 leax  5,u
L00d4 ldy   #$0050
 lda   ,u
 os9 I$WritLn
 rts   
L00de clrb  
L00df lda   ,x+
 suba  #$30
 cmpa  #9
 bhi   L00f0
 pshs  a
 lda   #$0a
 mul   
 addb  ,s+
 bcc   L00df
L00f0 lda   -1,x
 rts   

 emod 

L00f6 equ *

 end

RTS

Return to OS-9 or Top