Retro-Go: Emulator launcher with improved emulators

ducalex
Posts: 120
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 28 times
Been thanked: 161 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by ducalex » Thu Mar 19, 2020 5:56 am

myownregister wrote:
Wed Mar 18, 2020 7:39 am
This release simply has me floored with awe, thank you @ducalex! I tested the game fixes on this release and they work great for me as well. Castlevania III, in particular, works and happily playable for me. I truly appreciate your extra bonuses of implementing some missing mappers and fixes. The NES color palettes are such a huge plus too! Happy times. :)
Thanks for the kind words!

jafox wrote:
Wed Mar 18, 2020 12:43 pm
I really appreciate your effort to improve the little odroid-go.

I have found that altered space a 3d alien adventure from gb works in triforce and also in the 2020-03-10 version. with version 03-13 the character sprite is corrupted.
Thanks for narrowing it down that much, it will save me a lot of time! I've added it to the list viewtopic.php?p=286356#p286059 and since it worked before I'm confident I'll be able to fix it :).
These users thanked the author ducalex for the post (total 2):
myownregister (Thu Mar 19, 2020 9:19 am) • Nemo1984 (Fri Mar 20, 2020 3:26 am)

ducalex
Posts: 120
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 28 times
Been thanked: 161 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by ducalex » Fri Mar 20, 2020 6:05 pm

A new release is available (2020-03-20). I've decided to release it sooner than planned because the next feature (netplay) might affect stability and take a while to complete. Download via to top post or Github.

Changes since 2020-03-13:
  • NES: Added PAL games support
  • NES: Cheetahmen 2 fixed (Mapper 228)
  • GB: Altered Space 3-D Adventure fixed
  • GB: Faceball 2000 fixed
  • GB: Performance improvement
I have been unable to fix the other 3 games but after a few days of failure it's going nowhere so I will look into it again in the future!

About PAL: "Region: Auto" will switch to PAL if the file name contains one of (E) (A) (Europe) (Australia), NTSC otherwise. Let me know if a PAL-exclusive game doesn't work and I'll look into it (but any PAL game with a working NTSC version is very low priority).


Next release:
I will be releasing a netplay basic connectivity test build in a few days. It will not allow working multiplayer just yet, but it will allow people with two GOs to help me test if their GOs can connect and talk to each other :).
These users thanked the author ducalex for the post (total 5):
lordhardware (Fri Mar 20, 2020 6:24 pm) • jafox (Fri Mar 20, 2020 8:51 pm) • Nemo1984 (Sat Mar 21, 2020 4:54 am) • myownregister (Sun Mar 22, 2020 5:14 am) • concreted (Fri Mar 27, 2020 12:44 pm)

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

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by lordhardware » Fri Mar 20, 2020 6:25 pm

ducalex wrote:A new release is available (2020-03-20). I've decided to release it sooner than planned because the next feature (netplay) might affect stability and take a while to complete. Download via to top post or Github.

Changes since 2020-03-13:
  • NES: Added PAL games support
  • NES: Cheetahmen 2 fixed (Mapper 228)
  • GB: Altered Space 3-D Adventure fixed
  • GB: Faceball 2000 fixed
  • GB: Performance improvement
I have been unable to fix the other 3 games but after a few days of failure it's going nowhere so I will look into it again in the future!

About PAL: "Region: Auto" will switch to PAL if the file name contains one of (E) (A) (Europe) (Australia), NTSC otherwise. Let me know if a PAL-exclusive game doesn't work and I'll look into it (but any PAL game with a working NTSC version is very low priority).


Next release:
I will be releasing a netplay basic connectivity test build in a few days. It will not allow working multiplayer just yet, but it will allow people with two GOs to help me test if their GOs can connect and talk to each other :).
Friend of mine has another odroid and as we're in lockdown I'm happy to trial that for you.
These users thanked the author lordhardware for the post:
ducalex (Mon Mar 23, 2020 8:50 am)

jafox
Posts: 5
Joined: Wed Feb 12, 2020 3:11 am
languages_spoken: english Spanish
ODROIDs: ODROID-GO
Has thanked: 33 times
Been thanked: 0
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by jafox » Sat Mar 21, 2020 10:47 pm

faceball 2000 and altered space is working. thank you very much for fixing them. :D

8xpdh
Posts: 4
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

Unread post by 8xpdh » Sun Mar 22, 2020 7:43 pm

First I want to thank you for your ongoing effort to improve the odroid go emulators! I'm following retro-go github since day one and install every release. It's awesome to see the progress and I hope you keep on improving the GB emulation ;-)

I mostly play pokemon, and when I use full screen scaling, it seems the other characters are kind of "jumping" when my character moves. When I move up/downward they are "jumping"" up/down, moving left/right causing them to "jump" the same direction.
It is slighty less notable when using box scaling.

Do you know why that is? Or better: do you think there's a chance you can fix it?

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

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by lordhardware » Sun Mar 22, 2020 8:02 pm

