Anuncios Google

Curso aplicado de GRRLIB - 2º Entrega

Tutoriales Avanzados Homebrewes

Si rezaron toda la semana para que la segunda entrega de estos magníficos tutoriales saliera pronto, pues han sido escuchados, ya que tienen enfrente a sus ojos la "Segunda" entrega de los tutoriales aplicados de GRRLIB, disponibles solo en Wii.SceneBeta.com a disfrutar entonces de esta segunda entrega de puro conocimientos.

Empezando a programar

Hola a todos de nuevo. Después de la tediosa instalación de la entrega anterior, en esta entrega, vamos a hacer nuestro primer programa. Éste será un sencillo programa que nos enseñará a aplicar la estructura más simple de un programa basado en GRRLIB.

Pero no nos podemos poner a programar directamente, empezaremos explicando algunas ideas sobre C, aunque como dije en el capitulo anterior mi intención no es hacer un curso de C. Si no sabemos absolutamente nada sobre C, os recomiendo que primero sigáis alguno de los muchos cursos que circulan por Internet, como por ejemplo estos.

También necesitamos explicar algunos conceptos básicos de GRRLIB y las funciones fundamentales que utilizaremos en el programa.

Un poco sobre C

El lenguaje C es uno de los más rápidos y potentes de hoy en día, está presente en todas partes y en contra de la opinión de algunos, está más vigente que nunca. Sin ir más lejos cosas como el Linux están programadas en C.

El lenguaje C, pese a que se aproxima, no es un lenguaje totalmente estructurado como lo es Pascal, pero a cambio le da al programador toda la libertad que necesita.

C es un lenguaje compilado, esto implica ventajas e inconvenientes respecto de los lenguajes interpretados.

Como un pequeño inconveniente podemos citar algo más de dificultad a la hora de depurar el programa, ya que está separada la ejecución de la compilación.

Una gran ventaja es la rapidez de ejecución. Mientras un interprete tiene que traducir el programa y ejecutarlo todo al mismo tiempo y en la misma máquina, un compilador tiene todo el tiempo del mundo para traducir y optimizar un programa mientras compila, ejecutándose después en la misma o en otra máquina totalmente optimizado y a la máxima velocidad.

Una cosa que debéis saber y que os puede traer problemas hasta que os acostumbréis, es que el C es sensible a mayúsculas, es decir que no es lo mismo poner printf que Printf.

En C todo se basa en funciones, de hecho hasta el propio programa principal es una función que devuelve un valor al sistema operativo desde el que es llamado.

La llamada a una función en C se realiza de la siguiente forma:

Nombre_funcion(parametro1, parametro2,.....);

Es decir empezamos con el nombre de la función, seguida de los parámetros entre paréntesisseparados por coma.

Como en casi todos los lenguajes, combinando operadoresvariablesconstantes y funciones podemos escribir expresiones. En C todas las expresiones terminan en ";". Un ejemplo de expresión es el siguiente:

total = a+sumatorio(b);

En el ejemplo, asignamos a la variable total el valor de a + el resultado que devuelve la función sumatorio pasandole como parámetro b.

En C podemos agrupar expresiones para indicar que pertenecen a un bloque determinado encerrándolas entre llaves.

{
	funcion(1, 1, 3);
	funcion2();
	funcion3(3,4 5);
}

Esto último es muy importante, ya que nos servirá, por ejemplo,  para la definición del cuerpo de las funciones o un bloque de funciones que debe o no debe ejecutarse. 

Estructura de un programa en C

Un programa en C lo más simple posible sería como sigue:

#include <stdio.h>
 
int main() {
    printf("Hola mundo\n");
    return 0;
}

Al principio incluiremos todas las bibliotecas de utilidades que vayamos a utilizar. En el ejemplo anterior incluimos sólo que es la biblioteca estándar stdio, que implementa las funciones de entrada/salida por consola (teclado/pantalla).

El formato a seguir es:

#include <nombre de biblioteca.h> 

ó

#include "nombre de biblioteca.h"

dependiendo de donde queremos que busque la biblioteca el compilador.

Seguidamente vendrá el cuerpo de nuestro programa que tendrá tantas definiciones de funciones como sea necesario, pero como mínimo deberá tener la definición de la función "main" que es el cuerpo principal del programa, osea la función que se llama desde el sistema operativo al comenzar la ejecución.

A la hora de definir una función, seguiremos la misma estructura que podemos ver en el siguiente ejemplo:

int suma(int a, int b) {
    return a+b;
}

