Anuncios Google

Introducir un png dentro del boot.dol [C]

Hola, se que aquí hay pocos coders, pero haber si alguien me puede ayudar. Lo que quiero es introducir una imagen *.PNG dentro del Boot.dol y que no esté al lado. Si no recuerdo mal, había que transformar el PNG a un archivo *.c

Salu2 y gracias al que conteste.

EDITO: Aquí el makefile:

#---------------------------------------------------------------------------------
# Clear the implicit built in rules
#---------------------------------------------------------------------------------
.SUFFIXES:
#---------------------------------------------------------------------------------
ifeq ($(strip $(DEVKITPPC)),)
$(error "Please set DEVKITPPC in your environment. export DEVKITPPC=<path to>devkitPPC")
endif
 
include $(DEVKITPPC)/wii_rules
 
#---------------------------------------------------------------------------------
# TARGET is the name of the output
# BUILD is the directory where object files & intermediate files will be placed
# SOURCES is a list of directories containing source code
# INCLUDES is a list of directories containing extra header files
#---------------------------------------------------------------------------------
TARGET		:=	$(notdir $(CURDIR))
BUILD		:=	build
SOURCES		:=	source
DATA		:=	data 
INCLUDES	:=
 
#---------------------------------------------------------------------------------
# options for code generation
#---------------------------------------------------------------------------------
 
CFLAGS	= -g -O2 -mrvl -Wall $(MACHDEP) $(INCLUDE) -I$(DEVKITPPC)/local/include
CXXFLAGS	=	$(CFLAGS)
LDFLAGS	=	-g $(MACHDEP) -mrvl -Wl,-Map,$(notdir $@).map
 
#---------------------------------------------------------------------------------
# any extra libraries we wish to link with the project
#---------------------------------------------------------------------------------
LIBS :=   -lmultiusos -lpngu -lpng -lz -lwiiuse -lbte -lvorbisidec -lasnd -lmad -lfat -logc -lm -ljpeg
 
#---------------------------------------------------------------------------------
# list of directories containing libraries, this must be the top level containing
# include and lib
#---------------------------------------------------------------------------------
LIBDIRS	:= 
 
#---------------------------------------------------------------------------------
# no real need to edit anything past this point unless you need to add additional
# rules for different file extensions
#---------------------------------------------------------------------------------
ifneq ($(BUILD),$(notdir $(CURDIR)))
#---------------------------------------------------------------------------------
 
export OUTPUT	:=	$(CURDIR)/$(TARGET)
 
