Age | Commit message (Collapse) | Author |
|
|
|
Cores do not always clean up on unload content, deinit and reinit is
more reliable.
Some cores do not even clean up on deinit and reinit, need all statics
reinitialized. On many platforms dlclose / dlopen will work. FunKey
uses musl libc where dlclose is no-op, so instead will exec again with
current core and new content path.
Overrides decide whether easy or hard clean up is needed. Assume
unknown cores need hard cleanup, otherwise specified by "needs_reopen"
override.
Also
- FunKey will now autosave and resume during load new content
- Load new content deferred until after menu responds to keypress,
otherwise key release can be missed and menu seems stuck
|
|
Avoids changes to emu state in the middle of a frame, caused problem
with fba and maybe rare problems with other cores
|
|
Fixes in-game quit for prboom, tyrquake, scummvm
|
|
|
|
|
|
On some devices, buttons are mapped to letter keys. During file
selection, libpicofe would respond to the button press and the letter
press, this could cause a freeze. Instead, button presses should never
be treated as letter presses.
|
|
|
|
Still uses old dir if exists to not need migration
|
|
|
|
Includes resume state patch from shauninman, thanks!
https://github.com/shauninman/picoarch/blob/miniui-miyoomini/patches/fake-08/001-fix-resume-state.patch
|
|
libpicofe handles emu keys differently, no need to delay them.
|
|
|
|
|
|
When resuming instant play, FunKey S saves path of executable after
launching executable in background. If this happens fast enough,
process will still be /bin/busybox, not /opt/picoarch, saving wrong
path, failing next launch. To workaround, should save path again
before suspending.
|
|
On small screen smooth looks better as default
|
|
Prevents fast forward stuck during FunKey Instant Play
|
|
|
|
Does not prevent buttons when no combo is bound, delays keyup of mod
key to allow normal handling, ignores combo key handling when no combo
keys are bound
|
|
Makes crop scaler more useful for PlayStation / SNES games that use
high horizontal resolution
|
|
|
|
Icons are downloaded when needed, for now
|
|
Suspending during loop caused corrupt states
|
|
Fixes issue with instant play on FunKey S
|
|
|
|
|
|
|
|
|
|
|
|
Original version was reverted, now more similar to new snes9x2002
version, allows fixed_interval when buffer status callback is missing.
|
|
Avoids float operations and redundant "1 -"
|
|
|
|
When DRC is on, game syncs to frame rate instead of audio buffer
capacity. Audio is resampled to generate more samples when buffer is
low and less when buffer is high, to keep buffer 40%-60% full. Buffer
size doubled to keep same avg. audio latency value.
Audio can distort when buffer is out of range, not often during
gameplay. Better resampler could improve but would be slower. When
buffer is always out of range (heavy frameskip), it is better to leave
off, DRC doesn't help anyway then.
Idea from RetroArch audio_driver.c and
https://near.sh/articles/audio/dynamic-rate-control
|
|
If core hasn't updated screen, no need to flip. Can save vsync delay,
makes ff faster
|
|
Small improvement to performance
|
|
|
|
|
|
|
|
|
|
picodrive now supports GG
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This keeps from hanging when audio is sent before content is
loaded (pcsx_rearmed). picoarch cannot know correct frame rate /
sample rate before content is loaded (incorrect to call
retro_get_system_av_info then) so best to just skip it
|