1

Bon, j'ai un grave problème!!!
C'est la compilation de mon jeu [pub]puissance89[/pub] grin
j'avais un fichier qui après compilation marchait bien. en rajoutant la ligne:
var37:
dc.w 0
après un bss, ca marche mais quand on quitte le prog busy rest allumé et ca foire grave!!!
(j'avais modifié le prog et j'utilisais var37 dans ma modif, mais là j'ai pris une ancienne version du prog et var37 ne sert donc à rien dans cette source, mais ca devrais pas faire planter comme cela)

En préretraitre

2

Rectifie ta signature :
Bientôt Puissance 89 avec bugs!!!! grin
avatar
Membre fondateur de la Ligue Anti-MacIntoc
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Un expert est quelqu'un qui en sait de plus en plus sur de moins en moins
de choses, jusqu'à ce qu'il connaisse absolument tout à propos de rien.

3

c pas un bug du jeu rage
En préretraitre

4

Désolé...
C'est juste pour te dire que je peut pas t'aider. wink
avatar
Membre fondateur de la Ligue Anti-MacIntoc
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Un expert est quelqu'un qui en sait de plus en plus sur de moins en moins
de choses, jusqu'à ce qu'il connaisse absolument tout à propos de rien.

5

bah, alors, personne ne sait???
le programme marche bien mais c'est en quittant que ca foire !!!
En préretraitre

6

C pas juste un pt1 de pb de compilo du genre tu-redémarre-le-pc-et-ça-marche-après?
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

7

Change de Kernel peut-etre... Le BSS est alloué par lui,donc c peut-etre lui qui merde!
Cours et tutos Asm: http://membres.lycos.fr/sirryl

8

c'est clair que la moi je rebooterait le PC pour verifier.
ais c'est ptet aussi tres bien un bug du jeux. Dans la config précédente, le prog était logé a une certaine addr dans la ram , et le bug était invisible (pas de conséquence), et le fait que le prog prenne deux octets de + l'a ptet envoyé autre part dans la ram, et la c'est le bordel.
ca c'est les bugs chiants. qui s'expriment pas a tous les coups, mais suivant l'enironnement...

9

pour le coup de pour 2 octet de plus ca va autre part, je pense pas parce que je change aussi d'autre truc dans le fichier externe et ca plante pas!!! Le kernell c'est unios réputé stable. Rebooter je vais essayer mais hier soir ca le faisait déjà et entre temps j'ai dormi et éteint mon pc!!!
mais l'histoire de l'allocution je vais approfondir (ex: ajouter autre chose et voir si ca plante aussi)
ce qui est bizarre c'est que le prog marche impec et que c'est en sortant que le voyant busy reste allumé > plantage fatal mad
En préretraitre

10

Et t'as rien modifié d'autre que çà?
Parceque 2 octets c qd mm léger pour tout faire planter...
c pô ton ancien "address error" déguisé?
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

11

j'ai enlevé le bss de "trop" et ajouté des fonctions inutiles dans le prog (du style move.w #25,cplayer1) en n'ayant aucune incidence dans le prog. Donc c'est le bss qui fait planter!!!

Ximoon> non, l'adress error je l'avais enlevé comme tu me l'avais dit en sauvegardant a7 et je ne l'avait plus don c'est pas cela.

Sinon, avec 51 bss ca marche, mais avec le 52 eme ca plante. Prob de "taille" ou de place en ram??? (je pense pas parce que la plupart des bss sont des variables du type: var: dc.w 0 donc ca prend pas bcp de place en ram!!)
bref ce problème me rend dingue confus
au fait busy est allumé mais qd on appuie sur seconde, alpha, <>, ca l'affiche en bas et c'est la seule chose qui marche!!!
En préretraitre

12

J'ai eu le même problème il y a deux jours... en C.
Sauf que moi s'était l'allocation de mémoire dans la pile...

<ton prog> ..... move.l SvgSP(pc),a7 ; c'est la dernière instruction à mettre avant le rts rts;
Vérifie que la pile à la sortie de ton prog est bien restaurée. Pour en être sûr, voici une solution simple :_main:
  move.l   a7,SvgSP     ; c'est la première instruction de ton prog, ne met rien avant !

  .....
Avec de la chance...
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

13

oui, je le fait aussi (pour éviter un adress error)grin
je pense qu'il faut que j'enlève des variables en bss et ca marchera. On dirait que s'il y a trop de bss ca plante confus
En préretraitre

14

bon bah j'ai mis mon var37: dc.w 0 dans le prog et plus en bss et ca plante plus. donc faut croire que trop de bss fait planter la calc
smile
En préretraitre

15

doom
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

16

Et si tu utilisais les ROM_CALLs officiels plutôt que ton segment BSS?

http://tigcc.ticalc.org/doc/alloc.html (la référence première)
http://www.ti-fr.org/~prog/index.php3?do=asm/tuto/asm2 paragraphe IV.1 (attention, c'est axé _nostub wink )
[edit]Edité par Kevin Kofler le 01-09-2001 à 19:26:36[/edit]
avatar
Mes 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é

17

Kevin, je suppose que tu en sais assez sur la programmation pour savoir qu'il vaut mieux savoir d'où vient le plantage. Ce n'est pas parce que ça marcherait en allouant d'une autre manière que ça prouvera que le problème sera réglé (pour être franc, je pense, du moins j'espère, qu'Universal OS n'est pas buggé wink)
Et à mon avis, c'est plus simple de garder les BSS (code déjà relogé).
[edit]Edité par JM le 01-09-2001 à 23:36:58[/edit]

18

Etant donné que les BSS d'Universal OS sont peut-être buggés, essaie avec d'autres kernels.
Tu peux aussi m'envoyer une version qui plante pour que je cherche le problème. (les sources ne sont pas nécessaires)

19

d'accord, je vais tester un autre kernell et je t'envoie une version qui plante smile
En préretraitre

20

au fait tu fais comment pour tes bss?
bss
var1
var2
...
end

ou

bss
var1
bss
var2
bss
var3
...
end?
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

21

je fait un:
bss
var1:
dc.w 0
var2:
dc.w 0
...
...
...
end

Sinon, j'ai remarquer que ce n'est pas le fait d'ajouter le bss var37: dc.w 0 qui fait planter mais c'est la position par rapport aux autres bss. C'est de plus en plus louche mais je vais envoyer cet aprem des trucs à jm. Sinon, mon prog plante sous doorsos confus
Du moins les gray. pourtant j'utilise une routine de kevin pour les détrourner et cette méthode est impec pour unios. Alors je sais pas pourquoi ca foire avec doorsos.
En préretraitre

22

Laquelle?

Utilises-tu des fonctions de libraries statiques (par exemple tigcc.a) ou alors une fonction écrite en C ou assembleur GNU? Parce que si c'est ça, c'est probablement un problème avec le linker.
[edit]Edité par Kevin Kofler le 02-09-2001 à 17:51:45[/edit]
avatar
Mes 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é

23

Au début:

>move.l #0,old_int_1
>move.l #0,old_int_5

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

>move.l $64,old_int_1
>move.l $74,old_int_5
>lea.l dummy_int(pc),a0
>move.l a0,$40064
>move.l a0,$40074
>jsr graphlib::clr_scr
>jsr graphlib::gray4 ; active les grays
>move.w #1,graphlib::choosescreen ; indique à GraphLib que l'on va lui imposer les plans
;de travail (plane0 & plane1)

et à la fin:


>jsr graphlib::gray2
>clr.w graphlib::choosescreen
>move.l old_int_1,$40064
>move.l old_int_5,$40074

>movem.l (a7)+,d0-a6 ;restaure tous les registres
>move.l save,a7
>rts

>dummy_int:
>rte
En préretraitre

24

Ah je me rappelle maintenant. wink

Je ne pense pas qu'il y ait des problèmes là-dedans.

Tu penses bien à réserver 4 octets (dc.l 0 ou ds.l 1 ou ds.b 4) pour old_int_1, old_int_5 et save?
avatar
Mes 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é

25

oui oui, y'a un
bss
old_int_1:
dc.l 0
old_int_5:
dc.l 0
et ca marche nickel sous unios. Le problème est sous dooros les gris s'affichent pas mais ca marche quand même confus mais je vais vérifier tout cela en refaisant un essai
En préretraitre

26

?
avatar
Mon âme rayonnait du feu de ton feu,
Ton monde était une eau chuchotante
A la riviére de mon coeur.

Rumi, poéte soufi

27

Oui, mais "tes talents ne font pas le poids face a la puissance du côté obscur".
(Dixit Palpatine. Le vrai)


Au fait, on l'a plus revu...?
avatar
Mon âme rayonnait du feu de ton feu,
Ton monde était une eau chuchotante
A la riviére de mon coeur.

Rumi, poéte soufi

28

bon, j'ai réinstallé doorsos. avec bombermaze, pas de prob mais avec mon programme les gris s'affichent pas mais ca plante pas, c'est sur grin
En préretraitre

29

Je crois que c'est vraiment idiot.
Fait un tour du côté de rand_seed...

30

A propos du BSS, y a pas un changement d'adressage à faire dans les noms par rapport aux variables?
Cours et tutos Asm: http://membres.lycos.fr/sirryl