export VPATH	:=	$(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
					$(foreach dir,$(DATA),$(CURDIR)/$(dir))
 
export DEPSDIR	:=	$(CURDIR)/$(BUILD)
 
#---------------------------------------------------------------------------------
# automatically build a list of object files for our project
#---------------------------------------------------------------------------------
CFILES		:=	$(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
CPPFILES	:=	$(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
sFILES		:=	$(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
SFILES		:=	$(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.S)))
BINFILES	:=	$(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
 
#---------------------------------------------------------------------------------
# use CXX for linking C++ projects, CC for standard C
#---------------------------------------------------------------------------------
ifeq ($(strip $(CPPFILES)),)
	export LD	:=	$(CC)
else
	export LD	:=	$(CXX)
endif
 
export OFILES	:=	$(addsuffix .o,$(BINFILES)) \
					$(CPPFILES:.cpp=.o) $(CFILES:.c=.o) \
					$(sFILES:.s=.o) $(SFILES:.S=.o)
 
#---------------------------------------------------------------------------------
# build a list of include paths
#---------------------------------------------------------------------------------
export INCLUDE	:=	$(foreach dir,$(INCLUDES), -iquote $(CURDIR)/$(dir)) \
					$(foreach dir,$(LIBDIRS),-I$(dir)/include) \
					-I$(CURDIR)/$(BUILD) \
					-I$(LIBOGC_INC)
 
#---------------------------------------------------------------------------------
# build a list of library paths
#---------------------------------------------------------------------------------
export LIBPATHS	:=	$(foreach dir,$(LIBDIRS),-L$(dir)/lib) \
					-L$(LIBOGC_LIB) -L$(DEVKITPPC)/local/lib
 
export OUTPUT	:=	$(CURDIR)/$(TARGET)
.PHONY: $(BUILD) clean
 
#---------------------------------------------------------------------------------
$(BUILD):
	@[ -d $@ ] || mkdir -p $@
	@make --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
 
#---------------------------------------------------------------------------------
clean:
	@echo clean ...
	@rm -fr $(BUILD) $(OUTPUT).elf $(OUTPUT).dol
 
#---------------------------------------------------------------------------------
run:
	psoload $(TARGET).dol
 
#---------------------------------------------------------------------------------
reload:
	psoload -r $(TARGET).dol
 
 
#---------------------------------------------------------------------------------
else
 
DEPENDS	:=	$(OFILES:.o=.d)
 
#---------------------------------------------------------------------------------
# main targets
#---------------------------------------------------------------------------------
$(OUTPUT).dol: $(OUTPUT).elf
$(OUTPUT).elf: $(OFILES)
 
#---------------------------------------------------------------------------------
# This rule links in binary data with the .jpg extension
#---------------------------------------------------------------------------------
%.jpg.o	:	%.jpg
#---------------------------------------------------------------------------------
	@echo $(notdir $<)
	$(bin2o)
 
-include $(DEPENDS)
 
#---------------------------------------------------------------------------------
endif
#---------------------------------------------------------------------------------


- Monty (anteriormente, Calabato64)


Anuncios Google

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.

Una pregunta...¿Qué ventajas

Una pregunta...¿Qué ventajas tiene esta forma de insertar imagenes a la que tienes que tener la imagen fuera del boot.dol??

Imagen de Neutron2000

Alomejor no tiene ninguna

Alomejor no tiene ninguna ventaja, pero ya ha aprendido una cosa mas...!xd!

xD, eso sin duda pero queria

xD, eso sin duda pero queria saberlo por curiosidad xD

Imagen de va2ron1

Respuesta..

en makefile debes cambiar de:

%.jpg.o :       %.jpg

a png, debe quedar asi:

%.png.o :       %.png

y en la carpeta data que debe estas junto al makefile debes incluir el png.

en main.c debes incluir:

#include "nombredelpng_extencion.h"
 
Ej.con sample.png
 
#include "sample_png.h"
 

y en la funcion lo mismo "nombredelpng_externcion" y para el size "nombredelpng_externcion_size"ej.

sample_png

sample_png_size

Nota: Yo no recomentaria png si no jpg usando la libreria Multiusos. 

Espero que funcione.

 


CrackDevice!!! - http://crackdevice.com Solo colabora, entra y aclara sus dudas, todos sobre tu iDevice.

Imagen de Monty - Calabato64

A ver si me entero... Cambio

A ver si me entero...

Cambio eso en el makefile y en el main.c pongo:

#include "Fondo_png.h"

Y después para mostrarla:

pngCoordFile("fondo_png");

¿no?


- Monty (anteriormente, Calabato64)

Imagen de va2ron1

No es asi..

esta funcion pngCoordFile se usa asi:

pngCoordFile("fondo.png");

y es para imagenes ubicadas en la SD no para binarios ,para png con Multiusos es esta funcion pngCoordBuffer y no se utilizarla.

Otra Nota: Si usan letras mayusculas dejenlas mayusculas no las cambie o no va a compilar.


CrackDevice!!! - http://crackdevice.com Solo colabora, entra y aclara sus dudas, todos sobre tu iDevice.

Imagen de dark_on_5

pngCoordBuffer? Alguien sabe

pngCoordBuffer? Alguien sabe usarla?

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.