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.10.36 Bindings für v_resize_bm TOS
C: int16_t v_resize_bm( int16_t handle, int16_t width,
int16_t height, int32_t byte_width, uint16_t *addr );
Umsetzung:
int16_t v_resize_bm( int16_t handle, int16_t width,
int16_t height, int32_t byte_width,
uint16_t *addr )
{
intin[0] = width;
intin[1] = height;
intin[2..3] = byte_width;
intin[4..5] = addr;
contrl[0] = 100;
contrl[1] = 0;
contrl[3] = 6;
contrl[5] = 2;
contrl[6] = handle;
vdi ();
return ( intout[0] );
}
GEM-Arrays:
Adresse Feldelement Belegung
contrl contrl[0] 100 # Opcode der Funktion
contrl+2 contrl[1] 0 # Einträge in ptsin
contrl+4 contrl[2] 0 # Einträge in ptsout
contrl+6 contrl[3] 6 # Einträge in intin
contrl+8 contrl[4] 1 # Einträge in intout
contrl+10 contrl[5] 2 # Unterfunktion
contrl+12 contrl[6] handle
intin intin[0] width
intin+2 intin[1] height
intin+4 intin[2..3] byte_width
intin+8 intin[4..5] addr
intout intout[0] Return-Wert