

                        DIAG, das Diagnose-Programm



Dokumentation zu DIAG
---------------------

Inhalt

1. Systemanforderungen
2. Zum Program gehrende Dateien
3.1 Was leistet DIAG
3.2 Was kann DIAG, was andere Systeminformations-Programme nicht knnen
4. Erklrungen zu einigen Menpunkten
5. Fehler im Programm / Bug-Reports
6. Hintergrnde des Programs
7. Danksagung
8. Kontaktadresse zum Autor


1. Systemanforderungen

- PC-AT (80286). Mglicherweise auch auf einem 8086 lauffhig, aber noch
  nicht getestet.
- ca. 500 KB freien DOS-Speicher, optional zustzlich ca. 300 KB EMS-Speicher.
  Der obere Speicherbereich (zwischen 640 KB und 1 MB) kann auch genutzt
  werden, soweit diese verfgbar ist.
- ca. 1,1 MB freien Speicherplatz auf der Festplatte oder Diskette. Zur
  Benutzung einer Diskette siehe Punkt "Starten von DIAG von einer Diskette"
  weiter unten.
- DOS 3.3
- Beliebige Grafikkarte (VGA-Karte fr Frequenzmessung und Benchmark)

Da DIAG sehr hardwarenah programmiert ist, sollte es nicht von Windows oder
einer anderen Multitasking-Umgebung aus gestartet werden.

Systemanalyseprogramme wie DIAG knnen nie als vllig fehlerfrei und absturz-
sicher angesehen werden, da es unmglich ist, das Program auf allen mglichen
Computerkonfiguration zu testen.

Hinweis: Ich bernehme keine Haftung fr Schden jeglicher Art, die durch
         die Benutzung dieses Programs entstehen.


Alle genannten Marken- und Produktnamen sind Warenzeichen der jeweiligen
Rechtsinhaber.

2. Zum Program gehrende Dateien

DIAG.EXE        Die ausfhrbare Datei zum Starten von DIAG
DIAG.OVR        Zur Ausfhrung bentigte Datei
DIAG.RPT        Report-Datei (kann erstellt werden)
DIAG.TXT        Die Dokumentation zu DIAG
DIAG.FAQ        Frequently Asked Questions
DIAG.TST        Liste von Computern, auf denen DIAG erfolgreich getestet
                wurde
DIAG.KEY        DIAG-Key Datei (nur registrierte Version)
DIAG.INI        Einstellungsdatei
README.TXT      Einige Kurzhinweise
BUGS.TXT        Mir bekannte Fehler im Programm
HISTORY.TXT     Verbesserungen und nderungen am Program (seit Version 3.52)
DIAG.CHK        Prfsumme des Programms
DIAG.LST        Liste mit erkannten PC-Komponenten
*.DAT           Daten-Dateien
PROC2.EXE       Zur Ausfhrung bentigte Datei
INTERNA.EXE     Programm zum Anzeigen von prozessorinternen Werten
                (nur registrierte Version)
*.ENG           Alle Textdateien in englischer Sprache
DIAGC.BAT       Start des Programs mit Reset-ID (siehe HINWEIS.TXT)
REGISTER.TXT    Informationen zur Registrierung von DIAG

3.1 Was leistet DIAG ?

* Prozessorerkennung
 - Erkennung von Prozessoren vom 8086 bis zum Pentium auch ber einen Direkt-
   Test (ohne Reset-ID oder CPUID-Verfahren -> ist wesentlich absturzsicherer)
 - Angabe der Taktfrequenz des Prozessors (wird gemessen)
 - Ermittlung des Computer-Typs (ab 80286 gelten alle Computer als AT)
 - genaue Angabe zum Koprozessor, inclusive Erkennung der Weitek-Fhigkeiten
 - Ermittlung der CPU-internen Daten ber das CPUID-Verfahren. Falls dieses
   nicht untersttzt wird, wird das Reset-ID-Verfahren verwendet (nur,
   falls sich der Computer im REAL-Modus befindet).
 - Es wird festgestellt, ob die CPU die MMX-Technologie untersttzt, der
   Hersteller-Copyright wird ausgegeben und die Gre von TLB, Level 1 und
   Level 2-Cache bestimmt. TLB-Cache kann nur beim Pentium Pro oder hher
   erkannt werden.
 - Die Prozessorleistung kann mit einem Benchmark festgestellt werden
 - Die CPU wird auf Bugs getestet
