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-File8.6.24.1 Bindings für edit_set_pos TOS
C: void edit_set_pos ( OBJECT *tree, int16_t obj, int16_t
xscroll, int32_t yscroll, int8_t *cyscroll, int8_t
*cursorpos, int16_t cx, int16_t cy );
Umsetzung:
void edit_set_pos ( OBJECT *tree, int16_t obj,
int16_t xscroll, int32_t yscroll,
int8_t *cyscroll, int8_t *cursorpos,
int16_t cx, int16_t cy )
{
int_in[0] = obj;
int_in[1] = 5; /* Subcode für Funktion */
int_in[2] = xscroll;
int_in[3..4] = yscroll;
int_in[5] = cx;
int_in[6] = cy;
addr_in[0] = tree;
addr_in[1] = cyscroll;
addr_in[2] = cursorpos;
crys_if( 217 );
return;
}
GEM-Arrays:
Adresse Feldelement Belegung
control control[0] 217 # Opcode der Funktion
control+2 control[1] 7 # Einträge in int_in
control+4 control[2] 0 # Einträge in int_out
control+6 control[3] 3 # Einträge in addr_in
control+8 control[4] 0 # Einträge in addr_out
int_in int_in[0] obj
int_in+2 int_in[1] 5 # Sub-Opcode
int_in+4 int_in[2] xscroll
int_in+6 int_in[3..4] yscroll
int_in+10 int_in[5] cx
int_in+12 int_in[6] cy
addr_in addr_in[0] tree
addr_in+4 addr_in[1] cyscroll
addr_in+8 addr_in[2] cursorpos