view 3rdparty/packages/os9l2bbs/cmds/BBS.reply.asm @ 2402:04755ee002ba

Updated
author boisy
date Sun, 24 Jan 2010 17:32:49 +0000
parents 75ba2a80a4e3
children c491d9c9a4fd
line wrap: on
line source

         nam   BBS.reply
         ttl   program module       

* Disassembled 2010/01/24 10:37:24 by Disasm v1.5 (C) 1988 by RML

         ifp1
         use   defsfile
         endc
tylg     set   Prgrm+Objct   
atrv     set   ReEnt+rev
rev      set   $01
         mod   eom,name,tylg,atrv,start,size
u0000    rmb   1
u0001    rmb   1
u0002    rmb   1
u0003    rmb   1
u0004    rmb   1
u0005    rmb   1
u0006    rmb   1
u0007    rmb   1
u0008    rmb   2
u000A    rmb   2
u000C    rmb   1
u000D    rmb   1
u000E    rmb   1
u000F    rmb   1
u0010    rmb   2
u0012    rmb   2
u0014    rmb   2
u0016    rmb   1
u0017    rmb   1
u0018    rmb   2
u001A    rmb   2
u001C    rmb   200
u00E4    rmb   1
u00E5    rmb   5
u00EA    rmb   1
u00EB    rmb   2
u00ED    rmb   2
u00EF    rmb   60
u012B    rmb   2
u012D    rmb   2
u012F    rmb   20
u0143    rmb   30
u0161    rmb   6
u0167    rmb   2
u0169    rmb   2
u016B    rmb   2
u016D    rmb   2
u016F    rmb   6
u0175    rmb   2
u0177    rmb   2
u0179    rmb   2
u017B    rmb   16
u018B    rmb   8000
u20CB    rmb   80
u211B    rmb   32
u213B    rmb   400
size     equ   .
name     equ   *
         fcs   /BBS.reply/
         fcb   $43 C
         fcb   $6F o
         fcb   $70 p
         fcb   $79 y
         fcb   $72 r
         fcb   $69 i
         fcb   $67 g
         fcb   $68 h
         fcb   $74 t
         fcb   $20 
         fcb   $28 (
         fcb   $43 C
         fcb   $29 )
         fcb   $20 
         fcb   $31 1
         fcb   $39 9
         fcb   $38 8
         fcb   $38 8
         fcb   $42 B
         fcb   $79 y
         fcb   $20 
         fcb   $4B K
         fcb   $65 e
         fcb   $69 i
         fcb   $74 t
         fcb   $68 h
         fcb   $20 
         fcb   $41 A
         fcb   $6C l
         fcb   $70 p
         fcb   $68 h
         fcb   $6F o
         fcb   $6E n
         fcb   $73 s
         fcb   $6F o
         fcb   $4C L
         fcb   $69 i
         fcb   $63 c
         fcb   $65 e
         fcb   $6E n
         fcb   $63 c
         fcb   $65 e
         fcb   $64 d
         fcb   $20 
         fcb   $74 t
         fcb   $6F o
         fcb   $20 
         fcb   $41 A
         fcb   $6C l
         fcb   $70 p
         fcb   $68 h
         fcb   $61 a
         fcb   $20 
         fcb   $53 S
         fcb   $6F o
         fcb   $66 f
         fcb   $74 t
         fcb   $77 w
         fcb   $61 a
         fcb   $72 r
         fcb   $65 e
         fcb   $20 
         fcb   $54 T
         fcb   $65 e
         fcb   $63 c
         fcb   $68 h
         fcb   $6E n
         fcb   $6F o
         fcb   $6C l
         fcb   $6F o
         fcb   $67 g
         fcb   $69 i
         fcb   $65 e
         fcb   $73 s
         fcb   $41 A
         fcb   $6C l
         fcb   $6C l
         fcb   $20 
         fcb   $72 r
         fcb   $69 i
         fcb   $67 g
         fcb   $68 h
         fcb   $74 t
         fcb   $73 s
         fcb   $20 
         fcb   $72 r
         fcb   $65 e
         fcb   $73 s
         fcb   $65 e
         fcb   $72 r
         fcb   $76 v
         fcb   $65 e
         fcb   $64 d
         fcb   $EC l
         fcb   $E6 f
         fcb   $EA j
         fcb   $F5 u
         fcb   $E9 i
         fcb   $A0 
         fcb   $E2 b
         fcb   $ED m
         fcb   $F1 q
         fcb   $E9 i
         fcb   $F0 p
         fcb   $EF o
         fcb   $F4 t
         fcb   $F0 p
