pspdev / pspdev/pspdev.github.io

Add PRX/Stub Library Example/Guide

Ouverte
#103 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Langage dominant
C
Étoiles
13
Forks
11
Merge moyen
8 h 12 min
PR mergées (30 j)
1

Description

Dynamic Link is an essential part in PSP Programming. It's also the foundation of PSPSDK and CFW. However, current website doesn't include such guide on how to write export table, generate .S stub etc. One has to dive into Makefiles to figure out the complete process.

I'd like to add a guide to the current website that includes:

  • How to build PRX for others to use

    • How to write C code for PRX program (module_start/module_stop)
    • How to write export table
    • How to use psp-build-exports -b to convert export table into C code
    • How to write correct Makefile (-nostartfiles flags etc)
    • How to generate .S file using psp-build-exports -k
    • How to generate .a Stub Library using psp-ar
  • How to load PRX dynamically

    • System Calls such as sceKernelLoadModule, sceKernelFindModuleByUID, sceKernelStartModule (? Not quite familiar with this part)
    • What .S file does and how psp-fixup-imports works
  • Other Topics

    • Kernel Module / User Module(?) Calling Constraints(?)

Looking forward to your suggestions!

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par examiner le site web actuel et les Makefiles existants que, selon l’issue, les lecteurs doivent inspecter. Étudiez le workflow de build et de dynamic-loading de PRX autour de psp-build-exports, psp-ar, psp-fixup-imports et des appels système indiqués. Le travail est terminé lorsque le site web contient un guide cohérent couvrant les sujets demandés concernant le build, le chargement, les bibliothèques stub et les contraintes des modules.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
c
Domaine
documentation
Type d'issue
Documentation
Difficulté
5/5
Temps estimé
Plus d'une semaine
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
32/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.