Es decir:

  1. lo primero que tenemos que definir es el tipo de datos que devuelve la función (tipoint o entero en el ejemplo).
  2. Después el nombre de la función ("suma" en nuestro ejemplo)
  3. Entre paréntesis declaramos todos los parámetros con sus correspondientes tipos de datos. (En nuestro ejemplo tenemos dos parámetros de tipo entero que se llaman a y b)
  4. Definimos un bloque de expresiones entre llaves que será el código que se ejecute cuando llamemos a dicha función. Dentro de dicho bloque deberemos utilizar la sentencia "return valor" que nos permite devolver el valor de la función. En nuestro ejemplo devolvemos el valor de la suma de a + b.
En Wii no es tan sencillo como en el ejemplo sacar un texto por pantalla, pero GRRLIB nos puede ayudar mucho a simplificar el proceso.

Estructura básica de un programa usando GRRLIB

Todo programa en C para Wii hecho con GRRLIB, tiene la estructura conceptual siguiente:

Repetir hasta que pulsemos la tecla home
 
	Leer mandos
 
	Acción 1
	Acción 2
	Acción 3
	......	
	......	
	......	
	......	
	Acción n
 
	Refrescar pantalla

Este "pseudocódigo" indica que para cualquier programa necesitaremos un bucle que se repetirá hasta que pulsemos la tecla home que por convenio en Wii se utiliza para salir del programa.

Dentro de dicho bucle realizaremos todas las acciones que queramos que realice y finalmente refrescaremos la pantalla para que se visualicen los mensajes.

Este código traducido a un programa en C quedaría algo parecido a esto:

#include <grrlib.h>
#include <stdlib.h>
#include <wiiuse/wpad.h>
 
int main(int argc, char **argv) {
    // Inicializar gráficos
    GRRLIB_Init();
 
    // Inicializar wiimotes
    WPAD_Init();
 
    // Bucle sin fin
    while(1) {
 
        WPAD_ScanPads();  // Leer mandos
 
        // Si pulsamos home salimos del bucle
        if (WPAD_ButtonsDown(0) & WPAD_BUTTON_HOME)  break;
 
        // ---------------------------------------------------------------------
        // Acciones
        // ---------------------------------------------------------------------
 
        GRRLIB_Render();  // Refrescamos la pantalla
    }
 
    GRRLIB_Exit(); // Liberamos memoria
 
    exit(0);  // Usar exit para salir del program (no usar return desde el main)
}

Empezaremos explicando cada una de las estructuras utilizadas en este simple programa.

Uso de las bibliotecas

  • #include <grrlib.h> - Esta es la línea que nos permitirá usar todas las funciones de grrlib
  • #include <stdlib.h> - Esta es la libreria de las funciones estándar de C, simplemente debéis incluirla.
  • #include <wiiuse/wpad.h> - Cualquier programa de Wii necesitará interactuar con los wiimotes, por lo que deberéis incluir esta biblioteca en todos vuestros programas.

El cuerpo de la función main:

La primera función que debemos llamar con cualquier programa que use GRRLIB es GRRLIB_Init(), dicha función inicializa la biblioteca.

Seguidamente inicializaremos la biblioteca WPAD. Como hemos dicho antes WPAD es la biblioteca que gestiona la comunicación con los wiimotes.

Para inicializar WPAD llamaremos a la función WPAD_Init();

Siguiendo el programa nos encontramos con la estructura while.

While es una estructura de C que nos permite ejecutar repetidamente una serie de instrucciones.

La sintaxis de While es:

	while(condicion) {
		expresión1;
		expresión2;
		expresión3;
		.....
		expresiónN;
	}
 
 

While repetirá las expresiones encerradas entre llaves siempre y cuando la condición entre paréntesis sea cierta.

En nuestro caso entre paréntesis hemos puesto un 1, que en C es equivalente a una condición siempre cierta, por lo que repetiremos el bucle para siempre.

Ya dentro del bucle la primera instrucción que nos encontramos es WPAD_ScanPads(). Dicha instrucción es una llamada a la función de WPAD que nos permite leer el estado de los mandos.

Como esta llamada está situada dentro del bucle While, el programa leerá el estado de los wiimotes a cada vuelta de bucle.

La siguiente linea que nos encontramos tiene como misión permitirnos salir del programa pulsando home en el wiimote 0. Para ello haremos uso de la función if:

       if (WPAD_ButtonsDown(0) & WPAD_BUTTON_HOME)  break;

