Errors building the new uae4arm core

Hi,

I have seen R-Type has a new uae4arm core on his repository. That’s beyond great for us ARM boards users!! The problem is that, when trying to build it, it seems to depend on SDL 1.x headers. SDL 1.x is bit-rotten an unsupported, so depending on these doesn’t make much sense anymore. Am I doing something wrong or should these dependencies be removed for the core?

It may not build correctly yet, as it looks very new, judging by the commit log. You could try making an issue at the github repo, but I would probably just wait a few days and see if it works itself out.

It builds correctly here, runs smoothly as well except for broken sound. Also I can’t find a way to show the GUI.

I have retried building today, on a Pi3, but I get these:

./src/od-retro/neon_helper.s: Assembler messages: ./src/od-retro/neon_helper.s:76: Error: VFP single precision register expected – vldmia r1!,{q8,q9}' ./src/od-retro/neon_helper.s:77: Error: selected processor does not support ARM modevrev16.8 q8,q8’ ./src/od-retro/neon_helper.s:78: Error: VFP single precision register expected – vldmia r1!,{q10}' ./src/od-retro/neon_helper.s:79: Error: selected processor does not support ARM modevrev16.8 q9,q9’ ./src/od-retro/neon_helper.s:80: Error: VFP single precision register expected – vldmia r1!,{q11}' ./src/od-retro/neon_helper.s:81: Error: selected processor does not support ARM modevrev16.8 q10,q10’ ./src/od-retro/neon_helper.s:82: Error: VFP single precision register expected – vldmia r1!,{q12}' ./src/od-retro/neon_helper.s:83: Error: selected processor does not support ARM modevrev16.8 q11,q11’ ./src/od-retro/neon_helper.s:84: Error: VFP single precision register expected – vldmia r1!,{q13}' ./src/od-retro/neon_helper.s:85: Error: selected processor does not support ARM modevrev16.8 q12,q12’

…etc

Has anybody else tried building this on a Pi3?

[QUOTE=vanfanel;40972]I have retried building today, on a Pi3, but I get these:

./src/od-retro/neon_helper.s: Assembler messages: ./src/od-retro/neon_helper.s:76: Error: VFP single precision register expected – vldmia r1!,{q8,q9}' ./src/od-retro/neon_helper.s:77: Error: selected processor does not support ARM modevrev16.8 q8,q8’ ./src/od-retro/neon_helper.s:78: Error: VFP single precision register expected – vldmia r1!,{q10}' ./src/od-retro/neon_helper.s:79: Error: selected processor does not support ARM modevrev16.8 q9,q9’ ./src/od-retro/neon_helper.s:80: Error: VFP single precision register expected – vldmia r1!,{q11}' ./src/od-retro/neon_helper.s:81: Error: selected processor does not support ARM modevrev16.8 q10,q10’ ./src/od-retro/neon_helper.s:82: Error: VFP single precision register expected – vldmia r1!,{q12}' ./src/od-retro/neon_helper.s:83: Error: selected processor does not support ARM modevrev16.8 q11,q11’ ./src/od-retro/neon_helper.s:84: Error: VFP single precision register expected – vldmia r1!,{q13}' ./src/od-retro/neon_helper.s:85: Error: selected processor does not support ARM modevrev16.8 q12,q12’

…etc

Has anybody else tried building this on a Pi3?[/QUOTE]

hi vanfanel,

For your error , it seem you build the S src with different option than the rest of C src.

make sure you have same flags in CFLAGS like in CPU_FLAGS for the Arm float stuff. for pi3 something like


 -marm -mcpu=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard

i have to fix makefile to ensure correct building if build on a arm host (i cross-compile so don’t have the pb)