* BIOS-Erkennung
 - Erkennung von Hersteller, Produktionsdatum und Version
 - Erkennung des Chipsatzes und des Motherboardherstellers
 - Angaben ber die Echtzeituhr (inclusive Test)
 - Angabe der BIOS-Einstellungen (inclusive Knacken des AWARD-Passwortes)
* BUS-Erkennung
 - Angaben zu PCMCIA-, PCI-, MCA-, SCSI-Bus, Plug and Play und den
   angeschlossenen Karten
 - Erkennt Plug&Play-Gerte am seriellen und parallelen Port
 - Auslesen der Daten aus vielen Chipstzen
 - Auslesen der Desktop Management Interface Strukturen
* Soundkarte
 - Erkennung einer Soundblaster kompartiblen Soundkarte
 - Erkennung des Mixer-Typs (mit den eingestellten Werten)
 - Erkennung vieler andererer Soundkarten
 - Test von PC-Lautsprecher, Adlib- und Soundblaster-Karte, sowie MIDI-Gerten
* Tastatur
 - Erkennung von MF-II Kompartibilitt
 - Test der Tastatur
* Laufwerke
 - EIDE-Informationen
 - Partitionstabellen
 - CDROM-Informationen mit Angaben zur eingelegten CD
 - Erkennung des Controller-Typs
 - Test und Benchmark der Laufwerke und Festplatten
 - INT 13 - Erweiterung
* Grafikkarte
 - VESA
 - Video Memory
 - Messung der Bildwiederholfrequenz (nur registrierte Version)
 - Benchmark der Grafikkarte
 - Informationen zum Zeichengenerator
 - Angaben zum Video-BIOS-Shadow
 - Interne Angaben zu vielen Grafikkarten
* Maus
 - Direkterkennung mglich (Maustreiber nicht ntig)
 - Erkennung von I/O-Port und IRQ
 - Hersteller
 - Lage der MOUSE.INI
 - Erkennung des Maus-Typs
* Ports
 - COM-Port Erkennung mit FIFO und Test
 - LPT-Port mit EPP, ECP und bidirektionaler Erkennung
 - ISDN-Erkennung
* Speicher
 - Angabe von konventionellem und erweitertem Speicher
 - Angaben zu EMS, VCPI, DPMI, ROM-Erweiterungen
 - Test und Benchmark des Speichers
 - EMM- und XMS-Handles
* Betriebssystem
 - Windows Angaben
 - DOS-Version
 - Angabe der Umgebungsvariablen
 - DOS-Laufwerke
 - geladene Gertetreiber
 - geladene Programme (hnlich MEM /c , aber ausfhrlicher)
* Netzwerk
 - IPX
 - Login-Name
 - Netzwerkhardware (sprich Netzwerkkarte) wird erkannt
* Country
* Residente Programme (nur registrierte Version)
 - mit vielen mglicherweise resident geladenen Programmen und Informationen
   zu diesen Programmen
* DIAG kann auerdem
 - Einen Report erstellen, den Sie dann ausdrucken oder mir per eMail
   schicken und mir so bei der Weiterentwicklung helfen knnen.
 - Ihren Hauptspeicher auf 137 verschiedene Viren testen

3.2 Was kann DIAG, was andere Systeminformations-Programme nicht knnen

Um die folgende Liste aufzustellen, habe ich 21(!) verschiedene System-
informations-Programme untersucht und hier die Dinge aufgeschrieben, die von
keinem oder nur einem oder zwei anderen Programmen geleistet werden.

- DIAG erkennt Plug&Play-Gerte am seriellen und parallelem Port. So knnen
  neuere Muse oder Plug&Play-Drucker erkannt werden
- DIAG erkennt Netzwerkkarten (z.Zt. 25 verschiedene). Viele Programme
  erkennen die Netzwerksoftware, aber fast keines erkennt auch die
  dazugehrige Netzwerkkarte.
- DIAG kann Ihre Tastatur testen. Dabei wird getestet, ob die Verbindung zur
  Tastatur funktioniert und ein Power-On Test durchgefhrt, wie er auch beim
  Start des Computers durchgefhrt wird
- DIAG erkennt die Art und den Namen des Diskettenlaufwerks-Controller
- Mit DIAG erhalten Sie Informationen ber die CD, die sich im Laufwerk be-
  findet. So knnen Sie z.B. feststellen, mit welchen Programm und wann die
  CD gebrannt worden ist.
