mirror of
https://github.com/PDP-10/its.git
synced 2026-01-27 12:42:10 +00:00
Muddle library files courtesy of Rick Shiffman.
Files are from RRS; AR5 MUDDLE on ToTS tape 9006256. Some timestamps are from DM _TAPE files.
This commit is contained in:
50
doc/rrs/jsys.order
Normal file
50
doc/rrs/jsys.order
Normal file
@@ -0,0 +1,50 @@
|
||||
JSYS PACKAGE
|
||||
.... .......
|
||||
|
||||
THIS PACKAGE IS A JSYS HANDLER FOR TENEX AND TWINEX MUDDLE.
|
||||
THERE ARE TWO RSUBRS, JSYS AND ADR. ALSO THERE IS AN OBLIST CALL J THAT
|
||||
HAS THE ATOMS WHO'S PNAMES ARE THE NAMES OF THE 10X JSYS'S. THE GVALS
|
||||
OF THESE ATOMS ARE THE RIGHT HALFS OF THE JSYS'S.
|
||||
|
||||
THE RSUBR ADR TAKES ONE ARGUMENT. THIS IS EITHER A STRING OR
|
||||
AN UVECTOR. ADR RETURNS A BYTE POINTER TO A STRING OR THE ADDRESS OF
|
||||
THE FIRST WORD IN THE UVECTOR.
|
||||
|
||||
THE RSUBR JSYS IS USED TO EXECUTE THE JSYS OF YOUR CHOICE. IT
|
||||
HAS FIVE REQUIRED ARGUMENTS (PRIMTYPE WORD) AND AN OPTIONAL SIXTH ONE,
|
||||
WHICH IS OF TYPE VECTOR (<VECTOR [2 <PRIMTYPE WORD>]>). THE FIRST ARG
|
||||
IS THE THE RIGHT HALF OF THE JSYS TO PREFORM. ARGS 2 - 4 ARE THE ACS
|
||||
1 - 3. THE 5TH ARG IS THE ADDRESS OF THE AC TO RETURN. THE SIXTH ARG
|
||||
IS AN OPTIONAL TWO VECTOR FOR THE RESALTS TO RETURNED IN. IF THIS
|
||||
ARG IS MISSING THEN JSYS PUTS ITS RESALTS INTO THE GVAL OF THE ATOM
|
||||
JSYSVECTOR!-IJSYS!-JSYS!-PACKAGE.
|
||||
JSYS RETURNS A TWO ELEMENT VECTOR (<VECTOR WORD FIX>). THE
|
||||
FIRST ELEMENT IS THE VALUE OF THE AC POINTED TO BY ARG 5, AND THE
|
||||
SECOND ELEMENT IS THE SKIP COUNT OF THE JSYS THAT WAS EXECUTED.
|
||||
|
||||
EXAMPLE 1
|
||||
<JSYS ,SOUT!-J
|
||||
<1 .OUTCHAN>
|
||||
<ADR <SET S "THIS IS A TEST">>
|
||||
<- <LENGTH .S>>
|
||||
2> ;"OUTPUT THE STRING .S ON OUTCHAN"$
|
||||
|
||||
EXAMPLE 2
|
||||
<SET FOO
|
||||
<CHTYPE <1 <JSYS ,NIN!-J
|
||||
<1 .INCHAN>
|
||||
0
|
||||
10
|
||||
2>>
|
||||
FIX>> ;"READ THE NEXT FIXED NUMBER TYPED ON INCHAN
|
||||
IN BASE TEN AND SET THE LVAL OF FOO TO THE
|
||||
NUMBER."$
|
||||
|
||||
|
||||
--- NOTE ---
|
||||
THIS PACKAGE OFFERS THE 10X MDL HACKERS HUNDREDS OF WAYS TO SCREW THERE
|
||||
CORE IMAGE OF MUDDLE UP, DELETE THERE FILES, OR LOG OUT THERE JOB.
|
||||
BECAUSE OF THIS I TAKE NO RESPONSIBILITY FOR THE USE OF THIS PACKAGE.
|
||||
RRS
|
||||
|
||||
|
||||
60
doc/rrs/subsys.order
Normal file
60
doc/rrs/subsys.order
Normal file
@@ -0,0 +1,60 @@
|
||||
|
||||
SUBSYS PACKAGE
|
||||
------ -------
|
||||
|
||||
THIS PACKAGE WILL LET THE TOPS-20 MUDDLE USER EXECUTE ANY 'EXE' FILE
|
||||
AS AN INFERIOR TO MUDDLE. AT THE MINUTE SUBSYS IS THE ONLY RSUBR IN THE
|
||||
PACKAGE. THIS PACKAGE USES THE JSYS PACKAGE.
|
||||
|
||||
SUBSYS TAKES ONE OPTIONAL ARGUMENT OF TYPE STRING. THE STRING IS THE
|
||||
NAME OF THE NAME OF THE FILE TO RUN AS AN INFERIOR TO MUDDLE. THIS ARGUMENT
|
||||
WILL DEFAULT TO "<SYSTEM>EXEC.EXE", THUS <SUBSYS>$ WILL RUN THE EXEC.
|
||||
SUBSYS RETURNS THE FORK HANDLE OF THE LOWER FORK WHEN IT QUITS. THE
|
||||
FORK HANDLE IS OF TYPE WORD AND WILL BE USED BE OTHER RSURS ADDED TO
|
||||
THIS PACKAGE.
|
||||
|
||||
EX. 1.1
|
||||
--- ---
|
||||
<SUBSYS> ;"THIS WILL RUN AN EXEC"$
|
||||
|
||||
EX. 1.2
|
||||
___ ___
|
||||
<SUBSYS "<MDL>MDL104.EXE"> ;"RUN AN INFERIOR MUDDLE"$
|
||||
|
||||
|
||||
|
||||
THE RSUBR "CONTINUE" LETS THE CONTINUE A FORK THAT HE QUIT. IT ACTS
|
||||
LIKE A $P FROM DDT. CONTINUE TAKES ONE ARGUMENT OF PRIMTYPE WORD.
|
||||
THIS ARGUMENTS IS THE FORK HANDLE OF THE FORK TO RESUME. IT SHOULD
|
||||
BE A VALID INFERIOR FORK HANDLE. CONTINUE RETURNS THE FORK HANDLE
|
||||
WHEN THE LOWER FORK QUITS.
|
||||
|
||||
EX. 2.1
|
||||
--- ---
|
||||
<SET FH <SUBSYS>> ;"RUN AN EXEC AS A LOWER FORK"$
|
||||
@;DO SOMETHING
|
||||
@POP
|
||||
#WORD *400XXX* ;"THIS IS THE FORK HANDLE .FH"
|
||||
;"PLAY WITH MDL"
|
||||
<CONTINE .FH> ;"CONTINUE THE EXEC"$
|
||||
@DIR <FOO>*.* ;DIR OF FOO'S DIRECTORY
|
||||
...........
|
||||
|
||||
|
||||
|
||||
KILLFORK IS THE RSUBR TO KILL A LOWER FORK, SINCE WHEN YOU QUIT A
|
||||
LOWER FORK IT DOESNT DIE. KILLFORK TAKES ONE ARGUMENT OF PRIMTYE
|
||||
WORD, THIS IS THE VALID FORK HANDLE OF THE PROCESS TO KILL. KILLFORK
|
||||
CAN'T BE UNDONE, ALSO ALL THE INFERIORS OF THE KILLED FORK ARE
|
||||
KILLED.
|
||||
|
||||
EX. 3.1
|
||||
--- ---
|
||||
|
||||
@; LETS KILL THE EXEC FROM EXAMPLE 2!
|
||||
@POP
|
||||
#WORD *400XXX*
|
||||
<KILLFORK .FH> ;"THE EXEC IS KILLED"$
|
||||
#WORD *400XXX* ;"FREE FORK HANDLE. NOT GOOD FOR ANYTHING"
|
||||
|
||||
|
||||
16
doc/rrs/uvbyte.order
Normal file
16
doc/rrs/uvbyte.order
Normal file
@@ -0,0 +1,16 @@
|
||||
The UVBYTES package has now been released to the world, it will work on
|
||||
both XXs and ITS. There is one function in this package, UV-BYTES. The
|
||||
purpose of UV-BYTES is to corrupt UVECTORs into BYTES of any bytesize.
|
||||
It does this by consing up a bytpointer of the requested byte size to
|
||||
the UVECTOR. Note, the BYTES created UV-BYTES will shear the same
|
||||
storage as the UVECTOR. The contents UVECTOR must be of primtype WORD.
|
||||
The main use of UV-BYTES is to create multiple windows of different
|
||||
bytesize to the same UVECTOR. The call to UV-BYTES follows.
|
||||
|
||||
|
||||
;"UV-BYTES RETURNS BYTES FOR ANY GIVEN BYTE SIZE TO A UVECTOR
|
||||
OF PRIMTYPE WORD. THE CALL TO THIS ROUTINE IS <UV-BYTES .UV .BSIZE>.
|
||||
UV-BYTES RETURNS AN OBJECT OF TYPE BYTES. ARGS ARE:
|
||||
.UV ........ A UVECTOR OF PRIMTYPE WORDS
|
||||
.BSIZE ..... THE BYTE SIZE OF THE DESIRED BYTES, MUST BE LEES THAN 36."
|
||||
|
||||
Reference in New Issue
Block a user