home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / dtx9302 / svga / id.pas < prev    next >
Encoding:
Pascal/Delphi Source File  |  1993-02-18  |  2.0 KB  |  57 lines

  1. (*========================================================*)
  2. (*                         ID.PAS                         *)
  3. (*          Unit für TESTMODE.PAS und READBIOS.PAS        *)
  4. (*             (C) 1993 Jörg Braun & DMV-Verlag           *)
  5. (*========================================================*)
  6. {$I xgraph.h}
  7.  
  8. UNIT Id;
  9.  
  10. INTERFACE
  11.  
  12.   USES
  13.      DOS{NameStr};
  14.  
  15.   PROCEDURE Identify(VAR FName: NameStr);
  16.  
  17. IMPLEMENTATION
  18.  
  19.   PROCEDURE Identify(VAR FName: NameStr);
  20.   TYPE
  21.     CharArray = ARRAY[0..254] OF CHAR;
  22.   VAR
  23.     BIOSBuf  : CharArray ABSOLUTE $C000:$0005;(* ROM-BIOS *)
  24.     s        : CharArray;
  25.     i        : BYTE;
  26.   BEGIN
  27.     Move(BIOSBuf, s, 255);
  28.     FOR i := 0 TO 254 DO s[i] := UpCase(s[i]);
  29.     IF Pos('TSENG',     s) > 0 THEN FName := 'TSENG'    ELSE
  30.     IF Pos('PEGA',      s) > 0 THEN FName := 'PEGA'     ELSE
  31.     IF Pos('PARADISE',  s) > 0 THEN FName := 'PARADISE' ELSE
  32.     IF Pos('WESTERN',   s) > 0 THEN FName := 'WESTERN'  ELSE
  33.     IF Pos('SIGMA',     s) > 0 THEN FName := 'SIGMA'    ELSE
  34.     IF Pos('761295520', s) > 0 THEN FName := 'ATI'      ELSE
  35.     IF (Pos('OAK',     s) > 0) OR
  36.        (Pos('OTI',     s) > 0) THEN FName := 'OAK-OTI'  ELSE
  37.     IF Pos('TRIDENT',   s) > 0 THEN FName := 'TRIDENT'  ELSE
  38.     IF Pos('CHIPS',     s) > 0 THEN FName := 'CHIPS'    ELSE
  39.     IF Pos('ZYMOS',     s) > 0 THEN FName := 'ZYMOS'    ELSE
  40.     IF Pos('VIDEO SEV', s) > 0 THEN FName := 'VIDEO7'   ELSE
  41.     IF Pos('ZYXEL',     s) > 0 THEN FName := 'ZYXEL'    ELSE
  42.     IF Pos('AT&T',      s) > 0 THEN FName := 'AT_T'     ELSE
  43.     IF Pos('OLIVETTI',  s) > 0 THEN FName := 'OLIVETTI' ELSE
  44.     IF Pos('TANDY',     s) > 0 THEN FName := 'TANDY'    ELSE
  45.       FName := 'GRAFBIOS';   (* irgend etwas unbekanntes! *)
  46.  
  47.     IF FName = 'TSENG' THEN BEGIN   (* Tseng-Chip-Prüfung *)
  48.       IF Port[$3CD] AND $C0 = 0 THEN FName := 'ET4000'
  49.                                 ELSE FName := 'ET3000';
  50.     END;
  51.   END;
  52.  
  53. END.
  54.  
  55. (*========================================================*)
  56. (*                      Ende von ID.INC                   *)
  57.