Topic : TOS - das Betriebssystem
Author :
Version : tos.hyp (5. März 2013)
Subject : Programmieren/Atari
Nodes : 3001
Index Size : 93602
HCP-Version : 5
Compiled on : Atari
@charset : atarist
@lang :
@default : Titel
@help :
@options : +g -i -s +x +zz -t4
@width : 70
View Ref-File7.6.26 Bindings für vqt_advance TOS
C: void vqt_advance ( int16_t handle, int16_t ch, int16_t
*x_advance, int16_t *y_advance, int16_t *remx, int16_t
*remy );
Umsetzung:
void vqt_advance ( int16_t handle, int16_t ch,
int16_t *x_advance, int16_t *y_advance,
int16_t *remx, int16_t *remy );
{
intin[0] = ch;
contrl[0] = 247;
contrl[1] = 0;
contrl[3] = 1;
contrl[6] = handle;
vdi ();
x_advance = ptsout[0];
y_advance = ptsout[1];
remx = ptsout[2];
remy = ptsout[3];
}
GEM-Arrays:
Adresse Feldelement Belegung
contrl contrl[0] 247 # Opcode der Funktion
contrl+2 contrl[1] 0 # Einträge in ptsin
contrl+4 contrl[2] 4 # Einträge in ptsout
contrl+6 contrl[3] 1 # Einträge in intin
contrl+8 contrl[4] 0 # Einträge in intout
contrl+12 contrl[6] handle
intin intin[0] ch
ptsout ptsout[0] x_advance
ptsout+2 ptsout[1] y_advance
ptsout+4 ptsout[2] remx
ptsout+6 ptsout[3] remy
Es handelt sich bei x_advance und y_advance nur um den
Abstand, der für die Positionierung des nächsten Zeichens
benutzt wird, d.h. x_advance beinhaltet keine
Zeichenüberhänge.