Masterpiece Version von TSRComander?

Zusatz-Programme für Receiver der 5000er und 6000er Serie.

Hier geht's um alles, was mit den TAP Anwendungen für den PVR5x00/6000 zu tun hat.
umtauscher
Erfahrener Benutzer
Erfahrener Benutzer
Beiträge: 216
Registriert: Di 20. Dez 2005, 23:16
Receivertyp: 2401CI+
Wohnort: Köln

Masterpiece Version von TSRComander?

#1

Beitrag von umtauscher » Mo 22. Mai 2006, 18:18

Hallo Leute,

gibt es irgendwo eine Version von TSRCommander, die auf dem Masterpiece vernünftig läuft? (Ich vermute jedenfalls dass es ein MP Problem ist)
Anscheinend kommt TSRCommander nicht mit dem OSD klar. So blendet er sich immer ein, wenn man im Improbox Papierkorb Exit drückt oder im SubSwitch Menue oder im EPGUploader.

Meiner Meinung nach scheint die Funktion OSDActive() nicht sauber zu funktionieren.

Aushilfsweise wäre mir auch mit ein paar Tips von den TAP Gurus geholfen, um den TSRCommander selber zu modifizieren.

Danke im Voraus
Umtauscher
SRP2401CI+, torrodial-multifocus-antenne T90, 17/8 Switch, TAPs: SmartEPG, I-Box, Smartskip

DaGonzo
Topfversteher
Topfversteher
Beiträge: 286
Registriert: Sa 10. Dez 2005, 21:23
Wohnort: BM

#2

Beitrag von DaGonzo » Mo 22. Mai 2006, 21:19

Hallo, weiß zwar nicht genau wie es beim MP aussieht, aber kannst ja mal versuchen die startreihenfolge zu ändern, hatte da auch schon mal probs mit.

MFG Markus
MFG Markus

umtauscher
Erfahrener Benutzer
Erfahrener Benutzer
Beiträge: 216
Registriert: Di 20. Dez 2005, 23:16
Receivertyp: 2401CI+
Wohnort: Köln

#3

Beitrag von umtauscher » Mo 22. Mai 2006, 22:43

nö, das ist nicht der Grund. TSRCommander startet zuerst, dann Improbox und anschließend der Rest.
Da Problem ist, dass TSRComander bei manchen TAPs nicht erkennt, dass schon ein anderes TAP aktiv ist und sich mit der Exit-Taste einblendet.

Umtauscher
SRP2401CI+, torrodial-multifocus-antenne T90, 17/8 Switch, TAPs: SmartEPG, I-Box, Smartskip

DaGonzo
Topfversteher
Topfversteher
Beiträge: 286
Registriert: Sa 10. Dez 2005, 21:23
Wohnort: BM

#4

Beitrag von DaGonzo » Mo 22. Mai 2006, 22:45

ok, habe da dann keine antwort für dich. sorry.
MFG Markus

Benutzeravatar
Elle4u
TAP-Chirurg

<div title=Selbsternannter Allesknutscher>TAP-Chirurg</div>
Beiträge: 11971
Registriert: Fr 9. Dez 2005, 16:48
Receivertyp: SRP-2410 (2 TB)
Receiverfirmware: TF-BCPCE 1.11.00 (19.12.2013)
Wohnort: Osburg
Kontaktdaten:

#5

Beitrag von Elle4u » Mo 22. Mai 2006, 22:55

umtauscher hat geschrieben:nö, das ist nicht der Grund. TSRCommander startet zuerst, dann Improbox und anschließend der Rest.
Da Problem ist, dass TSRComander bei manchen TAPs nicht erkennt, dass schon ein anderes TAP aktiv ist und sich mit der Exit-Taste einblendet.

Umtauscher
Evtl. hilft Dir da mein kleines StopExit-TAP?

Da mußt Du 2x Exit innerhalb einer Sekunde drücken, damit es durchgereicht wird...
Gruß,
Elle4u

umtauscher
Erfahrener Benutzer
Erfahrener Benutzer
Beiträge: 216
Registriert: Di 20. Dez 2005, 23:16
Receivertyp: 2401CI+
Wohnort: Köln

