1

j'ai fini et posté mon ptit tuto, en faite pratiquement que des captures, sur mon site :

http://anthologie.ifrance.com

courage triso

je bosse aussi sur un jeu de reflexion pour commencer simplement :

JC_Jeux1_scr2.JPG

2

tu la chopé ou l'ARM Software Toolkit v2.51 ?

3

ou plustôt, ou puis-je trouver l'ARM Software Toolkit v2.51 ACTUELLEMENT ??

4

Lama, tu l'a mis sur ton ftp ??

5

Moi aussi je cherche l'ARM Software Toolkit v2.51 donc soyez sympa j'ai vraiment hate de coder sur GP32

6

je l'ai !!!!!!!

mais bon jycet, quand je compile il me fait des erreur undefied referance ton pour chaque fonction appellé de la gp32 alors qu'elles sont dans le header gpgraphics.h !!!

tu pourrait pas m'envoyer une source avec ses *.h, a mettre dans trel dossier !!!

si ca ne te derange pas gol

7

jycet, pour le fond de ton jeu de réléxion ta pa été prendre des trucs dans la source de GP Tetris de OMSK ?

8

c'est l'image Paradis de WINDOWS 2000 picol

j'ai pas été la chercher trés loin gni

9

lol, bah omsk a du fer pareil !
winkgrin

10

comment faire des gxb a partir des axf ?!
et comment faire des fxe a partir des axf, parce que chez moi ca bug...

qq'1 svp ?

11

J'aurais besoin de savoir ce que c'est que cet ARM software, svp

12

ben c'est le kit de dem fait par arm pour les proc arm....

compilo C/C++
linker asm
outils de debuggage.....

13

Pour faire des gxb, tu compiles avec armlink -bin (oublies pas le .bin).

14

hmm.. smile ça y est je m'y mets ... jycet, g dl une de tes sources, mais g pas la lib pour la gp32... ce qu'il y a dans le rep gpinclude et un autre rep, je c plus le nom..
je peux la trouver ou cette lib?

15

Sur le site de gamepark. C'est le fichier work_en.zip je crois.

16

ok merci smile

sinon si je veux aucune lib, juste pour faire un prog en C qui init la gp32, et me permette d'écrire dans la mem video, je dois faire quoi?

y a pas un tuto ou on explike ça?
par exemple je veux aucune lib de gp, et pouvoir afficher un pixel a l'écran, je dois faire comment?
(arm toolkit 2.51)

17

18

oky merci smile

19

voici un example sur comment compiler :

@echo off
armasm -CPU ARM9 -Littleend boot.s
armasm -CPU ARM9 -Littleend sample.asm
armcc -CPU ARM9 -c -Wall -otime -fpu none -Littleend -cpu ARM9 -apcs /narrow/noswst gp32_sound.c -o gp32_sound.o -errors error.log
armlink -bin -first boot.o boot.o gp32_sound.o sample.o -ro-base 0x0C000000 -rw-base 0x0C100000 -o demo.gxb

adapte le en fonction des fichiers.

20

ok merchi smile

21

heu, par contre armasm gueule la dessus:

     stmfd     sp!,{r0-r14}
     ldmfd     sp!,{r0-r13,pc}


ces 2 instructions, il aime pas...
et après armlink foire en me disant "Undefined symbol 'main'" et "Undefined symbol 'GenInit'".. hmmm pourtant ils y sont dans la source...

22

Pour ces instructions, c'est normal roll La pile c'est le registre r13 grin
Donc focement pas cool :
essaye ca :
stmfd sp!,{r0-r12,lr}
ldmfd sp!,{r0-r12,pc}
Voila

Les as-tu bien exporte ? EXPORT ?

23

ok, ça marche maintenant grin
pour les deux labels, bah c ta source dans le topic de ton premier prog gp32 grin
et oui, il y a bien EXPORT avant le label...

24

Cherche. Je sais pas. Moi ca marchait. Mais la mise en forme du forum peut eyre

25

hmmm.... c ce ke je fé... je cherche ;D

26

hmmm... bon, qques questions, ou confirmations grin

     CODE32
     AREA     Program, CODE, READONLY


