|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 DFS Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 DFS Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 1112 (0x458)
Types: EM, TextFile
Names: »MAKE_BRANCH.EM«
└─⟦9031b0687⟧ Bits:30000407 8mm tape, Rational 1000, DFS, D_12_7_3
└─⟦this⟧ »MAKE_BRANCH.EM«
[eq,%1%,]
[set addr [read AT ADDRESS : ]]
[else]
[set addr %1%]
[end]
[eq,%2%,]
[set dest [read TO ADDRESS : ]]
[else]
[set dest %2%]
[end]
[set qwcs [xeq seq READ_WCS [var ADDR]]]
[set disp FALSE]
[#eq [#extract [var qwcs] 22 4] C][set disp TRUE][end]
[#eq [#extract [var qwcs] 22 4] D][set disp TRUE][end]
[#eq [#extract [var qwcs] 22 4] E][set disp TRUE][end]
[eq [var disp] TRUE]
[write THERE WAS A DISPATCH AT THIS ADDR - WILL NOOP SEQ_RANDOM & MAR_CNTL & MEM_START]
[eq [read IF YOU WISH TO CHANGE IT TO A BRANCH. DO IT? (Y OR N),],Y]
[set crap [xeq seq WRITE_WCS 0 [var ADDR],
[or [lshift [var dest] 20] [or 0E000000 [and 0000C0FFF780 [var qwcs]]]]]]
[xeq typ WRITE_WCS [var ADDR],
[and FFFFFFFFFF0F [arg 1 [xeq typ READ_WCS [var ADDR] 0]]],0]
[xeq fiu WRITE_WCS [var ADDR],
[or 6400 [and FFFFFFFF83FF [arg 1 [xeq fiu READ_WCS [var ADDR] 0]]]],0]
[end]
[else]
[set crap [xeq seq WRITE_WCS 0 [var ADDR],
[or [lshift [var dest] 20] [or 0E000000 [and 0000C0FFF7FF [var qwcs]]]]]]
[end]
[kill addr]
[kill dest]
[kill qwcs]
[kill disp]
[kill crap]