La función if es una función básica de C estándar que nos permite ejecutar una o más expresiones en caso de que una condición sea cierta.

La sintaxis de if es la siguiente:

if (condicion) Bloque_de_expresiones1
else Bloque_de_expresiones2

Si  se cumple la condición se ejecuta el Bloque_de_expresiones1 y si no se cumple se ejecuta el Bloque_de_expresiones2.

Cuando hablamos de bloques de expresiones siempre podemos utilizar bien una expresión simple, o bien un bloque de expresiones encerrado entre llaves.

La parte else es opcional.

En nuestro caso concreto la condición que estamos evaluando es "WPAD_ButtonsDown(0) & WPAD_BUTTON_HOME":

- La función WPAD_ButtonsDown(0) devuelve el estado de los botones del wiimote 0.

La sintaxis es: WPAD_ButtonsDown(número de wiimote).

- La constante WPAD_BUTTON_HOME es el valor que devuelve WPAD_ButtonsDown(0) cuando pulsamos el botón Home.

- El operador & hace un "Y" bit a bit entre ambos valores.

El resultado será cierto (es decir distinto de 0) sí y sólo sí hemos pulsado Home en el wiimote 0.

Si es cierta la condición ejecutamos la función break que en C sale incondicionalmente del bucle que lo contiene. En nuestro caso saldrá del bucle while.

En todo programa que use GRRLIB necesita que realicemos una llamada a la función GRRLIB_Render(), que entre otras actualiza el buffer de video. Si no llamaramos a esta función no se visualizaría nada.

Ya saliendo del bucle llamamos a la función GRRLIB_Exit(); que libera la memoria utilizada por GRRLIB y por último llamamos a la función exit(0); que en C sale del programa devolviendo el valor 0 al sistema operativo.

Preparando el programa y compilando

Después de haber visto paso por paso el fuente de nuestro primer programa vamos a ver que es lo que necesitamos para poder compilar nuestro programa.

Por una cuestión de orden lo primero que debemos hacer cuando comenzamos un nuevo programa es crear una carpeta en nuestro disco duro en la que guardaremos todo lo relacionado con este.

Es conveniente que en esta carpeta tengamos únicamente los archivos de dicho programa, ya que sino al final no sabremos qué pertenece a qué.

Dentro de dicha carpeta deberemos copiar el archivo "makefile", que viene en el archivo zip que se adjunta, y que podremos utilizar, con ligeras variaciones, para los distintos ejemplos del curso.

Crearemos también una subcarpeta llamada source en donde pondremos el archivo con el fuente de nuestro programa. Dicho archivo fuente tendrá extensión ".c".

Para editar nuestro archivo fuente, utilizaremos la utilidad "Programmers Notepad" o "PN" que se instala junto al devkitpro en la carpeta "c:\devkitpro\Programmers Notepad".

El Programmers Notepad basa su uso en proyectos. Cada proyecto contiene toda la información necesaria para compilar nuestro programa.

Cargaremos el programa desde el menú de Inicio/Todos los programa/devkitpro/Programmers Notepad.

Una vez en el programa deberemos crear nuestro primer proyecto. Para ello seleccionaremos "File/New/Project"

Clic en la imagen para ver en grande.

Nos aparecerá una ventana como la que sigue:

Clic en la imagen para ver en grande.

En dicha ventana escribiremos el nombre de nuestro proyecto en el campo Name y seleccionaremos la carpeta que previamente habíamos creado pulsando el botón de los puntos suspensivos al lado del campo folder.

Clic en la imagen para ver en grande.

Una vez seleccionada la carpeta pulsaremos Aceptar y tendremos creado nuestro proyecto vacío.

Ahora debemos añadirle la carpeta source que previamente habíamos creado. Para ello pulsaremos el botón derecho del ratón sobre el nombre de nuestro proyecto y seleccionaremos la opción "Add Magic Folder...."

Clic en la imagen para ver en grande.

buscaremos la carpeta source en nuestro disco duro y pulsaremos siguiente:

Clic en la imagen para ver en grande.

Por último pulsaremos Finalizar.

Clic en la imagen para ver en grande.

Ya dentro de nuestra carpeta crearemos el archivo del programa que en nuestro caso llamaremos "Holamundo.c". Para ello seleccionaremos en el menú "File/New/C /C++" y nos aparecerá una ventana con un archivo en blanco.

Clic en la imagen para ver en grande.

Clic en la imagen para ver en grande.

