Wie erstelle ich ein eigenes Plugin?
-
- Erleuchteter
- Beiträge: 649
- Registriert: Donnerstag 7. März 2002, 21:11
Wie erstelle ich ein eigenes Plugin?
Hallo,
immer wieder, wenn man hier mal einen Vorschlag macht, heißt es, dann mach es doch selbst. Aber wie, das ist hier die große Frage?
Viele schreiben daraufhin, daß sie keine Ahnung davon haben, aber nie bekommt man hilfe, wie man da am Besten anfängt.
Da die meisten Mitglieder hier wahrscheinlich Windows User sind, sollte man mit einer Hilfe von Grund auf anfangen.
Was muß ich installieren?
Welche Programme brauche ich?
Wie bediene ich diese Programme?
Vielleicht wäre ja mal ein kleines Programm zum Testen nicht schlecht. In den meisten Programmiersprachen fängt man ja mit einem "Hallo Welt" an.
Vielleicht gibt es ja jemanden, der hier mal eine kleine Schritt für Schritt Anleitung postet.
1. 2. 3. und so weiter
Bis dann Martin
immer wieder, wenn man hier mal einen Vorschlag macht, heißt es, dann mach es doch selbst. Aber wie, das ist hier die große Frage?
Viele schreiben daraufhin, daß sie keine Ahnung davon haben, aber nie bekommt man hilfe, wie man da am Besten anfängt.
Da die meisten Mitglieder hier wahrscheinlich Windows User sind, sollte man mit einer Hilfe von Grund auf anfangen.
Was muß ich installieren?
Welche Programme brauche ich?
Wie bediene ich diese Programme?
Vielleicht wäre ja mal ein kleines Programm zum Testen nicht schlecht. In den meisten Programmiersprachen fängt man ja mit einem "Hallo Welt" an.
Vielleicht gibt es ja jemanden, der hier mal eine kleine Schritt für Schritt Anleitung postet.
1. 2. 3. und so weiter
Bis dann Martin
CU - Bis dann Martin
Nokia SAT 2xI / Sagem Kabel 2xA (schwarz)
Nokia SAT 2xI / Sagem Kabel 2xA (schwarz)
-
- Tuxboxer
- Beiträge: 2452
- Registriert: Montag 21. Oktober 2002, 10:04
Wenn du nicht gleich in der LazyT-League spielen willst, ist der erste Schritt zu einem Plugin ein shell-script.
Dieses wird durch die xy.so in /var/tuxbox/plugins aufgerufen. In der Datei xy.cfg stehen der Name des Plugins und einige notwendige Parameter.
*.so Dateien gibt es für jedes Plugin. Kerlimann (Linus hab in seelig?) hat mal ein Set erstellt, dass /var/plugins/shell1, /var/plugins/shell2 usw. aufruft, dein shellscript müsste entsprechen shell1, shell2 heissen und in /var/plugins liegen. Du kannst aber auch in einem HexEditor nach /var/plugins/shell suchen und es durchj einen eigenen Namen ersetzen.
Vielleicht denkst du shell-script? Da kann man doch nichts mit anfangen. Das stimmt nicht. Ich schreibe im Moment selbst an einem, das Settings aus dem Internet lädt und bin immer noch begeistert, was mit shell-scripten möglich ist.
Einziger Wermutstropfen, dass http-request zwar im shell-script funktionieren, aber momentan nicht vollständig in Plugins.
Dieses wird durch die xy.so in /var/tuxbox/plugins aufgerufen. In der Datei xy.cfg stehen der Name des Plugins und einige notwendige Parameter.
*.so Dateien gibt es für jedes Plugin. Kerlimann (Linus hab in seelig?) hat mal ein Set erstellt, dass /var/plugins/shell1, /var/plugins/shell2 usw. aufruft, dein shellscript müsste entsprechen shell1, shell2 heissen und in /var/plugins liegen. Du kannst aber auch in einem HexEditor nach /var/plugins/shell suchen und es durchj einen eigenen Namen ersetzen.
Vielleicht denkst du shell-script? Da kann man doch nichts mit anfangen. Das stimmt nicht. Ich schreibe im Moment selbst an einem, das Settings aus dem Internet lädt und bin immer noch begeistert, was mit shell-scripten möglich ist.
Einziger Wermutstropfen, dass http-request zwar im shell-script funktionieren, aber momentan nicht vollständig in Plugins.
Schon gelesen ???
ENIGMA-DOC
ENIGMA-DOC
-
- Erleuchteter
- Beiträge: 649
- Registriert: Donnerstag 7. März 2002, 21:11
-
- Senior Member
- Beiträge: 1339
- Registriert: Donnerstag 24. April 2003, 12:12
Ja, sowas fehlt.
Das Plugin selber ist eine dynamische Lib, die zur Laufzeit geladen wird (*.so = shared object). Das hört sich schlimmer an als es ist, die vorhandenen Makefiles kann man ja einfach übernehmen bzw. für seine Zwecke abändern.
Im Grunde bekommst du von der GUI eine Struktur mit Parametern, z.Bsp. Handle auf Framebuffer, LCD, IFB etc. übergeben, die du dann selber verwenden kannst bzw. welche noch zusätzliche Informationen (z.Bsp X/Y-Koordinaten die der Benutzer eingestellt hat) enthalten.
Somit ist das Plugin unabhängig von der GUI, dafür muß man andererseits alles selber gestalten.
Es gibt eine FX-Lib, welche die Spiele verwenden, die kenne ich nur rudimentär, sie enthält aber wohl einige Klassen und Routinen, die demjenigen, der nicht in der "LazyT-Liga" spielen möchte hilfreich sein können.
Was genau möchtest du denn machen?
Npq
Das Plugin selber ist eine dynamische Lib, die zur Laufzeit geladen wird (*.so = shared object). Das hört sich schlimmer an als es ist, die vorhandenen Makefiles kann man ja einfach übernehmen bzw. für seine Zwecke abändern.
Im Grunde bekommst du von der GUI eine Struktur mit Parametern, z.Bsp. Handle auf Framebuffer, LCD, IFB etc. übergeben, die du dann selber verwenden kannst bzw. welche noch zusätzliche Informationen (z.Bsp X/Y-Koordinaten die der Benutzer eingestellt hat) enthalten.
Somit ist das Plugin unabhängig von der GUI, dafür muß man andererseits alles selber gestalten.
Es gibt eine FX-Lib, welche die Spiele verwenden, die kenne ich nur rudimentär, sie enthält aber wohl einige Klassen und Routinen, die demjenigen, der nicht in der "LazyT-Liga" spielen möchte hilfreich sein können.
Was genau möchtest du denn machen?
Npq
-
- Senior Member
- Beiträge: 1260
- Registriert: Samstag 6. Oktober 2001, 00:00
-
- Erleuchteter
- Beiträge: 649
- Registriert: Donnerstag 7. März 2002, 21:11
Kannst Du mir vielleicht ein paar Tips geben, wie man anfangen muß.LazyT hat geschrieben:/me spielt in der Regional-Liga. Und das kann JEDER von euch mit etwas gutem Willen
Betriebssystem, Programme, Abläufe u.s.w.
Wenn das wirklich jeder kann, dann kannst Du sicherlich auch was erklären.
CU - Bis dann Martin
Nokia SAT 2xI / Sagem Kabel 2xA (schwarz)
Nokia SAT 2xI / Sagem Kabel 2xA (schwarz)
-
- Developer
- Beiträge: 457
- Registriert: Sonntag 23. März 2003, 00:39
hi,
s**** forum, meine schöne lange Antwort wurde einfach nicht gespeichert *arg*
da ich vor kurzem ein kleines spiel (von minesweeper inspiriert )
gemacht habe, wollte ich zumindest dazu eine kleine Anleitung schreiben, die einiges aus versch. Quellen und eigene Erfahrungen zusammenfasst. Bin allerdings noch nicht sehr weit gekommen
Für Windows kann ich dir leider keine Anleitung geben, unter http://www.dietmar-h.net ist aber ein yadd-howto zu finden. Wenn das mal funktioniert kannst du versuchen, mit dem cdk aus dem cvs ein eigenes YADD zu erstellen und davon zu booten. wenn das funktioniert, dann steht eigenen Änderungen nichts mehr im Weg.
Hast du im Forum schonmal gesucht, wie man unter Windows kompiliert? ist bestimmt irgendwo beschrieben, cygwin dürfte ein gutes Stichwort sein...
ciao,
ChakaZulu
s**** forum, meine schöne lange Antwort wurde einfach nicht gespeichert *arg*
da ich vor kurzem ein kleines spiel (von minesweeper inspiriert )
gemacht habe, wollte ich zumindest dazu eine kleine Anleitung schreiben, die einiges aus versch. Quellen und eigene Erfahrungen zusammenfasst. Bin allerdings noch nicht sehr weit gekommen
Für Windows kann ich dir leider keine Anleitung geben, unter http://www.dietmar-h.net ist aber ein yadd-howto zu finden. Wenn das mal funktioniert kannst du versuchen, mit dem cdk aus dem cvs ein eigenes YADD zu erstellen und davon zu booten. wenn das funktioniert, dann steht eigenen Änderungen nichts mehr im Weg.
Hast du im Forum schonmal gesucht, wie man unter Windows kompiliert? ist bestimmt irgendwo beschrieben, cygwin dürfte ein gutes Stichwort sein...
ciao,
ChakaZulu
-
- Senior Member
- Beiträge: 1260
- Registriert: Samstag 6. Oktober 2001, 00:00
Der Urschleim ist doch schon ewig dokumentiert.Kannst Du mir vielleicht ein paar Tips geben, wie man anfangen muß.
Was ich mir vorstellen könnte wäre ein kleines Howto wie man ein Plugin schreibt. Ich denke da so an
- Grundgerüst
- Zugriff auf den Framebuffer
- Zugriff auf das LCD
- Abfrage der Fernbedienung
Später vielleicht noch FreeType (Nutzen von Fonts). Aber dazu braucht man halt Zeit, Lust - und Interessenten...
-
- Tuxboxer
- Beiträge: 2452
- Registriert: Montag 21. Oktober 2002, 10:04
Wenn ich dich richtig verstehe, dass du das machen würdest hättest du in mir einen Interessenten gefunden, ich würde mich auch bereit erklären, gegenzulesen , querzufragen oder dir, soweit ich kann , anderweitig Unterstützung zukommen zu lassen.LazyT hat geschrieben:Was ich mir vorstellen könnte wäre ein kleines Howto wie man ein Plugin schreibt.
Schon gelesen ???
ENIGMA-DOC
ENIGMA-DOC
-
- Einsteiger
- Beiträge: 140
- Registriert: Donnerstag 31. Oktober 2002, 17:59
-
- Senior Member
- Beiträge: 1260
- Registriert: Samstag 6. Oktober 2001, 00:00
-
- Tuxboxer
- Beiträge: 2452
- Registriert: Montag 21. Oktober 2002, 10:04
Du musst das nach dem Schneeballprinzip sehen...LazyT hat geschrieben:[...]Naja...
Schon gelesen ???
ENIGMA-DOC
ENIGMA-DOC
-
- Einsteiger
- Beiträge: 259
- Registriert: Mittwoch 5. März 2003, 19:03
Gut, dann inkrementier ich den Counter um eins (auf 4)
Obwohl gerade LazyT's Sourcen in sich schon super dokumentiert sind.
Eine gute Quelle ist auch terrae's tuxcal source.
Komplett blick ich's auch noch nicht, aber fürs erste hats prima geholfen.
Viel schlechter siehts da mit der Doku der GUI's und der Demons aus.
Wo findet man denn dort eine halbwegs gute Doku zu?
Und als letztes die Bitte, Herr lass Zeit regnen, denn ohne die ist die beste Doku sinnlos
stikx
Obwohl gerade LazyT's Sourcen in sich schon super dokumentiert sind.
Eine gute Quelle ist auch terrae's tuxcal source.
Komplett blick ich's auch noch nicht, aber fürs erste hats prima geholfen.
Viel schlechter siehts da mit der Doku der GUI's und der Demons aus.
Wo findet man denn dort eine halbwegs gute Doku zu?
Und als letztes die Bitte, Herr lass Zeit regnen, denn ohne die ist die beste Doku sinnlos
stikx
-
- Tuxboxer
- Beiträge: 5873
- Registriert: Samstag 23. Februar 2002, 22:46
Ich habe da auch ein kleines großes Problem
Ich habe zwei Plugins die ich partou nicht im aktuellen AlexW Image zu laufen bekomme. Es ist ein cam-alpha Plugin (tauscht D und E cam-alpha aus) und ein ucode Plugin das die interne und die Original ucode tauscht.
In dem aktuellen yadd funktioniert das ganze problemlos und in einem jffs only funktioniert es auch nur nicht im AlexW Image.
Das reinkopieren der .so und der .cfg Dateien mache ich per Tuxbox Flashtools was bei anderen Plugins ja auch immer funtioniert hat (das Zoom Plugin funktioniert ja auch so)
Wo liegt der Fehler? Die Attribute habe ich natürlich auch geändert und dann die Box neugestartet. Wie gesagt im yadd habe ich genau die gleichen Verzeichnisse benutzt und da läuft es.
Gruß Gorcon
Ich habe zwei Plugins die ich partou nicht im aktuellen AlexW Image zu laufen bekomme. Es ist ein cam-alpha Plugin (tauscht D und E cam-alpha aus) und ein ucode Plugin das die interne und die Original ucode tauscht.
In dem aktuellen yadd funktioniert das ganze problemlos und in einem jffs only funktioniert es auch nur nicht im AlexW Image.
Das reinkopieren der .so und der .cfg Dateien mache ich per Tuxbox Flashtools was bei anderen Plugins ja auch immer funtioniert hat (das Zoom Plugin funktioniert ja auch so)
Wo liegt der Fehler? Die Attribute habe ich natürlich auch geändert und dann die Box neugestartet. Wie gesagt im yadd habe ich genau die gleichen Verzeichnisse benutzt und da läuft es.
Gruß Gorcon
-
- Erleuchteter
- Beiträge: 465
- Registriert: Mittwoch 14. August 2002, 20:45
Du kannst die auch ins var legen:https://tuxbox.org/forum/viewtopic.php? ... ht=#179814Das reinkopieren der .so und der .cfg Dateien mache ich per Tuxbox Flashtools was bei anderen Plugins ja auch immer funtioniert hat (das Zoom Plugin funktioniert ja auch so)
-
- Tuxboxer
- Beiträge: 5873
- Registriert: Samstag 23. Februar 2002, 22:46
-
- Tuxboxer
- Beiträge: 5873
- Registriert: Samstag 23. Februar 2002, 22:46
Dann stimmt aber der "Zeiger" der .so Datei nicht mehr.thegoodguy hat geschrieben:Du kannst die auch ins var legen:https://tuxbox.org/forum/viewtopic.php? ... ht=#179814
Wie kann ich den mir anzeigen lassen und verändern?
Gruß Gorcon
-
- Contributor
- Beiträge: 1833
- Registriert: Mittwoch 10. April 2002, 15:39
-
- Tuxboxer
- Beiträge: 5873
- Registriert: Samstag 23. Februar 2002, 22:46
-
- Contributor
- Beiträge: 1833
- Registriert: Mittwoch 10. April 2002, 15:39
-
- Tuxboxer
- Beiträge: 5873
- Registriert: Samstag 23. Februar 2002, 22:46
-
- Einsteiger
- Beiträge: 259
- Registriert: Mittwoch 5. März 2003, 19:03
@Gorcon
Wenn Du denn Urcode von Sat24 benutzt, dann ändere doch den Pfad und kompiliere neu.
Aus "/var/plugins/shell1" wird dann z.B. "/var/tuxbox/plugins/shell1"
Denn Sinn kann ich nicht unbedingt erkennen, aber who cares
stikx
Wenn Du denn Urcode von Sat24 benutzt, dann ändere doch den Pfad und kompiliere neu.
Code: Alles auswählen
#include <studio.h>
#include <plugin.h>
void plugin_exec()
{
system("/var/plugins/shell1");
}
Denn Sinn kann ich nicht unbedingt erkennen, aber who cares
stikx
-
- Tuxboxer
- Beiträge: 5873
- Registriert: Samstag 23. Februar 2002, 22:46
-
- Tuxboxer
- Beiträge: 2452
- Registriert: Montag 21. Oktober 2002, 10:04
-
- Tuxboxer
- Beiträge: 5873
- Registriert: Samstag 23. Februar 2002, 22:46