Für manche TAPs könnte FlashGetType interessant sein, da es den DVB-Typ des aktuellen Geräts retour liefert. Ich hoffe, ich habe keine Funktion übersehen, da das Laden der Datei in der allgemeinen Initialisierung stattfindet und einige Funktionen nur mehr auf entsprechend gesetzte Variablen zugreift.[/quote]
Danke für die Infos.
Mit freundlichen Grüßen
asrael
SRP2401CI+ Eco: TAPs aktuell im Test
TF5500PVR (FW: 03.01.2007 PTFDeSUUuEWfUaGmTsXl) mit Samsung HD103UI, Equip Adapter
TAP im Autostart: Bootmenu 0.33 Durch dieses nachgeladen:Normalerweise: TAP Commander, NiceDisplay, Standby, ImproBox, PiP, Fastskip, Stirf, iTiNa, Overfly, Filer2, TSBProtector, Goldfish.Bei Bedarf: Radiotext, acadelog, TopfAMP, MediaManager, PowerRestore, ScreenCapture_OSD, HDDInfo, MiniMax, Snake, poker, sudoko, SimpleCharEditor, filer1.20.
INIGetRGB, INIGetRGB8, INISetRGB, INISetRGB8 hinzugefügt: liefern bzw. schreiben RGB-Werte in eine INI-Datei
HDD_PlaySlotGetAddress hinzugefügt: liefert die Adresse für die PlaySlot-Struktur
HDD_DecodeRECHeader erkennt automatisch Header der TF5700-Serie
HDD_DecodeRECHeader liefert den DVB-Typ als Rückgabewert
FLASH_TYPE und HEADER_TYPE wurden zu einer SYSTEM_TYPE zusammengefügt
Shutdown kompatibel zur neuen UK-Firmware gemacht (thanks to simonc)
SysID 2456 (TF6000PVRE) zur isMasterpiece-Tabelle hinzugefügt
CallTraceExitResult und CallTraceComment hinzugefügt
HDD_TAP_GetCurrentDirCluster liefert im Fehlerfall -1 statt 0
Fix: wenn ein REC-Header in ein anders DVB-System gewandelt wird, erhält der Transponder-Block sinnvolle Werte, so dass eine neuerliche Erkennung mittels HDD_DecodeRECHeader korrekt funktioniert
Fix: uninitialisierte Variable in CompressBlock gefixt
Fix: wenn in einer INI-Datei ein Integerwert angegeben wird und dieser größer als das vorgegebene Maximum oder kleiner als das Minimum ist, so wird statt dem Default-Wert das Minimum oder Maximum zurückgegeben
Die folgenden Änderungen wurden von R2-D2 gespendet:
TAP_Hdd_Fwrite zum TAPAPIFix hinzugefügt: somit sollte kein Müll mehr am Ende einer Datei stehen.
TAP_Hdd_Flen TAPAPIFix: erkennt, ob die Firmware gepatcht oder korrigiert wurde und somit selbst den richtigen Wert liefert
[quote=""FireBird""]
[*]HDD_DecodeRECHeader erkennt automatisch Header der TF5700-Serie
[*]HDD_DecodeRECHeader liefert den DVB-Typ als Rückgabewert
[*]Fix: wenn ein REC-Header in ein anders DVB-System gewandelt wird, erhält der Transponder-Block sinnvolle Werte, so dass eine neuerliche Erkennung mittels HDD_DecodeRECHeader korrekt funktioniert
[/quote]
da werd ich in den Weihnachtstagen was zu tun haben
TAP_Hdd_Fwrite zum TAPAPIFix hinzugefügt: somit sollte kein Müll mehr am Ende einer Datei stehen.
d.h. ein autom. integriertes Truncate?
[*]TAP_Hdd_Flen TAPAPIFix: erkennt, ob die Firmware gepatcht oder korrigiert wurde und somit selbst den richtigen Wert liefert
ich glaube ich muss da mal meine TAPs danach anpassen.
Grüsse
Sigittarius-E S-VHS ist nicht S-Video. So schreibt man: Standard, Satellit, wäre. TABs sind was für die Dritten. TF5000PVR HD:SP2514N CAM:irdeto CW v3.15 ORF Lüfter:Noiseblocker USF S1+Poti. Verb./b]Silex SX2kU2 TV:Toshiba 42" Auto Start-Reihenf.: GMTTimerBug WA2|QT|IB Prem|StopExit|WSSKiller|JagEPG|Matrix Screensaver|PiP|DisplayTAP|wwww|reccopy|TSBProtector v0.9.0|CheckAndCreate_EPGTimer v1.1 Manuell:SimpleCharEditor v3.09b,SetCryptFlag v0.3,exie v0.3,EBM v0.01
Kannst Du Dir erklären, warum Filer mit der neuen Lib nicht mehr auf dem 6000er läuft (evtl. isMasterpiece?)?
Bin dann zurück auf die vorherige Lib und damit funktioniert es...
Oder muss in Filer noch etwas angepasst werden, damit es wieder mit der neuen Lib kompatibel ist?
Edit: Die neu mitgelieferte Firmware.dat war übrigens etwas älter als die Vorherige.?
allzu viele Kommentare möchte ich zum 6000er nicht mehr abgeben.
[quote=""Elle4u""]Kannst Du Dir erklären, warum Filer mit der neuen Lib nicht mehr auf dem 6000er läuft (evtl. isMasterpiece?)?[/quote]
Du hast recht, dass die SysID 2456 (TF6000PVRE) dazugekommen ist, da es hier berechtigterweise ein Problem gegeben hat.
Oder muss in Filer noch etwas angepasst werden, damit es wieder mit der neuen Lib kompatibel ist?
Angepasst nicht, aber ich werde mir in Filer die Verwendung von isMasterpiece nocheinmal zu Gemüte führen.
Edit: Die neu mitgelieferte Firmware.dat war übrigens etwas älter als die Vorherige.?
allzu viele Kommentare möchte ich zum 6000er nicht mehr abgeben.[/quote]
[quote=""FireBird""]Angepasst nicht, aber ich werde mir in Filer die Verwendung von isMasterpiece nocheinmal zu Gemüte führen.[/quote]
Danke, das ist nett
[quote=""FireBird""]Die sind beide schon wieder alt. [/quote]
etwas früher als eigentlich geplant, gibt es wieder ein Update. Der Grund ist, dass die Finnen eine neue Firmware ausgefasst haben, die in einem Bereich modifiziert wurde, den die Lib für die Initialisierung benötigte. Diese Version enthält eine neue Initialisierungsroutine, die ?drüben? funktioniert. Die Frage ist, wann sich diese Änderung auch hierher durchschlägt.
Schöne Grüsse von ibbi: ihr sollt alle die Rückgabewerte von Funktionen testen, damit die armen Töpfe nicht gleich abstürzen.
Weitere Änderungen:
Initialisierung für die neue finnische Firmware modifiziert
InitTAPexFailedMsg hinzugefügt: diese Funktion zeigt für 5 Sekunden einen Dialog an, dass die Lib nicht geladen werden konnte. Zusätzlich enthält die Meldung die SysID, die Firmwareversion und das $gp CPU-Register. Sie eignet sich wunderbar um InitTAPex-Fehler zu dokumentieren (siehe oben )
EnqueueEvent hinzugefügt: hängt einen Event an die Event-Queue an. Ähnlich TAP_GenerateEvent, aber nicht auf Key-Events beschränkt.
LoadFirmwareDat hinzugefügt: diese Funktion lädt die Datei ?Firmware.dat? und liefert Pointer auf die einzelnen Strukturen. Mit LoadFirmwareDat (NULL, NULL, NULL) kann die Existenz der Datei geprüft werden.
PatchFindType optimiert (thanks to R2-D2)
HDD_TAP_SendEvent modifiziert: auch der Sender enthält den gesendeten Event.
TAP_Hdd_Fopen zur TAPAPIFix hinzugefügt (thanks to R2-D2)
PatchInstructionSequence liefert TRUE/FALSE
HDD_GetHDDInfo so modifiziert, dass es auch auf dem TF6xxx korrekt funktioniert (thanks to Django for testing)
PatchApply prüft vor dem Patchen, ob ein Patch noch angewendet werden kann (überlappende Patches)
Bugfix: tTAPEntryPoints-Struktur korrigiert und fehlende TAP_SystemProc hinzugefügt (thanks to R2-D2)
Bugfix: INIGetInt hat keine negativen Werte zugelassen
Bugfix: FindInstructionSequence und PatchInstructionSequence brechen ab, falls Pattern und Mask ungleich lang sind
Bugfix: Falls DialogProfile.ini verschoben wurde, schreibt DialogProfileSaveDefault in die verschobene Datei, anstatt eine neue in /ProgramFiles zu erzeugen.
Bugfix: DialogProfileSave konnte ein Profile nicht immer in das Verzeichnis /ProgramFiles/Settings sichern
Bugfix: INISaveFile stürzte ab, wenn INILocation == INILOCATION_AtAppName und AppName == NULL
[quote=""FireBird""]Schöne Grüsse von ibbi: ihr sollt alle die Rückgabewerte von Funktionen testen, damit die armen Töpfe nicht gleich abstürzen.[/quote]
[quote=""FireBird""]Diese Version enthält eine neue Initialisierungsroutine, die „drüben“ funktioniert.[/quote]
Ich gehe also davon aus, dass die Rückmeldung aus Finnland positiv ausgefallen ist?
[quote=""FireBird""]Schöne Grüsse von ibbi: ihr sollt alle die Rückgabewerte von Funktionen testen, damit die armen Töpfe nicht gleich abstürzen.[/quote]
Wenn ich mal wüsste welcher Aufruf den sofortigen Absturz verursacht hat.
"InitTAPAPIFix();"?
Wenigstens war Filer nicht das einzig betroffene TAP
Edit: Diese Funktion hat keinen Rückgabewert
[quote=""FireBird""]
LoadFirmwareDat hinzugefügt: diese Funktion lädt die Datei „Firmware.dat“ und liefert Pointer auf die einzelnen Strukturen. Mit LoadFirmwareDat (NULL, NULL, NULL) kann die Existenz der Datei geprüft werden.
[/quote]
Muss ich das jetzt zukünftig extra aufrufen oder reicht "FlashGetType();" weiterhin?
[quote=""FireBird""]
TAP_Hdd_Fopen zur TAPAPIFix hinzugefügt (thanks to R2-D2)
[/quote]
Was war denn dort das Problem?
Zuletzt geändert von Elle4u am Mo 14. Jan 2008, 21:33, insgesamt 1-mal geändert.
[quote=""Elle4u""] Ich gehe also davon aus, dass die Rückmeldung aus Finnland positiv ausgefallen ist? [/quote]
Liest da jemand seine Mails nicht?
Wenn ich mal wüsste welcher Aufruf den sofortigen Absturz verursacht hat.
"InitTAPAPIFix();"?
InitTAPex und InitTAPAPIFix sind voneinander unabhängig. Es gab keinen sofortigen Absturz. Alle Funktionen, die von der Initialisierung abhängig sind, liefern dann ebenfalls einen Fehlercode retour. Irgendwann geht es halt schief. InitTAPAPIFix stürzt sicher nicht ab.
Muss ich das jetzt zukünftig extra aufrufen oder reicht "FlashGetType();" weiterhin?
Eine „Vorbereitung“ ist nicht notwendig, die Datei wird weiterhin bei Bedarf geladen.
Was war denn dort das Problem?
Da geht es ebenfalls um den 512-Byte-Bug. TAP_Hdd_Fopen hat die TYPE_File-Struktur schon nicht richtig bestückt.
[quote=""asrael""]Was ist denn der Unterschied zwischen EnqueueEvent und HDD_TAP_SendEvent?[/quote]
SendEvent-Events sind nur für TAPs sichtbar, EnqueueEvent arbeitet auf der Kernel-Ebene (EnqueueEvent (0xe602,0) stoppt z.B. alle Aufnahmen). An den Möglichkeiten wird noch geforscht.
[quote=""FireBird""]
TAP_Hdd_Fopen zur TAPAPIFix hinzugefügt (thanks to R2-D2)
[/quote]
Gibt es etwas nähere Info dazu was bei einem Fopen u.U. passieren konnte ?
Ich habe derzeit einen leicht nachvollziehbaren Freeze der scheinbar immer bei dem Gleichem FOpen passiert. Parameter ist ein gültiger String, von daher sollte das ok sein.
Ich gebe ja zu ich konnte, als ich das zuerst las kaum glauben. Wird das doch so oft und von sovielen benutzt. Ich habe wegen diesem scheinbaren Fopen Problem mal die Neue Lib genommen. Zumindest läuft das Tap wesentlich öfter durch die Funktion als mit der Alten. Ich würde aber gern, falls möglich, ausschließen das es nur wegen geänderter Speicherzuordnung besser geht. Könnte ja auch ein Überlaufproblem an anderer Stelle in meinem Code sein. Daher wäre es prima wenn ich irgendwie definitiv feststellen könnte das der Fopen Freeze den Ihr hier gefixt habt der ist mit dem ich gerade kämpfe.
->..... Kein Support oder Fragen zur Registrierung per PN ! http://www.iTiNa.de
5000 PVRt, 500GB Samsung, iTiNa next Generation SRP-2100, SRP-2410, iTiNa-TMS next Generation Das Leben ist viel zu lang um schlechten Wein zu trinken.
?Zwei Dinge sind unendlich, das Universum und die menschliche Dummheit,
aber bei dem Universum bin ich mir noch nicht ganz sicher.? Albert Einstein
[quote=""FireBird""]Also ein Freeze wurde hier nicht gefixt, sondern die Dateigrösse in der File-Struktur wird korrigiert.[/quote]
Ah ok, danke. Dann gehts wohl doch nur wegen geänderter Speicherzuordnung. Mist aber auch.
->..... Kein Support oder Fragen zur Registrierung per PN ! http://www.iTiNa.de
5000 PVRt, 500GB Samsung, iTiNa next Generation SRP-2100, SRP-2410, iTiNa-TMS next Generation Das Leben ist viel zu lang um schlechten Wein zu trinken.
?Zwei Dinge sind unendlich, das Universum und die menschliche Dummheit,
aber bei dem Universum bin ich mir noch nicht ganz sicher.? Albert Einstein
Wäre ich ein , würde ich anmerken, dass die Need_Flen_Adjust(), die in Fixed_TAP_Hdd_Fopen() aufgerufen wird, mit uninitialisierten Variablen f und s arbeitet. Da ich nicht weiß, was die TAP_Hdd_Flen() davon tatsächlich verwendet und wie sie auf zufällige Inhalte vom Rest reagiert, muss das aber kein Problem sein, zumal es nur beim ersten Fopen im TAP relevant ist.