• Recent
  • Tags
  • Popular
  • Home
  • Docs
  • Register
  • Login
RetroPie forum home
  • Recent
  • Tags
  • Popular
  • Home
  • Docs
  • Register
  • Login

Atari 5200: New version of Atari800 (Beta): two triggers (Moon Patrol!!!), hat start and exit buttons

Scheduled Pinned Locked Moved Ideas and Development
409 Posts 26 Posters 178.0k Views
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • F
    future.child
    last edited by 3 Feb 2017, 13:07

    For what it's worth, i have made a few changes to the jfroco version.
    This version handles button support for the option, start and select keys found in the 800 / XL emulator.

    The Binary may be found here : https://github.com/futurechild/atari800-rpi/raw/master/atari800
    There is a new parameter in atari800.cfg : SDL_JOY_0_OPTION=4 <-- button ID

    L J 2 Replies Last reply 28 Feb 2017, 20:15 Reply Quote 1
    • L
      lakindc @future.child
      last edited by 28 Feb 2017, 20:15

      @future.child I Installed the futurechild vesion and it works great. . .Except the screen is smaller. . .Is this a setting somewhere??

      F 1 Reply Last reply 5 Mar 2017, 08:23 Reply Quote 0
      • F
        future.child @lakindc
        last edited by 5 Mar 2017, 08:23

        @lakindc I remember having this problem too but am unsure what i did so solve it.
        I currently have 4:3 fullscreen emulator with a black bar left and right to fit my 16:9 screen.

        Could you have a look at "video mode settings" in the menu under "Display settings" inside the emulator ?
        Fullscreen should be set to "No" and i have resolution set to "640x480".

        These are my current settings in the atari800.cfg file :
        DEFAULT_TV_MODE=PAL
        COLOURS_PAL_GAMMA=0.3
        ARTIFACT_NTSC=NONE
        ARTIFACT_PAL=NONE
        ARTIFACT_NTSC_MODE=0
        VIDEO_FILTERING=1
        VIDEO_ZOOM=1.00

        You can also check if the video mode is correct in the launcher (when launching the emulator you should get a message "press a button to configure"), mine is set to 1920x1080 @ 50 Hz 16:9.

        1 Reply Last reply Reply Quote 0
        • V
          Veramacor
          last edited by 11 Apr 2017, 22:34

          Hello all,

          I've downloaded @future-child 's version and It works except for the fact I cannot seem to figure out my button mapping situation. I'm using a Wi u controller that works great with emulationstation.

          I am using the emulator for Atari 800 (not xl/xe) emulation, not for 5200 games as is on this thread. But its the same emulator so I wouldn't see a problem

          Here is my atari800.cfg file pertaining to button mapping:

          SDL_JOY_0_ENABLED=1
          SDL_JOY_0_LEFT=260
          SDL_JOY_0_RIGHT=262
          SDL_JOY_0_UP=264
          SDL_JOY_0_DOWN=261
          SDL_JOY_0_TRIGGER=305
          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
          SDL_JOY_0_SELECT=8
          SDL_JOY_0_START=9
          SDL_JOY_0_TRIGGER1=2
          SDL_JOY_0_TRIGGER2=1
          SDL_JOY_0_ASTERISK=3
          SDL_JOY_0_HASH=0
          SDL_JOY_0_SECOND_AXIS=2
          SDL_JOY_0_INDEX=0
          SDL_JOY_1_INDEX=1

          My 'Start' button works like you hit the 'H' button which pauses emulation. very strange . I went thru button configuration twice so I'm prettiy sure I have all the buttons defined within emulation station.

          The new version of atari800 does let me exit out of a game (no more F9!) but, I cannot start a game without 'F4'

          Does anyone have a working atari800.cfg file I can use?

          A side note - I have to use ATARIOSB.ROM as my games will crash (Galahad and the Holy Grail) if I don't use the early Atari800 ROM. XL/XE crashes the game after killing the 3rd knight every time :(

          Thanks for any help you guys can give (newbie)

          V 1 Reply Last reply 11 Apr 2017, 23:19 Reply Quote 0
          • V
            Veramacor @Veramacor
            last edited by 11 Apr 2017, 23:19

            OK, I copied the file from @future-child github directly and I'm not running with the start!

            1st problem solved.

            Now I am seeing The small screen issue too. if @lakindc , if you can tell me how you fixed that issue think I am in in business!

            All except for 'SELECT' and 'OPTION' buttons

            Thanks for letting me bounce my head around

            1 Reply Last reply Reply Quote 0
            • V
              Veramacor
              last edited by 11 Apr 2017, 23:48

              Ok Optioni/Select buttons were good all the while. I used jstest /dev/input/js0 to discover that

              SDL_JOY_0_OPTION=4 is mapped to the Left Shoulder button

              Last Post from me - I will stop thinking out loud on the forum! Just looking for the small screen size resolution

              and I am golden

              1 Reply Last reply Reply Quote 0
              • V
                Veramacor
                last edited by 12 Apr 2017, 00:00

                I LIED and I'm sorry for that. I figured it out. SO I will post for those who are going to use this wonderful version of atari800:

                VIDEOMODE_WINDOW_WIDTH=336
                VIDEOMODE_WINDOW_HEIGHT=240
                VIDEOMODE_FULLSCREEN_WIDTH=640
                VIDEOMODE_FULLSCREEN_HEIGHT=480
                VIDEOMODE_WINDOWED=0

                The Key setting is the last line is set to:
                VIDEOMODE_WINDOWED=1

                And Indeed It makes sense as :
                VIDEOMODE_WINDOW_WIDTH=336
                VIDEOMODE_WINDOW_HEIGHT=240

                becomes the new screen size.

                Hey guys - thanks for all your help! Special thanks to both @jfroco and @future-child for their efforts!

                1 Reply Last reply Reply Quote 0
                • F
                  future.child
                  last edited by 12 Apr 2017, 05:07

                  Thanks @Veramacor , This video issue has been in the back of my mind since @lakindc's post but was unsure of it's cause.
                  I have updated my sample.cfg to include these videomode settings.

                  1 Reply Last reply Reply Quote 0
                  • U
                    Used2BeRX
                    last edited by Used2BeRX 15 May 2017, 05:25

                    If you use a program called Altirra and load your 5200 roms, you can then save them with a header that will designate how the Pi emulator should load the game. Then if you remove the part of the emulators.cfg file that references cart type 4 and load the games normally they will all load without that screen asking you what type of cart the game is. :)

                    I would share mine, but without even reading the rules here I'm sure that's not allowed. It's really easy once you figure it out, and it doesn't take all that long since the 5200 library is so small.

                    I could post instructions on how to do this if anyone is interested.

                    W 1 Reply Last reply 15 May 2017, 21:45 Reply Quote 0
                    • U
                      Used2BeRX
                      last edited by 15 May 2017, 08:01

                      Could somebody explain to me how the Robotron controls are supposed to work? I've got everything else working now, but the Robotron controls do not function for Robotron or Space Dungeon. Thanks!

                      F 1 Reply Last reply 15 May 2017, 15:19 Reply Quote 0
                      • F
                        future.child @Used2BeRX
                        last edited by future.child 15 May 2017, 15:19

                        @Used2BeRX Robotron:2084 uses a two-joystick control scheme; player 1 joystick controls the on-screen character's movement, while player 2 controls the direction the character's weapon fires.

                        It would take a fair amount of changes to the emulator to be able to remap the additional controller1 axis (ie thumb-right) to player2 controlls (plus it would be hardly fair in a two player game, as player 1 would be able to interfere with player 2).

                        My advise would be to use either two joysticks, use the keyboard as input, or combine joystick and keyboard.

                        U 1 Reply Last reply 16 May 2017, 01:08 Reply Quote 0
                        • W
                          weirdocollector @Used2BeRX
                          last edited by 15 May 2017, 21:45

                          @Used2BeRX said in Atari 5200: New version of Atari800 (Beta): two triggers (Moon Patrol!!!), hat start and exit buttons:

                          If you use a program called Altirra and load your 5200 roms, you can then save them with a header that will designate how the Pi emulator should load the game. Then if you remove the part of the emulators.cfg file that references cart type 4 and load the games normally they will all load without that screen asking you what type of cart the game is. :)

                          I would share mine, but without even reading the rules here I'm sure that's not allowed. It's really easy once you figure it out, and it doesn't take all that long since the 5200 library is so small.

                          I could post instructions on how to do this if anyone is interested.

                          Yes please!

                          I'm interested :)

                          Thanks in advance.

                          U 1 Reply Last reply 16 May 2017, 01:06 Reply Quote 0
                          • U
                            Used2BeRX @weirdocollector
                            last edited by 16 May 2017, 01:06

                            @weirdocollector No problem man. I went ahead and made a separate thread for it. You can find it here: https://retropie.org.uk/forum/topic/10337/making-headers-on-your-atari-5200-game-images-to-auto-run-in-retropie

                            Let me know if you have any problems with the instructions or if I could clear anything up with it.

                            Cheers

                            1 Reply Last reply Reply Quote 0
                            • U
                              Used2BeRX @future.child
                              last edited by 16 May 2017, 01:08

                              @future.child Hey.... Did nobody ever get it working then? The OP of this thread at one point said that he put in maps that made the 2nd player joystick operate on your right joystick so you would be able to play Robotron 2084 or Space Duel with a single controller. That was something he said that he had updated with this about midway through this discussion. It didn't work for you either, huh?

                              F 1 Reply Last reply 16 May 2017, 05:29 Reply Quote 0
                              • F
                                future.child @Used2BeRX
                                last edited by 16 May 2017, 05:29

                                @Used2BeRX I must have missed the 2nd player part .
                                I'll have a look at the code @jfroco made, to see if i get it working for me (and let you know what i did to do so).

                                U 1 Reply Last reply 16 May 2017, 14:28 Reply Quote 0
                                • U
                                  Used2BeRX @future.child
                                  last edited by 16 May 2017, 14:28

                                  @future.child Thanks for looking into that. I'm a code dummy so I never would have figured it out. Not sure if you'd be interested, but I posted that guide to putting headers on your 5200 roms so they load automatically. Worth doing if you play the system more than once or twice.

                                  1 Reply Last reply Reply Quote 0
                                  • F
                                    future.child
                                    last edited by 16 May 2017, 16:14

                                    As far as i can tell something is indeed wrong in joystick handing or enumeration.

                                    When having two controllers connected, the first controller's second axis also controlls player two.
                                    When having only one controller connected the second axis data is discarded.

                                    I'll see if i can fix this (note, I'm no code hero).

                                    1 Reply Last reply Reply Quote 0
                                    • U
                                      Used2BeRX
                                      last edited by 16 May 2017, 23:09

                                      Sounds good. Keeping my fingers crossed. Maybe we can figure out why I couldn't get your update running as well. I had to revert to the OP's update. When I tried loading a game with your version it would just kick me back to the romlist. I wasn't going to do Atari 800 on the Pi, but I've spent today making headers for about 150 Atari 800 images so they auto-load like the 5200 carts. Would probably be wise for me to get your upgrade installed too. :)

                                      1 Reply Last reply Reply Quote 0
                                      • F
                                        future.child
                                        last edited by future.child 17 May 2017, 19:09

                                        @Used2BeRX I have updated my version to prevent discarding of 2nd axis data when not having two joysticks.
                                        As far as i can tell 2nd axis now works as intended.

                                        as for not being able to run my binary, i can't really say what's going on on your system without additional info.
                                        The binaries should be interchangeable between jfroco's and mine (compiled on a raspberry pi 3).

                                        Did you install using the following procedure ?

                                        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
                                        

                                        I myself use the following emulators.cfg

                                        atari800

                                        atari800 = "/opt/retropie/emulators/atari800/bin/atari800 %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 XL/XE
                                        RAM_SIZE=64
                                        BUILTIN_BASIC=0
                                        
                                        1 Reply Last reply Reply Quote 0
                                        • U
                                          Used2BeRX
                                          last edited by 19 May 2017, 03:46

                                          Hey bud,

                                          First off, this time I was able to get your version to work. I don't know what I was doing wrong before. AWESOME to see you got the Robotron controls to work for that game and for Space Dungeon. Perfect.

                                          I had a few questions though. I did not use your configuration, so I'm having the screen size issue that you guys figured out. The reason that I'm not using it is because I'm using the python script the OP had created and pointed to instead of the standard configuration file. Here's what my emulators.cfg file looks like:

                                          atari800="/opt/retropie/emulators/atari800/bin/atari5200.py; /opt/retropie/emulators/atari800/bin/atari800 %ROM%"
                                          default="atari800"

                                          I'm not sure what is in that python script that your config doesn't have, but I figured you were using it since you built off of his setup. I'm going to see if I can add the screensize fix and your additional controller button for the Atari800 in the python script.

                                          One thing I noticed is that when playing Ballblazer now, as I expected it would, you control both players now with the 1st player controller.

                                          I was wondering if you could code this so it only steals the 2nd player control when loading Ballblazer or Space Dungeon, and also if you would be able to properly code the 2nd player controller so we have 2 player support. This is almost a perfect setup now.

                                          Thanks so much for going back in there and fixing the Robotron controls. This is awesome. :)

                                          1 Reply Last reply Reply Quote 0
                                          • First post
                                            Last post

                                          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.

                                            This community forum collects and processes your personal information.
                                            consent.not_received