- DIAG erkennt den auf der Grafikkarte installierten Chipsatz und den Her-
  steller des Video-BIOS. Daraus resultierend gibt DIAG den Namen der
  Grafikkarte an.
- DIAG erkennt eine Maus auch, wenn kein Maustreiber installiert ist. Zwar
  werden dann nicht soviele Informationen angezeigt, wenn ein Maustreiber
  installiert wre, aber so kann auch der I/O-Port, an dem die Maus ange-
  schlossen ist, erkannt werden
- DIAG erkennt die von AGP-Bus untersttzen Geschwindigkeiten (1x, 2x, 4x)

4. Erklrungen zu einigen Menpunkten


-----------------------------------------------------------------------------
                                  Prozessor
-----------------------------------------------------------------------------
Prozessortyp
 Zur Ermittlung des Prozessortyps werden drei verschiedene Methoden ver-
 wendet.
    Die "konventionelle" Methode versucht, Befehle auszufhren, die nur
 von oder ab bestimmten Prozessoren erkannt werden. So kann aber nur grob die
 Prozessorgruppe (386, 486, Pentium etc.) erkannt werden.
    Die RESET-ID-Methode nutzt die Tatsache, da direkt nach dem Neustart des
 Computers ein Identifikationswert in ein Prozessorregister geschrieben wird,
 der Auskunft ber den Typ des Prozessors gibt. DIAG startet den Computer neu,
 fngt den Reset aber ab und erhlt so diesen Identifikationswert. Da diese
 Methode sehr absturzanfllig ist, funktioniert sie nur im REAL-Mode.
    Die CPUID-Methode nutzt den mit dem Pentium (auch bei einigen neueren
 486-Prozessoren) eingefhrten Befehl CPUID, der direkt Auskunft ber die
 Art des Prozessors gibt. So mu nicht wie bei der RESET-ID-Methode der
 Computer (fast) neu gestartet werden. Dieser Befehl ist nicht absturz-
 gefhrdet und funktioniert immer.

Prozessor-Taktfrequenz
 Z.Zt. werden drei verschiedene Methoden zur Taktfrequenzerkennung benutzt.
 1.)  Zur Ermittlung der Taktfrequenz mu der Prozessortyp bekannt sein. Dann
      wird gemessen, wie schnell der Prozessor einige Befehle ausfhrt und
      daraus wird die Geschwindigkeit des Prozessors berechnet. (Std. Methode)
 2.)  Die Taktfrequenz wird mit Hilfe des Time Stamp Counters, der bei jedem
      Prozessortakt heraufgesetzt wird, gemessen (TSC Methode)
 3.)  Die Taktfrequenz wird aus dem DMI-Strukturen ausgelesen (DMI Methode)
 Bei der Ausgabe wird immer auch die Methode angegeben. Es kann also sein,
 da sich die ermittelten Taktfrequenzen leicht unterscheiden. Es wird der
 Reihe nach die beste Methode (DMI, TSC, Standard) gewhlt, soweit dies
 vom Computer untersttzt wird. Durch Verndern der Eintrge in der
 Einstellungs-Datei DIAG.INI kann eine Methode erzwungen werden.

Pefetch Queue Size
 Bei neueren Prozessoren ldt der Prozessor, whrend er nichts zu tun hat,
 schon die unmittelbar folgenden Befehle in einen Zwischenspeicher, so da
 diese Befehle schneller abgearbeitet werden knnen. Die Prefetch Queue
 Size gibt an, wieviele Befehle in dem Zwischenspeicher geladen werden
 knnen. Die verwendete Methode funktioniert aber nur bis zum 80486.

Level 1 Cache
 Der Level 1 Cache speichert hufig benutzte Register und Anweisungen des
 Prozessors zwischen, damit auf diese bei einem erneuten Zugriff schneller
 zugegriffen werden kann. Je grer der Level 1 Cache ist, desto schneller
 kann der Prozessor arbeiten. bliche Gren sind 8192 Bytes beim 486 und
 16384 Bytes beim Pentium und hheren Prozessoren.

Level 2 Cache
 Im Level 2 Cache werden Daten aus dem Hauptspeicher zwischengespeichert, um
 so auf diese Daten schneller zugreifen zu knnen. Wenn ein entsprechender
 Chipsatz vorhanden ist, wird die Cachegre direkt aus dem Chipsatz gelesen.
 Ansonsten wird die Gre gemessen. DIAG kann bei der Grenmessung maximal
 einen L2-Cache von 512 KB erkennen. Wenn ein entsprechender Chipsatz vor-
 handen ist, gibt es nach oben keine Grenze.

