_fcharget: 
        MOV.L       R2,R5           ; Set the value of R2 (file number) in R5. 
        MOV.L       #PARM,R2        ; Set the address of the parameter block in R2. 
        MOV.L       R1,4h:5[R2] ; Set the value of R1 (input buffer) in R2 + 4 bytes. 
        MOV.B       R5,1h:5[R2] ; Set the value of R5 in R2 + 1 bytes (file number). 
        MOV.L       #01270000h,R1   ; Set the function code of FGETC in R1. 
        MOV.L       #SIM_IO,R3      ; Set the address of the system call in R3. 
        JSR         R3              ; System call 
        NOP 
        MOV.L       #PARM,R1  ; Set the address of the parameter block in R1. 
        MOV.B       [R1],R1   ; Set the first byte of R1 (result of execution) in R1. 
        RTS                   ; Return to the address where the function was called. 
  
         .SECTION  B,DATA,ALIGN=4 
PARM:       .BLKL   2               ; Parameter block area 
 |