k6dos.sys - Problem mit Speichererkennung

DOS-Konfiguration, Anwendungen, Treiber und TSRs

k6dos.sys - Problem mit Speichererkennung

Beitragvon Locutus » Di 3. Jan 2017, 16:45

drzeissler hat geschrieben:Egal was ich einstelle (-wcg,...), ich bekomme immer das hier angezeigt:
Code: Alles auswählen
Int15h:E801h Error occured detecting memory size



Hallo zusammen,

Seit ich meine DOS-Zeitmaschine auf das neue Board "DFI K6XV3+/66" umgestellt habe (VIA MVP3 Chipsatz) bekomme ich denselben Fehler bei k6dos.sys. Trotz Fehlermeldung wird der Multiplikator aber anscheinend gesetzt. Nur Write Combining kann nicht aktiviert werden. Die CPU ist dieselbe wie vorher in dem Rechner (AMD K6-III+ mit 400 MHz). Daran kann's nicht liegen.

Hat jemand 'ne Idee?

Gruß
locutus
Benutzeravatar
Locutus
Site Admin
 
Beiträge: 1347
Registriert: Mo 7. Mär 2005, 23:33
Wohnort: NRW

AMD K6 III+ System aufbauen (Zeitmaschine)

Beitragvon drzeissler » Di 3. Jan 2017, 17:36

Es funktioniert ja trotzdem, muss was mit dem Chipsatz sein.
CPU: 486 DX2/66 MOBO: SNI-D882 RAM: 3x16MB - FDD: 3,5" 1,44MB HDD: 6,4GB Seagate ISA(1): Audican32Plus PCI(1): 3com TX 905 OS: MsDos622 - Win95a - WinNT 3.51
drzeissler
DOS-Gott
 
Beiträge: 3045
Registriert: Mo 8. Feb 2010, 16:59

Re: AMD K6 System aufbauen

Beitragvon philscomputerlab » Do 5. Jan 2017, 01:09

Locutus hat geschrieben:
Seit ich meine DOS-Zeitmaschine auf das neue Board "DFI K6XV3+/66" umgestellt habe (VIA MVP3 Chipsatz) bekomme ich denselben Fehler bei k6dos.sys. Trotz Fehlermeldung wird der Multiplikator aber anscheinend gesetzt. Nur Write Combining kann nicht aktiviert werden. Die CPU ist dieselbe wie vorher in dem Rechner (AMD K6-III+ mit 400 MHz). Daran kann's nicht liegen.

Hat jemand 'ne Idee?

Gruß
locutus


Ich verwende SetMUL für den Multi.

Wegen Write Combine, dieses Video ist noch unveröffentlicht, aber hier zeige ich ein paar DOS tools für den K6-2. VGA WC ist schon aktiv, aber für VESA ist viel extra Leistung zum rausholen.

Benutzeravatar
philscomputerlab
DOS-Übermensch
 
Beiträge: 1275
Registriert: Fr 1. Okt 2010, 09:40
Wohnort: Australien

Re: AMD K6 III+ System aufbauen (Zeitmaschine)

Beitragvon Locutus » Do 5. Jan 2017, 10:27

Hallo Phil,

wie immer cooles Video! Danke, dass du es hier schon vorab teilst.

Von den Tools k6waon, k6wc und setewb wusste ich noch nichts. Für mich funktioniert mxk6opt auch ganz gut. Ich vermute keine dieser Tools kann man ausführen nachdem man EMM386 geladen hat, korrekt?

Deshalb suche ich nach einem Weg, die Tools vorher (in der config.sys) auszuführen. Früher hat das k6dos.sys ganz gut erledigt, aber leider funktioniert die nicht mehr mit meinem neuen DFI K6XV3+/66 Mainboard.

Gruß
locutus
Benutzeravatar
Locutus
Site Admin
 
Beiträge: 1347
Registriert: Mo 7. Mär 2005, 23:33
Wohnort: NRW

Re: AMD K6 III+ System aufbauen (Zeitmaschine)

Beitragvon drzeissler » Do 5. Jan 2017, 13:02

Funktionieren tut das schon, den Fehler kann man doch ignorieren.
CPU: 486 DX2/66 MOBO: SNI-D882 RAM: 3x16MB - FDD: 3,5" 1,44MB HDD: 6,4GB Seagate ISA(1): Audican32Plus PCI(1): 3com TX 905 OS: MsDos622 - Win95a - WinNT 3.51
drzeissler
DOS-Gott
 
Beiträge: 3045
Registriert: Mo 8. Feb 2010, 16:59

Re: AMD K6 III+ System aufbauen (Zeitmaschine)