Computer Typ
 Diese Angabe wurde frher zur Unterscheidung verschiedener Computerarten und
 Prozessoren verwendet. Jeder modernere PC (ab dem 80286) gilt hier als PC-AT

NPU-Type:
 Typ 1 - Normalerweise ein 8087, der erste Coprozessor
 Typ 2 - Eingesetzt beim 80286, einige zustzliche Flags
 Typ 3 - Eingesetzt ab dem 80386, in allen heutigen Coprozessoren ein-
         gesetzt. Zustzliche Funktionen wie die trigonometrischen Funktionen

Bug-Test:
 Hier wird auf einige Fehler im Prozessor getestet:

 1. 386DX: Beim POPAD-Befehl wird ein erweitertes Register des 386 nicht
    korrekt heraufgesetzt, so zum Beispiel wird aus 0000FFFFh 00000000h und
    nicht 00010000h. Dieser Bug ist den Programmierern aber bekannt und der
    Befehl wird nicht mehr benutzt.
 2. 386: Einige frhe 386-Prozessoren haben einen Fehler beim Multiplizieren
    von 32-Bit Zahlen
 3. Pentium-FPU: Der mathematische Koprozessor arbeitet bei den ersten
    Pentiums nicht korrekt.
 4. AAD-Bug: Eigentlich kein Bug. Die Anweisung wird aber bei lteren
    nicht-Intel CPUs nicht voll untersttzt.
 5. K6-DRX-Bug: Eigentlich nur eine Kuriositt. K6-CPUs sind etwas
    "bereifrig" bei selbst-modifizierendem Code.

CPU-Benchmark
 Standard-Benchmark
  Hier wird die Rechenleistung nach dem Dhrystone-Meverfahren
  und die Fliekomma-Rechenleistung nach dem Whetstone-Meverfahren angegeben.
 Mandelbrot-Benchmark
  Hier wird ein Mandelbrot (auch Apfelmnnchen) berechnet. Folgende Ver-
  fahren werden verwendet:
   Non-Optimized: Nicht speziell optimiert, entsprechend langsam. Kann auf
                  lteren (386/486 oder darunter) Prozessoren recht lang
                  dauern.
   (486)-FPU-Optimized: Fr den Coprozessor optimiert. Ab einem 486-Prozessor
                        ist das Verfahren noch etwas mehr optimiert.
   3DNow!-Optimized: Optimiert fr den 3DNow!-Befehlssatz. Reele Zahlen werden
                     so sehr schnell berechnet.

Instructions/Capabilites
 Hier wird angegeben, welche Fhigkeiten und Befehlserweiterungen der Prozessor
 hat.
  MMX-Befehlssatz: Von Intel eingefhrt, um die Programmierung von Multi-
   Media Anwendungen einfacher und schneller zu gestalten.
  CMOVcc: verknpft einen Vergleich und eine Zuweisung in einem Befehl. Diese
   Anweisung ist normalerweise ab dem Pentium Pro verfgbar.
  CMPXCHG8B: verbindet einen Vergleich und einen Tausch von zwei QWORDS.
  Time Stamp Counter: Ein prozessorinterner Zhler, der bei jedem Prozessor-
   Takt herafgesetzt wird.
  3DNow!-Technologie: Von AMD eingefhrte (und von einigen anderen Prozessor-
   Herstellern bernommene) Technologie, um 3D-Berechnungen schneller aus-
   zufhren
  SIMD/ISSE-Befehlssatz: Eine Erweiterung des MMX-Befehlssatzes.
  96-Bit Prozessornummer: Eine individuelle Seriennummer des Prozessors. Erst-
   mals eingefhrt beim Intel Pentium III. Wenn eine solche Seriennummer vor-
   handen ist, wird die Seriennummer auch angegeben.

-----------------------------------------------------------------------------
                                     BIOS
-----------------------------------------------------------------------------
Chipset Name & Motherboard
 Die Erkennung des Chipsets und des Motherboards funktioniert beim Award-
 BIOS und beim AMI-Bios. Wenn Sie einen PCI-Bus besitzen, kann zumindest
 der Chipsatz erkannt werden.

