System information
 0016 = makef  equ 22; make file func#
 ;
 0100  org tpa ; beginning of tpa
 0100 311902   lxi sp,stack  ; set local stack
 0103 0E10  mvi c,16   ; half an fcb
 0105 116C00  lxi d,fcb2  ; source of move
 0108 21D901  lxi h,dfcb  ; destination fcb
 010B 1A mfcb:  ldax d  ; source fcb
 010C 13   inx d  ; ready next
 010D 77  mov  m,a   ; dest fcb
 010E 23   inx h   ; ready next
 010F 0D  dcr c  ; count 16...0
 0110 C20B01   jnz  mfcb   ; loop 16 times
 ;
 ; name has been removed, zero cr
 0113 AF  xra a  ; a = 00h
 0114 32F901  sta dfcbcr  ; current rec = 0
 ;
 ; source and destination fcb's ready
 0117 115C00     lxi d,sfcb ; source file
 011A CD6901  call open  ; error if 255
 011D 118701  lxi d,nofile ; ready message
 0120 3C  inr a  ; 255 becomes 0
 0121 CC6101     cz finis ; done if no file
 ;
 ; source file open, prep destination
 0124 11D901    lxi d,dfcb ; destination
 0127 CD7301    call delete ; remove if present
 ;
 012A 11D901    lxi d,dfcb ; destination
 012D CD8201  call make   ; create the file
 0130 119601     lxi d,nodir ; ready message
 0133 3C  inr a  ; 255 becomes 0
 0134 CC6101    cz finis ; done if no dir space
 ;
 ; source file open, dest file open
 ; copy until end of file on source
 ;
5.3 A Sample Copy Program CP/M Operating System Manual
5-37










