Bonjour
Je programme en basic depuis 3 ans sur TI82.
Je cherche donc à apprendre l'assembleur pour passer à la vitesse supérieure.
J'ai bien trouvé quelques sites mais certains sont peu clairs (ou en anglais... je passe peu être pour le boulet qui veut pas se faire chier a traduir 100 pages mais tant qu'a faire...) et la plupart s'adressent aux Ti83, 83+ ou modèles plus récents.
Je voudrais donc vous demander si les programmes assembleurs sur Ti82 et les autres modèles (équipés z80) sont les même (sinon pourriez vous me dire pourquoi?). Enfin, si vous connaissez de bon sites d'apprentissage clairs et tout et tout (parfait quoi!) pourriez vous me communiquer leurs addresses (si possible avec des webmasters qui ont une TI82... grin boing )?

Je vous donnes ce que j'ai trouvé:
- http://240gp.ovh.net/~ftpplus//Tutorials/TI83pAsmTut.htm
- http://jlpti83.free.fr/?rub=ass
- http://karma.ticalc.org/ (ahrg en anglais!!! mais au moins il a une 82 love )

Si vous pouviez compléter cette liste pas seulement pour moi mais aussi pour tout les petits nouveaux
[right]Merci
El $cop!on
J'espère que ya pas déja eut un post semblable mais j'ai eut beau chercher... [/right]
avatarBen voila quoi...
Bonjour à toi aussi!
Tout d'abord non les progs 82 ne sont pas exactement les meme que pour les autres calculettes car la mémoire n'est pas organisée de la meme maniere en fonction des modèles (et meme en fonction des roms pour compliquer le tout, mais là c'est le shell qui fait le boulot). Cependant le langage de prog est le meme (asm Z80) et en gros ce sont les appels aux differentes fonction pré-existante dans la mémoire qui vont changer. Donc il vaut sans doute mieux aprendre avec un vrai tuto Ti82 car sinon tu risque de tomber sur des tutos 83 qui ne font que t'aprendre à appeler des fonctions pré-existantes (vu la multiplicité des fonctions sur 83 par rapport à 82...)!

Sinon pour les tutos, (le mieux serait ke tu accepte de lire l'anglais (to improve your english grin )) mais voici la traduction de http://karma.ticalc.org/ (ahrg en anglais!!! mais au moins il a une 82 love ) et quand t'aura assimilé ca tu sera déjà calé :
http://marcplouhinec.free.fr/calculatrices/ti/ti-82/tutoriel/progasm/guide/contents.html

je regrette juste qu'il y ait la routine putsprite au lieu de la routine de movax notament à cause de la fonction FIND_PIXEL (mais t'aura qu'à revenir poser tes questions):

; Z80 Sprite83 Movax
; Feel free to use this routine in your own productions
; as long as you give me some credit.
; SPRXOR
; Xor 8x8 sprite þ a=x, e=y, bc=sprite address

SPRXOR:

push bc ; Save sprite address

;Calculate the address in graphbuf

ld hl,0 ; Do y*12
ld d,0
add hl,de
add hl,de
add hl,de

add hl,hl
add hl,hl

ld d,0 ; Do x/8
ld e,a
srl e
srl e
srl e
add hl,de

ld de,8e29h
add hl,de ; Add address to graphbuf

ld b,00000111b ; Get the remainder of x/8
and b
cp 0 ; Is this sprite aligned to 8*n,y?
jp z,ALIGN


;Non aligned sprite blit starts here

pop ix ; ix->sprite
ld d,a ; d=how many bits to shift each line

ld e,8 ; Line loop
LILOP: ld b,(ix+0) ; Get sprite data

ld c,0 ; Shift loop
push de
SHLOP: srl b
rr c
dec d
jp nz,SHLOP
pop de

ld a,b ; Write line to graphbuf
xor (hl)
ld (hl),a

inc hl
ld a,c
xor (hl)
ld (hl),a

ld bc,11 ; Calculate next line address
add hl,bc
inc ix ; Inc spritepointer

dec e
jp nz,LILOP ; Next line

jp DONE1


; Aligned sprite blit starts here

ALIGN: ; Blit an aligned sprite to graphbuf
pop de ; de->sprite

ld b,8
ALOP1: ld a,(de)
xor (hl)
ld (hl),a
inc de
push bc
ld bc,12
add hl,bc
pop bc
djnz ALOP1

DONE1:
ret
; SPRXOR

; Z80 Sprite83 movax


Bon aprentissage!

a++;
Je me permet de déplacer ce topic vers prog asm.
ben chu daccord ke son topic est plus a sa place ici mé il le retrouvera sans doute jammais... et vu qu'il avait l'air motivé par l'asm ca serait bete kil abandonne pask il a pas trouvé de tuto sad
Si t'es généreux, tu peut lui envoyer un mmsg...vais le faire, tiens, d'ailleurs.
c'est le shell qui fait le boulot


Pas à ma connaissance, la compatibilité est plutôt assurée par le fait qu'il existe une table de sauts qui, elle, ne bouge pas. Enfin, il me semble...
Il me semble que la table est definie dans le code du shell lui-meme (pour les Ti82 en tout cas).
C'est possible, je sais pas.
okey merci les gars.
Je vais de ce pas improve my english.
Sinon j'ai rien compris à votre script mais bon JE REVIENDRAI angry (mhouahouaogoueglouglouglou heu...)... C'est de l'ASM?

Edit: a ok tomtom merci pour l'adresse de la traduction en fançais (je n'avais pas compris).
Sinon on est quand même sur un forum z80 je dois pas être le seul à vouloir apprendre l'ASM sur 82? Vous pouvez me dire où vous avez commencé l'assembleur vous? Ca ne pourra que servir de référence au pt'its jeunes comme moi (j'ai 16 ans) qui se lassent de chercher des tutos sur google et qui tombent sur des sites où tout est écrit en langages SMS ou autre abréviations (mais qu'y veulent faire partie de la comunautée). Si ceux qui s'y connaissent pouvaient créer un topic dédié uniquement, à cela où tout serai claire...
Bon aller je me calme scotch gol
Encore une fois merci pour votre aide précieuse...
avatarBen voila quoi...