L0081    fcb   $42 B
         fcb   $42 B
         fcb   $53 S
         fcb   $2E .
         fcb   $6D m
         fcb   $73 s
         fcb   $67 g
         fcb   $2E .
         fcb   $69 i
         fcb   $6E n
         fcb   $78 x
         fcb   $0D 
L008D    fcb   $42 B
         fcb   $42 B
         fcb   $53 S
         fcb   $2E .
         fcb   $6D m
         fcb   $73 s
         fcb   $67 g
         fcb   $0D 
         fcb   $0A 
         fcb   $45 E
         fcb   $6E n
         fcb   $74 t
         fcb   $65 e
         fcb   $72 r
         fcb   $20 
         fcb   $73 s
         fcb   $75 u
         fcb   $62 b
         fcb   $6A j
         fcb   $65 e
         fcb   $63 c
         fcb   $74 t
         fcb   $20 
         fcb   $6F o
         fcb   $66 f
         fcb   $20 
         fcb   $6D m
         fcb   $65 e
         fcb   $73 s
         fcb   $73 s
         fcb   $61 a
         fcb   $67 g
         fcb   $65 e
         fcb   $0D 
         fcb   $0A 
         fcb   $3E >
         fcb   $00 
         fcb   $1C 
L00B3    fcb   $0A 
         fcb   $0A 
         fcb   $20 
         fcb   $20 
         fcb   $20 
         fcb   $20 
         fcb   $50 P
         fcb   $6C l
         fcb   $65 e
         fcb   $61 a
         fcb   $73 s
         fcb   $65 e
         fcb   $20 
         fcb   $65 e
         fcb   $6E n
         fcb   $74 t
         fcb   $65 e
         fcb   $72 r
         fcb   $20 
         fcb   $6D m
         fcb   $65 e
         fcb   $73 s
         fcb   $73 s
         fcb   $61 a
         fcb   $67 g
         fcb   $65 e
         fcb   $20 
         fcb   $6E n
         fcb   $6F o
         fcb   $77 w
         fcb   $20 
         fcb   $20 
         fcb   $20 
         fcb   $20 
         fcb   $20 
         fcb   $20 
         fcb   $20 
         fcb   $20 
         fcb   $20 
         fcb   $20 
         fcb   $20 
         fcb   $20 
         fcb   $28 (
         fcb   $42 B
         fcb   $6C l
         fcb   $61 a
         fcb   $6E n
         fcb   $6B k
         fcb   $20 
         fcb   $6C l
         fcb   $69 i
         fcb   $6E n
         fcb   $65 e
         fcb   $20 
         fcb   $65 e
         fcb   $6E n
         fcb   $64 d
         fcb   $73 s
         fcb   $29 )
         fcb   $0D 
L00EF    fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $0D 
L0130    fcb   $2F /
         fcb   $64 d
         fcb   $64 d
         fcb   $2F /
         fcb   $62 b
         fcb   $62 b
         fcb   $73 s
         fcb   $2F /
         fcb   $42 B
         fcb   $42 B
         fcb   $53 S
         fcb   $2E .
         fcb   $61 a
         fcb   $6C l
         fcb   $69 i
         fcb   $61 a
         fcb   $73 s
         fcb   $0D 
