Jump to content
IGNORED

Custom firmware for Atari Gamestation Pro


Recommended Posts

Had kind of a brain flash...what if the games.ini interface that @Brad_from_the_80s gave us could be adjusted slightly to call up any core directly, instead of referring to the built-in ones by number. I would think this could solve the problem of adding emulators for everyone, wouldn't it?

 

Something like this:

[gamerom]
display_name=Game Name
suffix=.cv
release_date=1983
players=1
class_type=2
game_type=/cores/bluemsx_libretro.so
hard=0
save=0
timer=/data/Games/Coleco_Games/ADAM
about=""
controls=""
vertical=0

 

Conceivably anything could be run on GSP without much further fuss. What do you think?

Link to comment
Share on other sites

Posted (edited)
7 hours ago, Airwolfman said:

Had kind of a brain flash...what if the games.ini interface that @Brad_from_the_80s gave us could be adjusted slightly to call up any core directly, instead of referring to the built-in ones by number. I would think this could solve the problem of adding emulators for everyone, wouldn't it?

 

Something like this:

[gamerom]
display_name=Game Name
suffix=.cv
release_date=1983
players=1
class_type=2
game_type=/cores/bluemsx_libretro.so
hard=0
save=0
timer=/data/Games/Coleco_Games/ADAM
about=""
controls=""
vertical=0

 

Conceivably anything could be run on GSP without much further fuss. What do you think?

I do not see why not, thank god MY Arcade didn't lock the GUI down like RGL, I find if you concentrate on worrying what users are going to do with it when they buy it then you forget to add features because your to much working on locking everything.
RGL are the only company that locks there GUI, thats why THE400 uses THEA500 Carousel because it locked.

Edited by Spanner
Link to comment
Share on other sites

Posted (edited)

Looking at the images in AGSP and I found 2 image that are for the Arcade 1up - Atari 10-1 Couchcade... weird... 🤔
There are in miniGUI folder, `\minigui\res\images`My Arcade could of used it as a starting point so as a idea so where the idea of AGSP came from, would make sense.

)legal.thumb.jpg.0fc5be7b7c95a445a3863b83c2f44da0.jpg
logo.thumb.jpg.fe67495adb3cc3fae876bd3c7c0235ce.jpg

Edited by Spanner
Link to comment
Share on other sites

Posted (edited)
13 hours ago, Airwolfman said:

I would think this could solve the problem of adding emulators for everyone, wouldn't it?

The purpose of the INI file (which was established by Brad) was to provide a simple way to update the games.db database for presentation in the GSP gui interface.  

 

Generally you can't just change the game type from numerical to text unless you actually modify the GSP gui application itself (and/or implement a totally unique GUI application).  The GSP app is expecting specific types of values to be in the database for the tables it is using.  But if you placed file path updates in the type field and the updates go through, you'd have to test it, but this is something that could have already happened long ago.  If the updates went through as paths instead of numbers, you'd just have to modify related script files to handle the values.

 

You can use different numerical game_type values if you want to and use that for designation (a safer approach), and modify the scripts that launch the applications, which many of us have done already, so all this capability has already been in place for quite some time now.

 

That's why I added more tables to the database to provide an additional way to manage settings for other cores and games, so that the data in the new tables can be used with script processes to run cores and roms beyond what's available by default. 

 

The problem is that the GUI app itself currently only recognizes a specific hard defined number of categories and it has a limited scope of number pages that it presents. If we get more of the internals pointed to the sdcard, we can change some of how the screens are presented, but outside of replacing the GSP application itself, there will be some limitations imposed by using the GSP app itself from the presentation aspect. 

 

 

Edited by big_guitar
Link to comment
Share on other sites

Posted (edited)

Here is what the joystick is called in Linux... ShanWan Twin USB Joystick, makes sense because its a Joystick and Paddle... :)  ShanWan must be the manufacture of the AGSP in China.

Quote

Shenzhen ShanWan Technology Co., Ltd. is located in Shenzhen, Guangdong Province, China. It is a professional provider of game controller solutions, and all ICs are independently developed.

Our Products

The game controller solutions developed and operated by Shanwan Technology support compatible platforms such as PS, PS2, PS3, PS4, XBOX, XBOX360, XBOXONE, NGC, Wii, Wii U, PC, TV, box, phone, tablet, etc. Supported systems include: Windows series, Android series, iOS series, etc. The products used include: handles, dance blankets, guitars, drums, and joysticks (wired, wireless, single in one for you to choose from). https://shanwan.manufacturer.globalsources.com/homepage_6008847714550.htm

 

 

