Jump to content
IGNORED

Gamestation Pro


Dr Karnov

Recommended Posts

ok, well it was not happy with my if substring statement, changed it to echo "$4" | grep -q "$colcheck"... so it had been firing up Genesis. But now it does nothing, no black screen. 

 

OS reporting:  PRETTY_NAME="Buildroot 2018.02-rc3"

retroarch does not like the -V command; but reports 

===================================================================
 -- 7dab294 --
编译器: GCC (6.5.0) 32-bitBuilt: Oct 10 2023
===================================================================

Link to comment
Share on other sites

Log file for retroarch launch with bluemsx_libretro.so reports: 

 

retro: tasks/task_content.c, content_load, 273 deinit(will reinit later)
retro: retroarch.c, retroarch_main_init, 1533 err deinit
Unloading game..
Unloading core..
retro: core_impl.c, core_unload, 463 exit
retro: core_impl.c, core_unload, 465 exit
retro: core_impl.c, core_unload, 467 exit
Unloading core symbols..

Link to comment
Share on other sites

6 hours ago, big_guitar said:

Where did you put the boot image for this? Did you use a custom cfg?

I've not had enough time this past week to do much testing or coding.  Most of it is fully fleshed out in my head, I just need to comit 3-6 hours or so to complete the script.

Here's my Lynx test.  No .cfg, was used- just the defaults.  It might actually have better performance with a specified video driver, but I've not had a chance to run further tests yet.

This script also creates copies of the GsP's included RetroArch configs.

lynx-chips-test.zip

  • Like 1
Link to comment
Share on other sites

9 hours ago, fluxit said:

I've not had enough time this past week to do much testing or coding.  Most of it is fully fleshed out in my head, I just need to comit 3-6 hours or so to complete the script.

Here's my Lynx test.  No .cfg, was used- just the defaults.  It might actually have better performance with a specified video driver, but I've not had a chance to run further tests yet.

This script also creates copies of the GsP's included RetroArch configs.

lynx-chips-test.zip 11.96 kB · 0 downloads

Thanks for that! So did you find it necessary to make a full copy of the retroarch subdirectory based on where the so file was called from?

If this worked, then the shared object file must have the boot image embedded I suppose, or else Handy handles it by other means. But it seems bluemsx does require the 2 system subfolders based on libretro documentation.

So your example would fire regardless of what file you selected from the sdcard.  I suppose I could make dummy files that are selectable, and then use the prefix after trapping with an if statement and call the same name with a different extension recognized by the shared object core module (in cases where a matching extension is required by the core).  I might try invoking Handy without copying the folder to test behavior differences. Thanks again!

Edited by big_guitar
Link to comment
Share on other sites

Finally, I'm making real progress.  I noticed initially but then forgot, that the GsP uses busybox ash as it's shell.  I'd been(partially accidentally) targeting dash with my scripts, and so my results had been hit and miss.  Now I know that I have to "busybox ash testscriptname.sh" when testing, in order to see similar results to what happens on the GsP.

 

I improved the vectors on the included arcade vector games, and also the performance of those games.  The vectors were not all displaying with MyArcade's settings,  Vector width is increased, which I'm sure some folks won't like, but you can tweak the included configs in "arcade-vector1.zip" to your liking.  The performance improvement is due to decreasing the audio sample rate to 22050.  Alsa likely resamples to a default output rate for the audio device, but if so, it's performance in doing so is better than RetroArch's 48000.

 

1.To gain these improvements, you must first install the patched v1.30 firmware:

On 12/18/2023 at 4:36 PM, fluxit said:

--snip--

 

The patched firmware will allow any commands that you wish, to be executed by placing a file named runme.sh in a directory named agsp at the SD card's root directory.  If the file runme.sh doesn't exist, the Gamestation Pro goes on its merry way as though it had not been modified.

 

--snip--

 

Here is the xdelta3 patch to be applied to the 1.30 update Firmware.img if anyone wants to try it.

 