L0142    fcb   $0A 
         fcb   $5B [
         fcb   $41 A
         fcb   $5D ]
         fcb   $62 b
         fcb   $6F o
         fcb   $72 r
         fcb   $74 t
         fcb   $20 
         fcb   $5B [
         fcb   $44 D
         fcb   $5D ]
         fcb   $6F o
         fcb   $6E n
         fcb   $65 e
         fcb   $20 
         fcb   $5B [
         fcb   $45 E
         fcb   $5D ]
         fcb   $64 d
         fcb   $69 i
         fcb   $74 t
         fcb   $20 
         fcb   $5B [
         fcb   $43 C
         fcb   $5D ]
         fcb   $6F o
         fcb   $6E n
         fcb   $74 t
         fcb   $69 i
         fcb   $6E n
         fcb   $75 u
         fcb   $65 e
         fcb   $20 
         fcb   $6F o
         fcb   $72 r
         fcb   $20 
         fcb   $5B [
         fcb   $4C L
         fcb   $5D ]
         fcb   $69 i
         fcb   $73 s
         fcb   $74 t
         fcb   $0D 
L016E    fcb   $45 E
         fcb   $6E n
         fcb   $74 t
         fcb   $65 e
         fcb   $72 r
         fcb   $20 
         fcb   $6C l
         fcb   $69 i
         fcb   $6E n
         fcb   $65 e
         fcb   $20 
         fcb   $23 #
         fcb   $0D 
L017B    fcb   $3E >
L017C    fcb   $0A 
         fcb   $0D 
L017E    fcb   $08 
         fcb   $20 
         fcb   $08 
L0181    fcb   $2F /
         fcb   $64 d
         fcb   $64 d
         fcb   $2F /
         fcb   $62 b
         fcb   $62 b
         fcb   $73 s
         fcb   $2F /
         fcb   $42 B
         fcb   $42 B
         fcb   $53 S
         fcb   $2E .
         fcb   $75 u
         fcb   $73 s
         fcb   $65 e
         fcb   $72 r
         fcb   $73 s
         fcb   $74 t
         fcb   $61 a
         fcb   $74 t
         fcb   $73 s
         fcb   $0D 
L0197    fcb   $55 U
         fcb   $73 s
         fcb   $65 e
         fcb   $72 r
         fcb   $20 
         fcb   $6E n
         fcb   $61 a
         fcb   $6D m
         fcb   $65 e
         fcb   $20 
         fcb   $6E n
         fcb   $6F o
         fcb   $74 t
         fcb   $20 
         fcb   $66 f
         fcb   $6F o
         fcb   $75 u
         fcb   $6E n
         fcb   $64 d
         fcb   $21 !
         fcb   $0D 
L01AC    fcb   $41 A
         fcb   $64 d
         fcb   $64 d
         fcb   $72 r
         fcb   $65 e
         fcb   $73 s
         fcb   $73 s
         fcb   $20 
         fcb   $6D m
         fcb   $65 e
         fcb   $73 s
         fcb   $73 s
         fcb   $61 a
         fcb   $67 g
         fcb   $65 e
         fcb   $20 
         fcb   $74 t
         fcb   $6F o
         fcb   $20 
         fcb   $28 (
         fcb   $42 B
         fcb   $4C L
         fcb   $41 A
         fcb   $4E N
         fcb   $4B K
         fcb   $20 
         fcb   $66 f
         fcb   $6F o
         fcb   $72 r
         fcb   $20 
         fcb   $41 A
         fcb   $4C L
         fcb   $4C L
         fcb   $29 )
         fcb   $0D 
         fcb   $0A 
start    equ   *
         stx   u0008,u
         clr   >u00EA,u
         clr   >u00E4,u
         clr   u0006,u
         os9   F$ID     
         lbcs  L063B
         sty   u000A,u
         ldy   #$0000
         os9   F$SUser  
         lbcs  L063B
         leax  >L0081,pcr
         lda   #$03
         os9   I$Open   
         lbcs  L063B
         sta   ,u
         leax  >u00EB,u
         ldy   #$0040
         lda   ,u
         os9   I$Read   
         lbcs  L063B
         lda   #$06
         sta   u0003,u
         ldd   >u00EB,u
         addd  #$0001
         std   >u00EB,u
         clr   u000E,u
         clr   u000F,u
