24.10.2009, 21:57
Ein kleines FAQ, wie man ein Homebrew erstellt und was man dafür braucht:
Vorwort:
Ein Homebrew erstellst du nicht, je nach dem wie aufwendig es ist, mal eben.
Sondern eher bevor du deine Idee umsetzten kannst, musst du erstmal eine Programmiersprache lernen und die (einigermaßen) können.
Mit welchen Programmiersprachen kann man auf der PSP programmieren?
Die Auswahl ist nicht gerade groß du kannst dich zwischen:
Wo kann ich Lua lernen ?
Welche verschiedenen Lua Player gibt es ?
Bei jeder Variante des Interpreters ändern sich die Namen der Befehle (Syntax), also muss man sich in jede Variante neu einarbeiten.
Wo kann ich C/C++ lernen ?
Wo kann ich etwas über Python erfahren
Wirklich bekannt ist Python in der PSP Programmierung nicht, trotzdem hier ein Link
Ich kann C/C++ was muss ich beachten wenn ich für die PSP programmiere ?
Du brauchst erstmal eine PSP Entwicklungsumgebung:
Weiter müssen ganz am Anfang in die Main.c die so genannten
"callbacks" kopiert werden:
Hier noch ein Link zu allen der Befehle der PSP Libary: Link
Welche Libaryies für die PSP gibt es ?
Was soll ich lernen Lua oder C/C++ ?
Vorteile:
Nachteile:
Wenn irgendwas fehlt oder falsch ist dann bitte posten!
Über Anregungen und Kritik freue ich mich auch
Vorwort:
Ein Homebrew erstellst du nicht, je nach dem wie aufwendig es ist, mal eben.
Sondern eher bevor du deine Idee umsetzten kannst, musst du erstmal eine Programmiersprache lernen und die (einigermaßen) können.
Mit welchen Programmiersprachen kann man auf der PSP programmieren?
Die Auswahl ist nicht gerade groß du kannst dich zwischen:
- Lua
- C/C++
- Python
Wo kann ich Lua lernen ?
- Deutschsprachiges Tutorial auf Bumuckl.com
- Tutorial von flofrucht aus unserem Forum
- Englischsprachiges Tutorial auf evilmania.com
Welche verschiedenen Lua Player gibt es ?
- Normaler Lua Player:
Ist für uns uninteressant da er nur auf dem 1.50 Kernel läuft. - Lua Player HM:
Hat viele Funktionen wird aber dadurch von Version zu Version instabiler:
- PGE Lua Player
Sehr schneller Lua Player und sehr stabil und bietet viele Funktionen. - Lua Player Euphorie
Hier setzt der Entwickler auf Schnelligkeit dafür wurden aber viele Funktionen entfernt.
Bei jeder Variante des Interpreters ändern sich die Namen der Befehle (Syntax), also muss man sich in jede Variante neu einarbeiten.
Wo kann ich C/C++ lernen ?
- Allgemeines Deutschsprachiges Tutorial
- Seite die sich mit Programmierung beschäftigt: proggen.org.
- Ein Kurs, der C++ von Grund aus erklärt: Vollkards C++ Kurs.
- Deutschsprachige Tutorials spezifisch für die PSP
- Englische Tutorials spezifisch für die PSP
- Eine Liste für C/C++ /Assembler Tutorials in Englisch.
Wo kann ich etwas über Python erfahren
Wirklich bekannt ist Python in der PSP Programmierung nicht, trotzdem hier ein Link
Ich kann C/C++ was muss ich beachten wenn ich für die PSP programmiere ?
Du brauchst erstmal eine PSP Entwicklungsumgebung:
- PSPToolchain unter Ubuntu installieren: Tutorial
- PSPToolchain unter Windows installieren: Tutorial
- Visual Studio C++ und PSPDev installieren: Tutorial
Weiter müssen ganz am Anfang in die Main.c die so genannten
"callbacks" kopiert werden:
Spoiler: (anzeigen)
Code:
#include <pspkernel.h>
#include <pspdebug.h>
// Exit callback
int exit_callback(int arg1, int arg2, void *common) {
sceKernelExitGame();
return 0;
}
// Callback thread
int CallbackThread(SceSize args, void *argp) {
int cbid;
cbid = sceKernelCreateCallback("Exit Callback", exit_callback, NULL);
sceKernelRegisterExitCallback(cbid);
sceKernelSleepThreadCB();
return 0;
}
// Sets up the callback thread and returns its thread id
int SetupCallbacks(void) {
int thid = 0;
thid = sceKernelCreateThread("update_thread", CallbackThread, 0x11, 0xFA0, 0, 0);
if(thid >= 0) {
sceKernelStartThread(thid, 0, 0);
}
return thid;
}
Hier noch ein Link zu allen der Befehle der PSP Libary: Link
Welche Libaryies für die PSP gibt es ?
- OSLib 2.1 - Speziell für Spiele gedacht
- JGE++ - Auch für Spiele gedacht
- VLF 1.0 by Dark Alex - Für das Erstellen von XMB ähnlichen Anwendungen
- Intrafont by Benhur - Für das Anzeigen von Schriftarten wie im XMB
Was soll ich lernen Lua oder C/C++ ?
Vorteile:
- Lua:
- Kann leichter erlernt werden.
- Ist eine Script Sprache, muss also nicht compiliert werden.
- Es ist keine Entwicklungsumgebung notwendig, nur ein Editor.
- Quelloffenesprache. D.h wenn du mal nicht weiter weist kannst du dich an anderen Scripten inspirieren lassen
- C/C++:
- Du kannst mehr Arbeitsspeicher benutzen.
- Bessere Speed, wegen dem compilieren und weniger CPU Auslastung.
- Uneingeschränkter Funktionsumfang.
Nachteile:
- Lua:
- Es kann maximal 5 MB des Arbeitsspeichers genutzt werden.
- CPU Auslastung ist deutlich höher im Vergleich zu C/C++.
- Weniger Geschwindigkeits dadurch.
- Du bist abhängig vom Funktionsumfang des Lua Players.
- C/C++:
- Dauert länger zu lernen.
- Muss immer compiliert werden.
Wenn irgendwas fehlt oder falsch ist dann bitte posten!
Über Anregungen und Kritik freue ich mich auch