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 - download
Length: 4422 (0x1146) Types: TextFile Names: »CONINPUT1.S«
└─⟦17728abc9⟧ Bits:30005143 8" CR80 Floppy CR80FD_0130 ( CR/D/1422 FLERCPU Source ) └─⟦1815caf3d⟧ └─ ⟦this⟧ »CONINPUT1.S«
PROCEDURE CONINPUT1 (R6); "************************************************************************* "************************************************************************* VAR SAVE: ARRAY[0..7] OF INTEGER; INPUT_LAST: INTEGER; LABEL OUTT; BEGIN R7=>SAVE[7]; STC(6,ADDRESS(SAVE[7])=>R7); MENU1(R6); "START OF INPUT FROM CONSOLE" WHILE R0=R0 DO BEGIN "1" 0=>R1=>EXIT_STATUS; OUTTEXT(ADDRESS('-->(:0:)')=>R3,R6); FLUSHOUT(R6); #0=>R0; R0=>INPUT_POINTER; WHILE R3<>#D DO BEGIN IN_BYTE(R3,R6); R3=>R7; R7=>INPUTSTRING[R0]; R7=>INPUT_LAST; R0+1; END; 0=>R0; R0=>INPUT_POINTER; "AT THIS POINT, THE ARRAY >INPUTSTRING< CONTAINS VALID CHARACTERS, "THE LAST VALID CHARACTER DESIGNATED BY INPUT_LAST. "INPUT_POINTER POINTS AT THE FIRST BYTE. "START OF INITIAL CMI #0=>R4; 'T'=>R1; INPUTSTRING[R4]=>R2; IF R2=R1 THEN BEGIN TEST_NUMBER(R6); END ELSE BEGIN 'Q'=>R1; IF R2=R1 THEN BEGIN #D000=>R3; 0=>R5; CIO(R5,R3); END ELSE BEGIN 'S'=>R1; IF R2=R1 THEN BEGIN SWITCH_NUMBER(R6); END ELSE BEGIN 'U'=>R1; IF R2=R1 THEN BEGIN UNIT_MAP(R6); END ELSE BEGIN 'C'=>R1; IF R1=R2 THEN BEGIN COUNT_LOAD(R6); END ELSE BEGIN 'M'=>R1; IF R1=R2 THEN BEGIN 1=>R1=>MENU_ENABLE; MENU1(R6); END ELSE BEGIN 'R'=>R1; IF R1=R2 THEN BEGIN SET_REPORTLEV(R6); END ELSE BEGIN 'I'=>R1; IF R1=R2 THEN BEGIN INFO(R6); END ELSE BEGIN 'D'=>R1; IF R1=R2 THEN BEGIN 1=>R1=>DICA; END ELSE BEGIN 'E'=>R1; IF R1=R2 THEN BEGIN 0=>R1=>DICA; END ELSE BEGIN 'W'=>R1; IF R1=R2 THEN BEGIN TIMEOUT(R6); END ELSE BEGIN INPUTJUNK1(R6); END; END; END; END; END; END; END; END; END; END; END; EXIT_STATUS=>R1; IF R1=1 THEN GOTO OUTT; END; "1" OUTT: UNS(7,ADDRESS(SAVE[0])=>R7); EXIT(R6); END;