Retro-Go: Emulator launcher with improved emulators

Post Reply
ducalex
Posts: 448
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 82 times
Been thanked: 451 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by ducalex »

jd2000 wrote:
Sat Jan 07, 2023 5:15 am
Ordroid-Go has 16MB flash, is it technically possible to support bigger ROMs in the future?
Copying the ROM to flash allows some bigger ROMs to work (I've tried it) but:
- We're limited to 3MB ROMs because the esp32 can only map 4MB of flash at once and a few pages are used to map the app itself
- It increases the size of retro-go, which is wasted space to users who do not care about SNES but might want to flash other apps on their GO

The only way to properly run larger ROMs is to use memory banking (the GO has an extra 4MB of "hidden" RAM) but it absolutely destroys performance (at least for every implementation I could think of).

jd2000
Posts: 12
Joined: Fri Aug 12, 2022 11:41 am
languages_spoken: english
ODROIDs: Odroid-Go
Has thanked: 5 times
Been thanked: 0
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by jd2000 »

Thanks for the hard working and the clear explanation!
Since ESP32 can map up to 4MB flash, is it possible to support 3MB ROM instead of 2.5MB ROM?
I think it can cover most of SNES and MD games.(less than 24Mb)

ducalex
Posts: 448
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 82 times
Been thanked: 451 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by ducalex »

Like I said it is possible and I have done it, but I don't think making retro-go releases 8MB is an acceptable trade-off. More users will want to have that flash space for other stuff than to play a handful of SNES games (poorly), I imagine.
These users thanked the author ducalex for the post:
alektronic (Mon Jan 09, 2023 1:03 am)

8xpdh
Posts: 7
Joined: Sun Mar 22, 2020 7:33 pm
languages_spoken: english
Has thanked: 0
Been thanked: 4 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by 8xpdh »

I've been following the development of the firmware since the beginning, and every few months I test it and I'm always thrilled that there are still people who give this handheld a little love.
with all the new features being added to the firmware (ports, wifi file manager, snes emulation etc) i often think how cool it would be to have a "minimal" version that only supported gb/gbc emulation and nothing else for purists like me.
I am aware that a stripped down version does not affect emulator performance. It's more about not having unnecessary features that take up memory or potentially complicate firmware maintenance.

Thank you for your years of dedication!

kelbot
Posts: 152
Joined: Thu Aug 29, 2019 12:05 pm
languages_spoken: english
ODROIDs: C2, HC2 x2, Go
Has thanked: 26 times
Been thanked: 10 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by kelbot »

In the menu you can hide tabs, so you could hide everything but GB/GBC and you would have what you want from an interface perspective. I don't think a minimalist version is great idea. Everyone cares about different systems so you'd have to do a bunch of different versions for each system. Also, if you only care about gb/gbc then the extra space used for the other systems really doesn't matter. It's just sitting there are aren't using it anyways. I would just hide all the tabs I don't use personally.
These users thanked the author kelbot for the post:
ducalex (Wed Jan 11, 2023 2:28 am)

ducalex
Posts: 448
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 82 times
Been thanked: 451 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by ducalex »

Additionally if you want a single tab you can mix .gb and .gbc files in both /roms/gb and /roms/gbc folders. Just choose one and hide the other.

Disabling everything, including wifi, you could fit launcher+gb/gbc in 1MB instead of the current 4MB. But realistically there are not that many apps for the ODROID-GO out there, so the 3MB saved would probably go unused...

pceslayer
Posts: 6
Joined: Tue May 12, 2020 2:15 pm
languages_spoken: english
ODROIDs: Odroid Go and Odroid Go Advance
Has thanked: 1 time
Been thanked: 3 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by pceslayer »

@ducalex

I recently installed an internal Audio DAC so I could actually enjoy using the Odroid Go unmuted and I have been testing a lot of games on the latest build. I must say the audio for PC Engine has much much improved since the original implementation! I noticed though that the PC Engine emulator seems to be missing audio channels or drops them to keep the framerate stable? I'm not sure if this is due to a hardware limitation or a coding decision.

Just curious...

Thanks for your time and thank you for all the work you do on this!!!

kelbot
Posts: 152
Joined: Thu Aug 29, 2019 12:05 pm
languages_spoken: english
ODROIDs: C2, HC2 x2, Go
Has thanked: 26 times
Been thanked: 10 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by kelbot »

pceslayer wrote:
Sat Feb 18, 2023 4:27 am
@ducalex

I recently installed an internal Audio DAC so I could actually enjoy using the Odroid Go unmuted and I have been testing a lot of games on the latest build. I must say the audio for PC Engine has much much improved since the original implementation! I noticed though that the PC Engine emulator seems to be missing audio channels or drops them to keep the framerate stable? I'm not sure if this is due to a hardware limitation or a coding decision.

Just curious...

Thanks for your time and thank you for all the work you do on this!!!
Neat! I've been thinking about doing that for a long time as well but still haven't attempted it. Do you have any details on parts you used and how you did it?

ducalex
Posts: 448
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 82 times
Been thanked: 451 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by ducalex »

pceslayer wrote:
Sat Feb 18, 2023 4:27 am
@ducalex

I recently installed an internal Audio DAC so I could actually enjoy using the Odroid Go unmuted and I have been testing a lot of games on the latest build. I must say the audio for PC Engine has much much improved since the original implementation! I noticed though that the PC Engine emulator seems to be missing audio channels or drops them to keep the framerate stable? I'm not sure if this is due to a hardware limitation or a coding decision.

Just curious...

Thanks for your time and thank you for all the work you do on this!!!
All channels are indeed emulated but the audio emulation can get out of sync due to lack of locking (especially when the cpu is struggling to keep up) and then weird things happen. Also the mixing isn't that great, I wouldn't be surprised if whole channels got cancelled out in some situations.

Can you give me a few easily reproducible examples where I could hear the difference clearly and work from that? Like maybe show me a youtube video of what it should sound like and then instructions or a save state to play that same part on the GO.

pceslayer
Posts: 6
Joined: Tue May 12, 2020 2:15 pm
languages_spoken: english
ODROIDs: Odroid Go and Odroid Go Advance
Has thanked: 1 time
Been thanked: 3 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by pceslayer »

Here is a video I whipped up of Aero Blasters for TurboGrafx-16. Video starts with what the game should sound like and then switches to what it sounds like in Retro-Go.

https://youtu.be/uTkW48_Qc4g

It definitely is missing some sound channels in the intro and during gameplay

I took a look at the source code and noticed the PC Engine emulator is set to stereo and has some different maths to calculate the right channel volume. I believe HuCard games are Mono due to the limitations of the HuCard pinout and CD is the only way to get Stereo out. Have you tried compiling with mono to see if it improves sound?

lordhardware
Posts: 208
Joined: Sat Sep 20, 2014 11:56 pm
languages_spoken: english
ODROIDs: U3
Odroid-W
Has thanked: 52 times
Been thanked: 27 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by lordhardware »

Hey ducalex,

just noticed some odd behaviour in the newest builds.

If you restore a savestate in gbc, it seems the RTC time is embedded to it does odd things when saving and restoring over and over.

Probably best to decouple that as the SRAM should be the point of truth.

ducalex
Posts: 448
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 82 times
Been thanked: 451 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by ducalex »

pceslayer wrote:
Thu Feb 23, 2023 7:16 am
Here is a video I whipped up of Aero Blasters for TurboGrafx-16. Video starts with what the game should sound like and then switches to what it sounds like in Retro-Go.

https://youtu.be/uTkW48_Qc4g

It definitely is missing some sound channels in the intro and during gameplay
Thanks for the video, I'll start with the missing percussion :) .
pceslayer wrote:
Thu Feb 23, 2023 7:16 am
I took a look at the source code and noticed the PC Engine emulator is set to stereo and has some different maths to calculate the right channel volume. I believe HuCard games are Mono due to the limitations of the HuCard pinout and CD is the only way to get Stereo out. Have you tried compiling with mono to see if it improves sound?
The hucard mono pin is only used when the hucard has extra hardware to generate audio. I don't know any game that uses it and we don't emulate that at all. The everdrive uses it when running a cd game to feed back the cd audio for example (in which case the mono limitation is indeed a problem).

But that's as good a place to start as any, I'll double check that we're not just accidentally muting a channel because of balance.

ducalex
Posts: 448
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 82 times
Been thanked: 451 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by ducalex »

lordhardware wrote:
Thu Feb 23, 2023 3:31 pm
Hey ducalex,
just noticed some odd behaviour in the newest builds.
If you restore a savestate in gbc, it seems the RTC time is embedded to it does odd things when saving and restoring over and over.
Probably best to decouple that as the SRAM should be the point of truth.
Currently the system clock takes precedence and the time saved in a savestate or sram file is ignored, otherwise things like NTP or I2C RTC wouldn't work.

I agree that savestate time should be respected if our system clock wasn't synced to anything recently but there's just no way to detect that for sure right now (at least not from inside the GBC emulator)...

lordhardware
Posts: 208
Joined: Sat Sep 20, 2014 11:56 pm
languages_spoken: english
ODROIDs: U3
Odroid-W
Has thanked: 52 times
Been thanked: 27 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by lordhardware »

i can get a video if youd like, it will respect it while playing a session but if you close a game and reopen it will adjust the system time to match the savestate time.
This does a lot of funky stuff, ive watched the date go from day "1" to day "73" between two openings of the same save.
Is there a possibility this is save overflow related?

i can supply the rom and savestates if it helps illustrating?

ducalex
Posts: 448
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 82 times
Been thanked: 451 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by ducalex »

No need for a video, I understood the problem. I was just saying that I don't see an easy solution right now.

As a workaround, I've added an hidden setting to disable using the system time for the RTC so that it will always start with either 0 (new game) or the exact value from the save state or sram file.

Open /retro-go/config/gbc.json and gb.json and add this line right after the {:

Code: Select all

"SysTime": 0,
Download: currently building here https://github.com/ducalex/retro-go/act ... 4360561227
These users thanked the author ducalex for the post:
lordhardware (Mon Mar 13, 2023 11:03 am)

lordhardware
Posts: 208
Joined: Sat Sep 20, 2014 11:56 pm
languages_spoken: english
ODROIDs: U3
Odroid-W
Has thanked: 52 times
Been thanked: 27 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by lordhardware »

Thanks Ducalex :)

ducalex
Posts: 448
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 82 times
Been thanked: 451 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by ducalex »

lordhardware wrote:
Mon Mar 13, 2023 11:03 am
Thanks Ducalex :)
After receiving a second request for that feature I've decided it deserved a menu entry. But to avoid clutter I've put it in with the time selector (now called RTC config -> Sync: Yes/No). Yes: Sync with system time, No: will use the time in the save state or 0.

