OK, Maunix.
Es que en los programas de ejemplo que veo en este compilador para el Gamecube, estoy viendo puras variables raras y métodos de rellenarlas igual de raros.
Lo de los métodos de rellenarlas podrías postearlos y vemos si los podemos comprender
Lo de las 'variables raras' que mencionaste más arriba en el post, en realidad simplemente es una forma de "cambiar el nombre" de un tipo de variable ya sea para abreviar su sintaxis (
vu8 sería
volatile unsigned char) o también para unificar tipos de variables entre compiladores.
A veces sucede que uno usa varios compiladores para una misma plataforma o bien usa varias plataformas, y quiere que un código se " lo más transportable posible " entre compiladores y entre plataformas. Entonces, una forma es declarar tipos de variable que signifiquen lo mismo sin depender de la plataforma.
Para ser más claro
Por ejemplo, en ccs el tipo int es un tipo de 8 bits. En C18 int es un tipo de 16 bits. Si quisiéramos copiar/pegar un código de C18 en ccs sin tener en cuenta ese pequeño gran detalle, el código es muy muy muy posible que no funcione. Entonces una forma sería hacer un archivo .h de encabezados en CCS y otro en C18. Ambos de mismo nombre pero diferente contenido.
Ese archivo podría tener algo así como
En CCS
typedef BYTE intEn C18
typedef BYTE charLuego en el código "transportable" declararíamos las variables como BYTE y asunto solucionado.