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.9.2.1 Bindings für wind_calc TOS
C: int16_t wind_calc ( int16_t wi_ctype, int16_t wi_ckind,
int16_t wi_cinx, int16_t wi_ciny, int16_t wi_cinw,
int16_t wi_cinh, int16_t *coutx, int16_t *couty, int16_t
*coutw, int16_t *couth );
Umsetzung:
int16_t wind_calc (int16_t wi_ctype, int16_t wi_ckind,
int16_t wi_cinx, int16_t wi_ciny,
int16_t wi_cinw, int16_t wi_cinh,
int16_t *coutx, int16_t *couty,
int16_t *coutw, int16_t *couth)
{
int_in[0] = wi_ctype;
int_in[1] = wi_ckind;
int_in[2] = wi_cinx;
int_in[3] = wi_ciny;
int_in[4] = wi_cinw;
int_in[5] = wi_cinh;
crys_if (108);
*coutx = int_out[1];
*couty = int_out[2];
*coutw = int_out[3];
*couth = int_out[4];
return ( int_out[0] );
}
GEM-Arrays:
Adresse Feldelement Belegung
control control[0] 108 # Opcode der Funktion
control+2 control[1] 6 # Einträge in int_in
control+4 control[2] 5 # Einträge in int_out
control+6 control[3] 0 # Einträge in addr_in
control+8 control[4] 0 # Einträge in addr_out
int_in int_in[0] wi_ctype
int_in+2 int_in[1] wi_ckind
int_in+4 int_in[2] wi_cinx
int_in+6 int_in[3] wi_ciny
int_in+8 int_in[4] wi_cinw
int_in+10 int_in[5] wi_cinh
int_out int_out[0] Return-Wert
int_out+2 int_out[1] coutx
int_out+4 int_out[2] couty
int_out+6 int_out[3] coutw
int_out+8 int_out[4] couth