CODE32 indique ke c des instructions 32 bits c ça?
AREA ?? y a program, generic, init... init je suppose ke c ce qui est exécuté au lancement du prog.. vu qu'ily a ensuite un appel a main. par contre generic ça sert a quoi? kelle différence par rapport a program? bon, CODE je suppose que ça veut dire qu'il y a des instructions dans cette partie, sinon a part CODE y a quoi comme autres options?
READONLY, READWRITE... j'ai vu que la section du programme était en readonly... cad que du code auto changeant ne marche pas c ça? on ne peut pas mettre de vars la dedans? il faut les mettre dans une section readwrite?

ensuite, une autre question.. IMPORT, EXPORT.. ça sert pour le linker non? a exporter ou importer des addresses dans des sections différentes?

et ces sections, comment elles sont compilées exactement? le readonly, readwrite, etc, c foutu comment dans la mem de la gp?

27

PpHd> y a un truc bizzarre... ça vient peut être du compilo/linker...
si je mets les sections de code avec les EXPORT avant leur IMPORT, ça marche, par contre si elles sont après ça foire... par exemple, si j'ai:

     CODE32
     AREA Init, CODE, READONLY

     IMPORT machin
     EXPORT truc
     EXPORT toto
toto
     ENTRY
truc
     bl machin
     END

     CODE32
     AREA Program, CODE, READWRITE

     EXPORT machin
     IMPORT toto
machin
     b toto

     END


le b toto dans la seconde section va marcher, alors que le bl machin dans la première va foirer au linkage...
après avoir trafiqué qques trucs ça m'a paru être ça, mais ça marche quand même pas, pke je dois mettre la section Program avant la fct Init, et ça foire cpltm dans cet ordre...
fin bon si qqun voit quel peut être le pbl...

28

>CODE32 indique ke c des instructions 32 bits c ça?
que tu compiles en mode ARM.
Y'a le mode THUMB qui fait des instructions de 16 bits, pour ceux qui veulent gagner de la place en memoire.

>AREA ?? y a program, generic, init... init je suppose ke c ce qui est exécuté au lancement du prog.. vu qu'ily a ensuite un appel a main. par contre generic ça sert a quoi? kelle différence par rapport a program?
Je ne sais pas.

>bon, CODE je suppose que ça veut dire qu'il y a des instructions dans cette partie, sinon a part CODE y a quoi comme autres options?
DATA

>READONLY, READWRITE... j'ai vu que la section du programme était en readonly... cad que du code auto changeant ne marche pas c ça? on ne peut pas mettre de vars la dedans? il faut les mettre dans une section readwrite?
Oui. Mais tu peux mettre du code dans une section READWRITE>
C'est ce que je fais pour les fcts graphiques : pouvoir acceder plus rapidement aux donnees.
En effet, ldr r0,Data marche pas en RO because le deplacement pour acceder a la section RW est trop grand ! =>
ldr r0,=Data ; Cherger adr de Data dans r0
ldr r0,[r0] ; Voilou.
ca sert aussi pour charger des cts en 3 cycles.
ldr r0,=0xFe75896

>ensuite, une autre question.. IMPORT, EXPORT.. ça sert pour le linker non? a exporter ou importer des addresses dans des sections différentes?
xdef / xref
Importer une fonction ou exporter une fonction.
Voilou.

>et ces sections, comment elles sont compilées exactement? le readonly, readwrite, etc, c foutu comment dans la mem de la gp?
RO : $c0000000
RW : $c1000000

Sinon je confirme qu'armasm est tres chiant sur la syntaxe.
Les labels avec : il en veut pas #beurk#
Essaye de faire tous les imports d'abord.

29

PpHd a écrit :
Sinon je confirme qu'armasm est tres chiant sur la syntaxe. Les labels avec : il en veut pas #beurk#

Pourquoi ne pas utiliser GNU as alors?
avatarMes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

30

PpHd> merci bcp, j'essayerai demain soir smile
Kevin> bof, de tte façon j'ai jamais mis de ":" après mes labels, ça oblige a déplacer la main pour appuyer sur la touche, c trop fatiguant trisogringrin