101 cpu_call( _environment,
"lib_rotate_vector" );
void cpu_move_16bit(Environment *_environment, char *_source, char *_destination)
CPU 6309: emit code to move 16 bit
void cpu_call(Environment *_environment, char *_label)
void cpu_return(Environment *_environment)
Variable * variable_add(Environment *_environment, char *_source, char *_destination)
Add two variable and return the sum of them.
Variable * variable_retrieve(Environment *_environment, char *_name)
Variable * variable_retrieve_or_define(Environment *_environment, char *_name, VariableType _type, int _value)
Variable * variable_move(Environment *_environment, char *_source, char *_destination)
Store the value of a variable inside another variable by converting it.
Variable * variable_define(Environment *_environment, char *_name, VariableType _type, int _value)
Define a variable for the program.
Variable * variable_mul(Environment *_environment, char *_source, char *_destination)
Make a multiplication between two variable and return the product of them.
Variable * variable_sub(Environment *_environment, char *_source, char *_dest)
Make a differenze between two variable and return the difference of them.
Variable * variable_cast(Environment *_environment, char *_source, VariableType _type)
Cast a variable from a type to another.
char * address_displacement(Environment *_environment, char *_address, char *_displacement)
Variable * fp_cos(Environment *_environment, char *_angle)
Variable * fp_sin(Environment *_environment, char *_angle)
Variable * rotate_vector(Environment *_environment, char *_v, char *_a)
Emit ASM code to implement CREATE PATH command.
struct _Variable Variable
Structure of a single variable.
struct _Environment Environment
Structure of compilation environment.
Variable * vector_get_x(Environment *_environment, char *_vector)
Variable * vector_get_y(Environment *_environment, char *_vector)