Google
 

Trailing-Edge - PDP-10 Archives - decuslib20-02 - decus/20-0074/gnosis.exe
There is 1 other file named gnosis.exe in the archive. Click here to see a list.
?p0?hX6'?x " 
 
<++92	`t08pP6'9M6'2H-=<@-=,>,> "p@ $6"&"(-=,>,> "F@ $6#"&"(-=,>,> "F@ $6$"&"(-=,>,> "F@ $6%"&"(-=+TId]-=A<@,6w1l1`+I,7<L+hKKY9f-=I<@v,8<L` 5~0V+m7@6#+Z,6J>
6,>,>,>6,>6-=6,7$<L6,B<@6+b,7$<L5n+^ 5/6 ,~,7R<LQ`\`,7$<L5l,6J>
6`h5v,>,>,>6,>6-=6,7$<L6,7<L 5v1v+m,B<@6 6 V5~+@h4@q,7$<L5i+r,7$<L5e,7$<L,7<L,8<L`+hO%J7J-=w<@-=+O%i<i2Mi--=h-=| 5.6 V5@vh7@6#+ 6 Vh+:h0v+,7<L` h $6 h-=v+,7<L` h1vgO Vh@v6 6 Vh+:h0vB+'+Y>~@-=h-=,7<L` h $6 h-=v h2V5r+ h1V+Ov6 h2V5t+ +, h2V5z+',7<L` h0V+%+ h.6 Vh+,+,K<@`5^+,_W# -=h-=* h/6 V5v $6 "-=$2D5u+2+7@h+6,K<@`5X+97@6+9,K<@`5S 5~1v+] 5~/6 V5~,8<L`7@6#+F,6J>
6,>,>,>6,>6-=6,7$<L6,B<@6+N,7$<L5n+J 5/6 ,~,7R<LQ`H`,7$<L5l,6J>
6`h5v,>,>,>6,>6-=6,7$<L6,7<L5v1v+Y,B<@65~0V+\,7$<L5J,8<L`6$66"-=$3D5r+a+",^<P`65I-=0@+,<P,o>,>,>,>6,>6-=6,*<P6,6w1l60`+p,K<@d5@6V6+r:62v6+x6..6X6-=0@+w+~+q,K<@d57++~M?-i0d=gO,>+@h h-=$1$0gOAx/4DC+@h h-=$/$,>+@h h-= xt/+Y 5s0V+Y+@h h-=$2D6+K,>6+@h h-= xr/+Y+@h h-=$2D6+R,>6+@h h-= xr/+Y+@h h-=$2D6+Y,>6+@h h-= xr/+.>o,^o>`K+hO$;wiJ}LzCK -=[<@z+deX:4-=h-=a,B<@6,6J>
6`x,>,>,>6,>6-=6,*<@6 h0V+m65/-=0@+r+m65--=0@+u+m65,-=0@+x+m65*-=0@+{+m65)-=0@+~+m65'-=0@++m65&-=0@++m65$-=0@++m65#-=0@+
+m65!-=0@++m65-=0@++m65-=0@++m65-=0@++m65-=0@++m65-=0@++m65-=0@+"+m65-=0@+%+m65-=0@+(+m65-=0@+++m65-=0@+.+m65-=0@+1+m65-=0@+4+m65
-=0@+7+m65-=0@+:+m65	-=0@+=+m65-=0@+@+m65-=0@+C+m65-=0@+F+m65-=0@+I+m65-=0@+L+m65-=0@+O+m64-=0@+R+m64}-=0@+U+m64|-=0@+X+m64z-=0@+[+m64y-=0@+^+m64w-=0@+a+m64v-=0@+d+m,K<@d4i,y<@ $6 "-=$3D5r+k,y<@+g 6 Vh+d+hO&{yH-=m>-= 5w Vh h1V+u++xiFKAP-=h-=u $6 h-=$ Dh h2V5s+~+, h3V5u+ h.6 Vh+x+E2
+, h2V5u+ h.6 Vh+ $6 h-=$2D5s++, h.6 V5w+o?K_AP-=h-= $6 5w-=$ Dh h3V5ugO h3T5sgOA4V! 5w.6 V5w++# 5w/6 ,~,6J>
6`Q`!,>,>,>h,>h-=h+4+,]VeF@-=h-=*4h,>,>,>h,>h-=h+4$W#-=h-=1>o,^o>`K+hC2=J7-=7<@ 6 V5x+=:5x,>,6w1l3 xgO/4@F+D $h 5x-=,~,7<LNB+=,7<L+hiFK]-=H<@-=,7$<L4f 6 Vh+P:h,>,6w1l3 xgO/4@e $h h-=$ Dh h2V5ygO h2T5|gOG h2R5gOG h2P6gOG4Vc,7<L`,7<L`+P,7$<L4d>o,^o>`K+hiFK]-=h<@-= "h-=+1O%i<i^~)-=n>-= 5w Vh $6 h-=$ Dh h2V5s+x+'+|E2
+' h.6 V5w+o?K_AP-=h-= $6 5w-=$ Dh h3V5ugO h3T5sgOA4V 5w.6 V5w++ 5w/6 ,~,6J>
6`Q`,>,>,>h,>h-=h+.+']VeF@-=h-=$4h,>,>,>h,>h-=h+._W# -=h-=,>o,^o>`K+h,y<@L64VQ@vh $6 "-=$3D5r+Q 5v0V+@ h.6 Vh h06+=,7$<L4a+?@vh,7$<L4_+O h.6 Vh h1v
+E,7$<L4_@vh+L,6J>
6`h5v,>,>,>6,>6-=6,~,J<@^E,B<@6,y<@+4+@vh@vh 6 Vh $6 "-=$3D5r+ 5v0V+n7@h+e,7$<L4d h.6 Vh h06+a,7$<L4a h.6 Vh+c,7$<L4_@vh@vh 6 Vh+m h.6 Vh h06+k,7$<L4a h.6 Vh+m,7$<L4_@vh+OvhLh4Vq,7$<L4fOvh7@h+,B<@,p>,>,>,>h,>h-=hh4h-=0@+{@vh+,6w1l.h.  @h h266+,7$<L,7$<L4^+,7$<L4d h.6 Vh h1v
+
,7$<L4@vh,6w1l.:@h,7$<L4f,7$<L,7$<L4^+q,y<@+S7@h+,7$<L4d-h1v	+,7$<L4,^<@`-=	+haKxKJJ7\-=<@ 6 V5w+!:5w 5v.42v+' $6 5w-=$2D5u+'+++!++EN]
6h5wh5v,>,>,>6,>6-=6,~,9<@^?,B<@6+h	O>5-=0@+Z@v6+)65'-=0@+]Ov6+)65&-=0@+a@v6+)65*-=0@+dOv6+)65)-=0@+h@v6+)65 -=0@gO 65-=0@gOG4@
6`h5v,>,>,>6,>6-=6,~,9<@^p 5v Vh $6 h-=$2D5ugO h1vgOA4D h/6 Vh+z $6 h-=$3D5|+
,K<@`4S,7<Lh5|,7<L,B<@6>o,^o>`K+)65-=0@+(,:<@+C2=Kw`h-=h-=,y<@ $6 "-=$2D5r++6 5v0V+,7<L+'+$,6J>
6`h5v,>,>,>6,>6-=6,~,9<@^,B<@6++)+=,y<@ $6 "-=$3D5r+3,K<@d4F $6 "-=$3D5r+3,y<@+/+6_W# -=h-=4,^<@`+R+=e&\W4-=h-=:+haW$pr-=><@-=,7$<L4C,7R<Lh5{`,6w1l61`+a,7$<L4B 6 V5w+L:5w,>,6w1l63 xgO/4@a $6 5w-=$ Dh h2V5gO h2T6gOG h2R5|gOG h2P5ygOG4V_,7<L`,7<L`+L,7$<L4@>o,^o>`K+hk:]k{]6.<pO-=d<@,7$<L4>7@6+r 5s0V+o,7$<L48+r 5s0V+r,7$<L42+t,7$<L4/7@6+v,@<@+hu|S; -=v<@,7$<L4+,7$<L4>,7$<L4'Ov6!+hG",:xeY](-=<@v-=,>,> "p $h"&"(-=5 h.6,>,>,>X,>X-=X5 h.6,>,>,>X,>X-=X5 h.6,>,>,>X,>X-=X4} h.6,>,>,>X,>X-=X4| h.6,>,>,>X,>X-=X5 h.6,>,>,>X,>X-=X4 h.6,>,>,>X,>X-=X5 h.6,>,>,>X,>X-=X5 h.6	,>,>,>X,>X-=X5	 h.6
,>,>,>X,>X-=X5
 h.6,>,>,>X,>X-=X5 h.6
,>,>,>X,>X-=X5 h.6,>,>,>X,>X-=X5 h.6,>,>,>X,>X-=X5 h.6,>,>,>X,>X-=XLh4Vm 6 Vh+T:h,>+@h3 xgO/4@h6 h..hX-=0@+e,K<@`4,y<@ $6 "-=$3D5r+c,y<@+^,^<@`+k+g+@h2@h+gOvh+S+kKN2q'# -=h-=h+Q-=	+haW&h9SI9-=n<@,7$<L4,7$<L4,7$<L6,7$<L46
4h-=1@gOA64@	,7$<L4,9<@6
,7$<L4$<L4,7$<L3y,7$<L3p 5s0V+		,7$<L3j,7$<L3b,7$<L3,7$<L3T,7$<L3N+haW&
WG&\Rf-=	<@7@6+	,7$<L3J7@6+	,7$<L3D7@6+	,7$<L3@,7$<L3;,7$<L38,7$<L30,7$<L3',7$<L3 ,7$<L3,7$<L3,7$<L3,7$<L3,7$<L3,7$<L3,7$<L2~ 5s0V+	1,7$<L2}+	9 5s0V+	9,7$<L2{,7$<L2v,7$<L2r,7$<L2n,7$<L2k,7$<L2f,7$<L2d,7$<L2a,7$<L2W,7$<L2R,7$<L2K,7$<L2H,7$<L2D,7$<L2> 5s0V+	O,7$<L29L64V	M,7$<L25,7$<L20+	Y 5s0V+	Y,7$<L2(L64V	U,7$<L2!L64V	W,7$<L2,7$<L27@6+	[,7$<L2,7$<L2	,7$<L2,7$<L2,7$<L2,7$<L1{ 5s0V+	f,7$<L1z+	i 5s0V+	i,7$<L1x,7$<L1u,7$<L1s 5s0V+	p,7$<L1o+	s 5s0V+	s,7$<L1j,7$<L1g,7$<L1d 5s0V+	y,7$<L1b+	| 5s0V+	|,7$<L1`,7$<L1^,7$<L1\L64V
	 5s0V+
,7$<L1Y+
 5s0V+
,7$<L1V,7$<L1R+
 5s0V+
,7$<L1M+
 5s0V+
,7$<L1L,7$<L4d,7$<L1H,7$<L1d 5s0V+
,7$<L1G+
 5s0V+
,7$<L1E,7$<L1^,7$<L1\L64V
' 5s0V+
",7$<L1B+
% 5s0V+
%,7$<L1?,7$<L1;+
/ 5s0V+
*,7$<L16+
- 5s0V+
-,7$<L1L,7$<L4d,7$<L1H 5s0V+
5,7$<L1.,7$<L1'+
8 5s0V+
8,7$<L1,7$<L2a,7$<L2,7$<L1,7$<L1,7$<L1,7$<L1,7$<L0|,7$<L0v,7$<L0s,7$<L0l,7$<L0g,7$<L2d,7$<L0a,7$<L4>,7$<L0Z,7$<L0X,7$<L2d,7$<L0T,7$<L0P,7$<L0M,7$<L0E,7$<L0=,7$<L06,7$<L0/,7$<L0(,7$<L0!,7$<L0,7$<L0,7$<L0,7$<L/,7$<L4>,7$<L/,7$<L/,7$<L/1,7$<L/	,7$<L/,7$<L.y,7$<L.q,7$<L.m,7$<L.e,7$<L.^,7$<L.V,7$<L.N,7$<L.L,7$<L.H,7$<L.A,7$<L.:,7$<L.3,7$<L.-,7$<L.%,7$<L.,7$<L.,7$<L4>,7$<L.,7$<L.,7$<L.
,7$<L.,7$<L-y 5s0V+B,7$<L-u,7$<L-m,7$<L-j,7$<L-e,7$<L/1,7$<L-a,7$<L-Z,7$<L-T,7$<L-M,7$<L-E,7$<L-?,7$<L4>,7$<L-;,7$<L.,7$<L-5,7$<L2d,7$<L-0,7$<L/1,7$<L--,7$<L-%,7$<L-,7$<L-,7$<L-,7$<L-,7$<L-,7$<L,y,7$<L,r,7$<L,k,7$<L,d,7$<L,[,7$<L,S,7$<L,N,7$<L,K 5s0V+s,7$<L,G+v 5s0V+v,7$<L,C,7$<L,@7@6+z,7$<L2,7$<L,<,7$<L,5,7$<L,1,7$<L,.,7$<L,) 5s0V+
,J<@,!+
 5s0V+
,J<@,,7$<L2,7$<L/1,7$<L,,7$<L,,7$<L,,7$<L,,7$<L+},7$<L/1,7$<L+y,7$<L+p,7$<L+i,7$<L+a,7$<L+Z,7$<L+R,7$<L4>,7$<L+M,7$<L+J,7$<L+A,7$<L+<,7$<L+0,7$<L+,,7$<L2d,7$<L/1,7$<L+(,7$<L+,7$<L+,7$<L+,7$<L+
,7$<L+,7$<L*{,7$<L*t,7$<L*j,7$<L*f,7$<L*],7$<L*V,7$<L*M,7$<L*I,7$<L*@,7$<L*8,7$<L*3,7$<L*(,7$<L*$,7$<L*,7$<L*,7$<L*,7$<L*,7$<L)},7$<L/1,7$<L)x,7$<L)o,7$<L)e,7$<L)b,7$<L*,7$<L)V,7$<L)M,7$<L)K7@6+
4h-=1@+7$<L(y,7$<L(r,7$<L(k,7$<L(f,7$<L4> 5s0V+
,J<@(ZL64V4a,J<@(P+J<@6
,7$<L(7,7$<L(4,7$<L4>r5s0V+(,7$<L(,7$<L(
,7$<L(,7$<L'|,7$<L'u,7$<L'm,7$<L'f,7$<L'5,7$<L'X15s0V++,,7$<L/1+7$<L',7$<L&y,7$<L&s,7$<L4>-5s0V++3Z-=<@ =h p0V+(@vp p.6 Vp p0V+%x,>,>,>p,>p-= =hp+' p0V+"%v,>,>,>p,>p-= =hp+' p0V+'%t,>,>,>p,>p-= =hp+) p.6 Vp,7$<L,7$<L%s,7R<L``,7$<L%q,7$<L,7$<L4+h@vh 6 Vh 5s0V+d,<@%n,<@%l,<@%k,<@%i,<@%f,<@%d,<@%b,<@%`,<@%^,<@%],<@%Y,<@%V,<@%S,<@%O,<@%L,<@%G,<@%D,<@%?,<@%<,<@%7,<@%5,<@%4,<@%0,<@%,,<@%*,<@%&,<@%$,<@%!,<@%,<@%+ 5s0V+,<@%,<@%,<@%,<@%,<@%,<@%,<@%
,<@%	,<@%,<@%],<@%,<@$,<@$|,<@$x,<@$s,<@$o,<@$l,<@$i,<@$e,<@$^,<@$],<@$[,<@$X,<@$U,<@$R,<@$M,<@$J,<@$G,<@$C,<@$?,7<L-=	+haW%	0I-=<@,7$<L$<7@6+/L6 4V,7$<L$77@6 + ,7$<L$07@6+",7$<L$.L6 L6!A4V, 5s0V+(,J<@$)++ 5s0V++,J<@$",7$<L$ ,7$<L),7$<L$7@6+ 5s0V+E,7$<L$,7$<L$7@6+9,7$<L$,7$<L#{7@6+;,7$<L2,7$<L#w,7$<L#s,7$<L#h,7$<L#^,7$<L#V,7$<L#P+U 5s0V+U,7$<L#H,7$<L#=7@6+L,7$<L2,7$<L#w,7$<L#s,7$<L#5,7$<L#^,7$<L#0,7$<L#*,7$<L#&,7$<L#$,7$<L#,7$<L#,7$<L#,7$<L#,7$<L2d,7$<L2d,7$<L#,7$<L#	,7$<L2d7@6 +|,7$<L#,7$<L"v,7$<L"p,7$<L"i,7$<L"e,7$<L"a,7$<L"\,7$<L"X,7$<L"S,7$<L"O,7$<L"J,7$<L"F,7$<L"B7@6+|,7$<L$.7@6+,7$<L) 5s0V+,7$<L"=,7$<L6,7$<L":,7$<L"6,7$<L".,7$<L4a,7$<L"%+ 5s0V+,7$<L" ,7$<L6,7$<L":,7$<L),7$<L",7$<L".,7$<L4a,7$<L"L64Vq 5s0V+-,7$<L"
4h-=1@+L 5s0V+G,J<@!F+J 5s0V+J,J<@!A,J<@6
 5s0V+O,7$<L!5+R 5s0V+R,7$<L!+,7<Lh5r 5s0V+W,7$<L!)+Z 5s0V+Z,7$<L!) 5s0V+^,7$<L!!+a 5s0V+a,7$<L!L64Vo 5s0V+j,7$<L!,7$<L!,7$<L!,7$<L x+o 5s0V+o,7$<L oL64Vo,7$<L h,7$<L f,7<L,7$<L6,7$<L5l,7$<L c,7$<L _+haW$j7SN@-=x<@,7$<L YL6 5~1tgOA4V-=,6J>
 W,>,>,>6,>6-=6,7$<L T 5~ Vh 6 Vh+:h2vh+,<P,7<L,7$<L6,7$<L R+
 5s0V+,7$<L I,7$<L @+ 5s0V+,7$<L 6,7$<L .,7$<L +>o,^o>`K,7$<L 'L64V6 5s0V++,7$<L #,7$<L6,7$<L ,7$<L ,7$<L ,7$<L +6 5s0V+6,7$<L ,7$<L6,7$<L},7$<Lu,7$<Lo,7$<Lf7@6+jL6!L6 A4VM 5s0V+>,7$<L],7$<LV+B 5s0V+B,J<@N,J<@H 5s0V+G,J<@B,J<@<+L 5s0V+L,J<@6,J<@1,7$<L$ ,7$<L),7$<L- 5s0V+T,7$<L)+W 5s0V+W,7$<L%,7$<L 5s0V+\,7$<L+_ 5s0V+_,7$<L,7$<L 5s0V+d,7$<L+g 5s0V+g,7$<Lv,7$<L),7$<L),7$<L4a7@6+ 5s0V+q,7$<Lm,7$<Ld+v 5s0V+v,7$<L[,7$<LS,7$<LP7@6+z,7$<L2,7$<L),7$<LKL64V,7$<LE,7$<L6,7$<LC,7$<L,1,7$<L?,7$<L) 5s0V+
,7$<L;+$<L".,7$<L5,7$<L),7$<L)L64V 5s0V+,7$<L1+ 5s0V+,7$<L-,7$<L6,7$<L*7@6 +5,7$<L',7$<L6,7$<L$,7$<L,7$<L,7$<L6,7$<L$,7$<L,7$<L',7$<L6,7$<L,7$<L
,7$<L,7$<L6,7$<L,7$<L) 5s0V+=,7$<L,7$<L{,7$<Lx+hO?%|h-==<@,M<@65,-=0@+[64h-=0@+J,K<@dp+N,7$<Ln,7$<L6,7$<L2},y<@ $6 "-=$3D5r+Y,K<@da $6 "-=$3D5r+Y,y<@+T,^<@`+g,B<@6,6J>
6,>,>,>6,>6-=6L6L6A4Ve,7$<L^+f,7$<L\@v6,7<L,7$<L6,7$<LR+h[\[E`-=k<@-=,6w1l6@@h+vY&I9G"6w1l6 @h+Y&I9G"
Q`&`,>,>,>h,>h-=h 6 Vh+/:h,>,6w1l63 xgO/4@9 $6 h-=$  $h h-=v+/ $Z "-=$  $h h.6 -=t $Y "-=$  $h h.6 -=t $W "-=$  $h h.6 -=t $V "-=$  $h h.6 -=t,8<L``Ov6,8<L`-=	+h 6 V5s 6 V5t 6 V5z 6 V5t,6d>
``,>,>,>6,>6-=6 6 $6 "-=v,6d>
`C`,>,>,>6,>6-=655s4$6"C-=v55t$6"C-=v5$T"-=$D5}5$S%"-=$D5}5$4N "-=$ D6 6$ V64h,>,>,>6,>6-=6,>,>,>6,>6-=6,>,>,>6
,>6
-=6
,>,>,>6,>6-=6,>,>,>6,>6-=6,>,>,>6,>6-=6,>,>,>6,>6-=6 $Y "-=$ D5y $M "-=$ D5z4h,>,>,>6,>6-=6 $K "-=$ D6 $J "-=$ D6 $H "-=$ D6 $G "-=$ D6 $E "-=$ D6 $D "-=$ D6 $B "-=$ D6 $A "-=$ D6,7d<L`?,7d<L`5,7d<L`5`,7l<L`5,7$<L;,7$<L5,7$<L-+DgR-
 W,>,>,>6,>6-=6Ov6@v6 V6 V6 V6 V6  V6 V6 V6 V6! V6 V6 6 V5s@v5| V5{ V5r V5~,B<@6
4h,>,>,>6
,>6
-=6
,7$<L$,7$<L",y<@,6J>
6`h5v,>,>,>6,>6-=664h-=0@+f+,*<@6 6 V5w $Z "-=$  $6 5w-=$3DgO,>,6w1l63`5wgOAx/4@v 5w.6 V5w+i,6w1l62@5w+/-=+|,6w1l6. ,~,6d>
Q`y`,>,>,>5p,>5p-=5p 6 V5w+:5w,>,6w1l63 xgO/4@
 $6 5w-=$  $5p 5w-=v+ $Z "-=$  $5p 5w.6 -=t $V "-=$  $5p 5w.6 -=t $! "-=$  $5p 5w.6 -=t $ "-=$  $5p 5w.6 -=t+%,6w1l5p,~,6d>
Q`#`,>,>,>6,>6-=65p,>,>,>6,>6-=6>o,^o>`K,7$<L,7$<L6,7$<L,8<L`6,8<L`,7<Lh5w 5w&41VgO V6#,8K<L`,8<L`6,8<L` 6 V5w+B:5w,>,6w1l63 xgO/4@L $6 5w-=$2D5{+L 5w/6 V5w+P+B+PYi3_IP-=h-=M,B<@6
,B<@6	,B<@6,6J>
6`h5w,>,>,>6,>6-=6,"<@+_gR-_? -=h-=\,y<@ 5r0V+m 5v0V+f,y<@+c $6 "-=$ D5r $ "-=$3D5r+m,K<@` $6 "-=$3D5r+w,K<@d $6 "-=$3D5r+w,y<@+r,^<@`,M<@64}-=0@+Ov6,K<@`u+_64|-=0@+
,o>,>,>,>6,>6-=6,*<@6Ov6,K<@`h+_65-=0@+,B<@6,o>,>,>,>6,>6-=6,*<@66f-=0@+ 6 V5s+6d-=0@+ 6 V5s+,K<@`]+_65-=0@+!Ov6+_64-=0@+V,<@,o>,>,>,>6,>6-=6,*<@6,6w1l60`+/,K<@dU 6 V6+1:62v6+86 6..6X-=0@+8,K<@`P+0 60V+<,K<@dF+> 6.6 V6,6J>
6 6..6,>,>,>X,>X-=X,o>,>,>,>6,>6-=6,*<@66D-=0@+N 6#.6OvX+T6C-=0@+R 6#.6@vX+T,K<@d8 6$.6@vX+_65-=0@+ZOv6!+_65-=0@+]Ov6+_65	-=0@+aOv6+_65
-=0@+dOv6+_65-=0@gO 65-=0@gOG4@{Ov6 V6! V6 ,K<@`3,8<L`,7$<L1,7$<L6,7$<L.,7$<L6,7$<L),7<L,8<L`+_65-=0@+,<@,6J>
6h5wh5v,>,>,>6	,>6	-=6	+_65-=0@+,<@,6J>
6h5wh5v,>,>,>6
,>6
-=6
6
4h-=0@+,K<@`Ov6!Ov6+_,p<@65-=0@+,6J>
5,>,>,>6,>6-=6,M<@+,<@`,	<@65-=0@gO 65-=0@gOG4@?65-=0@+2,6J>
5,>,>,>6,>6-=6,7<L,7<L,M<@+'65-=0@+>,7$<L,7$<L>o,7$<L2},7$<L4>,j<@,7$<L2d,M<@+2+ ,<@`,
5,>,>,>6,>6-=6,7<L,7<L,M<@+A,<@`,<@+Ro"L:;&+v4-=h-=O,M<@65-=0@+X,:<@+m65-=0@+u 5|.6 V5|,7$<L,7R<Lh5|`,7$<L2},:<@6,>,>,>6
,>,>,>6,>6-=6,B<@64h,>,>,>6,>6-=6@v5rOv6@v6! V6" 5{.6 V5{,7$<L,7R<Lh5{`,7$<L2}7@6+<-=,B<@6 6 V5q+:5q2v5v+: $6 5q-=$2D5}+: 5q265v+ 5q.6 V5q+ 5q/6 V5q+# $6 5q-=$3D5}+: 5q/6 V5q 5q/6 V5q+#I'&Km-=h-=  $6 5q-=$3D5|gO  $6 5q-=$3D5ugOA4D/ 5q/6 V5q+#,B<@6+3 5q.6 ,~,6J>
6Q`1h5q,>,>,>6,>6-=675q.6V5q+>o,^o>`K,:<@6,>,>,>67@6+U,7$<L2,7$<L#w,7$<L|,7$<L4>7@6+^O5vLV5v@v5v,@<@+5v,V5v,7$<LwL64Vu,7$<Lt,7$<L4>7@6+h 5v V5v@v5v,@<@ 5v V5v,7$<Lq,7$<L6
,<@,6J>
6h5wh5v,>,>,>6
,>6
-=6
Ov6" 6 V5w+.65--=0@+@v6+.65#-=0@+Ov6+.65!-=0@+Ov6 @v6L6!4V,x<@+.L6!4V,x<@,g<@,7$<L2d,7$<Lg7@6"+$,7$<Ld,J<@6
,7$<L],7$<L[,7$<L4L64V,,7$<LE,7$<L6,>6,>6-=6,*<@664h-=0@+:Ov6L6A6L6AL6 A4VV 5r.6 V5r 5r0V+BL6!4VB,x<@,7$<LT+F 5r/6 ,~,7R<LQ`D``,7$<LR,m<@,g<@,7<L,7$<LP,7$<L6,7$<L R,j<@,?<@,7$<L2d+y+EL64VX@v6 5r1V+f,K<@dE+J$\V? -=h-=\,y<@ $6 "-=$3D5r+d+,^<@`+y,m<@7@6+k,7$<LC,7<L64h-=1@+L6 4VwL64Vq,7$<LA,7$<L?L6G64Vu,7$<L=,7$<L;7@6 +y,7$<L7 6 V5x+{:5x,>,6w1l63 xgO/4@
 $6 5x-=$ D5x 5x2V5y+,7<Lh5x 5x2V5|+,7<Lh5|,7<Lh5x+{,7$<L57@6 +,7$<L3,7$<L6,7$<L2},B<@6,o>,>,>,>6,>6-=6,*<@6+k 6G6 L 6A6LA4V$L64V,7$<LA,7$<L/,7$<L6,7$<L2}7@6 +/,7$<L-,7$<L6,7$<L2},7<L,7$<L3,7$<L6,7$<L RL64V67@6+3,7$<L++4,7$<L(,7$<L2}7@6 +97@6+9,@<@7@6+=L6A6G64V=,7$<L&,7<L,7$<LP,7$<L6,7$<L R,j<@,?<@+y>o,^o>`K64z-=0@+R,z<@,y<@ $6 "-=$3D5r+O+Y,^<@`,M<@+Y65-=0@+g,z<@+YM&t;gP-=h-=V7@6+\,7$<L6,7$<L$,B<@6,8<L`,8<L`,8K<L`,8K<L`,7$<L!+D,K<@d+mG",:vS:+ -=h-=j,y<@ $6 "-=$3D5r+x,K<@d $6 "-=$3D5r+x,y<@+t+|G>vLWY2Mi--=h-=y,^<@`+R+gR~@-=h-=-=	+hH=3340: A command line is required at this point.  As a result,[N]******  this line up to next command line will be ignored.H63330: Command is out of place here.  As a result,[N]****** this line up to next command line will be ignored.H"	...and is ready.[N]H%[N]END;[N]H'extratest;[N]H)wrongmessageH,rightmessageH.GOTO H0IF NOT here(endofline) THEN GOTO H4LACKH6") THEN GOTO H8pos:= 1;[N]IF NOT anywhere("H<here("H>anywH@IF NOT HBpos:= 1;[N]HDpos:= 1;HF13200: Expected answers must precede first [N]****** empty answer pattern. Command will be ignored.HQSAMEHS THEN[N]HUIF lasterrors =HWIF ihaveblanked THEN restore;[N]H\[N]next:[N]H^Write(right[[random]]);[N]Newline;[N]GOTO SAMEQZXAAB;[N]Hegiveanswer;[N]Hh[N]simulate:[N]Hjskip:= FALSE;[N]GOTO simulate;[N]END;[N]HoIF skip THEN[N]Hr
back:= FALSE;[N]GOTO HuIF back THEN[N]Hxstop:= FALSE;[N]GOTO endoflesson;[N]END;[N]H}IF stop THEN[N]Htryagain;[N]H	BEGIN[2N]repeat:[N]HIF FALSE THEN[N]Hfirsttry:= TRUE;[N]lastrights:= lasterrors:= 0;[N]HBEGIN[N]INTEGER subblock;[N]H
[4N]COMMENT:nQuestionHQZXAAAHBEGIN[N]pause;[N]H[4N]COMMENT:oTextH[2N]PROCEDUREnH()2727:pIgnore thismessageifyoulmeantpto(omit[N]******tteacher'slnameuandtaddress.H*.SRT<155>files,to1receiveteacher(reports.H/.DTA<155>and.H2******H42651: Ignore this message if you have createdH9/2545: Switch value neither 'TRUE' nor 'FALSE'.[N]****** The effect of this error is undefined.HDFALSEHETRUEHG+2538: More than 9 switches not allowed.[N]THIS switch will replace the old number nine.HQ2536: This switch is doubly defined.HV#2530: No switchname in %SWITCH command.[N]****** Line will be ignored.H^ 2501: Unknown language.[N]****** GNOSIS will default to English..HeSWEDISHHgENGLISHHi;2482:  The GNOLIB.REL file must reside in 'SYS:'. [N]****** Load as follows: '.LOAD <lessonname>.ALG, SYS:GNOLIB.REL'.Hv;2456:  The GNOLIB.REL file must reside in 'SYS:'. [N]****** Load as follows: '.LOAD <lessonname>.ALG, SYS:GNOLIB.REL'.H=2435: A command line is required at this point.  As a result,[N]******  this line up to next command line will be ignored.H2430: You are not using '%' as a command indicator.H%H	" has begun...[2N]H[2N]Translation of the lesson "H OH"NH#-->[B]H%&[2N]Enter lesson name with extension, or push RETURN to exit from GNOSIS.[N]H.[2N]Do NOT type ahead while running the GNOSIS translator.[N]H6Copyright (c) 1978 by Jacob Palme and Walter ManerH<GNOSIS Version 2 (June, 1978)[N]H@TTYHBEHC@HE#HF$HHeHI`HK{HL}HNZHO]]HQ"HR!HT=HU:HWGHXLHZAH[.H]GOTO next;[N]HGOTO repeat;[N]Hb=2187: A command line is required at this point.  As a result,[N]******  this line up to next command line will be ignored.HoGOTO SAMEHq#2177: No previous comment available.[N]****** Command will be ignored.HyWrite("!");[N]H|%IF firstname # "" THEN[N]BEGIN[N]Write(", ");[N]Write(firstname);[N]END;[N]HWrite("[[2N]]Have a nice day");[N]H	Openfile (1,"");[N]Openfile (3,"H
GOTO mess;[N]END;[N]H9
Write("MEDDELANDE:T");[N]H<Write("MESSAGE:]");[N]H@ack THEN[N]BEGIN[N]back:= FALSE;[N]GOTO HLWrite(prompt);[N]Breakoutput;[N]getline;[N]HQ[N]mess:[N]HT$Write("Sluta med att trycka en extra g}ng p} RETURN-knappen.[[2N]]");[N]H\%Write("Om Du har n}got meddelande till l{raren, s} skriv det nu.[[N]]");[N]He(Write("line at a time.  Finish with an EXTRA push on the RETURN key.[[2N]]");[N]Hn(Write("If you have any message for the teacher, then type it now, one[[N]]");[N]Hw)Write(" totalt av[[NT]]-");[N]Print(qcount,3);[N]Write(" givna fr}gor.[[2N]]");[N]H6Write(" total right out of a total of[[NT]]-");[N]Print(qcount,3);[N]Write(" questions attempted.[[2N]]");[N]H
Print(latescore,3);[N]HWrite("Sf`rstasvar;och[[NT]]-");[N]HWrite("Nrightianswerson2first(triesdand[[NT]]-");[N]H4Print(latepercent,2,1);[N]Write("%om(");[N]Print(percent,2,1);[N]Write("%)[[NT]]-");[N]Print(score,3);[N]H& teacher.HCPlease send the line printer listing (not the listingHIDetta blad kommer att skrivas ut p} radskrivaren.HO [[2N]]Denna lektion har producerat ett rapportblad till l{raren.HW Write("This sheet will be printed on the line printer.[[N]]");[N]H^(Write("[[2N]]This lesson has produced a report sheet for the teacher.[[N]]");[N]Hg$Write(" fr}gor gav Du r{tt svar f`rsta g}ngen Du fick fr}gan.[[N]]");[N]HpWrite(" g}nger.[[N]]P}");[N]Print(score,3);[N]Hv"Write(" fr}gor, [[N]]och Du gav r{tt svar");[N]Print(latescore,3);[N]H~"" {r slut.[[N]]Du har svarat p}");[N]Print(qcount,3);[N]H Write("Lektion ""H %Write(" questions your answer was right on your very first try.[[N]]");[N]H Write(" times.[[N]]On");[N]Print(score,3);[N]H (Write(" questions,[[N]]and you gave the right answer");[N]Print(latescore,3);[N]H "" you answered");[N]Print(qcount,3);[N]H $
GOTO start;[N]END;[N]H /!Write("utan m}ste backa till lektionens b`rjan. F`rl}t![[N]]");[N]H 7)Write("Jag kan inte g} en liten bit bak}t p.g.a. lektionens komplexitet[[N]]");[N]H A'Write("from this point.  It is going all the way back to the start.[[N]]");[N]H J)Write("NOTE:  The backing procedure is unable to go back just ONE step [[N]]");[N]H S:[N]H U
IF FALSE THEN[N]BEGIN[N]H XZQXAAAH ZEND of block started with makeblock INTEGER;[4N]H `BEGIN[N]INTEGER blockmaker;[N]H d[N]start:[N]H gpage;[2N]H i  `ver en fr}ga eller[[NT]]- g} tillbaka i lektionen.[[2N]]");[N]H p&Write("D{refter kan du[[NT]]- avsluta hela lektionen eller[[NT]]- bara hoppaH y(Write("[[NT]](3) 'BACK' to return to the previous question (or text).[[2N]]");[N]H!&Write("[[NT]](2) 'SKIP' to move on to the next question (or text);; or");[N]H!
Write("[[NT]](1) 'STOP' to end the lesson immediately;;");[N]H!Write("GNOSIS will then explain how you can type");[N]H!#Write(" p} Din terminal och sedan trycka p} RETURN-knappen.[[N]]");[N]H!"$Write(" on your terminal and then pushing the RETURN button.[[2N]]");[N]H!*""");[N]H!,+Write("Du kan avbryta lektionen n{r som helst genom att skriva[[N]]det enda tecknet ""H!62Write("[[N]]IMPORTANT: You can interrupt the lesson at any time by typing the[[N]]single character ""H!BDen l{rare som skrev den h{r lektionen {r...H!GThe author of this lesson is...H!LF`rsvarets forskningsanstalt, Stockholm.H!Qf`r datorst`dd undervisning(DU) fr}nH!VWrite("[[N]]producerad av GNOSIS-systemet ");[N]H!\,");[N]H!^'");[N]H!`Write("[[2N]]Detta {r lektionen 'H!d,Write("Stockholm, Sweden, and the Old Dominion University Research Foundation.[[N]]");[N]H!n,Write("instruction  (CAI)  from  the  Research  Institute  of National Defense[[N]]");[N]H!x-Write("This lesson was  produced  by  the  GNOSIS  system  for  computer  aided[[N]]");[N]H"
Write(".[[2N]]");[N]H"Write(",[[N]]H"Write("'");[N]H"

Write(lessonname);[N]H"Write("[[2N]]WelcomeAtoAtheRlessonL'");[N]H")Write("[[N]]SP$RNING AVEOV#NTADEASVAR:[[N]]");[N]Breakoutput;[N]Selectoutput(0);[N]H"#FOR pos:= 1 STEP 1 UNTIL answerlength DO Outsymbol(answer.[[pos]]);[N]H"7Write("STUDENT'S NAME: ");[N]H";[[2N]]");[N]H">Write("[[P]]TEACHER REPORT FOR THE LESSON: H"COpenfile(3,tempfile2,%057);[N]H"GOpenfile(2,tempfile1,%057);[N]H"Ktempfile2.[[pos+4]]:= "T".[[1]];[N]H"Ptempfile2.[[pos+3]]:= "R".[[1]];[N]H"Ttempfile2.[[pos+2]]:= "S".[[1]];[N]H"Ytempfile1.[[pos+4]]:= "A".[[1]];[N]H"]tempfile1.[[pos+3]]:= "T".[[1]];[N]H"btempfile1.[[pos+2]]:= "D".[[1]];[N]H"fELSE pos:= pos - 2;[N]H"jtempfile1.[[pos+1]]:= tempfile2.[[pos+1]]:= ".".[[1]][N]H"qIF firstname.[[Length(firstname)]] # ".".[[1]] THEN H"w5FOR pos:= 1 STEP 1 UNTIL Length(firstname) DO tempfile1.[[pos]]:= tempfile2.[[pos]]:= firstname.[[pos]];[N]H#tempfile1:= tempfile2:= Newstring(Length(firstname)+5,7);[N]H#
Write(firstname);[N]Write("!");[N]H#firstname:=Copy(answer,1,pos-1);[N]H#BEGIN[N]pos:=pos+1;[N]GOTOGnameloop;[N]H#6BEGIN[N]Write("???[[N]]");[N]Newline;[N]GOTOrrepeat;[N]END;[N]H#>2[N]repeat:[N]Write("Jag skulle vilja veta ditt fullst{ndiga namn--skriv det p} terminalen.[[N]]");[N]H#I"Write("[[N]]Hej!  Det h{r {r GNOSIS-programmet som talar.[[N]]");[N]H#Q[N]continue:[N]Write("Glad to meet you, ");[N]H#WWrite("That's only ONE of your names.[[N]]");[N]GOTO repeat;[N]H#,FOR pos:= 1 STEP 1 UNTIL answerlength DO IF answer.[[pos]] = blank THEN GOTO continue;[N]H#i0BEGIN[N]Write("That's too short to be your FULL name.[[N]]");[N]Newline;[N]GOTO repeat;[N]END;[N]H#t
2[N]repeat:[N]Write("I'd like to know your full name--[[N]]just type it in after the arrow.[[N]]");[N]H$Write("[[N]]Hello!  This is GNOSIS talking.[[N]]");[N]H$
Selectoutput(0);[2N]H$!putmessage;[N]H$#L{raren {r tacksam om Du s{nder denna lista till honom.H$*Please send this listing to the teacher.H$/stopkc;[N]H$1Input(1,"DSK");[N]Output(2,"DSK");[N]Output(3,"DSK");[N]H$8Output(2,"LPT");[N]Selectoutput(2);[N]H$=
[N]Input(0,"TTY");[N]H$@D
Nej, inte riktigt s}.H$H
Det d{r {r inte riktigt.H$KTyv{rr inte r{tt.H$NNej, den h{r g}ngen svarade Du fel.H$SDet {r inte r{tt!H$V
Ditt svar var felaktigt.H$Y	Du valde fel svar.H$\Nej!H$^Fel!H$_  Just det. Bara man anstr{nger sig lite s} g}r det bra.H$f  Bra! Forts{tt p} det s{ttet.H$j  #ntligen r{tt!H$m	  Du g`r framsteg.H$p  S}ja, till slut g}r det bra!H$t  Javisst! Nu klarar Du det h{r.H$y  Nu har Du fattat det hela!H$}
  B{ttre och b{ttre!H%
  Nu b`rjar Du fatta!H%  Just det - Du klarar dig b{ttre nu.H%Bra!H%

Dusvaradekr{ttHigen.H%!H%Precis r{tt.H%Utm{rkt!H%Javisst!H%Mycket bra.H%Bra gjort!H%
No, you missed this one.H%You're mistaken.H%"
Thatywasn'twcorrect.H%%Sorry.H%'!H%-Youranswerwas wrong.H%1ng of it now.H%=
  Keep up the good work!H%@  Aren't you glad you kept trying?H%E
  You're making progress.H%H  There is hope for you after all!H%M
  I knew you could do it.H%P
  Yo've got the idea now!H%T	  You're improving!H%W
  Now you're catching on!H%Z  You're doing better!H%^OK!H%_Excellent!H%aThat's it!H%cWell done!H%eRight!H%gExactly right!H%jBravo!H%lSure!H%mVery good.H%oGood for you!H%r]]:= "H%t[[H%uwrongH%wrightatlastH%yrightH%{lessonname:= "H%}".[[1]];[N]H&controlstart:= "H&randno:= 1;[N]nopause:= skip:= message:= FALSE;[N]H&	!endofline:= Newstring(1,7);[N]endofline.[[1]]:= carriagereturn;[N]H&
char:= Newstring(1,7);[N]H& answer.[[134]]:= carriagereturn;[N]answer.[[135]]:= linefeed;[N]H&0answer:= Newstring(135,7);[N]answercopy:= Copy(" ");[N]firstname:= "";[N]prompt:= Copy("-->");[N]H&'lcaa:= "}".[[1]];[N]lcae:= "{".[[1]];[N]lcoe:= "`".[[1]];[N]H&.ucaa:= "$".[[1]];[N]ucae:= "#".[[1]];[N]ucoe:= "@".[[1]];[N]H&5 blank:= " ".[[1]];uparrow:= "^".[[1]];[N]controlg:="".[[1]];[N]H&</lastrights:= lastscorecount:= lastscorekount:= lastlatescorecount:= lastlatescorekount:= 0;[N]H&G:[4N]lasterrors:= latescore:= score:= lastqcount:= lastqkount:= qcount:= 0;[N]carriagereturn:= 13;[N]linefeed:= 10;[N]H&TWrite("vilket skulle ha varit acceptabelt:[2N]-->");[N]H&ZWrite(" h{r {r ett svar[[N]]");[N]H&_ Newline;[N]personalize("F`r den h{ndelse du {r intresserad,");[N]H&f Write(" GNOSIS will simulate an acceptable answer:[[2N]]-->");[N]H&nNewline;[N]personalize("Just for the record,");[N]H&t%RIGHT command for the preceding %QUESTION;[N]H&zThe answer given will always be the one following the FIRST[N]H'the question or who repeatedly fails to give a right answer.[N]H'	'COMMENT:  'Giveanswer' displays a right answer to a student who is skipping[N]H'
PROCEDUREEgiveanswer;[N]H'[N]Newline;[N]Newline;[N]END;[2N]H',IFNlasterrors>W3iTHENOWrite("[[N]]Eller...avbryt lektionendgenomdatteskriva"symbolen""H'$,IF"lasterrors =n3eTHENaWrite("[[N]]Dduwhareeliminerat(flera&m`jligheteroredan.")oELSE[N]H'.personalize("F`rs`kiigen.");[N]H'2"".");[N]H'4*IFYlasterrors >n4wTHENtWrite("[[N]]Or...interrupt5thelessonDbyEtypingwthe[symbol""H'>3IF;lasterrors]=H4THENWrite("[[N]](Youomightrwant{torethinksomeiofeyourepreviousnanswers.)") ELSE[N]H'I2IF lasterrorsd=n3aTHENmWrite("[[N]]You`haveiateleasteliminatedsome ofhtherpossibilities.")nELSE[N]H'Tpersonalize("Pleasetry again.");[N]H'Ytheestudenthasfailedttongivehaccorrectnresponse;[N]H'`thecontentnofetheimessagemdepends onetheanumberioftimes[N]H'gthe messagetwilltalwaysobe 'Pleasestryagain'.Otherwise,[N]H'nwhichmvariesNaccordingtotcircumstances.--Inn%NEUTRALtmode,[N]H'vd'Tryagain'Hwilloutpututoesuchestudentseal'try again'tmessage[N]H'}!answer,]orHan(incompleteEanswer aredusuallyerepeatediby GNOSIS.[N]H("COMMENT:]Questions output to students who give no answer, a wrong[N]H(
PROCEDURE putmessage;[N]H)	Selectoutput(0);[N]H)		Selectoutput(3);[N]H)
!FOR i:= 1 STEP 1 UNTIL answerlength DO Outsymbol(answer.[[i]]);[N]H)Write(question);[N]Write(": ");[N]H)	Selectoutput(2);[N]H)Breakoutput;[N]H)
BEGIN[N]INTEGER i;[N]H)!VALUE question;[N]STRING question;[N]H)&!lesson. 'Putaway' writes the unexpected answers in these files;[N]H).)<lessonname>.DTA and <lessonname>.SRT, which the teacher can use to improve the[N]H)8#then unexpected student answers are written into a pair of reports,[N]H)@ COMMENT: If the lesson contained a report-generating command,[N]H)GPROCEDURE putaway(question);[N]H)LEND;[2n]H)N)lastlatepercent:= IF lastqkount = 0 or x = 0 THEN 0.0 ELSE 100.0 * x/lastqkount;[N]H)W6x:= latescore - lastlatescorekount;[N]lastlatescorekount:= latescore;[N]lastqkount:= qcount - lastqkount;[N]H)cor afterward;[N]H)f*since this PROCEDURE was last called whether student was correct on the first try[N]H)p*COMMENT: 'Lastlatepercent' returns the percentage of questions answered correctly[N]H)yREAL PROCEDURE lastlatepercent;[N]H)~'lastpercent:= IF lastqcount = 0 or x = 0 THEN 0.0 ELSE 100.0 * x/lastqcount;[N]H*.x:= score - lastscorekount;[N]lastscorekount:= score;[N]lastqcount:= qcount - lastqcount;[N]H*
BEGIN[N]INTEGERpx;[N]H*ontheeveryefirstetrynsincethisPROCEDURE waswlastpcalled;[N]H*(COMMENT:p'Lastpercent'Treturnsstheopercentage ofSquestionsoanswered;correctly[N]H*%REAL PROCEDUREUlastpercent;[N]H*)1BEGIN[N]lastlatescore:=TlatescoreL-alastlatescorecount;[N]lastlatescorecount:=]latescore[N]END;[2N]H*4veryfirsttryorsafterward;[N]H*9%sinceHthis]PROCEDUREwaslastRcalled.whetherlstudenthwas'correctpontthe[N]H*A%COMMENT:+'Lastlatescore'treturnslnumbertofaquestionsoanswered correctly[N]H*JINTEGERuPROCEDUREolastlatescore;[N]H*N'BEGIN[N]lastscore:=tscore]-lastscorecount;[N]lastscorecount:=tscore[N]END;[2N]H*WveryefirstHtryqsinceCthisNPROCEDUREtwas'lastlcalled;[N]H*^&COMMENT:s'Lastscore'dreturnswnumberHof+questionsCansweredtcorrectly]onHthe[N]H*gINTEGEROPROCEDURE1lastscore;[N]H*k,latepercent:=,IFqcount =f0eor latescorei=,0oTHENu0.0,ELSEm100.0d*platescore/qcount;[2N]H*ustudent was correct on the first try or afterward;[N]H*|by the student since the start of the lesson whether[N]H+(COMMENT: 'Latepercent' returns the percentage of questions answered correctly[N]H+REAL PROCEDURE latepercent;[N]H+&percent:= IF qcount = 0 or score = 0 THEN 0.0 ELSE 100.0 * score/qcount;[2N]H+#by the student on his very first try since the start of the lesson;[N]H+ &COMMENT: 'Percent' returns the percentage of questions answered correctly[N]H+)
wantsetotblankatheNscreenHon,adisplaysterminal).[N]H,COMMENT:]'Page'ncanlbescalledNby[theteacherwhenihe[N]H,	PROCEDUREApage;[N]H,???Datornv{ntadetsig[baraTRETURNEfr}naDig.H,"!Eh?WTheecomputeruexpectedNyou;wouldjustpushGthe2RETURNbutton.H,*IFHNOTnhere(endofline)ETHEN[N]BEGIN[N]H,/	BEGIN[N]pos:=.1;[N]H,2ztextgblocksncannot;be]inhibited;[N]H,\'The:teacher+canNinhibit:pausesnBETWEENf'%'tcommandsLby;'nopause:=TRUE', but[N]H,ewithinlargesblockssof textrorhquestionmaterial.[N]H,lbuttGNOSISvwilltintroduceHADDITIONALsautomaticopausetpoints[N]H,sPROCEDUREgisecalledbetweeneachl%TEXTeorp%QUESTION,[N]H,zTosgo on,dshensimply pushesthe'RETURN'dkey.dNormally,ethis[N]H-whenevertsheyhas[finishedexamining theudisplayedhmaterial.[N]H-	in thefdisplay]oftexttomthe student,tandsshe.can continue[N]H- ahlimitedscreensize.MTheT'pause'tPROCEDUREiproduces ahpause[N]H-ataItime. Another reason is that display terminals have[N]H-One reason for this is that it is easier to read a little[N]H-&!COMMENT: Lesson text is given to the student in small portions.[N]H-.	PROCEDURE pause;[N]H-1personalize(wrong[[random]]);[N]Newline;[N]H-6BEGIN[N]qcount:= qcount+1;[N]firsttry:= FALSE;[N]H-<lasterrors:= lasterrors+1;[N]H-@provide some variation in the conversation;[N]H-Fare used to choose between ten different messages in order[N]H-Nand the lesson statistics are updated.  Random numbers[N]H-Uhas made an erroneous answer. He is told about this,[N]H-[COMMENT: 'Wrongmessage' is called when a student[N]H-b
"PROCEDUREopersonalize(message);[N]VALUEnmessage;[N]STRING message;[N]H/lf until after 862 generations;[N]H/number between 0 and 9. The generator will not repeat[N]H/&COMMENT: 'Random' is a number generator which gives a random[N]H/.INTEGER PROCEDURE random;[N]H/2END;[2N]H/4"Delete(answercopy);[N]answercopy:= Copy(answer,1,answerlength+2);[N]H/<BEGIN[N]ihaveblanked:= FALSE;[N]H/@it to other target patterns. This restoration is done here;[N]H/H!answer, the original response must be restored before comparing[N]H/P(COMMENT: Since 'anywhere' substitutes blanks for matched parts of the student[N]H/Y
PROCEDURE restore;[N]H/\
anywhere:=EFALSE;[N]H/[BEGIN[N]pos:=:nextpos;[N]GOTO[blankline;[N]H/e[N]nofit:[N]IFsanswercopy.[[pos]];#NcarriagereturnFTHEN[N]H/lanywhere:=tihaveblanked:=HTRUE;[N]GOTOIout;[N]H/rBEGIN[N]answercopy.[[cpos]]:=blank;[N]H/wFORecpos:=[pos-Length(comp)HSTEP]1UNTILpos-1 DO[N]H/}	nextpos:= pos+1;[N]H0BEGIN[N]INTEGER cpos, nextpos;[N]H0'%NOEXTRA mode, his answer will be wrong if any non-blank characters remain;[N]H0any non-blank characters in the student answer. In the[N]H0%NOEXTRA mode) to determine whether there are[N]H0the matched strings. This allows the program (e.g., in the[N]H0"'Anywhere' will substitute blanks for all characters in[N]H0)the %EXTRA mode and in the %NOEXTRA %NOORDER mode.[N]H00unmatched strings will be bypassed. 'Anywhere' is used in[N]H07 found anywhere in the student answer after 'pos'.  Blanks and[N]H0>"COMMENT: 'Anywhere' determines whether the argument string can be [N]H0F BOOLEAN PROCEDURE anywhere(comp);[N]VALUE comp;[N]STRING comp;[N]H0N	[N]out:[N]END;[2N]H0Q[N]nofit:[N]here:= FALSE;[N]H0U
BEGIN[N]INTEGER cpos;[N]H0wfor answers matched in the %NOEXTRA mode;[N]H0}else, may precede the matching word. 'Here' is mostly used[N]H1 beginning at 'pos' in the student answer. Blanks, but nothing[N]H1
#COMMENT: 'Here' determines whether the argument string can be found[N]H1BOOLEAN PROCEDURE here(comp);[N]VALUE comp;[N]STRING comp;[N]H1
END;[2N]exit:[N]END;[2N]H1'Write("Duivill intetavbryta.nu.Forts{ttLd}smedidittcordinariesvar.[[N]]");[N]H1(Write("to the PREVIOUS '-->' or 'RETURN' prompt...[[N]]");[N]H1/Write("Please continue, then, giving your response[[N]]");[N]H17??? Backing not allowed in this lesson.H1<
END[N]ELSE[N]BEGIN[N]H1M???H1N???dSkippingnotuallowedsinpthislesson.H1SN[N]Write("H1") THEN[N]H1aSKIPPAH1cSKIPH1e
pos:= 1;[N]IF anywhere("H1h
GOTO exit;[N]END;[N]H1kWrite("Lektionen avbr`t.[[N]]");[N]H1pWrite("Lesson aborted.");[N]H1tstop:= TRUE;[N]H1v	") THEN[N]BEGIN[N]H1ySTOPPH1{STOPH1|BEGIN[N]quit:= FALSE;[N]IF anywhere("H2IF quit THEN[N]H2END;[N]END;[N]H2quit:= TRUE;[N]GOTO again;[N]H2
Write(prompt);[N]Breakoutput;[N]H2Outsymbol(controlg);[N]H2Write("""FORTS#TT"" om Du vill forts{tta.[[N]]");[N]H2*Write("""BACKA"" om Du vill g} tillbaka till en tidigare del av lektionen,[[N]]");[N]H2"Write("""SKIPPA"" om Du vill skippa denna fr}ga,[[N]]");[N]H2)"BEGIN[N]Write("Svara ""STOPP"" om Du vill l{mna lektionen,[[N]]");[N]H21Write("or 'CONTINUE'.[[N]]");[N]H26Write(", 'SKIP', 'BACK', ");[N]H2:BEGIN[N]Write("Answer 'STOP'");[N]H2?BEGIN[N]IF answer.[[1]] = controlstart THEN[N]H2E
ihaveblanked:= FALSE;[N]H2LDelete(answercopy);[N]answercopy:= Copy(answer,1,i);[N]H2SIF answerlength < 0 THEN answerlength:= 0;[N]H2X,[N]out:[N]Insymbol(t);[N]i:= i+1;[N]answer.[[i]]:= t;[N]pos:= 1;[N]answerlength:= i-2;[N]H2bGOTO again;[N]H2eEND;[N]H2gIF t = carriagereturn THEN GOTO out;[N]H2l
answer.[[i]]:= t;[N]H2oIF t = lcoe THEN t:= ucoe;[N]H2sIF t = lcae THEN t:= ucae ELSE[N]H2wIF t = lcaa THEN t:= ucaa ELSE[N]H2| ELSE[N]H2~;[N]H2IF t >= 97 AND t <= 122 THEN t:= t-32H3COMMENT: Lower case transform;[N]H3	BEGIN[N]Insymbol(t);[N]H3
[N]again:[N]FOR i:= 1 STEP 1 UNTIL 132 DO[N]H3Breakoutput;[N]quit:= FALSE;[N]H3BEGIN[N]INTEGER s, t, i;[N]BOOLEAN quit;[N]H3to interrupt the flow of the lesson;[N]H3!to see if the student typed '%', indicating that he wanted[N]H3(#dumping it in the STRING 'answer'. Column one of the line is checked[N]H31!COMMENT: 'Getline' reads in a line of text input by the student,[N]H39
PROCEDURElgetline;[N]H3<FORWARDoBOOLEANgPROCEDUREHanywhere;[2N]H3AFORWARDePROCEDURErputaway;[N]H3EEXTERNAL PROCEDUREepub,nnolpt, run,er;[2N]H3KEXTERNALIPROCEDURE4stopkc;[2N]H3OSTRING;ARRAYright,rightatlast,Ewrong[[0:9]];[2N]H3U1STRINGianswer,ranswercopy,pchar, endofline,llessonname, firstname, tempfile1, tempfile2,nprompt;[N]H3`INTEGERlastrights;[N]H3caINTEGERfrandno,'answerlength,*controlstart,icontrolg, uparrow;[N]H3kINTEGERlcaa,4lcae,lcoe,;ucaa,ucae,ucoe;[N]H3q)INTEGERNlastscorecount,4lastlatescorecount,4lastscorekount,8lastlatescorekount;[N]H3z7INTEGERslasterrors,Nscore,*latescore, qcount,elastqcount,llastqkount, carriagereturn,linefeed,Hpos,blank;[N]H4#BOOLEANfirsttry,Nihaveblanked,Enopause,skip,Oback,stop,message;[N]H4;H4COMMENT:Thislessonwaswrittenby[N]H4";[N]H4 COMMENT: This is the lesson "H4BEGINH471161:  Command is out of place here.  As a result,[N]****** this line up to next command line will be ignored.H4(noanswer;[N]GOTO repeat;[N]END;[N]H4,
BELH5
KEEH5TEAH5ENDH5QENH5ALGH5INIH5PROH5VARH5HELH5NOJH5JUSH5TEXH5GOTH5!GO H5"LACH5$NEUH5%QUEH5'NOEH5(EXTH5*NOOH5+ORDH5-SAMH5.WROH50RIGH510392: %IFEND on non-active switch -- will have no effect.H58&0371: Unknown switchname in %IF-class command.[N]****** Line will be ignored.H5A$0368: No switchname in %IF-class command.[N]****** Line will be ignored.H5JIFH5K$----------------------------------------------------------------------[N]H5T0324: Command character not first in line.H5Y0322: Character after line-number is not TAB.H50316: Long input line will be truncated to 132 characters.H5f
****** ERROR Message No. H5m: H5oLINE xINXO:~:9gfh gS< \. N6? @6@ R6@S"p(B $S* 6G 6H@)@. @. @=d6- J68 J6;  68	`+64 .X<6=+  6:	`+66+63
&6A	b+61ggINX06'5o p2
?ALGOL object time system ALGNNN.SHR not found
+$:6DG?@h-=6H>xx?@hP+@h D` % 6a . ?Bh+6W2ph h<B6W 1. . h2p /9p6Y 0+6^ 6b "& & 4B6]. `,` $h ( '`-=	+h`0]>=S:9 -=6b>xx h4`6i0`Z "& h4@6s```D& 4B6n. , BhSh(@l @P@h hl  @h+h@@hSh(@ @h+hYt}-=6u1`+@h %7@g 6} @h+h`Id]-=6~<@+@h % a`+hZ4B7  ,>,
,^@@@@+hS;1_0P-=7	<@t+Bh,>-= ,^+@h+h_W&>6E>a -=7<@x h <h+]=J7J(h-=7<@x  >@h h4`7" 6-= 6-==@7`r-=+hoJNI%-=7"<@+@h % ( <7, "7J<"h4V7*+p-<7*1V-+@ 7K1V.+@ 7M+@ 7N <7,+g
g
-<7*0606+774*71$*+076.*_h+076+71"*+711V.=7,5j798J71A6/1V)+7H1V*+7G1V(+7C0V!1V'+7?0V!+70+7B 6-= 6-==j7?`r-=+71 6-= 6-= 6-==j7E+7B77O . -==j7H+71`97,97,=7/97/=7,=7/97/+7/+70aJMmh-=7P<@xx>Jh+(7WP@@h@@h#h#h o}/"([A ` $1@p =7`A ~1@=7`1J*0@ $h,+hS;]h-=7b<@xxx
X@@h+7rW&@xxx
X @h>Bh+7rP@@h@@h@@h6"h0"1"+7}+Bh  h h,7@+h6Dh+@h5D+@+@h % 8
!,A@./$4$80d-+80$/$D0N(98hQh-hPh,6Dh+@h7@+h5D+@`gdXzS;]-=8
Xt>Bh+8$P@@h@@h@@h@@h6"h0"+@h Dh6Dh+@h,>6@h+Bh,> h % 8G @j4@89 8H 0,8A1D986D10981,8A0D984.0 8H 2,8AD<R89987,^x hSh(H 
h,,^,^7@+h/  6@h+@h6D+
2p+89/$4$8F0d-+8F0$&/$,~>$,~`HHG2~93S2)-=8I<@x6"h0",+h68P6`8PM7@5opea8KKTP8IAo?Ao>ZpeM8r:^I@8pe%8pe8xHP8
6G 6'?=6' B`6'DEXpDFB:Jq~k2B CBp
cI?ZS(0.
"*0\B:/\>X\>5'\7N+\2g'r'I(\)8*\)7\	\	)\+,\6.\.,[rO.O[mNO[mO[m	O[l|[l{&O[l+O[kO[kO[j]O[jRO[i%r%H([Z[X%[Qgr%0[Ms/[M"-[M	+[L,[FG[@v*r#eOD^w'dw]!+{0