Pues estoy creando un juego (el típico que salen huevos por arriba y una gallina abajo que los tiene que cojer >_<). Os pongo el código (muy básico por ahora) y os aclaro lo que hacen los comandos de PALib de nintendo ds para quien no las conozca.
// Includes
#include <PA9.h> // Include for PA_Lib
#include "gfx/all_gfx.c"
#include "gfx/all_gfx.h" //los gráficos
u8 x = 0;
u8 y = 0;
// Function: main()
int main(int argc, char ** argv)
{
PA_Init(); // Initializes PA_Lib
PA_InitVBL(); // Initializes a standard VBL
PA_CreateSprite(0, 0, (void*)caja_Sprite, OBJ_SIZE_32X32, 1, 0, 0, 0); //sprite de la "gallina"
PA_LoadSpritePal(0, 0, (void*)sprite0_Pal); //para poder cargar sprites
PA_CreateSprite(0, 1, (void*)bola_Sprite, OBJ_SIZE_16X16, 1, 0, -16, 0); //sprite del "huevo"
PA_InitText(1, 0); //para poder poner texto
while (1){
x = PA_RandMax(224); //genera un número aleatorio de máximo 224
break;
}
while (1)
{
if ((y >= 160) && (Stylus.X - 16 <= x + 16) && (Stylus.X >= x -16)) //Stylus.X dice la posición del stylus en la pantalla en el eje X
PA_OutputSimpleText(1, 0, 0, "GANASTE!"); //**aquí quiero que vuelva a realizar todo otra vez**
PA_SetSpriteXY(0, 0, Stylus.X - 16, 160); //pone el sprite en la posicion Stylus.X - 16, 160 (caja para recojer las bolas)
PA_SetSpriteXY(0, 1, x, y); // cambia la posición de la bola que cae
y++;
PA_WaitForVBL();
}
return 0;
} // End of main()
Pues donde están los asteriscos quiero que vuelva hasta arriba de main, para ejecutar otra vez el número automático y que caiga una nueva bola, pero no tengo ni idea de como hacerlo, recomendadme porfavor

(si también pensáis que es mejor hacer lo que llevo de otra forma, pues mejor

).
Gracias!