Populating /dev using udev: [    2.786466] usb 1-1.2: new full-speed USB device number 4 using dwc2
[    2.821371] udevd[72]: starting version 3.2.7
[    2.828015] random: udevd: uninitialized urandom read (16 bytes read, 81 bits of entropy available)
[    2.837630] random: udevd: uninitialized urandom read (16 bytes read, 81 bits of entropy available)
[    2.847439] random: udevd: uninitialized urandom read (16 bytes read, 81 bits of entropy available)
[    2.856807] random: udevd: uninitialized urandom read (16 bytes read, 81 bits of entropy available)
[    2.899153] usb 1-1.2: New USB device found, idVendor=0fe6, idProduct=9700
[    2.906076] usb 1-1.2: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[    2.913544] usb 1-1.2: Product: USB 2.0 10/100M Ethernet Adaptor
[    2.916139] udevd[72]: specified group 'kvm' unknown
[    2.929401] udevd[73]: starting eudev-3.2.7
[    3.016481] usb 1-1.3: new full-speed USB device number 5 using dwc2
[    3.135460] random: nonblocking pool is initialized
[    3.149723] usb 1-1.3: New USB device found, idVendor=20bc, idProduct=5500
[    3.156796] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    3.164196] usb 1-1.3: Product: Twin USB Joystick
[    3.169112] usb 1-1.3: Manufacturer: ShanWan
[    3.195100] input: ShanWan Twin USB Joystick as /devices/platform/10180000.usb/usb1/1-1/1-1.3/1-1.3:1.0/0003:20BC:5500.0002/input/input2
[    3.208717] usb 1-1.1: input irq status -75 received
[    3.277388] ---------lxm----add----evdev_connect,1401,dev_name(&evdev->dev)=(null),dev_no=2
[    3.277388]
[    3.289062] ---------lxm----add----evdev_connect,1408,evdev->handle.name=event2,dev_no=2
[    3.289062]
[    3.305987] betop 0003:20BC:5500.0002: input: USB HID v1.11 Gamepad [ShanWan Twin USB Joystick] on usb-10180000.usb-1.3/input0
[    3.321260] betop 0003:20BC:5500.0002: Force feedback for betop devices by huangbo <huangbobupt@163.com>
[    3.370373] input: ShanWan Twin USB Joystick as /devices/platform/10180000.usb/usb1/1-1/1-1.3/1-1.3:1.1/0003:20BC:5500.0003/input/input3
[    3.446949] ---------lxm----add----evdev_connect,1401,dev_name(&evdev->dev)=(null),dev_no=3
[    3.446949]
[    3.460383] ---------lxm----add----evdev_connect,1408,evdev->handle.name=event3,dev_no=3
[    3.460383]
[    3.471947] betop 0003:20BC:5500.0003: input: USB HID v1.11 Gamepad [ShanWan Twin USB Joystick] on usb-10180000.usb-1.3/input1
[    3.484775] betop 0003:20BC:5500.0003: Force feedback for betop devices by huangbo <huangbobupt@163.com>
[    3.496322] usbhid 1-1.3:1.2: couldn't find an input interrupt endpoint
[    3.799343] FAT-fs (mmcblk0p1): utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive!
[    3.811857] [EXFAT] trying to mount...
[    3.890306] [EXFAT] mounted successfully

 

Edited by Spanner
Link to comment
Share on other sites

Posted (edited)
1 hour ago, big_guitar said:

The purpose of the INI file (which was established by Brad) was to provide a simple way to update the games.db database for presentation in the GSP gui interface.  

 

You can't just change the game type from numerical to text unless you actually modify the GSP gui application itself (and/or implement a totally unique GUI application).  The GSP app is expecting specific types of values to be in the database for the tables it is using.  

 

You can use different numerical game_type values instead if you want to, and modify the scripts that launch the applications, which many of us have done already, so this isn't something we haven't already accomplished or haven't had the ability to establish. 

 