Beitragvon Locutus » Do 5. Jan 2017, 13:26

@drzeissler: Dann wird nur der Multiplikator gesetzt, nicht Write Combining.
Benutzeravatar
Locutus
Site Admin
 
Beiträge: 1347
Registriert: Mo 7. Mär 2005, 23:33
Wohnort: NRW

Re: AMD K6 III+ System aufbauen (Zeitmaschine)

Beitragvon FGB » Do 5. Jan 2017, 13:50

Ich kann zur konkreten Problemlösung nichts beitragen, aber ich kann ausschließen, dass der Fehler am MVP3 Chipsatz liegt. Auf den Motherboards PC-CHIPS M577 und EPOX MVP3G5 (Beide mit VIA MVP3 Chipsatz) lief k6dos.sys bei mir problemlos und ohne Fehlermeldung. Auch dein DFI Board scheint bei anderen mit k6dos.sys zu laufen. Es gab von diesem Board zahlreiche Revisionen und unterschiedliche BIOS-Stände.

Welches BIOS hast du installiert? Das letzte BIOS hat jedenfalls schon Support für den K6-III+ (Stand 12.4.2000) - vielleicht läuft das ja anstandslos mit k6dos.sys zusammen?
Meine Sammlung zeige ich in meiner Hardware Gallery: AmoRetro.de.
Benutzeravatar
FGB
DOS-Übermensch
 
Beiträge: 1808
Registriert: Di 15. Feb 2011, 12:02

Re: AMD K6 III+ System aufbauen (Zeitmaschine)

Beitragvon Locutus » Do 5. Jan 2017, 16:33

Ich flashe eigentlich grundsätzlich das neuste BIOS. Das war auf der DFI-Seite nicht mehr aufzutreiben. Daher hab ich einfach das "Latest Bios" von Phil's Seite genommen.
Benutzeravatar
Locutus
Site Admin
 
Beiträge: 1347
Registriert: Mo 7. Mär 2005, 23:33
Wohnort: NRW

Re: AMD K6 III+ System aufbauen (Zeitmaschine)

Beitragvon drzeissler » Do 5. Jan 2017, 19:35

Kann es nicht auch eine Einstellung im Bios sein?
CPU: 486 DX2/66 MOBO: SNI-D882 RAM: 3x16MB - FDD: 3,5" 1,44MB HDD: 6,4GB Seagate ISA(1): Audican32Plus PCI(1): 3com TX 905 OS: MsDos622 - Win95a - WinNT 3.51
drzeissler
DOS-Gott
 
Beiträge: 3045
Registriert: Mo 8. Feb 2010, 16:59

Re: AMD K6 III+ System aufbauen (Zeitmaschine)

Beitragvon Locutus » Sa 7. Jan 2017, 15:31

Etwas mehr Recherche von meiner Seite:

Die Fehlermeldung von k6dos.sys lässt darauf schließen dass folgende Routine verwendet wird, um die Größe des Hauptspeichers in Erfahrung zu bringen:

http://www.uruk.org/orig-grub/mem64mb.html#int15e801 (s. "E801")

