Anuncios Google

Cursos Básicos de Programación en C para Wii. Parte 2

Tutoriales Avanzados Homebrewes

¡Hola! Llegamos al segundo tutorial de programación en C para Wii, en el cual te ensañare la estructura de un programa, con los conocimientos que adquirirás estarás prácticamente listo para crear tu primer homebrew de wii, te enseñare también las herramientas que se utilizan al hacer un programa de lenguaje C para wii y sobre todo sus funciones reglamentarias/estructura (Que siempre se usaran) así que adelante adentrare a este grandioso tutorial el cual te llevara al mundo de la programación.


Antes de que empieces

Este tutorial es mas largo, tómalo a la ligera y no te partas la cabeza pensando y diciendo que no entiendes todo lo terminaras por entender a su tiempo, y con el siguiente tutorial, recuerda que es importante combinar la practica y la teoría para así adquirir un conocimiento y sobre todo hacerlo por gusto, aunque este tutorial es mas complejo tu tranquilo y no te presiones no tomes enserio lo que digo simplemente intenta aprender.


Lo que lleva un programa de C para Wii

Bien aquí comienzan las clases reales de programación créeme que después de este tutorial sabrás lo básico de C junto como son las bases de todos los programas de wii.

Empezare por comentarte que para crear un programa independientemente de el lenguaje de programación siempre usaras tres cosas básicas las cuales son prácticamente todo tu programa, te aseguro abras oído de ellos, esas tres cosas que crearan tu programa se llaman:

  • main.c

  • Makefile

  • Compilador

Ok, aprende muy bien esos tres nombres (Y aunque no los aprendas ahora los aprenderás si sigues programando en C) son las tres cosas/herramientas básicas que conformaran tu programa, te explicare cada una de ellas para que comprendas su función y veas lo importantes que son.


main.c

El main.c, es mejor conocido como source, o mas bien lo contiene, en el se podría decir que es la parte mas importante, ya que en el se concentra tu programa y todo lo que le agregaras para que este funcione en tu Wii con las ordenes que as metido en el por así decirlo, pero la forma correcta de interpretarlo seria diciendo que el main.c, es el programa, lo que el wii ara cuando lo compiles y lo ejecutes.

SOLO PRINCIPIANTES: El termino .C lo adquiere por ser un programa de este lenguaje de programación (C) en otros lenguajes se le podría llamar main pero con otra exención.


Makefile

Makefile es un archivo sin extensión (o extensión archivo), que contiene las instrucciones que necesita el compilador para hacerlo ejecutable, es decir este contiene todas las indicaciones, así como las librerías en las cuales se buscara la información etc. Entre otras cosas.


Compilador

El compilador en si es realmente la libreria DevkitPro pero en este caso usaremos un archivo que sera una especie de auto-ruta hacia el verdadero compilador pero de igual modo podemos llamarlo así se trata de un archivo extensión .BAT, el compilador es el cual contiene la información necesaria para transformar los programas .C a código binario y darles extensión (En este caso dol y elf) para así convertirlos en archivos ejecutables que la consola puede ejecutar/interpretar.

 

Estructura de un main.c de wii

Bien, a llegado un momento crucial que de seguro esperas, como ya explique tu programa antes de convertirlo en un bonito elf o dol tienes que crearlo antes, lastima que este tutorial no sea tu primer programa pero te enseñare la estructura de un programa y te incluiré una descarga para que lo puedas interpretar o observarlo mas atentamente con tu Notepad++ también te explicare lo que quieren decir todos esos símbolos y palabras raras para que tengas una idea de como empiezan los programas de wii, y desde ahora en adelante cuando programes esta sera tu "plantilla"

//Includes
#include <multiusos.h>
//Variables y defines
//Main
int main() {
	Init();
	while(1){
 
		VideoSync();
	}
	return 0;
}

Estructura de un main.C de Wii

Descargar main.C vació ( para verlo desde Notepad++) (Sólo usuarios registrados).

¿Que significan esas cosas?

Ok te explicare cosa por cosa de cada uno de los párrafos que aparecen halla arriba, para comiences a comprender la lógica de los programas de C para wii:

Primero explicare que las partes que dicen : //Incluides  //Variables y defines  //Main, son meros títulos colocados en posición estratégica ya que ahí se colocaran las cosas que indican, pero te comentare que indican esos tres títulos:

 

#Include: un #include  se trata de una orden que se le da al compilador de añadir una librería, los include hay de 2 tipos:

#include <multiusos.h> o #include "milibreria.h"

Nosotros ocuparemos siempre la primera mientras trabajemos con esta librería.

En el primer caso, notaras que hay <> cuando llevan nos indica que es una librería "oficial" es decir que esta en el devkitpro si lleva " " nos quiere decir que esta en la misma carpeta que el main.c eso es una parte muy importante de C, las librerías están divididas en 2 sitios, las denominadas globales las cuales son que están para TODAS las plataformas existentes, PC, Wii, PSP, Xbox y las especificas de cada plataforma.

Nota: Esto es solo para que te des una idea y comiences a conocer, pero de momento todos nuestros main.C empezaran con #Incluide <multiusos.h> pues es la libreria con la que empezaremos a programar.

