Re: NEW: emulation/ppsspp-1.3
On Sun, Jun 18, 2017 at 11:28:15AM +0200, Jakub Skrzypnik wrote: > Good morning, > > Today I ported the PPSSPP, an emulator of Sony PlayStation Portable > console. > > Runs actually neat, even on integrated graphics. > Tested with: > - cube.elf (the spinning 3D cube program from PPSSPP homepage) > - Suicide Barbie by The Black Lotus > - flower demo by Moppi Productions > - Bloody Memories by TRSi and TiTAN > > All of these ran without major hiccups, but I haven't fiddled with > upscaling and other cany effects which can be enabled. > > Build system is pretty messy, I wasted few hours for non-defining > BSD_VISIBLE definition (added it to C{,XX}FLAGS finally), even if this > code has signs of some care about OpenBSD (doas a special #ifdefs for > us at some moments). > > From DESCR: > > PPSSPP is an Sony PlayStation Portable emulator using HLE (high-Level > > Emulation), so you don't need a operating system's ROM to use it. > > PS: I used my own storage for DISTFILES, becuase the Git source tree > contains about 10 submodules, not needed by any other software. It > would be useless to deal with them as separate distfiles, since all of > these are synced with the same versioning schema. Hi, I saw this get committed to the ports tree by bently@ and gave it a whirl. Really cool stuff! I can get my GTA fix while openrw comes together now ;-) Thanks for your efforts on this Jakub, others for helping, and bently@ for committing! -ryan
Re: NEW: emulation/ppsspp-1.3
Jakub Skrzypnikwrites: > USE_WXNEEDED = Yes JIT supports W^X, see https://github.com/hrydgard/ppsspp/issues/8943 Maybe try the following instead --- Common/MemoryUtil.cpp~ +++ Common/MemoryUtil.cpp @@ -281,7 +281,7 @@ void FreeAlignedMemory(void* ptr) { bool PlatformIsWXExclusive() { // Only iOS really needs this mode currently. Even without block linking, still should be much faster than IR JIT. // This might also come in useful for UWP (Universal Windows Platform) if I'm understanding things correctly. -#if defined(IOS) || PPSSPP_PLATFORM(UWP) +#if defined(IOS) || PPSSPP_PLATFORM(UWP) || defined(__OpenBSD__) return true; #else // Returning true here lets you test the W^X path on Windows and other non-W^X platforms.
Re: NEW: emulation/ppsspp-1.3
Jakub Skrzypnikwrites: > Build system is pretty messy, I wasted few hours for non-defining > BSD_VISIBLE definition (added it to C{,XX}FLAGS finally), Have you tried to remove -D_XOPEN_SOURCE* lines in CMakeLists.txt? Each BSD seems to have slightly different way to hide namespace pollution to be POSIX-ly correct. > > From DESCR: >> PPSSPP is an Sony PlayStation Portable emulator using HLE (high-Level >> Emulation), so you don't need a operating system's ROM to use it. > > PS: I used my own storage for DISTFILES, becuase the Git source tree > contains about 10 submodules, PPSSPP v1.3 only needs 3 distfiles while v1.4 - only 6. It should build fine without downloading submodules for dx9sdk, ffmpeg, pspautotests or glslang (before v1.4). > LIB_DEPENDS = graphics/ffmpeg \ Beware of https://github.com/hrydgard/ppsspp/issues/9026 > graphics/png\ PPSSPP v1.3 has bundled libpng v1.7.0beta35 which is affected by CVE-2016-10087, CVE-2015-8472, CVE-2015-8126, CVE-2014-9495, CVE-2015-0973. Maybe unbundle e.g., https://svnweb.freebsd.org/ports/head/emulators/ppsspp/files/patch-system-libpng16?revision=422387=markup >archivers/snappy\ libzip can also be unbundled. > CONFIGURE_ARGS =-DUSE_SYSTEM_FFMPEG=True arm* may also want -DUSING_EGL=off as EGL doesn't seem to work with X11. aarch64 would have to wait for v1.4 or later.
NEW: emulation/ppsspp-1.3
Good morning, Today I ported the PPSSPP, an emulator of Sony PlayStation Portable console. Runs actually neat, even on integrated graphics. Tested with: - cube.elf (the spinning 3D cube program from PPSSPP homepage) - Suicide Barbie by The Black Lotus - flower demo by Moppi Productions - Bloody Memories by TRSi and TiTAN All of these ran without major hiccups, but I haven't fiddled with upscaling and other cany effects which can be enabled. Build system is pretty messy, I wasted few hours for non-defining BSD_VISIBLE definition (added it to C{,XX}FLAGS finally), even if this code has signs of some care about OpenBSD (doas a special #ifdefs for us at some moments). From DESCR: > PPSSPP is an Sony PlayStation Portable emulator using HLE (high-Level > Emulation), so you don't need a operating system's ROM to use it. PS: I used my own storage for DISTFILES, becuase the Git source tree contains about 10 submodules, not needed by any other software. It would be useless to deal with them as separate distfiles, since all of these are synced with the same versioning schema. ppsspp-1.3.tgz Description: application/compressed-tar