L0224    lslb  
         rola  
         rol   u000F,u
         dec   u0003,u
         bne   L0224
         std   <u0010,u
         lda   ,u
         ldx   u000E,u
         pshs  u
         ldu   <u0010,u
         os9   I$Seek   
         lbcs  L063B
         puls  u
         leax  >u0161,u
         os9   F$Time   
         ldx   u0008,u
         leay  >u0143,u
         ldb   #$1E
L0250    lda   ,x+
         sta   ,y+
         cmpa  #$0D
         beq   L025B
         decb  
         bne   L0250
L025B    leax  >L0130,pcr
         lda   #$01
         os9   I$Open   
         lbcs  L063B
         sta   u0002,u
L026A    leax  >L01AC,pcr
         ldy   #$0024
         lda   #$01
         os9   I$Write  
         leax  >u213B,u
         ldy   #$00C8
         clra  
         os9   I$ReadLn 
         cmpy  #$0001
         ble   L02F1
L0289    lda   ,x+
         anda  #$DF
         sta   -$01,x
         cmpa  #$0D
         bne   L0289
L0293    leax  <u001C,u
         ldy   #$00C8
         lda   u0002,u
         os9   I$ReadLn 
         bcs   L02D4
         leay  >u213B,u
         leax  <u001C,u
L02A8    lda   ,x+
         cmpa  #$2C
         beq   L02B6
         anda  #$DF
         cmpa  ,y+
         bne   L0293
         bra   L02A8
L02B6    lda   ,y+
         cmpa  #$0D
         bne   L0293
         lbsr  L07D2
         std   >u0169,u
         lda   u0002,u
         pshs  u
         ldu   #$0000
         ldx   #$0000
         os9   I$Seek   
         puls  u
         bra   L02F8
L02D4    leax  >L0197,pcr
         ldy   #$00C8
         lda   #$01
         os9   I$WritLn 
         lda   u0002,u
         pshs  u
         ldu   #$0000
         ldx   #$0000
         os9   I$Seek   
         lbra  L026A
L02F1    ldd   #$FFFF
         std   >u0169,u
L02F8    leax  >L00B3,pcr
         ldy   #$00C8
         lda   #$01
         os9   I$WritLn 
         lbcs  L063B
         leax  >L00EF,pcr
         ldy   #$0050
         os9   I$WritLn 
         lbcs  L063B
         ldd   #$0000
         std   u000C,u
L031D    ldd   u000C,u
         addd  #$0001
         std   u000C,u
         cmpd  #$0063
         bge   L0335
         lbsr  L0432
         cmpy  #$0001
         bls   L0335
         bra   L031D
L0335    leax  >L0142,pcr
         ldy   #$00C8
         lda   #$01
         os9   I$WritLn 
         leax  >L017B,pcr
         ldy   #$0001
         os9   I$Write  
         leax  u0005,u
         clra  
         ldy   #$0001
         os9   I$Read   
         leax  >L017C,pcr
         ldy   #$0001
         lda   #$01
         os9   I$WritLn 
         lda   u0005,u
         anda  #$DF
         cmpa  #$41
         lbeq  L063E
         cmpa  #$44
         lbeq  L0487
         cmpa  #$45
         beq   L038B
         cmpa  #$43
         beq   L0382
         cmpa  #$4C
         beq   L03F1
         bra   L0335
L0382    ldd   u000C,u
         subd  #$0001
         std   u000C,u
         bra   L031D