Real Time Clock - Test:
 Alarm-Test: Es wird eine Alarm-Zeit eingestellt und getestet, ob der Alarm-
             Interrupt aufgerufen wird. Achtung: Die Alarm-Zeit wird
             verstellt. Wenn Sie einen Wecker (o..) resident im Speicher
             betreiben, der den Alarm-Interrupt benutzt, kann es u.U. zu
             Problemen kommen.
 Synchronitt: Es wird getestet, ob die BIOS- und die DOS-Uhr synchron laufen.
 Wait: Die BIOS-Funktion Warten wird getestet.

Real Time Clock - Jahr 2000-Bug:
 Vor allem ltere BIOS-Versionen knnen bei der Umstellung auf das Jahr 2000
 das Datum nicht richtig heraufsetzen (aus 2000 wird dann 1900). Hier wird
 getestet, ob Ihr BIOS in der Lage ist, das Datum auf 2000 umzustellen.
 Manual set heit, da Sie zu Beginn des Jahres 2000 das Datum einmal
 manuell auf 2000 umstellen mssen. Danach bleibt das Datum im
 21. Jahrhundert.

Bios-Internals
 Hier werden die erweiterten BIOS-Einstellungen Ihres BIOSes angezeigt. Das
 beim Award-BIOS angezeigte BIOS-Passwort wird als Eingabe bei der Passwort-
 abfrage akzeptiert, auch wenn das anzeigte Passwort nicht unbedingt das
 von Ihnen eingegebene ist.

Bios-APM
 In neueren Computern ist ein Stromsparmodus integriert (Advanced Power
 Management). Dieser bewirkt, da bei lngerer Inaktivitt die CPU-Geschwin-
 digkeit reduziert wird (Der Punkt "CPU Speed reduce possible" gibt an, ob
 dies mglich ist) und die Festplatte abgeschaltet wird. Der Status und die
 Lebensdauer der Batterie wird meist nur bei Notebooks angegeben.

Motherboard-Test
 Es werden verschiedene Gerte des Motherboards getestet. Zum Beispiel wird
 getestet, ob die Prfsumme des BIOS stimmt und ob der BIOS-Bereich schreib-
 geschtzt ist. Auch andere Gerte, wie der Interrupt- und der DMA-Controller,
 sowie der programmierbare Timer werden getestet.

-----------------------------------------------------------------------------
                                 BUS-SYSTEM
-----------------------------------------------------------------------------
Bus-Typ
 Der Bus stellt die Datenleitung zwischen dem Arbeitsspeicher und dem Pro-
 zessor dar. Je breiter der Bus ist, desto schneller knnen die Daten trans-
 portiert werden. Dabei werden folgende Bus-Typen unterschieden:

  ISA  - Erster einfacher Bus, in 8086 und 80286 eingesetzt, in heutigen
         Computern aber zum Teil auch noch vorhanden. Man unterscheidet
         zwischen 8-Bit-ISA und 16-Bit-ISA. Der Bustakt betrgt 8 MHz
  EISA - Erweiterung des ISA-Busses, mit 32-Bit Breite und leicht erhhtem
         Bustakt (8,33 MHz)
  MCA  - Bus-System mit 32-Bit Breite, 10 MHz Bustakt.
  VLB  - Von der VESA-Organisation festgelegter Bus. Die Bus-Breite betrgt
         32 Bit und kann mit Bustakten zwischen 25 und 40 MHz (auf manchen
         Board auch 50 MHz) variieren.
  PCI  - Neues Bus-Sytem von Intel, Verwendung in modernen 486ern und hheren
         Computern. Bus-Breite ist auch 32 Bit, der Bustakt kann aber bis
         zu 66 MHz betragen.
  AGP  - Neuerer und schnellerer PCI-BUS. Wird fr die Kommunikation mit der
         Grafikkarte verwendet.
  PCMCIA - PCI-hnliches Bus-System, wird in Notebooks verwendet.


