Hola.
Un demo que tenía terminado, es mas un remix pero intenta simular el original Second Reality.
Funciona tanto en Game Boy original como en Game Boy Color.
2ND_GB.zip
Espero que os guste, incluye las fuentes.
Hola.
Un demo que tenía terminado, es mas un remix pero intenta simular el original Second Reality.
Funciona tanto en Game Boy original como en Game Boy Color.
2ND_GB.zip
Espero que os guste, incluye las fuentes.
Última edición por mills332; 27/04/2014 a las 01:57
Dejo por aquí este material por si alguien quiere adentrarse con algunos programas sencillos en el desarrollo de software para la gameboy. Para más explicaciones os remito al subforo de desarrollo de EOL donde está cada uno de estos videos con las explicaciones pertinentes y su código fuente asociado.
Saludos.
Última edición por jduranmaster; 11/07/2015 a las 13:03
Interesante lo de programar en C.
Se tiene control a todo??Por ejemplo se puede acceder a cualquier parte de la memoria de la rom de forma facil mediante punteros, por poner un ejemplo??
Tu emulador tiene debugger para poner breakpoints condicionales??
El problema es que el GBDK (que es el kit de desarrollo en C) tiene algún que otro fallo y en principio para sacar todo el potencial se debería usar el RGBD que es el SDK de assembler para la GB, pero con todo ello es posible hacer juegos decentes usando el SDK en C.
Respecto a lo que comentas de los punteros si que se pueden usar (de hecho en todos los ejemplos yo uso punteros para referenciar cadenas de caracteres), pero en lo que se trata a las diferentes zonas de memoria de una ROM no se usan de la manera tradicional a como se usarían en un programa C/C++ para un PC ya que la memoria principal de la Game Boy, mapeada en un espacio de 16 bit, nos permite direccionar directamente 64K (65536 bits). En este espacio de direcciones, tenemos que direccionar todos los bloques de memoria a los que la Game Boy necesita acceder, esto es, la RAM, la ROM del cartucho, memoria de video,la RAM interna del cartucho para los juegos nos permiten salvar partida, etc. En la GameBoy la memoria se mapea en diferentes bloques, como la RAM interna o la memoria de video, dejando dos bloques de 16K para el acceso a la ROM de los juegos, y un bloque de 8K para el acceso a la RAM de los juegos (partidas salvadas). Debido a que muchos juegos empezaron a necesitar de más de 32K de ROM o de 8K de RAM de salvado, se empezó a emplear una técnica denominada “Banking” o "Bank Switching", que consiste en dividir la ROM del juego en diversos bloques que se puedan independizar (los gráficos o sonidos de cada pantalla por ejemplo), los cuales se van mapeando en el bloque de acceso a la memoria según sean necesarios. Durante la compilación de una ROM (cosa que no se ve en los videos pero si en el hilo que tengo abierto en EOL ya que ahí está todo: el código fuente y los scripts de compilación en MS-DOS) se define que bloques (gráficos, música, etc) que se corresponden con los bancos de memoria y es en el código donde se usan ciertas instrucciones (dependiendo del chip de mapping que usemos en nuestro cartucho), donde podemos ir intercambiando bancos de 16K en el otro bloque disponible. Es necesario por tanto ir guardando todo lo que no sea la lógica del juego, en bancos de memoria diferentes al principal.
El emulador de momento no tiene debugger como tal. Hace algunos meses empecé a programar un módulo para hacer debug y todavía está en "stand-by" ya que en ese tiempo me he dedicado a preparar estos nuevos tutoriales.
Última edición por jduranmaster; 21/12/2014 a las 18:59
tSuKiYoMi (21/12/2014)
Podrías poner los enlaces al subforo de EOL.
Muchas gracias por la aclaracion.
A ver si me animo y veo algun tutorial, me apetece jugar con el puerto link de la gb
Saludos
PREDATOR (1987 / DEMO) - GAME BOY COLOR DEMO [GAMEBOY COLOR HOMEBREW] Game Boy C Programming
Allen_S (03/06/2015), Karkayu (22/03/2015), kiero (22/03/2015), OscarBraindeaD (22/03/2015), Sven (22/03/2015)
Muy bien jduran! Mola ver cosas nuevas para gb!
Sigo tonteando con la idea de retomar la programación para la gb/gbc... Nunca conseguí meter sonido o música a mis pruebas, te importaría decirme qué player has usado para esta ROM?
Muchas gracias!
El pasado ha pasado y por él nada hay que hacer... el presente es un fracaso y el futuro no se ve... (Cerebros destruidos/Eskorbuto)
He utilizado el GBT Player para poder meter la música en esta ROM. Por defecto este player mete la música en el banco de memoria 2 aunque se puede indicar que lo meta en otro si ese ya lo tenías ocupado para otros datos.
Muchas gracias! lo busco y lo bajo para cuando retome el tema de los juegos en gb/gbc!
El pasado ha pasado y por él nada hay que hacer... el presente es un fracaso y el futuro no se ve... (Cerebros destruidos/Eskorbuto)
Mientras termino de finiquitar los dos nuevos juegos que estoy preparando para GB/GBC os dejo por aquí una nuevo DEMO que he publicado hace poco (aunque tiene un par de meses). No utiliza todos los efectos nuevos que he ido aprendiendo salvo el tema del "bank switching" que en esta DEMO ya ha sido fundamental.
BATMAN (1989 DEMO) - GAME BOY COLOR DEMO [GAMEBOY COLOR HOMEBREW] Game Boy C Programming
Tetris: The Soviet Mind Game is the new homebrew game programmed by jduranmaster (a.k.a. Ryoga).
Features:
- New Graphics.
- New Sound Effects.
- CGB Type compatibility.
- MBC1 Memory Bank Controller.
- Playable on real hardware.
- Playable on several emulators for all platforms: PC / iOS / Android
Marcadores