That's why I added more tables to the database to provide an additional way to manage settings for other cores and games, so that the data in the new tables can be used with script processes to run cores and roms beyond what's available by default.  The problem is that the GUI app itself currently only recognizes a specific hard defined number of categories and it has a limited scope of number pages that it presents. If we get more of the internals pointed to the sdcard, we can change some of how the screens are presented, but outside of replacing the GSP application itself, there will be some limitations imposed by using the GSP app itself from the presentation aspect. 

 

 

Once I put it into PCUAE you should be able to change the images in the GUI so change the way it looks if you want so be able to work on it more, its files will be in the PCUAE Mode folder(Modes\PCUAE_Mode\agsp_files) under the Modes folder, I plan to put all its files in there, most of them are in there now... :) just need to work out a way of using a USB Stick or the SD Card so you can pick it by a setting, PCUAE can be use in other models too so like THE400 Mini and Atari2600 Plus too, you can take out its PCUAE USB Drive and put into a different model and run it, you will not be able to do that if its used in the SD card(PCUAE can run on a sd card too, I run it on one) because it use exFAT, all the others mini's use FAT32, but I will work it out... :)

Edited by Spanner
Link to comment
Share on other sites

Posted (edited)
50 minutes ago, Spanner said:

ShanWan Twin USB Joystick

In this case it's a bit of a custom job with the paddle added.  They make other controllers that will report under the same name that do not have the paddle.  The evtest app exists on the GSP, we've run that before to report on how any controllers are seen.

Edited by big_guitar
Link to comment
Share on other sites

I am in awe of what you guys can do with these devices! I don't understand half of what you post, but it is all super interesting and intriguing!

Has anyone done a video to walk through the steps of getting this to work on the GSP? I'm fairly competent in setting up Botocera or retropie, and I got the Nexus for the legends and flashbacks working, but I will admit to using what other folks posted for that, but the GSP stuff seems a bit out of my league 🙂

 

A detailed tutorial would be amazing!

 

Thanks for all that you guys do!

 

 

Link to comment
Share on other sites

6 minutes ago, Spanner said:

Once I put it into PCUAE you should be able to change the images in the GUI so change the way it looks

Well that could be cool to experiment with.. Can minimally rename the categories and change music. 

 

At least some of the existing built in games are probably best left with their defined existing class and game types especially for paddle scenarios.  There does seem to be some logic outside of the database record values alone in play.  

Link to comment
Share on other sites

1 hour ago, Tifany said:

Has anyone done a video to walk through the steps of getting this to work on the GSP?

Hi Tifany, I'm not sure what you mean by "this"... it all depends on what you are looking to have happen.

There are youtube videos online working with GSP for various things, but not surrounding the current conversation.

 

Given that there may be more possibilities available with changes from @Spanner, you may want to wait and revisit this later.

 

Otherwise, you will likely want to make sure you've updated your firmware to 1.30c at a minimum as referenced on page 1 in the original post of this thread.  There is also a video with instructions here.  

 

Beyond that, as far as the things I've shared myself, I've provided a decent amount of documentation around adding other libretro core libraries into the mix for GSP usage by using the windows app I made for editing the GSP games database (which requires 1.30c firmware but does not rely on using the INI file for game table updates).  For the most recent postings I have for those, click here (0.5.7)  and you can read the PDF files I established in numerical order located in the zip referenced on that post under the documentation folder.  If you were to use the windows app, there is an update you can place on top of 0.5.7 that can be referenced here (0.5.7b) .

Link to comment
Share on other sites

Hi,

 

I think I was thinking about a video showing the steps of getting the firmware and flashing it to the GSP. maybe highlighting what has been accomplished so far, stuff like that 🙂

But, yes, I think you are right that things are changing and there may be something new and exciting coming soon with the PCUAE updates. Best to wait until things settle down a bit to ask about "How To" info.

 

Thanks for responding to me!

Link to comment
Share on other sites

12 hours ago, Tifany said:

I think I was thinking about a video showing the steps of getting the firmware and flashing it to the GSP.

 

@jonreddick of GenXGrownUp (YouTube channel here) has posted several videos that are step-by-step walkthroughs for updating the firmware, installing the custom firmware (subject of this thread), and how to add additional games to both standard and custom firmware setups:

If you can wrangle Batocera and Retropie, you'll be fine with this.

  • Like 1
Link to comment
Share on other sites

Posted (edited)

Definitely feasible.  Ideally the minigui folder would be accessible via sdcard so you could customize your own background.

 

