Jump to content
IGNORED

PCUAE Atari2600+ USB Rom Loader


Spanner

Recommended Posts

You will need a USB OTG Cable with a USB Port on the end of it, I use a Sony Micro USB OTG Cable, it need to be plugging into the MicroUSB port on the Main board(RK3128 SoC board), I have not tried the USB-C port.
It has PCUAE in its name because I do plan on adding it to PCUAE some time but it will be separate too.

Here is a picture of Sony EC310 Micro USB OTG Cable:

61d+mMysplL._AC_SL1200_.jpg


I figured out a way of loading roms, .bin or .a26 files and changed them to use the name `game1.bin`, Retroarch should support all the extension it supports so see the file as a a26 even if its name is `game1.bin`
I thought it be better if this had its own thread so I could post updates on what I am doing in here.

This only works the Colour Switch is set to B/W, it enables its USB and the games are in colour.

At the moment it can load a 2600 game and 7800 game from a USB Drive by switching between them with a flag file and you can now switch between USB Mode and Cartridge Mode by change its flag file(txt file) on the root of the USB Drive.
 

Enable/Disable Dumper/Core

===================

2600 Mode(Core) = Atari7800-enabled=no

7800 Mode(Core) = /mnt/Atari7800-enabled=yes

Cartridge Dumper Enable = cartdump-enabled=yes

Cartridge Dumper Disable =  cartdump-enabled=no
 

The games are in two folders so there are separate form each other so are in:
Atari2600 Game = /mnt/PCUAE-Atari-Games/ATARI_7800/Atari7800-1.bin

Atari7800 Game = /mnt/PCUAE-Atari-Games/ATARI_VCS_2600/Atari2600-1.bin

I made two install scripts, one to add the modified dmenu.bin to the firmware and another one to remove the modified dmenu.bin file, you can run them when you are logged in to the Atari2600+ Linux shell, easier then having to put all the commands in manually.

When it copies the modified dmenu.bin to the firmware is make a backup of the original first for a backup and so you can run it in Cartridge Mode.

Some Pictures of it running Pole Position 2600 and Pole Position II 7800. 
image.png?ex=65bd5a80&is=65aae580&hm=4a3

image.png.164b7697ce59aeee1849d7c486c677

I will be releasing it when I am happy with it so hopefully not to long... :)
Just trying make sure I have not missed anything.

Edited by Spanner
  • Like 6
Link to comment
Share on other sites

At the moment it only loads 2600/7800 games from a rom file using its bulletin Retroarch cores.

The idea came from PCUAE when I added Atari Mode to PCUAE and had to work out how to get it to load Disk images, I added it PCUAE Atari 8bit/16Bit where you load a game from a folder if it see it in there it automatically runs it when you run Atari Mode in PCUAE... :)

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

You can switch games on the fly too it will repletely try and find a game on the USB Port and you can add a different game that named the Atari2600-1.bin or Atari7800-1.bin and it well search for it when you plug it in even if the console is on and then load it, it uses the USB like a cartrigde port... :)

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

Nice.  The first thing I did after figuring out that I could load roms from USB/OTG via terminal was to create a launch script : D

 

Regarding Champ Games’ ARM-based titles, I have loaded them previously - the 2600+ currently does not have the performance needed to run them full speed.

Link to comment
Share on other sites

On 1/23/2024 at 3:29 PM, remowilliams said:

Nice.  The first thing I did after figuring out that I could load roms from USB/OTG via terminal was to create a launch script : D

 

Regarding Champ Games’ ARM-based titles, I have loaded them previously - the 2600+ currently does not have the performance needed to run them full speed.

On image 1.0 all games up to Elevator agent worked fine for me. On updating to 1.1 i did notice slow down on mappy. Had to get some modifed roms from John at Champ games as quadtari wasnt being detected properly and controlls were unusable for some games. Save Key and quadtari had to be disabled for two joysticks to work in Robot wars but it played extremely well on image 1.0. I hear the images are now going to be cpu optimised so will hopefully see some improvements. 

Link to comment
Share on other sites

23 hours ago, THX-1138 said:

