API-Unterschiede TF5k - TMS - Kommentare

TAPs für die SRP- und CRP-Serie
Benutzeravatar
okiwankenoki
Topfmeister
Topfmeister
Beiträge: 591
Registriert: Mo 12. Dez 2005, 11:46
Receivertyp: SRP-2100, SRP-2401 CI+
Receiverfirmware: jeweils Aktuelle
Wohnort: Horst/Holstein

API-Unterschiede TF5k - TMS - Kommentare

#1

Beitrag von okiwankenoki » Fr 9. Okt 2009, 09:02

xyzzyx hat geschrieben:Auch wenn es sich vielleicht nicht mehr lange lohnt... hoffentlich kommt ja bald eine bessere TMS API... Aber vielleicht könnte Gerti es ja auch als Input nach Korea geben.
....


....

So, das müsste erstmal fast alles sein, was mir bisher über den Weg gelaufen ist. Vielleicht fällt mir ein andermal noch mehr ein.

Hoffentlich hat mich meine Erinnerung nicht irgendwo im Stich gelassen.

Außerdem bitte auch meine zwei ersten Bemerkungen aus Post 3 beachten.

Mit diesem Know-How kann jetzt bestimmt bald jeder TAPs portieren :D :
...


:hello: :hello: :hello: :hello: :hello: :hello: :hello:

Man XY, Du bist einfach klasse!!!!

:hello: :hello: :hello: :hello: :hello: :hello: :hello:

Der Olaf
Meine Topfield Tipps: Alles Rund um den SRP-2100 (TMS)

Yamaha RX-V473; LCD TV Samsung LE52A756R; Harmony 900

Benutzeravatar
Ricki
ToppiHolic
ToppiHolic
Beiträge: 5791
Registriert: Fr 9. Dez 2005, 23:06
Receivertyp: 2xSky Q
MagentaTV MR601
2xUltimo4K DVB-S2x FBC
Receiverfirmware: Alle aktuell
Wohnort: Wetter/Hessen
Kontaktdaten:

AW: API-Unterschiede TF5k - TMS

#2

Beitrag von Ricki » Fr 9. Okt 2009, 17:18

xyzzyx hat geschrieben:
Mit diesem Know-How kann jetzt bestimmt bald jeder TAPs portieren :D :
...


Hut ab, alleine die Zeit um den Text zu schreiben. Aber, ich muss Dir widersprechen :) , nicht jeder kann TAPs portieren. Ich verstehe nur Bahnhof :D
cu
Ricki


SmartEPGvu+ & SmartFilervu+ Wiki

SAT Anlage - Kathrein: CAS 75 mit UAS 584 LNB & EXR 1512 (Multischalter 5 auf 12), Astra 19.2°E

VU+ ULTIMO 4K DVB-S2x FBC+Samsung SSD870 QVO , 2 TB
VU+ ULTIMO 4K DVB-S2x FBC+Kingston SSDSUV400S, 480 GB
Skin: Vu_HD_1080P mit angepassten Skinparts - VTi 15.0.02
Plugins: smartEPGvu+ , Multi QuickButton, OpenWebif, AutocutVfd, GithubPluginUpdater, InfoBarTunerState, VTi Panel

Panasonic TX-55GZW1509; Sony UBP-X700, Apple TV 4K, Fire TV 4K, Harmony Elite, Denon AVR-X2300W, Synology 716+ (6TB)

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

AW: API-Unterschiede TF5k - TMS

#3

Beitrag von FireBird » Fr 9. Okt 2009, 17:42

Ricki hat geschrieben:Ich verstehe nur Bahnhof :D

Dann versuche Dich zwecks Einstieg in einem Bahnhofsimulations-TAP. :und_weg:

Benutzeravatar
TV-Junkie
Alteingesessener
Alteingesessener
Beiträge: 28030
Registriert: Sa 16. Jun 2007, 19:10
Receivertyp: VU+ Duo4K, Ultimo4K und Uno4KSE
Receiverfirmware: VTI 15.xx ausser der Uno 4K SE
Wohnort: Düsseldorf