En este archivo pegaremos el texto de nuestro programa y lo grabaremos dentro de la carpeta source seleccionando "File/Save As.." y buscando dicha carpeta en nuestro disco duro y finalmente dándole al archivo el nombre "holamundo.c" y pulsando "Guardar".

Clic en la imagen para ver en grande.

Llegados a este punto ya tenemos todo lo necesario para compilar nuestro primer programa.

Para ello seleccionaremos la opción "make" en el menú "Tools" o bien pulsaremos "Alt+1".

Clic en la imagen para ver en grande.

Si todo va como está previsto nos aparecerá en la ventana "Output" el texto "Process Exit Code: 0".

Adicionalmente el compilador nos habrá creado una subcarpeta build y los archivos "holamundo.dol" y "holamundo.elf". El archivo que nos interesa es el archivo "holamundo.dol" que es el archivo que podremos ejecutar desde nuestra Wii. 

Ejecutando el programa en nuestra Wii

Tenemos tres maneras de ejecutar nuestro programa recién compilado:

       1. Copiandolo manualmente a la tarjeta SD y buscándolo con el wiiexplorer.

Este método es muy sencillo, pero requiere tener instalado el WiiExplorer y además tiene la incomodidad de tener que andar copiando los archivos manualmente a la SD.

Consiste en copiar el archivo .dol recién creado a cualquier carpeta de la SD y luego buscarlo con el WiiExplorer para ejecutarlo desde este.

       2. Copiandolo manualmente a la tarjeta SD y ejecutándolo desde el HBC.

Éste método es también manual, pero tiene la ventaja de que nos permitirá incluir nuestra aplicación en el menú del HBC. Para ello debemos crear una nueva carpeta dentro de la carpeta "apps" de nuestra SD. Dentro de esa carpeta copiaremos nuestro archivo .dol y le cambiaremos el nombre llamándolo "boot.dol".

Adicionalmente necesitaremos otros dos archivos que son:

  • icon.png: debe ser una imagen png de 128x48 píxeles y que es el icono que aparecerá en el menú.
  • meta.xlm: es un archivo en formato xlm en el que deberemos escribir todos los datos del programa, incluyendo nombre, descripción, número de versión, etc....Este archivo lo podemos editar con un editor de texto convencional.

Para facilitar la tarea ahora mismo, he incluido estos dos archivos en el pack que hay adjunto a esta publicación.

Si observamos ahora el menú del HBC veremos que ha aparecido una nueva entrada con nuestro programa. Simplemente seleccionando dicha entrada se ejecutará nuestra aplicación.

Este es el método que utilizaremos cuando ya tengamos preparada nuestra aplicación lista para distribuir.

       3. Enviandolo a traves de red con Wiiload.

Es sin duda el método más cómodo y el que os aconsejo para depurar un programa. Con este método no necesitaremos estar sacando y metiendo la tarjeta SD continuamente en nuestra Wii.

Sólo necesitamos dos cosas para poder utilizarlo: 1. Tener la conexión de red de nuestra Wii configurada y 2. Asignar la variable de entorno WIILOAD con la dirección IP de nuestra Wii.

Vamos a suponer que tenéis configurada la conexión de red de vuestra Wii y os voy a explicar el segundo paso.

Para asignar correctamente la variable WIILOAD en Windows 7 pulsaremos el botón derecho de nuestro sobre el icono de "Mi PC" y seleccionaremos la opción "Propiedades" y dentro de esta "Configuración avanzada del sistema".

Clic en la imagen para ver en grande. 

En la ventana que nos aparecerá seleccionaremos Variables de entorno.

Clic en la imagen para ver en grande.

Y en dicha ventana pulsaremos el botón "Nueva" para añadir la variable de entorno WIILOAD, que deberá contener exactamente el texto "tcp:" (sin las comillas) seguido de la dirección IP de nuestra Wii.

Clic en la imagen para ver en grande.

Tras tener esta variable de entorno configurada, podemos usar la opción "Ejecutar" del menú "Tools" del Programmers Notepad, que vía red enviará y ejecutará nuestro programa recién compilado. También podemos utilizar la combinación de teclas Alt+R.

Y hasta aquí esta segunda entrega. En la próxima entrega aprenderemos a mostrar texto por pantalla y escribiremos nuestro primer "Hola mundo". Así que no desesperéis y esperad a la próxima entrega.

4.65625
Tu voto: Ninguno Votos totales: 4.7 (32 votos)

Anuncios Google

Comentarios

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.

Me sale error

