Autor Thema: Ein paar Fragen zum Milan  (Gelesen 464 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Offline Arthur

  • Benutzer
  • Beiträge: 7.189
  • Mein Atari erinnert mich an die gute alte Zeit..
Re: Ein paar Fragen zum Milan
« Antwort #20 am: Mi 27.06.2018, 22:30:39 »
Nö, der Treiber fragt nicht die Seriennummer ab.

Schön das du das korrigiert hast... ich dachte echt hier im Forum mal etwas über so einen kommerziellen Ati(?)-Treiber (evtl. Heimverlag???) gelesen zu haben, ist aber Jahre her und ich mag mich irren.
Der Treiber ist kommerziell und wurde vom Falke Verlag vertrieben, was aber nicht bedeutet das er die Seriennummer der Karte abfragt. Er wurde schliesslich auch einzel vertrieben.

Siehe ST-Computer 03/2003

Schön und gut @KarlMüller aber das Thema ist ja für mich durch.. bitte keinen Link mehr denn ich bestreite doch gar nicht was du gesagst hast. ;D
« Letzte Änderung: Mi 27.06.2018, 22:40:55 von Arthur »

Offline Chocco

  • Benutzer
  • Beiträge: 25
  • May the force be with you
Re: Ein paar Fragen zum Milan
« Antwort #21 am: Mi 27.06.2018, 23:54:40 »

Der Treiber ist kommerziell und wurde vom Falke Verlag vertrieben, was aber nicht bedeutet das er die Seriennummer der Karte abfragt. Er wurde schliesslich auch einzel vertrieben.

Siehe ST-Computer 03/2003

Da NVDI ein GDOS implementiert, sollte es auch in der Lage sein einen originären *.SYS Treiber für eine Grafikkarte zu laden.
Das ist  beim Milan nicht so. Für die S3 Karte gibt es auch keine *.SYS Treiber. Ich frage mich auch ob das von der Abarbeitung nicht zu spät ist. Der Bootblock initialisiert die Karte erstmal und der Treiber stellt die Auflösung ein.

Jein, ich habe testweise eine Matrox Millenium anstelle der S3 in den Milan gesteckt und das BIOS hat nach dem Einschalten einen Dauer-Beep-Error veranstaltet. Wenn die Matrox zusätzlich zur S3 verbaut ist, startet der Milan klaglos. Ein an die Matrox angesteckter Monitor bleibt (natürlich) schwarz, weil kein VDI-Treiber für die Matrox existiert. Trotzdem kann man am Milan weiterhin problemlos mit der S3 arbeiten.

Als alter PC-User hatte ich erwartet, dass der Milan nach dem Boot nur mit der Matrox, diese zumindest als Standard Console Device im Textmodus oder sogar als VESA-Karte akzeptiert. Mein Milan zeigt sich hier jedoch sehr unwillig, was vielleicht am recht alten Bootblock liegen könnte - die Version habe ich gerade nicht in Erinnerung.

Ein "ordendliches" GDOS im ROM könnte nach Initialisierung der primären Grafik durch den Bootblock (Workstation ID 0) über die assign.sys auf HD durchaus einen weiteren Bildschirmtreiber angeboten bekommen und diesen auch verwenden. Ein v_opnwk() mit der in der assign.sys angelegten ID (>0 bis 9), initialisiert dann die weitere Grafikkarte. In meiner Erinnerung konnte man PC-GEM beim Start anweisen, welcher der vorhandenen Grafiktreiber verwendet werden soll.

Mein TT030 startet z.B. zunächst mit der internen Grafik, die durch das ROM initialisiert wird und im anschließenden Boot-Prozess von HD wird dann erst der ET4000-Treiber für die Crazy Dots nachgeladen. Dank fehlendem GDOS im TT-ROM ist auch diese Variante nur ein Hack, bei dem nachträglich der VDI-Bildschirmtreiber "verbogen" wird. Zur Ehrenrettung der Crazy Dots muss aber gesagt werden, dass sich die Karte auch regulär über ein GDOS nachträglich sauber initialisieren lässt. 
Atari TT030 mit CrazyDots
Milan 040 (S3)
Apple MBP

Offline Ektus

  • Moderator
  • *****
  • Beiträge: 665
Re: Ein paar Fragen zum Milan
« Antwort #22 am: Do 28.06.2018, 18:02:22 »
Die Grafikkarten im Milan (oder auch alle PCI Grafikkarten) müssen vor der Benutzung erst initialisiert werden. Für die ursprünglich verbauten S3 Karten ist der dazu nötige Code im Bootblock enthalten. Die später angebotenen Rage Karten kennt der Code im Bootblock aber nicht, daher der Fehler. Das Programm zur Initialisierung der Grafikkarte steckt als X86 Code im ROM der Grafikkarte, der von einem in neueren Bootblöcken enthaltenen rudimentären X86 Emulator ausgeführt wird. Deswegen dauert es mit der Rage auch ziemlich lange, bis nach dem Einschalten oder Kaltstart ein Bild kommt. Wenn der Initialisierungscode aus dem Karten-ROM abgearbeitet werden kann, sollte eine Textdarstellung möglich sein. Für Alles Andere braucht es aber angepaßte Treiber.

Die seinerzeit vertriebenen Treiber für die Rage waren nicht an die Seriennummer der Grafikkarte gekoppelt, sondern an die Seriennummer des Milan.

Bei Michael Schwingen gibt es einige Dateien zum Milan: https://www.schwingen.org/files/milan/


MfG
Ektus.
« Letzte Änderung: Do 28.06.2018, 18:07:22 von Ektus »

Offline Arthur

  • Benutzer
  • Beiträge: 7.189
  • Mein Atari erinnert mich an die gute alte Zeit..
Re: Ein paar Fragen zum Milan
« Antwort #23 am: Do 28.06.2018, 18:22:41 »
Toll erklärt @Ektus...die Lösung mir dem X86 Emulator ist eigentlich eine gute Idee...da es aber nicht universell mit allen PC-Karten funktioniert frage ich mich ob das die beste Möglichkeit ist... kann man sagen welche Karten damit erkannt werden?

Offline Lukas Frank

  • Benutzer
  • Beiträge: 7.659
  • fancy Atari Musik anDA Dance "Agare Hinu Harukana"
Re: Ein paar Fragen zum Milan
« Antwort #24 am: Do 28.06.2018, 18:46:58 »
Kann es etwas schlechteres geben als wenn ein 68k einen X86 emuliert ...

Warum programmiert man die Grafikkarte nicht direkt ?

Offline Arthur

  • Benutzer
  • Beiträge: 7.189
  • Mein Atari erinnert mich an die gute alte Zeit..
Re: Ein paar Fragen zum Milan
« Antwort #25 am: Do 28.06.2018, 18:51:50 »
Ich denke wenn der X86 Emulator auch nur mit jeder 3-4 Karte zurecht kommt dann hat sich der Aufwand schon gelohnt... und spart platz im EEProm oder Flash... des Milan.

Offline mfro

  • Benutzer
  • Beiträge: 1.094
Re: Ein paar Fragen zum Milan
« Antwort #26 am: Do 28.06.2018, 18:52:17 »
Toll erklärt @Ektus...die Lösung mir dem X86 Emulator ist eigentlich eine gute Idee...da es aber nicht universell mit allen PC-Karten funktioniert frage ich mich ob das die beste Möglichkeit ist... kann man sagen welche Karten damit erkannt werden?

Das funktioniert mit jeder PC-Karte (ISA und PCI). Damit der PC beim Booten etwas auf dem Bildschirm anzeigen kann, muss das ROM-BIOS der Karte einmal gestartet worden sein. Danach funktioniert die (Text-) Ausgabe über den (PC BIOS-) INT10H.

Dummerweise ist das ROM-BIOS (natürlich) x86-Code. Also muss auf einer m68k-Maschine erst der Emulator geladen und die BIOS-Initialisierung ausgeführt werden (dauert auf einer 200 MHz ColdFire-Maschine und einer ATI 9500 z.B. etwa 20 Sekunden, auf langsameren Maschinen entsprechend länger).

Weil die Karten und Chipsätze von PC-Grafikkarten immer ein streng gehütetes Geheimnis waren und es für die meisten ohne NDA keine Entwicklerdokumentation gab, ist das meist die einzige Möglichkeit, den Dingern Leben einzuhauchen. "Erfunden" wurde die Vorgehensweise von NetBSD für Alpha-Maschinen (die ja dasselbe Problem hatten).

Offline Arthur

  • Benutzer
  • Beiträge: 7.189
  • Mein Atari erinnert mich an die gute alte Zeit..
Re: Ein paar Fragen zum Milan
« Antwort #27 am: Do 28.06.2018, 19:20:39 »
Dummerweise ist das ROM-BIOS (natürlich) x86-Code. Also muss auf einer m68k-Maschine erst der Emulator geladen und die BIOS-Initialisierung ausgeführt werden (dauert auf einer 200 MHz ColdFire-Maschine und einer ATI 9500 z.B. etwa 20 Sekunden, auf langsameren Maschinen entsprechend länger).

Sorry das ich hier einhake auch wenn es weniger mit dem Thema zu tun hat. Didier Méquignon hatte ja vor langer Zeit diverse ATI-Karten mit CT60 und mit der Firebee ans Rennen bekommen. Vielleicht weist du ob da noch etwas kommt, man hört da einfach nicht neues zu dem Thema. Was ich sehr schade finde...

Offline mfro

  • Benutzer
  • Beiträge: 1.094
Re: Ein paar Fragen zum Milan
« Antwort #28 am: Do 28.06.2018, 19:32:15 »
...Didier Méquignon hatte ja vor langer Zeit diverse ATI-Karten mit CT60 und mit der Firebee ans Rennen bekommen...

Dass von Didier noch etwas kommt, halte ich für unwahrscheinlich. Er scheint sich komplett aus der Szene zurückgezogen zu haben.

Verloren ist aber nichts. Der Code, den Didier benutzt hat, stammt praktisch 1:1 von PowerPC-Linux.
In BaS_gcc (Firmware für die FireBee und andere ColdFires) ist der x86-Emulator (in meiner Version von NetBSD) drin und läuft. Treiber (unbeschleunigt) für die ATI-Karten findet man in den fVDI-Quellen. Wer will (und kann), kann also einen Treiber basteln.

Offline Nervengift

  • Benutzer
  • Beiträge: 1.296
Re: Ein paar Fragen zum Milan
« Antwort #29 am: Do 28.06.2018, 19:55:19 »
Dummerweise ist das ROM-BIOS (natürlich) x86-Code. Also muss auf einer m68k-Maschine erst der Emulator geladen und die BIOS-Initialisierung ausgeführt werden (dauert auf einer 200 MHz ColdFire-Maschine und einer ATI 9500 z.B. etwa 20 Sekunden, auf langsameren Maschinen entsprechend länger).

Sorry das ich hier einhake auch wenn es weniger mit dem Thema zu tun hat. Didier Méquignon hatte ja vor langer Zeit diverse ATI-Karten mit CT60 und mit der Firebee ans Rennen bekommen. Vielleicht weist du ob da noch etwas kommt, man hört da einfach nicht neues zu dem Thema. Was ich sehr schade finde...

In Sachen Firebee ist das insofern echt doof, dass es noch immer keine Backplane gibt, die man mit einer entsprechenden ATI-Karte nutzen könnte. @tuxie wollte da mal was basteln. Keine Ahnung ob das noch aktuell ist.

Meinen Milan nutze ich mit einer ATI Grafikkarte, die ein echt gutes Bild an dem LCD macht, den ich am Milan dran hängen habe und ich habe höhere Farbtiefen zur Verfügung. Die S3 ist aber etwas schneller, was am Treiber liegt. Beim ATI Treiber könnte wohl noch ein wenig optimiert werden, denke ich.

@Choccos Idee mit einem VDI-Treiber bzw. zwei Grafikkarten im Milan und ggf. zwei Monitoren, die hat echt was, finde ich. ;)
520 ST(M) (TOS 1.02), Falcon030 (16 MHz, 16 MB RAM, CF-Karte, MiNT & MyAES), Milan040 (25 MHz, 48 MB RAM, EasyMiNT 1.90), Firebee (2nd Edition), PowerMac G5 Late 2005 (2 x 2,3 GHz, Mac OS 10.5), iMac 4K Late 2015 (intel Core i7 4 x 3,3 GHz, Mac OS 10.11.6), IBM XT SFD (640 KB RAM, DR DOS 6.0), Compaq LTE 5300 (Pentium/133 MHz, DR-DOS 7.03), AT-PC (Cyrix 6x86L/200 MHz, Windows 98 SE/MS-DOS 6.22 & Windows 3.11)