hatari
hatari copied to clipboard
Android buildbot not latest version (armeabi-v7a)
Hi, the latest version of Hatari on http://buildbot.libretro.com/nightly/android/latest/armeabi-v7a/ is from 13 Nov 2018. @markwkidd I noticed you made the commit after this and wonder if the Android version got broken ? There have been 6 commit hashes since then so wondered why they are not being built on Android ? Could you take a quick look please ? The current version de5e743 crashes.
I have never made any commits to this core, I'm afraid. Looking at the commit history, maybe you should check with @swingflip about this.
Sorry, in the commit history I saw your handle https://github.com/libretro/hatari/commit/b7d86ff5a0f016cef05b145098b532600494ad32 mad monkey patch ? The latest version hasn't built since this date.
@markwkidd If you've never made any commits to this core, did you add the 'mad monkey patch' commit to the wrong github by mistake ? Maybe this is why the buildbot isn't updating it past that date ?
I apologize, it seems I did submit that patch on behalf of someone who doesn't use GitHub. I now feel slightly more responsible helping resolve this but since I don't know this core and I'm working from a smartphone for the next day it two maybe @twinaphex could connect us with a Hatari core coder?
@markwkidd Hi, have you had any time to quickly check this ? I'm not saying your commit has broken it, it just seems weird that the buildbot hasn't updated since Nov 13 2018. twinaphex doesn't respond to any tag. I don't think he's bothered about Android :(
twinaphex manages more than 100 public github repositories. Please don't take it personally or as any kind of an insult to Android. I will set up a Hatari build environment soon, but I am traveling at the moment and I'm still hoping I can bring in someone with more expertise on this core. I will see if anyone in the libretro Discord channel could take a look.
Thank you for staying on this issue. Having someone politely but consistently advocating for a fix can make a difference
It's not building right for me even in the standard RetroArch Windows/msys2 environment. More to follow, but for now:
** BUILDING hatari_libretro.dll FOR PLATFORM win **
cc -std=gnu99 -fsigned-char -D__LIBRETRO__ -fno-builtin -funroll-loops -ffast-math -fomit-frame-pointer -DGIT_VERSION=\"" 42388bbd"\" -O3 -DLSB_FIRST -DALIGN_DWORD -DWIN32PORT -DWIN32 -I./src -I./src/uae-cpu -I./src/falcon -I./src/includes -I./src/debug -I./src -I./libretro -I./libretro/libretro-sdk/include -I./libretro/include -I./libretro/utils -I./libretro/uae-cpu-pregen -lm -lz -shared -static-libgcc -s -Wl,--version-script=./libretro/link.T -Wl,--no-undefined ./libretro/uae-cpu-pregen/cpudefs.o ./libretro/uae-cpu-pregen/cpuemu.o ./libretro/uae-cpu-pregen/cpustbl.o ./src/uae-cpu/hatari-glue.o ./src/uae-cpu/memory.o ./src/uae-cpu/newcpu.o ./src/uae-cpu/readcpu.o ./src/uae-cpu/fpp.o ./libretro/gui-retro/dlgAbout.o ./libretro/gui-retro/dlgAlert.o ./libretro/gui-retro/dlgDevice.o ./libretro/gui-retro/dlgFileSelect.o ./libretro/gui-retro/dlgFloppy.o ./libretro/gui-retro/dlgHardDisk.o ./libretro/gui-retro/dlgJoystick.o ./libretro/gui-retro/dlgKeyboard.o ./libretro/gui-retro/dlgMain.o ./libretro/gui-retro/dlgMemory.o ./libretro/gui-retro/dlgNewDisk.o ./libretro/gui-retro/dlgRom.o ./libretro/gui-retro/dlgScreen.o ./libretro/gui-retro/dlgSound.o ./libretro/gui-retro/dlgSystem.o ./libretro/gui-retro/sdlgui.o ./src/falcon/crossbar.o ./src/falcon/dsp.o ./src/falcon/dsp_core.o ./src/falcon/dsp_cpu.o ./src/falcon/dsp_disasm.o ./src/falcon/hostscreen.o ./src/falcon/microphone.o ./src/falcon/nvram.o ./src/falcon/videl.o ./src/debug/log.o ./src/debug/debugui.o ./src/debug/breakcond.o ./src/debug/debugcpu.o ./src/debug/debugInfo.o ./src/debug/debugdsp.o ./src/debug/evaluate.o ./src/debug/history.o ./src/debug/symbols.o ./src/debug/profile.o ./src/debug/profilecpu.o ./src/debug/profiledsp.o ./src/debug/natfeats.o ./src/debug/console.o ./src/debug/68kDisass.o ./src/createBlankImage.o ./src/dim.o ./src/msa.o ./src/st.o ./src/zip.o ./src/acia.o ./src/audio.o ./src/avi_record.o ./src/bios.o ./src/blitter.o ./src/cart.o ./src/cfgopts.o ./src/clocks_timings.o ./src/configuration.o ./src/options.o ./src/change.o ./src/control.o ./src/cycInt.o ./src/cycles.o ./src/dialog.o ./src/dmaSnd.o ./src/fdc.o ./src/file.o ./src/floppy.o ./src/floppy_ipf.o ./src/floppy_stx.o ./src/gemdos.o ./src/hd6301_cpu.o ./src/hdc.o ./src/ide.o ./src/ikbd.o ./src/ioMem.o ./src/ioMemTabST.o ./src/ioMemTabSTE.o ./src/ioMemTabTT.o ./src/ioMemTabFalcon.o ./src/joy.o ./src/keymap.o ./src/m68000.o ./src/main.o ./src/midi.o ./src/memorySnapShot.o ./src/mfp.o ./src/paths.o ./src/psg.o ./src/printer.o ./src/resolution.o ./src/rs232.o ./src/reset.o ./src/rtc.o ./src/scandir.o ./src/stMemory.o ./src/screen.o ./src/screenSnapShot.o ./src/shortcut.o ./src/sound.o ./src/spec512.o ./src/statusbar.o ./src/str.o ./src/tos.o ./src/unzip.o ./src/utils.o ./src/vdi.o ./src/video.o ./src/wavFormat.o ./src/xbios.o ./src/ymFormat.o ./libretro/libretro-sdk/libco/libco.o ./libretro/libretro.o ./libretro/hatari-mapper.o ./libretro/vkbd.o ./libretro/graph.o ./libretro/bmp.o ./libretro/retro_strings.o ./libretro/retro_files.o ./libretro/retro_disk_control.o -o hatari_libretro.dll
./src/file.o:file.c:(.text+0x55e): undefined reference to `gzopen'
./src/file.o:file.c:(.text+0x574): undefined reference to `gzwrite'
./src/file.o:file.c:(.text+0x581): undefined reference to `gzclose'
./src/file.o:file.c:(.text+0xa2e): undefined reference to `gzopen'
./src/file.o:file.c:(.text+0xa44): undefined reference to `gzeof'
./src/file.o:file.c:(.text+0xa59): undefined reference to `gzread'
./src/file.o:file.c:(.text+0xaa4): undefined reference to `gztell'
./src/file.o:file.c:(.text+0xab0): undefined reference to `gzrewind'
./src/file.o:file.c:(.text+0xad2): undefined reference to `gzread'
./src/file.o:file.c:(.text+0xade): undefined reference to `gzclose'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0x4b): undefined reference to `gzopen'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0x75): undefined reference to `gzwrite'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0xb3): undefined reference to `gzwrite'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0xd8): undefined reference to `gzopen'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0x105): undefined reference to `gzread'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0x149): undefined reference to `gzwrite'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0x1b2): undefined reference to `gzread'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0x201): undefined reference to `gzread'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0x26c): undefined reference to `gzseek'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0x2b6): undefined reference to `gzread'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0x2d1): undefined reference to `gzwrite'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0x437): undefined reference to `gzread'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0x44f): undefined reference to `gzclose'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0x483): undefined reference to `gzwrite'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0x5db): undefined reference to `gzread'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0x5f3): undefined reference to `gzclose'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0x621): undefined reference to `gzwrite'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0x679): undefined reference to `gzread'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0x691): undefined reference to `gzwrite'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0x6ca): undefined reference to `gzread'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0x6e1): undefined reference to `gzwrite'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0x715): undefined reference to `gzread'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0x731): undefined reference to `gzwrite'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0x765): undefined reference to `gzread'
./src/memorySnapShot.o:memorySnapShot.c:(.text+0x781): undefined reference to `gzwrite'
./src/unzip.o:unzip.c:(.text+0xff5): undefined reference to `inflateEnd'
./src/unzip.o:unzip.c:(.text+0x16a7): undefined reference to `inflateInit2_'
./src/unzip.o:unzip.c:(.text+0x16d5): undefined reference to `inflateEnd'
./src/unzip.o:unzip.c:(.text+0x1a60): undefined reference to `crc32'
./src/unzip.o:unzip.c:(.text+0x1aca): undefined reference to `inflate'
./src/unzip.o:unzip.c:(.text+0x1aeb): undefined reference to `crc32'
./src/unzip.o:unzip.c:(.text+0x1ca5): undefined reference to `inflateEnd'
collect2.exe: error: ld returned 1 exit status
make: *** [Makefile:182: hatari_libretro.dll] Error 1
Definitely looking like something wrong with the makefile or includes
@twinaphex @r-type Sorry to bother you guys, is there any chance of a fix for this so that it works on Android please ? And why did the buildbot stop building the latest ?
Hi @2xtime and @markwkidd, this was part of the classic platform update we did for arm based classic consoles. We did this a while ago but IIRC this build wasn’t building at all for the Linux side of things and hadn’t received an update before that for a while. We fixed this up for the Linux district side of things but it’s very possible there was other things broken with the build.
Again as mark stated we are very busy so don’t take offence. There is a lot going on.
We would need a stdout log from retroarch to be able to peruse it further though and even better a gdb log if possible.
@swingflip Here is my adb log, sometimes it says the TOS is invalid and sometimes it just completely crashes. The build i'm using is the latest on the buildbot de5e743 (but that's 6 commits behind Github).
https://gist.github.com/2xtime/982c563aeec3b7fe9fce7997fdce3186
@2xtime hmm this log doesn’t make much sense and the change above shouldn’t be the cause the crash. It appears it crashes directly after detected the profiles for inputs and then it just frees the ALSA audio.
Can you load the core on its own without crashing? If there was something in the build I would expect the core not to load at all let alone with content.
I’m afraid I’m a bit stumped as why this is happening. There is nothing in the log to state it crashed because of X
@swingflip Yes, I can load the core on it's own. It's only when I load a game it says the TOS is invalid (and sometimes crashes RetroArch before I get any TOS warning). I am using the exact md5 tos.img that's required and it confirms as 'Present' in the Core Information. I have tried the 'hatari.cfg' as mentioned in the Libretro Docs but doesn't make any difference.
There must be something wrong because the buildbot version is not the latest (6 commits behind), so somethings stopping it from building.
It works fine on Windows RetroArch.
yeah I think this build is fucked @2xtime @markwkidd I looked through my commit history and couldn't see why that patch was needed in the end (I am not madmonkey anyway) and if I suggested the patch, I can't for the life of me find out why it's required at the moment.
I also noticed the core it self is pretty shit with hardcoding for the clock speed of 50hz instead of 60hz so I added a core option to that and cranked it to 60hz and also added a 320x240 internal res option to boost perf on lower end devices.
When I confirm the build is ok can you build it from my fork and give it a go please.
Still nothing on this one ? @twinaphex Apart from the bug I reported with the latest RetroArch constantly crashing on Android Kitkat, the buildbot still hasn't built this core on ARM or x86 since 13 Nov 2018. What's going on ?
Does this core work for anyone on Android ?