$MACRO FDB lun,B/R,[block] .mcall fdop$a,fdat$a,fdbdf$,fdrc$a fdbdf$ fdop$a #@1 fdat$a r.fix,,512. fdrc$a fd.rwm $ENDM / program lun3 .word 0 ;b.lh listhead pointer .word -1,-1 ;b.lhl listhead links for LRU blocks ;b.peek or peek char if rsx i/o .byte 4. ;b.max maximum blocks (default = 4) .byte -1 ;b.cur current in list .word -1 ;b.type type of i/o 0=buffered record, 1=unix .word -1 ;b.dirty 0=dirty, 1=not written into yet .word 1 ;b.stat 1=ok <0=eof/err on last seek .word -1,-1 ;b.seek seek address double word .word -1 ;b.stype saved attributes (f.rtyp & f.ratt) .word -1 ;b.ssize saved record size .word -1 ;b.sracc saved record access .word -1 ;b.io direction of i/o -1=r,0=rw,1=w .word 0 ;b.prec pointer to record buffer if record i/o .word -1 ;b.pos position in record buffer if record i/o .word 12345. ;b.check check word (see if a valid fdb) lun3:: FDB 3 .end