DataMuseum.dk

Presents historical artifacts from the history of:

CR80 Hard and Floppy Disks

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about CR80 Hard and Floppy Disks

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦5fed919f8⟧ TextFile

    Length: 1274 (0x4fa)
    Types: TextFile
    Names: »REPEAT.S«

Derivation

└─⟦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« 

TextFile

«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»