Leider weiß ich nicht, warum mein PC damit ein Problem haben soll. Ich habe nun schon verschiedene Speicherriegel 32, 64 und 256MB verwendet und Memory Hole 15-16M mal eingeschaltet im BIOS zum Test. Immer das gleiche Ergebnis. :-(
Benutzeravatar
Locutus
Site Admin
 
Beiträge: 1347
Registriert: Mo 7. Mär 2005, 23:33
Wohnort: NRW

Re: AMD K6 III+ System aufbauen (Zeitmaschine)

Beitragvon Locutus » Sa 7. Jan 2017, 15:35

Nachtrag: Nachdem ich diesen Thread auf Vogons gelesen habe, in dem es um die Unterstützung des Calls in DOSBox geht, glaube ich nun, dass mein BIOS anscheinend nicht alle Register mit Infos füllt:

http://www.vogons.org/viewtopic.php?t=11448
Benutzeravatar
Locutus
Site Admin
 
Beiträge: 1347
Registriert: Mo 7. Mär 2005, 23:33
Wohnort: NRW

Re: k6dos.sys - Problem mit Speichererkennung

Beitragvon Locutus » So 8. Jan 2017, 13:11

Neue Infos:

Ich habe ein kleines Tool geschrieben welches den entsprechenden BIOS-Call den k6dos.sys zur Speichererkennung verwendet mal ausführt und die Ergebnisse der CPU-Register auf den Bildschirm schreibt.

Infos zum Call Int15h / AX=e801h findet ihr hier:

http://www.uruk.org/orig-grub/mem64mb.html#int15e801

Meine Beispielimplementierung:

Code: Alles auswählen
/*
 * Memory detect tool v1.0
 * -- Put some entertaining description here, if i am not too lazy --
 *
 */

#include <stdio.h>
#include <i86.h>

void check_e801(union REGS* regs)
{
   (*regs).x.ax = 0xe801;
   (*regs).x.bx = 0;
   (*regs).x.cx = 0;
   (*regs).x.dx = 0;
   (*regs).x.cflag = 0;
   
   int86(0x15, regs, regs);
}

void check_88h(union REGS* regs)
{
   (*regs).h.ah = 0x88;
   (*regs).x.ax = 0;
   (*regs).x.cflag = 0;
   
   int86(0x15, regs, regs);
}


int main(int argc,char **argv)
{
   union REGS regs;
   union REGS regs2;
   
   printf("Memory detect tool v1.0\n");

      
   printf("Checking e801h call...");
   
   check_e801(&regs);

   if (regs.x.cflag != 0)
      printf(" error. :-(");

   printf("\nAX: %x\nBX: %x\nCX: %x\nDX: %x\n", regs.x.ax, regs.x.bx, regs.x.cx, regs.x.dx);
   
   printf("\nChecking 88h call...");
   
   check_88h(&regs2);
   
   if (regs2.x.cflag != 0)
      printf(" error. :-(");
   
   printf("\nAX: %x\n", regs2.x.ax);
   
   return 0;
}


Kompiliert habe ich das ganze mit dem Watcom 16-bit C++-Compiler für DOS (v. 9.5b).

Fazit:

Das aktuellste BIOS (lt. Phil) vom Board DFI K6XV3+/66 Rev.B quittiert den Call e801h mit Carry-Flag != 0 und AX=8601, d.h. er wird nicht unterstützt. Genau deswegen kann k6dos.sys Write Combining nicht aktivieren. Das Board ASUS TX97-XE hingegen liefert hier brauchbare Werte - hier funktionert k6dos.sys erwartungsgemäß korrekt.

Anscheinend ist es nicht gesichert, dass alle BIOSse diese Calls korrekt umsetzen. DOSBox scheint sie z.B. auch nicht zu emulieren. Meine Empfehlung ist deshalb, k6dos.sys nicht zu verwenden, da die Methode zur Erkennung des Hauptspeichers nicht gut umgesetzt ist. Es müssten hier mehrere BIOS-Calls ausgeführt werden, inbesondere auch e820h um eine vernünftige Aussage über Größe des Hauptspeichers treffen zu können. So macht es z.B. der Bootmanager GRUB. Hier gibt's eine Art Fallback. e820h -> e801h -> 88h

Gruß
locutus
Benutzeravatar
Locutus
Site Admin
 
Beiträge: 1347
Registriert: Mo 7. Mär 2005, 23:33
Wohnort: NRW

Re: k6dos.sys - Problem mit Speichererkennung

Beitragvon drzeissler » So 8. Jan 2017, 13:55

Ich stecke da jetzt nicht ganz so tief drin, wie äussert sich das mit dem Fehler letztlich?
CPU: 486 DX2/66 MOBO: SNI-D882 RAM: 3x16MB - FDD: 3,5" 1,44MB HDD: 6,4GB Seagate ISA(1): Audican32Plus PCI(1): 3com TX 905 OS: MsDos622 - Win95a - WinNT 3.51
drzeissler
DOS-Gott
 
Beiträge: 3045
Registriert: Mo 8. Feb 2010, 16:59

Re: k6dos.sys - Problem mit Speichererkennung

Beitragvon Locutus » So 8. Jan 2017, 22:25

Das Setzen des Multiplikators funktioniert zwar, aber Write Combining wird nicht aktiviert, sodass man Performance verschenkt.
Benutzeravatar
Locutus
Site Admin
 
Beiträge: 1347
Registriert: Mo 7. Mär 2005, 23:33
Wohnort: NRW

Re: k6dos.sys - Problem mit Speichererkennung

Beitragvon drzeissler » Mo 9. Jan 2017, 07:01

Wieviel 3% 10%, im Grunde will man den doch unter Dos langsam haben.
CPU: 486 DX2/66 MOBO: SNI-D882 RAM: 3x16MB - FDD: 3,5" 1,44MB HDD: 6,4GB Seagate ISA(1): Audican32Plus PCI(1): 3com TX 905 OS: MsDos622 - Win95a - WinNT 3.51
drzeissler
DOS-Gott
 
Beiträge: 3045
Registriert: Mo 8. Feb 2010, 16:59

Nächste

Zurück zu Software

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste