website logo
Auteur
avatar
thellier

Forum » » Création-Développement » » Y-a-t'il possibilité de faire une library système en C sur Os4


Posté : 19-11-2014 11:32 icone du post

>code skeleton for AmigaOS
Oui mais en fait il faut juste un header de .library
Ceux de SimpleDT de SimpleDT_lib.c et SimpleDT_lib_ppc.c font l'affaire pour n'importe quelle toto.library en os3 ou os4


>Je souhaite dans un premier temps générer la librairie avec deux commandes facile
OK mais il faut aussi écrire ton LIB_Init et ton LIB_Expunge pour que ces deux commandes puissent marcher
Je veut dire dans LIB_Init tu va ouvrir les autres libs (dos,intuition,etc..) que ta toto.library va
utiliser, allouer sa mémoire, intialiser ses structures ,etc...
Dans LIB_Expunge tu ferme tout


Note sur la jump-table:


Souvent on voit ce chiffre 30 ou -30 avec les .library
Il correspond à la 5éme fonction = 5*6=30 et le 6 étant la taille d'un "branch ASM a une adresse 32 bits" cad branch=16bits + adresse =32 bits
Le -30 s'expliquant car ces "jump" sont stockées à "l'envers" dans la .library
6  1ére fonction réservée (=LibOpen)
12 2éme fonction réservée (=LibClose)
18 3éme fonction réservée (=LibExpunge)
24 4éme fonction réservée (=LibReserved)
30 votre fonction perso 1
36 votre fonction perso 2
etc...


Alain



 


 


Cet article provient de Le site des utilisateurs francophones actuels et futurs d'AmigaOS 4.x
https://amiga-ng.org/viewtopic.php?topic=1975&forum=14