Plug&Play
 Plug&Play heit sinngem bersetzt: Einstecken und loslegen. Plug&Play
 konfiguriert Ihre Steckkarten und angeschlossenen Gerte selbststndig und
 weist ihnen entsprechende Resourcen zu.

  Slot Devices - Hier werden generelle Informationen zum Plug&Play-BIOS
                 (Versionsnummer etc.) angezeigt. Auf den darauffolgenden
                 Seiten werden die einzelnen Plug&Play-Gerte mit
                 Bezeichnung des Gerts und den belegten Resourcen angezeigt.
  Serial Devices - Auch Gerte, die am seriellen Port angeschlossen werden,
                 wie z.B. eine Maus, knnen Plug&Play-Fhigkeiten haben.
                 Dieser Menpunkt durchsucht alle seriellen Ports und gibt,
                 wenn ein Gert gefunden wird, die Kennung und den Namen des
                 Gerts an. Unter bestimmten Umstnden kann es sehr lange
                 dauern, ein Gert zu erkennen. Ein Abschalten von
                 nicht-Plug&Play Gerten kann hier Abhilfe schaffen.
 Parallel Devices - Ebenso knnen Gerte am parallelen Port, wie beispiels-
                 weise ein Drucker Plug&Play-Fhigkeiten aufweisen. Hier
                 werden dann Informationen ber die angeschlossenen Gerte
                 an den jeweiligen Ports angezeigt


SCSI
 Zur Zeit werden nur die ersten 8 SCSI-Gerte erkannt. Bei diesen Gerten
 wird die Art des Gerts angegeben, wie zum Beispiel Diskettenlaufwerk.

Chipsatz
 Hier bekommen Sie Informationen zu dem sich auf dem Motherboard befindlichen
 Chipsatz. Eine genaue Erkennung der Chipsatsart, die sich auf Ihrem
 Motherboard befindet, ist bei lteren Chipstzen nicht mglich. Daher mssen
 Sie in diesem Fall Ihren Chipsatz manuell aus der Liste auswhlen.

Desktop Management Interface
 Ein meist auf moderneren Computern zu findendes System. Hier werden beim
 Computerstart Informationen ber die Hardware entweder fest vom Hersteller
 oder dynamisch durch Erkennen beim Start eingetragen. So bekommt man hier
 auch Informationen, die sonst nicht abgefragt werden knnen. (Wie z.B.
 Informationen ber das Computergehuse oder die Speichermodule)

-----------------------------------------------------------------------------
                                     Drives
-----------------------------------------------------------------------------
Controller-Typ/Name:
 NEC765 - Standard Disketten-Controller. Kann Laufwerke von 360 KB bis
          1.44 MB ansteuern
 82077AA - Neuerer Controller von Intel. Kann auch Laufwerke mit 2.88 MB
          ansteuern
 NEC72065 - Neuerer Controller von NEC.

CD-ROM Drive:
 Der Test auf Hersteller und I/O-Port ist (zur Zeit) noch im experimentellem
 Status. Zur Zeit wird nur ein Mitsumi-Laufwerk mit eigener I/O-Karte erkannt.
 Zur Erkennung mu die Option "Test critical" in der INI-Datei eingeschaltet
 werden.

Partition-Table
 Sie knnen Ihre Festplatte in maximal vier Teile unterteilen. Dies kann ge-
 schehen, um Programme und Daten getrennter aufzubewahren, oder kann auch
 ntig sein, falls das BIOS nicht die volle Festplattengre untersttzt.
 DIAG gibt hier die Art der Partition (des Festplattenteils) an, d.h. ob
 zum Beispiel von dieser Partition gebootet werden kann. Dann wird angegeben,
 mit welchem Betriebssystem die Partition erstellt wurde. Auerdem wird noch
 der Beginn (in der Notation Kopf/Sektor/Zylinder) und das Ende der Partition
 angegeben.

EIDE-Informationen
 Hier werden Daten direkt aus dem ROM der Festplatte gelesen, die beispiels-
 weise den Namen und die Anzahl von Zylindern, Kpfen und Sektoren beinhalten.

-----------------------------------------------------------------------------
                                   Soundkarte
-----------------------------------------------------------------------------
Soundblaster
 Im Soundblaster-Teil des Menpunkts wird eine Soundblaster-Karte (oder
 Emulation) erkannt.

  DSP-Version - Die DSP-Version gibt indirekt die Fhigkeiten der Sound-
                blasterkarte an. So trgt die Soundblaster 1.0 die Version
                1.0, Soundblaster 2.0 hat 2.0 und Soundblaster Pro trgt
                die Version 3.0
  SBFMDRV     - Dieser Treiber wird vom Soundblaster-Hersteller mitgeliefert.
                Er ist ntig, um beispielsweise CMF-Dateien abspielen.

Mixer-Chip:
 Zur Zeit existieren drei verschiedene Mixer-Typen:
  CT1335 - Eingesetzt beim einfachen Soundblaster. Es kann nur die Lautstrke
           verstellt werden
  CT1345 - Eingesetzt ab Soundblaster Pro. Die Lautstrke kann zum Vorgnger
           strker variiert werden und es kann ein Low-Pass-Filter eingesetzt
           werden.
  CT1745 - Wird bei Wavetable-Soundkarten verwendet. Zustzlich kann ein Hoch-
           Pass eingesetzt werden und ein Verstrker verwendet werden.