Top post has been updated and release also on github
These users thanked the author ducalex for the post:
lordhardware (Wed May 31, 2023 8:55 am)

Nemo1984
Posts: 269
Joined: Thu Aug 23, 2018 7:58 pm
languages_spoken: english, french
ODROIDs: Odroid-Go
Has thanked: 101 times
Been thanked: 21 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by Nemo1984 »

I noticed that mortal kombat doesn't work on Genesis. But had it ever worked on genesis? I just updated the multifirmware too using the self installer, Im just trying to pinpoint the change that might habe broke it.

myownregister
Posts: 8
Joined: Mon Jan 27, 2020 1:24 am
languages_spoken: english
Has thanked: 15 times
Been thanked: 0
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by myownregister »

Hi Ducalex, not sure if it would help, but I've encountered a system crash on 1 of my odroid go units at the end of flashing the current release. After the last step, it crashes and screen shows "System Panic! Application crashed. Log saved to SD card." I pressed OK to continue to boot back to the games list. Tried reflashing 3x and it gave the same result. I've attached the crash.log for reference. My other odroid go unit flashed without issues.
Attachments
crash.log
(1.77 KiB) Downloaded 20 times

ducalex
Posts: 448
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 82 times
Been thanked: 451 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by ducalex »

myownregister wrote:
Sun May 28, 2023 2:18 pm
Hi Ducalex, not sure if it would help, but I've encountered a system crash on 1 of my odroid go units at the end of flashing the current release. After the last step, it crashes and screen shows "System Panic! Application crashed. Log saved to SD card." I pressed OK to continue to boot back to the games list. Tried reflashing 3x and it gave the same result. I've attached the crash.log for reference. My other odroid go unit flashed without issues.
Thanks for the report! The trace is interesting but a bit unexpected in that it doesn't crash in our code, I'll have to do more digging to truly understand what's going on.