Me sale esto y no se que hacer

 

> "make" 

linking ... holamundo.elf

c:/devkitpro/devkitppc/bin/../lib/gcc/powerpc-eabi/4.6.3/../../../../powerpc-eabi/bin/ld.exe: cannot find -lmultiusos

c:/devkitpro/devkitppc/bin/../lib/gcc/powerpc-eabi/4.6.3/../../../../powerpc-eabi/bin/ld.exe: cannot find -lvorbisidec

collect2: ld returned 1 exit status

make[1]: *** [/c/holamundo/holamundo.elf] Error 1

"make": *** [build] Error 2

 

> Process Exit Code: 2

> Time Taken: 00:01

Imagen de b_shield

no logro compilar

al darle Alt+1 me sale en el Outpost

make

 

process exit code: 0

time taken: 00:00 pero no sale el archivo .dol

ya intente con las carpetas del .rar de la noticia y sale lo mismo

 


Imagen de wilco2009

Lo que te sale es como si no

Lo que te sale es como si no tuvieras ningún fuente cargado.

Como le dije a hackraptor, tienes que tener el fuente descomprimido en una carpeta de tu disco duro y hacer doble click sobre el archivo " template.pnproj" lo que te abrirá el Programer's Notepad y debería compilarte correctamente al pulsar Alt+1.


Curso aplicado de GRRLIB - Parte 1 - Parte 2 - Parte 3 - Parte 4 - Parte 5 - Parte 6 - Parte 7 - Parte 8 - Parte 9 - Parte 10 - Parte 11

Profundizando en los mandos de la Wii - Parte 1 - Parte 2 - Parte 3  - Parte 4 (Balanceboard) - Parte 5 (Miis) 

Homebrew - WiiTriis -  LifemiiWii

Archivo .dol

me pone en output:

> "make"

 

> Process Exit Code: 0

>Time Taken: 00:01

 

alguien puede ayudarme por favor

 

 

archivo .dol

y no me sale el archivo .dol ni el archivo .elf

Imagen de wilco2009

Vamos a ver. Si descomprimes

Vamos a ver. Si descomprimes las carpetas del ejemplo sobre el raiz de C: tendrás una carpeta template y dentro de esta, dos carpetas (build y source) y tres archivos template.pnproj, template.pnps y makefile.

Si haces doble click sobre el archivo template.pnproj te abrirá el "Programmer Notepad". Entonces pulsa Alt+1 y te compilará. El resultado de la ventana output debería de ser algo así:

> "make" 
template.c
linking ... template.elf
output ... template.dol
 
> Process Exit Code: 0
> Time Taken: 00:06

Lo único que igual solo ves la última parte porque no cabe todo, pero puedes desplazarte con las barras de scroll.

El resultado debería ser que sí abres el explorador de archivos y miras en la carpeta c:\template tendrás dos archivos más: template.dol y template.elf.

 


Curso aplicado de GRRLIB - Parte 1 - Parte 2 - Parte 3 - Parte 4 - Parte 5 - Parte 6 - Parte 7 - Parte 8 - Parte 9 - Parte 10 - Parte 11

Profundizando en los mandos de la Wii - Parte 1 - Parte 2 - Parte 3  - Parte 4 (Balanceboard) - Parte 5 (Miis) 

Homebrew - WiiTriis -  LifemiiWii

Te refieres a la carpeta

Te refieres a la carpeta C:\devkitPro\examples\wii\template ?

Imagen de wilco2009

Me refiero a la carpeta

Me refiero a la carpeta template que está incluida dentro del archivo Template1.rar que hay adjunto a esta noticia.

Arreglado

gracias wilco ya esta arregaldo, no me habia dado cuenta que había un archivo

Imagen de wilco2009

¿Podrías especificar cual es

¿Podrías especificar cual es tu problema?. El mensaje que citas lo da el compilador cuando todo ha ido bien.

El archivo .dol lo debes tener en la carpeta del proyecto, la misma en donde está el makefile.


Curso aplicado de GRRLIB - Parte 1 - Parte 2 - Parte 3 - Parte 4 - Parte 5 - Parte 6 - Parte 7 - Parte 8 - Parte 9 - Parte 10 - Parte 11

Profundizando en los mandos de la Wii - Parte 1 - Parte 2 - Parte 3  - Parte 4 (Balanceboard) - Parte 5 (Miis) 

Homebrew - WiiTriis -  LifemiiWii

Imagen de anxoganso

Me dice lo sigiente al hacer