Test:
 Beim Test der Adlib-Timer sollte der gemessene Wert ungefhr mit den
 "Should be"-Werten bereinstimmen. Kleine Abweichungen knnen durch die
 Megenauigkeit hervorgerufen werden. Falls die Werte stark abweichen, haben
 Sie keine Original Adlib-Karte oder die Adlib-Karte wird von Ihrer Sound-
 karte nicht zu 100% emuliert.

-----------------------------------------------------------------------------
                                    Tastatur
-----------------------------------------------------------------------------
MF-II Kompartibilitt
 MF-II ist ein neuerer Tastaturstandard, der auch Tastaturen mit 101/102-
 Tasten untersttzt (gegenber 84 Tasten vorher). Hier wird angegeben, ob
 Ihre Tastatur diesen Standard untersttzt.

Keyboard-Controller
 Der Controller empfngt Signale von der Tastatur und setzt diese zur Weiter-
 verarbeitung im Computer um. Hier wird angegeben, ob Sie den Standard-
 Controller 8042 benutzen, oder ob ein anderer Controller benutzt wird.

Test
 Hier wird getested, ob eine Verbindung zur Tastatur besteht. Auerdem wird
 ein Power-On Test durchgefhrt, welcher auch beim PC-Start ausgefhrt wird.
 Die Tastatur-ID wird auch ermittelt. Nach diesem Test kann die Tasten-
 wiederholrate verstellt sein.

-----------------------------------------------------------------------------
                                   Grafikkarte
-----------------------------------------------------------------------------
VESA
 Display Data Channel
  Bei neueren Monitoren knnen Daten ber den Monitor, wie Name und Hersteller
  ausgelesen werden. Wenn die Grafikkarte diese Abfrage untersttzt, wird hier
  "Supported" angezeigt. Wenn der Monitor diese Abfrage auch untersttzt,
  werden hier auch Daten ber den Monitor angezeigt.

-----------------------------------------------------------------------------
                                  Schnittstellen
-----------------------------------------------------------------------------
Serieller Port Test, Paralleler Port
 Beim seriellen Test wird bei verschiedenen Baud-Raten ein kleiner Test-
 Satz im Diagnose-Modus der Schnittstelle verschickt. Durch diesen Test und
 auch durch die bidirektional-Erkennung beim parallelen Port knnen ange-
 schlossene Gerte beeinflut werden. Schalten Sie diese also vorher aus.
 Eine Maus wird nicht beeinflut. (Wenn doch, dann melden sie mir diesem
 Fehler)

-----------------------------------------------------------------------------
                                      Maus
-----------------------------------------------------------------------------
Direkterkennung
 Es wird versucht, die Maus zu erkennen, auch wenn kein Maustreiber
 installiert ist. Eine Maus gibt normalerweise eine Kennung zurck, wenn
 man sie anspricht. Falls keine Kennung zurckgegeben wird, wird die Maus
 hier als Unbekannt deklariert, der I/O-Port wird allerdings angegeben.

-----------------------------------------------------------------------------
                                Utilities / Other
-----------------------------------------------------------------------------
Virentest
 Es ist mglich, da die Virenprfung Konflikte mit residenten Programmen
 verursacht. Benutzen Sie die Prfung also mit Vorsicht!


-----------------------------------------------------------------------------
                             Programm INTERNA
-----------------------------------------------------------------------------
Debug-Register
 Auf einigen Computern kann das Auslesen der Debug-Register zu einem Absturz
 oder zu einem Speicherkonflikt fhren. In diesem Fall kann das Lesen der
 Debug-Register mit den Paramter "/T" abgeschaltet werden.


-----------------------------------------------------------------------------
                   Starten von DIAG von einer Diskette
-----------------------------------------------------------------------------
Die ausfhrbare Datei DIAG.EXE wurde komprimiert, so da DIAG auf eine
1,44 MB-Diskette pat. Whrend der Ausfhrung des Programms werden temporre
Dateien angelegt. Meinen Tests zufolge passen die temporren Dateien auch
noch auf die Diskette und somit kann DIAG von einer Diskette gestartet
werden. Sollten dennoch Speicherplatz-Probleme auftreten, knnen Sie nicht
unbedingt bentigte Dateien lschen. Folgende Dateien mssen(!) unbedingt auf
der Diskette bleiben:

