|
|
DataMuseum.dkPresents historical artifacts from the history of: RegneCentralen RC850 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about RegneCentralen RC850 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 8192 (0x2000)
Types: TextFile
Names: »DSIMTINT.PAS«
└─⟦da1b76629⟧ Bits:30008866 Indeholder bla. RCKAT
└─⟦this⟧ »DSIMTINT.PAS«
OVERLAY PROCEDURE INIT(FUN: INTEGER);
VAR
T1: ARRAYÆ0..5Å OF STRINGÆ37Å;
T2: ARRAYÆ0..7Å OF STRINGÆ37Å;
T3: ARRAYÆ0..2Å OF STRINGÆ37Å;
FUNCTION STROUT(S: STRING80): STRING80;
VAR STR: STRING80; I: INTEGER;
BEGIN
IF LEN(S)=0 THEN STROUT:='<ingen værdi>' ELSE
BEGIN
STR:='';
FOR I:=1 TO LEN(S) DO
BEGIN
IF SÆIÅ=CHR(10) THEN STR:=CONCAT(STR,'<LF>') ELSE
IF SÆIÅ=CHR(13) THEN STR:=CONCAT(STR,'<CR>') ELSE
IF SÆIÅ=CHR(27) THEN STR:=CONCAT(STR,'<ESC>') ELSE
IF SÆIÅ<CHR(32) THEN STR:=CONCAT(STR,'^',CHR(ORD(SÆIÅ)+64)) ELSE
STR:=CONCAT(STR,SÆIÅ);
END;
STROUT:=STR;
END;
END;
FUNCTION JN(VAR B: BOOLEAN): STRING14;
BEGIN
IF B THEN JN:='Ja' ELSE JN:='Nej';
END;
PROCEDURE INSEK(VAR S: STRING28);
BEGIN
WRITE(' Ny: ');
S:='';
L:=0;
REPEAT
REPEAT UNTIL GETCON(CH);
IF CH=CHR(27) THEN
BEGIN
WRITE(STROUT(CH));
L:=SUCC(L);
END ELSE
BEGIN
IF L=1 THEN S:=CONCAT(S,CHR(27));
S:=CONCAT(S,CH);
L:=0;
WRITE(STROUT(CH));
END;
UNTIL L=2;
FOR L:=1 TO 10 DO WRITE(CHR(08));
FOR L:=1 TO 10 DO WRITE(' ');
END;
BEGIN
T1Æ0Å:='7 bit , Kompression , CRTLtegn ';
T1Æ1Å:='7 bit , Kompression , No CRTLtegn ';
T1Æ2Å:='7 bit , No kompression , CRTLtegn ';
T1Æ3Å:='7 bit , No kompression , No CRTLtegn ';
T1Æ4Å:='8 bit , No kompression , CRTLtegn ';
T1Æ5Å:='8 bit , No kompression , No CRTLtegn ';
T2Æ0Å:='7 bit , Even paritet , 2 stopbits ';
T2Æ1Å:='7 bit , Odd paritet , 2 stopbits ';
T2Æ2Å:='7 bit , Even paritet , 1 stopbit ';
T2Æ3Å:='7 bit , Odd paritet , 1 stopbit ';
T2Æ4Å:='8 bit , Ingen paritet , 2 stopbits ';
T2Æ5Å:='8 bit , Ingen paritet , 1 stopbit ';
T2Æ6Å:='8 bit , Even paritet , 1 stopbits ';
T2Æ7Å:='8 bit , Odd paritet , 1 stopbits ';
T3Æ0Å:='Intet check ';
T3Æ1Å:='Check hvert enkelt tegn, i 3 linier ';
T3Æ2Å:='Vent på CRTL-Q efter CR/LF ';
IF FUN=1 THEN
BEGIN
ASSIGN(FIL,'DSIMT.DAT');
RESET(FIL);
IF IORES<>0 THEN
BEGIN
WRITELN; WRITELN; WRITELN;
WRITELN('PAS PÅ!!!! --> Kan ikke finde "DSIMT.DAT" !!');
WRITELN; WRITELN;
WRITE('Tryk return ');
READLN(FILN);
WRITELN; WRITELN; WRITELN;
FILL(DEF.CLRSKM,128,0);
END ELSE
BEGIN
BLOCKREAD(FIL,DEF.CLRSKM,1);
END;
CLOSE(FIL);
DEFBUF:=1;
VISSTR:='?';
BUF_CLR(1); BUF_CLR(2);
END;
IF FUN<3 THEN
BEGIN
WRITE(DEF.CLRSKM);
WRITELN('XXXXXX XXXXXXX XXXX XX XX XXXXXX');
WRITELN('XX XX XX XX XXX XXX XX');
WRITELN('XX XX XXXXXXX XX XX X XX XX');
WRITELN('XX XX XX XX XX XX XX');
WRITELN('XXXXXX XXXXXXX XXXX XX XX XX');
WRITELN;
WRITELN(' Version 15.01.84');
WRITELN;
WRITELN;
WRITELN('Denne version af DSIMT er konfigureret med:');
WRITELN;
WRITELN(' Slet skærm sekvens: ',STROUT(DEF.CLRSKM));
WRITELN(' Vært pause sekvens: ',STROUT(DEF.PAUSE));
WRITELN(' Slut trmis sekvens: ',STROUT(DEF.SLUTTR));
WRITELN(' Online/lokal skift: ',STROUT(DEF.SKIFT));
WRITELN(' Bufferindhold-type: ',T1ÆDEF.BFTYPEÅ);
WRITELN(' Transmissions-type: ',T2ÆDEF.TRTYPEÅ);
WRITELN(' Transmissions-chck: ',T3ÆDEF.TRANCHÅ);
WRITELN(' Transmissions-rate: ',DEF.BURATE);
WRITELN(' Ekstra LF efter CR: ',JN(DEF.ADDLF));
WRITELN;
WRITELN;
END;
IF FUN=3 THEN
BEGIN
WRITELN;
WRITELN(' Svar J eller N til rettelse.');
WRITELN(' BEMÆRK: Det er ikke muligt at editere indtastede sekvenser.');
WRITELN(' Er der fejl, så ret en gang mere.');
WRITELN(' Afslut indtastede sekvenser med <ESC><ESC>');
WRITELN;
FOR I:=1 TO 9 DO
BEGIN
CASE I OF
1: WRITE(' Ret "Slet skærm sekvens" ? (J/N): ');
2: WRITE(' Ret "Vært pause sekvens" ? (J/N): ');
3: WRITE(' Ret "Slut trmit sekvens" ? (J/N): ');
4: WRITE(' Ret "Online/lokal skift" ? (J/N): ');
5: WRITE(' Ret "Bufferindhold-type" ? (J/N): ');
6: WRITE(' Ret "Transmissions-type" ? (J/N): ');
7: WRITE(' Ret "Transmissions-chck" ? (J/N): ');
8: WRITE(' Byt "Transmissions-rate" ? (J/N): ');
9: WRITE(' Byt "Ekstra LF efter CR" ? (J/N): ');
END;
REPEAT UNTIL GETCON(CH) AND (CH IN Æ'J','N'Å);
WRITE(CH);
IF CH='J' THEN
BEGIN
CASE I OF
1: INSEK(DEF.CLRSKM);
2: INSEK(DEF.PAUSE);
3: INSEK(DEF.SLUTTR);
4: BEGIN
INSEK(DEF.SKIFT);
IF LEN(DEF.SKIFT)>1 THEN DEF.SKIFTÆ0Å:=CHR(1) ELSE
IF LEN(DEF.SKIFT)<1 THEN DEF.SKIFT:=CHR(27);
END;
5: BEGIN
FOR J:=0 TO 5 DO
BEGIN
WRITELN;
WRITE(SUCC(J):4,': "',T1ÆJÅ,'"');
END;
WRITE(' Ny: ');
REPEAT UNTIL GETCON(CH) AND (CH IN Æ'1'..'6'Å);
WRITE(CH);
DEF.BFTYPE:=ORD(CH)-ORD('1');
END;
6: BEGIN
FOR J:=0 TO 7 DO
BEGIN
WRITELN;
WRITE(SUCC(J):4,': "',T2ÆJÅ,'"');
END;
WRITE(' Ny: ');
REPEAT UNTIL GETCON(CH) AND (CH IN Æ'1'..'8'Å);
WRITE(CH);
DEF.TRTYPE:=ORD(CH)-ORD('1');
END;
7: BEGIN
FOR J:=0 TO 2 DO
BEGIN
WRITELN;
WRITE(SUCC(J):4,': "',T3ÆJÅ,'"');
END;
WRITE(' Ny: ');
REPEAT UNTIL GETCON(CH) AND (CH IN Æ'1'..'3'Å);
WRITE(CH);
DEF.TRANCH:=ORD(CH)-ORD('1');
END;
8: IF DEF.BURATE=1200 THEN
DEF.BURATE:=300 ELSE DEF.BURATE:=1200;
9: DEF.ADDLF :=NOT DEF.ADDLF;
END;
END;
WRITELN;
END;
WRITELN;
WRITE(' Skal de nye parametre gemmes i "DSIMT.DAT" ? (J/N): ');
REPEAT UNTIL GETCON(CH) AND (CH IN Æ'J','N'Å);
WRITELN(CH);
IF CH='J' THEN
BEGIN
ASSIGN(FIL,'DSIMT.DAT');
REWRITE(FIL);
BLOCKWRITE(FIL,DEF.CLRSKM,1);
IF IORES<>0 THEN WRITELN(' I/O FEJL !!');
CLOSE(FIL);
END;
END;
END;
«eof»