Me dice lo sigiente al hacer un make:

> "make"
make[1]: /c/documents: No such file or directory
make[1]: *** No rule to make target `/c/documents'.  Stop.
"make": *** [build] Error 2

> Process Exit Code: 2
> Time Taken: 00:01

 

Con tu archivo tal y como lo distes que hago mal ¿?


Imagen de wilco2009

Copialo a una carpeta que

Copialo a una carpeta que cuelgue directamente del raiz de c, cuyo nombre no tenga espacios.

Imagen de anxoganso

Gracias :D

Gracias :D

no consigo compilar...

Hola! genial este tutorial, estoy muy interesado en aprender

te comento el primer problema... no soy capaz de compilar nada, he bajado el template1.rar que incluyes aqui y al compilarlo (sin modificar ni cambiar ningun archivo) me dice esto:

> "make" 

template.c

linking ... template.elf

c:/devkitpro/devkitppc/bin/../lib/gcc/powerpc-eabi/4.6.1/../../../../powerpc-eabi/bin/ld.exe: cannot find -lfreetype

collect2: ld returned 1 exit status

make[1]: *** [/c/template/template.elf] Error 1

"make": *** [build] Error 2

 

> Process Exit Code: 2

 

> Time Taken: 00:01

veo que tanto en la carpeta del GRR como en la DEVKITPRO hay un monton de MAKEFILEs, he probado tambien a compilarlo cambiando el MAKEFILE, consiguiendo errores diferentes :D

estas son las rutas a todas las carpetas segun yo lo tengo:
c:\devkitpro\

c:\grr\trunk\grrlib\grrlib

c:\template\  <-- este es el proyecto que no compila

que me aconsejas?

GRACIAS! 

EDITO: los ejemplos del devkitpro si que los compila, en cambio los ejemplos de grrlib no. debe ser un error en la instalacion del grrlib? 

Imagen de wilco2009

Exactamente. Es muy probable

Exactamente.

Es muy probable que te haya dado un error al compilar GRRLIB.

Vuelve a repetir el paso de la instalación de GRRLIB y fíjate si termina correctamente o da un error.


Curso aplicado de GRRLIB - Parte 1 - Parte 2 - Parte 3 - Parte 4 - Parte 5 - Parte 6 - Parte 7 - Parte 8 - Parte 9 - Parte 10 - Parte 11

Profundizando en los mandos de la Wii - Parte 1 - Parte 2 - Parte 3  - Parte 4 (Balanceboard) - Parte 5 (Miis) 

Homebrew - WiiTriis -  LifemiiWii

pues si, arreglado... muchas

pues si, arreglado... muchas gracias!

Ayer me pasaba lo mismo

Me daba ese error al compilar, y efectivamente, no tenia bien instalado el grrlib, el problema radica en la confusion de las carpetas para hacer el make clean all install.

Aqui mismo mas abajo ya explicaba wilco como hacerlo (otra vez, jeje), fijarse muy bien en la parte de las carpetas.

Escribo esto porque precisamente yo tambien tuve ese mismo problema y estuve a punto de "tirar la toalla" una vez mas, jejeje, pero si, es tan sencillo como tratar de poner las carpetas exactamente como se indica.

Ademas, aprendi lo de la variable de entorno wiiload y al darle Alt+R desde la compu y ver que se puso la pantalla negra de la tv, me quede con cara de "WOW", jejeje, bueno, eso es nuevo para mi, jejeje, algunos me podran decir: "nahh, no hace nada", y yo al contrario digo: "wow, lo hace todo!", jejeje.

Gracias por estos tutos, me agradan, me agradan.

Imagen de wilco2009

Muchas gracias a vosotros. A

Muchas gracias a vosotros. A mí me encanta ver que sirven para que la gente disfrute programando.

Sería estupendo tener una buena comunidad de programadores por aquí.

Y gracias por el aporte de tu experiencia.

 


Curso aplicado de GRRLIB - Parte 1 - Parte 2 - Parte 3 - Parte 4 - Parte 5 - Parte 6 - Parte 7 - Parte 8 - Parte 9 - Parte 10 - Parte 11

Profundizando en los mandos de la Wii - Parte 1 - Parte 2 - Parte 3  - Parte 4 (Balanceboard) - Parte 5 (Miis) 

Homebrew - WiiTriis -  LifemiiWii

Imagen de naxoleal98

disculpen mi torpeza

pero no se como instalar GRRLIB al descomprimirlo me paracen muchas carpetas me podrian decir por favor que carpetas son y como lo instalo.ñ

gracias

Imagen de wilco2009

Tal y como se dice en la

Tal y como se dice en la primera entrega tienes que descomprimir tal cual el archivo comprimido en una carpeta.

Dentro de esa carpeta te creará una carpeta llamada GRRLIB y dentro de esa habrán tres carpetas, una carpeta doc, una carpeta examples y otra que se llamará de nuevo GRRLIB que es en la que tienes que situarte (como referencia fijate que dentro hay otra carpeta GRRLIB, una carpeta lib y un archivo makefile).

Abre entonces una ventana de DOS y (si lo has descomprimido todo en c:\grr\trunk) tienes que teclear:

C:

cd \grr\trunk\grrlib\grrlib

si haces un dir tienen que aparecerte dos carpetas (GRRLIB y lib) y un archivo makefile

Si es así teclea lo siguiente y espera a que acabe de compilar:

make clean all install 

 


Curso aplicado de GRRLIB - Parte 1 - Parte 2 - Parte 3 - Parte 4 - Parte 5 - Parte 6 - Parte 7 - Parte 8 - Parte 9 - Parte 10 - Parte 11

Profundizando en los mandos de la Wii - Parte 1 - Parte 2 - Parte 3  - Parte 4 (Balanceboard) - Parte 5 (Miis) 

Homebrew - WiiTriis -  LifemiiWii

Imagen de naxoleal98

gracias

eres todo un genio, muchas gracias...

(espero con ansias los demas tutos)

pd: en cuanto saldran los demas tutoriales.

Imagen de wilco2009

Está hecho hasta la 5ª

Está hecho hasta la 5ª entrega y estoy redactando la 6ª, por lo que hasta la 6ª depende de los editores, pero suelen salir a un ritmo de 3 ó 4 días.

A partir de ahí tardará un poco más entre cada entrega porque es un trabajo laborioso y esto lo hago en mis ratos libres. Primero hay que preparar los programas de ejemplo y luego redactar el texto.....

 


Curso aplicado de GRRLIB - Parte 1 - Parte 2 - Parte 3 - Parte 4 - Parte 5 - Parte 6 - Parte 7 - Parte 8 - Parte 9 - Parte 10 - Parte 11

Profundizando en los mandos de la Wii - Parte 1 - Parte 2 - Parte 3  - Parte 4 (Balanceboard) - Parte 5 (Miis) 

Homebrew - WiiTriis -  LifemiiWii

Problema

Todo excelnte, todo bien, super claro de entender, pero no hay caso de poder hacer el make, me sale el siguiente mensaje:

 

make[1]: /c/hola: No such file or directory

make[1]: *** No rule to make target `/c/hola'.  Stop.

