Atari 5200: New version of Atari800 (Beta): two triggers (Moon Patrol!!!), hat start and exit buttons
-
@future-child Hey bud.
I still haven't had a chance to check out that new emulator on the two or three games that weren't working right with the other one.
I was wondering though if you'd had an opportunity to look into the other issue with this emulator with the two bugs? I believe at some point you had said you belived that it was due to a difference between the Atari 5200 controller and the Atari 800 keypad, but then you didn't mention anything about it afterward.
I'd like to spend some time getting back to this and wrapping everything up so I could give you the alternate configs for every game that makes the control functions as uniform as possible between all of the games.
-
@Used2BeRX
I did spend some time getting the inputs right but so far without success.
To get it right the sdl input should have to be rewritten to use a event driven model instead of a polling model.
The polling it now uses has timing issues causing the misfiring experienced in roms like choplifter.The input crosstalk is another thing requiring a lot of work.
The original 5200 used multiplexers to select which joystick port places keypad (row/column) data on the bus, as far as i can tell the core does not have this implemented so all incoming data appears to come from all joystickports. -
Hey @future-child , a quick question related to the 800/XL/XE computers rather than the 5200, if I may... in several games, such as Archon or Bruce Lee, hitting the joy0 button 0 seems to pause the game as well as firing. I found reference online to hitting F7 to toggle "keyboard mode" but that didn't seem to work. I have both keyboard joysticks disabled. Normal pause is supposedly CTRL-1, and I don't understand why J0B0 would be triggering that. Since you've been in the code, any chance you could take a peek at this?
-
Aha, figured it out. If you map the 5200 keypad to button 0, that will be pause on the Atari 800 for some reason. I moved it to J0B1 and now I can fire without pausing.
-
I'm eager to get Atari 5200 and Atari 800 working better on my system. Is this very hard to setup? The current method (using the one available in the Docs) really kinda sucks.
-
@rkoster Good to head it's working.
@hansolo77 once you have the original emulator setup all you have to do is replace the binary in a ssh shell:
cd /opt/retropie/emulators/atari800/bin/ sudo cp atari800 atari800.original sudo wget https://github.com/futurechild/atari800-rpi/blob/master/atari800?raw=true -O atari800 sudo chmod +x atari800
and adjust the configuration files to suit your needs:
I myself use the following emulators.cfg
atari800
atari800 = "/opt/retropie/emulators/atari800/bin/atari800 -config /opt/retropie/configs/atari800/atari800.cfg %ROM%" default = "atari800"
atari5200
atari5200="echo %ROM: -\ % > /dev/null;/opt/retropie/emulators/atari800/bin/atari800 -config /opt/retropie/configs/atari5200/atari5200.cfg -cart %ROM%" default = "atari5200" atari800 = "/opt/retropie/emulators/atari800/bin/atari800 %ROM%"
and have the following config files:
atari800.cfg
Atari 800 Emulator, Version 3.1.0 ROM_OS_A_PAL=/home/pi/RetroPie/BIOS/ATARIOSA.ROM ROM_OS_BB01R2=/home/pi/RetroPie/BIOS/ATARIXL.ROM ROM_5200=/home/pi/RetroPie/BIOS/5200.ROM ROM_BASIC_C=/home/pi/RetroPie/BIOS/ATARIBAS.ROM ROM_400/800_CUSTOM=/home/pi/RetroPie/BIOS/ATARIOSB.ROM OS_400/800_VERSION=AUTO OS_XL/XE_VERSION=AUTO OS_5200_VERSION=AUTO BASIC_VERSION=AUTO XEGS_GAME_VERSION=AUTO ATARI_FILES_DIR=/home/pi/RetroPie/BIOS HD_READ_ONLY=1 PRINT_COMMAND=lpr %s SCREEN_REFRESH_RATIO=1 MACHINE_TYPE=Atari XL/XE RAM_SIZE=64 DEFAULT_TV_MODE=PAL MOSAIC_RAM_NUM_BANKS=0 AXLON_RAM_NUM_BANKS=0 ENABLE_MAPRAM=1 DISABLE_BASIC=1 ENABLE_SIO_PATCH=1 ENABLE_H_PATCH=1 ENABLE_P_PATCH=1 ENABLE_NEW_POKEY=1 STEREO_POKEY=0 SPEAKER_SOUND=1 BUILTIN_BASIC=1 KEYBOARD_LEDS=0 F_KEYS=0 BUILTIN_GAME=0 KEYBOARD_DETACHED=0 1200XL_JUMPER=0 CFG_SAVE_ON_EXIT=0 CARTRIDGE_TYPE=0 CARTRIDGE_PIGGYBACK_TYPE=0 CARTRIDGE_AUTOREBOOT=1 CASSETTE_LOADED=0 CASSETTE_WRITE_PROTECT=0 RTIME=1 COLOURS_NTSC_SATURATION=0 COLOURS_NTSC_CONTRAST=0 COLOURS_NTSC_BRIGHTNESS=0 COLOURS_NTSC_GAMMA=0.3 COLOURS_NTSC_HUE=0 COLOURS_NTSC_GTIA_DELAY=26.8 COLOURS_NTSC_EXTERNAL_PALETTE_LOADED=0 COLOURS_NTSC_ADJUST_EXTERNAL_PALETTE=0 COLOURS_PAL_SATURATION=0 COLOURS_PAL_CONTRAST=0 COLOURS_PAL_BRIGHTNESS=0 COLOURS_PAL_GAMMA=0.3 COLOURS_PAL_HUE=0 COLOURS_PAL_GTIA_DELAY=23.2 COLOURS_PAL_EXTERNAL_PALETTE= COLOURS_PAL_EXTERNAL_PALETTE_LOADED=0 COLOURS_PAL_ADJUST_EXTERNAL_PALETTE=0 ARTIFACT_NTSC=NONE ARTIFACT_PAL=NONE ARTIFACT_NTSC_MODE=0 SCREEN_SHOW_SPEED=0 SCREEN_SHOW_IO_ACTIVITY=1 SCREEN_SHOW_IO_COUNTER=0 SCREEN_SHOW_1200XL_LEDS=1 SOUND_ENABLED=1 SOUND_RATE=44100 SOUND_BITS=16 SOUND_FRAG_FRAMES=0 SOUND_LATENCY=20 VIDEO_FILTERING=1 VIDEO_ZOOM=1.00 SDL_JOY_0_ENABLED=1 SDL_JOY_0_LEFT=276 SDL_JOY_0_RIGHT=275 SDL_JOY_0_UP=273 SDL_JOY_0_DOWN=274 SDL_JOY_0_TRIGGER=306 SDL_JOY_USE_HAT=1 SDL_JOY_0_SELECT=8 SDL_JOY_0_START=9 SDL_JOY_0_TRIGGER1=1 SDL_JOY_0_TRIGGER2=2 SDL_JOY_0_ASTERISK=0 SDL_JOY_0_HASH=4 SDL_JOY_0_OPTION=5 SDL_JOY_0_SECOND_AXIS=2 SDL_JOY_1_ENABLED=0 SDL_JOY_1_LEFT=97 SDL_JOY_1_RIGHT=100 SDL_JOY_1_UP=119 SDL_JOY_1_DOWN=115 SDL_JOY_1_TRIGGER=306
atari5200.cfg has the following different settings:
MACHINE_TYPE=Atari 5200 RAM_SIZE=16 BUILTIN_BASIC=0
You may want to read this thread trough as there are some interesting posts regarding configuration options and known bugs.
If you run into problems, this forum is a good place to ask for help.
-
@future-child How does the new emulator you ported over handle these issues?
It's been a while now, but I believe that the list of games the two bugs effected was rather small overall. Since I already have all of the controls mapped out on the spreadsheet, I'd just have to figure out how to get them working on the new emulator for the buggy games.
-
@used2berx as far as i have tested all controls work as intended in kat5200, even analog.
I think the work you've done with configs is great and could also be used as a template to create controller mappings for other emulators as well, or at least as a lookup table to link roms to desired controller configurations.
-
@rkoster , I'm having a similar issue where several of my buttons pause the game in Bruce Lee. I'm using a PS3 controller and the 4 primary action buttons pause the game (but still work as mapped to *, # and punch/kick). I have the option / select working, just cant figure out where you remap the 5200 keypad to something other than button 0. Can you provide some details on that? I've read through the thread and poked around in a few files but am missing something. Your help would be appreciated.
-
@greyrhino My Pi setup is currently disconnected but soon as I reconnect it I will post my config file here.
-
@future-child Cool man. I haven't forgotten about this. I just got pulled way in another direction and then some real life stuff came up the last 3 or so weeks. I should be able to get back to this and give you more feedback soon. :)
-
I created a script to install @future.child's version of atari800 and put it into my repo tonight: https://github.com/zerojay/RetroPie-Extra/blob/master/scriptmodules/emulators/atari800.sh
I'm not using the automatic controller updating script (atari5200.py) because for some reason, I get very strange permissions errors when I use the script to try copying it to the right place and for some reason runcommand can't see the script either.
-
@zerojay Not sure what you mean man. What did you do?
I don't know anything about how repos work.
-
@used2berx All is explain here : https://github.com/zerojay/RetroPie-Extra
Execute :
git clone https://github.com/zerojay/RetroPie-Extra.git
cd RetroPie-Extra/
./install-extras.shAnd you will have new stuff on you EXPERIMENTAL Retropi-Setup ;)
-
@darknior Well I was working quite a bit with @future-child on testing changes for the emulator, so I've probably already got it. :)
I'm assuming what @zerojay did was make it easier to install for people who don't have it though?
-
@zerojay Thanks for this update :)
I ve not read all the thread but i don't understand all fine ...
@zerojay you make for us this :
@future-child said in Atari 5200: New version of Atari800 (Beta): two triggers (Moon Patrol!!!), hat start and exit buttons:
cd /opt/retropie/emulators/atari800/bin/
sudo cp atari800 atari800.original
sudo wget https://github.com/futurechild/atari800-rpi/blob/master/atari800?raw=true -O atari800
sudo chmod +x atari800I have verify and emulators.cfg is ok for :
atari800 = "/opt/retropie/emulators/atari800/bin/atari800 -config /opt/retropie/configs/atari800/atari800.cfg %ROM%"
default = "atari800"Not the second, i have :
atari800 = "/opt/retropie/emulators/atari800/bin/atari800 -5200 -cart-type 4 -cart %ROM%"
default = "atari800"And you write :
atari5200="echo %ROM: -\ % > /dev/null;/opt/retropie/emulators/atari800/bin/atari800 -config /opt/retropie/configs/atari5200/atari5200.cfg -cart %ROM%"
default = "atari5200"
atari800 = "/opt/retropie/emulators/atari800/bin/atari800 %ROM%"And i don't found the two atari800.cfg n atari5200.cfg :(
Some one can help me ?
Thanks -
@Used2BeRX , basically this adds the option to install my version (and other systems/ports/etc) from within the main retropie setup script.
@darknior did you have the default atari800 installed and working prior to replacing the binary with my version ?
@zerojay I also see there are lot's of other systems you added, maybe kat5200 could be one of them ?
I created a rudimentary installer for it here but you may want to remove the default overwriting of config files from emulators.cfg as that is just a workaround to enable for per-rom config's. -
@future-child I could give it a shot.
-
Thanks
@future-child said :
did you have the default atari800 installed and working prior to replacing the binary with my version ?
I think i have install A800 before, some month ago ... i don't remember.
And today i only update with the @zerojay fix.The old A800 install was :
https://github.com/RetroPie/RetroPie-Setup/blob/6f8fbc8bf7087bcacd0322d3b617b833c694db53/scriptmodules/emulators/atari800.sh
And @zerojay replace it with :
https://github.com/zerojay/RetroPie-Extra/blob/master/scriptmodules/emulators/atari800.sh
Now the source install come from your A800 Fork.gitPullOrClone "$md_build" https://github.com/futurechild/atari800-rpi.git
And it change the ROM command line at the end.
addEmulator 1 "atari800" "atari800" "$md_inst/bin/atari800 -800 %ROM%" addEmulator 1 "atari800" "atari5200" "$md_inst/bin/atari800 -5200 -cart-type 4 -cart %ROM%"
I also read the tutorial : https://github.com/retropie/retropie-setup/wiki/Atari-800-and-5200
And ad the ROMs, BIOS. Adding too your emulators CFG files.-
Launch an Atari 800 game and it working fine with my x360 Joystick :)
-
Launch a Atari 5200 game and for this one Joystick working, but i can't do what i want ...
Have you @future-child port this emulator on PI too ? http://kat5200.jillybunch.com/
It can be fantastic if it works fine and be add to RETROPIE with your install script : https://raw.githubusercontent.com/futurechild/Kat5200-Retropie/master/install -
-
- Launch a Atari 5200 game and for this one Joystick working, but i can't do what i want ...
I have no idea what you are trying to do, so...?
For me, the joystick works (after configuring the emulator) and I'm able to play. The only games that don't auto boot, I select the other 5200 cartridge option and it boots up fine.I'll see what I can do about kat5200.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.