AW: API-Unterschiede TF5k - TMS

#4

Beitrag von TV-Junkie » Fr 9. Okt 2009, 18:39

FireBird hat geschrieben:Dann versuche Dich zwecks Einstieg in einem Bahnhofsimulations-TAP. :und_weg:

Daran bin ich auch schon gescheitert :spin:
Gruß Ha-Jü
----------------------------------------------------------------------------------------------
Zum Tippspiel BuLi 2019/2020 hier entlang
Und wer Lust auf tippen beim DFB Pokal hat, darf sich hier austoben
Viel Spaß

Sat-Anlage: Astro CAS 90 mit Kathrein UAS 584 LNB (20Jahre alt und noch immer Top in Schuss :D ), Jultec JPS0506-8T Unicable Multischalter sowie UM/VF West Kabelanschluß
Installierte Plugins:OScam (incl OScam-Butler), LV4, SmartEPG VU+, ansonsten nix, was VTI nicht schon selbst mitbringt :)

Benutzeravatar
Ricki
ToppiHolic
ToppiHolic
Beiträge: 5791
Registriert: Fr 9. Dez 2005, 23:06
Receivertyp: 2xSky Q
MagentaTV MR601
2xUltimo4K DVB-S2x FBC
Receiverfirmware: Alle aktuell
Wohnort: Wetter/Hessen
Kontaktdaten:

AW: API-Unterschiede TF5k - TMS

#5

Beitrag von Ricki » Fr 9. Okt 2009, 19:42

FireBird hat geschrieben:Dann versuche Dich zwecks Einstieg in einem Bahnhofsimulations-TAP. :und_weg:

nee, nee sonst lande ich noch in die Bahnhofsmission und komme nicht mehr raus :D .
nun genug OT sonst versauen wir noch den guten Thread.
cu
Ricki


SmartEPGvu+ & SmartFilervu+ Wiki

SAT Anlage - Kathrein: CAS 75 mit UAS 584 LNB & EXR 1512 (Multischalter 5 auf 12), Astra 19.2°E

VU+ ULTIMO 4K DVB-S2x FBC+Samsung SSD870 QVO , 2 TB
VU+ ULTIMO 4K DVB-S2x FBC+Kingston SSDSUV400S, 480 GB
Skin: Vu_HD_1080P mit angepassten Skinparts - VTi 15.0.02
Plugins: smartEPGvu+ , Multi QuickButton, OpenWebif, AutocutVfd, GithubPluginUpdater, InfoBarTunerState, VTi Panel

Panasonic TX-55GZW1509; Sony UBP-X700, Apple TV 4K, Fire TV 4K, Harmony Elite, Denon AVR-X2300W, Synology 716+ (6TB)

Benutzeravatar
Töppi
TöppiHolic der mit dem h tanzt , Anstifter und Möchtegernstatusaufdecker
TöppiHolic der mit dem <font color=ed>h</font> tanzt <font color=#E9E9E9>,  Anstifter und Möchtegernstatusaufdecker</font>
Beiträge: 26843
Registriert: So 27. Aug 2006, 19:22
Receivertyp: 2410M
Receiverfirmware: Feb. 2014
Wohnort: Nähe Mainz

AW: API-Unterschiede TF5k - TMS

#6

Beitrag von Töppi » Fr 9. Okt 2009, 19:45

Ricki hat geschrieben:nee, nee sonst lande ich noch in die Bahnhofsmission und komme nicht mehr raus :D .
nun genug OT sonst versauen wir noch den guten Thread.


dieser Thread ist sehr hilfreich und ich plädiere an die Mods, macht einen Laberthread zum Thema und eine reine Sammlung draus, bitte!
Gruß
Klaus :wink:
................
:topf: SRP-2410M

:respekt:
TAP's (Autostart):
| TMSDisplay | F*Skip TMS 3.xx | SmartEPG | SmartFiler | RebuildNAV | Automove TMS | TMSRemote | Callmonitor | SmartSeriesrename | Switch2FTA |