DIAG.EXE, DIAG.OVR, DIAG.CHK
alle .DAT-Dateien

Alle Text-Dateien knnen zur Speicherplatz-Einsparung gelscht werden.


Diese Liste wird stndig erweitert.


5. Fehler im Programm / Bug-Reports

Hier erstmal die mir bekannten Fehler im Programm:

- Ein 80486DX kann unter Umstnden auch als 80486SX mit 80487SX Coprozessor
  erkannt werden, wenn das Programm im Real Mode gestartet wird.
- Die Grenangabe von Festplatten ber 8,4 GB kann falsch sein.
- Bei AMD K6-2 und K6-3 Prozessoren mit mehr als 350 MHz wird die Prozessor-
  Geschwindigkeit falsch angegeben.

Ich bin immer bemht, die Fehler auszubessern.

Wenn DIAG direkt beim Start des Programms abstrzt oder stehenbleibt (d.h.
Sie gelangen nicht bis in das Hauptmen), dann starten Sie DIAG mit dem
Parameter /b und schicken mir die dann erstellte Datei BUG.LOG per eMail
zu. Ich werde dann versuchen, den Fehler zu beheben.

Bei Abstrzen whrend der Programmausfhrung starten Sie DIAG mit dem Para-
meter /d. Dann wird der jeweils nchste Schritt unten rechts angezeigt und
Sie knnen mir dann genau sagen, wo DIAG abgestrzt ist.

Wenn im Programm sonst ein Fehler auftritt, beschreiben Sie mir den Fehler
(Programm bleibt hngen, gibt falsche Werte aus, o..) und geben Sie bei
falschen Werten auch an, was an der Stelle (Ihrer Meinung nach) htte stehen
mssen.

Wenn Sie falsche Angaben im Programm entdecken, erstellen Sie einen Report
und senden Sie mir dann bitte die Datei DIAG.RPT als eMail zu.

Alle Bug-Reports senden Sie bitte an meine eMail: diag@mail4you.de

6. Hintergrnde des Programs

Programmiersprache:     Turbo Pascal 7.0 mit Assembler-Implantaten
Literatur:              Data Becker: PC-Intern 2.0 & 5.0
                        Data Becker: PC-Underground
                        DMV-Franzis: Programmierung der Soundblaster-Karte
                        DMV-Franzis: Zeitschrift DOS-International
                        Versch. Quellen (Internet, Newsgroups, Mailboxen)
Programmierdauer:       ca 3,5 Jahre (Stand: 01.08.1999)
Quellcode:              ca. 33000 Zeilen (Stand: 01.08.1999)
                        (ca. 1 MB Quellcode)


7. Danksagung

Danke an:

- Robert R. Collins  (rcollins@x86.org) fr die Routinen zur CPU-Erkennung
- Arno Haket (Haket@tudsv1.tudelft.nl) fr den 387SX-Bug-Test
- Andrew Rossmann fr Infoplus
- Jose Antonio Noda fr Programtests und einige zustzliche Routinen.
- meine Freundin fr die optische & farbliche Gestaltung
- Vasiliy Sorokin fr FirstInfo
- Finn Thoegersen fr WHATVGA und VGADOC
- Devid Espenschied und Sven Bergemann fr Tips und Hilfen
- Danke auch an folgende Personen fr Programmtests:
   Siegfried Bolz


8. Kontaktadresse zum Autor


Snail-Mail:

Dominik Marks
Spreenweg 1
48429 Rheine

eMail: diag@mail4you.de

Homepage: http://www.diagnoseprogramm.de
  (Hier ist auch die neueste Version von DIAG verfgbar)

Ich bevorzuge die Unterhaltung per eMail.


Wenn Sie
- Probleme mit DIAG haben
- Bugs im Programm gefunden haben
- Anregungen oder Kritik uern mchten
- informiert werden mchten, wenn eine neue Version von DIAG herauskommt
- allgemein mit dem Autor in Kontakt treten mchten
- Source-Code austauschen mchten (Wohlgemerkt: Nur ein Austausch(!) von
  kleinen(!) Teilen des Source.)

dann schreiben Sie mir. Ihre eMail (und auch Ihre Snail-Mail) wird von mir
beantwortet.


----------------------------- Ende der Datei ------------------------------
