#
# pspcap32 port on PSP 
#
# Copyright (C) 2008 Ludovic Jacomme (ludovic.jacomme@gmail.com)
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
#
TARGET = pspcap32
PSPSDK = $(shell psp-config --pspsdk-path)
PSPBIN = $(shell psp-config --psp-prefix)/bin
SDL_CONFIG = $(PSPBIN)/sdl-config
OBJS = cap32.o crtc.o fdc.o psg.o video.o z80.o \
       psp_main.o psp_gu.o \
       psp_menu_cheat.o psp_editor.o \
       psp_menu_list.o \
       psp_sdl.o psp_kbd.o kbd.o psp_fmgr.o psp_font.o \
       psp_danzeff.o  psp_battery.o psp_menu_set.o psp_menu_disk.o \
       psp_menu.o psp_run.o psp_menu_kbd.o psp_battery.o psp_menu_help.o \
       miniunz.o  unzip.o  \
       psp_irkeyb.o libcpccat/fs.o

DEFAULT_CFLAGS = $(shell $(SDL_CONFIG) --cflags)

PSP_FW_VERSION=15
PSPCAP32_VERSION=1.5.1-fw15

MORE_CFLAGS=\
 -Ilibcpccat \
 -DPSPCAP32_VERSION=\"$(PSPCAP32_VERSION)\" \
 -DUSE_IRDA_JOY -DUSE_PSP_IRKEYB \
 -DNO_STDIO_REDIRECT \
 -DPSP_AUDIO \
 -Wall \
 -funroll-loops \
 -ffast-math -fomit-frame-pointer \
 -fno-strength-reduce -finline-functions \
 -fsingle-precision-constant

OPTIM_CFLAGS= -O2

CFLAGS = $(DEFAULT_CFLAGS) $(MORE_CFLAGS)

LIBS = -lpspirkeyb -lSDL_image -lSDL -lpng -ljpeg -lm -lc -lz -lpsphprm -lpspgu -lpsppower -lpspaudio -lpsprtc

EXTRA_TARGETS = EBOOT.PBP
PSP_EBOOT_TITLE = PSPCAP32-v$(PSPCAP32_VERSION)
PSP_EBOOT_ICON= pspcap32.png
PSP_EBOOT_PIC1 = pspcap32-pic.png
PSP_EBOOT_SND0  = pspcap32.at3

include $(PSPSDK)/lib/build.mak

all: SCEkxploit

.c.o:
	$(CC) $(CFLAGS) $(OPTIM_CFLAGS) -c -o $@ $<

install: all
	@mkdir -p /media/usbdisk/psp/game150/__SCE__pspcap32/
	@mkdir -p /media/usbdisk/psp/game150/%__SCE__pspcap32/
	cp __SCE__pspcap32/EBOOT.PBP /media/disk/psp/game150/__SCE__pspcap32/
	cp %__SCE__pspcap32/EBOOT.PBP /media/disk/psp/game150/%__SCE__pspcap32/

psp_gu.o : psp_gu.c
	$(CC) -c $< $(CFLAGS) -O0 -o $@

# cap32.o : cap32.c
#	$(CC) -c $< $(CFLAGS) -O2 -o $@

# z80.o : z80.c
# 	$(CC) -c $< $(CFLAGS) -O2 -o $@

crtc.o : crtc.c
	$(CC) -c $< $(CFLAGS) -O3 -o $@

# psg.o : psg.c
#	$(CC) -c $< $(CFLAGS) -O3 -o $@

realclean:
	/bin/rm -f $(OBJS) EBOOT.PBP PARAM.SFO