Benutzeravatar
Twilight
Zauberküchencheflehrling mit extra Butter
Zauberküchencheflehrling mit extra Butter
Beiträge: 64862
Registriert: Fr 9. Dez 2005, 09:17
Receivertyp: 1 x SRP 2100(TMS) TFIR und .1 x SRP 2410 M
Wohnort: Wien Umgebung

AW: API-Unterschiede TF5k - TMS

#7

Beitrag von Twilight » Fr 9. Okt 2009, 19:50

:up: den thread zu verwässern ist echt nicht klug :u:

twilight

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

AW: API-Unterschiede TF5k - TMS - Kommentare

#8

Beitrag von FireBird » Fr 9. Okt 2009, 20:03

Ich habe alle Einträge ohne technischen Details verschoben.

Benutzeravatar
Töppi
TöppiHolic der mit dem h tanzt , Anstifter und Möchtegernstatusaufdecker
TöppiHolic der mit dem <font color=ed>h</font> tanzt <font color=#E9E9E9>,  Anstifter und Möchtegernstatusaufdecker</font>
Beiträge: 26843
Registriert: So 27. Aug 2006, 19:22
Receivertyp: 2410M
Receiverfirmware: Feb. 2014
Wohnort: Nähe Mainz

AW: API-Unterschiede TF5k - TMS - Kommentare

#9

Beitrag von Töppi » Fr 9. Okt 2009, 20:04

:up: Danke dir.
Gruß
Klaus :wink:
................
:topf: SRP-2410M

:respekt:
TAP's (Autostart):
| TMSDisplay | F*Skip TMS 3.xx | SmartEPG | SmartFiler | RebuildNAV | Automove TMS | TMSRemote | Callmonitor | SmartSeriesrename | Switch2FTA |

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

AW: API-Unterschiede TF5k - TMS - Kommentare

#10

Beitrag von FireBird » Fr 9. Okt 2009, 20:05

Hier können Anfänger auch technische Fragen stellen. :wink:

Benutzeravatar
xyzzyx
TAPPortierer
TAP<font color=DarkRed>Portierer</font>
Beiträge: 2099
Registriert: Sa 6. Jun 2009, 18:35
Receivertyp: SRP-2100 (TMS), **** Duo²
Receiverfirmware: verschiedene
Kontaktdaten:

AW: API-Unterschiede TF5k - TMS - Kommentare

#11

Beitrag von xyzzyx » Sa 10. Okt 2009, 11:04

Dann will ich auch mal Anfänger sein :D

Wie muss ich denn eine Funktion definieren und aufrufen, wenn ich nicht den Zeiger auf einen String sondern den String selbst übergeben will?

Derzeit siehts z.B. so aus:

void Test(char *str)
{
//packt den String in ein globales Zeichenarray und eine andere Funktion zeigt diesen dann an
}

void Sub(void)
{
char str1[64];
TAP_SPrint(str1, "mein Test");
Test(str1);
}

Da str1 nur ne lokale Variable ist, übergibt er zwar den Zeiger auf "mein Test", aber wenn Test oder die andere Funktion die Anzeige macht, dann ist der Zeiger schon wieder unbekannt bzw. hat einen undefinierten Zeicheninhalt.

Auch wenn ich die Funktion auf
"void Test(char str[])"
ändere, wird scheinbar der Zeiger und nicht der Inhalt übergeben.

Momentan kann ich es nur umgehen, indem ich str1 zu einer globalen Variable mache, da diese dann dauerhaft existiert. So will ich es aber eigentlich nicht haben. Ich bräuchte ja sonst jeweils eine globale Variable für jede Zeile die ich ausgeben will.

Wie soll ich die Funktion Test definieren bzw. was muss ich beim Aufruf beachten, damit der Wert und nicht der Zeiger übergeben wird (oder damit er in Test einen neuen globalen Speicher für den Zeiger benutzt)?
MfG,
xyzzyx