#6

Beitrag von umtauscher » Mo 22. Mai 2006, 23:44

Danke, aber ich würde schon lieber dem Problem auf den Grund gehen.
Was kann denn grundsätzlich die Ursache sein, wenn ein Fenster welches mit TAP_Win_Create erzeugt wird, beim Abfragen des OSD-Memorys nicht gesehen wird?
SRP2401CI+, torrodial-multifocus-antenne T90, 17/8 Switch, TAPs: SmartEPG, I-Box, Smartskip

Benutzeravatar
FireBird
Suspekter verdächtiger Zauberküchenchef, TAP & Firmware-Guru
Suspekter verdächtiger Zauberküchenchef, TAP & Firmware-Guru
Beiträge: 29051
Registriert: Fr 9. Dez 2005, 09:59
Receivertyp: SRP-2401CI+ TFIR
vu+ Duo 4k
Wohnort: Wien

#7

Beitrag von FireBird » Di 23. Mai 2006, 00:03

umtauscher hat geschrieben:Was kann denn grundsätzlich die Ursache sein, wenn ein Fenster welches mit TAP_Win_Create erzeugt wird, beim Abfragen des OSD-Memorys nicht gesehen wird?
Weil der Masterpiece eine andere Ebene und somit einen anderen Speicherbereich für die Win-Funktionen verwendet.

umtauscher
Erfahrener Benutzer
Erfahrener Benutzer
Beiträge: 216
Registriert: Di 20. Dez 2005, 23:16
Receivertyp: 2401CI+
Wohnort: Köln

#8

Beitrag von umtauscher » Di 23. Mai 2006, 07:52

Das habe ich auch schon vermutet. Irgendwelche Ideen, wie man diese Inkompatibilität umgehen kann bzw. die OSD-Prüfung erweitern kann?
SRP2401CI+, torrodial-multifocus-antenne T90, 17/8 Switch, TAPs: SmartEPG, I-Box, Smartskip

Benutzeravatar
Sigittarius-E
FIQMDTSSOOLUETSNAK
<span title=ForuminformationsquellemitdauertimeshiftschaltungoutingOberlehrerUndErfahrenerTratscherStatusNichtAussprechenKönner>FIQMDTSSOOLUETSNAK</span>
Beiträge: 8216
Registriert: Fr 9. Dez 2005, 18:49
Receivertyp: TF5kPVR/TF3kCIpro
Receiverfirmware: 13.9.'05 SHUFGmUx/19.4.'04
Wohnort: Österreich, NÖrdl.d.Donau

#9

Beitrag von Sigittarius-E » Di 23. Mai 2006, 21:17

Elle4u hat geschrieben:Evtl. hilft Dir da mein kleines StopExit-TAP?

Da mußt Du 2x Exit innerhalb einer Sekunde drücken, damit es durchgereicht wird...

Danke für den Link :hello: . Ich hatte in Erinnerung dass es dieses TAP gibt, aber vergessen wie es hieß, von wem, .... also nix mit Stichworten für die Suche


Bzgl. TSR Commander:
Ich hab mich ja nie mit TSR Commander beschäftigt - lt. Happy soll der TAP Commander das gleiche können. Vielleicht funkt der korrekt am MP.

Info hier: viewtopic.php?t=2749
Zuletzt geändert von Sigittarius-E am Di 23. Mai 2006, 21:21, insgesamt 1-mal geändert.
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

umtauscher
Erfahrener Benutzer
Erfahrener Benutzer
Beiträge: 216
Registriert: Di 20. Dez 2005, 23:16
Receivertyp: 2401CI+
Wohnort: Köln

#10

Beitrag von umtauscher » Mi 24. Mai 2006, 15:19