@arokh sorry but no gui for now , you have to play with cfg file ;(

@r-type: got it to build. I added a Raspberry Pi 3 platform definition to the Makefile:

else ifeq ($(platform), rpi3) TARGET := $(TARGET_NAME)libretro.so fpic = -fPIC SHARED :=-shared -Wl,–version-script=$(CORE_DIR)/libretro/link.T -Wl,–no-undefined PLATFORM_DEFINES += -marm -mcpu=cortex-a53 -mfpu=neon-fp-armv8 -mfloat-abi=hard CPU_FLAGS += -marm -mcpu=cortex-a53 -mfpu=neon-fp-armv8 -mfloat-abi=hard -D__arm_ -DARM_ASM -D__NEON_OPT PLATFORM_DEFINES += -DLSB_FIRST -DALIGN_DWORD -DWITH_LOGGING HAVE_NEON = 1 USE_PICASSO96 = 1 CFLAGS += $(PLATFORM_DEFINES) CXXFLAGS += $(PLATFORM_DEFINES) CC = gcc CXX = g++ LDFLAGS += -lz -lpthread

And now it builds. However, all I get is a black screen al these EGL errors (I am trying this on the EGL/GLES RA renderer):

pi@raspberrypi:~/retro $ ./retroarch -L cores/uae4arm_libretro.so amiga/Enchanted\ Land\ (1990)(Thalion)[cr\ EP].adf Retro SYSTEM_DIRECTORY amiga/ Retro SAVE_DIRECTORY amiga/ Retro CONTENT_DIRECTORY /home/pi/.config/retroarch/downloads [libretro-vice]: Got size: 320 x 240. [libretro-vice]: Got size: 320 x 240. 0 uaearm 1 -s 2 floppy0=amiga/Enchanted Land (1990)(Thalion)[cr EP].adf spd(amiga//uae4arm) UAE4ALL Logfile

Total physical RAM 925M. Attempting to reserve: 96M. Reserved: 0x6e5f3000-0x745f3000 (0x06000000 96M) Uae4arm v0.4 for Raspberry Pi by Chips 0: 640x400, 16-bit (50,60) 1: 640x480, 16-bit (50,60) 2: 800x480, 16-bit (50,60) 3: 800x600, 16-bit (50,60) 4: 1024x768, 16-bit (50,60) 5: 1152x864, 16-bit (50,60) 6: 1280x960, 16-bit (50,60) load config ‘amiga//uae4arm/conf/uaeconfig.uae’:3 load failed No config file amiga//uae4arm/conf/uaeconfig.conf! failed to load config ‘amiga//uae4arm/conf/uaeconfig.uae’ starting sound thread… uaegfx.card magic code: 00000FA0-000010DE ABI=00000000 Don’t care mouse mode set retro:(320,240) gfx(640,256) starting sound thread… snd hardreset, memory cleared starting sound thread… snd eglCreateImageKHR: failed to create image for buffer 0x80000065 target 12474 error 0x3003 eglCreateImageKHR: failed to create image for buffer 0x80000064 target 12474 error 0x3003 eglCreateImageKHR: failed to create image for buffer 0x80000067 target 12474 error 0x3003 eglCreateImageKHR: failed to create image for buffer 0x80000063 target 12474 error 0x3003 eglCreateImageKHR: failed to create image for buffer 0x80000062 target 12474 error 0x3003 eglCreateImageKHR: failed to create image for buffer 0x80000066 target 12474 error 0x3003 eglCreateImageKHR: failed to create image for buffer 0x8000005f target 12474 error 0x3003 eglCreateImageKHR: failed to create image for buffer 0x8000005e target 12474 error 0x3003 eglCreateImageKHR: failed to create image for buffer 0x8000005d target 12474 error 0x3003 eglCreateImageKHR: failed to create image for buffer 0x80000060 target 12474 error 0x3003 eglCreateImageKHR: failed to create image for buffer 0x80000061 target 12474 error 0x3003 eglCreateImageKHR: failed to create image for buffer 0x8000005a target 12474 error 0x3003 eglCreateImageKHR: failed to create image for buffer 0x80000059 target 12474 error 0x3003

…As you can see, kick.rom is loaded (it would yield an error otherwise). Anyway, am I supposed to pass an ADF or a config file? It it’s an ADF, can you make it read a config file instead? That way I can specify system type, discs, kickrom path, etc…

[QUOTE=vanfanel;41024]@r-type: got it to build. I added a Raspberry Pi 3 platform definition to the Makefile:

else ifeq ($(platform), rpi3) TARGET := $(TARGET_NAME)libretro.so fpic = -fPIC SHARED :=-shared -Wl,–version-script=$(CORE_DIR)/libretro/link.T -Wl,–no-undefined PLATFORM_DEFINES += -marm -mcpu=cortex-a53 -mfpu=neon-fp-armv8 -mfloat-abi=hard CPU_FLAGS += -marm -mcpu=cortex-a53 -mfpu=neon-fp-armv8 -mfloat-abi=hard -D__arm_ -DARM_ASM -D__NEON_OPT PLATFORM_DEFINES += -DLSB_FIRST -DALIGN_DWORD -DWITH_LOGGING HAVE_NEON = 1 USE_PICASSO96 = 1 CFLAGS += $(PLATFORM_DEFINES) CXXFLAGS += $(PLATFORM_DEFINES) CC = gcc CXX = g++ LDFLAGS += -lz -lpthread

And now it builds. However, all I get is a black screen al these EGL errors (I am trying this on the EGL/GLES RA renderer):

pi@raspberrypi:~/retro $ ./retroarch -L cores/uae4arm_libretro.so amiga/Enchanted\ Land\ (1990)(Thalion)[cr\ EP].adf Retro SYSTEM_DIRECTORY amiga/ Retro SAVE_DIRECTORY amiga/ Retro CONTENT_DIRECTORY /home/pi/.config/retroarch/downloads [libretro-vice]: Got size: 320 x 240. [libretro-vice]: Got size: 320 x 240. 0 uaearm 1 -s 2 floppy0=amiga/Enchanted Land (1990)(Thalion)[cr EP].adf spd(amiga//uae4arm) UAE4ALL Logfile

Total physical RAM 925M. Attempting to reserve: 96M. Reserved: 0x6e5f3000-0x745f3000 (0x06000000 96M) Uae4arm v0.4 for Raspberry Pi by Chips 0: 640x400, 16-bit (50,60) 1: 640x480, 16-bit (50,60) 2: 800x480, 16-bit (50,60) 3: 800x600, 16-bit (50,60) 4: 1024x768, 16-bit (50,60) 5: 1152x864, 16-bit (50,60) 6: 1280x960, 16-bit (50,60) load config ‘amiga//uae4arm/conf/uaeconfig.uae’:3 load failed No config file amiga//uae4arm/conf/uaeconfig.conf! failed to load config ‘amiga//uae4arm/conf/uaeconfig.uae’ starting sound thread… uaegfx.card magic code: 00000FA0-000010DE ABI=00000000 Don’t care mouse mode set retro:(320,240) gfx(640,256) starting sound thread… snd hardreset, memory cleared starting sound thread… snd eglCreateImageKHR: failed to create image for buffer 0x80000065 target 12474 error 0x3003 eglCreateImageKHR: failed to create image for buffer 0x80000064 target 12474 error 0x3003 eglCreateImageKHR: failed to create image for buffer 0x80000067 target 12474 error 0x3003 eglCreateImageKHR: failed to create image for buffer 0x80000063 target 12474 error 0x3003 eglCreateImageKHR: failed to create image for buffer 0x80000062 target 12474 error 0x3003 eglCreateImageKHR: failed to create image for buffer 0x80000066 target 12474 error 0x3003 eglCreateImageKHR: failed to create image for buffer 0x8000005f target 12474 error 0x3003 eglCreateImageKHR: failed to create image for buffer 0x8000005e target 12474 error 0x3003 eglCreateImageKHR: failed to create image for buffer 0x8000005d target 12474 error 0x3003 eglCreateImageKHR: failed to create image for buffer 0x80000060 target 12474 error 0x3003 eglCreateImageKHR: failed to create image for buffer 0x80000061 target 12474 error 0x3003 eglCreateImageKHR: failed to create image for buffer 0x8000005a target 12474 error 0x3003 eglCreateImageKHR: failed to create image for buffer 0x80000059 target 12474 error 0x3003

…As you can see, kick.rom is loaded (it would yield an error otherwise). Anyway, am I supposed to pass an ADF or a config file? It it’s an ADF, can you make it read a config file instead? That way I can specify system type, discs, kickrom path, etc…[/QUOTE]

Not core related. Increase your gpu_mem in config.txt and reboot. 128. Should be ok maybe 256 not sure

.

@r-type could you rebuild the make file to support rpi3 , I´ve tried to compile the libretro but it gave me an error during the proccess. Or unless paste the exactly code to add on it , thanks.