From da4eb199cdb9b587f432a85b493d99b5dd62681a Mon Sep 17 00:00:00 2001 From: neonloop Date: Wed, 25 Jan 2023 07:02:16 +0000 Subject: Makes minor makefile fixes, basic support for prboom, tyrquake, scummvm --- Makefile | 43 +++++++++++++++++++++++++++++++---- patches/prboom/0001-skip-zclose.patch | 27 ++++++++++++++++++++++ 2 files changed, 66 insertions(+), 4 deletions(-) create mode 100644 patches/prboom/0001-skip-zclose.patch diff --git a/Makefile b/Makefile index f2488aa..6dc3659 100644 --- a/Makefile +++ b/Makefile @@ -18,8 +18,7 @@ CFLAGS += -I./ -I./libretro-common/include/ $(shell $(SYSROOT)/usr/bin/sdl-c LDFLAGS = -lc -ldl -lgcc -lm -lSDL -lasound -lpng -lz -Wl,--gc-sections -flto # Unpolished or slow cores that build -# EXTRA_CORES += fbalpha2012 -# EXTRA_CORES += mame2003_plus +# EXTRA_CORES += fbalpha2012 mame2003_plus prboom scummvm tyrquake CORES = beetle-pce-fast bluemsx fceumm fmsx gambatte gme gpsp mame2000 pcsx_rearmed picodrive quicknes smsplus-gx snes9x2002 snes9x2005 $(EXTRA_CORES) @@ -27,6 +26,8 @@ ifneq ($(platform), trimui) CORES := $(CORES) fake-08 snes9x2005_plus snes9x2010 endif +#CORES=tyrquake + beetle-pce-fast_REPO = https://github.com/libretro/beetle-pce-fast-libretro beetle-pce-fast_CORE = mednafen_pce_fast_libretro.so beetle-pce-fast_TYPES = pce,cue,ccd,chd,toc,m3u @@ -70,9 +71,14 @@ pcsx_rearmed_TYPES = bin,cue,img,mdf,pbp,toc,cbn,m3u,chd picodrive_MAKEFILE = Makefile.libretro picodrive_TYPES = bin,gen,smd,md,32x,cue,iso,chd,sms,gg,m3u,68k,sgd +prboom_REPO = https://github.com/libretro/libretro-prboom +prboom_TYPES = wad,iwad,pwad,lmp + quicknes_REPO = https://github.com/libretro/QuickNES_Core quicknes_TYPES = nes +scummvm_TYPES = scummvm + smsplus-gx_MAKEFILE = Makefile.libretro smsplus-gx_CORE = smsplus_libretro.so smsplus-gx_TYPES = sms,bin,rom,col,gg,sg @@ -90,6 +96,8 @@ snes9x2005_plus_TYPES = smc,fig,sfc,gd3,gd7,dx2,bsx,swc,zip snes9x2010_TYPES = smc,fig,sfc,gd3,gd7,dx2,bsx,swc,zip +tyrquake_TYPES = pak + ifeq ($(platform), trimui) OBJS += plat_trimui.o CFLAGS += -mcpu=arm926ej-s -mtune=arm926ej-s -fno-PIC -DCONTENT_DIR='"/mnt/SDCARD/Roms"' @@ -189,11 +197,14 @@ $(foreach core,$(CORES),$(eval $(call CORE_template,$(core)))) cores: $(SOFILES) -clean: clean-libpicofe - rm -f $(OBJS) $(BIN) $(SOFILES) +clean-picoarch: + rm -f $(OBJS) $(BIN) rm -rf pkg rm -f *.opk +clean: clean-libpicofe clean-picoarch + rm -f $(SOFILES) + clean-all: $(foreach core,$(CORES),clean-$(core)) clean force-clean: clean @@ -507,6 +518,30 @@ picoarch.opk: $(BIN) cores cd .opkdata && mksquashfs * ../picoarch.opk -all-root -no-xattrs -noappend -no-exports rm -r .opkdata +define picoarch_lite_DESKTOP +[Desktop Entry] +Name=picoarch-lite +Comment=Small screen libretro frontend +Exec=picoarch %f +Icon=sdlretro_icon +SelectorBrowser=true +SelectorDir=/mnt/FunKey/.picoarch/cores +SelectorFilter=so +Terminal=false +Type=Application +StartupNotify=true +Categories=emulators; +endef + +picoarch-lite.opk: $(BIN) + mkdir -p .opkdata + $(file >picoarch.funkey-s.desktop,$(picoarch_lite_DESKTOP)) + mv picoarch.funkey-s.desktop .opkdata + cp $(BIN) .opkdata + cd .opkdata && curl -L -O https://raw.githubusercontent.com/FunKey-Project/sdlretro/master/data/sdlretro_icon.png + cd .opkdata && mksquashfs * ../picoarch-lite.opk -all-root -no-xattrs -noappend -no-exports + rm -r .opkdata + picoarch-funkey-s.zip: picoarch.opk $(foreach core, $(CORES), picoarch-$(core).opk) rm -f picoarch-funkey-s.zip zip picoarch-funkey-s.zip README.funkey-s.md *.opk diff --git a/patches/prboom/0001-skip-zclose.patch b/patches/prboom/0001-skip-zclose.patch new file mode 100644 index 0000000..51b81b0 --- /dev/null +++ b/patches/prboom/0001-skip-zclose.patch @@ -0,0 +1,27 @@ +diff --git a/Makefile b/Makefile +index 5dfa675..c913d73 100644 +--- a/Makefile ++++ b/Makefile +@@ -163,7 +163,8 @@ else ifeq ($(platform), classic_armv7_a7) + -falign-functions=1 -falign-jumps=1 -falign-loops=1 \ + -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-unroll-loops \ + -fmerge-all-constants -fno-math-errno \ +- -marm -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard ++ -marm -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard \ ++ -DSKIP_ZCLOSE + CXXFLAGS += $(CFLAGS) + HAVE_NEON = 1 + ARCH = arm +diff --git a/src/z_zone.c b/src/z_zone.c +index bf9ec1a..5a89885 100644 +--- a/src/z_zone.c ++++ b/src/z_zone.c +@@ -116,7 +116,7 @@ void Z_Close(void) + /* The libretro core will crash on + * close content if we free memory + * here while running on Windows... */ +-#if !defined(_WIN32) ++#if !defined(_WIN32) && !defined(SKIP_ZCLOSE) + Z_FreeTags(PU_FREE, PU_MAX); + #endif + memory_size = 0; -- cgit v1.2.3