Sigittarius-E hat geschrieben: Bzgl. TSR Commander:
Ich hab mich ja nie mit TSR Commander beschäftigt - lt. Happy soll der TAP Commander das gleiche können. Vielleicht funkt der korrekt am MP.
Danke für den Hinweis. Er funktioniert leider auch nicht richtig, nur anders. Er macht sein Fenster hinter den schon geöffneten Dialogen (Improbox, Pipswitch) auf. Leider kann man diese Dialoge dann gar nicht mehr beenden.
Also doch zurück zu TSRCommander :-(

Gruß
Umtauscher
SRP2401CI+, torrodial-multifocus-antenne T90, 17/8 Switch, TAPs: SmartEPG, I-Box, Smartskip

Benutzeravatar
FireBird
Suspekter verdächtiger Zauberküchenchef, TAP & Firmware-Guru
Suspekter verdächtiger Zauberküchenchef, TAP & Firmware-Guru
Beiträge: 29051
Registriert: Fr 9. Dez 2005, 09:59
Receivertyp: SRP-2401CI+ TFIR
vu+ Duo 4k
Wohnort: Wien

#11

Beitrag von FireBird » Do 25. Mai 2006, 18:54

Hi,
umtauscher hat geschrieben: Irgendwelche Ideen, wie man diese Inkompatibilität umgehen kann bzw. die OSD-Prüfung erweitern kann?
Ich bin nicht gestolpert, sondern habe bewusst nach dem Stein des Anstoßes gesucht. :wink:

Zuerst ein paar Grundlagen: Die Emma hat 3 OSD-Ebenen. Die oberste, namens Hardware Cursor, kommt zwar in der Firmware vor, mir ist aber noch nicht untergekommen, wann sie verwendet wird. Bleiben also zwei, wobei Plane 2 hinter der Plane 1 liegt.

Beim 5000er finden normalerweise alle TAP_Osd und TAP_Win Funktionen in der Plane 1 statt. Ausgenommen ist ein TAP_Osd_Create mit dem Flag OSD_Flag_Plane2. Kleiner Bug: Erzeugt man ein Fenster mit einer Plane2-Region, dann landet dieses trotzdem in der Plane 1 und hat damit den Nebeneffekt, dass beim Löschen des Fensters beide Planes gelöscht werden. Das wird in der Praxis aber nur selten vorkommen.

Beim MP sieht die Sache ganz anders aus. Fenster werden grundsätzlich in der Plane 1 angelegt, OSD-Operationen ebenfalls grundsätzlich in der Plane 2. Deshalb scheint selbstgemalter Text immer hinter einem Fenster auf. Da TAP_Osd_GetBaseInfo auch auf den Speicher der Plane 2 verweist, bleiben alle Fenster für die div. OSD-Abfragen unsichtbar. Großer Bug: TAP_Osd_Delete löscht den Bereich immer in beiden Planes. Wenn Korea durch die Aufteilung eine Kollision zwischen OSD und Dialogboxen verhindern wollte, haben sie sich mit diesen Bug ins Knie geschossen.

Workaround: Natürlich beide Bereiche testen. Nachdem man sich nicht auf TAP_Osd_GetBaseInfo verlassen kann, organisiert man sich die beiden Speicherbereiche aus den Hardwareregistern der Graphic Controlers.

Code: Alles auswählen

volatile dword * DGRP_OSD1CTR       = (dword*) 0xb0004104;
volatile dword * DGRP_OSD2CTR       = (dword*) 0xb0004108;
Die beiden zeigen leider noch nicht direkt auf den OSD-Speicher, sondern auf eine Struktur, die unter anderem die Speicheradressen enthält. Bevor man weitermacht, sollte man die beiden Register auf 0 prüfen. Das kann nach dem Löschen der letzten Region vorkommen. Zuerst berechnet man die Adresse der Info-Struktur. Das sieht umständlich aus, da das oberste Nibble der DGRP-Register für eine andere Information verwendet wird.

Code: Alles auswählen

dword			*pOSD1Info, *pOSD2Info;

pOSD1Info = (dword *) ((*DGRP_OSD1CTR & 0x0fffffff) | 0xa0000000);
pOSD2Info = (dword *) ((*DGRP_OSD2CTR & 0x0fffffff) | 0xa0000000);
Und danach organisiert man sich die Startadresse der even und odd Frames der beiden Planes.

Code: Alles auswählen

dword			*pOSD1e, *pOSD1o, *pOSD2e, *pOSD2o;

pOSD1e = (dword *) ((*(pOSD1Info + 6) & 0x0fffffff) | 0xa0000000);
pOSD1o = (dword *) ((*(pOSD1Info + 7) & 0x0fffffff) | 0xa0000000);
pOSD2e = (dword *) ((*(pOSD2Info + 6) & 0x0fffffff) | 0xa0000000);
pOSD2o = (dword *) ((*(pOSD2Info + 7) & 0x0fffffff) | 0xa0000000);
Den Workaround habe ich zwar noch nicht praktisch ausprobiert, ich weis aber, wo ich dann abschreiben kann. :)

