home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / 1989 / 10 / tricks / design.pas < prev    next >
Encoding:
Pascal/Delphi Source File  |  1989-07-11  |  3.7 KB  |  129 lines

  1. (* ------------------------------------------------------ *)
  2. (*                   DESIGN.PAS                           *)
  3. (*        erstellt menügesteuert die CONFIG.SYS           *)
  4. (*         (c) 1989 Klaus Vollmer  &  TOOLBOX             *)
  5. (* ------------------------------------------------------ *)
  6. PROGRAM Design;
  7.  
  8. USES Crt;
  9.  
  10. CONST
  11.   Datei = 'CONFIG.SYS';             { zu erstellende Datei }
  12.  
  13. VAR
  14.   ch, lw, inp                  : CHAR;
  15.   zeile                        : STRING[80];
  16.   f                            : TEXT;
  17.   br, bu, co, ded, dea, fi, la : BOOLEAN;
  18.   i, pb, rdg, gd, lv           : INTEGER;
  19.  
  20.   FUNCTION Menu : CHAR;
  21.   VAR
  22.     chm : CHAR;
  23.   BEGIN
  24.     REPEAT
  25.       chm := ReadKey;
  26.       chm := UpCase(chm);
  27.     UNTIL chm IN ['1', '2', '3', '4', '5', '6', '8', '0'];
  28.     IF chm = '8' THEN Halt;
  29.     Menu := chm;               { Tastenwert wird übergeben }
  30.   END;
  31.  
  32.   PROCEDURE Create(chc : CHAR);
  33.   BEGIN
  34.     GotoXY(6,20);
  35.     CASE chc OF    { Werte für CONFIG.SYS werden eingelesen }
  36.       '1' : br := TRUE;
  37.       '2' : BEGIN
  38.               bu := TRUE;
  39.               Write('Pufferbereich (2-255) : ');
  40.               ReadLn(pb);
  41.             END;
  42.       '3': BEGIN
  43.              co := TRUE;
  44.              Write('Tastaturbelegung (Ländervorwahl) : ');
  45.              ReadLn(lv);
  46.            END;
  47.       '4': BEGIN
  48.              ded := TRUE;
  49.              Write('Ramdisk-Größe (16<) : ');
  50.              ReadLn(rdg);
  51.              GotoXY(6,21);
  52.              Write('Ansi-Treiber (j/n) : ');
  53.              ReadLn(inp);
  54.              IF UpCase(inp) = 'J' THEN dea := TRUE;
  55.            END;
  56.       '5': BEGIN
  57.              fi := TRUE;
  58.              Write('geöffnete Dateien (8-255) : ');
  59.              ReadLn(gd);
  60.            END;
  61.       '6': BEGIN
  62.              la := TRUE;
  63.              Write('max. Laufwerke (a-z) : ');
  64.              ReadLn(lw);
  65.            END;
  66.     END;
  67.     GotoXY(1,20);
  68.     DelLine;  DelLine;
  69.   END;
  70.  
  71.   PROCEDURE WriteFile;
  72.   BEGIN          { Werte für CONFIG.SYS werden geschrieben }
  73.     Assign(f, Datei);
  74.     Rewrite(f);
  75.     IF br  THEN WriteLn(f, 'BREAK=ON');
  76.     IF bu  THEN WriteLn(f, 'BUFFERS=', pb);
  77.     IF co  THEN WriteLn(f, 'COUNTRY=', lv);
  78.     IF dea THEN WriteLn(f, 'DEVICE=ANSI.SYS');
  79.     IF ded THEN WriteLn(f, 'DEVICE=RAMDRIVE.SYS ', rdg);
  80.     IF fi  THEN WriteLn(f, 'FILES=', gd);
  81.     IF la  THEN WriteLn(f, 'LASTDRIVE=', UpCase(lw));
  82.     Close(f);
  83.   END;
  84.  
  85. BEGIN
  86.   ClrScr;
  87.   GotoXY(27,1);
  88.   WriteLn('CONFIG.SYS - Designer ');
  89.   GotoXY(24,2);
  90.   WriteLn('(c) 1989 Klaus Vollmer & TOOLBOX ');
  91.   GotoXY(23,3);
  92.   FOR i:=1 TO 36 DO Write('-');
  93.   GotoXY(18,5);
  94.   WriteLn('Zum Beenden des Programms <0> drücken.');
  95.   GotoXY(15,7);
  96.   WriteLn('1 - BREAK          2 - BUFFERS',
  97.           '          3 - COUNTRY');
  98.   GotoXY(15,9);
  99.   WriteLn('4 - DEVICE         5 - FILES',
  100.           '            6 - LASTDRIVE');
  101.   GotoXY(6,12);
  102.   WriteLn('Bitte eine der Nummern für die Aufnahme ',
  103.           'des jeweiligen Punktes in die');
  104.   GotoXY(6,14);
  105.   WriteLn('CONFIG.SYS - Datei, eingeben.',
  106.           '       PROGRAMM ABBRUCH: 8 Taste drücken.');
  107.   br  := FALSE; bu  := FALSE; co :=FALSE;
  108.   ded := FALSE; dea := FALSE; fi :=FALSE; la := FALSE;
  109.   REPEAT
  110.     ch := Menu;
  111.     IF ch <> '0' THEN Create(ch);
  112.   UNTIL ch = '0';
  113.   WriteFile;
  114.   ClrScr;
  115.   WriteLn('Neuer Inhalt :');
  116.   WriteLn;
  117.   Assign(f, Datei);
  118.   Reset(f);
  119.   FOR i := 1 TO 7 DO BEGIN  { Neuer Inhalt wird ausgelesen }
  120.     ReadLn(f, zeile);
  121.     WriteLn(zeile);
  122.   END;
  123.   Close(f);
  124.   REPEAT UNTIL KeyPressed;
  125.   ClrScr;
  126.   WriteLn('Programm beendet');
  127. END.
  128. (* ------------------------------------------------------ *)
  129. (*                 Ende von DESIGN.PAS                    *)