view 3rdparty/packages/os9l2bbs/cmds/BBS.mail.delete.asm @ 2400:75ba2a80a4e3

OS-9 L2 BBS Commands disassembled
author boisy
date Sun, 24 Jan 2010 17:20:05 +0000
parents
children 04755ee002ba
line wrap: on
line source

         nam   BBS.mail.delete
         ttl   program module       

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

         ifp1
         use   /dd/defs/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   3
u0006    rmb   1
u0007    rmb   2
u0009    rmb   2
u000B    rmb   1
u000C    rmb   1
u000D    rmb   1
u000E    rmb   1
u000F    rmb   232
u00F7    rmb   2
u00F9    rmb   2
u00FB    rmb   60
u0137    rmb   80
u0187    rmb   2
u0189    rmb   60
u01C5    rmb   202
size     equ   .
name     equ   *
         fcs   /BBS.mail.delete/
L001C    fcb   $42 B
         fcb   $42 B
         fcb   $53 S
         fcb   $2E .
         fcb   $6D m
         fcb   $61 a
         fcb   $69 i
         fcb   $6C l
         fcb   $2E .
         fcb   $69 i
         fcb   $6E n
         fcb   $78 x
         fcb   $0D 
L0029    fcb   $42 B
         fcb   $42 B
         fcb   $53 S
         fcb   $2E .
         fcb   $6D m
         fcb   $61 a
         fcb   $69 i
         fcb   $6C l
         fcb   $0D 
         fcb   $0A 
         fcb   $0A 
         fcb   $46 F
         fcb   $72 r
         fcb   $6F o
         fcb   $6D m
         fcb   $20 
         fcb   $20 
         fcb   $20 
         fcb   $20 
         fcb   $3A :
         fcb   $4C L
         fcb   $65 e
         fcb   $66 f
         fcb   $74 t
         fcb   $20 
         fcb   $6F o
         fcb   $6E n
         fcb   $20 
         fcb   $3A :
         fcb   $41 A
         fcb   $62 b
         fcb   $6F o
         fcb   $75 u
         fcb   $74 t
         fcb   $20 
         fcb   $20 
         fcb   $20 
         fcb   $3A :
         fcb   $00 
         fcb   $09 
         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   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $2D -
         fcb   $0D 
L0098    fcb   $44 D
         fcb   $65 e
         fcb   $6C l
         fcb   $65 e
         fcb   $74 t
         fcb   $69 i
         fcb   $6E n
         fcb   $67 g
         fcb   $20 
         fcb   $6D m
         fcb   $61 a
         fcb   $69 i
         fcb   $6C l
         fcb   $2E .
         fcb   $2E .
         fcb   $2E .
         fcb   $0D 
L00A9    fcb   $0A 
         fcb   $4F O
         fcb   $6E n
         fcb   $65 e
         fcb   $20 
         fcb   $6D m
         fcb   $6F o
         fcb   $6D m
         fcb   $65 e
         fcb   $6E n
         fcb   $74 t
         fcb   $20 
         fcb   $70 p
         fcb   $6C l
         fcb   $65 e
         fcb   $61 a
         fcb   $73 s
         fcb   $65 e
         fcb   $2E .
         fcb   $2E .
         fcb   $2E .
         fcb   $0A 
         fcb   $0D 
L00C0    fcb   $6D m
         fcb   $61 a
         fcb   $69 i
         fcb   $6C l
         fcb   $2E .
         fcb   $73 s
         fcb   $63 c
         fcb   $72 r
         fcb   $61 a
         fcb   $74 t
         fcb   $63 c
         fcb   $68 h
         fcb   $2E .
         fcb   $69 i
         fcb   $6E n
         fcb   $78 x
         fcb   $0D 
L00D1    fcb   $6D m
         fcb   $61 a
         fcb   $69 i
         fcb   $6C l
         fcb   $2E .
         fcb   $73 s
         fcb   $63 c
         fcb   $72 r
         fcb   $61 a
         fcb   $74 t
         fcb   $63 c
         fcb   $68 h
         fcb   $0D 
L00DE    fcb   $2E .
         fcb   $0D 
         fcb   $52 R
         fcb   $65 e
         fcb   $6E n
         fcb   $61 a
         fcb   $6D m
         fcb   $65 e
         fcb   $0D 
start    equ   *
         os9   F$ID     
         sty   u0009,u
         ldy   #$0000
         os9   F$SUser  
         leax  >L00A9,pcr
         ldy   #$00C8
         lda   #$01
         os9   I$WritLn 
         leax  >L001C,pcr
         lda   #$01
         os9   I$Open   
         lbcs  L024F
         sta   ,u
         leax  >L0029,pcr
         lda   #$01
         os9   I$Open   
         lbcs  L024F
         sta   u0001,u
         leax  >L00C0,pcr
         lda   #$02
         ldb   #$0B
         os9   I$Create 
         lbcs  L024F
         sta   u0002,u
         leax  >L00D1,pcr
         lda   #$02
         ldb   #$0B
         os9   I$Create 
         sta   u0003,u
         clr   u000B,u
         clr   u000C,u
         clr   u000D,u
         clr   u000E,u
         leax  >u00F7,u
         ldy   #$0040
         lda   ,u
         os9   I$Read   
         lbcs  L024F
         lda   u0002,u
         os9   I$Write  
