// ISF.D -- definitions for ISF and ISFINIT
// last modified November 12, 1976 12:38 PM

get "altofilesys.d"
get "disks.d"

structure FM0:
// filemap structure prefix
[
fp @FP// fp for file
DAs word 3 =// first 3 page DAs
[ DA0 word
DA1 word
DA2 word
]
seal word// for checking map
disk word// points to DSK structure for file
zone word// allocation zone for temporary page buffers
last word// index of last word (a da)
end word// index of end of available space
onern word// last rn added
oneda word// corresponding da
rewrite word// if true, rewrite index
extend word// extend file in chunks of this many pages
]
structure FM:
// full filemap structure
[
@FM0
blank word (size FM0/16)&1// padding to ensure map is even
map word 0// beginning of map
]
manifest mapoffset = (offset FM.map)/16
manifest checksize = (offset FM.seal)/16+1
// number of leading words to check

manifest
[
ppc = 50// max pages per BFS call
version = 11 lshift 12 + 12 lshift 7 + 76// month, day, year
]