( [0+8+FQ(+4)[1 0FO10F"G+Q1' +FQ()+4U1 FQ1"L0' ,Q1:M(Q1+4(]1]0)) yc.Qe NXKv)C.9;oLcx[s& Journal Describe Buffers& Journal Macro& Journal Number& Journal Point& Journal String& Journal Verify Buffers& Setup Journal LibraryEnd Journal FileReplay Journal FileStart Journal File~DIRECTORY~~DOC~ & Journal Describe Buffers~DOC~ & Journal Macro~DOC~ & Journal Number~DOC~ & Journal Point~DOC~ & Journal String~DOC~ & Journal Verify Buffers~DOC~ & Setup Journal Library~DOC~ End Journal File~DOC~ Replay Journal File~DOC~ Start Journal File~DOC~ ~Filename~~Filename~~INVERT~f[dfile fshsnamefsdsname fsosteco"e fsxunamefsdfn1 etdsk: JRNL' "#etdsk:emacs.journal' 0fo..qJournal Filenamef"nfsdfile' fsdfilem.vJournal Filename m.m& Journal MacroFSJRNMAC m(m.mSave All Files) f[dfile fshsnamefsdsname fsosteco"eetdsk:ts esave' "#etesave.exe' 1:<@ed> ff&1"n qEditor Name[1 q..lm.VMM & Startup 1]1 q..l(q..p( fs:ejpage( f[dfile :ejemacs;purify :ej f]dfile m(m.mDump Environment) )fs:ejpage )u..p)u..l' f]dfile qJournal Filenamef[dfile :fsjrnopen 1: 5,f Journal Filenameu1 et1 fsdfileuJournal Filename fsjrnopen 1fsmodechange 500f[jrninterval ff&1m(m.m& Journal Describe Buffers) f]jrninterval 1: fsjrnin"n' :fsjrnopen 1fsmodechange QJournal Filenamef[dfile 5,f Journal Filename[1 m(m.mSave All Files) et1fsjrnexec -"E [..J:I..JClean up after asynchronous quit 1f[jrninhibit 0' -:"N@feUJCfserr' [1 m.m& Journal Number[2 ' q1-W"e m2fswindow0;' q1-B"e:m(m.m& Journal Verify Buffers)' q1-32"e0;' @feUJCfserr > 0[1[2 q2-"nq2-32"n@feUJCfserr'' q1f[bbind[1 hx*:I*FSJRNWR :MA .MA .:\MA  MA WMA FSWINDOW:\MA  MA n:I*FSJRNWR :I*MAMA :MA :I*BuffersMB 0[0[2 FQ.B/5[1 <15.MA12.MA Q0-Q1; :@; 32MA Q:.B(Q0+1)MB Q:.B(Q0+2)F"NMA'MA 0MA Q:.B(Q0+2)U2 FQ2"G 1:' MA Q:.B(Q0+3)MB Q:.B(Q0+4)[..O .:\MB B:\MB Z:\MB FSMODIF"NMMB'"# MB' FSXMODIF"NXMB'"# MB' ]..O Q:.B(Q0+5)MB Q:.B(Q0+7):\MB Q:.B(Q0)+Q0U0> F[BBIND :I*LibrariesMB [8[9 fs:ejpage*5120+400000000000.u8 <-fq8; 1,q8m.m~filename~u9 jg9i q8+fq8+4u8> ZJI  Q..OMA :I*VariablesMB QBuffer NameMB QPrevious BufferMB QNext Bfr Number:\MB :I* Commands start on next line MA :I*FSJRNREAD M.M& Journal Number M.M& Journal String 0M.VJournal Visit Version [Journal Visit Version [1[2[3[4 MS "EFSIFVERSF"L*0'-Q2U3' "#0U3' 0FSModified M(M.MVisit File) Q3"N@FTFile 1 remembered version not latest version. FG <@FT Proceed anyway? 1f[jrninhibit 1,1M(M.M& Yes or No)U4 f]jrninhibit -Q4;> Q4"E:fsjrnexec0''' "#0uBuffer Filenames' MSU1 FQ1"GF~Mode1"N M(M.M1 Mode)'' MN:J 1: 1: MAU1MAWQ1- FSMODIF MAU1MAWQ1- FSXMODIF QBuffer IndexU1 MSU:.B(Q1+5) MNU:.B(Q1+7) > MSU1 F~1ibraries"N@FEUJCFSERR' MSU1 F~1 Variables"N@FEUJCFSERR' MSM(M.MSelect Buffer) MSUPrevious Buffer MNUNext Bfr Number MS MAWMA JOURNALWrite and replay journal filesS Initialize variables and flags.C Start writing a journal file. With argument, writes a checkpoint (ESAVE) file first.C Stop writing a journal file.C Replay a journal file. Takes filename as string argument; default is the name we would write.S FS JRN MAC.wS Read decimal number from journal file. The terminating character should be a space or Altmode. It is discarded.S Read string from journal file, terminated by Altmode.S Record current point and FS WINDOW in journal file. Format is ":.digits Wdigits ".S Record current status of buffers, files, etc. Nonzero argument means describe only the libraries.S Set up buffers for replaying journal file.& Setup Journal Library Start Journal File End Journal File Replay Journal File & Journal Macro & Journal Number & Journal String & Journal Point & Journal Describe Buffers & Journal Verify Buffers +8+fq(+4)[20[3 <%3,-q2f2u3q3&1@;q3"l0'> f[BBindq3-1*5,q3*5g2q:..o(0)+q2