X-Git-Url: https://jxself.org/git/?p=pdp10-muddle.git;a=blobdiff_plain;f=mim%2Fdevelopment%2Fmim%2Fvaxc%2Fac.mud;fp=mim%2Fdevelopment%2Fmim%2Fvaxc%2Fac.mud;h=ba554219f1e26adb549c3a74d42f4d30f69d7f05;hp=0000000000000000000000000000000000000000;hb=d73ace3f3292e320b461b8fcd2e9f5dc5d9684d7;hpb=d530283ea60fb0ddcc28e9c5bd072456afe06e07 diff --git a/mim/development/mim/vaxc/ac.mud b/mim/development/mim/vaxc/ac.mud new file mode 100644 index 0000000..ba55421 --- /dev/null +++ b/mim/development/mim/vaxc/ac.mud @@ -0,0 +1,563 @@ + +> + > + .NUM <> <> .LVS <>] AC>> + + + >>> + )>> + '[AC-0 AC-1 AC-2 AC-3 AC-4 AC-5 AC-6 AC-7 AC-8 AC-9 AC-10 AC-M + AC-F AC-TP AC-P AC-PC] + '[AC-0 AC-1 AC-2 AC-3 AC-4 AC-5 AC-6 AC-7 AC-8 AC-9 AC-10 M F TP + P PC] + '[0 0 0 0 0 0 0 0 0 0 0 NAC-M NAC-F NAC-TP NAC-P NAC-PC]> + + + + + > + + + )) + >>> + ,ALL-ACS> + >> + + + > + >> + + >> ,VAR-LIST>> + + > ,VAR-LIST>> + +]>) + + + > + > + > + >>> + + >> + + >> + + > + >>>> + >)>)> + )>> + .VARS> + NORMAL> + +]>) + + + + > + ,ALL-ACS>)>> + .VARS> + NORMAL> + + ,USE-AC ,ALL-ACS>> + + + + <> <> <> <> <> <> <> ()> LINKVAR>> + + + + + + + + + + + > + LINKVAR>> + +"THIS OPERATION SAYS THAT THE TYPE-WORD, VALUE-WORD, COUNT, OR TYPE + OF A VARIABLE IS IN AN AC" + +) (FLUSH-DECL T) + "AUX" PAC LV (TIN? <>) (CIN? <>) (VIN? <>)) + #DECL ((LV) LINKVAR (AC) AC (SV) ) + > + > + )> + > + )> + )> + + .LV>)> + >> + + > + > + + > + > + > + ) + (<==? .KIND VALUE> + > + > + ) + (<==? .KIND TYPE> + > + > + ) + (<==? .KIND TYPE-WORD> + > + > + ) + (<==? .KIND COUNT> + > + > + ) + ()> + + > + > + >)>> + +)) + #DECL ((AC) AC (LV) LINKVAR) + > + .VARS> ) + (ELSE > )> + 1> > + )>> + +)) + #DECL ((LV) LINKVAR (AC) AC) + >> + +) + > + + )>> + + (TYP) ATOM) + > + ) + (<==? .TYP VALUE> ) + (<==? .TYP COUNT> )> + >> + + + > + > + > + >>> + + + .VAR> >> + .CACHE>> + +> + >> + +> + >>> + +> + >> + +> + >> + +> + >) + ()>> + +> + + + > + + >>>>) + (T)>> + +) "AUX" RES CACHE) + #DECL ((VAR) VARTBL (LVC) ) + >) + (ELSE + + >) + (>)> + > ) + (ELSE > )> + )> + .RES> + +) LV) + #DECL ((AC) AC (VAR) VARTBL) + > + + .AC> + >) + (<==? .AC> + >) + (<==? .AC> + >) + (<==? .AC> + >)> + > + > + > + >> + )>)>> + +>> + +) + > + >> + >> + ) + (.CACHE)>> + +) (ALL? <>) + "AUX" (VARS )) + + > + > + > + >)> + > + > + >)> + > + > + >)> + > + > + >)>)>)>> + .VARS>> + + + + > + + ,MUNG-AC ,ALL-ACS>> + +)) + #DECL ((AC1 AC2) AC) + > + + + + + >> + >> + >> + >>> + ,VARIABLE-CACHE>> + +) + .AC2) (<==? .AC2 .ACL> .AC1) (.ACL)>> + +) (VARS2 )) + #DECL ((AC1 AC2) AC) + + + .AC1> + ) + (<==? .AC1> + ) + (<==? .AC1> + ) + (<==? .AC1> + )>> + ,VARIABLE-CACHE> + >> + + >> .VARS2 .VARS1> + > + + .LEN> + .LEN>>>) + ( .LEN> + > + .LEN> + .LEN>>>) + ( .LEN>> !.TVEC]>)>)> + .VEC> + + + >> + +> + + .AC> + + > + +>> + + ,UNPROTECT ,ALL-ACS>> + + + + > + > + +> + >> + +) ()>> + + + + )>> + +> >> + +>> + + <==? .SAC>> + <==? .STYPE COUNT> + <==? .SAC>>> + ,STATUS-AC) + ( <==? .STYPE ,STATUS-TYPE>> + )>> + + + >> + + > + "VALUE" .OUTCHAN> + "TYPE" .OUTCHAN> + "TYPE-WORD" .OUTCHAN> + "COUNT" .OUTCHAN> + > + + (TYP) STRING (OUTCHAN) ) + + + + >)>> + + )> + + + > + + > > + > + +)> + + .AC> ) + (<==? .AC> ) + (<==? .AC> ) + (<==? .AC> )> + >> + > + +)) + > + +> + + ) + (<==? .PREF NONE> ) + ( <==? .PREF PREF-TYPE>> + + >) + ( <==? .PREF PREF-VAL>> + + >) + ()>> + + 2> >)> + >> + >>>> + + > + )>) + (<==? .HOWFREE? STORED> + + > + )>) + (ELSE )>)> + >>> + + (HOWFREE?) ATOM) + + > + + >) + (<==? .HOWFREE? STORED> + >) + ()>>> + .ACLIST>> + +> + > + ) + (<==? .AC > + ) + (<==? .AC > + ) + (<==? .AC > + ) + ()>) + ()>> + + + > + > + >>>) + (<==? .AC > + > + >>>) + (<==? .AC > + > + >>>) + (<==? .AC > + > + >>>) + ()>> + > + .VAL> + + + >> + >>> + >>)>> + > + .VAL> + + ,MUNG-AC ,ALL-ACS>> + + + LONG> + ) + (<==? .LEN WORD> + >) + (<==? .LEN BYTE> + >)>> + +)) + #DECL ((AC) AC) + <>) (ELSE )>> + +)) >>