CODINGCLASSEURS WEKA ★ Comment exploiterr toutes les ressources et augmenter les performances de votre AMSTRAD CPC ★

5/06 - Tracé de points et de droites en assembleurCoding Classeurs Weka

5/6 - Tracé de points et de droites en assembleur

L'équivalent des ordres BASIC MOVE, MOVER, PLOT, PLOTR, DRAW et DRAWR existe dans les ROM du FIRMWARE. Reportez-vous à la partie 4 chap. 2.7 pour avoir plus de détails à ce sujet.

Pour utiliser les programmes élémentaires situés dans le FIRMWARE (couramment appelés routines), il suffit de charger les registres demandés en entrée, et d'appeler le programme élémentaire.

Par exemple, pour appeler la routine « MOVE ABSOLUTE » située en #BBC0, il faudra faire :

En assembleur :

LD DE, 100 ;Abscisse X = 100
LD HL, 120 ;Ordonnee Y =  120
CALL #BBC0 ;Appel de MOVE ABSOLUTE

En BASIC :

1000 FOR I = 0 TO 9
1010 READ A:POKE &9000 + I,A
1020 NEXT I
1030 DATA &11, 100, 0, &21, 120, 0, &CD, &C0, &BB, &C9
1040 CALL &9000

ou encore PLOT 100, 120

Les routines équivalentes aux PLOT, MOVE et DRAW BASIC sont les suivantes :

MOVE absolu :
CALL #BBC0
avec, en entrée, DE qui contient l'abscisse absolue (entre 0 et 639), HL qui contient l'ordonnée absolue (entre 0 et 399).

MOVE relatif :
CALL #BBC3
avec, en entrée, DE qui contient le déplacement signé en abscisse, HL qui contient le déplacement signé en ordonnée.

PLOT absolu :
CALL #BBEA
avec, en entrée, DE qui contient l'abscisse absolue (entre 0 et 639), HL qui contient l'ordonnée absolue (entre 0 et 399).

PLOT relatif :
CALL #BBED
avec, en entrée, DE qui contient le déplacement signé en abscisse, HL qui contient le déplacement signé en ordonnée.

LINE absolu :
CALL #BBF6
avec, en entrée, DE qui contient l'abscisse absolue du point final, HL qui contient l'ordonnée absolue du point final.

LINE relatif :
CALL #BBF9
avec, en entrée, DE qui contient le déplacement signé en X du point final, HL qui contient le déplacement signé en Y du point final.

 

Page précédente : 5/05 - Test de la couleur d'un point en BASIC (!)

CPCrulez[Content Management System] v8.7-desktop/cache
Page créée en 130 millisecondes et consultée 678 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.