Otherwise, you could patch the firmware to replace fg_background.jpg. Although if you're changing category names, you'd have to replace a few other image files to match. But there might be some hard coded class type logic in the GUI you'd have to work around which may force you to keep some Atari types in a particular order.

 

With the limited sections, you might want to leave one as MISC to catch all 'other' types, such as TG16, C64, DosBox, etc.

Edited by big_guitar
Link to comment
Share on other sites

So I hope there'd also be a way to branch each one into a second screen of category names, like this (plus of course one more for the misc consoles):

 

             Atari                                 COLECO                                MATTEL                                      NINTENDO                   SEGA

   /           |        \                      /                   \                         /            \                                             |                             |

ATARI   ATARI   ATARI           COLECOVISION  ADAM     INTELLIVISION   INTELLIVISION II            EVERY CONSOLE       EVERY CONSOLE 

2600     5200     7800

 

I would think a big plus would be a settings screen that allows the user to choose their own labels and emulators.

Link to comment
Share on other sites

Posted (edited)
1 hour ago, Spanner said:

I wouldn't want to use USB for data since that's taking away a port I could use for keyboard or controller, where the SD card is already available for data and wouldn't normally be used for other purposes. I'm not sure what you mean by hot swapping pcuae or why you'd have a need to do that.  I suppose you mean swapping the usb drive without power down.  I'm used to power down and swapping sd-cards at this point, but you can insert sdcard after power on and that works currently. Will your implementation utilize the existing gsp app?

Edited by big_guitar
Link to comment
Share on other sites

9 hours ago, Airwolfman said:

So I hope there'd also be a way to branch each one into a second screen of category names

Even without Spanner's changes, a secondary program could be launched the same way we've already launched separate apps, which could act like a secondary menu, it's just a matter of willingness to invest time & effort to develop an app for the platform. Not a small ask, but I think Spanner wants to utilize the majority of his pre-existing code as much as possible and have that run on GSP. 

Link to comment
Share on other sites

2 hours ago, big_guitar said:

I wouldn't want to use USB for data since that's taking away a port I could use for keyboard or controller, where the SD card is already available for data and wouldn't normally be used for other purposes. I'm not sure what you mean by hot swapping pcuae or why you'd have a need to do that.  I suppose you mean swapping the usb drive without power down.  I'm used to power down and swapping sd-cards at this point, but you can insert sdcard after power on and that works currently. Will your implementation utilize the existing gsp app?

If PCUAE runs from SD card slot that would be great.

 

A second SD card could be used for other non PCUAE modes like 1.3c and manual edits to run things.

Link to comment
Share on other sites

3 hours ago, Vic20Ian said:

A second SD card could be used for other non PCUAE modes like 1.3c and manual edits to run things.

Having the minigui folder resources recognized via SD would be ideal in either scenario. Would be nice as an addon to 1.30c.

Link to comment
Share on other sites

Posted (edited)

[Windows Update] - gspgames 057d - full 

 

Tool Changes:

  • Sort & Renumber games in the GUI based on up to 3 properties.  This will reorder how the games are displayed within their respective categories.
    In the example below, Intellivision games are game_type 19, and Colecovision games are game_type 18.  
    Sorting in descending order by game_type will list those games first.
    (included start_local_sd.sh is required for game_types greater than 15; can be deployed via Quick Start pages)
     
  • Check for orphaned database game file/trigger file references.  (i.e., if your records reference a game file that can't be found on the card).
    Export results.  This can be used without db enhancements against the games table.

image.png.00e90e77f12aa614bc684944a0bc00eb.png

image.thumb.png.fbf24f34d619da9501b72b67f27da51e.png

 

File Validator to report orphaned records where there is no file match on the sd card.

image.thumb.png.edd0e012827cac4c60f7710172304beb.png

 

 

gspgames-057d.zip

Edited by big_guitar
Link to comment
Share on other sites

Posted (edited)
21 hours ago, big_guitar said:

I have always felt that the 'Box Art' on the GSP looks a bit too small, making the subtle details of the artwork and font appear squished and blurry...

Does anyone agree with that, or is it just me? :roll:

Are there any plans to make the 'Box Art' on the game selection screen a bit larger?...It would be great if we could get the size of the box art to look somewhat similar to that of the Atari FlashBack 9.

*See below:

image.thumb.jpeg.3fbb539757d726492696c438af8aa67b.jpeg

Edited by Jazality
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...