hatari icon indicating copy to clipboard operation
hatari copied to clipboard

New Hatari Version 2.4.1 libretro and special features

Open Mitch187 opened this issue 2 years ago • 17 comments

Hi,

is it possible to update the acutal hatari libretro core to version 2.4.1? Ans add special Features to choose in Retroarch the ST-Version and Language and Ram support:

MODEL atarist.model ⇒ 520 ST / AUTO 520st_auto, 520 ST / TOS 1.00 520st_100, 520 ST / TOS 1.02 520st_102, 520 ST / TOS 1.04 520st_104, 1040 STE / AUTO 1040ste_auto, 1040 STE / 1.06 1040ste_106, 1040 STE / 1.62 1040ste_162, Mega STE / AUTO megaste_auto, Mega STE / 2.05 megaste_205, Mega STE / 2.06 megaste_206.
LANGUAGE atarist.language TOS languages.⇒ DE de, ES es, FR fr, IT it, NL nl, RU ru, SE se, UK uk, US us.
EMULATED RAM SIZE atarist.ram ⇒ 520K 0, 1M 1, 2M 2, 4M 4.

Best Regards, Mitch

Mitch187 avatar Aug 01 '23 18:08 Mitch187

Hatari version upgrades have been discussed in the past (see #8) and there's been a few issues holding it back. (Newer version requires more powerful CPU, there aren't available volunteers to do the upgrade work, this core may be difficult to maintain, etc.)

I've recently started working on a new adaptation of Hatari which is based on the latest with the intent to be able to update as it continues. It's mostly ready to go now, but there are a few minor details I'm working through before I make a more public announcement to begin proper testing. If you'd like to try, it's available here:

  • https://github.com/bbbradsmith/hatariB/

bbbradsmith avatar Aug 17 '23 16:08 bbbradsmith

This ist very Nice! Thanks a Lot.

Mitch187 avatar Aug 17 '23 17:08 Mitch187

  • https://github.com/bbbradsmith/hatariB/

WOAW so crazy to read you and read your Git <3 I stand for it for so many years ... really ... every one always speak about Amiga ... so many great emulators (core) and nothing for Atari :( It's really the best news of the year :) Thanks a lot !!!

For my part i'm working with BATOCERA team, and we are on linux. I will not open an issue for it, i will not know how to tell you ? :( But please, if you can add a LINUX build of you Core ... it will help a lot of ueers :D

https://batocera.org/

I've read you have added Savestates and Netplay :D So crazy ... If we have many Core options to fine configure games by games it will be the dream :) And if possible a streached full screen image, without overscan, like we have on PUAE on libretro :)

Thanka a lot for your work !!

Darknior avatar Aug 17 '23 20:08 Darknior

I do have a working build with ubuntu which I haven't added to the main branch yet, as I'm still tweaking it, but you can find builds of it in the recent actions: hatariB actions

I don't consider it netplay ready, because the savestate restore takes too much CPU time, but the restore is at least seamless and correct now so it will not diverge if you try netplay (or run-ahead). So, netplay does function, but it will stutter whenever the other player moves as it starts doing a lot of rollbacks. It would be fine for turn based games.

There is a core option in Video to remove the overscan area, but I left it on by default, as it feels like the "natural" Atari ST monitor experience to see it.

bbbradsmith avatar Aug 17 '23 22:08 bbbradsmith

Oh thanks you! Would it be possible to have a build for Nintendo Switch?

RetroMarioBros avatar Aug 21 '23 16:08 RetroMarioBros

No, I don't have the resources to provide builds for platforms like that myself. Maybe in the future if libretro decides to adopt this core it can be added with their more advanced build system.

bbbradsmith avatar Aug 21 '23 17:08 bbbradsmith

Many thanks for your work on this. My main gripe with the core as it currently is in RA, is the inability to write to floppies, I hope you can fix that. Edit: I see now also that there is a pull request by greenchili2 that appears to fix some things.

Jamirus238 avatar Sep 11 '23 12:09 Jamirus238

Yes, hatariB has had floppy saving since the start. It's not based on this core so it's not really a fix for anything going on here.

bbbradsmith avatar Sep 11 '23 15:09 bbbradsmith

Sorry, maybe I experienced a game specific bug then. I also read about floppy related problems from someone else, so I didn't bother to test it against standalone, I mostly use Steem.

Jamirus238 avatar Sep 11 '23 15:09 Jamirus238

Wanted to add as well big thanks to bbbradsmith for your amazing work on hatariB/the new libretro hatari core. Huge improvement over the old one.

One plus for me that's not necessarily apparent is the core seems a lot less laggy in terms of input delay compared to the old one. This is with runahead and pre-emptive frames turned off of course (the old core didn't support them anyway).

The only thing that's missing right now imo is the ability to turn on and off the ST status bar with a key (the same way you can with the old core). I know you can do this right now but you have to go in the core's options every time.

Jamirus238: It's possible to write to floppies with the old/current core but you have to exit via the core's own menu, not with RA's.

McRmie avatar Sep 11 '23 16:09 McRmie

One plus for me that's not necessarily apparent is the core seems a lot less laggy in terms of input delay compared to the old one. This is with runahead and pre-emptive frames turned off of course (the old core didn't support them anyway).