umtauscher
Erfahrener Benutzer
Erfahrener Benutzer
Beiträge: 216
Registriert: Di 20. Dez 2005, 23:16
Receivertyp: 2401CI+
Wohnort: Köln

#12

Beitrag von umtauscher » Do 25. Mai 2006, 19:50

Super, vielen Dank. Sobald ich Zeit habe, werde ich das Umsetzen. Nur noch eine kurze Frage: ist dieser Controller identtisch für alle Modelle, oder muss man da Unterscheidungen treffen?

Gruß

Umtauscher
SRP2401CI+, torrodial-multifocus-antenne T90, 17/8 Switch, TAPs: SmartEPG, I-Box, Smartskip

Benutzeravatar
FireBird
Suspekter verdächtiger Zauberküchenchef, TAP & Firmware-Guru
Suspekter verdächtiger Zauberküchenchef, TAP & Firmware-Guru
Beiträge: 29051
Registriert: Fr 9. Dez 2005, 09:59
Receivertyp: SRP-2401CI+ TFIR
vu+ Duo 4k
Wohnort: Wien

#13

Beitrag von FireBird » Do 25. Mai 2006, 20:09

Das sollte zumindest bei allen 5000er funktionieren.

umtauscher
Erfahrener Benutzer
Erfahrener Benutzer
Beiträge: 216
Registriert: Di 20. Dez 2005, 23:16
Receivertyp: 2401CI+
Wohnort: Köln

#14

Beitrag von umtauscher » Fr 26. Mai 2006, 12:23

Hi Firebird,

meine ersten Versuche haben leider nicht zum gewünschten Erfolg geführt. OSDActive() ist jetzt immer TRUE. Ich vermute daher, dass bei der Berechnung der Pointer etwas nicht stimmt.
FireBird hat geschrieben:

Code: Alles auswählen

dword			*pOSD1Info, *pOSD2Info;

pOSD1Info = (dword *) ((*DGRP_OSD1CTR & 0x0fffffff) | 0xa0000000);
Bist Du sicher, dass das so stimmt? Du löschst erst das oberste Nibble und setzt anschließend die bit 3 und 1 fest auf 1?
Ich wäre für eine kurze Erkärung dankbar.

Umtauscher

P.S.: Hast Du vielleicht einen Link für mich für das Hardwaremanual des Grafikchips?
Zuletzt geändert von umtauscher am Fr 26. Mai 2006, 12:36, insgesamt 1-mal geändert.
SRP2401CI+, torrodial-multifocus-antenne T90, 17/8 Switch, TAPs: SmartEPG, I-Box, Smartskip

Benutzeravatar
FireBird
Suspekter verdächtiger Zauberküchenchef, TAP & Firmware-Guru
Suspekter verdächtiger Zauberküchenchef, TAP & Firmware-Guru
Beiträge: 29051
Registriert: Fr 9. Dez 2005, 09:59
Receivertyp: SRP-2401CI+ TFIR
vu+ Duo 4k
Wohnort: Wien

#15

Beitrag von FireBird » Fr 26. Mai 2006, 12:42

umtauscher hat geschrieben:Bist Du sicher, dass das so stimmt? Du löschst erst das oberste Nibble und setzt anschließend die bit 3 und 1 fest auf 1?
Im Register steht z.B. 0x21F72B70, die korrekte Adresse lautet 0xA1F72B70.