8xpdh wrote:First I want to thank you for your ongoing effort to improve the odroid go emulators! I'm following retro-go github since day one and install every release. It's awesome to see the progress and I hope you keep on improving the GB emulation ;-)

I mostly play pokemon, and when I use full screen scaling, it seems the other characters are kind of "jumping" when my character moves. When I move up/downward they are "jumping"" up/down, moving left/right causing them to "jump" the same direction.
It is slighty less notable when using box scaling.

Do you know why that is? Or better: do you think there's a chance you can fix it?
Do you mean they are flickering? If so, sprites in gen 1 and 2 Pokemon games are a little buggy even on real hardware.

If not, can you upload a quick video and advise which game?

8xpdh
Posts: 4
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

Unread post by 8xpdh » Mon Mar 23, 2020 12:58 am

Game: Pokemon Red
Don't know how to call it, for me it looks like the characters are "jumping" - but let's call it flickering for now.

Fullscreen - noticable flickering:
https://imgur.com/a/jnEcwOZ

Scale - without/less flickering:
https://imgur.com/a/KfG5K0f

P.S. When i enable filtering, no matter what mode - it does also flicker in scale mode.
Last edited by 8xpdh on Mon Mar 23, 2020 1:12 am, edited 1 time in total.

8xpdh
Posts: 4
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

Unread post by 8xpdh » Mon Mar 23, 2020 1:04 am

Another idea:
Will it increase performance when we completely disable audio emulation?
I always turn down the volume to zero, because I don't need audio in most cases.
So I was thinking what about a switch to completely disable audio emulation..

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

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by lordhardware » Mon Mar 23, 2020 4:58 am

8xpdh wrote:Game: Pokemon Red
Don't know how to call it, for me it looks like the characters are "jumping" - but let's call it flickering for now.

Fullscreen - noticable flickering:
https://imgur.com/a/jnEcwOZ

Scale - without/less flickering:
https://imgur.com/a/KfG5K0f

P.S. When i enable filtering, no matter what mode - it does also flicker in scale mode.
This is standard for Pokemon games.

You'll see the same behaviour on official hardware.

8xpdh
Posts: 4
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

Unread post by 8xpdh » Mon Mar 23, 2020 5:22 am

