P [0+8+FQ(+4)[1 0FO10F"G+Q1' +FQ()+4U1 FQ1"L0' ,Q1:M(Q1+4(]1]0))  ^1 v  +EXYwi Gy88S`){G  ?* mK~!7oM9i5CSt +H$C+& Maze Draw& Replace MacroMaze Run^R Maze Add Teleport^R Maze Autoargument^R Maze Down^R Maze Exit^R Maze Goto Beginning^R Maze Goto End^R Maze Info^R Maze Left^R Maze New Window^R Maze Next Screen^R Maze Prefix Control^R Maze Prefix Control-Meta^R Maze Prefix Meta^R Maze Previous Screen^R Maze Right^R Maze Up~DIRECTORY~~DOC~ & Maze Draw~DOC~ & Replace Macro~DOC~ Maze Run~DOC~ ^R Maze Add Teleport~DOC~ ^R Maze Autoargument~DOC~ ^R Maze Down~DOC~ ^R Maze Exit~DOC~ ^R Maze Goto Beginning~DOC~ ^R Maze Goto End~DOC~ ^R Maze Info~DOC~ ^R Maze Left~DOC~ ^R Maze New Window~DOC~ ^R Maze Next Screen~DOC~ ^R Maze Prefix Control~DOC~ ^R Maze Prefix Control-Meta~DOC~ ^R Maze Prefix Meta~DOC~ ^R Maze Previous Screen~DOC~ ^R Maze Right~DOC~ ^R Maze Up~DOC~ ~Filename~~Filename~~INVERT~ :I*EMACS;MAZE MAZEf[DFILE 0FSDVERS 5,F Run maze fileFSDFILE 5f[%TOP 5f[%BOTTOM 50f[%CENTER :I*TCfsECHODISPLAY [0[1[2[3[4[5[6[7[8[9[Z [U[D[I-1[M[G0[S:I*|-[[== ff"E fsz"n@FTClobber buffer with maze map 1m(m.m& Yes or No)"e0'' hk' "#bjS.-1(\uMc\uS),zK' Q..O[B fsBCREATE Q..O[A :I*0[ m.m^R Maze Info[? m.m^R Maze Exit[...Z m.m& Replace Macrou9 m.m^R Autoargument,(m.m^R Maze Autoargument)m9 m.m^R Next Screen,(m.m^R Maze Next Screen)m9 m.m^R Previous Screen,(m.m^R Maze Previous Screen)m9 m.m^R Goto End,(m.m^R Maze Goto End)m9 m.m^R Goto Beginning,(m.m^R Maze Goto Beginning)m9 m.m^R Prefix Meta,(m.m^R Maze Prefix Meta)m9 m.m^R Prefix Control,(m.m^R Maze Prefix Control)m9 m.m^R Prefix Control-Meta,(m.m^R Maze Prefix Control-Meta)m9 2fs^RINIT,(m.m^R Maze Left)m9 6fs^RINIT,(m.m^R Maze Right)m9 m.m^R Up Real Line,(m.m^R Maze Up)m9 m.m^R Down Real Line,(m.m^R Maze Down)m9 m.m^R New Window,(m.m^R Maze New Window)m9 1,m.m& Setup CAPL Library"N @:I*`W`[' -1f[^RREPLACE er@Ybj\f"E1'uGc\[N :S"L.,zFXZ'"#:I*W0uZ'bj @:II\[0q0f:.<>^v:f"L:GCu0' 1A-q0"N0@Vm0'"#c']0\ @:IU\wfsSHPOS -1l1:<0,QT:FM>\ @:ID\wfsSHPOS 1l1:<0,QT:FM>\ ff"NQBu..O' js*r.u0 ff"E QBu..O er@Y :S"L.,zK' j<@f j .-z;d32I>' 1f[READONLY :I*0f[^RNORMAL 1f[^RSUPPRESS QAu..O Q0u1Q0jm(m.m& Maze Draw)  QBU..O QAfsBKILLW QAu..OQ0j 2Af :>["LFGQBu..O0' .u12C:m(m.m& Maze Draw)W QAu..OQ0j 0Af :<["LFGQBu..O0' .U12R:m(m.m& Maze Draw)W QAu..OQ0jmU 1Af .^="LFGQBu..OQ0j0' mUQ0u1:m(m.m& Maze Draw)W QAu..OQ0jmD 1Af .v="LFGQBu..OQ0j0' mDQ0u1:m(m.m& Maze Draw)!Start!.u0mU0Au21Au32Au4 Q0j0Au52Au6mD0Au7 1Au82Au9Q0j1A[T Q1j1A-64[X0fs^RNORMAL QBu..O0fsREADONLY Q1jQX"N32mI'"#64mI' Q0j1A-64"E1uT'42mImUw2R Q2mIwQ3mIwQ4mIQ0jRwQ5mIwCwQ6mI mDw3RwQ7mIwQ8mIwQ9mIQ0j QT-64"GQAu..O<:s;:sT; 1A-42"N0;' cq0u1w\u0q0jOstart> QBu..O' QM+1uM QT-64"E QS+1uSQG-QS:"G -1m(m.m^R Maze Info) 0fsECHOACTIVE fs^REXIT' m(m.m^R Maze Info)' QT-64f"L+16:f"L,Q0mZ"NOstart''' 1fsREADONLY:I*0fs^RNORMAL 0W 0fsREADONLY .(zj1IQM-1\1IQS\)J fs^REXITW :m(m.m^R Prefix Meta)W :m(m.m^R Prefix Control)W :m(m.m^R Prefix Control-Meta)yW "L:I*CTDfsECHODISPLAY' QM:\u7QS:\u8QG:\u9 QG-QS"G@FTYou Have a Score of 8/9' "#@FTYou Win' @FT in 7 Moves QN"NQM"N QN*QS/QGu7 QM-Q7"G 2*QM-Q7*Q7*100/QM/QM:\u8' "#:I8100' @FT, for a 8% Rating'' @FT.  0fsECHOACTIVEWf:@m(m.m^R Next Screen)Wf:@m(m.m^R Previous Screen)Wf:@m(m.m^R Goto End)Wf:@m(m.m^R Goto Beginning)Wf:@m(m.m^R Autoargument)1,0f Char: [0.[1q1:\[2 j:S"LrWb,.fsBOUNDA' j:S(zj)"E1I' I0*2 0,fsZfsBOUNDAWq1jWf:@m(m.m^R New Window)y-1u..9 <%..9,:FU..9Q..9:; [..9> q..ou..5 fsbcreategPrefix Char Listj <.-z;s c:x..6l :I..7..6(Q..9) -1u..9 <%..9,F..6U..9 Q..9:; Q:..7[..8 Q..9:\U..3 [..N:I..NQ..8U:..6(..3) U:..7> > q..o(q..5u..o)fsbkill 0 MAZLIBMaze-exploration gameC Explore a maze looking for treasure. String arg is name of maze definition file. Special symbols used: "*" - your current location. "@" - location of previously found treasure. "=" - horizontal door. "[" - vertical door. Some doors are one-way, and some are invisible. The commands ^R Up real Line, ^R Down Real Line, ^R Forward Character and ^R Backward Character will move you Up, Down, Right, Left in the maze. ^R Goto Beginning, ^R Goto End, ^R Next Screen, ^R Previous Screen and ^R New Window are available for moving arround in the map. "?" tells you how you are doing in the form: "You Have a Score of / in Moves, for a xx% rating." ^R Exit will exit with your map in the buffer in a form which can be saved for continuing (which is done by loading the map and giving Maze Run a numeric argument.^R Move to the right ^R Move to the left ^R Move Up ^R Move Down S Draw the part of the maze that is now visible ^R Exit the Maze ^R level ^R ^R ^R ^R Says how your doing in the maze.^R Move down to display next screenful of text. With argument, moves window down lines.^R Move up to display previous screenful of text. With arg, move window back lines.^R ^R ^R ^R Add a new teleport destination to table.^R S Replaces macro definitions on ^R characters. Takes two arguments. The first is the macro to be replaced and the second is the replacement. It pushes the old definitions so that they are restored when the caller returns.Maze Run ^R Maze Right ^R Maze Left ^R Maze Up ^R Maze Down & Maze Draw ^R Maze Exit ^R Maze Prefix Meta ^R Maze Prefix Control ^R Maze Prefix Control-Meta ^R Maze Info ^R Maze Next Screen ^R Maze Previous Screen ^R Maze Goto End ^R Maze Goto Beginning ^R Maze Autoargument ^R Maze Add Teleport ^R Maze New Window & Replace Macro +8+fq(+4)[20[3 <%3,-q2f2u3q3&1@;q3"l0'> f[BBindq3-1*5,q3*5g2q:..o(0)+q2