L038B    leax  >L016E,pcr
         ldy   #$00C8
         lda   #$01
         os9   I$WritLn 
         leax  >L017B,pcr
         ldy   #$0001
         os9   I$Write  
         clra  
         leax  >u00E5,u
         ldy   #$0003
         os9   I$ReadLn 
         lbsr  L07D2
         cmpd  u000C,u
         lbcc  L0335
         std   <u001A,u
         leax  >u00E5,u
         lbsr  L0842
         leax  >u00E5,u
         lda   #$3A
         sta   $02,x
         ldy   #$0003
         lda   #$01
         os9   I$Write  
         ldd   <u001A,u
         leax  >u018B,u
         lda   #$50
         mul   
         leax  d,x
         ldy   #$0050
         lda   #$01
         os9   I$WritLn 
         ldd   <u001A,u
         bsr   L0432
         lbra  L0335
L03F1    ldd   #$0000
         std   u000C,u
L03F6    ldd   u000C,u
         addd  #$0001
         std   u000C,u
         leax  >u00E5,u
         lbsr  L0842
         leax  >u00E5,u
         lda   #$3A
         sta   $02,x
         lda   #$01
         ldy   #$0003
         os9   I$Write  
         leax  >u018B,u
         ldd   u000C,u
         lda   #$50
         mul   
         leax  d,x
         ldy   #$0050
         lda   #$01
         os9   I$WritLn 
         cmpy  #$0001
         bhi   L03F6
         lbra  L0335
L0432    leax  >u00E5,u
         pshs  b,a
         lbsr  L0842
         leax  >u00E5,u
         lda   #$3A
         sta   $02,x
         lda   #$01
         ldy   #$0003
         os9   I$Write  
         lbcs  L063B
         leax  >u20CB,u
         ldb   u0006,u
         clra  
         tfr   d,y
         lda   #$01
         os9   I$Write  
         puls  b,a
         lda   #$50
         mul   
         leax  >u018B,u
         leax  d,x
         leay  >u20CB,u
         ldb   #$50
         lda   u0006,u
         beq   L0480
         sta   <u0016,u
L0476    lda   ,y+
         sta   ,x+
         decb  
         dec   <u0016,u
         bne   L0476
L0480    clra  
         tfr   d,y
         lbsr  L0642
         rts   
L0487    leax  <u001C,u
         ldy   #$00C8
         lda   u0002,u
         os9   I$ReadLn 
         lbcs  L063B
L0497    lda   ,x+
         cmpa  #$2C
         bne   L0497
         lbsr  L07D2
         cmpd  u000A,u
         bne   L0487
         leax  <u001C,u
         leay  >u012F,u
L04AC    lda   ,x+
         cmpa  #$2C
         beq   L04B6
         sta   ,y+
         bra   L04AC
L04B6    lda   #$0D
         sta   ,y
         ldd   >u00ED,u
         std   >u012B,u
         ldd   >u00EF,u
         std   >u012D,u
         ldd   u000A,u
         std   >u0167,u
         leax  >u012B,u
         lda   ,u
         ldy   #$0040
         os9   I$Write  
         lbcs  L063B
         leax  >L008D,pcr
         lda   #$03
         os9   I$Open   
         lbcs  L063B
         sta   u0001,u
         pshs  u
         ldx   >u00ED,u
         lda   u0001,u
         ldu   >u00EF,u
         os9   I$Seek   
         lbcs  L063B
         puls  u
         lda   #$00
         sta   <u0012,u
         ldd   #$0001
         std   <u0014,u
L0510    lda   <u0012,u
         inca  
         sta   <u0012,u
         cmpa  u000D,u
         bhi   L0541
         ldb   #$50
         mul   
         leax  >u018B,u
         leax  d,x
         ldy   #$0050
         lda   u0001,u
         os9   I$WritLn 
         lbcs  L063B
         cmpy  #$0001
         bls   L0541
         tfr   y,d
         addd  <u0014,u
         std   <u0014,u
         bra   L0510
L0541    ldd   >u00EF,u
         addd  <u0014,u
         std   >u00EF,u
         bcc   L0559
         ldd   >u00ED,u
         addd  #$0001
         std   >u00ED,u
