/* * tape controller */ .x P16L8 .i rdy- : 1 rd : 2 D = 3 TR- = 4 sel6- = 5 out- = 6 od- = 7 inwd- = 8 din = 9 dout = 11 S0fb = 18 S1fb = 17 stop = 13 .o dmrq = 19 S0o = 18 S1o = 17 S2o = 16 G373 = 15 TA- = 14 ir = 12 oe0 = 119 oe1 = 118 oe2 = 117 oe3 = 116 oe4 = 115 oe5 = 114 oe6 = 113 oe7 = 112 .f So = S0o S1o SFb = S0fb S1fb .e oe0 = 1 oe1 = 1 oe2 = D oe3 = !D oe4 = 1 oe5 = 1 oe6 = 0 oe7 = 1 Sfb = 3 - SFb SO = rdy- ? 0: (Sfb == 0) ? !TR- ? 0:1 : D? rd? (Sfb == 1) ? dout? 3:1 : (Sfb == 3) ? dout? 3:2 : (!TR- & !stop) ? 0:2 : (Sfb == 1) ? din ? 3:1 : (Sfb == 3) ? din ? 3:2 : (!TR- & !stop) ? 0:2 : rd? (Sfb == 1) ? (!sel6- & !inwd-) ? 3:1 : (Sfb == 3) ? inwd- ? 2:3 : !TR- ? 0:2 : (Sfb == 1) ? (!sel6- & !od-)? 3:1 : (Sfb == 3) ? !TR- ? 2:3 : out- ? 0:2 S0o = SO & 01 S1o = D & ((SO & 02) == 02) S2o = !D & ((SO & 02) == 02) TA- = (!rdy- & D) ? (Sfb == 2): rd? (Sfb == 2):(Sfb == 3) dmrq = !(!rdy- & D & (Sfb == 1)) ir = !(D ? (!sel6- & (!inwd- | !out-)) : rd ? (!sel6- & (!out- | (!inwd- & ((Sfb == 0) | (Sfb == 2))))) : !sel6- & (!inwd- | (!out- & (Sfb != 2))) ) G373 = !(din | !D)