; test buffers module. Copy file to console ; ; SEE BUFFERS.DOC for linking instructions ; boot equ 0 tfcb equ boot+05ch ; @cout equ 2 ; extrn .dos, .bfgetc, .bfropen ; begin: lhld 6 mvi l,0 sphl lxi d,-buffer-128; allow 128 bytes stack & overhead dad d; form buffer size available mov b,h ! mov c,l lxi d,tfcb lxi h,buffer xra a; default user call .bfropen; open for read jc nofile ; " " loop: call .bfgetc jc done cpi 01ah; for text files, omit jz done; for binary files call couta; Can use .bfputc here jmp loop ; nofile: mvi a,9 lxi d,nofmsg call .dos ; " " done: jmp boot ; nofmsg: db 'No file$' ; couta: push d mov e,a mvi a,@cout call .dos pop d ret ; dseg buffer: ds 0; actually rest of memory ; end