L0559    pshs  u
         lda   ,u
         ldx   #$0000
         ldu   #$0000
         os9   I$Seek   
         lbcs  L063B
         puls  u
         leax  >u00EB,u
         ldy   #$0040
         lda   ,u
         os9   I$Write  
         lbcs  L063B
         leax  >L0181,pcr
         lda   #$03
         os9   I$Open   
         bcc   L0591
         ldb   #$1B
         os9   I$Create 
         lbcs  L063B
L0591    sta   u0007,u
L0593    leax  >u016B,u
         ldy   #$0020
         lda   u0007,u
         os9   I$Read   
         bcs   L05AD
         ldd   >u016B,u
         cmpd  u000A,u
         bne   L0593
         bra   L05B6
L05AD    cmpb  #$D3
         lbne  L063B
         lbra  L05F4
L05B6    ldd   >u0175,u
         addd  #$0001
         std   >u0175,u
         lda   u0007,u
         ldb   #$05
         pshs  u
         os9   I$GetStt 
         tfr   u,d
         subd  #$0020
         bge   L05D3
         leax  -$01,x
L05D3    ldu   ,s
         tfr   d,y
         lda   u0007,u
         tfr   y,u
         os9   I$Seek   
         lbcs  L063B
         puls  u
         leax  >u016B,u
         ldy   #$0020
         lda   u0007,u
         os9   I$Write  
         lbra  L0634
L05F4    leax  >u016B,u
         ldd   #$0001
         std   >u016D,u
         ldd   #$0000
         std   >u0175,u
         std   >u0177,u
         std   >u017B,u
         std   >u0179,u
         ldd   u000A,u
         std   >u016B,u
         leax  >u016F,u
         os9   F$Time   
         lbcs  L063B
         leax  >u016B,u
         ldy   #$0020
         lda   u0007,u
         os9   I$Write  
         lbcs  L063B
L0634    clrb  
         ldy   u000A,u
         os9   F$SUser  
L063B    os9   F$Exit   
L063E    ldb   #$01
         bra   L063B
L0642    lbsr  L079B
         ldb   u0006,u
         leay  b,y
         pshs  y
         negb  
         sex   
         leay  d,y
         clr   u0006,u
         cmpy  #$0000
         lbeq  L0711
         pshs  y,x
         lda   #$0D
L065D    sta   ,x+
         leay  -$01,y
         bne   L065D
         puls  y,x
L0665    pshs  y,x
         leax  u0005,u
         ldy   #$0001
         clra  
         os9   I$Read   
         bcs   L069E
         lda   u0005,u
         cmpa  #$01
         beq   L06A2
         cmpa  #$08
         beq   L06C4
         cmpa  #$18
         beq   L06E8
         cmpa  #$0D
         lbeq  L070F
         cmpa  #$20
         bcs   L069E
         lda   #$01
         os9   I$Write  
         puls  y,x
         lda   u0005,u
         sta   ,x+
         leay  -$01,y
         lbeq  L0738
         bra   L0665
L069E    puls  y,x
         bra   L0665
L06A2    puls  y,x
         leay  -$01,y
         beq   L06BF
         lda   ,x+
         cmpa  #$0D
         beq   L06BD
         pshs  y,x
         leax  -$01,x
         ldy   #$0001
         lda   #$01
         os9   I$Write  
         bra   L06A2
L06BD    leax  -$01,x
L06BF    leay  $01,y
         lbra  L0665
L06C4    puls  y,x
         leay  $01,y
         cmpy  ,s
         bhi   L06E3
         pshs  y,x
         leax  >L017E,pcr
         ldy   #$0003
         lda   #$01
         os9   I$Write  
         puls  y,x
         leax  -$01,x
         lbra  L0665
L06E3    leay  -$01,y
         lbra  L0665
L06E8    puls  y,x
         leay  $01,y
         cmpy  ,s
         bhi   L06E3
         pshs  y,x
         leax  >L017E,pcr
         ldy   #$0003
         lda   #$01
         os9   I$Write  
         puls  y,x
         leax  -$01,x
         cmpy  ,s
         lbhi  L0665
         pshs  y,x
         bra   L06E8