I am a big fan of the old DMG palette, so I added one that resembles it pretty well (I didn't like the washed greenish palette that already exists).
Maybe you are interested in adding it to your build:

Code: Select all

#define GB_DMGREEN_PALETTE { 0x079e92, 0x1b7153, 0x185529, 0x024712 }
Colors based on:
Image
These users thanked the author 8xpdh for the post (total 4):
alektronic (Mon Mar 23, 2020 5:23 am) • lordhardware (Mon Mar 23, 2020 6:20 am) • jafox (Mon Mar 23, 2020 8:13 am) • ducalex (Mon Mar 23, 2020 9:55 am)

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

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by lordhardware » Mon Mar 23, 2020 6:21 am

That looks much better than the existing green palette.

ducalex
Posts: 120
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 28 times
Been thanked: 161 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by ducalex » Mon Mar 23, 2020 9:53 am

8xpdh wrote:
Mon Mar 23, 2020 5:22 am
I am a big fan of the old DMG palette, so I added one that resembles it pretty well (I didn't like the washed greenish palette that already exists).
Maybe you are interested in adding it to your build:

Code: Select all

#define GB_DMGREEN_PALETTE { 0x079e92, 0x1b7153, 0x185529, 0x024712 }
Thanks, it will be added to the next release!


About Pokemon, I don't know enough to say if it's normal or not so I'll take lordhardware's word that it is behaving the same on real hardware.

Full scaling does reduce fps when the whole screen is moving (as in your example), so it could make the "animation" choppier and thus more noticeable. This is not something I can improve unfortunately (Well, interlacing is an option, but that looks terrible and we still wouldn't have a full 60fps).

A quick fix would be to play the color games, I've never noticed that issue on them. But I realize it's not the same so if you can find another emulator (on any platform, but preferably open-source) that doesn't have the issue then maybe I can improve gnuboy!


Edit: Reading back I noticed your audio question. Disabling it wouldn't improve performance. Emulation is already a solid 100% speed for all emulators (I consider it a bug when it isn't). Also audio is used to sync the emulation, disabling it is lets it run as fast as it can, this is effectively what "Speed: 2x" does (3x adds frameskip to that).

If you notice a performance issue and you don't think it's related to the display refresh rate then it's most likely a bug, so please report it! :)

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

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by lordhardware » Mon Mar 23, 2020 6:56 pm

I watched your gifs and can confirm mine seems to do the same thing, I usually play on original size so I've not noticed this much before.

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

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by lordhardware » Mon Mar 23, 2020 6:56 pm

[duplicate]
Last edited by lordhardware on Mon Mar 23, 2020 6:56 pm, edited 1 time in total.

ducalex
Posts: 120
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 28 times
Been thanked: 161 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by ducalex » Tue Mar 24, 2020 4:43 am

Here's the first network test build. Adding the wifi stack required deep changes that will affect general stability, so anybody with some free time can help me test the build, not just the network bits, to see if everything still works as it should!

Aside of networking, this build contains the new GB green palette, an option to disable NES overscan (making pixel perfect vertical fit) and faster in-game reload.

To test networking you will need two odroid GOs. Start any gameboy game on both consoles and press menu -> netplay.

Things worthy of note:
- To increase the odds of success you can press netplay on the first console and wait until it says "Waiting for peer", then press netplay on the second console.
- If both consoles say NETPLAY_STATUS_CONNECTED then the test is successful!
- In theory button presses should be mirrored once connected, but I don't have much hope that it will work first try.
- The build is unfortunately bigger because the wifi stacks is enormous and adds 400KB per emulator :( (BT would be even worse).
- All emulators have the netplay menu item and it does start the network silently, but only the gameboy has the on-screen debug message.
- The stuttering while testing is due to how I lazy draw the debug message on screen, it isn't caused by any network stuff.

That's it.

Thanks for testing!
Attachments
retro-go_network-test-1.zip
(1.16 MiB) Downloaded 13 times
These users thanked the author ducalex for the post (total 4):
lordhardware (Tue Mar 24, 2020 5:05 am) • jafox (Tue Mar 24, 2020 6:25 am) • Nemo1984 (Tue Mar 24, 2020 6:33 am) • concreted (Tue Mar 24, 2020 1:35 pm)

ducalex
Posts: 120
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 28 times
Been thanked: 161 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by ducalex » Wed Mar 25, 2020 6:48 am

I've polished the test build a bit. The connection process is simpler and the order of operation matter even less now. This one also supports 2-player NES (try something simple like super mario bros). However there is no synchronization at all at the moment and I've only tested with a computer so I'm not sure it will actually work with two GOs.

Thanks for testing!
Attachments
retro-go_network-test-2.zip
(1.67 MiB) Downloaded 13 times
These users thanked the author ducalex for the post (total 5):
lordhardware (Wed Mar 25, 2020 6:58 am) • Nemo1984 (Wed Mar 25, 2020 8:10 am) • jafox (Wed Mar 25, 2020 8:16 am) • odroid (Wed Mar 25, 2020 9:50 am) • concreted (Wed Mar 25, 2020 1:10 pm)

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

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by lordhardware » Wed Mar 25, 2020 6:58 am

ducalex wrote:I've polished the test build a bit. The connection process is simpler and the order of operation matter even less now. This one also supports 2-player NES (try something simple like super mario bros). However there is no synchronization at all at the moment and I've only tested with a computer so I'm not sure it will actually work with two GOs.

Thanks for testing!
I'm hoping to test this tomorrow :)

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

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by lordhardware » Wed Mar 25, 2020 4:26 pm

Pretty damn cool!

Tested multiplayer with Aussie Rules Footy.

Control sync worked perfectly, with both player 1 and player 2 odroid sending keypresses and video staying fine on player 1 system.

I played the 'kick to kick' mode for about two minutes and both odroids continues to stay in sync during that period.

However, video sync on player 2 odroid dropped off after about 20 seconds, while video continued to stay fine on odroid player 1.

Will test with GB after I finish watching survivor.
These users thanked the author lordhardware for the post:
ducalex (Thu Mar 26, 2020 5:39 am)

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

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by lordhardware » Wed Mar 25, 2020 6:14 pm

Sorry for the triple post.

Ok first off, netplay is great.
I can see the potential, the latency seems pretty low (certainly about as good as I'd expect from actual Gameboy)

Also great news, the update of the base doesn't seem to have affected emulator stability from the 20 or so games I've tested.

NES NETPLAY
- Display (Semi Working)
Initial sync working, display sync drops out after between 2 and 10 seconds based on testing

- ROM loading (working)
Emulators on both odroid reload the rom in multiplayer mode as expected

- Controls (working)
Odroid assigns controls based on 'player' priority when netplay link is recognised, controls are shown to be syncing and operating as expected when viewed on the player one display (which operates correctly) control latency from player two is somewhat delayed by an extra 20-30 milliseconds or so


-


GB NETPLAY
- Display (working)
Both devices continue emulation of their individual ROMs

- ROM loading (working)
Emulator doesn't reload, continues to retain current emulation

- Link Cable (not working)
Looks like this has not yet been emulated

- Controls (not working)
Because player one gets assigned 'controller one' it is now controlling both odroids, with the second odroid losing the ability to control its own session as it is now 'controller two' which, of course, does not exist.

Interestingly, when controlling both GB games, controller latency from P1 to odroid2 was much worse than the NES testing, with missed inputs and about a 200ms delay at times.



These users thanked the author lordhardware for the post:
ducalex (Thu Mar 26, 2020 5:39 am)

ducalex
Posts: 120
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 28 times
Been thanked: 161 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by ducalex » Thu Mar 26, 2020 7:00 am

Thanks for the valuable information, lordhardware! I'm very happy that this first test on real GOs was a success :).

At the moment, the way the test code works, input lag can be expected to be up to 35ms and the NES in this test build also had some slowdowns following the build setting changes. In the final code it should between 0 and 1 frame (16.66ms) for NES/SMS because that's how often we can reasonably sync (and how often the emulator polls for input). Not sure about GB since the serial link isn't emulated yet, but I'm confident we can reach full speed as well.

Some games will probably get out of sync no matter what, so more aggressive/complete state synchronization might be needed but we'll cross that bridge when we get there.


Do you think we should have a "Host Game" / "Find Game" menu instead of automatic connection? That would allow people to choose who's player 1 (host), do people care about that?

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

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by lordhardware » Thu Mar 26, 2020 7:15 am

ducalex wrote:
Do you think we should have a "Host Game" / "Find Game" menu instead of automatic connection? That would allow people to choose who's player 1 (host), do people care about that?
I guess that would be worth while, as some games handle multiplayer differently for each player?

It also does open the door for up to 4 players theoretically.


On the other hand, connect is VERY quick in this config. Probably wasted resources at this stage.


concreted
Posts: 14
Joined: Wed Feb 19, 2020 5:19 pm
languages_spoken: english
ODROIDs: Odroid Go
Has thanked: 20 times
Been thanked: 3 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by concreted » Thu Mar 26, 2020 3:07 pm

Wish I had another Odroid to try out netplay! If it helps anyone test, here is a list of all multiplayer GB games, including those that support 4-player: https://en.wikipedia.org/wiki/List_of_m ... _Boy_games

+1 for allowing "Host Game/Find Game" functionality.

Recently saw that Faceball 2000 GB has code to support 16-player over an unreleased hardware adapter (https://www.reddit.com/r/Gameboy/commen ... dium=web2x). Wonder if this would be possible via netplay?

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

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by lordhardware » Thu Mar 26, 2020 3:10 pm

concreted wrote:Wish I had another Odroid to try out netplay! If it helps anyone test, here is a list of all multiplayer GB games, including those that support 4-player: https://en.wikipedia.org/wiki/List_of_m ... _Boy_games

+1 for allowing "Host Game/Find Game" functionality.

Recently saw that Faceball 2000 GB has code to support 16-player over an unreleased hardware adapter (https://www.reddit.com/r/Gameboy/commen ... dium=web2x). Wonder if this would be possible via netplay?
Bear in mind that the netplay is currently searching for unsecured devices and has no capability for server searching or hosting.

Would be cool (once netplay is a little more stable) to set up some sort of web server for multiplayer odroid, especially given the social isolation at the moment.

ducalex
Posts: 120
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 28 times
Been thanked: 161 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by ducalex » Thu Mar 26, 2020 4:31 pm

Thanks for the feedback, I'll go ahead and replace the automatic pairing with a menu:
Host Game (P1)
Find Game (P2)
It does solve many potential problems at the cost of an extra step to connect.

Supporting more than 2 players shouldn't be very difficult once we get the basics to work, but Internet is trickier because of lag and the requirement for a server (direct p2p isn't very practical these days).

I hope to get functional NES and SMS netplay within 2 weeks. I expect GB to be the easiest to implement but it requires a second console, which should arrive soon. Either way I will be posting a test build as soon as NES works!
These users thanked the author ducalex for the post (total 2):
odroid (Thu Mar 26, 2020 5:01 pm) • lordhardware (Thu Mar 26, 2020 7:41 pm)

puggile
Posts: 8
Joined: Thu Mar 26, 2020 6:36 pm
languages_spoken: english
ODROIDs: Odroid-go
Has thanked: 7 times
Been thanked: 2 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by puggile » Thu Mar 26, 2020 7:19 pm

ducalex wrote:
Fri Mar 20, 2020 6:05 pm
A new release is available (2020-03-20). I've decided to release it sooner than planned because the next feature (netplay) might affect stability and take a while to complete. Download via to top post or Github.

Changes since 2020-03-13:
  • NES: Added PAL games support
  • NES: Cheetahmen 2 fixed (Mapper 228)
  • GB: Altered Space 3-D Adventure fixed
  • GB: Faceball 2000 fixed
  • GB: Performance improvement
I have been unable to fix the other 3 games but after a few days of failure it's going nowhere so I will look into it again in the future!

About PAL: "Region: Auto" will switch to PAL if the file name contains one of (E) (A) (Europe) (Australia), NTSC otherwise. Let me know if a PAL-exclusive game doesn't work and I'll look into it (but any PAL game with a working NTSC version is very low priority).


Next release:
I will be releasing a netplay basic connectivity test build in a few days. It will not allow working multiplayer just yet, but it will allow people with two GOs to help me test if their GOs can connect and talk to each other :).
Hi, now the menu for starting a game have 3 choice:

- Resume Game
- New Game
- Delete Game

The "New Game" choice also delete the save game you made previuosly.
In pokèmon games you can save the game with game menu or with emulator menu save.
Now you can't resume game saved by game menu.

- Enter in a pokèmon game, save with game menu and Quit emulator wiutout saving by emulator. ( see img 1)
img1: https://imgur.com/rLz5uBW
- Restart this game with "new game" choice and in pokèmon menu you only have a "new game" choice. ( see img 2)
img2: https://imgur.com/iiYptti

Can you add a choice in the emulator menu to start a game without delete any save?


With the option: "Filtering: Both" active, in Pokèmon first gen ( GB emulator ) sometimes you can see the most right vertical line of pixel "bugged". (See img3)
img3: https://imgur.com/7eVmehm

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

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by lordhardware » Thu Mar 26, 2020 7:43 pm


puggile wrote:
The "New Game" choice also delete the save game you made previuosly.
Actually this is a good point.
The system should only create a save (or overwrite the existing save) when you actually select the save option.
All other behaviour should retain the save state untouched.

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

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by Nemo1984 » Thu Mar 26, 2020 11:38 pm

lordhardware wrote:
Thu Mar 26, 2020 7:43 pm
puggile wrote:
The "New Game" choice also delete the save game you made previuosly.
Actually this is a good point.
The system should only create a save (or overwrite the existing save) when you actually select the save option.
All other behaviour should retain the save state untouched.
The new game option doesn't touch anything for me. It will only touch the savesate when I press save or delete.

puggile
Posts: 8
Joined: Thu Mar 26, 2020 6:36 pm
languages_spoken: english
ODROIDs: Odroid-go
Has thanked: 7 times
Been thanked: 2 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by puggile » Fri Mar 27, 2020 3:01 am

Nemo1984 wrote:
Thu Mar 26, 2020 11:38 pm
lordhardware wrote:
Thu Mar 26, 2020 7:43 pm
puggile wrote:
The "New Game" choice also delete the save game you made previuosly.
Actually this is a good point.
The system should only create a save (or overwrite the existing save) when you actually select the save option.
All other behaviour should retain the save state untouched.
The new game option doesn't touch anything for me. It will only touch the savesate when I press save or delete.
You have installed "retro-go_20200320" version?
If I select "new game" option the game restart and in pokèmon games ( GB or GBC are equals ) I can't see continue options.
So previous save game made with the game menu has been deleted.

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

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by Nemo1984 » Fri Mar 27, 2020 3:15 am

puggile wrote:
Fri Mar 27, 2020 3:01 am
Nemo1984 wrote:
Thu Mar 26, 2020 11:38 pm
lordhardware wrote:
Thu Mar 26, 2020 7:43 pm
puggile wrote:
The "New Game" choice also delete the save game you made previuosly.
Actually this is a good point.
The system should only create a save (or overwrite the existing save) when you actually select the save option.
All other behaviour should retain the save state untouched.
The new game option doesn't touch anything for me. It will only touch the savesate when I press save or delete.
You have installed "retro-go_20200320" version?
If I select "new game" option the game restart and in pokèmon games ( GB or GBC are equals ) I can't see continue options.
So previous save game made with the game menu has been deleted.
I'm on 2020-03-24.

ducalex
Posts: 120
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 28 times
Been thanked: 161 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by ducalex » Fri Mar 27, 2020 3:48 am

puggile wrote:
Fri Mar 27, 2020 3:01 am
With the option: "Filtering: Both" active, in Pokèmon first gen ( GB emulator ) sometimes you can see the most right vertical line of pixel "bugged". (See img3)
I will look into it, thanks for the report!
puggile wrote:
Fri Mar 27, 2020 3:01 am
If I select "new game" option the game restart and in pokèmon games ( GB or GBC are equals ) I can't see continue options.
So previous save game made with the game menu has been deleted.
I think you're confusing two things. The in-game save and the emulator save state.
In-game save isn't supported, the only way to save is via the emulator menu.
But I can add support for in-game save if there's a reason why save state aren't good enough?
Nemo1984 wrote:
Thu Mar 26, 2020 11:38 pm
The new game option doesn't touch anything for me. It will only touch the savesate when I press save or delete.
That is accurate, New Game does not delete the save state.

puggile
Posts: 8
Joined: Thu Mar 26, 2020 6:36 pm
languages_spoken: english
ODROIDs: Odroid-go
Has thanked: 7 times
Been thanked: 2 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by puggile » Fri Mar 27, 2020 4:11 am

ducalex wrote:
Fri Mar 27, 2020 3:48 am
I think you're confusing two things. The in-game save and the emulator save state.
In-game save isn't supported, the only way to save is via the emulator menu.
But I can add support for in-game save if there's a reason why save state aren't good enough?
Thanks for answer ducalex, now I understand.
The only reason I was interested in in-game saving is to use some "cloning glitch" in pokèmon games that required in-game save and reboot during this save.
Personally, I don't know if there aren't any other games that benefit of in-game save.
Thanks again

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

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by lordhardware » Fri Mar 27, 2020 4:47 am

There is actually no way to continue your game after beating the elite 4 in this emulator as the game self resets and there will be no battery save to load.

They may also be other games that perform a soft reset which will also be affected by the lack of battery saves.

I didn't think about this until just now.
These users thanked the author lordhardware for the post:
puggile (Fri Mar 27, 2020 4:50 am)

ducalex
Posts: 120
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 28 times
Been thanked: 161 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by ducalex » Fri Mar 27, 2020 7:19 am

puggile wrote:
Fri Mar 27, 2020 4:11 am
Thanks for answer ducalex, now I understand.
The only reason I was interested in in-game saving is to use some "cloning glitch" in pokèmon games that required in-game save and reboot during this save.
Personally, I don't know if there aren't any other games that benefit of in-game save.
Thanks again
I have implemented sram save. To enable it go to options -> more... -> save sram: yes. Then delete any save state you have in the emulator (it would override the sram save). I suspect some games will not work well with the option enabled (stuttering/freezing) so let me know if that is the case!

The attached test build also includes a cool new feature: GBC BIOS palettes that colorizes specific games with extended palettes like a GBC would :). It is optional of course.

Thanks!
Attachments
retro-go_20200326-2.zip
(1.67 MiB) Downloaded 12 times
Last edited by ducalex on Fri Mar 27, 2020 8:39 am, edited 1 time in total.
These users thanked the author ducalex for the post (total 4):
lordhardware (Fri Mar 27, 2020 7:33 am) • concreted (Fri Mar 27, 2020 12:31 pm) • puggile (Fri Mar 27, 2020 10:13 pm) • jafox (Mon Mar 30, 2020 12:14 pm)

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

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by lordhardware » Fri Mar 27, 2020 7:48 am

ducalex wrote:
puggile wrote:
Fri Mar 27, 2020 4:11 am
Thanks for answer ducalex, now I understand.
The only reason I was interested in in-game saving is to use some "cloning glitch" in pokèmon games that required in-game save and reboot during this save.
Personally, I don't know if there aren't any other games that benefit of in-game save.
Thanks again
I have implemented sram save. To enable it go to options -> more... -> save sram: yes. Then delete any save state you have in the emulator (it would override the sram save). I suspect some games will not work well with the option enabled (stuttering/freezing) so let me know if that is the case!

The attached test build also includes a cool new feature: GBC BIOS palettes that colorizes specific games with extended palettes like a GBC would :). It is optional of course.

Thanks!
You could probably offload the battery sav to a .sb file, and load both.

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

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by lordhardware » Fri Mar 27, 2020 7:54 am

I can have a look tonight if you want?

ducalex
Posts: 120
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 28 times
Been thanked: 161 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by ducalex » Fri Mar 27, 2020 8:40 am

The save states already contain the SRAM so both are already loaded when you resume a game.

The point of this new option is to save the SRAM automatically when the game writes to it, and to restore it on boot, allowing for the game's normal boot/save/load sequences.

I have updated the attachment on my previous post, retro-go_20200326-2.zip reduces stuttering significantly. It can be improved further, but I'll wait for people to test before I spend more time.

32teeth
Posts: 54
Joined: Sat May 18, 2019 2:56 am
languages_spoken: english
ODROIDs: Odroid Go
Game Boy Pocket Retro ESP32
Has thanked: 29 times
Been thanked: 26 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by 32teeth » Fri Mar 27, 2020 9:50 am

ducalex wrote:
Fri Mar 27, 2020 8:40 am
The save states already contain the SRAM so both are already loaded when you resume a game.

The point of this new option is to save the SRAM automatically when the game writes to it, and to restore it on boot, allowing for the game's normal boot/save/load sequences.

I have updated the attachment on my previous post, retro-go_20200326-2.zip reduces stuttering significantly. It can be improved further, but I'll wait for people to test before I spend more time.
Nice work.

By chance, is this like using memory map in traditional emulators?
Whereby watch for memory address A000->BFFF https://gbdev.gg8.se/wiki/articles/Memory_Map
Although we do this for 💕 of 🕹️

We Also Like Coffee!
Please Consider Supporting

Image

Check out our work
Retro ESP32 - GitHub
Retro ESP32 - Store

concreted
Posts: 14
Joined: Wed Feb 19, 2020 5:19 pm
languages_spoken: english
ODROIDs: Odroid Go
Has thanked: 20 times
Been thanked: 3 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by concreted » Fri Mar 27, 2020 12:31 pm

Ah, I recall Link's Awakening would benefit from loading the SRAM save - I had locked myself out of my save state on Odroid because I accidentally saved during the end credits. The game locks and requires a reset to keep playing after the end credits. Thanks for implementing this, will give it a try.

concreted
Posts: 14
Joined: Wed Feb 19, 2020 5:19 pm
languages_spoken: english
ODROIDs: Odroid Go
Has thanked: 20 times
Been thanked: 3 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by concreted » Fri Mar 27, 2020 2:51 pm

Tested the latest build and haven't noticed any new issues yet across GB/GBC/NES. Turning on SRAM save does lead to 1-2s of stuttering in the games I tried (Pokemon Yellow/Crystal, Link's Awakening) but works as expected (using "New Game" shows the save I made).

Did find one bug I hadn't noticed before, which I reproduced in original Go-Play firmware+past few releases:
  • GB: Donkey Kong (Playable - End of stage stats overlay on bottom half of screen is blank) (see https://youtu.be/eSk73VPlvwA?t=71 for example of what it should look like)
The GBC palettes for GB games is incredible! I'm having a blast trying out different GB games with it.

Also, thanks for getting Cheetah Men 2 to work - it is just as bad as I remember :lol:
These users thanked the author concreted for the post:
ducalex (Fri Mar 27, 2020 11:23 pm)

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

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by lordhardware » Fri Mar 27, 2020 3:32 pm

Ok so did a little more testing today.

NES sync is definitely a while out, I died on Mario Bros on the second odroid while still alive on the first because of missed inputs. With a 60 fps game like Mario it's gonna be really hard to keep sync with this method.

Would it be possible when in guest mode, to receive vinput information from the host instead of trying to sync emulation?


Also SRAM settings in GB don't seem to impact my performance, but once again I play with scale off for GB and GBC.

The SRAM setting is however global so if it does affect performance it should probably be per rom if possible.

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

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by Nemo1984 » Fri Mar 27, 2020 10:32 pm

Some GB games now have a white pixel line on the right side. It goes away if you open and close the menu.
Attachments
20200327_092842.jpg
20200327_092842.jpg (234.9 KiB) Viewed 615 times

puggile
Posts: 8
Joined: Thu Mar 26, 2020 6:36 pm
languages_spoken: english
ODROIDs: Odroid-go
Has thanked: 7 times
Been thanked: 2 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by puggile » Fri Mar 27, 2020 10:38 pm

I have implemented sram save. To enable it go to options -> more... -> save sram: yes. Then delete any save state you have in the emulator (it would override the sram save). I suspect some games will not work well with the option enabled (stuttering/freezing) so let me know if that is the case!
I have tried this option and it works.
But I noticed some slowdowns/stuttering (in both audio and video) in pokèmon games (GB) and Wario Land 2 game (GB). However great work!

The attached test build also includes a cool new feature: GBC BIOS palettes that colorizes specific games with extended palettes like a GBC would :). It is optional of course.
This option is fantastic, thanks a lot!
Is possible to add the same behavior you have when you play GB games in GBC console? ( the palette change automatically see https://youtu.be/s_4zaj8EbFI?t=2702 )

ducalex
Posts: 120
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 28 times
Been thanked: 161 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by ducalex » Fri Mar 27, 2020 10:58 pm

32teeth wrote:
Fri Mar 27, 2020 9:50 am
By chance, is this like using memory map in traditional emulators?
Whereby watch for memory address A000->BFFF https://gbdev.gg8.se/wiki/articles/Memory_Map
That is correct. Gnuboy already watched it and it sets ram.sram_dirty = 1 when it is written to (you can see that in mem.c : mem_write). So I just check the flag every frame and add a delay to commit to sd card 90 frames after the last write. I also save the RTC time in the same file.

concreted wrote:
Fri Mar 27, 2020 2:51 pm
Did find one bug I hadn't noticed before, which I reproduced in original Go-Play firmware+past few releases:
  • GB: Donkey Kong (Playable - End of stage stats overlay on bottom half of screen is blank) (see https://youtu.be/eSk73VPlvwA?t=71 for example of what it should look like)
The GBC palettes for GB games is incredible! I'm having a blast trying out different GB games with it.

Also, thanks for getting Cheetah Men 2 to work - it is just as bad as I remember :lol:
I'll add Donkey Kong to the list of games to check!

lordhardware wrote:
Fri Mar 27, 2020 3:32 pm
Would it be possible when in guest mode, to receive vinput information from the host instead of trying to sync emulation?
That is how it currently works, input is sent to the other console every frame. There is no sync at all. The goal of network-test-1 and network-test-2 was only to test connectivity (other builds since then were not meant to have functional network at all). I didn't even expect input sharing to work :).

lordhardware wrote:
Fri Mar 27, 2020 3:32 pm
The SRAM setting is however global so if it does affect performance it should probably be per rom if possible.
Per-rom settings are a bit of a headache from a UI standpoint. However since it seems the main need for SRAM saving is to work around some issues, maybe I could just make "New Game" load the SRAM from the last save state. So that most time you'd just save/resume state, but sometimes you'd New Game to fresh boot with SRAM?
These users thanked the author ducalex for the post:
lordhardware (Sat Mar 28, 2020 7:32 am)

ducalex
Posts: 120
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 28 times
Been thanked: 161 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by ducalex » Fri Mar 27, 2020 11:21 pm

Nemo1984 wrote:
Fri Mar 27, 2020 10:32 pm
Some GB games now have a white pixel line on the right side. It goes away if you open and close the menu.
That was reported by puggile and it is fixed. I was going to wait for the next release but I'm attaching a test build to this post.
puggile wrote:
Fri Mar 27, 2020 10:38 pm
Is possible to add the same behavior you have when you play GB games in GBC console? ( the palette change automatically see https://youtu.be/s_4zaj8EbFI?t=2702 )
That looks pretty cool! It should be possible, I'll look into how the GBC/Pokémon does it :).
Attachments
retro-go_20200327.zip
Right-most line glitch fixed
(1.67 MiB) Downloaded 9 times
These users thanked the author ducalex for the post (total 3):
Nemo1984 (Fri Mar 27, 2020 11:31 pm) • puggile (Fri Mar 27, 2020 11:39 pm) • jafox (Mon Mar 30, 2020 12:14 pm)

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

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by Nemo1984 » Fri Mar 27, 2020 11:34 pm

ducalex wrote:
Fri Mar 27, 2020 11:21 pm
Nemo1984 wrote:
Fri Mar 27, 2020 10:32 pm
Some GB games now have a white pixel line on the right side. It goes away if you open and close the menu.
That was reported by puggile and it is fixed. I was going to wait for the next release but I'm attaching a test build to this post.
puggile wrote:
Fri Mar 27, 2020 10:38 pm
Is possible to add the same behavior you have when you play GB games in GBC console? ( the palette change automatically see https://youtu.be/s_4zaj8EbFI?t=2702 )
That looks pretty cool! It should be possible, I'll look into how the GBC/Pokémon does it :).
Thank you so much!

puggile
Posts: 8
Joined: Thu Mar 26, 2020 6:36 pm
languages_spoken: english
ODROIDs: Odroid-go
Has thanked: 7 times
Been thanked: 2 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by puggile » Sat Mar 28, 2020 1:38 am

That was reported by puggile and it is fixed. I was going to wait for the next release but I'm attaching a test build to this post.
I have tested and it works perfectly. Thanks a lot.


I have verified that the following roms:
- Harry Potter and the Sorcerer's Stone (USA, Europe) (GBC)
- Harry Potter and the Chamber of Secrets (USA, Europe) (GBC)
when they start they make crash the application.
I encountered the problem in both the "20200320" and "20200327" versions.

ducalex
Posts: 120
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 28 times
Been thanked: 161 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by ducalex » Sat Mar 28, 2020 5:19 am

puggile wrote:
Sat Mar 28, 2020 1:38 am
I have verified that the following roms:
- Harry Potter and the Sorcerer's Stone (USA, Europe) (GBC)
- Harry Potter and the Chamber of Secrets (USA, Europe) (GBC)
when they start they make crash the application.
I encountered the problem in both the "20200320" and "20200327" versions.
Was there an error message or just "application crashed"? Because I have not been able to reproduce. I tried many times but I got it to crash only once. I think I fixed the crash I noticed, maybe it fixes your issue too. Can you test the attached build?
Last edited by ducalex on Sat Mar 28, 2020 5:24 pm, edited 1 time in total.
These users thanked the author ducalex for the post (total 2):
puggile (Sat Mar 28, 2020 6:00 am) • jafox (Sat Mar 28, 2020 9:56 am)

puggile
Posts: 8
Joined: Thu Mar 26, 2020 6:36 pm
languages_spoken: english
ODROIDs: Odroid-go
Has thanked: 7 times
Been thanked: 2 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by puggile » Sat Mar 28, 2020 6:23 am

I tried the new version but nothing changes. When I try to start a game, the emulator's start menu doesn't even appear.
see: https://imgur.com/XTQuTEQ

Maybe the rom name is too long?

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

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by lordhardware » Sat Mar 28, 2020 7:37 am


ducalex wrote: That is how it currently works, input is sent to the other console every frame. There is no sync at all. The goal of network-test-1 and network-test-2 was only to test connectivity (other builds since then were not meant to have functional network at all). I didn't even expect input sharing to work :).
Not sure I understand. If the odroid player 2 is receiving all vinput from odroid player 1, how could player 2 have died on an enemy which was avoided on player 1 odroid?

ducalex
Posts: 120
Joined: Sun May 19, 2019 3:29 am
languages_spoken: english, french
Has thanked: 28 times
Been thanked: 161 times
Contact:

Re: Retro-Go: Emulator launcher with improved emulators

Unread post by ducalex » Sat Mar 28, 2020 5:23 pm

puggile wrote:
Sat Mar 28, 2020 6:23 am
I tried the new version but nothing changes. When I try to start a game, the emulator's start menu doesn't even appear.
see: https://imgur.com/XTQuTEQ

Maybe the rom name is too long?
Rom name shouldn't be an issue. I'm attaching a new test build that fixes more problems I found and adds some debug info. If it still doesn't work I will need a serial log to trace the issue.

To do that connect the GO to your computer and open a serial console* to its port at baud 115200. Then start the game and wait for it to crash and after that copy all the output to https://pastebin.com/ or similar.

* On Windows Termite and PuTTY are simple to use. Let me know if you use another OS and need help.
Attachments
retro-go_20200328.zip
(1.67 MiB) Downloaded 9 times
These users thanked the author ducalex for the post (total 2):
puggile (Sat Mar 28, 2020 7:45 pm) • jafox (Mon Mar 30, 2020 12:14 pm)

Post Reply

Return to “Game Emulators”

Who is online

Users browsing this forum: No registered users and 8 guests