2 ; Oliver Schmidt, 12.01.2005
4 ; int __fastcall__ read (int fd, void* buf, unsigned count);
7 .constructor initprompt
9 .import rwprolog, rwcommon
13 .include "zeropage.inc"
17 .include "filedes.inc"
23 ; Set prompt <> ']' to let DOS 3.3 know that we're
24 ; not in Applesoft immediate mode and thus keep it
25 ; from scanning our device I/O for DOS commands.
26 lda #$80 ; Same value used at $D52C
38 ; Check for read access
39 lda fdtab + FD::FLAGS,y
56 ; Check for zero count
61 ; Read from device and echo to device
65 ; Clear hi bit and check for '\r'
70 ; Replace with '\n' and set count to zero
90 ; Check for counter less than count
98 ; Return success, AX already set