//**************************************************************************************
//*** UTVFC6a.TST
//*** Rev. H May 29.1979
//*** Rev. F February 13,1979
//*** V. Vysin
//**************************************************************************************
//**************************************************************************************
//To include the following definition files in the compilation
get "tester.d"
get "UTVFC.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}
//{T0: T0D0, T0D1, T0D2, T0D3}
//{T1: T1D0, T1D1, T1D2, T1D3}
//{T2: T2D0, T2D1, T2D2, T2D3}
//{T3: T3D0, T3D1, T3D2, T3D3}
//{Buf0: Buf0B0, Buf0B1, Buf0B2, Buf0B3}
//{Buf1: Buf1B0, Buf1B1, Buf1B2, Buf1B3}
//{Buf2: Buf2B0, Buf2B1, Buf2B2, Buf2B3}
//{Buf3: Buf3B0, Buf3B1, Buf3B2, Buf3B3}
//{CTask: CTask.0, CTask.1, CTask.2, CTask.3}
// to test the Cursor Memory and associated hardware
let Test62() be
[
Start()
// We shall now test the T0 through T3 inputs of TSR
for i =0 to 1 do
[
OddLine() // to write into even buffer
SetBusValue(8,167,165,164,163,162,159,156,155,#000); // to block incrementing in both
ClkStart()
NClk(1)
ClkIAR()
SetBusValue(4,167,165,164,163,5 + 5*i)
SetBusValue(4,162,159,156,155,5 + 5*i)
SetBusValue(4,139,138,137,136,5 + 5*i)
SetBusValue(4,135,134,133,129,5 + 5*i)
EClock()
WriteAll()
Switch() // loads SCR,also loads CR & DR;flipsEvenLine
NClko(#140)// EvenField=0,PreVS=0,both BlackBgds=1
SetBusValue(8,167,165,164,163,162,159,156,155,#200)
ClkStart()
NClk(1)
SetPinValue(145,0)
SetPinValue(209,0)
NClk(2) // to get data to T0,T1
Compare("T0 register",GetBusValue(4,236,237,238,239),5+5*i,"faulty ",100,i)
Compare("T1 register",GetBusValue(4,240,241,242,243),5+5*i,"faulty ",101,i)
Compare("T2 register",GetBusValue(4,251,250,249,248),5+5*i,"faulty ",102,i)
Compare("T3 register",GetBusValue(4,247,246,245,244),5+5*i,"faulty ",103,i)
PrepareTSR()
for m=0 to 23 do
[
EClock()
]
for k =0 to 15 do
[
let f=16*i+k
Compare("Idata.16",GetPinValue(106),(k+i)rem 2,"Sacrebleu,c'est tres..tres..ehm,wrong",62,f)
EClock()
]
EndTSR()
]
Stop()
]
and SetCAddr(arg) be
[
for caa=0 to 3 do
[
let cab=arg & 1
SetPinValue(31,cab)
SRClock()
arg=arg rshift 1
]
]
//After this,the rest of the TSR must feel well and so must we.That will be $50.
//UNKNOWN SIGNALS REQUIRED: