Page 1 of 1

Assembleur Pb avec la romcall _DisplayImage TI 83 +

Unread postPosted: 01 May 2018, 08:43
by juan_30
Bonjour,

Je me mets à l'assembleur z80 sur ti 83 plus. J'utilise notamment le bouquin Jump-Start Z80 machine code. Ouvrage pas trop mal pensé, mais....malheureusement bâclé, donc pas mal de fautes dans la traduction en hexadécimale des instructions. Mais au moins, cela force à chercher, tester...bref, s'y mettre quoi ! :)
Mais j'ai un souci avec le code suivant :

Code: Select all
#include    "ti83plus.inc"
#define     progStart   $9D95
.org        progStart-2
.db         $BB,$6D
    bcall(_ClrLCDFull)
    ld hl,location
    ex de,hl
    ld hl,image
    bcall(_DisplayImage)
    ret
location
.db   $05,$05
image:
.db $08,$08,$3c,$7e,$ff,$ff,$ff,$ff,$7e,$3c


c'est le code du bouquin...en gros, cela doit dessiner une jolie petite bille...mais une fois lancé, ben j'obtiens rien à l'écran. Pas de plantage, juste rien :( et "done"...

Si je prends par contre le code suivant :
Code: Select all
#include    "ti83plus.inc"
#define     progStart   $9D95
.org        progStart-2
.db         $BB,$6D
    bcall(_ClrLCDFull)
    ld de,$505
    ld hl,image
    bcall(_DisplayImage)
    ret
image:
.db $08,$08,$3c,$7e,$ff,$ff,$ff,$ff,$7e,$3c


ben j'ai ma petite boule. Malheureusement, j'ai besoin d'une variable "location" pour la faire bouger ensuite....
Donc je comprends pas où est le souci. J'ai regardé la commande "ex" sur le manuel du Z80. A part échanger les registres, elle ne détruit rien..
Si quelqu'un pouvait m'éclairer de sa science du binaire, honnêtement je comprends pas où je foire dans le code.
Merci d'avance

Re: Assembleur Pb avec la romcall _DisplayImage TI 83 +

Unread postPosted: 01 May 2018, 08:58
by TheMachine02
Lorsque tu exécutes la commande ld hl, location ; celle-ci va charger dans hl la valeur du label location, ie l'adresse de tes deux octets et PAS la valeur pointé à cette adresse. Tu as en fait besoin de ld hl,(location) qui elle va charger les valeurs pointées.

Re: Assembleur Pb avec la romcall _DisplayImage TI 83 +

Unread postPosted: 01 May 2018, 09:15
by juan_30
C'était donc ça... :) Merci