Topic : TOS - The Operating System
Author :
Version : tos.hyp (December 19, 2008)
Subject : Programmieren/Atari
Nodes : 3010
Index Size : 93790
HCP-Version : 5
Compiled on : Atari
@charset : atarist
@lang :
@default : Title
@help :
@options : +g -i -s +x +zz -t4
@width : 70
View Ref-File7.5.30 Bindings for v_ftext_offset TOS
C: void v_ftext_offset ( int16_t handle, int16_t x, int16_t
y, int8_t *string, int16_t *offset );
Binding:
void v_ftext_offset (int16_t handle, int16_t x, int16_t y,
int8_t *string, int16_t *offset)
{
ptsin[0] = x;
ptsin[1] = y;
ptsin[2] = offset[0];
ptsin[3] = offset[1];
ptsin[4..2*n+1] = offset[2..(2*n)-1]
intin[0..n-1] = string[0..n-1];
contrl[0] = 241;
contrl[1] = 1+n;
contrl[3] = n;
contrl[6] = handle;
vdi ();
}
GEM-Arrays:
Address Element Contents
contrl contrl[0] 241 # Function Opcode
contrl+2 contrl[1] 1+n # entry in ptsin
contrl+4 contrl[2] 0 # entry in ptsout
contrl+6 contrl[3] n # entry in intin
contrl+8 contrl[4] 0 # entry in intout
contrl+12 contrl[6] handle
intin intin[0..n-1] string[0..n-1]
ptsin ptsin[0] x
ptsin+2 ptsin[1] y
ptsin+4 ptsin[2] offset[0] # X-offset 1st character
ptsin+6 ptsin[3] offset[1] # Y-offset 1st character
ptsin+8 ptsin[4..2n+1] offset[2..2n-1] # ditto for rest
Note: Here n = strlen(string);