12 de Diciembre de 2017

Archivo para Marzo de 2010 en NightFox & Co - Desarrollo de Homebrew para NDS, blog de KnightFox

Mar
31

NightFox & Co Speed Trap. Tech demo

Hoy video entrada cortita.
 
Para ver este video es necesario tener JavaScript activado y el plugin Flash instalado en el navegador.

 
Que a veces parece que estemos tocandonos las narices por que no publicamos, pero no XD
 
Saludos a todos,
 
NightFox
 

Importantes novedades.
Muchos me odiareis por esto, otros estaran encantados, pero como todo en este mundo, nunca llueve al gusto de todos.
El motivo? He decidido eliminar de mi libreria el soporte para EFS.
Por que? Facil, estan OBSOLETAS, nadie las mantiene oficialmente, tardan una eternidad en inicializarse y a cada version de devkitArm van peor.
Solucion, usar las NitroFS incluidas con devkitArm, que hacen lo mismo, pero mejor.
Funcionan de manera transparente en el no$gba y en el hardware la inicializacion es casi instantanea.
La parte mala es que casi ninguna tarjeta soporta ARGV, asi que tocara lanzar la ROM desde el "Homebrew Menu", el cual y previa autorizacion de Wintermute, incluyo con la libreria.
Para la migracion de proyectos de EFS a NitroFS debereis hacer los siguientes cambios:

- Cambiar la linea:
int main(void) {
a
int main(int argc, char **argv) {
 
- Cambiar la linea:

Buenas noches!
 
Con la reciente salida del devkitPro R28, se han tenido que realizar un par de correcciones para que sea compatible con la misma.

Basicamente se ha tenido que recompilar la libreria para que se actualicen algunos defines de los bancos de VRAM y corregir una advertencia que se producia al compilar, relacionada con las EFSLIB.
Las correcciones son las siguientes:
 
- Libreria recompilada para que funcione con devkitPro R28.

- Modificada la libreria EFS lib para corregir las advertencias durante la compilacion.

  efs_lib.c: In function 'CheckFile':
  efs_lib.c(305): warning: array subscript has type 'char'

  Se ha modidicado esta linea:
  ext[i] = tolower(ext[i]);

  Con estas:
  letter = ext[i];
  if (letter >= 65 && letter <= 90) letter += 32;
  ext[i] = letter;
 
 
A causa de esta actualizacion, la libreria a partir de ahora requiere la version R28 del devkitPro como minimo para su funcionamiento, asi que ya sabeis, a actualizar toca.
 
La descarga de la libreria:
NightFox's Lib Ver. 20100304 (R28 compatible)
 
Un cordial saludo
 
NightFox
 

Buenas tardes.
Despues de unos dias de ausencia, os traigo la nueva version de mi libreria, con alguna funcionalidad añadida.
 
- Añadida la funcion NF_LoadBMP(); la cual carga un archivo BMP de 8, 16 o 24 bits en un slot de imagen de 16 bits.
- Añadido el parametro "alpha" a la funcion NF_Draw16bitsImage(); para decidir si el color magenta es o no transparente.
- Añadido los ejemplos de carga de archivos en formato BMP.
- Añadido el ejemplo de scroll de una imagen cargada desde un BMP.


Basicamente he retocado un poco la funcion NF_Draw16bitsImage(); para poder escoger si los pixeles magenta se dibujan o no (para crear transparencias) y el soporte para carga de archivos BMP de 8, 16 o 24 bits en un slot de imagenes de 16 bits. La deteccion del tipo de archivo BMP y su conversion a ARGB15 se hace automaticamente. Solo se puede usar esta funcion en modo 16 bits.
 
Aqui teneis un video con un ejemplo de carga y scroll de una imagen contenia en un archivo BMP.
 
Para ver este video es necesario tener JavaScript activado y el plugin Flash instalado en el navegador.