Ich habe mir gerade OsdActive angesehen und wundere mich, dass das jemals funktioniert hat. Nachdem das OSD in gerade und ungerade Zeilen unterteilt ist, ist jeder der 4 Speicherblöcke nur 720 x 288 Pixel groß. Die Routine checkt aber bis zur Zeile 500 und läuft somit in einen Bereich, der für andere Dinge benutzt wird. Oder übersehe ich etwas? :thinker:

Benutzeravatar
FireBird
Suspekter verdächtiger Zauberküchenchef, TAP & Firmware-Guru
Suspekter verdächtiger Zauberküchenchef, TAP & Firmware-Guru
Beiträge: 29051
Registriert: Fr 9. Dez 2005, 09:59
Receivertyp: SRP-2401CI+ TFIR
vu+ Duo 4k
Wohnort: Wien

#16

Beitrag von FireBird » Fr 26. Mai 2006, 12:44

umtauscher hat geschrieben:P.S.: Hast Du vielleicht einen Link für mich für das Hardwaremanual des Grafikchips?
Der "Chip" ist Bestandteil der Emma und für dieses Manual würden manche töten. :wink: Ich habe es nicht.

umtauscher
Erfahrener Benutzer
Erfahrener Benutzer
Beiträge: 216
Registriert: Di 20. Dez 2005, 23:16
Receivertyp: 2401CI+
Wohnort: Köln

#17

Beitrag von umtauscher » Fr 26. Mai 2006, 12:58

FireBird hat geschrieben: Ich habe mir gerade OsdActive angesehen und wundere mich, dass das jemals funktioniert hat. Nachdem das OSD in gerade und ungerade Zeilen unterteilt ist, ist jeder der 4 Speicherblöcke nur 720 x 288 Pixel groß. Die Routine checkt aber bis zur Zeile 500 und läuft somit in einen Bereich, der für andere Dinge benutzt wird. Oder übersehe ich etwas? :thinker:
Das sehe ich auch so und habe das bereits geändert. Es könnte aber sein, dass die beiden Blöcke hiontereinander liegen. Dann könnte es zufällig funktionieren. (Habe ich aus faulheit nicht geprüft. ;-)
SRP2401CI+, torrodial-multifocus-antenne T90, 17/8 Switch, TAPs: SmartEPG, I-Box, Smartskip

Benutzeravatar
FireBird
Suspekter verdächtiger Zauberküchenchef, TAP & Firmware-Guru
Suspekter verdächtiger Zauberküchenchef, TAP & Firmware-Guru
Beiträge: 29051
Registriert: Fr 9. Dez 2005, 09:59
Receivertyp: SRP-2401CI+ TFIR
vu+ Duo 4k
Wohnort: Wien

#18

Beitrag von FireBird » Fr 26. Mai 2006, 13:03

umtauscher hat geschrieben:Es könnte aber sein, dass die beiden Blöcke hiontereinander liegen.
Laut MemDump tun sie das nicht und dazwischen ist etwas, dass die Routine fälschlicherweise als Pixeldaten interpretiert.

umtauscher
Erfahrener Benutzer
Erfahrener Benutzer
Beiträge: 216
Registriert: Di 20. Dez 2005, 23:16
Receivertyp: 2401CI+
Wohnort: Köln

#19

Beitrag von umtauscher » Fr 26. Mai 2006, 13:07

Bist Du sicher, dass die Maskierung für alle Register korrekt ist?
SRP2401CI+, torrodial-multifocus-antenne T90, 17/8 Switch, TAPs: SmartEPG, I-Box, Smartskip

Benutzeravatar
FireBird
Suspekter verdächtiger Zauberküchenchef, TAP & Firmware-Guru
Suspekter verdächtiger Zauberküchenchef, TAP & Firmware-Guru
Beiträge: 29051
Registriert: Fr 9. Dez 2005, 09:59
Receivertyp: SRP-2401CI+ TFIR
vu+ Duo 4k
Wohnort: Wien

#20

Beitrag von FireBird » Fr 26. Mai 2006, 13:15

Eigentlich schon. Ich habe jetzt aber die Dumps nicht griffbereit.

Antworten

Zurück zu „TF 5x00/6000 PVR TAP“