home *** CD-ROM | disk | FTP | other *** search
-
- RECETTE a la FLam
-
- -------------------
-
- compilateurs utilises: MCC macro assembler
- Lattice C compiler 4.0
-
- ces fichiers ont etes testes avec ce mode d'emploi.
-
- -------------------
-
- COMMENT FAIRE UNE LIBRARY DE ROUTINES C PARTAGEABLE PAR PLUSIEURS
- PROGRAMMES ET GEREE PAR EXEC ?
-
- 1) prendre les fichiers suivants dans le RKM vol 2, Appendix K:
-
- - asmsupp.i (support Commodore) -> execlib/i_asmsupp.i
- - mylib.i (skeleton declar. ) -> execlib/i_flamlib.i
- - mylib.asm (skeleton library ) -> execlib/libskel.asm
-
- 2) declarez vos nouvelles fonctions dans:
-
- - i_flamlib.i
- - libskel.asm
- - libfuncs.c (routines en code reentrant)
-
- 3) sous CLI faites:
-
- assign LIB: "directory de amiga.lib et du AStartup.obj"
- assign I: "directory des includes C"
- cd execlib
-
- assem libskel.asm -i "dir des .i system" -o libskel.obj
- (--> libskel.obj 716 bytes on disk)
-
- lc1 -iI: -b0 -ccs libfuncs
- lc2 -r -v -s libfuncs
- (--> libfuncs.o 144 bytes on disk)
-
- execute ex_makelib
- (--> flam.library 516 bytes on disk)
-
- et voila c'est fini. la library se trouve maintenant dans LIBS: de la
- disquette workbench.
-
- -------------------
-
- COMMENT UTILISER CETTE LIBRARY AVEC SES PROGRAMMES C ?
-
- 1) faire un programme de test qui va ouvrir, utiliser, puis fermer
- la library:
-
- - test.c
- NOTE: si vous voulez que la library reste en memoire apres
- l'exit de ce programme, supprimez l'appel a RemLibrary().
-
- 2) faire un .lib du genre amiga.lib pour linker avec:
-
- - flam.lib.asm
-
- 3) sous CLI faites:
-
- lc1 -iI: -b0 -ccs test
- lc2 -r -v -s test
- (--> test.o 632 bytes on disk)
-
- assem flam.lib.asm -i "dir des .i system" -o flam.lib
- (--> flam.lib 136 bytes on disk)
-
- blink LIB:AStartup.obj test.o TO test LIB flam.lib LIB:amiga.lib
- (--> test 2220 bytes on disk)
-
-
- -------------------
-
- Note: DOSBase et SysBase ne sont pas declares dans libskel.asm
- donc si vous voulez utiliser des fonctions DOS ou Exec, il
- faut les rajouter dans libskel.asm, et les declarer en XDEF.
- Ensuite il suffit de les declarer en extern dans les fonctions C.
-
- -------------------
- ___ _
- /__ / /_| /|/|
- / /__ / | / |
-
- Les produits FLam sont crees par Alex Livshits & J-M Forgeas
-
-