aXeL ist eine Erweiterung für den Topfield Bootloader. Er verkürzt die Startzeit um etwa 2,5-2,8 Sekunden. Die Startzeit eines TF5000 mit aXeL beträgt etwa 8,5 Sekunden (bis zum ersten Bild nach dem Einschalten, Firmware mit installierten Startbeschleunigungs- und HDD-Patches).
aXeL wurde erfolgreich mit folgenden Topfield Receivern getestet:
- TF5000 PVR
- TF5000 PVR Masterpiece
- TF5500 PVR
- TF5000 PVRt
- TF5200 PVRc
- TF5100 PVRc
- TF5800 PVRt
- TF6000 PVR
Möglicherweise funktioniert er auch mit anderen Topfield-Receivern, die auf einer ähnlichen Hardware basieren.
Download:Installation
Um aXeL mit vorhandenen Mitteln installieren zu können, sind folgende Schritte erforderlich:
- Die Firmware-TFD-Datei muß für den Einsatz mit aXeL mit TfdExtenderGui vorbereitet werden.
(Alternativ auch mit dem beiliegenden Command-Line-Tool:
c:\Topfield> TfdExtender <input TFD file> <output TFD file>) - Die vorbereitete TFD-Datei in den Receiver laden (mit TFDN_USB oder VegaPack).
- Die beiliegende Datei aXeL.tfd in den Receiver laden (sie enthält die Universal-System-ID 39321).
- Den Receiver neu booten.
Bekannte Nebenwirkungen
Es ist nicht möglich, automatisches Laden von TAPs durch Drücken der 0 zu unterbrechen. Der Receiver lädt die TAPs, sobald die Firmware gestartet wurde und die Festplatte bereit ist. Da aXeL die Festplatte früh aktiviert, ist das Zeitfenster zum Drücken der 0 sehr klein.
Workaround: aXeL 1.01 (und neuer) unterscheidet zwischen Einschalten durch Fernbedienung und am Frontpanel. Wenn der Receiver am Fronpanel eingeschaltet wird, läßt aXeL die frühzeitige Aktivierung der Festplatte aus. Somit steht mehr Zeit zum Drücken der 0 zur Verfügung, um das Starten von TAPs zu unterbrechen.
Manchmal verschwindet das Bild für ca. 1 Sekunde direkt nach dem Start. Dieser Effekt wird durch Starten von leistungshungrigen TAPs verursacht, die viel CPU-Zeit in Anspruch nehmen.
Workaround: Wenn die TAPs etwas später gestartet werden (z.B. durch das Bootmenu-TAP), tritt dieser Effekt nicht auf.
Haftungsausschluss
Benutzung dieser Software erfolgt auf eigene Gefahr. Auch wenn das Konzept (siehe unten) keine tiefgreifende Manipulationen am Receiver vorsieht, kann der Receiver im ungünstigsten Falle funktionsuntüchtig werden. Der Autor übernimmt keine Gewährleistung oder Haftung für etwaige Schäden, Folgeschäden oder Ausfälle, die entstehen können.
Technische Details
aXeL kompensiert zwei Schwächen des Originalbootloaders:
- aXeL aktiviert sofort die Festplatte, sodaß sie der Firmware deutlich früher zur Verfügung steht
- aXeL beschleunigt die Dekomprimierung der komprimierten Firmware
Standard Flash-Layout:
bfc00000 - bfc00fff: primärer Topfield Bootloader
bfc01000 - bfc0ffff: sekundärer Topfield Bootloader
bfc10000 - bfdfffff: komprimiertes Firmwareimage
...
Flash-Layout mit aXeL:
bfc00000 - bfc00fff: primärer Topfield Bootloader
bfc01000 - bfc0ffff: sekundärer Topfield Bootloader
bfc10000 - bf1fffff: komprimiertes aXeL-Image
bfc20000 - bfdfffff: komprimiertes Firmwareimage
...
Für den sekundären Bootloader ist aXeL "nur" ein kleines Firmwareimage, das schnell entpackt werden kann. aXeL aktiviert die Festplatte, verschiebt sich in den Bereich 0x81000000 und entpackt das eigentliche Firmwareimage, das sich hinter aXeL befindet.
Der Installationstrick basiert auf der Beobachtung, daß der sekundäre Topfield Bootloader nur so viele Flashblöcke löscht, wie für die neue Fimware erforderlich sind. D.h. ist die Firmware kleiner als 64 kB, wird nur der erste Flashblock gelöscht und die anderen behalten ihre Daten. Um dieses Verhalten auszunutzen, ist eine TFD-Datei erforderlich, in der das eigentliche Firmwareimage ab dem Offset +64 kB anfängt. Da die externen Tools üblicherweise die TFD-Dateien vor dem Senden umkodieren, ist es zwingend erforderlich, daß die Fülldaten nicht komprimierbar sind, damit sie immer die ersten 64 kB im Flash belegen.
aXeL ersetzt nicht den Originalbootloader, sondern ergänzt ihn auf eine harmlose Weise. Dies soll sicherstellen, daß keine irreversiblen Installationsfehler passieren.
Ich bedanke mich bei FireBird für die Projektidee und für seine tatkräftige Unterstützung mit Codesegmenten und Hinweisen sowie Fehleranalysen. Er hat mich ermutigt, nicht aufzugeben.
Ich danke auch Happy, der aXeL auf seinem geliebten Topf getestet hat.
Versionen
2007-05-05 1.01
- Detektion der Einschaltursache hinzugefügt, um ggf. Aktivierung der Festplatte zu verzögern (erforderlich für Unterbrechung von TAP-Start mit 0)
- Größe der Binärdatei erhöht, um Laden auf dem TF6000 zu ermöglichen
2007-05-01 1.00
- erste Version