// initcache.sr get "BRAVO1.DF" get "CACHE.DF" // Outgoing Procedures external [ CacheInit ] // Outgoing Statics // external // Incoming Procedures external [ mult ] // Incoming Statics // external // Local Statics // static // Local Structures // structure // Local Manifests // manifest // C A C H E I N I T let CacheInit(cci, lnci, Alloc) = valof [ let cache = Alloc(mult(cci, lnci) + offaciCache) cache>>CACHE.cci = cci cache>>CACHE.lnci = lnci cache>>CACHE.tlru = 0 let ci = lv cache>>CACHE.aci let lnpl = lnci - offaplCi for i = 0 to cci-1 do [ ci>>CI.cii = siNil ci>>CI.tlru = 0 let pl = lv ci>>CI.apl for iw = 0 to lnpl-1 do pl ! iw = 0 ci = ci + lnci ] resultis cache ] // end CacheInit