DIRECTORY FS, IO, Rope, OracleGen; Gen2Impl: CEDAR PROGRAM IMPORTS FS, IO, OracleGen, Rope ~ BEGIN OPEN OracleGen; outf: IO.STREAM; k : INT; c : LONG CARDINAL; s,s0,s1,s2,s3,r,t: Rope.ROPE; r _ "Gen.oracle"; outf _ FS.StreamOpen[r, $create]; outf.PutF["-- Begining of the text : \n"]; s _ "00000000 00000000"; t _ "XXXXXXXX XXXXXXXX"; outf.PutF["%g | %g \n",IO.rope[s],IO.rope[t]]; c _ 0; s1 _ "XXXXXXXX"; s2 _ "XXXXXXXX"; s3 _ ""; FOR k IN [0..3) DO s _ Hex[c]; s _ LExtend[s,8]; s0 _ s; s _ Rope.Concat["00000000 ",s]; t _ "XXXXXXXX XXXXXXXX"; s3 _ s2; s2 _ s1; s1 _ s0; IF c=0 THEN c _1 ELSE c _ 2*c; outf.PutF["%g | %g \n",IO.rope[s],IO.rope[t]]; ENDLOOP; FOR k IN [3..32) DO s _ Hex[c]; s _ LExtend[s,8]; s0 _ s; s _ Rope.Concat["00000000 ",s]; t _ Rope.Concat["00000000 ",s3]; s3 _ s2; s2 _ s1; s1 _ s0; c _ 2*c; outf.PutF["%g | %g \n",IO.rope[s],IO.rope[t]]; ENDLOOP; c _ 0; FOR k IN [32..36) DO s _ Hex[c]; s _ LExtend[s,8]; s0 _ s; s _ Rope.Concat[s," 00000000"]; t _ Rope.Concat["00000000 ",s3]; s3 _ s2; s2 _ s1; s1 _ s0; IF c=0 THEN c _1 ELSE c _ 2*c; outf.PutF["%g | %g \n",IO.rope[s],IO.rope[t]]; ENDLOOP; FOR k IN [36..64) DO s _ Hex[c]; s _ LExtend[s,8]; s0 _ s; s _ Rope.Concat[s," 00000000"]; t _ Rope.Concat[s3," 00000000"]; s3 _ s2; s2 _ s1; s1 _ s0; IF c=0 THEN c _1 ELSE c _ 2*c; outf.PutF["%g | %g \n",IO.rope[s],IO.rope[t]]; ENDLOOP; outf.Close[]; END. ΆGen2Impl.mesa Copyright Σ 1987 by Xerox Corporation. All rights reserved. Jean Gastinel August 10, 1987 6:44:50 pm PDT Oracle Generation number 2 Create or Append the file Κf˜codešœ ™ Kšœ<™