Update README.md

Updated the custom firmware FAQ to reference the new porting of the GB300 stock firmware to the SF2000.
This commit is contained in:
vonmillhausen 2024-05-06 01:17:44 +01:00
parent a9f34fc2e3
commit 41e0ffabac
1 changed files with 8 additions and 2 deletions

View File

@ -13,6 +13,7 @@ This document is a collection of notes and information I've made about the devic
- [Is there any custom firmware?](#is-there-any-custom-firmware)
- [hcRTOS (true CFW)](#hcrtos-true-cfw)
- [Multicore (modified stock)](#multicore-modified-stock)
- [GB300 Firmware Ported](#gb300-firmware-ported)
- [I just got my SF2000; what modding can I do with it?](#i-just-got-my-sf2000-what-modding-can-i-do-with-it)
- [How do I install new menu themes?](#how-do-i-install-new-menu-themes)
- [How do I change the four shortcuts/games listed on each system's main menu page?](#how-do-i-change-the-four-shortcutsgames-listed-on-each-systems-main-menu-page)
@ -77,14 +78,17 @@ Some downsides to the device: There's a decent amount of screen-tearing, due to
So is the "Data Frog" any good? Only you can answer that question for yourself. There are certainly more powerful devices out there, more fully featured devices, devices with better hardware, etc. - but almost all of those devices cost a lot more than the SF2000 (which often sells for just $15 to $20). At the end of the day, you have to look at the features offered at the given price-point, and only then can you decide if you're interested in the device or not.
### Is there any custom firmware?
As of April 29st 2024, **no**, not yet; however, some already-useful advancements have been made which may be of interest. Two main development efforts have been made:
As of May 5th 2024, **no**, not yet; however, some already-useful advancements have been made which may be of interest. Three main development efforts have been made:
#### hcRTOS (true CFW)
Earlier this year, an SDK for the CPU in the SF2000 was been identified. Theoretically, this would allow a full custom firmware to be built and compiled for the device. The developers working on custom firmware spent some considerable time and effort working on porting Retroarch (as it seemed like it would be the quickest route to a custom firmware with support for many systems), however they ran into several problems. It appears that the SDK was unfinished and of low quality - core features like video and audio drivers were missing (and thus had to be developed from scratch), and overall system stability of the produced builds very low. When crashed happened with running cores (which was frequently) no useful debugging information was produced, and so tracking down the source of issues became a major time-sink. Additionally, most of the experimental builds when they did work had audio and/or video performance issues, and most also caused the SF2000 to run "hot", which would likely have impacted the lifespan of the device and thus are not recommended for usage beyond a few minutes at a time. [A GitLab repo](https://git.maschath.de/ignatz/hcrtos) was set up by `ignatzdraconis` for the work based on this SDK, however work on developing a full custom firmware using this SDK has been parked for now.
In mid 2023, an SDK for the CPU in the SF2000 was identified. Theoretically, this would allow a full custom firmware to be built and compiled for the device. The developers working on custom firmware spent some considerable time and effort working on porting Retroarch (as it seemed like it would be the quickest route to a custom firmware with support for many systems), however they ran into several problems. It appears that the SDK was unfinished and of low quality - core features like video and audio drivers were missing (and thus had to be developed from scratch), and overall system stability of the produced builds very low. When crashes happened with running cores (which was frequently) no useful debugging information was produced, and so tracking down the source of issues became a major time-sink. Additionally, most of the experimental builds when they did work had audio and/or video performance issues, and most also caused the SF2000 to run "hot", which would likely have impacted the lifespan of the device and thus are not recommended for usage beyond a few minutes at a time (although the root cause of this issue was eventually identified and experimentally fixed). [A GitLab repo](https://git.maschath.de/ignatz/hcrtos) was set up by `ignatzdraconis` for the work based on this SDK, however work on developing a full custom firmware using this SDK has been parked for now.
#### Multicore (modified stock)
More recently, a new tack is being tried by the development team - they're trying to modify the stock SF2000 firmware to add additional functionality. Theoretically, this would come with the benefit of having audio and video drivers already built (the contractors producing the stock firmware for the SF2000 have access to these), providing no worse performance than stock firmware, while also providing features like support for additional emulated systems. An experimental developer build called the "multicore" build has been produced which hijacks the stock Game Boy Advance emulator to run additional systems like Atari 2600, PC-Engine, MAME2000, Sega 32X, etc., and some stand-alone engines for games like Doom and Cave Story, as well as alternatives for some of the stock emulators already included with the SF2000 (e.g., a build of gpSP with working dynarec, Snes9x 2005 and 2002, etc.). Some of the new systems appear to run at full speed; some run without sound or with less than full speed, and others don't work at all yet. [A GitLab repo](https://gitlab.com/kobily/sf2000_multicore) has been set up by `kobil` for the work on modifying the stock firmware; additionally, [a GitHub repo](https://github.com/madcock/sf2000_multicore_cores) has been set up by `adcockm` for the code changes for the individual cores, and you can download the **experimental** alpha build [from the "Releases" page there](https://github.com/madcock/sf2000_multicore_cores/releases/latest). If you want to follow along with the developer chat on this work, see the `SF2000 Dev` thread in the `🐸data_frog_sf2000` channel of the [`Retro Handhelds` Discord server](https://discord.gg/retrohandhelds). Please do read the pinned messages both in the main channel and the thread before asking any questions of the devs, their time is precious 🙂
#### GB300 Firmware Ported
On May 5th, 2024, [the GB300](#whats-the-gb300)'s stock firmware was ported to run on the SF2000 by `bnister`. The GB300's firmware lacks arcade emulation, but has PC Engine emulation instead. You can [learn more here](https://discord.com/channels/741895796315914271/1092831839955193987/1236732910074331227) (you will already need to be a member of the [`Retro Handhelds` Discord server](https://discord.gg/retrohandhelds) for that link to work; see also the `Gb300 dev` thread in the `🐸data_frog_sf2000` channel of that server for chat specifically related to the GB300).
### I just got my SF2000; what modding can I do with it?
If you're planning to customise your SF2000 in _any_ way, then I **strongly** recommend the _very_ first thing you do is [fix an annoying bug in the device's bootloader](#bootloader-bug) - otherwise you're likely to end up with a non-booting device. Seriously - **do this before you do anything else!**
@ -695,6 +699,8 @@ All of these are linked above already in their relevant sections, but just in ca
---
## Document Version History
- `20240505 - 1.50`: Updated [the custom firmware FAQ](#is-there-any-custom-firmware) to reference the new [porting of the GB300 stock firmware](#gb300-firmware-ported) to the SF2000.
- `20240429 - 1.49`: Updated date in [the custom firmware FAQ](#is-there-any-custom-firmware). Corrected some image paths. Identified the usage of `mhg4s.ihg`, `zaqrc.olc` and `help.lis` resources files (thanks to `nummacway` for the hint!).
- `20240401 - 1.48`: Updated date in [the custom firmware FAQ](#is-there-any-custom-firmware). Added links to `nummacway`'s GB300 info page. Added links to `GrGadam`'s SF2000 info page. Added links to `Dteyn`'s ROM-free SF2000 firmware downloads.