_fptell: 
        MOV.L       R2,R5           ; Set the value of R2 (offset) in R5. 
        MOV.L       #PARM,R2        ; Set the address of the parameter block in R2. 
        MOV.B       R1,1h:5[R2]   ; Set the value of R1 (file number) in R2 + 1 bytes  
                                    ; (direction). 
        MOV.L       #010D0000h,R1   ; Set the function code of FTELL in R1. 
        MOV.L       #SIM_IO,R3      ; Set the address of the system call in R3. 
        JSR         R3              ; System call 
        NOP 
        MOV.L       #PARM,R2        ; Set the address of the parameter block in R2. 
        MOV.L       4h:5[R2],R1   ; Set the value of R2 + 4 bytes (new offset) in R1. 
        MOV.L       R1,[R5]   ; Set the value of R1 in the location pointed to by R5  
                              ; (offset pointer). 
        MOV.B       [R2],R1   ; Set the first byte of R2 (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 
 |