Yes, one of the reasons I wanted to start over was the way this core synchronizes frames was hard to get around. The new version generates frames 1:1 with the emulator, and savestates are now seamless allowing both run-ahead and netplay. (Netplay still still has a remaining stutter issue but I think I have a way to address it.)

The only thing that's missing right now imo is the ability to turn on and off the ST status bar with a key (the same way you can with the old core). I know you can do this right now but you have to go in the core's options every time.

In the core options under Retropad you can assign it to a button on the gamepad. I've been debating whether to keep it by default... I feel like it helps new users understand that something is happening during boot, and it gives a place to suggest pressing START for a quick help screen.

bbbradsmith avatar Sep 11 '23 16:09 bbbradsmith

In the core options under Retropad you can assign it to a button on the gamepad. I've been debating whether to keep it by default... I feel like it helps new users understand that something is happening during boot, and it gives a place to suggest pressing START for a quick help screen.

Doh. Missed it.

Awesome then. Works great. Personally I'd leave it on by default and if someone doesn't want it they can change it in the options or assign a key to toggle it on and off. That's just me though, either way is fine.

edit One argument maybe in favor of leaving the status bar on by default is that in the latest standalone of hatari, it's on by default. But, again, no big difference either way.

McRmie avatar Sep 11 '23 21:09 McRmie

Thank you @bbbradsmith! So nice to finally have a good alternative to the aging "official" Hatari core.

Speaking of which, at the risk of jumping the gun, it would be great to see your efforts become more officially recognized and accessible to a wider audience. Even better if it could entirely replace the existing core, which is unnecessary at this point. This would also fully resolve long-standing issue #8.

Here are a few things that come to mind, that would either have to happen or be nice to happen:

  • Your repo would exist under the main libretro repo
  • Your core would be named in accordance with standardized convention e.g. "libretro_hatari.so"
  • A recipe for your core could be created for the buildbot super script. For example, this would probably work with your existing repo if the core was re-named as above: hatarib libretro-hatarib https://github.com/bbbradsmith/hatariB.git main YES GENERIC makefile . full

Shoegzer avatar Sep 13 '23 21:09 Shoegzer

I do plan to submit it to libretro when I feel it's ready. Aside from testing, which is underway thanks to the people who have been trying it and giving feedback, there are some minor things I still want to do with it. I didn't ever want to replace this repository though. Its a new project from the ground up, even though it has the same goals and a common basis of Hatari.

bbbradsmith avatar Sep 13 '23 22:09 bbbradsmith

Thanks for your thoughts. That's certainly understandable. I didn't want to assume you were going to replace the repo necessarily, more of an option. Indeed other libretro projects exist outside the main repo as well. That said, it will be great to see as a more officially-recognized effort once you feel it's ready.

Shoegzer avatar Sep 13 '23 23:09 Shoegzer

We have a long history of either snapshotting an older codebase if it still has use and spinning off a datestamped core (hatari2015 or whatever), or just archiving it and pointing our infrastructure to a new repo if it makes sense to simply replace it. No worries either way. Just let us know if and how we can help :)

hizzlekizzle avatar Sep 14 '23 17:09 hizzlekizzle

I do plan to submit it to libretro when I feel it's ready. Aside from testing, which is underway thanks to the people who have been trying it and giving feedback, there are some minor things I still want to do with it. I didn't ever want to replace this repository though. Its a new project from the ground up, even though it has the same goals and a common basis of Hatari.

Don't worry. Take your time. I fully expect your excellent version to eventually replace the work I've just recently done. Especially when/if it is made available for more platforms. Like hizzlekizzle said the current one will likely be hatari20xx or something like that and replaced by yours.

In the meantime everyone.. enjoy the current version in the meantime to whet your appetite and most certainly offer input and do testing on bbbradsmith's version.

I'll eventually open an issue thread where people can post comments, issues, and suggestions. It's currently just a first round for me. But I don't mind adding stuff within reason. But ultimately I expect my work to be usurped by bbbradsmith's build for sure.

greenchili2 avatar Sep 20 '23 01:09 greenchili2