Use at your own risk.  Any time the firmware is rewritten there is a possibility, however small, that it will fail, potentially bricking the device.  In addition, it may be possible to do damage to the GsP via unrestricted use of runme.sh(using it to delete or add files to the GsP's internal file systems, for example,) as well, though the supplied patch should not be capable of causing any damage on its own.

 

Unzip and apply the patch to the 1.30 firmware before flashing.  Instructions for applying the patch are in readme-patch.txt.

 

A Windows version of xdelta3 is available here.

 

A Windows version of md5sum is available here.

shell-patch-v2.zip 1.92 kB · 2 downloads

2. Then you must download and unzip the below agsp.zip file to the root of your SD card(preserving directories)

3. Put the SD card in your Atari Gamestation Pro's slot.

4. Boot the GsP, and load any game.

5. Turn off the GsP, and with the SD card connected to your computer, unzip the /agsp/arcade-vector1.zip file(again preserving directories.)  You should be asked if you want to replace two files at this point, say yes.

6.  You are done.  Put the SD card back in your GsP's card slot and enjoy better vector game play.

agsp.zip

Edited by fluxit
  • Thanks 1
Link to comment
Share on other sites

23 hours ago, fluxit said:

Here's my Lynx test.

This did not work for me, even using your same directories.  Of course in the source the retroarch subdirectory is under 'libretro' but your copy job is not placing it under agsp/libretro, but directly into agsp/retroarch, not sure if that's significant. The only other thing could be if and where the boot image was located if you placed it on the card. Or if you used the armv7-neon-hf version instead of armhf?

Edited by big_guitar
Link to comment
Share on other sites

1 hour ago, big_guitar said:

So then you do think that it is necessary to duplicate the retroarch directory on the sdcard, or is this just required for the vector improvements? 

I'm making copies of the .cfg files so that they are available to the user for alterations.  Otherwise they are only located on the squashfs, which is read-only.

 

28 minutes ago, big_guitar said:

This did not work for me, even using your same directories.  Of course in the source the retroarch subdirectory is under 'libretro' but your copy job is not placing it under agsp/libretro, but directly into agsp/retroarch, not sure if that's significant. The only other thing could be if and where the boot image was located if you placed it on the card. 

Did you copy an  arm version of handy_libretro.so into /agsp/libretro/ on your SD card, and a copy of the rom called "Chip's Challenge (1989) [o1].lnx" into /Games/lynx/ on your SD card, in addition to copying  the runme.sh from lynx-chip-test.zip into your /agsp/ directory?  Note that *that* runme.sh only runs the test, and doesn't use a .cfg file, so it can only run the game, and does not configure any controllers, so if you get *any* working controls, it is only a result of the RetroArch defaults.  You should also end up with a log file named "lrlnx.log" in the root of your SD card after running the test on your GsP.

Edited by fluxit
Link to comment
Share on other sites

29 minutes ago, fluxit said:

Did you copy an  arm version of handy_libretro.so into /agsp/libretro/ on your SD card, and a copy of the rom called "Chip's Challenge (1989) [o1].lnx" into /Games/lynx/ on your SD card, in addition to copying  the runme.sh from lynx-chip-test.zip into your /agsp/ directory?

Thanks for the response, yes (from armhf not armv7-neon-hf).  I ran the copy job separate, but the runme is only executing the retroarch command.  The log file (lrlnx.log) was created, which only reports

"retro: tasks/task_content.c, content_load, 273 deinit(will reinit later)".   It just pauses briefly after selecting any file on the sdcard, but returns to play the sdcard list music.  If you see something obvious, appreciate the feedback! 

 

(on my Windows, the usb is seen as Q)

for q:\agsp\runme.sh: 

/usr/bin/retroarch -y "12"\
-k "$1"\
-L /sdcard/agsp/libretro/handy_libretro.so "/sdcard/Games/lynx/Chip's Challenge (1989) [o1].lnx" >/sdcard/lrlnx.log
      #-L /sdcard/agsp/libretro/bluemsx_libretro.so "/sdcard/Games/Bump 'n' Jump (NA).col" >/sdcard/lrcol.log
      #-c /mnt/sdcard/retroarch/cfgname($3)
         #fi

 

 Directory of Q:\agsp\libretro (the retroarch directory is under \agsp\retroarch, as per your copy job)

 

12/25/2023  12:42 PM    <DIR>          .
12/25/2023  12:42 PM    <DIR>          ..
12/07/2023  07:22 AM           181,748 a5200_libretro.so
12/07/2023  07:22 AM           182,332 a5200_libretro_new.so
12/07/2023  07:22 AM           571,820 fceumm_libretro.so
12/07/2023  07:22 AM         3,009,696 genesisplusgx_libretro.so
12/07/2023  07:22 AM        23,505,084 Jungle2003_libretro.so
12/07/2023  07:22 AM         4,012,444 Jungle2014_libretro.so
12/07/2023  07:22 AM         5,613,920 Jungle2016_libretro.so
12/07/2023  07:22 AM           575,036 mednafen_pce_fast_libretro.so
12/07/2023  07:22 AM           800,424 mgba_libretro.so
12/07/2023  07:22 AM           100,600 prosystem_libretro.so
12/07/2023  07:22 AM           442,032 snes9x2002_libretro.so
12/07/2023  07:22 AM         2,014,884 snes9x_libretro.so
12/07/2023  07:22 AM         1,525,840 stella2014_libretro.so
12/07/2023  07:22 AM         1,784,928 stella_libretro.so
12/07/2023  07:22 AM         2,376,388 vice_xpet_libretro.so
10/24/2020  02:24 PM            95,652 handy_libretro.so
              16 File(s)     46,792,828 bytes

 

 Directory of Q:\games\lynx

12/25/2023  12:24 PM    <DIR>          .
12/25/2023  12:24 PM    <DIR>          ..
12/25/2023  01:41 PM           262,208 Chip's Challenge (1989) [o1].lnx
               1 File(s)        262,208 bytes

 

Edited by big_guitar
Link to comment
Share on other sites

19 minutes ago, big_guitar said:

 

 Directory of Q:\games\lynx

12/25/2023  12:24 PM    <DIR>          .
12/25/2023  12:24 PM    <DIR>          ..
12/25/2023  01:41 PM           262,208 Chip's Challenge (1989) [o1].lnx
               1 File(s)        262,208 bytes

 

That should be \Games\lynx.  It's the GsP's regular Games directory.

Link to comment
Share on other sites

4 minutes ago, fluxit said:

@Riko Did you click on the empty box in the right-most "..." column, on the "Loader" row, and select the Loader.bin?  And then do the same with the "firmware" right-most empty box, but select your desired Firmware.img?

I did, i used my laptop and it worked fine, my desktop Windows 10 install was either conflicting with settings i have or missing updates ( I have disabled updates via Registry ) so likely was some security issue, working now thankfully. 

  • Like 1
Link to comment
Share on other sites

32 minutes ago, fluxit said:

That should be \Games\lynx.  It's the GsP's regular Games directory.

You're suggesting case sensitivity? When selecting games, the incoming rom variable is actually seen with 'Games' in the scripts (with capital G), even though the folder was created in all lowercase. But it hasn't been an issue otherwise for selecting any SD card games that are supported by default. I can see if it makes a difference if I rename with a capital G.

Link to comment
Share on other sites

5 minutes ago, big_guitar said:

You're suggesting case sensitivity? When selecting games, the incoming rom variable is actually seen with 'Games' in the scripts (with capital G), even though the folder was created in all lowercase. But it hasn't been an issue otherwise for selecting any SD card games that are supported by default. I can see if it makes a difference if I rename with a capital G.

When browsing the GsP's binaries and scripts, there seem to be some 'bugs,' where sometimes "Games" was used, and sometimes "games" was used.  As a result, there may be cases where "games" works with the release software, but "Games" typically works better, in my experience.  It's also recommended by MyArcade that the "Games" directory be capitalized.

Link to comment
Share on other sites

11 minutes ago, fluxit said:

It's also recommended by MyArcade that the "Games" directory be capitalized.

Well I renamed the folder multiple times to get the capital G in there, but the behavior hasn't changed.  Prior to applying your patch, I did first apply the latest firmware that matched your Dec 9 md5sum. Not sure what else could be happening if your file sizes are the same.  I also tried the armv7-neon handy libretro so file, no difference. baffling.... 

Link to comment
Share on other sites

13 minutes ago, big_guitar said:

Well I renamed the folder multiple times to get the capital G in there, but the behavior hasn't changed.  Prior to applying your patch, I did first apply the latest firmware that matched your Dec 9 md5sum. Not sure what else could be happening if your file sizes are the same.  I also tried the armv7-neon handy libretro so file, no difference. baffling.... 

The second difference that I can see from what you provided, is that I've not added any of the GsP's included RetroArch cores to my SD card, but I don't see why that would matter.  On the other hand, RetroArch does seem to like to touch every file in a directory that you point it at,  Try deleting all of your cores except the handy core.

 

My only other thought is that Linux sometimes doesn't like text files created by Windows apps.  Linux uses only line-feeds(0Ah) to end lines.  Windows uses carriage-returns(0Dh,) instead- sometimes with the addition of line-feeds.  Did you perhaps open your runme.sh with notepad.exe or something similar?

Link to comment
Share on other sites

DEFENDER CONFIG JOYSTICK CONFIG FILE

 

Here is a config file for arcade Defender that uses the 2 joysticks.

 

Action   Joystick
=====   ======= 
Thrust    A
Reverse   B
Fire   C
Smart Bomb   Start
Hyperspace   Select
Up   Up
Down   Down

 

Joystick 2
Start a 2 player game   Start

 

While playing the game, pressing Hyperspace will add one credit to the game.

You can only start a 2 player game since the start button is being used for Smart Bomb.  Both players use joystick 1.

 

Copy the file to the SD card cfg folder.
Save the original defender.cfg file if you want.
Rename this file to be defender.cfg 

 

Thanks to Domeshtan for his posts on controller config files.

 

I made a file for my 8BitDo Arcade Stick for Switch/X last week using the arcade layout and decided to make one for the included joysticks.


 

 

defenderGSPJoysyicks.cfg.gsp

Link to comment
Share on other sites

Windows can be a real pain when trying to rename a directory by changing letters to caps or lower case.  It won't work.  You may have to rename it to something like "ame" and then rename it to "Game" to get it to properly take.  Also make sure your filesystem is FAT32?

 

Link to comment
Share on other sites

I have a suspicion that the GsP has to boot twice with a newly formatted(or new out of the package) SD card before the GsP will display the "Select internal or Micro SD" selection dialog.  This is after adding the proper "Game" directory including roms.  I say this, because so many think that only exFAT formatted cards will work.  But I have two, otherwise identical cards here, one formatted FAT32, the other exFAT, and both work fine on my GsP.  It may be that people try a particular card once, it doesn't work, and so they reformat or try another card, when in fact all they needed to do is to shut down the GsP and turn it back on again.

 

That isn't to say that if you think that reformatting a card to the alternate format, whichever it is for you, won't help.  It might.  If there's an actual incompatibility, it might lie in the particular format of that particular card, and reformatting or switching formats might fix it.

Link to comment
Share on other sites

I just got one. And a guy said he updated his and it bricked his unit. So should I do the update or not? And I like the system. I am not in love with it though. The game selection is great. The extra games are fine. I have them in another system. The AT Games Hardcore Legends Pro. The sticks are decent. Spiner is decent. So I give it a 5 out of a 10. But what about the firmware update should I update it? And I have not been herein a good while.  

Link to comment
Share on other sites

6 minutes ago, Elvis said:

I just got one. And a guy said he updated his and it bricked his unit. So should I do the update or not? And I like the system. I am not in love with it though. The game selection is great. The extra games are fine. I have them in another system. The AT Games Hardcore Legends Pro. The sticks are decent. Spiner is decent. So I give it a 5 out of a 10. But what about the firmware update should I update it? And I have not been herein a good while.  

I wouldn't worry about bricking your GsP with the update.  Not that it couldn't happen, but we've not seen many reports of this happening.  Your odds are pretty good for a successful update.  That having been said, if you're not sure you want to update, there's no reason you have to do it now.  You can give it some time, to see how you feel about it in the future. 

 

Regarding the value of the update: The new SD card handling that was added is nice, in addition to the game instructions for those who need them.  Overall, I'd have to say that the update is worth the effort, and the risk.

Link to comment
Share on other sites

Mine has always been exFat.  I ran GSP with it first and saved a built in game before adding any files to the sdcard myself. 

I changed runme.sh (eventually) to the following and just selected a Genesis game.

echo "gamelib: $GAME_LIB" >/sdcard/gamelib_chosen.txt;
 /usr/bin/retroarch -y "12"\
    -k "$1"\
    -c "$3"\    
    -L /usr/lib/libretro/$GAME_LIB "$4" >/sdcard/retrolog4.txt

the gamelib did pass "gamelib: genesisplusgx_libretro.so"

but a screen came up "Welcome to Retroarch" in the center, although it changed to a black on black bar so the text was no longer readable, and in the bottom-left corner, the text ". - No Core" 

This time, nothing wrote to retrolog4.txt.  Before this I had "-v" in there and this screen did not come up.  Will remove runme and see if everything else is still cool.  The games folder is definitely 'Games' (although I may change that back to 'games' to test again). Otherwise may reflash to see if behavior changes.

20231226_053650_sm.jpg

 

[UPDATE: removed runme, everything still ran cool from sdcard, same genesis file loaded]

The runme.sh file was UTF-8 Unix (LF) same as start_local_sd.sh reports (from core 1.30 firmware). Will keep trying things to see what was causing this.

 

[UPDATE2: It seems there was a TAB character in the retroarch command line that caused the issue.  Now I have to go back and see how long ago I had a tab character in the retro command line! I will have to make sure I have 'Show All Characters' turned on, sorry about that.  Interesting retro screen though. ]

 

Edited by big_guitar
  • Like 1
Link to comment
Share on other sites

Whoa.. after all that, I was able to get CoolCV to load, very cool! will post details when I can, have to get ready for work now... using lowercase 'games' folder again.  I used a dummy "bin" file, trapped 'coleco' folder, changed the rom name to ".col", and it worked like a charm!  I only tested this with one game so far, but it worked.

Pressing 'Start' caused a the PAUSED! message to come up, but I ran Carnival and it was playable, no issues.  The stick moved the shooter, A button fired... 

 

20231226_065331_sm.jpg

20231226_065357_sm.jpg

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...