|
|
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: 1274 (0x4fa)
Types: TextFile
Names: »REPEAT.S«
└─⟦f81e11cf7⟧ Bits:30005196 8" CR80 Floppy CR80FD_0194 ( CR/D/2497 TEST-TDX VS0102 Source moduler Att. Holger Bay 820208/AEK )
└─⟦d066df9e9⟧
└─⟦this⟧ »REPEAT.S«
«ff»
"REPEAT.S"
"----------------"
PROCEDURE INT_REPEAT(PC, SP : INTEGER;VAR CC : COMPLETION_CODE);
"**********************************************************************
AUTHOR: YY
DATE: YY
***********************************************************************
COMMENTS:
**********************************************************************"
CONST REPEATING = TRUE;
VAR I : INTEGER;
TIMES_TO_REPEAT,
NEWPC : INTEGER;
DUMMY : BOOLEAN;
BEGIN
CLEARBREAKS;
VM := CODE[PC + XVARMASK];
GET_PARAMETER(VM, 1, PC, SP, TIMES_TO_REPEAT);
NEWPC := PC + CODE[PC + XPARAMS] + 3;
I := 0;
WHILE (I <> TIMES_TO_REPEAT) AND (NOT BREAKED) DO
BEGIN
IF CODE[NEWPC] = ENDREPEAT_CMD THEN
BEGIN
NEWPC := CODE[NEWPC + XPARAMS + 1] + 4; "REPEAT START"
I := ADD(I, 1);
END
ELSE
BEGIN
INTERPRET(NEWPC, SP);
NEWPC := NEWPC + CODE[NEWPC + XPARAMS] + 3;
CHECK_INIT_OPS(REPEATING, DUMMY);
END;
END;
IF I <> TIMES_TO_REPEAT THEN
BEGIN
WRITETEXT('*** REPEATING BREAKED ***(:0:)');
WRITETEXT(' REPEAT PERFORMED (:0:)');
WRITEINT (I);
WRITETEXT(' TIMES.(:0:)');
WRITENL;
END;
END; " INT_REPEAT " «a5»