VGA-Ausgabe unter WinCE aktivieren

Grundsätzliches

Im Foren-Thread (KLICK) habe ich über die erfolgreiche Aktivierung der VGA-Ausgabe an der Thomson-STB unter WinCE berichtet.

Nachdem einige weitere „Erfolgs-„Meldungen und Erfahrungen anderer User dazugekommen sind, soll nun dieser Thread als Sammelstelle unserer Erkenntnisse sowie Schritt-für-Schritt-Anleitung dienen. Damit soll allen Usern geholfen werden, die sich ebenfalls mit dem Projekt „VGA-Ausgabe“ beschäftigen.

Hardware-Umbau: VGA-Port bereitstellen

Ich habe im hier im WIKI eine Schritt-für-Schritt-Anleitung zum Einbau eines VGA-Ports bereitgestellt.

Umbau-Anleitung

WinCE-Registry-Datei extrahieren

Um nun die VGA-Ausgabe auch softwaretechnisch zu aktivieren, ist eine Veränderung in der Registry des auf der Box laufenden WinCE-Images nötig. Die Registry ist als Datei in der NK.BIN hinterlegt und muss zur weiteren Bearbeitung aus dieser extrahiert werden.

Dazu wird das Tool „BINMOD.EXE“ verwendet, welches Bestandteil des „Windows CE Platform Builder“ ist. Der Platform Builder muss dafür auf einem PC installiert werden. Eine 120-Tage-Testversion gibt es bei Microsoft zum kostenfreien Download. Für die, die sich nicht den kompletten Plattformbuilder installieren wollen, gibt es die nötigen Tools auch separat zum Download.

Die Datei „binmod.exe“ befindet sich nach der Installation im Verzeichnis “<X:>\WINCE500\PUBLIC\COMMON\OAK\BIN\I386\“. Möchte man Images bearbeiten, so kopiert man am Besten die „binmod.exe“ sowie die „compress.dll“ in das gewünschte Arbeitsverzeichnis mit der NK.BIN.

Die Registry-Datei in der NK.BIN heißt „default.fdf“ und wird schließlich mit folgendem Befehl extrahiert:

BINMOD.EXE -i NK.bin -e default.fdf

Registry-Datei bearbeiten

Die extrahierte Datei muss nun mit den neuen Einträgen versehen werden. Da die „default.fdf“ allerdings als Binär-Datei vorliegt, muss diese mit einem HEX-Editor geöffnet werden. Ich nutze dazu folgenden: Freeware Hex Editor XVI32, u.a. weil man damit auch gut nach Strings suchen kann.

Den Reg-Schlüssel, dessen Wert man ändern muss, heißt DigitalPort und ist über den folgenden Suchwert mit dem Hex-Editor zu finden:
44 00 69 00 67 00 69 00 74 00 61 00 6C 00 50 00 6F 00 72 00 74

Laut Video-Registry aus dem BSP (Board Support Package) von Intel sind für diesen Schlüssel folgende Werte eintragbar:

;-----------------------------------------------------------------------------
; Possible target Display Port combo:
;   DigitalPort 0 == Use Analog
;   DigitalPort 1 == Use DVO   **(Thomson-Standard)**
;   DigitalPort 2 == Reserved
;   DigitalPort 4 == Use Analog + DVO (Twin mode: common timing across ports)
;     Note: 1.with Twin mode use SetHead=1 so the digital port is primary.
;          2.if we want sii9030 output 480i/576i we have to set it to 1(DVO only).
;-----------------------------------------------------------------------------
   "DigitalPort"=dword:4

Eine vollständige Version der Video-Registry gibts im WIKI.

Um nun den gewünschten Wert in die default.fdf einzutragen, springt man zum vierten Hex-Wert nach dem „t“ und trägt diesen dort ein („00“ oder „04“).

Was resultiert schließlich aus den beiden verschiedenen Werten:

„00“ VGA-Auflösung: 800×600 @ 50Hz Nur der Analoge VGA-Ausgang ist aktiv. S-Video und Composite geben kein Signal mehr.

„04“ VGA-Auflösung: 720×576 @ 50Hz Alle Video-Ports sind aktiv (analog und digital). Bildausgabe auf VGA und S-Video bzw. Composite.

Registry-Datei zurückspielen

Mit dem Befehl

BINMOD.EXE -i NK.bin -r default.fdf

