Fuse libretro

Struggling with Fuse or trying to find an emulator with a specific feature. Ask your questions here.
Post Reply
User avatar
Pegaz
Dynamite Dan
Posts: 1210
Joined: Mon Nov 13, 2017 1:44 pm

Fuse libretro

Post by Pegaz »

I'd like to make a libretro version for the latest Fuse emulator but I don't know how to do it.
As far as I can see, the last libretro build available is v1.1.1, which is very old.
I'm not a particular Linux expert, so could anyone explain to me, how can I update libretro Fuse to the latest version.
Thanks.
User avatar
Ersh
Manic Miner
Posts: 480
Joined: Mon Nov 13, 2017 1:06 pm

Re: Fuse libretro

Post by Ersh »

Did you figure it out? I'd be very much interested in having an up to date FUSE core in RetroArch as well.
User avatar
Pegaz
Dynamite Dan
Posts: 1210
Joined: Mon Nov 13, 2017 1:44 pm

Re: Fuse libretro

Post by Pegaz »

Unfortunately I didn't.
The person who made the last update back in 2013 promised to do the update, but he didn't.
https://github.com/libretro/fuse-libretro/issues/33
I don't know why the libretro version is so much harder to update, that no one else has been able to do it.
I would do it myself but I really don't know how.
If there's a Linux guru who would be willing to do this or explain how...
Just can't believe that only one man knows how to do such a thing and that everyone depends on his good will for 6 years.
User avatar
Ersh
Manic Miner
Posts: 480
Joined: Mon Nov 13, 2017 1:06 pm

Re: Fuse libretro

Post by Ersh »

Reading a bit, it seems to need quite some work to utilize the libretro API. So yeah, if anyone got the skills and time, it'd be greatly appreciated.
User avatar
Ersh
Manic Miner
Posts: 480
Joined: Mon Nov 13, 2017 1:06 pm

Re: Fuse libretro

Post by Ersh »

Someone posted a FUSE libretro bounty a while back and that seems to have sparked some interest. See here: https://github.com/libretro/fuse-libretro

I haven't tried it yet, but a 1.6.0 version of the core is currently available in the nightlies.
User avatar
PeterJ
Site Admin
Posts: 6873
Joined: Thu Nov 09, 2017 7:19 pm
Location: Surrey, UK

Re: Fuse libretro

Post by PeterJ »

I just updated RetroPie, and it seems to be now using 1.6.
Smeagol
Drutt
Posts: 6
Joined: Tue May 04, 2021 2:31 pm

Re: Fuse libretro

Post by Smeagol »

Hello everyone! Just created an account here when I stumbled on this post :-)

I am the contributor of the recent fuse-libretro update to 1.6.0. It should be available now with any front-end or distribution that fetches the latest version of the code (like RetroPie). For some others like RecalBox etc., it might take longer until they bump the version of the core they bundle...

Hopefully it will work for you, happy to chat about any questions or issues you might have! I am really just getting up to speed on the whole RetroArch/libretro ecosystem, but I will do my best to help :-)

I only got back into emulation recently, but the ZX Spectrum was my first computer, and it was fun launching a bunch of old games to do the testing!
User avatar
PeterJ
Site Admin
Posts: 6873
Joined: Thu Nov 09, 2017 7:19 pm
Location: Surrey, UK

Re: Fuse libretro

Post by PeterJ »

Hi [mention]Smeagol[/mention],

If you load the TAP version of Frogger for the Timex Tx2068 the Spectrum screen shrinks to the top left of the monitor and the game does not load. The TZX version of the same file works fine.

Image

Image
Smeagol
Drutt
Posts: 6
Joined: Tue May 04, 2021 2:31 pm

Re: Fuse libretro

Post by Smeagol »

Interesting case ;-) I took a look at the TAP file and it looks a bit dodgy to me, it starts with a 20-byte header whereas TAP files usually (always?) have a 19-byte header.

This triggers a chain of events in libretro-fuse: the TAP file is not recognized as such, and through faulty logic the core thinks it is a TRD file, and then things go bad. I think regular Fuse works because it just looks at the file extension (the core does not have that information, so it relies on file header analysis).

There is also something strange going on with the resolution, but I am not sure of the cause yet... Even regular Fuse changes the size of its window when the TS2068 is selected?!

Anyway, will try later on to fix the logic and/or the TAP file...
Smeagol
Drutt
Posts: 6
Joined: Tue May 04, 2021 2:31 pm

Re: Fuse libretro

Post by Smeagol »

I have fixed the TAP file, its header was incorrect:

Code: Select all

$ tzxlist ~/RetroPie/roms/zxspectrum/Frogger2068.tap 

Listing of `/home/pi/RetroPie/roms/zxspectrum/Frogger2068.tap':

--= Block #0 =--
  Block type 0x10 (Standard Speed Data)
  Block duration: 6.10 sec
  Block length: 20 bytes
  Datablock length: 18
  Checksum: 0x00 (PASS)
  Pause length: 1000 ms
The header block is not properly interpreted... The fixed version:

Code: Select all

$ tzxlist ~/Frogger2068.tap 

Listing of `/home/pi/Frogger2068.tap':

--= Block #0 =--
  Block type 0x10 (Standard Speed Data)
  Block duration: 6.09 sec
  Block length: 19 bytes
  Block header, zxlength: 92, parameter1: 10, parameter2: 92
  Raw header: 00 | 66 72 6f 67 67 65 72 20 20 20 | 5c 00 | 0a 00 | 5c 00
  Program: "frogger   " LINE 10
  Length: 92, includes variable length: 0
  Checksum: 0x46 (PASS)
  Pause length: 1000 ms
I have uploaded the fixed file here: https://onedrive.live.com/download?cid= ... BLyQepMzXc

Now the game should load and run.

I am still looking at the resolution problem... In order to emulate the TS2068 enhanced graphics mode, Fuse doubles the size of the window and the libretro core does not know how to handle that!
User avatar
PeterJ
Site Admin
Posts: 6873
Joined: Thu Nov 09, 2017 7:19 pm
Location: Surrey, UK

Re: Fuse libretro

Post by PeterJ »

Thank you so much for doing this [mention]Smeagol[/mention]. We will update the version that we hold.

Peter
MrBitey
Drutt
Posts: 3
Joined: Sun Feb 13, 2022 11:30 pm

Re: Fuse libretro

Post by MrBitey »

Jumping on this thread as it's maybe not the done thing to start a new one!
I have A Raspberry Pi 3 with Retropie running a few different emulators. I have an odd issue with lr-fuse.
Anything I load up. be it a tap, sna, z80 or whatever loads for a fraction of a section and then the emulated Speccy hard resets. Back to the Sinclair Research Screen it goes. The non-libretro version of Fuse works ok just not lr-fuse. SO, I'm making do with that but I'd like to have lr-fuse working just so that all the emulators have basically the same interface.
Anyone have any ideas/a blindingly obvious solution that I am missing?
Thanks!
Post Reply