psp, enable using new pspdev, fix some bugs

This commit is contained in:
kub 2022-09-29 23:24:43 +00:00
parent 0e67fb6011
commit a2d1369cb5
5 changed files with 16 additions and 16 deletions

@ -1 +1 @@
Subproject commit f5b32cc30c98b1772cdfd4ed1ff5476dced770cc
Subproject commit 1889fe241c1c6059f8955a331dd07f08a47cd0b4

View file

@ -140,7 +140,6 @@ static struct {
{ PSP_CTRL_SQUARE, PBTN_MA3 },
{ PSP_CTRL_LTRIGGER, PBTN_L },
{ PSP_CTRL_RTRIGGER, PBTN_R },
{ PSP_CTRL_SELECT, PBTN_MENU },
};
#define KEY_PBTN_MAP_SIZE (sizeof(key_pbtn_map) / sizeof(key_pbtn_map[0]))

View file

@ -1,12 +1,12 @@
static const char *men_hscaling_opts[] = { "OFF", "4:3", "wide", "fullscreen", NULL };
static const char *men_vscaling_opts[] = { "OFF", "4:3", "fullscreen", NULL };
static const char *men_filter_opts[] = { "nearest", "bilinear" };
static const char *men_filter_opts[] = { "nearest", "bilinear", NULL };
#define MENU_OPTIONS_GFX \
mee_enum ("Horizontal scaling", MA_OPT_SCALING, currentConfig.scaling, men_hscaling_opts), \
mee_enum ("Vertical scaling", MA_OPT_VSCALING, currentConfig.vscaling, men_vscaling_opts), \
mee_enum_h ("Scaler type", MA_OPT3_FILTERING, currentConfig.filter, men_filter_opts, NULL), \
mee_enum ("Scaler type", MA_OPT3_FILTERING, currentConfig.filter, men_filter_opts), \
mee_range ("Gamma adjustment", MA_OPT3_GAMMAA, currentConfig.gamma, -4, 16), \
mee_range ("Black level", MA_OPT3_BLACKLVL, currentConfig.gamma2, 0, 2), \
mee_onoff ("Wait for vsync", MA_OPT3_VSYNC, currentConfig.EmuOpt, EOPT_VSYNC), \

View file

@ -117,7 +117,7 @@ int plat_get_root_dir(char *dst, int len)
/* base directory for emulator resources */
int plat_get_skin_dir(char *dst, int len)
{
if (len > 4)
if (len > 5)
strcpy(dst, "skin/");
else if (len > 0)
*dst = 0;
@ -127,7 +127,7 @@ int plat_get_skin_dir(char *dst, int len)
/* top directory for rom images */
int plat_get_data_dir(char *dst, int len)
{
if (len > 4)
if (len > 5)
strcpy(dst, "ms0:/");
else if (len > 0)
*dst = 0;
@ -237,7 +237,7 @@ struct plat_target plat_target = {
// .hwfilters = plat_hwfilters,
};
#ifndef DT_DIR
/* replacement libc stuff */
int alphasort(const struct dirent **a, const struct dirent **b)
@ -319,14 +319,6 @@ end:
return ret;
}
int _flush_cache (char *addr, const int size, const int op)
{
//sceKernelDcacheWritebackAll();
sceKernelDcacheWritebackRange(addr, size);
sceKernelIcacheInvalidateRange(addr, size);
return 0;
}
/* stubs for libflac (embedded in libchdr) */
#include <utime.h>
#include <malloc.h>
@ -336,3 +328,12 @@ int chmod(const char *pathname, mode_t mode) { return -1; }
int utime(const char *filename, const struct utimbuf *times) { return -1; }
int posix_memalign(void **memptr, size_t alignment, size_t size)
{ *memptr = memalign(alignment, size); return 0; }
#endif
int _flush_cache (char *addr, const int size, const int op)
{
//sceKernelDcacheWritebackAll();
sceKernelDcacheWritebackRange(addr, size);
sceKernelIcacheInvalidateRange(addr, size);
return 0;
}

View file

@ -196,7 +196,7 @@ void psp_video_flip(int wait_vsync, int other)
{
unsigned long fb = (unsigned long)psp_screen & ~0x40000000;
if (other) fb ^= 0x44000;
if (wait_vsync) sceDisplayWaitVblankStart();
//if (wait_vsync) sceDisplayWaitVblankStart();
sceDisplaySetFrameBuf((void *)fb, 512, PSP_DISPLAY_PIXEL_FORMAT_565,
wait_vsync ? PSP_DISPLAY_SETBUF_IMMEDIATE : PSP_DISPLAY_SETBUF_NEXTFRAME);
current_screen ^= 1;