//**************************************************************************************
//*** ECLutvfc7.TST
//*** Rev.H May 29.1979
//*** Rev.F February16.1979
//*** Rev.B August 4.1978
//*** V. Vysin
//**************************************************************************************
//**************************************************************************************
//To include the following definition files in the compilation
get "tester.d"
get "ECLutvfc.d"
//**************************************************************************************
//{ODataM: Odata.00, Odata.01, Odata.02, Odata.03, Odata.04, Odata.05, Odata.06, Odata.07}
//{ODataL: Odata.08, Odata.09, Odata.10, Odata.11, Odata.12, Odata.13, Odata.14, Odata.15}
//{OData0: Odata.00, Odata.01, Odata.02, Odata.03}
//{OData1: Odata.04, Odata.05, Odata.06, Odata.07}
//{OData2: Odata.08, Odata.09, Odata.10, Odata.11}
//{OData3: Odata.12, Odata.13, Odata.14, Odata.15}
//{IAddr: Iaddr.0, Iaddr.1, Iaddr.2, Iaddr.3, Iaddr.5, Iaddr.6, Iaddr.7}
let Test71() be
[
Start()
Switch()
NClk(1)
let pat1 = table [ #1; #2; #4; #10 ]
let pat2 = table [ #16; #15; #13; #7 ]
let chan =0 ;//the ECL-ONLY test clip should be in location b-2
S3: for j=0 to 3 do
[
OddLine() // to write into Even buffer
SetBusValue(8,167,165,164,163,162,159,156,155,#100 ); // starting write address
ClkStart()
ClkIAR()
SetBusValue(8,167,165,164,163,162,159,156,155,#000 ); // blocks counting
ClkStart()
SetBusValue(4,167,165,164,163,pat1!j)
SetBusValue(4,162,159,156,155,pat1!j)
SetBusValue(4,139,138,137,136,pat1!j)
SetBusValue(4,135,134,133,129,pat1!j)
WriteAll()
// this writes byte 0 into terminal 0, byte 1 into terminal 3 ...
//Reading it back now
Switch()
NClko(#140); //this flips into EvenLine to read Even buffer
// #140 to keep PBlank=0 and both bckgds=1
Compare("MyTask",GetPinValue(108),1," ",1,j)
SetBusValue(8,167,165,164,163,162,159,156,155,#200)
ClkStart()
NClk(1) // Nclks now will only reload
NClk(1) //loads <0> into first level reg(u36,35,33,32)
if chan ls 2 do
[
NClk(1) // to load u40..addtl clk for ch 0 & 1
]
let sel1 = table [ 1; 0; 1; 0 ]
let sel2 = table [ 1; 1; 0; 0 ]
// sel2 is msb
// because inverted value selects, the table is inverted to take the lsb of T reg first
// we shall now examine all four bits in channel chan
let v1 = pat1!j
let v2 = pat2!j
for g=0 to 3 do
[
let h=10*j+g
SetPinValue(145,sel2!g)
SetPinValue(209,sel1!g)
SetPinValue(140,0)
EClock() // sets IMeF
Compare( " IOAttn'",GetPinValue(210),v2,"", 3,h)
SetPinValue(140,1)
EClock() //resets IMeF
v2 = v2 rshift 1
]
]
if chan eq 0 do
[
[
DisplayString("*nTest of the terminal T0 revealed that the said terminal ")
DisplayString("*n is in a fine shape. ")
DisplayString("*n Move the test clip to position c-2")
DisplayString("*n Press any key on the keyboard to continue the test,- Thank you.")
while Endofs(keys) do[]
Breakpoint(9)
]
Delay(1)
chan = 1
goto S3
// lets go to the next channel now
]
if chan eq 1 do
[
[
DisplayString("*nTest of the terminal T1 revealed that the said terminal ")
DisplayString("*n,is in a fine shape")
DisplayString("*n move the marked test clip to position g-2 ?")
DisplayString("*n Press any key on the keyboard for continuation? - Thank you.")
while Endofs(keys) do[]
Breakpoint(9)
]
Delay(1)
chan = 2
goto S3
]
if chan eq 2 do
[
[
DisplayString("*nTest of the terminal T2 revealed that the said terminal ")
DisplayString("*n is in a fine shape. Would you now please")
DisplayString("*n move the test clip to position h-2 ?")
DisplayString("*n press any key on my keyboard for continuation? - Thank you.")
while Endofs(keys) do[]
Breakpoint(9)
]
Delay(1)
chan = 3
goto S3
]
if chan eq 3 do
[
[
DisplayString("*nTerminal T3 is allright")
DisplayString("*nMove the marked test clip to position f-2 ")
DisplayString("*nAfter having done so,would you now press any key on the keyboard for continuation? - Thank you.")
while Endofs(keys) do[]
Breakpoint(9)
]
Delay(1)
]
Stop()
]
//UNKNOWN SIGNALS REQUIRED: