|
|
DataMuseum.dkPresents historical artifacts from the history of: CR80 Hard and Floppy Disks |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about CR80 Hard and Floppy Disks Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 1736 (0x6c8)
Types: TextFile
Names: »TEST_5.S«
└─⟦18a2fd90d⟧ Bits:30005144 8" CR80 Floppy CR80FD_0132 ( CR/D/2479 CRD2479: En-CPU CPU/CACHE TEST- PROGRAMMER node: master: CRP5 )
└─⟦56889de57⟧
└─⟦this⟧ »TEST_5.S«
PROCEDURE TEST_5 (R6);
"*********************************************************************
"
" The program tests for occurrence of cache-parity errors.
"
" The cache is read (loop of reading 1k memory-locations) for
" approx. 8 seconds, after which the number of cache-parity
" errors is written out on the terminal.
"
" This is repeated COUNT times
"
"*********************************************************************
VAR
SAVE: ARRAY[0..7] OF INTEGER;
LOG_PAGE1: INTEGER;
LOCAL_COUNT: INTEGER;
LABEL ONCE_AGAIN;
BEGIN
R7=>SAVE[7];
STC(6,ADDRESS(SAVE[7])=>R7);
OUTNEWLINE(R6);
OUTTEXT(ADDRESS('CACHE-PARITY-ERROR TEST (:0:)')=>R3,R6);
OUTNEWLINE(R6);
FLUSHOUT(R6);
INIT_DTTS(R6);
COUNT=>R0=>LOCAL_COUNT;
WHILE R0<>0 DO
BEGIN "1
0=>R0;
LDT(R0);
ONCE_AGAIN:
#A000=>R1;
#A400=>R2;
WHILE R2<>R1 DO
BEGIN
R1@INTEGER=>R3;
R1+1;
END;
SVT(R0);
R0 SHIFTRL #F=>R0;
IF R0<>0 THEN GOTO ONCE_AGAIN;
#1234=>R0;
RCR;
R0 EXTRACT #F=>R0=>NEW_CER_VALUE;
OLD_CER_VALUE=>R1;
IF R1<>R0 THEN
BEGIN
OUTTEXT(ADDRESS('OLD CERS = (:0:)')=>R3,R6);
OLD_CER_VALUE=>R0=>R3;
OUTHEX(R3,R6);
OUTTEXT(ADDRESS(' NEW CERS = (:0:)')=>R3,R6);
NEW_CER_VALUE=>R1=>R3;
OUTHEX(R3,R6);
R1-R0=>R0;
OUTTEXT(ADDRESS(' DIFF = (:0:)')=>R3,R6);
R0=>R3;
OUTHEX(R3,R6);
OUTNEWLINE(R6);
FLUSHOUT(R6);
END
ELSE
BEGIN
OUTTEXT(ADDRESS('NO CACHE PARITY ERRORS (:0:)')=>R3,R6);
OUTNEWLINE(R6);
FLUSHOUT(R6);
END;
NEW_CER_VALUE=>R0=>OLD_CER_VALUE;
LOCAL_COUNT=>R0-1=>LOCAL_COUNT;
END; "1
UNS(7,ADDRESS(SAVE[0])=>R7);
EXIT(R6);
END; "END OF TEST5 "