wird die „default.fdf“ wieder in die NK.BIN gepackt.

Sollte eine Fehlermeldung auftauchen, in welcher bemängelt wird, dass die einzufügende Datei zu groß ist, müssen wir diese noch etwas schrumpfen. Dazu die „default.fdf“ wieder den Hex-Editor öffnen und nach folgendem Wert suchen:
68 00 74 00 74 00 70 00 3A 00 2F 00 2F 00 77 00 77 00 77 ("http://www")
Dort ist die Startseite des Windows MediaPlayers eingetragen, welche wir bedenkenlos mit vielen „00“ überschreiben können.

Datei wieder abspeichern und erneut den Einfügebefehl ausführen.

Wir haben nun eine modifizierte NK.BIN, die wir einfach wieder auf die CF-Karte kopieren.

WinCE starten und sich über die VGA-Ausgabe freuen :-)

Hohe Auflösung aktivieren

Nach der oben angeführten Beschreibung kann durch Änderung der nachfolgend aufgeführten Werte die Auflösung geändert werden. Die Änderungen sind jedoch nur an einer original NK.BIN möglich !! Eine bereits modifizierte NK.BIN bietet für eine weitere Änderung nicht ausreichend Platz, so daß die durchgeführten Änderungen der DEFAULT.FDF nicht in die NK.BIN zurückgeschrieben werden können.

  • tv output –> Wert geändert von 01 → 00 (VGA-Ausgabe aktivieren)

  • tv format –> Wert bleibt auf 04, es wurde an anderer stelle schon mal der Wert 14 eingetragen (digital tv), das macht aber keinen Sinn, da der Vga-Ausgang analoge Signale liefert. Für den Digital-Ausgang fehlen noch ein paar Bauteile, die vermutlich in die Nähe der nicht bestückten Scart-Stecker gehören würden. Wenn diese bestückt währen, so hätte die Box sicherlich entweder einen DVI- oder aber einen HDMI-Ausgang.

  • digitalport –> Wert geändert von 01 → 00 Ausgabe auf Vga-Ausgang umschalten

  • maxfbsize –> Wert geändert von 00 00 30 → 00 00 5a diese Angabe stammt von Intel für eine Auflösung von 1280 x 720 x 32 bpp

  • refresh –> Wert geändert von 32 → 3c Bildwiederholfrequenz von 50hz auf 60hz

  • height –> Wert geändert von 40 02 → d0 02 Höhe von 576 auf 720 (hier ist auch der Wert 00 03 → 768 möglich)

  • width –> Wert geändert von d0 02 → 00 05 Breite von 720 auf 1280 (hier ist auch der Wert 00 04 → 1024 möglich)

  • overscan ratio –> Wert geändert von 01 → 02 das löste dann mein Problem, daß das Bild nach links verschoben war (lesen schützt, lesen nützt → Ränderpatch)

  • regcheck.exe –> mit 00 überschrieben (Platz schaffen für die Änderungen)

Wozu das Ganze?

Mit einem VGA-Port lässt sich z.B. ein vielfach besseres Bild auf LCD-Fernseher bringen, da man direkt die optimale Auflösung an den LCD-Fernseher schicken kann.

FAQ:

  • F: Zeigt die VGA-Ausgabe BIOS-Informationen an?
  • A: NEIN. Die erste Ausgabe auf dem VGA-Port beginnt, nachdem der grüne Ladebalken von „maxdome VOD wird Initialisiert“ voll ist und zum nächsten Bild umgeschaltet wird.
  • F: Lassen sich VGA- und S-Video-Port gleichzeitig nutzen?
  • A: Laut Test und Aussage eines Forum-Users JA. Jedoch maximal mit einer Auflösung von 800 X 600 Punkten.

Tipps und Tricks:

Die Baustellen:

  • Momentan bekommen wir der Box noch keine höhere Auflösung als 800×600 entlockt. Dies wäre der erste Anlaufpunkt für weitere Tests mit verschiedenen Werten der Registry-Datei.[erledigt]
  • Einen Patcher (á la Ränderpatch) bereitstellen, der auf eine originale NK.BIN angewendet werden kann.
 
stb/thomson/ip1101/software/vga_ausgabe.txt · Zuletzt geändert: 2013/04/27 16:32 (Externe Bearbeitung)
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki tonne@allontv.de