The name just makes me think of the UAE Amiga emulator.

Yes me too, a PC version of Amiga UAE, it does have Amiga Mode too... :) , PCUAE stands for Project Carousel USB Anniversary Edition, it easier to abbreviate it.... :)

Edited by Spanner
Link to comment
Share on other sites

I could release this as a beta so users could test it, you will need to connect a USB Stick using a OTGUSB cable with a Mini USB Connector on it and plug it in to the Mini USB Connector on its main board, it was the only way I could get the USB Stick to work, I bought a OTGUSB-C cable but when you plug it in and then plug the power cable in it, it does not power it, the USB-C OTG Cable does work with my Samsung Galaxy A22 mobile phone.


If it does not find a USB Stick then it will load the Dumper instead and load the cartridge thats in the slot.
At the moment the 4 switches on the Atari2600+ do not work, I need to find a way of adding them, they are controlled by the dmenu.bin file and this bypass it at the moment so is only loading Retroarch and its cores.
It uses flag files to make it do things, I can not add a menu to the Atari2600+ because its use KSM/DMS for its display so does not use fb0 Framebuffer like the RGL machines so will not work with yaft.

 

It does as well make a backup of the dmenu.bin file so you can put it back to how it was before, it includes two scripts one for adding the mod and one for removing it.

 

Enable/Disable Dumper/Core

===================

Cartridge Dumper Enable = cartdump-enabled=yes

Cartridge Dumper Disable =  cartdump-enabled=no

If you enable the Dumper then it disables the USB Rom Loader.

When you enable the dumper and load a game from a cartridge it will make a backup of it and sent it to the USB Drive too.

You can updated the dmenu.bin file too from the USB Drive using the flag file: dmenu-update-enabled=yes


It now loads the rom file is sees in the PCUAE USB Drive\PCUAE-Atari-Games\Run_From_USB folder so they have to be named correctly so:

Load Rom File from Run_From_USB folder

===========================

Atari VCS 2600 = Atari2600-1.bin

Atari 7800        = Atari7800-1.bin
Copy a game into the Run_From_USB folder and then make a copy of it then rename the copy to the right name so say copy the rom `Pole Position II (PAL) (Atari) (1987).a78` so you now have two copies of the file so when you name the copy you know what rom it loading in that folder so you rename `Pole Position II (PAL) (Atari) (1987) - Copy.a78`to `Atari7800-1.bin`, you always have a copy of the rom in there so you know what `Atari7800-1.bin`is... :)


If it has a different extension still name it `Atari2600-1.bin` or `Atari7800-1.bin`, Retroarch will see what type of game it is so does not matter what extension it is so if its a .a78, it will still load it.

You can enable other emulators in the USB Drive too(not added yet) I did add scripts and files for Retroarch 1.7.1 and Stella so they can be added later, you can use the flag files: `ra-mode-enabled=yes` and `stella-mode-enabled=yes` so it loads different modes.

Have a nice day, Are you gonna play Atari Today... :)

Download - https://github.com/CommodoreOS/PCUAE-Atari2600-USB-ROM-Loader

 

Edited by Spanner
  • Thanks 2
Link to comment
Share on other sites

You can as well use this to test roms cartridges you do not own yet so as a rom file and if they work properly before buying the game on cartridge so a way of saving you money on carts... :)
Added PCUAE Boot screen now that show for 5 seconds,

Change the location of the retroarch.cfg file to the USB Drive now so you can change its settings in it, enable logging.
Retroarch v1.9.4 does not use Autoconfig for its controller/joysticks and looks like the controllers are embedded in its binary so can only be changed in it, retroarch binary has been altered and its RGUI Menu has been changed.
My plan is to used a different Retroarch so you have all its settings(by flag file to switch) and a option to use Stella too if you want to using a flag file too, but I need to compile Stella first so it works on the Atari2600 Plus, 2600 Mode, have not got round to doing that yet, just making sure PCUAE USB ROM Loader works properly first.

Edited by Spanner
Link to comment
Share on other sites

7 minutes ago, remowilliams said:

A USB storage device is accessible via the 2600+ USBC port

 