L070F    puls  y,x
L0711    lda   #$0D
         sta   ,x+
         pshs  y,x
         leax  >L017C,pcr
         ldy   #$0001
         lda   #$01
         os9   I$WritLn 
         puls  y,x
         puls  b,a
         pshs  y
         subd  ,s
         leas  $02,s
         tfr   d,y
         leay  $01,y
         lbsr  L07B5
         rts   
         puls  y,x
L0738    puls  b,a
         pshs  y
         subd  ,s
         leas  $02,s
         addd  #$0001
         tfr   d,y
         clrb  
L0746    leay  -$01,y
         beq   L0764
         lda   ,-x
         cmpa  #$20
         beq   L0775
         pshs  y,x
         leax  >L017E,pcr
         ldy   #$0003
         lda   #$01
         os9   I$Write  
         incb  
         puls  y,x
         bra   L0746
L0764    lda   #$0D
         sta   <$4F,x
         ldy   #$00C8
         lda   #$01
         os9   I$WritLn 
         puls  y
         rts   
L0775    lda   #$0D
         sta   ,x+
         pshs  y,x
         stb   u0006,u
         leay  >u20CB,u
L0781    lda   ,x+
         sta   ,y+
         decb  
         bne   L0781
         leax  >L017C,pcr
         ldy   #$0001
         lda   #$01
         os9   I$WritLn 
         puls  y,x
         lbsr  L07B5
         rts   
L079B    pshs  y,x,b,a
         leax  >u211B,u
         clra  
         ldb   #$00
         os9   I$GetStt 
         leax  <-$20,x
         clr   <$24,x
         leax  <$20,x
         os9   I$SetStt 
         puls  pc,y,x,b,a
L07B5    pshs  y,x,b,a
         leax  >u211B,u
         clra  
         ldb   #$00
         os9   I$GetStt 
         leax  <-$20,x
         lda   #$01
         sta   <$24,x
         leax  <$20,x
         clra  
         os9   I$SetStt 
         puls  pc,y,x,b,a
L07D2    pshs  y
L07D4    lda   ,x+
         cmpa  #$0D
         lbeq  L087B
         cmpa  #$30
         bcs   L07D4
         cmpa  #$39
         bhi   L07D4
         leax  -$01,x
L07E6    lda   ,x+
         cmpa  #$30
         bcs   L07F2
         cmpa  #$39
         bhi   L07F2
         bra   L07E6
L07F2    pshs  x
         leax  -$01,x
         clr   <u0016,u
         clr   <u0017,u
         ldd   #$0001
         std   <u0018,u
L0802    lda   ,-x
         cmpa  #$30
         bcs   L083B
         cmpa  #$39
         bhi   L083B
         suba  #$30
         sta   u0004,u
         ldd   #$0000
L0813    tst   u0004,u
         beq   L081E
         addd  <u0018,u
         dec   u0004,u
         bra   L0813
L081E    addd  <u0016,u
         std   <u0016,u
         lda   #$0A
         sta   u0004,u
         ldd   #$0000
L082B    tst   u0004,u
         beq   L0836
         addd  <u0018,u
         dec   u0004,u
         bra   L082B
L0836    std   <u0018,u
         bra   L0802
L083B    ldd   <u0016,u
         puls  x
         puls  pc,y
L0842    pshs  y
         std   <u0016,u
         lda   #$30
         sta   ,x
         sta   $01,x
         ldd   #$000A
         std   <u0018,u
         ldd   <u0016,u
         bsr   L0869
         ldd   #$0001
         std   <u0018,u
         ldd   <u0016,u
         bsr   L0869
         lda   #$0D
         sta   ,x
         puls  pc,y
L0869    subd  <u0018,u
         bcs   L0872
         inc   ,x
         bra   L0869
L0872    addd  <u0018,u
         std   <u0016,u
         leax  $01,x
         rts   
L087B    ldd   #$FFFF
         puls  pc,y
         emod
eom      equ   *
         end