"make": *** [build] Error 2

 

> Process Exit Code: 2

> Time Taken: 00:03

 

Que puede ser???? ya lo he hecho como 6 veces desde cero.

Imagen de wilco2009

make no está encontrando el

make no está encontrando el archivo "hola".

Esto puede ser porque le hayas dado un nombre de archivo con espacios intermedios, ya que make no soporta este tipo de archivos.

Si es ese tu caso renombra el archivo por uno sin espacios (ejemplo "hola mundo.c" por "holamundo.c").

Comprueba tambien que el makefile es el correcto y está en la carpeta del proyecto.


Curso aplicado de GRRLIB - Parte 1 - Parte 2 - Parte 3 - Parte 4 - Parte 5 - Parte 6 - Parte 7 - Parte 8 - Parte 9 - Parte 10 - Parte 11

Profundizando en los mandos de la Wii - Parte 1 - Parte 2 - Parte 3  - Parte 4 (Balanceboard) - Parte 5 (Miis) 

Homebrew - WiiTriis -  LifemiiWii

Solucionado

Era la carpeta del proyecto, la que llevaba un espacio y no me dejaba compilar, excelente tutorial, voy como avion... esperando muy atento a la nueva entrega.

Gracias

Excelente trabajo, estoy ansioso por la siguiente entrega.

Felicidades

Imagen de wilco2009

Gracias Albaxx. En unos días

Gracias Albaxx. En unos días saldrá la próxima entrega.

Imagen de eyedoll

=/

me dolio la caveza soy un estupido no entendi nada XD

Imagen de wilco2009

No te preocupes si cuesta un

No te preocupes si cuesta un poco al principio. Si realmente tienes interés por aprender relee el tutorial y pregunta lo que no entiendas.