You need to solder a USB/serial device onto the 2600+ debug serial header however to access the OS shell via terminal. 

Yes, but it's not writeable or accessible via the Retroarch menus.

 

I have an OTG cable and can access the Retroarch menu via a keyboard, but if I plug in a USB drive via a hub, the 2600+ sees it, but can't do anything with it.

Link to comment
Share on other sites

2 hours ago, John Stamos Mullet said:

To be clear here - in order to use this, someone would first need to solder an additional micro USB port onto the contact points on the 2600+ mainboard, since it doesn't come with one attached out of the box, right?

I have my Retropie up and running, so I would not solder anything but use the 2600+ as it is for all my 7800 games and most 2600 games, troublemaker roms will be loaded on my raspberry or tablet😊

But I follow all these threads with much interest, as changing some settings in retroarch and use save states some day looks promising🤙

  • Like 1
Link to comment
Share on other sites

16 hours ago, John Stamos Mullet said:

To be clear here - in order to use this, someone would first need to solder an additional micro USB port onto the contact points on the 2600+ mainboard, since it doesn't come with one attached out of the box, right?

No, there is a USB Mini port on its main board inside the A2600 Plus, I tried using a USBOTG Cable with a USB Port on it with a USB-C on it and it didn't work, it didn't power it, it works on my Android phone so I am guessing it would only work with a certain type.
If you can get a USB-C USBOTG Cable to work you should be able to use that instead of using the one inside it.
With the USB Serial, it has holes in its uart so you only need to add 3 wires to it, I added them to mine but I didn't not solder them, you can stick the wires in if you use wire like phone wire where its stiff then stick it down with black tape, you can use the wire like jump pins to so connect them to the jumper wire from the USB Serial, I show a picture soon.

Edited by Spanner
Link to comment
Share on other sites

A better picture... :)

And you do not need to remove the main board to add the Serial USB wire or MiniUSBOTG Cable... :) and not messing up the pins that are connected it to the Dumper and Joysticks I/O board, like I did, unplugging and plugging the main board all the time is not a good idea and can mess up its pin connectors, like on mine and then starts to have a problem with the key/select pin where it see the cartridge plugged in, where its not connecting properly, the pin.
 

Atari2600 Plus Main Board UART and MiniUSBOTG Connectors.jpg

Edited by Spanner
Link to comment
Share on other sites

6 hours ago, Spanner said:

No, there is a USB Mini port on its main board inside the A2600 Plus, I tried using a USBOTG Cable with a USB Port on it with a USB-C on it and it didn't work, it didn't power it, it works on my Android phone so I am guessing it would only work with a certain type.
If you can get a USB-C USBOTG Cable to work you should be able to use that instead of using the one inside it.

The 2600+ USB-C port is not USB-C compliant.

 

You need a USB-C to USB mini adapter and a USB mini OTG cable, not a USB-C OTG.

Link to comment
Share on other sites

Oh... right so you can then plug that into a 4 port hub thats powered and powered by the PC by a power DC Jack USB Cable or a A TO A USB Cable plugged in to it, you can power it that way if you have a A to A USB Cable, you just plug it into one of its USB Ports and plug the other end in to the PC USB Port. 
On the Retroarch Menu its advanced settings are turned off so on false, I just change them to true... :) 
image.thumb.png.fbbdcc85d3330f15dd3e40c78bd22e19.png
Why you can not change the settings is because they are run from tmp folder and when the Atari2600 Plus is turn on it copies over it retroarch.cfg file so its updates it so any change in it is not saved, it loads the retroarch.cfg from the USB Drive now so you can change it.

Edited by Spanner
Link to comment
Share on other sites

Retroarch now runs completely from the USB Drive... :)
I added the update too it(its cores) and you can see Pole Position 2 change, it screen is darker and has a better colour and its buttion has swapped so on THEC64 Gamepad, Fire 1 = Y and Fire 2 = Home so they have been swapped, I noticed the buttons changed when I added the new cores so are in the cores so has no autoconfig and does not use it so they are hardcoded.

Edited by Spanner
  • Like 1
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...