2020-05-29, 22:02
Hi there,
I started forking some libretro cores so they properly build for the Odroid XU4.
So I have cmake/addons/bootstrap/repositories/binary-addons.txt set to:
In my own repository I'm pointing some cores to my own forks so I can set the correct build flags instead of just "platform=unix" which fails for the XU4.
Example mupen64plus (updated to the next core):
https://github.com/MastaG/game.libretro....ts.txt#L22
and Flycast (bumped to the latest version):
https://github.com/MastaG/game.libretro....ad553bbe01
Now they build fine but when attempting to run the core, Kodi will not output any video on the screen:
The same core library works fine if I move it to RetroArch.
I tried to make a small change to the Kodi source because mali driver doesn't support dmabuf/gbm_bo_map/gbm_bo_unmap.
So it only gives GBM and OpenGLES when starting Kodi:
Bomberman works fine for example.
Any ideas?
I started forking some libretro cores so they properly build for the Odroid XU4.
So I have cmake/addons/bootstrap/repositories/binary-addons.txt set to:
Code:
binary-addons https://github.com/MastaG/repo-binary-addons.git Matrix
Example mupen64plus (updated to the next core):
https://github.com/MastaG/game.libretro....ts.txt#L22
and Flycast (bumped to the latest version):
https://github.com/MastaG/game.libretro....ad553bbe01
Now they build fine but when attempting to run the core, Kodi will not output any video on the screen:
Code:
2020-05-29 19:38:40.509 T:19868 INFO <general>: RetroPlayer[PLAYER]: No compatible game client selected, aborting playback
2020-05-29 19:39:10.327 T:19868 INFO <general>: RetroPlayer[PROCESS]: Created process info for GBM
2020-05-29 19:39:10.627 T:19868 INFO <general>: Loading controller layout: /home/odroid/.kodi/addons/game.controller.dreamcast/resources/layout.xml
2020-05-29 19:39:10.631 T:19868 INFO <general>: GAME: ------------------------------------
2020-05-29 19:39:10.631 T:19868 INFO <general>: GAME: Loaded DLL for game.libretro.flycast
2020-05-29 19:39:10.631 T:19868 INFO <general>: GAME: Client: Sega - Dreamcast/NAOMI (Flycast) at version 0.1.0.18
2020-05-29 19:39:10.631 T:19868 INFO <general>: GAME: Valid extensions: .7z .bin .cdi .chd .cue .dat .elf .gdi .iso .lst .m3u .zip
2020-05-29 19:39:10.631 T:19868 INFO <general>: GAME: Supports VFS: no
2020-05-29 19:39:10.631 T:19868 INFO <general>: GAME: Supports standalone execution: no
2020-05-29 19:39:10.631 T:19868 INFO <general>: GAME: ------------------------------------
2020-05-29 19:39:10.631 T:19868 INFO <general>: RetroPlayer[PLAYER]: Opening: /mnt/sdcard/src/RA_Profile/roms/dreamcast/Sonic Adventure International v1.003 (1999)(Sega)(NTSC)(JP)(M5)[!]/Sonic Adventure International v1.003 (1999)(Sega)(NTSC)(JP)(M5)[!].gdi
2020-05-29 19:39:10.632 T:19868 INFO <general>: AddOnLog: Sega - Dreamcast/NAOMI (Flycast): Rumble interface supported!
2020-05-29 19:39:10.632 T:19868 INFO <general>: AddOnLog: Sega - Dreamcast/NAOMI (Flycast): File extension is: .gdi
2020-05-29 19:39:10.636 T:19868 INFO <general>: AddOnLog: Sega - Dreamcast/NAOMI (Flycast): 00:00:636 hw/mem/_vmem.cpp:556 N[VMEM]: Info: nvmem is enabled, with addr space of size 512MB
2020-05-29 19:39:10.801 T:19868 INFO <general>: AddOnLog: Sega - Dreamcast/NAOMI (Flycast): Unable to find bios in /home/odroid/.kodi/addons/game.libretro.flycast/resources/system/dc/. Exiting...
2020-05-29 19:39:10.836 T:19868 ERROR <general>: AddOnLog: Sega - Dreamcast/NAOMI (Flycast): 00:00:836 nullDC.cpp:436 W[COMMON]: Did not load bios, using reios
2020-05-29 19:39:12.343 T:19868 INFO <general>: AddOnLog: Sega - Dreamcast/NAOMI (Flycast): 00:02:343 hw/maple/maple_devs.cpp:569 N[MAPLE]: Loaded VMU from file "/home/odroid/.kodi/addons/game.libretro.flycast/resources/system/dc/vmu_save_A1.bin"
2020-05-29 19:39:12.345 T:19868 INFO <general>: AddOnLog: Sega - Dreamcast/NAOMI (Flycast): 00:02:345 hw/maple/maple_devs.cpp:569 N[MAPLE]: Loaded VMU from file "/home/odroid/.kodi/addons/game.libretro.flycast/resources/system/dc/vmu_save_B1.bin"
2020-05-29 19:39:12.346 T:19868 INFO <general>: AddOnLog: Sega - Dreamcast/NAOMI (Flycast): 00:02:346 hw/maple/maple_devs.cpp:569 N[MAPLE]: Loaded VMU from file "/home/odroid/.kodi/addons/game.libretro.flycast/resources/system/dc/vmu_save_C1.bin"
2020-05-29 19:39:12.348 T:19868 INFO <general>: AddOnLog: Sega - Dreamcast/NAOMI (Flycast): 00:02:348 hw/maple/maple_devs.cpp:569 N[MAPLE]: Loaded VMU from file "/home/odroid/.kodi/addons/game.libretro.flycast/resources/system/dc/vmu_save_D1.bin"
2020-05-29 19:39:12.359 T:19868 INFO <general>: AddOnLog: Sega - Dreamcast/NAOMI (Flycast): 00:02:359 nullDC.cpp:152 N[BOOT]: [LUT]: Product number: HDR-0043 .
2020-05-29 19:39:12.371 T:19868 INFO <general>: GAME: ---------------------------------------
2020-05-29 19:39:12.371 T:19868 INFO <general>: GAME: Game loop: true
2020-05-29 19:39:12.371 T:19868 INFO <general>: GAME: FPS: 60.000000
2020-05-29 19:39:12.371 T:19868 INFO <general>: GAME: Sample Rate: 44100.000000
2020-05-29 19:39:12.371 T:19868 INFO <general>: GAME: Region: NTSC
2020-05-29 19:39:12.371 T:19868 INFO <general>: GAME: Savestate size: 28120411
2020-05-29 19:39:12.371 T:19868 INFO <general>: GAME: ---------------------------------------
2020-05-29 19:39:13.362 T:19868 INFO <general>: Loading skin file: VideoFullScreen.xml, load type: KEEP_IN_MEMORY
2020-05-29 19:39:13.367 T:19868 INFO <general>: Loading skin file: GameOSD.xml, load type: KEEP_IN_MEMORY
2020-05-29 19:39:13.389 T:19868 INFO <general>: Loading controller layout: /usr/local/share/kodi/addons/game.controller.snes/resources/layout.xml
2020-05-29 19:39:13.626 T:20805 INFO <general>: RetroPlayer[AUDIO]: Creating audio stream, format = AE_FMT_S16NE, sample rate = 44100, channels = 2
2020-05-29 19:42:03.226 T:19868 INFO <general>: Loading skin file: Custom_1101_SettingsList.xml, load type: KEEP_IN_MEMORY
2020-05-29 19:42:15.426 T:19868 INFO <general>: Loading skin file: DialogSelect.xml, load type: KEEP_IN_MEMORY
2020-05-29 19:42:15.428 T:19868 WARNING <general>: Trying to add unsupported control type 17
2020-05-29 19:42:15.428 T:19868 WARNING <general>: Trying to add unsupported control type 17
2020-05-29 19:42:19.860 T:19868 INFO <general>: Loading skin file: DialogSelect.xml, load type: KEEP_IN_MEMORY
2020-05-29 19:42:19.861 T:19868 WARNING <general>: Trying to add unsupported control type 17
2020-05-29 19:42:19.862 T:19868 WARNING <general>: Trying to add unsupported control type 17
2020-05-29 19:42:28.889 T:19868 INFO <general>: ADDON: Dll Destroyed - Sega - Dreamcast/NAOMI (Flycast)
The same core library works fine if I move it to RetroArch.
I tried to make a small change to the Kodi source because mali driver doesn't support dmabuf/gbm_bo_map/gbm_bo_unmap.
Code:
bool CWinSystemGbmGLESContext::InitWindowSystem()
{
VIDEOPLAYER::CRendererFactory::ClearRenderer();
CDVDFactoryCodec::ClearHWAccels();
CLinuxRendererGLES::Register();
RETRO::CRPProcessInfoGbm::Register();
/* RETRO::CRPProcessInfoGbm::RegisterRendererFactory(new RETRO::CRendererFactoryDMA); */
RETRO::CRPProcessInfoGbm::RegisterRendererFactory(new RETRO::CRendererFactoryOpenGLES);
...
/* #if defined(HAS_GBM_BO_MAP)
CGBMBufferObject::Register();
#endif */
#if defined(HAVE_LINUX_MEMFD) && defined(HAVE_LINUX_UDMABUF)
CUDMABufferObject::Register();
#endif
#if defined(HAVE_LINUX_DMA_HEAP)
CDMAHeapBufferObject::Register();
#endif
Code:
2020-05-29 19:36:04.538 T:19868 INFO <general>: RetroPlayer[PROCESS]: Registering process control for GBM
2020-05-29 19:36:04.538 T:19868 INFO <general>: RetroPlayer[RENDER]: Registering renderer factory for OpenGLES
Bomberman works fine for example.
Any ideas?