L015B    leax  >u0187,u
         ldy   #$0040
         lda   ,u
         os9   I$Read   
         bcs   L01E5
         cmpy  #$0040
         bne   L01E5
         ldd   >u01C5,u
         cmpd  u0009,u
         beq   L01B5
         ldd   u000B,u
         std   >u0187,u
         ldd   u000D,u
         std   >u0189,u
         lda   u0002,u
         os9   I$Write  
L018A    lda   u0001,u
         leax  >u0137,u
         ldy   #$0050
         os9   I$ReadLn 
         bcs   L01E5
         lda   u0003,u
         os9   I$WritLn 
         tfr   y,d
         addd  u000D,u
         std   u000D,u
         bcc   L01AD
         ldd   u000B,u
         addd  #$0001
         std   u000B,u
L01AD    cmpy  #$0001
         bhi   L018A
         bra   L015B
L01B5    leax  >L0098,pcr
         ldy   #$00C8
         lda   #$01
         os9   I$WritLn 
         ldd   >u00F7,u
         subd  #$0001
         std   >u00F7,u
L01CD    lda   u0001,u
         leax  >u0137,u
         ldy   #$0050
         os9   I$ReadLn 
         bcs   L01E5
         cmpy  #$0001
         bhi   L01CD
         lbra  L015B
L01E5    ldd   u000B,u
         std   >u00F9,u
         ldd   u000D,u
         std   >u00FB,u
         pshs  u
         lda   u0002,u
         ldx   #$0000
         ldu   #$0000
         os9   I$Seek   
         puls  u
         lbcs  L024F
         leax  >u00F7,u
         ldy   #$0040
         lda   u0002,u
         os9   I$Write  
         lda   ,u
         os9   I$Close  
         lbcs  L024F
         lda   u0001,u
         os9   I$Close  
         lbcs  L024F
         lda   u0002,u
         os9   I$Close  
         lbcs  L024F
         lda   u0003,u
         os9   I$Close  
         lbcs  L024F
         leax  >L001C,pcr
         os9   I$Delete 
         lbcs  L024F
         leax  >L0029,pcr
         os9   I$Delete 
         lbcs  L024F
         lbsr  L025C
         clrb  
L024F    pshs  b
         ldy   u0009,u
         os9   F$SUser  
         puls  b
         os9   F$Exit   
L025C    leax  >L00DE,pcr
         lda   #$83
         os9   I$Open   
         lbcs  L024F
         sta   u0007,u
         clr   u0006,u
L026D    pshs  u
         lda   u0006,u
         inca  
         sta   u0006,u
         ldb   #$20
         mul   
         tfr   d,x
         lda   u0007,u
         ldu   #$0000
         exg   x,u
         os9   I$Seek   
         puls  u
         leax  u000F,u
         ldy   #$0020
         lda   u0007,u
         os9   I$Read   
         bcs   L02B4
         leay  >L00C0,pcr
         leax  u000F,u
L0298    lda   ,x+
         bmi   L02C0
         cmpa  ,y+
         bne   L02A2
         bra   L0298
L02A2    leax  u000F,u
         leay  >L00D1,pcr
L02A8    lda   ,x+
         bmi   L02D4
         cmpa  ,y+
         bne   L02B2
         bra   L02A8
L02B2    bra   L026D
L02B4    cmpb  #$D3
         lbne  L024F
         lda   u0007,u
         os9   I$Close  
         rts   
L02C0    anda  #$7F
         cmpa  ,y+
         bne   L02A2
         lda   ,y+
         cmpa  #$0D
         bne   L02A2
         leax  u000F,u
         leay  >L001C,pcr
         bra   L02E6
L02D4    anda  #$7F
         cmpa  ,y+
         bne   L02B2
         lda   #$0D
         cmpa  ,y+
         bne   L02B2
         leax  u000F,u
         leay  >L0029,pcr
L02E6    lda   ,y+
         cmpa  #$0D
         beq   L02F0
         sta   ,x+
         bra   L02E6
L02F0    lda   ,-x
         ora   #$80
         sta   ,x
         lda   u0006,u
         ldb   #$20
         mul   
         tfr   d,x
         lda   u0007,u
         ldb   #$05
         pshs  u
         ldu   #$0000
         exg   x,u
         os9   I$Seek   
         lbcs  L024F
         puls  u
         leax  u000F,u
         ldy   #$0020
         lda   u0007,u
         os9   I$Write  
         lbra  L026D
         emod
eom      equ   *
         end