De todas formas entiende que no es fácil entender los cursos si no tienes alguna noción de programación.

Sobre C hay tutoriales específicos de muchísimas páginas, por lo que no sería realista intentar incluir un curso sobre C dentro de lo que ya de por sí es complejo.

Mi postura ha sido incluir algunas explicaciones para introducir a quien no conoce C pero tiene algunas nociones en otros lenguajes y favorecer que vaya aprendiendo poco a poco con la ayuda otros tutoriales. 

saludos y ánimo.


Curso aplicado de GRRLIB - Parte 1 - Parte 2 - Parte 3 - Parte 4 - Parte 5 - Parte 6 - Parte 7 - Parte 8 - Parte 9 - Parte 10 - Parte 11

Profundizando en los mandos de la Wii - Parte 1 - Parte 2 - Parte 3  - Parte 4 (Balanceboard) - Parte 5 (Miis) 

Homebrew - WiiTriis -  LifemiiWii

Imagen de gabrielgbs97

Me cuesta un poco entenderlo

Me cuesta un poco entenderlo perovoy cogiendo el "truco"

Imagen de wilco2009

Es importante que entendáis

Es importante que entendáis los conceptos para poder seguir las siguientes entregas.

Si vuestro problema es con el C, preguntadme todo lo que no entendáis o seguid el curso que os sugiero.

Repito que si tenéis cualquier duda, por favor preguntad.

La quinta entrega va a ser un poco más durilla, por lo que practicad bien la tercera y la cuarta.

Estoy aquí para lo que necesitéis.


Curso aplicado de GRRLIB - Parte 1 - Parte 2 - Parte 3 - Parte 4 - Parte 5 - Parte 6 - Parte 7 - Parte 8 - Parte 9 - Parte 10 - Parte 11

Profundizando en los mandos de la Wii - Parte 1 - Parte 2 - Parte 3  - Parte 4 (Balanceboard) - Parte 5 (Miis) 

Homebrew - WiiTriis -  LifemiiWii

GRRLIB

Solo escribo para dar animos al auto del curso y que llegue hasta el final, ya que yo lo estoy siguiendo, y estoy aprendiendolo a la vez que aprendo lenguaje c++ y el curso Hermes de lenguaje c.

 

Estoy aprendiendo los tres y debo decir que los tres a su modo son geniales, espero que lo consigas completar y recuerda que mientras escribas por lo menos yo como minimos estare siguiendote y queriando aprender con cada parte del curso que saques.

 

Mis felicitaciones por la forma de explicarlo y ponerse en la situacion de que que es lo mas dificil para el que lo lee, y nada aqui seguire yo con mi slackware 13.37 de linux leyendo y aprendiendo en cada tomo del curso.

 

Un cordial saludo y nuevamente recibe mis felicitaciones.

 

cjv99.Sonrisa

Imagen de wilco2009

Muchas gracias amigo. Se

Muchas gracias amigo. Se agradecen mucho los ánimos y el saber que hay gente que le es útil mi trabajo.

Os animo a todos vosotros a aprender y ya sabéis que podéis preguntarme cualquier duda que tengáis.


Curso aplicado de GRRLIB - Parte 1 - Parte 2 - Parte 3 - Parte 4 - Parte 5 - Parte 6 - Parte 7 - Parte 8 - Parte 9 - Parte 10 - Parte 11

Profundizando en los mandos de la Wii - Parte 1 - Parte 2 - Parte 3  - Parte 4 (Balanceboard) - Parte 5 (Miis) 

Homebrew - WiiTriis -  LifemiiWii

Imagen de Andresmargar

Compila X

Ami no me compila la LIBOGC, cojo el template hago en un bat make y no sale NADA, se uqeda parado(tiene el makefile y el source)

Imagen de wilco2009

Algún mensaje de error debe

Algún mensaje de error debe darte.

¿Cómo estás ejecutando el .bat?

Abre una consola de DOS y ejecútalo desde ahí, o bien añádele una línea con el comando pause para que se quede esperando una tecla antes de cerrar la ventana.

 


Curso aplicado de GRRLIB - Parte 1 - Parte 2 - Parte 3 - Parte 4 - Parte 5 - Parte 6 - Parte 7 - Parte 8 - Parte 9 - Parte 10 - Parte 11

Profundizando en los mandos de la Wii - Parte 1 - Parte 2 - Parte 3  - Parte 4 (Balanceboard) - Parte 5 (Miis) 

Homebrew - WiiTriis -  LifemiiWii

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.