Die Liste meiner portierten und meiner eigenen TAPs findet man hier

:bounce: Download: Homepage :bounce: Installieren: TAPtoDate :bounce: Beschreibungen: Topfield TAP-Seite :bounce:

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

AW: API-Unterschiede TF5k - TMS - Kommentare

#12

Beitrag von FireBird » Sa 10. Okt 2009, 11:23

Da ich erst vor kurzem mit C angefangen habe, bin ich sicher nicht der Richtige um die Frage zu beantworten. :oops:

Was spricht dagegen, int Test() sich nicht den Pointer zu merken, sondern mittels strcpy(?, str) eine Kopie des Strings anzulegen? Um diese kommst Du sowieso nicht herum.

Benutzeravatar
xyzzyx
TAPPortierer
TAP<font color=DarkRed>Portierer</font>
Beiträge: 2099
Registriert: Sa 6. Jun 2009, 18:35
Receivertyp: SRP-2100 (TMS), **** Duo²
Receiverfirmware: verschiedene
Kontaktdaten:

AW: API-Unterschiede TF5k - TMS - Kommentare

#13

Beitrag von xyzzyx » Sa 10. Okt 2009, 12:03

FireBird hat geschrieben:Da ich erst vor kurzem mit C angefangen habe

Häh, wieso? :)

Hmmm, warum bin ich nicht auf strcpy gekommen... Na klar. :hello:
Aber um Abstürze zu vermeiden geht es nur mit vorherigem TAP_MemAlloc:

in Test geändert (Speicherreservierung und dann Stringübergabe):
Items[itemNo] = TAP_MemAlloc(256);
strcpy(Items[itemNo], str);

Vorher war es praktisch nur so (gleichen Zeiger übergeben):
Items[itemNo] = str;
MfG,
xyzzyx

Die Liste meiner portierten und meiner eigenen TAPs findet man hier

:bounce: Download: Homepage :bounce: Installieren: TAPtoDate :bounce: Beschreibungen: Topfield TAP-Seite :bounce:

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

AW: API-Unterschiede TF5k - TMS - Kommentare

#14

Beitrag von FireBird » Sa 10. Okt 2009, 12:11

xyzzyx hat geschrieben:Häh, wieso? :)

Weil das HDDInfo-TAP mein erstes C-Programm war. :)


Und so wird es noch einen Schritt sicherer und vermutlich sogar weniger speicherintensiv:

Items[itemNo] = TAP_MemAlloc(strlen(str) + 1);
if(Items[itemNo]) strcpy(Items[itemNo], str);

Benutzeravatar
xyzzyx
TAPPortierer
TAP<font color=DarkRed>Portierer</font>
Beiträge: 2099
Registriert: Sa 6. Jun 2009, 18:35
Receivertyp: SRP-2100 (TMS), **** Duo²
Receiverfirmware: verschiedene
Kontaktdaten:

AW: API-Unterschiede TF5k - TMS - Kommentare

#15

Beitrag von xyzzyx » Sa 10. Okt 2009, 12:23

Mensch, das wird ja immer besser. :hello:
Läuft bestens so.

Die TAP-API ist doch generell in C. Oder meinst du eher, dass du mit HDDInfo dann mal mehr C-Libs verwendet hast?
MfG,
xyzzyx

Die Liste meiner portierten und meiner eigenen TAPs findet man hier

:bounce: Download: Homepage :bounce: Installieren: TAPtoDate :bounce: Beschreibungen: Topfield TAP-Seite :bounce:

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

AW: API-Unterschiede TF5k - TMS - Kommentare

#16

Beitrag von FireBird » Sa 10. Okt 2009, 12:36

[quote="xyzzyx"]Die TAP-API ist doch generell in C. Oder meinst du eher, dass du mit HDDInfo dann mal mehr C-Libs verwendet hast?[/quote]
HDDInfo war mein erstes TAP und auch mein erstes Programm in der Programmiersprache C.

