From 409b69e43168561358bfb8b5759ec201a68ecc86 Mon Sep 17 00:00:00 2001 From: neonloop Date: Sun, 5 Feb 2023 22:50:33 +0000 Subject: Adds pokemini core --- .gitignore | 1 + Makefile | 11 ++++++++++- README.funkey-s.md | 5 +++-- README.trimui.md | 5 +++-- overrides.c | 2 ++ overrides/pokemini.h | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 73 insertions(+), 5 deletions(-) create mode 100644 overrides/pokemini.h diff --git a/.gitignore b/.gitignore index e9187e1..9f397bb 100644 --- a/.gitignore +++ b/.gitignore @@ -20,6 +20,7 @@ picoarch /mame2003_plus /pcsx_rearmed /picodrive +/pokemini /quicknes /smsplus-gx /snes9x2002 diff --git a/Makefile b/Makefile index f1fa868..81c21af 100644 --- a/Makefile +++ b/Makefile @@ -20,7 +20,7 @@ LDFLAGS = -lc -ldl -lgcc -lm -lSDL -lasound -lpng -lz -Wl,--gc-sections -flto # Unpolished or slow cores that build # 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) +CORES = beetle-pce-fast bluemsx fceumm fmsx gambatte gme gpsp mame2000 pcsx_rearmed picodrive pokemini quicknes smsplus-gx snes9x2002 snes9x2005 $(EXTRA_CORES) ifneq ($(platform), trimui) CORES := $(CORES) dosbox-pure fake-08 fbalpha2012 snes9x2005_plus snes9x2010 @@ -75,6 +75,8 @@ 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 +pokemini_TYPES = min + prboom_REPO = https://github.com/libretro/libretro-prboom prboom_TYPES = wad,iwad,pwad,lmp @@ -260,6 +262,9 @@ mame2003_plus_PAK_NAME = Arcade (MAME 2003-plus) picodrive_ROM_DIR = MD picodrive_PAK_NAME = Genesis +pokemini_ROM_DIR = POKEMINI +pokemini_PAK_NAME = PokeMini + pcsx_rearmed_ROM_DIR = PS pcsx_rearmed_PAK_NAME = PlayStation define pcsx_rearmed_PAK_EXTRA @@ -450,6 +455,10 @@ picodrive_ROM_DIR = /mnt/Sega Genesis picodrive_ICON_URL = https://raw.githubusercontent.com/FunKey-Project/FunKey-OS/master/FunKey/package/picodrive/opk/megadrive/megadrive.png picodrive_ICON = megadrive +pokemini_ROM_DIR = /mnt/PokeMini +pokemini_ICON_URL = https://raw.githubusercontent.com/MiyooCFW/gmenunx/master/assets/miyoo/skins/PixUI/icons/pokemini.png +pokemini_ICON = pokemini + quicknes_ROM_DIR = /mnt/NES quicknes_ICON_URL = https://raw.githubusercontent.com/FunKey-Project/FunKey-OS/master/FunKey/package/FCEUX/opk/nes/nes.png quicknes_ICON = nes diff --git a/README.funkey-s.md b/README.funkey-s.md index 3923125..f6a23df 100644 --- a/README.funkey-s.md +++ b/README.funkey-s.md @@ -13,11 +13,12 @@ It supports: - **MS-DOS** (dosbox-pure) - **MSX** (fMSX, blueMSX) - **NES** (quicknes, fceumm) -- **Sega Master System** (picodrive, smsplus) -- **Super NES** (snes9x2002, snes9x2005, snes9x2005_plus, snes9x2010) - **PCE / TurboGrafx-16** (beetle-pce-fast) - **PICO-8** (fake-08) - **PlayStation** (pcsx_rearmed) +- **Pokémon Mini** (pokemini) +- **Sega Master System** (picodrive, smsplus) +- **Super NES** (snes9x2002, snes9x2005, snes9x2005_plus, snes9x2010) - more to come picoarch can also play game music (gme). diff --git a/README.trimui.md b/README.trimui.md index e2bae7c..5f0c3dc 100644 --- a/README.trimui.md +++ b/README.trimui.md @@ -12,10 +12,11 @@ It supports: - **Genesis** (picodrive) - **MSX** (fMSX, blueMSX) - **NES** (quicknes, fceumm) -- **Sega Master System** (picodrive, smsplus) -- **Super NES** (snes9x2002, snes9x2005) - **PCE / TurboGrafx-16** (beetle-pce-fast) - **PlayStation** (pcsx_rearmed) +- **Pokémon Mini** (pokemini) +- **Sega Master System** (picodrive, smsplus) +- **Super NES** (snes9x2002, snes9x2005) - more to come picoarch can also play game music (gme). diff --git a/overrides.c b/overrides.c index e426b31..56fca04 100644 --- a/overrides.c +++ b/overrides.c @@ -13,6 +13,7 @@ #include "overrides/mame2000.h" #include "overrides/pcsx_rearmed.h" #include "overrides/picodrive.h" +#include "overrides/pokemini.h" #include "overrides/prboom.h" #include "overrides/quicknes.h" #include "overrides/scummvm.h" @@ -40,6 +41,7 @@ static const struct core_override overrides[] = { mame2000_overrides, pcsx_rearmed_overrides, picodrive_overrides, + pokemini_overrides, prboom_overrides, quicknes_overrides, scummvm_overrides, diff --git a/overrides/pokemini.h b/overrides/pokemini.h new file mode 100644 index 0000000..e8b0824 --- /dev/null +++ b/overrides/pokemini.h @@ -0,0 +1,54 @@ +#include "overrides.h" + +static const struct core_override_option pokemini_core_option_overrides[] = { + { + .key = "pokemini_video_scale", + .desc = "Video Scale", + .info = "Set internal video scale factor. Increasing the scale factor improves the appearance of the internal 'Dot Matrix' LCD filter. Requires restart." + }, + { + .key = "pokemini_60hz_mode", + .info = "Update the display at 60Hz instead of the native 72Hz Pokemon Mini's refresh rate. Reduces video smoothness, but avoids screen tearing.", + }, + { + .key = "pokemini_lcdfilter", + .info = "Select internal screen filter. 'Dot Matrix' gives an LCD effect that mimics real hardware. Filters are disabled when 'Video Scale' is set to '1x'." + }, + { + .key = "pokemini_lcdmode", + .info = "Specify the greyscale 'color' character of the LCD. 'Analog' mimics real hardware. '2 Shades' removes ghosting, but causes flickering.", + }, + { + .key = "pokemini_lowpass_range", + .desc = "Filter level (%%)", + .info = "Specifies the cut-off frequency of the low pass audio filter. A higher value increases the perceived 'strength' of the filter.", + }, + { + .key = "pokemini_rumble_lv", + .blocked = true, + }, + { NULL } +}; + +me_bind_action pokemini_ctrl_actions[] = +{ + { "UP ", 1 << RETRO_DEVICE_ID_JOYPAD_UP}, + { "DOWN ", 1 << RETRO_DEVICE_ID_JOYPAD_DOWN }, + { "LEFT ", 1 << RETRO_DEVICE_ID_JOYPAD_LEFT }, + { "RIGHT ", 1 << RETRO_DEVICE_ID_JOYPAD_RIGHT }, + { "A ", 1 << RETRO_DEVICE_ID_JOYPAD_A }, + { "B ", 1 << RETRO_DEVICE_ID_JOYPAD_B }, + { "C ", 1 << RETRO_DEVICE_ID_JOYPAD_R }, + { "TURBO A ", 1 << RETRO_DEVICE_ID_JOYPAD_X }, + { "SHAKE ", 1 << RETRO_DEVICE_ID_JOYPAD_L }, + { "POWER ", 1 << RETRO_DEVICE_ID_JOYPAD_SELECT }, + { NULL, 0 } +}; + +#define pokemini_overrides { \ + .core_name = "pokemini", \ + .actions = pokemini_ctrl_actions, \ + .action_size = array_size(pokemini_ctrl_actions), \ + .options = pokemini_core_option_overrides, \ + .defer_frames = 7, \ +} -- cgit v1.2.3