Either way it seems to be crashing when loading the config files, have you tried deleting everything in sd:/retro-go/config/* to see if it helps?

myownregister
Posts: 8
Joined: Mon Jan 27, 2020 1:24 am
languages_spoken: english
Has thanked: 15 times
Been thanked: 0
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by myownregister »

ducalex wrote:
Sun May 28, 2023 10:36 pm
Thanks for the report! The trace is interesting but a bit unexpected in that it doesn't crash in our code, I'll have to do more digging to truly understand what's going on.

Either way it seems to be crashing when loading the config files, have you tried deleting everything in sd:/retro-go/config/* to see if it helps?
Thanks for reviewing the crash log! I tried your suggestion and deleted everything inside sd:/retro-go/config/* then reflashed. It sadly gave the same "System Panic! Application crashed. Log saved to SD card." prompt. I am able to use the unit normally though, so all's good on that regard and I'm happily gaming on it. I attached the latest crash log for reference in case it helps.
Attachments
crash.log
(1.77 KiB) Downloaded 17 times

ducalex
Posts: 448
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 82 times
Been thanked: 451 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by ducalex »

myownregister wrote:
Mon May 29, 2023 2:56 am
I am able to use the unit normally though, so all's good on that regard and I'm happily gaming on it.
Oh so it only does the crash once during the first boot after flashing? And then back to normal? The trace indicated it was crashing in SD card access, it's quite possible after flashing we don't have the best state and it's not cleaned up properly...

Definitely still a bug I wan't to fix but I'm glad that it's not making your device unusable!

myownregister
Posts: 8
Joined: Mon Jan 27, 2020 1:24 am
languages_spoken: english
Has thanked: 15 times
Been thanked: 0
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by myownregister »

ducalex wrote:
Mon May 29, 2023 3:00 am
Oh so it only does the crash once during the first boot after flashing? And then back to normal? The trace indicated it was crashing in SD card access, it's quite possible after flashing we don't have the best state and it's not cleaned up properly...

Definitely still a bug I wan't to fix but I'm glad that it's not making your device unusable!
Ah yes, it only crashes once right at the end of flashing then it runs normally again. I thought it seems odd since it has never happened to me over the years of flashing your updates so I thought you'd be interested to hear about it and I hope it helps somehow. And to add to the mystery, it doesn't happen to my other odroid go. Each unit was purchased with a large gap in between, a different manufacturing batch? But then, all's well right after and functions normally so I'm good to go. Thanks for taking a peek, much appreciated!

odroidgo
Posts: 1
Joined: Thu Aug 10, 2023 2:09 am
languages_spoken: english
ODROIDs: odroid-go (original)
Has thanked: 0
Been thanked: 0
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by odroidgo »

I love everything about this project! It would be perfect if only it had bluetooth output. I have seen it working on my odroid go with this mp3 firmware: viewtopic.php?f=162&t=42758

I hope you can find a way to bring it to retro-go!

Christian_Haitian
Posts: 72
Joined: Sat Nov 10, 2018 10:40 pm
languages_spoken: english
ODROIDs: Go, Go Advance
Has thanked: 30 times
Been thanked: 60 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by Christian_Haitian »

Been awhile since I've checked in. Still loving this firmware as it is today for the Odroid Go. Excellent work and if no other improvements are done, I think it's feature complete for this unit. Take care.
These users thanked the author Christian_Haitian for the post:
ducalex (Sat Aug 26, 2023 4:04 am)
A jack of all trades is a master of none, but oftentimes better than a master of one

ducalex
Posts: 448
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 82 times
Been thanked: 451 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Post by ducalex »

odroidgo wrote:
Thu Aug 10, 2023 2:11 am
I love everything about this project! It would be perfect if only it had bluetooth output. I have seen it working on my odroid go with this mp3 firmware: viewtopic.php?f=162&t=42758

I hope you can find a way to bring it to retro-go!
I got bluetooth audio working at some point but it isn't usable because the BT stack uses most of the internal memory and that causes most emulators to become too sluggish. The BT stack also uses a fair amount of IRAM even when not in use which affects performance even further in some emulators. So I don't think it's possible to use bt audio with emulation...

A music player would be nice though. Ideally something integrated in the launcher but a separate app like the one you've shared would also be nice.

Retro-Go isn't abandoned, I'm still around to look at issues or PRs but it's true I haven't worked on the project very much in the past year.

Post Reply

Return to “Game Emulators”

Who is online

Users browsing this forum: No registered users and 1 guest