Ameise
Topfazubi
Topfazubi
Beiträge: 30
Registriert: Do 22. Jan 2009, 20:33
Receivertyp: TF 5000PVR Masterpiece
Wohnort: NRW

AW: API-Unterschiede TF5k - TMS - Kommentare

#17

Beitrag von Ameise » So 11. Okt 2009, 10:40

FireBird hat geschrieben:Weil das HDDInfo-TAP mein erstes C-Programm war. :)


Und so wird es noch einen Schritt sicherer und vermutlich sogar weniger speicherintensiv:

Items[itemNo] = TAP_MemAlloc(strlen(str) + 1);
if(Items[itemNo]) strcpy(Items[itemNo], str);


Bitte nicht vergessen den Speicher mit TAP_MemFree() wieder freizugeben!!
Sonst hat man ein schönes (großes) Speicherloch programmiert.

Ich hätte da auch noch eine Frage:
Was ist der Unterschied zwischen
  • sprintf
  • TAP_SPrint
Beide schreiben einen formatierten String in einen anderen. Behandelt das TAP_SPrint vielleicht die besonderen DVB Zeichen anders als sprintf??
TF 5000MP FW Jan 2007

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

AW: API-Unterschiede TF5k - TMS - Kommentare

#18

Beitrag von FireBird » So 11. Okt 2009, 10:44

Ameise hat geschrieben:Was ist der Unterschied zwischen
  • sprintf
  • TAP_SPrint
Beide schreiben einen formatierten String in einen anderen. Behandelt das TAP_SPrint vielleicht die besonderen DVB Zeichen anders als sprintf??

In der tap.h werden sie gleichgesetzt:

Code: Alles auswählen

#define sprintf	TAP_SPrint
Eine Sonderbehandlung ist mir bisher nicht aufgefallen.

Ameise
Topfazubi
Topfazubi
Beiträge: 30
Registriert: Do 22. Jan 2009, 20:33
Receivertyp: TF 5000PVR Masterpiece
Wohnort: NRW

AW: API-Unterschiede TF5k - TMS - Kommentare

#19

Beitrag von Ameise » So 11. Okt 2009, 10:48

:patsch:
So eine einfache Antwort habe ich dann doch nicht erwartet. Wofür machen die
sich dann die "Arbeit" das in die API aufzunehmen :thinker:
Das kennt doch jeder, der sich schon mal mit C beschäftigt hat.

Und Danke Firebird!!
Zuletzt geändert von Ameise am So 11. Okt 2009, 11:13, insgesamt 1-mal geändert.
TF 5000MP FW Jan 2007

Benutzeravatar
xyzzyx
TAPPortierer
TAP<font color=DarkRed>Portierer</font>
Beiträge: 2099
Registriert: Sa 6. Jun 2009, 18:35
Receivertyp: SRP-2100 (TMS), **** Duo²
Receiverfirmware: verschiedene
Kontaktdaten:

AW: API-Unterschiede TF5k - TMS - Kommentare

#20

Beitrag von xyzzyx » So 11. Okt 2009, 15:42

[quote="Ameise"]Bitte nicht vergessen den Speicher mit TAP_MemFree() wieder freizugeben!!
Sonst hat man ein schönes (großes) Speicherloch programmiert.
[/quote]


Und da gibts zum Beispiel noch sowas schönes für:
#ifndef SAFE_MEMFREE
#define SAFE_MEMFREE(p) { if(p){TAP_MemFree(p); p=NULL;} }
#endif
Ist wahrscheinlich wieder die sichere Methode für den TMS, um Abstürze zu vermeiden. Hab ich irgendwo mal gefunden.
MfG,
xyzzyx

Die Liste meiner portierten und meiner eigenen TAPs findet man hier

:bounce: Download: Homepage :bounce: Installieren: TAPtoDate :bounce: Beschreibungen: Topfield TAP-Seite :bounce:

Antworten

Zurück zu „SRP/CRP TAP-Bereich“