Defines: Esto no te lo explicare ya que de momento no te sirve de nada y es un poco complicado.

Variables: Las variables las podríamos considerar como la indicación de ciertas cosas, un ejemplo seria si yo dijera

int angulo, presion;

Esta orden ara que se inicie un angulo y presión, de algo especifico en el programa, las variables que mas ocuparas en wii son int, char, voit. const, estas variables tienen funciones especificas, pero no explicare tan detalladamente cada una de ellas, "de momento" las variables del mismo modo pueden convertirse en funciones.

Main: Simplemente indica el inicio del main (Puedes interpretarlo como el inicio del programa) este puede iniciarse de dos formas, dependiendo la librería en este caso lo iniciaremos de este modo que es el mas común;

int main () {

Pero te enseñare el otro modo que es muy poco común, por si algún día lo ocupas:

int main(int argc, char** argv) {

Bien con esto te e explicado lo que significan esos tres títulos ahora te explico lo que significan las "verdaderas" cosas como son el while el int main etc.

  • int main() {: Esto comienza el programa, como lo explique halla arriba en la parte que dice: Main.
  • Init(); : Bien pues esta parte hace que comiencen las cosas básicas, como el sistema de vídeo, el Wiimote, el sonido etc.
  • while(1){ : Esta es una parte IMPORTANTISIMA de cualquier programa, while(1){ crea una linea de división, lo que pase arriba de ella solo ocurrirá una vez y lo que pase abajo de ella siempre se estará repitiendo.

Ejemplo de while(1){: Es como si iniciáramos la vibración del Wimote, por lógica siempre debe de estar presente, por lo tanto debe ir abajo de while(1); pero que pasaría si queremos que aparezca un splash (por ejemplo el del scenery) al iniciar la aplicación, pues se coloca arriba de el para que solo ocurra una vez.

  • VideoSync(); : Bien pues esta es la orden que se pone al final de todos los programas, es indicación de que comenzara a cerrar y siempre se coloca después de todas las funciones.
  • return 0; : Esto sirve para cerrar el while y el Int(1) así deja de ejecutarse y sale solo al homebrew, siempre esto pasara al apretar el botón Home.
  • {: Abre una orden, un variable etc. indica que inicia algo.
  • }: Indica que termina algo.

Estas ultimas dos son muy importantes y siempre se pondrán al final de cada orden y en las posiciones de el main.c vacio/estructura

  • ;: Se usan generalmente para indicar una variable, o separar cosas/ordenes.

Ahora Si

todas las cosas que te explique arriba son la base para cualquier programa, no te preocupes no tienes que aprenderlas de memoria se te irán grabando con el tiempo y siempre tendrás un main.C vació como base para cualquier homebrew, pero si es importante que te fijes muy bien en la función que realiza cada uno para la hora en la que des ordenes e insertes variables en el lugar correcto.

Espero que te este tutorial te halla cautivado mas con esto de la programación se que de simple vista y con tanta explicación podrías decir " o eso es muy difícil" pero no digas eso ya veras que no, cuando realices el siguiente tutorial veras que es fácil lo importante es que no te presiones, incuso te recomiendo descansar y tomar las cosas que te digo a la ligera, es el mejor método para aprenderlas mejor que si estamos rompiéndonos la cabeza.

Pero ya basta de tanta teoría y vamos directo a la practica, crearas tu primer homebrew, el Hello Word! es sencillo pero todo gran programador comenzó por ahí y es muy importante que lo hagas, ya veras que restaras muy emocionado.

Con esto termina el segundo tutorial espero sea de tu agrado y recuerda:

!!NO TE PRESIONES, TÓMALO A LA LIGERA!!


Descargar CoderMainvacioTutorial2programación

4.573335
Tu voto: Ninguno Votos totales: 4.6 (75 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.
Imagen de naxoleal98

puedo crear desde cero mi main c

si ya me se las partes, a traves de que programa, notepad o no?

Imagen de 4robles

como compilar

No entendido muy bien lo de como se compila con lo del archivo .BAT alguien me lo puede explicar ?
gracias!

Para cuando la Part 3?

Cuando estara la tercera parte del tutorial?

 

Gracias por hacer esto csar.ale ^^

Imagen de -DaNieL-

Para la próxima semana

Para la próxima semana debería estar en portada la tercera parte, paciencia :P.

Saludos!!

de lujo!

listo para el proximo tuto, se agradece tu tiempo para darnos estas clases gracias.

Empezare por comentarte que

Empezare por comentarte que para crear un programa independientemente de el lenguaje de programación siempre usaras tres cosas básicas las cuales son prácticamente todo tu programa, te aseguro abras oído de ellos, esas tres cosas que crearan tu programa se llaman:

*
main.c
*
Makefile
*
Compilador

 

Es el comentario mas equivocado que he leido pero bueno, esto no tiene de objetivo que entiendan la programacion, solo que hagan homebrew en wii =\

Imagen de csar.ale

Tranquilo

Todo a su tiempo si meto en directo a las personas no entenderán, no veo por que liarlos tanto ;-)

Ok, te doy la razon, ademas

Ok, te doy la razon, ademas esta entendible. Por ejemplo ahi podria decir "No importa que aplicacion realizes, debes tener siempre estos 3 archivos" o algo por el estilo. Pero tienes razon ya se ira dando solo =P

Imagen de csar.ale

jeje

Pues tengo 14, pero se explicar en mayor parte por mi experiencia de staff.

Gracias!

Imagen de sebaskull

aclarame una duda

aclarame una duda de donde sacaste el tuto o lo hiciste tu?????

Imagen de NaxoR93

que mala fe ¬¬ sal de la duda

que mala fe ¬¬

sal de la duda tu mismo y busca este mismo tuto en alguna otra parte a ver si lo encuentras.

Imagen de sebaskull

solo era una pregunta

solo era una pregunta no se enojen aunk la verdad esk que los demas tutos de otras paginas sons sacados de aki jajaja XDD

ok ya no vuelvo a poner preguntas tontas pero como dice mi firma si no pregunto q?

Imagen de NaxoR93

vale, nadie se enoja

vale, nadie se enoja ;)

Saludos.

Imagen de _Kamikaze_

.

estos tutoriales deberian aparecer aqui no? :P http://wii.scenebeta.com/tutorial/tutoriales-programacion-wi...

Imagen de csar.ale

Bueno

Eso lo note, (Que no se ven) pero estoy por hacer una propuesta de creación de una nueva ruta.

Saludos!

Deberian...xD

Deberian...xD

buen tuto

buen tutorial lo tomare enserio ya que me gusta saber el funcionamiento de las cosas me divertiré bastante haciendo brews aunque a largo plazo nadie nace nacido gracias nuevente por los tutoriales de programacion en C pero una pregunta ¿en que se diferencia la programacion en wii de la del pc? me podria dar algunas caracteristicas de sus diferencias. gracias

Imagen de federan

C++

No sirve c++ para la wii? es que yo estoy mas acostumbrado a él;por ejemplo uso cout y cin en vez de printf y scanf.

Muchisimas gracias!

A fin de intentar hacer un

A fin de intentar hacer un HelloWorld tengo dos dudas:

Para poner un texto se sigue usando el "printf"? En que parte del código lo tengo que poner? Supongo que fuera del while y antes del return.

Que makefile puedo usar para compilarlo?


http://www.myspace.com/cardiakorap ----> MC/Productor de rap.

Quieres una invitación para Lockerz.com? Mandame un privado!

Imagen de csar.ale

Por partes

No tenemos que apresurarnos, el siguiente tuto ya aras el Hola Mundo mientras tanto pon atención a esto, que todo es gradual ;-)

Saludos!

Ya, pero es que esto no es

Ya, pero es que esto no es nuevo para mi, ya que estuve curioseando y me mire el curso de "the_marioga" y el de "hermes". Decir que el de hermes se me quedaba grande eso si. Tambien empece con un curso de c. Por eso excepto un par de cosas (que las he asimilado, te lo aseguro), lo demas ya lo sabia. Hasta comprendo un poco de las tripas del makefile gracias a hermes.

Simplemente tengo tiempo libre ahora, y cuando empiece el instituto no se si lo tendre. ;)


http://www.myspace.com/cardiakorap ----> MC/Productor de rap.

Quieres una invitación para Lockerz.com? Mandame un privado!

La descarga no funciona

No funciona el link de descarga, pero muy buen tutorial

Imagen de -DaNieL-

El link está bien, vuelve a

El link está bien, vuelve a intentarlo.

Saludos!

El link no esta bien. Dice

El link no esta bien. Dice acceso denegado.

Imagen de Kai-Kun

Prueba

Prueba nuevamente, el enlace deberia funcionar bien ahora

Ahora si va, gracias por

Ahora si va, gracias por arreglarlo.

Joo, yo esperaba hacer un

Joo, yo esperaba hacer un hello world ya con este tuto...Solo he aprendido lo relativo a la Wii (Lo de init) ya que lo demas lo he aprendido en un curso de C que tambien estoy haciendo.

PD: No se puede descargar el "CoderMainvacioTutorial2programacion". Me dice acceso denegado. He probado a desloguearme y volver a entrar pero nada...


http://www.myspace.com/cardiakorap ----> MC/Productor de rap.

Quieres una invitación para Lockerz.com? Mandame un privado!

Imagen de .Dark-Sasuke.

Hola bro lo del printf lo

Hola bro lo del printf lo puedes poner incluso despues de la linea del

int main (){

                printf("Hola Scenebeta WII"); //te aparece el texto  luego luego de q compiles

Saludos

 

 


Si quieres hackear tu wii antes de preguntar checa aqui     Piratea tu wii sin chip

                                               

Al last! A ver que tal se me

Al last! A ver que tal se me da. :P

Imagen de -DaNieL-

¡Manos a la obra!

Gracias por el tuto compañero esta buenisimo, esperamos sigas, gracias por tus aportes ;).

Saludos!

Imagen de sebaskull

por fin

por fin hace tiempo que estaba esperando que salga este tuto ya que estoy muy emocionado por programar para wii...

 

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.