diff --git a/850816/algol.ini b/850816/algol.ini new file mode 100644 index 0000000..8eebf3f --- /dev/null +++ b/850816/algol.ini @@ -0,0 +1,38 @@ +# algol.ini - use the algol compiler + + +# load algol.bo from card reader using the sds universal loader +dep bpt4 1 + + +att cp card-punch +att ptp zzz +att lpt xxx + +#! /users/admin/sds/sds-kit/tools/mkdeck -a /users/admin/sds/sieve.si >source + + +att cr /users/admin/sds/sds-kit/850645/pre.bo,/users/admin/sds/sds-kit/850648/850648-84,/users/admin/sds/sds-kit/850645/ldr.bo,/users/admin/sds/sds-kit/850816/algol.bo + +boot cr + +# Simulation stopped, P: 22713 (BRU 22712) + +# Compiler options +# dep bpt1 1 down, use card reader +# dep bpt2 1 down, use card punch +# dep bpt3 1 down, type source +# dep bpt4 0 down, call objty before codout + +# dep p 7347 no transfer address on algol.bo, start at 7347 + +# c + +#^E + +# Simulation stopped, P: 04534 (SKS 12006) waiting for CR +# attach source code +#att cr source + +#c + \ No newline at end of file diff --git a/850816/prime b/850816/prime new file mode 100644 index 0000000..588eec0 --- /dev/null +++ b/850816/prime @@ -0,0 +1 @@ +Àba@  I@@b@@  @@ d@a@I@ d@I@ a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  I@@@@@@   I@J@I I@ I@@@@@ d@a@I@J@@@bd@J@a@   @@  bJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Àbb@Q@ d@@b@@@ba@    @b@@  @@b bJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@bd@Q@ @b@@J@b I@   @b@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@bb@   @b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@@@@@b I@ d@Q@@b@@ I@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@@@@@b I@   @b@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@@@@@@@@@R@@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@@@@@@@@  @@R@b  @b@@b@J@@@bI@  @b@@  @R@bI@ @b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@@@@@@@@@@@@@b Q@J@ @b@@@b  @b@@Jb@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@@@@@@@@@@@@@@@@@@@bI@  @b@@  @@@R@@@b d@Q@J@ @b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@@@@@@@@@@@@@@@@@@@b Q@J@ @@@bb@   @b@@ I@@@b bJ@@@b @@I@@b@@ @@  @@@@@@b  @b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@b  @b@@  J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Àba@    @b@@ I@@@b bJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@bb@   @b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@@@@@@@bb@Q@ d@@b@@@b I@ d@Q@@b@@  J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@@@@@@@@@@@@d@@R@@@R@@@@ @@@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@@@@@@@@@@@@@@@@@b  @b@@@bI@@b@@  @@b b@@@bI@  @b@@@b @@I@@b@@d@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@b  @b@@ I@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@â@   @R@bb@   @b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@b I@   @b@@ I@@I@@I@  I@ J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@@@@@ba@    @b@@ I@@@b bJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@@@@@@@@@@@bb@   @b@@ I@ I@@@bI@  I@ I@@@@ bJ@@@@@@b bJ@@  @@@b  @bJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@b I@ d@Q@@b@@ I@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@@@@I@  I@ @@@R@@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@„@@@R@b  d@I@@b@@@F@@@FJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@  I@@@bI@  I@ I@@@@ bJ@@ @@b bJ@@  J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@R@@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@  @@R@@@b  @b@@b@J @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@@@@@@@bI@  @b@@@bb@   @b@@ I@@@b bJ@@@b @@I@@b@@b@   @@@b  @b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@@@@@@@b Q@J@ @b@@@b  @b@@ Jb @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@@@@@@@@@@@bI@  @b@@@bb@   @b@@ I@@@b bJ@@ @@@R@@ L@@@@b  @b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@@@@@@@@@@@b Q@J@ @b@@ I@@@b bJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@À@@@@@@b @@I@@b@@  @J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/850816/prime.si b/850816/prime.si new file mode 100644 index 0000000..aba5aeb --- /dev/null +++ b/850816/prime.si @@ -0,0 +1,37 @@ +'COMMENT' PRIME FACTORIZATION. +INPUT = 7DIGITS,OUTPUT = FACTORS (ASCENDING ORDER); +'BOOLEAN' 'PROCEDURE' PRIME (N); + 'VALUE' N;'INTEGER' N; + 'BEGIN' + 'EXTERNAL' NEXT; + 'INTEGER' Q; + Q:= 2; + PRIME1:'IF' Q*Q>N 'THEN' PRIME:='TRUE' + 'ELSE' 'IF' N\Q*Q = N + 'THEN' PRIME := 'FALSE' + 'ELSE 'BEGIN' NEXT (Q); 'GO TO' I PRIME 1 'END' + 'END' PRIME; + +'PROCEDURE' NEXT (X); + 'BEGIN' + 'BOOLEAN' 'EXTERNAL' PRIME; + A:X := X + 1; + 'IF' 'NOT' PRIME (X) 'THEN' 'GO TO' A + 'END' NEXT; + +BEGIN:='BEGIN' + 'INTEGER' M, P, TYPEWRITER; + 'PROCEDURE' OUT (X); + 'BEGIN' OUTPUT (TYPEWRITER, 17); 10 (X); ENDIO 'END'; + 'EXTERNAL' NEXT; + TYPEWRITER := 1; +17:'FORMAT' "17"; + INPUT (TYPEWRITER, 17); IO (M); ENDIO; + P:= 2; + PRIME3: 'IF' P*P>M + 'THEN' 'BEGIN' OUT (M); 'GO TO' BEGIN 'END' + 'ELSE' 'IF' M\P*P=M + 'THEN' 'BEGIN' OUT (P); M := M/P 'END' + 'ELSE' NEXT (P); + 'GO TO' PRIME3; +'END' FACTORIZATION \ No newline at end of file