home *** CD-ROM | disk | FTP | other *** search
- (* ------------------------------------------------------ *)
- (* SAVECMOS.PAS *)
- (* Sichern des CMOS-Speicherinhalts in einer Datei *)
- (* (c) 1990 Ralf Randermann & TOOLBOX *)
- (* ------------------------------------------------------ *)
- PROGRAM SaveCMOS;
-
- USES Crt, CMOS;
-
- CONST
- CRLF = #13#10;
- Bell = #7;
-
- VAR
- LV, Work, SaveEnde : BYTE;
- Datei : FILE OF BYTE;
- Taste : CHAR;
-
- BEGIN
- WriteLn('SaveCMOS Version 0.1', CRLF,
- 'Sichern des CMOS-Speicherinhalts in einer Datei');
- IF ParamCount <> 1 THEN BEGIN
- WriteLn('Die Datei, in der der CMOS-Speicherinhalt ',
- 'gesichert werden soll, muß', CRLF,
- 'als Parameter angegeben werden!', Bell);
- Halt;
- END;
- {$I-}
- Assign(Datei, ParamStr(1));
- ReWrite(Datei);
- {$I+}
- IF IOResult > 0 THEN BEGIN
- WriteLn('Die angegebene Datei kann nicht zum ',
- 'Schreiben geöffnet werden!', Bell);
- Halt;
- END;
- IF CMOSSize = 0 THEN BEGIN
- WriteLn('CMOS-Speicher nicht vorhanden oder nicht ',
- 'nach AT-Standard lesbar!', Bell);
- Halt;
- END;
- WriteLn('Computer enthält ', CMOSSize,
- ' Byte CMOS-Speicher.');
- Work := 14;
- SaveEnde := 127;
- IF CMOSSize > 64 THEN BEGIN
- Write('Soll der: (1) gesamte CMOS-Speicher ',
- '(Byte 14 bis 127)', CRLF,
- ' (2) Standard-AT CMOS-Speicher ',
- '(Byte 14 bis 63)', CRLF,
- ' (3) Expanded CMOS-Speicher ',
- '(Byte 64 bis 127)', CRLF,
- 'in der Datei gesichert werden ?', CRLF,
- 'Geben Sie eine Zahl von 1 bis 3 ein ->');
- Taste := #0;
- REPEAT
- IF Taste <> #0 THEN Write(Bell);
- Taste := ReadKey;
- IF Taste = #0 THEN BEGIN
- Taste := ReadKey;
- Taste := '?'
- END;
- UNTIL Taste IN ['1','2','3'];
- WriteLn(Taste);
- CASE Taste OF
- '2' : SaveEnde := 63;
- '3' : Work := 64
- END;
- END ELSE SaveEnde := 63;
- FOR LV := Work TO SaveEnde DO BEGIN
- Work := ReadCMOS(LV);
- Write(Datei, Work)
- END;
- WriteLn('CMOS-Speicherinhalt (', FileSize(Datei),
- ' Bytes) in Datei ', ParamStr(1), ' gesichert.');
- Close(Datei);
- END.
- (* ------------------------------------------------------ *)
- (* Ende von SAVECMOS.PAS *)