RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login
    Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

    Pro tip for anyone thinking of installing MESS

    Scheduled Pinned Locked Moved Help and Support
    messoverheat
    31 Posts 7 Posters 4.1k 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.
    • S
      SpudsMcToole Banned @mediamogul
      last edited by

      @mediamogul Turns out I had several versions of AdvanceMESS already installed, according to Retropie Setup. Not a clue what to do now, though, as the install instructions I had were for lr-mess :(

      1 Reply Last reply Reply Quote 0
      • pjftP
        pjft
        last edited by

        Out of curiosity, slightly tangential, what would you be using MESS or AdvanceMESS for that other emulators don't allow for?

        I never used it and never really heard a lot about it hence my question.

        S 1 Reply Last reply Reply Quote 0
        • S
          SpudsMcToole Banned @pjft
          last edited by SpudsMcToole

          @pjft Tons of stuff - Bally Astrocade, BBC Micro, ZX81 and quite a few more.

          I think I'm going to give up early, though. Everything written about it is just completely incomprehensible gibberish. As far as I can tell I now have at least four versions of MESS successfully installed on my Pi, and not the tiniest idea how to use any of them.

          herb_fargusH mediamogulM 2 Replies Last reply Reply Quote 1
          • herb_fargusH
            herb_fargus administrators @SpudsMcToole
            last edited by

            @spudsmctoole they call it MESS for a reason ;)

            If you read the documentation it will answer 99% of your questions: https://retropie.org.uk/docs/

            Also if you want a solution to your problems read this first: https://retropie.org.uk/forum/topic/3/read-this-first

            1 Reply Last reply Reply Quote 4
            • mediamogulM
              mediamogul Global Moderator @SpudsMcToole
              last edited by

              @spudsmctoole

              I use it for Bally Astrocade and Fairchild Channel F. For their time, they were both very impressive systems. The version of Pac-Man for Astrovision is especially mind-blowing when you look at the other home alternatives.

              RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

              S 1 Reply Last reply Reply Quote 1
              • S
                SpudsMcToole Banned @mediamogul
                last edited by

                @mediamogul How did you get the Astrocade to work?

                mediamogulM 1 Reply Last reply Reply Quote 0
                • mediamogulM
                  mediamogul Global Moderator @SpudsMcToole
                  last edited by mediamogul

                  @SpudsMcToole

                  I used AdvanceMESS, which is installed alongside AdvanceMAME and I in-turn installed the Astrocade BIOS (astrocde.zip) to /home/pi/RetroPie/roms/mame-advmame/advmess/rom/. Afterwards, I createad a directory named 'astrocade' at /home/pi/RetroPie/roms/ for the ROMs and then another directory named 'astrocade' at /opt/retropie/configs/ where I copied /opt/retropie/mame-advmame/advmess.rc, so the system could have its own unique config file. Also, in /opt/retropie/configs/, I created a emulators.cfg file with the following contents:

                  astrocade-advmess = "/opt/retropie/emulators/advmame/bin/advmess astrocde -cfg /opt/retropie/configs/astrocade/advmess.rc -cart %ROM%"
                  default = "astrocade-advmess"
                  

                  Finally, I edited /opt/retropie/configs/all/emulationstation/es_systems.cfg to include:

                      <name>astrocade</name>
                      <fullname>Bally Astrocade</fullname>
                      <path>/home/pi/RetroPie/roms/astrocade</path>
                      <extension>.bin .BIN</extension>
                      <command>/opt/retropie/supplementary/runcommand/runcommand.sh 0 _SYS_ astrocade %ROM%</command>
                      <platform>astrocade</platform>
                      <theme>astrocade</theme>
                    </system>
                  

                  That should do it, but below I'll also include my /opt/retropie/configs/astrocade/advmess.rc as a reference. There, you'll see a few settings that refine the picture and also setup analog control for the games that need it. All in all though, it's not too dissimilar from the settings you find in AdvanceMAME.

                  debug_crash no
                  debug_rawsound no
                  debug_speedmark no
                  device_alsa_device default
                  device_alsa_mixer channel
                  device_color_bgr15 yes
                  device_color_bgr16 yes
                  device_color_bgr24 yes
                  device_color_bgr32 yes
                  device_color_bgr8 yes
                  device_color_palette8 yes
                  device_color_yuy2 yes
                  device_dpi_pclock_low 31250000
                  device_hdmi_pclock_low 0
                  device_joystick auto
                  device_keyboard raw
                  device_mouse auto
                  device_raw_firstkeyhack no
                  device_raw_mousedev[0] auto
                  device_raw_mousedev[1] auto
                  device_raw_mousedev[2] auto
                  device_raw_mousedev[3] auto
                  device_raw_mousetype[0] pnp
                  device_raw_mousetype[1] pnp
                  device_raw_mousetype[2] pnp
                  device_raw_mousetype[3] pnp
                  device_sdl_samples 512
                  device_sound auto
                  device_video auto
                  device_video_cursor auto
                  device_video_doublescan yes
                  device_video_fastchange no
                  device_video_interlace yes
                  device_video_output auto
                  device_video_overlaysize auto
                  device_video_singlescan yes
                  dir_artwork /home/pi/RetroPie/roms/mame-advmame/advmess/artwork
                  dir_crc /home/pi/RetroPie/roms/mame-advmame/advmess/crc
                  dir_diff /home/pi/RetroPie/roms/mame-advmame/advmess/diff
                  dir_hi /home/pi/RetroPie/roms/mame-advmame/advmess/hi
                  dir_image /home/pi/RetroPie/roms/mame-advmame/advmess/image
                  dir_inp /home/pi/RetroPie/roms/mame-advmame/advmess/inp
                  dir_memcard /home/pi/RetroPie/roms/mame-advmame/advmess/memcard
                  dir_nvram /home/pi/RetroPie/roms/mame-advmame/advmess/nvram
                  dir_rom /home/pi/RetroPie/roms/mame-advmame/advmess/rom
                  dir_sample /home/pi/RetroPie/roms/mame-advmame/advmess/sample
                  dir_snap /home/pi/RetroPie/roms/mame-advmame/advmess/snap
                  dir_sta /home/pi/RetroPie/roms/mame-advmame/advmess/sta
                  display_adjust none
                  display_antialias yes
                  display_artwork_backdrop yes
                  display_artwork_bezel no
                  display_artwork_crop yes
                  display_artwork_overlay yes
                  display_aspect auto
                  display_beam 1
                  display_brightness 1
                  display_buffer no
                  display_color auto
                  display_expand 1.0
                  display_flicker 0
                  display_flipx no
                  display_flipy no
                  display_frameskip auto
                  display_gamma 1
                  display_intensity 1.5
                  display_interlaceeffect none
                  display_magnify auto
                  display_magnifysize 640
                  display_mode auto
                  display_pausebrightness 1
                  display_resize integer
                  display_resizeeffect none
                  display_restore yes
                  display_rgbeffect none
                  display_rol no
                  display_ror no
                  display_scanlines no
                  display_skipcolumns auto
                  display_skiplines auto
                  display_translucency yes
                  display_vsync yes
                  include 
                  input_hotkey yes
                  input_idleexit 0
                  input_map[event10] auto
                  input_map[event11] auto
                  input_map[event12] auto
                  input_map[event13] auto
                  input_map[event14] auto
                  input_map[event1] auto
                  input_map[event2] auto
                  input_map[event3] auto
                  input_map[event4] auto
                  input_map[event5] auto
                  input_map[event6] auto
                  input_map[event7] auto
                  input_map[event8] auto
                  input_map[event9] auto
                  input_map[key_0] auto
                  input_map[key_1] auto
                  input_map[key_2] auto
                  input_map[key_3] auto
                  input_map[key_4] auto
                  input_map[key_5] auto
                  input_map[key_6] auto
                  input_map[key_7] auto
                  input_map[key_8] auto
                  input_map[key_9] auto
                  input_map[key_a] auto
                  input_map[key_again] auto
                  input_map[key_alt] auto
                  input_map[key_asterisk] auto
                  input_map[key_b] auto
                  input_map[key_back] auto
                  input_map[key_backquote] auto
                  input_map[key_backslash] auto
                  input_map[key_backspace] auto
                  input_map[key_break] auto
                  input_map[key_c] auto
                  input_map[key_capslock] auto
                  input_map[key_closebrace] auto
                  input_map[key_colon] auto
                  input_map[key_comma] auto
                  input_map[key_copy] auto
                  input_map[key_ctrl] auto
                  input_map[key_cut] auto
                  input_map[key_d] auto
                  input_map[key_del] auto
                  input_map[key_diesis] auto
                  input_map[key_doublequote] auto
                  input_map[key_down] auto
                  input_map[key_e] auto
                  input_map[key_edit] auto
                  input_map[key_end] auto
                  input_map[key_enter] auto
                  input_map[key_equals] auto
                  input_map[key_esc] auto
                  input_map[key_f10] auto
                  input_map[key_f11] auto
                  input_map[key_f12] auto
                  input_map[key_f13] auto
                  input_map[key_f14] auto
                  input_map[key_f15] auto
                  input_map[key_f16] auto
                  input_map[key_f17] auto
                  input_map[key_f18] auto
                  input_map[key_f19] auto
                  input_map[key_f1] auto
                  input_map[key_f20] auto
                  input_map[key_f21] auto
                  input_map[key_f22] auto
                  input_map[key_f23] auto
                  input_map[key_f24] auto
                  input_map[key_f2] auto
                  input_map[key_f3] auto
                  input_map[key_f4] auto
                  input_map[key_f5] auto
                  input_map[key_f6] auto
                  input_map[key_f7] auto
                  input_map[key_f8] auto
                  input_map[key_f9] auto
                  input_map[key_f] auto
                  input_map[key_fctn] auto
                  input_map[key_find] auto
                  input_map[key_forward] auto
                  input_map[key_g] auto
                  input_map[key_graph] auto
                  input_map[key_h] auto
                  input_map[key_help] auto
                  input_map[key_hold] auto
                  input_map[key_home] auto
                  input_map[key_i] auto
                  input_map[key_ins] auto
                  input_map[key_j] auto
                  input_map[key_k] auto
                  input_map[key_l] auto
                  input_map[key_lalt] auto
                  input_map[key_lctrl] auto
                  input_map[key_left] auto
                  input_map[key_less] auto
                  input_map[key_lshift] auto
                  input_map[key_m] auto
                  input_map[key_menu] auto
                  input_map[key_minus] auto
                  input_map[key_move] auto
                  input_map[key_n] auto
                  input_map[key_numlock] auto
                  input_map[key_o] auto
                  input_map[key_open] auto
                  input_map[key_openbrace] auto
                  input_map[key_p] auto
                  input_map[key_pad_0] auto
                  input_map[key_pad_1] auto
                  input_map[key_pad_2] auto
                  input_map[key_pad_3] auto
                  input_map[key_pad_4] auto
                  input_map[key_pad_5] auto
                  input_map[key_pad_6] auto
                  input_map[key_pad_7] auto
                  input_map[key_pad_8] auto
                  input_map[key_pad_9] auto
                  input_map[key_pad_asterisk] auto
                  input_map[key_pad_colon] auto
                  input_map[key_pad_diesis] auto
                  input_map[key_pad_enter] auto
                  input_map[key_pad_minus] auto
                  input_map[key_pad_plus] auto
                  input_map[key_pad_slash] auto
                  input_map[key_paste] auto
                  input_map[key_pause] auto
                  input_map[key_period] auto
                  input_map[key_pgdn] auto
                  input_map[key_pgup] auto
                  input_map[key_play] auto
                  input_map[key_plus] auto
                  input_map[key_pound] auto
                  input_map[key_print] auto
                  input_map[key_q] auto
                  input_map[key_quickload] auto
                  input_map[key_quote] auto
                  input_map[key_r] auto
                  input_map[key_ralt] auto
                  input_map[key_rctrl] auto
                  input_map[key_record] auto
                  input_map[key_restore] auto
                  input_map[key_rew] auto
                  input_map[key_right] auto
                  input_map[key_rshift] auto
                  input_map[key_s] auto
                  input_map[key_scrlock] auto
                  input_map[key_semicolon] auto
                  input_map[key_shift] auto
                  input_map[key_slash] auto
                  input_map[key_space] auto
                  input_map[key_stop] auto
                  input_map[key_store] auto
                  input_map[key_t] auto
                  input_map[key_tab] auto
                  input_map[key_u] auto
                  input_map[key_undo] auto
                  input_map[key_up] auto
                  input_map[key_v] auto
                  input_map[key_w] auto
                  input_map[key_x] auto
                  input_map[key_y] auto
                  input_map[key_z] auto
                  input_map[p1_dialx] auto
                  input_map[p1_dialy] auto
                  input_map[p1_lightgunx] auto
                  input_map[p1_lightguny] auto
                  input_map[p1_mousex] auto
                  input_map[p1_mousey] auto
                  input_map[p1_paddlex] mouse[0,x] mouse[1,x] mouse[2,x]
                  input_map[p1_paddley] mouse[0,x] mouse[1,x] mouse[2,x]
                  input_map[p1_pedalbrake] auto
                  input_map[p1_pedalgas] auto
                  input_map[p1_pedalother] auto
                  input_map[p1_stickx] auto
                  input_map[p1_sticky] auto
                  input_map[p1_stickz] auto
                  input_map[p1_trackballx] auto
                  input_map[p1_trackbally] auto
                  input_map[p2_dialx] auto
                  input_map[p2_dialy] auto
                  input_map[p2_lightgunx] auto
                  input_map[p2_lightguny] auto
                  input_map[p2_mousex] auto
                  input_map[p2_mousey] auto
                  input_map[p2_paddlex] mouse[0,y] mouse[1,y] mouse[2,y]
                  input_map[p2_paddley] mouse[0,y] mouse[1,y] mouse[2,y]
                  input_map[p2_pedalbrake] auto
                  input_map[p2_pedalgas] auto
                  input_map[p2_pedalother] auto
                  input_map[p2_stickx] auto
                  input_map[p2_sticky] auto
                  input_map[p2_stickz] auto
                  input_map[p2_trackballx] auto
                  input_map[p2_trackbally] auto
                  input_map[p3_dialx] auto
                  input_map[p3_dialy] auto
                  input_map[p3_lightgunx] auto
                  input_map[p3_lightguny] auto
                  input_map[p3_mahjong_a] auto
                  input_map[p3_mahjong_b] auto
                  input_map[p3_mahjong_bet] auto
                  input_map[p3_mahjong_c] auto
                  input_map[p3_mahjong_chance] auto
                  input_map[p3_mahjong_chi] auto
                  input_map[p3_mahjong_d] auto
                  input_map[p3_mahjong_double_up] auto
                  input_map[p3_mahjong_e] auto
                  input_map[p3_mahjong_f] auto
                  input_map[p3_mahjong_flip_flop] auto
                  input_map[p3_mahjong_g] auto
                  input_map[p3_mahjong_h] auto
                  input_map[p3_mahjong_i] auto
                  input_map[p3_mahjong_j] auto
                  input_map[p3_mahjong_k] auto
                  input_map[p3_mahjong_kan] auto
                  input_map[p3_mahjong_l] auto
                  input_map[p3_mahjong_m] auto
                  input_map[p3_mahjong_n] auto
                  input_map[p3_mahjong_pon] auto
                  input_map[p3_mahjong_reach] auto
                  input_map[p3_mahjong_ron] auto
                  input_map[p3_mahjong_score] auto
                  input_map[p3_mousex] auto
                  input_map[p3_mousey] auto
                  input_map[p3_paddlex] auto
                  input_map[p3_paddley] auto
                  input_map[p3_pedalbrake] auto
                  input_map[p3_pedalgas] auto
                  input_map[p3_pedalother] auto
                  input_map[p3_stickx] auto
                  input_map[p3_sticky] auto
                  input_map[p3_stickz] auto
                  input_map[p3_trackballx] auto
                  input_map[p3_trackbally] auto
                  input_map[p4_dialx] auto
                  input_map[p4_dialy] auto
                  input_map[p4_lightgunx] auto
                  input_map[p4_lightguny] auto
                  input_map[p4_mahjong_a] auto
                  input_map[p4_mahjong_b] auto
                  input_map[p4_mahjong_bet] auto
                  input_map[p4_mahjong_c] auto
                  input_map[p4_mahjong_chance] auto
                  input_map[p4_mahjong_chi] auto
                  input_map[p4_mahjong_d] auto
                  input_map[p4_mahjong_double_up] auto
                  input_map[p4_mahjong_e] auto
                  input_map[p4_mahjong_f] auto
                  input_map[p4_mahjong_flip_flop] auto
                  input_map[p4_mahjong_g] auto
                  input_map[p4_mahjong_h] auto
                  input_map[p4_mahjong_i] auto
                  input_map[p4_mahjong_j] auto
                  input_map[p4_mahjong_k] auto
                  input_map[p4_mahjong_kan] auto
                  input_map[p4_mahjong_l] auto
                  input_map[p4_mahjong_m] auto
                  input_map[p4_mahjong_n] auto
                  input_map[p4_mahjong_pon] auto
                  input_map[p4_mahjong_reach] auto
                  input_map[p4_mahjong_ron] auto
                  input_map[p4_mahjong_score] auto
                  input_map[p4_mousex] auto
                  input_map[p4_mousey] auto
                  input_map[p4_paddlex] auto
                  input_map[p4_paddley] auto
                  input_map[p4_pedalbrake] auto
                  input_map[p4_pedalgas] auto
                  input_map[p4_pedalother] auto
                  input_map[p4_stickx] auto
                  input_map[p4_sticky] auto
                  input_map[p4_stickz] auto
                  input_map[p4_trackballx] auto
                  input_map[p4_trackbally] auto
                  input_map[safequit] auto
                  input_map[service_coin5] auto
                  input_map[service_coin6] auto
                  input_map[service_coin7] auto
                  input_map[service_coin8] auto
                  input_steadykey no
                  lcd_server none
                  lcd_speed 4
                  lcd_timeout 500
                  misc_bios default
                  misc_cheat no
                  misc_cheatfile /home/pi/RetroPie/roms/mame-advmame/advmess/misc/cheat.dat
                  misc_difficulty none
                  misc_eventdebug no
                  misc_eventfile /home/pi/RetroPie/roms/mame-advmame/advmess/misc/event.dat
                  misc_freeplay no
                  misc_hiscorefile /home/pi/RetroPie/roms/mame-advmame/advmess/misc/hiscore.dat
                  misc_lang none
                  misc_languagefile /home/pi/RetroPie/roms/mame-advmame/advmess/misc/english.lng
                  misc_mutedemo no
                  misc_quiet yes
                  misc_ramsize auto
                  misc_safequit no
                  misc_smp yes
                  misc_timetorun 0
                  record_sound yes
                  record_sound_time 15
                  record_video yes
                  record_video_interleave 2
                  record_video_time 15
                  script_coin1 
                  script_coin2 
                  script_coin3 
                  script_coin4 
                  script_emulation 
                  script_event1 
                  script_event10 
                  script_event11 
                  script_event12 
                  script_event13 
                  script_event14 
                  script_event2 
                  script_event3 
                  script_event4 
                  script_event5 
                  script_event6 
                  script_event7 
                  script_event8 
                  script_event9 
                  script_knocker on(kdb, 0b100); wait(!event()); off(kdb, 0b100);
                  script_led1 on(kdb, 0b1); wait(!event()); off(kdb, 0b1);
                  script_led2 on(kdb, 0b10); wait(!event()); off(kdb, 0b10);
                  script_led3 
                  script_play 
                  script_safequit 
                  script_start1 
                  script_start2 
                  script_start3 
                  script_start4 
                  script_turbo while (event()) { toggle(kdb, 0b100); delay(100); } off(kdb, 0b100);
                  script_video wait(!event()); set(kdb, 0);
                  sound_adjust auto
                  sound_equalizer_highvolume 0
                  sound_equalizer_lowvolume 0
                  sound_equalizer_midvolume 0
                  sound_latency 0.05
                  sound_mode auto
                  sound_normalize yes
                  sound_samplerate 44100
                  sound_samples yes
                  sound_volume -3
                  sync_fps auto
                  sync_resample auto
                  sync_speed 1
                  sync_startuptime auto
                  sync_turbospeed 3
                  ui_color[help_other] 000000 808080
                  ui_color[help_p1] 000000 ffff00
                  ui_color[help_p2] 000000 00ff00
                  ui_color[help_p3] 000000 ff0000
                  ui_color[help_p4] 000000 00ffff
                  ui_color[interface] 000000 ffffff
                  ui_color[select] 000000 afffff
                  ui_color[tag] 247ef0 ffffff
                  ui_font auto
                  ui_fontsize auto
                  ui_helpimage auto
                  ui_translucency 0.8
                  input_map[ui_pause] keyboard[0,w] keyboard[0,a]
                  input_map[ui_reset_machine] keyboard[0,w] keyboard[0,b]
                  input_map[ui_snapshot] keyboard[0,w] keyboard[0,y]
                  input_map[ui_save_state] keyboard[0,w] keyboard[0,q]
                  input_map[ui_load_state] keyboard[0,w] keyboard[0,l]
                  input_map[ui_configure] keyboard[0,tab] or keyboard[0,w] keyboard[0,x]
                  input_map[ui_up] keyboard[0,up]
                  input_map[ui_down] keyboard[0,down]
                  input_map[ui_left] keyboard[0,left]
                  input_map[ui_right] keyboard[0,right]
                  input_map[ui_select] keyboard[0,enter] or keyboard[0,a]
                  input_map[ui_cancel] keyboard[0,esc] or keyboard[0,w] keyboard[0,t]
                  input_map[p1_up] keyboard[0,up]
                  input_map[p1_down] keyboard[0,down]
                  input_map[p1_left] keyboard[0,left]
                  input_map[p1_right] keyboard[0,right]
                  input_map[p1_doubleright_up] 
                  input_map[p1_doubleright_down] 
                  input_map[p1_doubleright_left] 
                  input_map[p1_doubleright_right] 
                  input_map[p1_doubleleft_up] 
                  input_map[p1_doubleleft_down] 
                  input_map[p1_doubleleft_left] 
                  input_map[p1_doubleleft_right] 
                  input_map[p1_button1] keyboard[0,b]
                  input_map[p1_button2] 
                  input_map[p1_button3] 
                  input_map[p1_button4] 
                  input_map[p1_button5] 
                  input_map[p1_button6] 
                  input_map[p1_button7] 
                  input_map[p1_button8] 
                  input_map[p1_button9] 
                  input_map[p1_button10] 
                  input_map[p1_start] 
                  input_map[p1_select] 
                  input_map[p1_mahjong_a] 
                  input_map[p1_mahjong_b] 
                  input_map[p1_mahjong_c] 
                  input_map[p1_mahjong_d] 
                  input_map[p1_mahjong_e] 
                  input_map[p1_mahjong_f] 
                  input_map[p1_mahjong_g] 
                  input_map[p1_mahjong_h] 
                  input_map[p1_mahjong_i] 
                  input_map[p1_mahjong_j] 
                  input_map[p1_mahjong_k] 
                  input_map[p1_mahjong_l] 
                  input_map[p1_mahjong_m] 
                  input_map[p1_mahjong_n] 
                  input_map[p1_mahjong_kan] 
                  input_map[p1_mahjong_pon] 
                  input_map[p1_mahjong_chi] 
                  input_map[p1_mahjong_reach] 
                  input_map[p1_mahjong_ron] 
                  input_map[p1_mahjong_bet] 
                  input_map[p1_mahjong_chance] 
                  input_map[p1_mahjong_score] 
                  input_map[p1_mahjong_double_up] 
                  input_map[p1_mahjong_flip_flop] 
                  input_map[p2_up] keyboard[0,3_pad]
                  input_map[p2_down] keyboard[0,4_pad]
                  input_map[p2_left] keyboard[0,1_pad]
                  input_map[p2_right] keyboard[0,2_pad]
                  input_map[p2_button1] keyboard[0,6_pad]
                  input_map[p2_button2] 
                  input_map[p2_button3] 
                  input_map[p2_button4] 
                  input_map[p2_button5] 
                  input_map[p2_button6] 
                  input_map[p2_button7] 
                  input_map[p2_button8] 
                  input_map[p2_button9] 
                  input_map[p2_button10] 
                  input_map[p2_start] 
                  input_map[p2_select] 
                  astrocde/input_setting[p1_paddlex] keydelta:20,centerdelta:20,sensitivity:20,reverse:1
                  astrocde/input_setting[p2_paddlex] keydelta:20,centerdelta:20,sensitivity:20,reverse:0
                  astrocde[home_pi_retropie_roms_astrocade_bally_pinball]/input_map[p1_button1] keyboard[0,l]
                  astrocde[home_pi_retropie_roms_astrocade_bally_pinball]/input_map[p2_button1] keyboard[0,q]
                  astrocde[home_pi_retropie_roms_astrocade_bally_pinball]/input_map[p2_down] keyboard[0,b]
                  
                  

                  RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                  S 1 Reply Last reply Reply Quote 1
                  • S
                    SpudsMcToole Banned @mediamogul
                    last edited by SpudsMcToole

                    @mediamogul Cheers for that, but it's not working for me - I get dumped straight back to the Retropie menu for every ROM, not even going through the MESS splash screens first.

                    I'd already figured most of it out for a couple of other systems, as noted here:

                    https://retropie.org.uk/forum/topic/19816/getting-control-inputs-to-work-in-advmess

                    ...but for the Astrocade with your files above I'm not even getting as far as I did with those - the BBC and Astrovision do at least both boot to their respective systems, I just can't get any sort of input to register.

                    I've got every conceivable BIOS file and variant in the directory you specified, called ASTROCADE.ZIP, ASTROCDE.ZIP, ASTROCDW.ZIP, ASTRO.BIN and BIOSWHIT.BIN. I've got all the game files in .BIN format in the usual ROMS directory in a folder called ASTROCADE.

                    Can I just check a couple of things quickly to see if I can get to the bottom of it?

                    (1) When you say "in /opt/retropie/configs/, I created a emulators.cfg file with the following contents:", do you mean just in the root CONFIGS folder, or inside the CONFIGS/ASTROCADE folder? (I've tried both with no discernible difference, but it'd be good to rule it out as the possible problem source.)

                    (2) In the line astrocade-advmess = "/opt/retropie/emulators/advmame/bin/advmess astrocde -cfg (etc), is that spelling at the end ("astrocde" with no "a") correct? (Same again, have tried both ways but just trying to narrow things down.)

                    (3) When you say to put the BIOS files in /home/pi/RetroPie/roms/mame-advmame/advmess/rom/, is that right? I've been putting the other ones in /opt/retropie/configs/mame-advmame/rom. (Once again, have tried both.)

                    mediamogulM 1 Reply Last reply Reply Quote 0
                    • mediamogulM
                      mediamogul Global Moderator @SpudsMcToole
                      last edited by mediamogul

                      @SpudsMcToole said in Pro tip for anyone thinking of installing MESS:

                      (1)

                      The files should be located at /opt/retropie/configs/astrocade/emulators.cfg and /opt/retropie/configs/astrocade/advmess.rc

                      (2)

                      It is spelled right there. That argument is meant to specify the driver that AdvanceMESS will use. It also means that I made a typo when referencing the BIOS name, which should be astrocde.zip. I'll correct it above.

                      (3)

                      The path that AdvanceMAME will check for its BIOS files is specified in the advmess.rc. You should check yours to see what it's set to, but I would advise the path be different than your MAME files so that it's easier to manage separately.

                      RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                      S 1 Reply Last reply Reply Quote 0
                      • S
                        SpudsMcToole Banned @mediamogul
                        last edited by SpudsMcToole

                        @mediamogul said in Pro tip for anyone thinking of installing MESS:

                        The path that AdvanceMAME will check for its BIOS files is specified in the advmess.rc. You should check yours to see what it's set to, but I would advise the path be different than your MAME files so that it's easier to manage separately.

                        Which path? dir_image? dir_rom?

                        Otherwise I'm perplexed. I'm doing everything you say and I've got all the files where they should be and I'm still getting dumped straight back to the menu. I can't find anything different that I'm doing to what I'm doing with the BBC and Arcadia setups, but those are working except for inputs.

                        For clarity:

                        (1) I've copied your emulator.cfg file and put it in /opt/retropie/configs/astrocade/

                        (2) I've copied your advmess.rc file and put it in the same folder.

                        (3) I've copied your lines for es_systems.cfg and added them into mine.

                        (4) I've got astrocde.zip, containing astro.bin, in /opt/retropie/configs/mame-advmame/rom (and also in /home/pi/RetroPie/roms/mame-advmame/advmess/rom)

                        (5) I've got my game ROMs as unzipped BIN files in /home/pi/RetroPie/roms/astrocade

                        But I don't even get as far as the MESS warning screens.

                        mediamogulM 1 Reply Last reply Reply Quote 0
                        • mediamogulM
                          mediamogul Global Moderator @SpudsMcToole
                          last edited by mediamogul

                          @SpudsMcToole said in Pro tip for anyone thinking of installing MESS:

                          Which path? dir_image? dir_rom?

                          dir_rom

                          But I don't even get as far as the MESS warning screens.

                          After it fails to launch, post the contents of your /dev/shm/runcommand.log to pastebin.com and let's see if we can't find where the breakdown is happening.

                          RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                          S 1 Reply Last reply Reply Quote 0
                          • S
                            SpudsMcToole Banned @mediamogul
                            last edited by SpudsMcToole

                            @mediamogul Okay, huge breakthrough, thanks to the tried and tested "flail around hitting buttons at random and see what happens" method.

                            When I use this as the .RC file:

                            debug_crash no
                            debug_rawsound no
                            debug_speedmark no
                            
                            device_alsa_device default
                            device_alsa_mixer channel
                            device_color_bgr15 yes
                            device_color_bgr16 yes
                            device_color_bgr24 yes
                            device_color_bgr32 yes
                            device_color_bgr8 yes
                            device_color_palette8 no
                            device_color_yuy2 no
                            
                            device_joystick auto
                            device_keyboard sdl
                            device_mouse auto
                            
                            device_raw_firstkeyhack no
                            device_raw_mousedev[0] auto
                            device_raw_mousedev[1] auto
                            device_raw_mousedev[2] auto
                            device_raw_mousedev[3] auto
                            device_raw_mousetype[0] pnp
                            device_raw_mousetype[1] pnp
                            device_raw_mousetype[2] pnp
                            device_raw_mousetype[3] pnp
                            
                            device_sdl_samples 512
                            device_sound auto
                            
                            device_video sdl
                            device_video_cursor auto
                            device_video_doublescan yes
                            device_video_fastchange yes
                            device_video_interlace no
                            device_video_output overlay
                            device_video_overlaysize 0
                            device_video_singlescan no
                            device_video_clock 10 - 150 / 30.5 - 60 / 55 - 130
                            
                            dir_artwork /home/pi/.advance/artwork:/usr/local/share/advance/artwork:/opt/retropie/emulators/advmame/share/advance/artwork
                            dir_crc /home/pi/.advance/crc
                            dir_diff /home/pi/.advance/diff
                            dir_hi /home/pi/.advance/hi
                            dir_image /home/pi/.advance/image:/usr/local/share/advance/image:/opt/retropie/emulators/advmame/share/advance/image:/opt/retropie/configs/mame-advmame/image:/home/pi/RetroPie/roms/bbcmicro
                            dir_inp /home/pi/.advance/inp
                            dir_memcard /home/pi/.advance/memcard
                            dir_nvram /home/pi/.advance/nvram
                            dir_rom /home/pi/.advance/rom:/usr/local/share/advance/rom:/opt/retropie/emulators/advmame/share/advance/rom:/opt/retropie/configs/mame-advmame/rom
                            dir_sample /home/pi/.advance/sample:/usr/local/share/advance/sample:/opt/retropie/emulators/advmame/share/advance/sample
                            dir_snap /home/pi/.advance/snap
                            dir_sta /home/pi/.advance/sta
                            
                            display_adjust none
                            display_antialias no
                            display_artwork_backdrop no
                            display_artwork_bezel no
                            display_artwork_crop no
                            display_artwork_overlay no
                            display_beam 1
                            display_brightness 1
                            display_buffer no
                            display_color auto
                            
                            # Below widens the screen to 16:9
                            # display_expand 1.35
                            
                            display_flicker 0
                            display_flipx no
                            display_flipy no
                            display_frameskip auto
                            display_gamma 1
                            display_intensity 1.5
                            display_interlaceeffect none
                            display_magnify auto
                            display_magnifysize 640
                            display_mode auto
                            display_pausebrightness 1
                            display_resize fractional
                            display_resizeeffect none
                            display_restore no
                            display_rgbeffect none
                            display_rol no
                            display_ror no
                            display_scanlines no
                            display_skipcolumns auto
                            display_skiplines auto
                            display_translucency no
                            display_vsync yes
                            
                            include 
                            input_hotkey yes
                            input_idleexit 0
                            input_map[event10] auto
                            input_map[event11] auto
                            input_map[event12] auto
                            input_map[event13] auto
                            input_map[event14] auto
                            input_map[event1] auto
                            input_map[event2] auto
                            input_map[event3] auto
                            input_map[event4] auto
                            input_map[event5] auto
                            input_map[event6] auto
                            input_map[event7] auto
                            input_map[event8] auto
                            input_map[event9] auto
                            
                            input_map[key_0] joystick_button[0,18] or keyboard[0,0]
                            input_map[key_1] joystick_button[0,8]  or keyboard[0,1]
                            input_map[key_2] joystick_button[0,9]  or keyboard[0,2]
                            input_map[key_3] joystick_button[0,10] or keyboard[0,3]
                            input_map[key_4] joystick_button[0,11] or keyboard[0,4]
                            input_map[key_5] joystick_button[0,12] or keyboard[0,5]
                            input_map[key_6] joystick_button[0,13] or keyboard[0,6]
                            input_map[key_7] joystick_button[0,14] or keyboard[0,7]
                            input_map[key_8] joystick_button[0,15] or keyboard[0,8]
                            input_map[key_9] joystick_button[0,16] or keyboard[0,9]
                            
                            input_map[key_a] auto
                            input_map[key_again] auto
                            input_map[key_alt] auto
                            input_map[key_asterisk] auto
                            input_map[key_b] auto
                            input_map[key_back] auto
                            input_map[key_backquote] auto
                            input_map[key_backslash] auto
                            input_map[key_backspace] auto
                            input_map[key_break] auto
                            input_map[key_c] auto
                            input_map[key_capslock] joystick_digital[0079_0006_3,0,1,1] or keyboard[0,capslock]
                            input_map[key_closebrace] auto
                            input_map[key_colon] auto
                            input_map[key_comma] auto
                            input_map[key_copy] auto
                            input_map[key_ctrl] auto
                            input_map[key_cut] auto
                            input_map[key_d] auto
                            input_map[key_del] joystick_button[0,17] or keyboard[0,del] or keyboard[0,backspace]
                            input_map[key_diesis] auto
                            input_map[key_doublequote] auto
                            input_map[key_down] auto
                            input_map[key_e] auto
                            input_map[key_edit] auto
                            input_map[key_end] auto
                            input_map[key_enter] joystick_button[0,19] or keyboard[0,enter]
                            input_map[key_equals] auto
                            input_map[key_esc] auto
                            input_map[key_f10] auto
                            input_map[key_f11] auto
                            input_map[key_f12] auto
                            input_map[key_f13] auto
                            input_map[key_f14] auto
                            input_map[key_f15] auto
                            input_map[key_f16] auto
                            input_map[key_f17] auto
                            input_map[key_f18] auto
                            input_map[key_f19] auto
                            input_map[key_f1] auto
                            input_map[key_f20] auto
                            input_map[key_f21] auto
                            input_map[key_f22] auto
                            input_map[key_f23] auto
                            input_map[key_f24] auto
                            input_map[key_f2] auto
                            input_map[key_f3] auto
                            input_map[key_f4] auto
                            input_map[key_f5] auto
                            input_map[key_f6] auto
                            input_map[key_f7] auto
                            input_map[key_f8] auto
                            input_map[key_f9] auto
                            input_map[key_f] auto
                            input_map[key_fctn] auto
                            input_map[key_find] auto
                            input_map[key_forward] auto
                            input_map[key_g] auto
                            input_map[key_graph] auto
                            input_map[key_h] auto
                            input_map[key_help] auto
                            input_map[key_hold] auto
                            input_map[key_home] auto
                            input_map[key_i] auto
                            input_map[key_ins] auto
                            input_map[key_j] auto
                            input_map[key_k] auto
                            input_map[key_l] auto
                            input_map[key_lalt] auto
                            input_map[key_lctrl] auto
                            input_map[key_left] auto
                            input_map[key_less] auto
                            input_map[key_lshift] keyboard[0,lshift] or joystick_button[0079_0006_3,2]
                            input_map[key_m] auto
                            input_map[key_menu] auto
                            input_map[key_minus] auto
                            input_map[key_move] auto
                            input_map[key_n] auto
                            input_map[key_numlock] auto
                            input_map[key_o] auto
                            input_map[key_open] auto
                            input_map[key_openbrace] auto
                            input_map[key_p] auto
                            input_map[key_pad_0] auto
                            input_map[key_pad_1] auto
                            input_map[key_pad_2] auto
                            input_map[key_pad_3] auto
                            input_map[key_pad_4] auto
                            input_map[key_pad_5] auto
                            input_map[key_pad_6] auto
                            input_map[key_pad_7] auto
                            input_map[key_pad_8] auto
                            input_map[key_pad_9] auto
                            input_map[key_pad_asterisk] auto
                            input_map[key_pad_colon] auto
                            input_map[key_pad_diesis] auto
                            input_map[key_pad_enter] auto
                            input_map[key_pad_minus] auto
                            input_map[key_pad_plus] auto
                            input_map[key_pad_slash] auto
                            input_map[key_paste] auto
                            input_map[key_pause] auto
                            input_map[key_period] auto
                            input_map[key_pgdn] auto
                            input_map[key_pgup] auto
                            input_map[key_play] auto
                            input_map[key_plus] auto
                            input_map[key_pound] auto
                            input_map[key_print] auto
                            input_map[key_q] auto
                            input_map[key_quickload] auto
                            input_map[key_quote] auto
                            input_map[key_r] auto
                            input_map[key_ralt] auto
                            input_map[key_rctrl] auto
                            input_map[key_record] auto
                            input_map[key_restore] auto
                            input_map[key_rew] auto
                            input_map[key_right] auto
                            input_map[key_rshift] keyboard[0,rshift]
                            input_map[key_s] auto
                            input_map[key_scrlock] auto
                            input_map[key_semicolon] auto
                            input_map[key_shift] auto
                            input_map[key_slash] auto
                            input_map[key_space] auto
                            input_map[key_stop] auto
                            input_map[key_store] auto
                            input_map[key_t] auto
                            input_map[key_tab] auto
                            input_map[key_u] auto
                            input_map[key_undo] auto
                            input_map[key_up] auto
                            input_map[key_v] auto
                            input_map[key_w] auto
                            input_map[key_x] auto
                            input_map[key_y] auto
                            input_map[key_z] auto
                            input_map[p1_dialx] auto
                            input_map[p1_dialy] auto
                            input_map[p1_lightgunx] auto
                            input_map[p1_lightguny] auto
                            input_map[p1_mousex] auto
                            input_map[p1_mousey] auto
                            input_map[p1_paddlex] auto
                            input_map[p1_paddley] auto
                            input_map[p1_pedalbrake] auto
                            input_map[p1_pedalgas] auto
                            input_map[p1_pedalother] auto
                            input_map[p1_stickx] auto
                            input_map[p1_sticky] auto
                            input_map[p1_stickz] auto
                            input_map[p1_trackballx] auto
                            input_map[p1_trackbally] auto
                            input_map[p2_dialx] auto
                            input_map[p2_dialy] auto
                            input_map[p2_lightgunx] auto
                            input_map[p2_lightguny] auto
                            input_map[p2_mousex] auto
                            input_map[p2_mousey] auto
                            input_map[p2_paddlex] auto
                            input_map[p2_paddley] auto
                            input_map[p2_pedalbrake] auto
                            input_map[p2_pedalgas] auto
                            input_map[p2_pedalother] auto
                            input_map[p2_stickx] auto
                            input_map[p2_sticky] auto
                            input_map[p2_stickz] auto
                            input_map[p2_trackballx] auto
                            input_map[p2_trackbally] auto
                            input_map[p3_dialx] auto
                            input_map[p3_dialy] auto
                            input_map[p3_lightgunx] auto
                            input_map[p3_lightguny] auto
                            input_map[p3_mahjong_a] auto
                            input_map[p3_mahjong_b] auto
                            input_map[p3_mahjong_bet] auto
                            input_map[p3_mahjong_c] auto
                            input_map[p3_mahjong_chance] auto
                            input_map[p3_mahjong_chi] auto
                            input_map[p3_mahjong_d] auto
                            input_map[p3_mahjong_double_up] auto
                            input_map[p3_mahjong_e] auto
                            input_map[p3_mahjong_f] auto
                            input_map[p3_mahjong_flip_flop] auto
                            input_map[p3_mahjong_g] auto
                            input_map[p3_mahjong_h] auto
                            input_map[p3_mahjong_i] auto
                            input_map[p3_mahjong_j] auto
                            input_map[p3_mahjong_k] auto
                            input_map[p3_mahjong_kan] auto
                            input_map[p3_mahjong_l] auto
                            input_map[p3_mahjong_m] auto
                            input_map[p3_mahjong_n] auto
                            input_map[p3_mahjong_pon] auto
                            input_map[p3_mahjong_reach] auto
                            input_map[p3_mahjong_ron] auto
                            input_map[p3_mahjong_score] auto
                            input_map[p3_mousex] auto
                            input_map[p3_mousey] auto
                            input_map[p3_paddlex] auto
                            input_map[p3_paddley] auto
                            input_map[p3_pedalbrake] auto
                            input_map[p3_pedalgas] auto
                            input_map[p3_pedalother] auto
                            input_map[p3_stickx] auto
                            input_map[p3_sticky] auto
                            input_map[p3_stickz] auto
                            input_map[p3_trackballx] auto
                            input_map[p3_trackbally] auto
                            input_map[p4_dialx] auto
                            input_map[p4_dialy] auto
                            input_map[p4_lightgunx] auto
                            input_map[p4_lightguny] auto
                            input_map[p4_mahjong_a] auto
                            input_map[p4_mahjong_b] auto
                            input_map[p4_mahjong_bet] auto
                            input_map[p4_mahjong_c] auto
                            input_map[p4_mahjong_chance] auto
                            input_map[p4_mahjong_chi] auto
                            input_map[p4_mahjong_d] auto
                            input_map[p4_mahjong_double_up] auto
                            input_map[p4_mahjong_e] auto
                            input_map[p4_mahjong_f] auto
                            input_map[p4_mahjong_flip_flop] auto
                            input_map[p4_mahjong_g] auto
                            input_map[p4_mahjong_h] auto
                            input_map[p4_mahjong_i] auto
                            input_map[p4_mahjong_j] auto
                            input_map[p4_mahjong_k] auto
                            input_map[p4_mahjong_kan] auto
                            input_map[p4_mahjong_l] auto
                            input_map[p4_mahjong_m] auto
                            input_map[p4_mahjong_n] auto
                            input_map[p4_mahjong_pon] auto
                            input_map[p4_mahjong_reach] auto
                            input_map[p4_mahjong_ron] auto
                            input_map[p4_mahjong_score] auto
                            input_map[p4_mousex] auto
                            input_map[p4_mousey] auto
                            input_map[p4_paddlex] auto
                            input_map[p4_paddley] auto
                            input_map[p4_pedalbrake] auto
                            input_map[p4_pedalgas] auto
                            input_map[p4_pedalother] auto
                            input_map[p4_stickx] auto
                            input_map[p4_sticky] auto
                            input_map[p4_stickz] auto
                            input_map[p4_trackballx] auto
                            input_map[p4_trackbally] auto
                            input_map[safequit] auto
                            input_map[service_coin5] auto
                            input_map[service_coin6] auto
                            input_map[service_coin7] auto
                            input_map[service_coin8] auto
                            input_map[ui_cancel] joystick_button[0079_0006_3,8] joystick_button[0079_0006_3,10] or keyboard[0,f7]
                            input_map[ui_mode_next] keyboard[0,f24]
                            input_map[ui_mode_pred] keyboard[0,f24]
                            input_map[ui_reset_machine] joystick_button[0079_0006,4] or joystick_button[0079_0006_2,4] or keyboard[0,f9]
                            input_map[ui_toggle_debug] keyboard[0,f24]
                            
                            input_steadykey no
                            
                            lcd_server none
                            lcd_speed 4
                            lcd_timeout 500
                            
                            misc_bios default
                            misc_cheat no
                            misc_cheatfile cheat.dat
                            misc_difficulty none
                            misc_eventdebug no
                            misc_eventfile event.dat
                            misc_freeplay no
                            misc_hiscorefile hiscore.dat
                            misc_lang none
                            misc_languagefile english.lng
                            misc_mutedemo no
                            misc_quiet yes
                            misc_ramsize auto
                            misc_safequit no
                            misc_smp no
                            misc_timetorun 0
                            
                            record_sound no
                            record_sound_time 15
                            record_video no
                            record_video_interleave 2
                            record_video_time 15
                            
                            script_coin1 
                            script_coin2 
                            script_coin3 
                            script_coin4 
                            script_emulation 
                            script_event1 
                            script_event10 
                            script_event11 
                            script_event12 
                            script_event13 
                            script_event14 
                            script_event2 
                            script_event3 
                            script_event4 
                            script_event5 
                            script_event6 
                            script_event7 
                            script_event8 
                            script_event9 
                            script_led1 on(kdb, 0b1); wait(!event()); off(kdb, 0b1);
                            script_led2 on(kdb, 0b10); wait(!event()); off(kdb, 0b10);
                            script_led3 
                            script_play 
                            script_safequit 
                            script_start1 
                            script_start2 
                            script_start3 
                            script_start4 
                            script_turbo while (event()) { toggle(kdb, 0b100); delay(100); } off(kdb, 0b100);
                            script_video wait(!event()); set(kdb, 0);
                            
                            sound_adjust auto
                            sound_equalizer_highvolume 0
                            sound_equalizer_lowvolume 0
                            sound_equalizer_midvolume 0
                            sound_latency 0.05
                            sound_mode auto
                            sound_normalize yes
                            sound_samplerate 44100
                            sound_samples yes
                            sound_volume 0
                            
                            sync_fps auto
                            sync_resample auto
                            sync_speed 1
                            sync_startuptime auto
                            sync_turbospeed 3
                            
                            ui_color[help_other] 000000 808080
                            ui_color[help_p1] 000000 ffff00
                            ui_color[help_p2] 000000 00ff00
                            ui_color[help_p3] 000000 ff0000
                            ui_color[help_p4] 000000 00ffff
                            ui_color[interface] 000000 ffffff
                            ui_color[select] 000000 afffff
                            ui_color[tag] 247ef0 ffffff
                            ui_font auto
                            ui_fontsize auto
                            ui_helpimage auto
                            ui_translucency 0.8
                            
                            280x210/display_resize fractional
                            320x192/display_mode sdl_1824x984
                            320x192/display_resize fractional
                            320x192x59/display_mode sdl_1824x984
                            320x192x59/display_resize fractional
                            336x225/display_mode sdl_416x288
                            336x225/display_resize fractional
                            320x204/display_mode sdl_1920x1080
                            320x204/display_resize fractional
                            800x300x50/display_mode generate-double
                            
                            bbcbp128[home_pi_retropie_roms_bbcmicrochuckieegg_chuckie]/script_play delay(750); simulate_key(key_scrlock,75); simulate_key(key_c,75); delay(75); simulate_key(key_h,75); delay(75); simulate_key(key_a,75); delay(75); simulate_key(key_i,75); delay(75); simulate_key(key_n,75); delay(75); simulate_key(key_space,75); delay(200); simulate_key(key_lshift,200); simulate_key(key_2,50); delay(200); simulate_key(key_c,75); delay(75); simulate_key(key_h,75); delay(75); simulate_key(key_u,75); delay(75); simulate_key(key_c,75); delay(75); simulate_key(key_k,75); delay(75); simulate_key(key_i,75); delay(75); simulate_key(key_e,75); delay(75); simulate_key(key_space,75); delay(75); simulate_key(key_e,75); delay(75); simulate_key(key_g,75); delay(75); simulate_key(key_g,75); delay(200); simulate_key(key_lshift,200); simulate_key(key_2,50); delay(200); simulate_key(key_enter,75); delay(75);
                            
                            bbcbp128[home_pi_retropie_roms_bbcmicroelite_elite]/script_play delay(750); simulate_key(key_scrlock,75); simulate_key(key_c,75); delay(75); simulate_key(key_h,75); delay(75); simulate_key(key_a,75); delay(75); simulate_key(key_i,75); delay(75); simulate_key(key_n,75); delay(75); simulate_key(key_space,75); delay(200); simulate_key(key_lshift,200); simulate_key(key_2,50); delay(200); simulate_key(key_l,75); delay(75); simulate_key(key_o,75); delay(75); simulate_key(key_a,75); delay(75); simulate_key(key_d,75); delay(200); simulate_key(key_lshift,200); simulate_key(key_2,50); delay(200); simulate_key(key_enter,75); delay(75);
                            
                            bbcbp128[home_pi_retropie_roms_bbcmicroplanetoid_planetoid]/script_play delay(750); simulate_key(key_scrlock,75); simulate_key(key_c,75); delay(75); simulate_key(key_h,75); delay(75); simulate_key(key_a,75); delay(75); simulate_key(key_i,75); delay(75); simulate_key(key_n,75); delay(75); simulate_key(key_space,75); delay(200); simulate_key(key_lshift,200); simulate_key(key_2,50); delay(200); simulate_key(key_l,75); delay(75); simulate_key(key_o,75); delay(75); simulate_key(key_a,75); delay(75); simulate_key(key_d,75); delay(200); simulate_key(key_lshift,200); simulate_key(key_2,50); delay(200); simulate_key(key_enter,75); delay(75); simulate_key(key_scrlock,75); delay(75);
                            
                            bbcbp128[home_pi_retropie_roms_bbcmicrothrust_thrust]/script_play delay(750); simulate_key(key_scrlock,75); simulate_key(key_c,75); delay(75); simulate_key(key_h,75); delay(75); simulate_key(key_a,75); delay(75); simulate_key(key_i,75); delay(75); simulate_key(key_n,75); delay(75); simulate_key(key_space,75); delay(200); simulate_key(key_lshift,200); simulate_key(key_2,50); delay(200); simulate_key(key_t,75); delay(75); simulate_key(key_h,75); delay(75); simulate_key(key_r,75); delay(75); simulate_key(key_u,75); delay(75); simulate_key(key_s,75); delay(75); simulate_key(key_t,75); delay(200); simulate_key(key_lshift,200); simulate_key(key_2,50); delay(200); simulate_key(key_enter,75); delay(75);
                            
                            input_map[p1_up] joystick_digital[0079_0006_3,0,0,0] or keyboard[0,up]
                            input_map[p1_down] joystick_digital[0079_0006_3,0,0,1] or keyboard[0,down]
                            input_map[p1_left] joystick_digital[0079_0006_3,0,1,1] or keyboard[0,left]
                            input_map[p1_right] joystick_digital[0079_0006_3,0,1,0] or keyboard[0,right]
                            input_map[p1_start] joystick_button[0079_0006_3,7] or keyboard[0,1]
                            input_map[p1_select] joystick_button[0079_0006_3,7] or keyboard[0,5]
                            input_map[p2_up] joystick_digital[0079_0006,0,0,0] or keyboard[0,r]
                            input_map[p2_down] joystick_digital[0079_0006,0,0,1] or keyboard[0,f]
                            input_map[p2_left] joystick_digital[0079_0006,0,1,1] or keyboard[0,d]
                            input_map[p2_right] joystick_digital[0079_0006,0,1,0] or keyboard[0,g]
                            input_map[p2_button1] joystick_button[0079_0006,1] or keyboard[0,a]
                            input_map[p2_button2] joystick_button[0079_0006,3] or keyboard[0,s]
                            input_map[p2_button3] joystick_button[0079_0006,5] or keyboard[0,q]
                            input_map[p2_button4] joystick_button[0079_0006,0] or keyboard[0,w]
                            input_map[p2_button5] joystick_button[0079_0006,2]
                            input_map[p2_button6] 
                            input_map[p2_button7] 
                            input_map[p2_button8] 
                            input_map[p2_button9] 
                            input_map[p2_button10] 
                            input_map[p2_start] joystick_button[0079_0006,4] or joystick_button[0079_0006_3,10] or keyboard[0,2]
                            input_map[p2_select] joystick_button[0079_0006,4] or joystick_button[0079_0006_3,10] or keyboard[0,6]
                            input_map[ui_up] joystick_digital[0079_0006_3,0,0,0] or keyboard[0,up]
                            input_map[ui_down] joystick_digital[0079_0006_3,0,0,1] or keyboard[0,down]
                            input_map[ui_left] joystick_digital[0079_0006_3,0,1,1] or keyboard[0,left]
                            input_map[ui_right] joystick_digital[0079_0006_3,0,1,0] or keyboard[0,right]
                            input_map[ui_select] joystick_button[0079_0006_3,2] or keyboard[0,enter]
                            input_map[ui_record_start] 
                            input_map[ui_record_stop] 
                            
                            

                            ...(almost) everything miraculously works! I have keyboard access on BBC, and it also works for the Arcadia and Astrocade (although not, bizarrely, Fairchild Channel F).

                            The only tiny problem left with the BBC is that because Tab is a key on the BBC keyboard, MESS doesn't recognise it for accessing the menu, and I can't figure out how to fix it because the keyboard map code is all incomprehensible bollocks like this:

                            input_map[key_tab] joystick_button[0079_0006_3,1]
                            

                            Which is annoying, because if I could figure out the maps I could either enable Tab and set controls via the menu, or just set the joystick directly in the RC file to Z, X, /, : and Return and take care of about 90% of BBC games straight away.

                            (I've tried pasting in the line from the Astrocade RC file after I've mapped Tab to a joystick button, which is this:

                            input_map[ui_configure] keyboard[0,tab] or joystick_button[0079_0011_2,7]
                            

                            but that doesn't seem to do anything in the BBC file.)

                            But yeah, otherwise that RC file is the Rosetta Stone and I have no clue why.

                            mediamogulM 1 Reply Last reply Reply Quote 0
                            • mediamogulM
                              mediamogul Global Moderator @SpudsMcToole
                              last edited by

                              @SpudsMcToole said in Pro tip for anyone thinking of installing MESS:

                              The only tiny problem left with the BBC is that because Tab is a key on the BBC keyboard, MESS doesn't recognise it for accessing the menu

                              You might try something like:

                              input_map[key_tab] keyboard[0,tab]
                              input_map[ui_configure] keyboard[0,lalt] keyboard[0,tab] or keyboard[0,ralt] keyboard[0,tab]
                              

                              In theory that would allow the BBC environment to use the 'Tab' key as its own, while the config menu would be invoked by either 'LeftAlt+Tab' or 'RightAlt+Tab'.

                              RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                              S 1 Reply Last reply Reply Quote 0
                              • S
                                SpudsMcToole Banned @mediamogul
                                last edited by

                                @mediamogul Hmm, nope. Adding those lines has no discernible effect - pressing either Alt with Tab just acts like a normal BBC tab.

                                mediamogulM 1 Reply Last reply Reply Quote 0
                                • ?
                                  A Former User
                                  last edited by

                                  I would like to thank mediamogul. Those Astrocade instructions worked perferct.
                                  Just one thing to add to the advmess.rc, this for joystick support.
                                  Scroll down to these lines and make sure they look like so.

                                  input_map[p1_up] auto
                                  input_map[p1_down] auto
                                  input_map[p1_left] auto
                                  input_map[p1_right] auto
                                  input_map[p1_button1] auto
                                  input_map[p1_button2] auto
                                  input_map[p1_button3] auto
                                  input_map[p1_button4] auto
                                  input_map[p1_button5] auto
                                  input_map[p1_button6] auto
                                  input_map[p1_button7] auto
                                  input_map[p1_button8] auto
                                  input_map[p1_button9] auto
                                  input_map[p1_button10] auto
                                  input_map[p1_start] auto
                                  input_map[p1_select] auto

                                  That should work for whatever controller you are using for player 1.
                                  One thing that I noticed was that the actual emulation wasn't very good. Lots of flickering, and often garbled sprites can be seen ,on some games, at the top of the screen. The sound was also a bit crackly, popping, and other weird sounds. I used the same Advmess as the original instruction, so perhaps a newer version has many fixes.
                                  Off to try BBC emulation, and a few other systems.

                                  1 Reply Last reply Reply Quote 1
                                  • mediamogulM
                                    mediamogul Global Moderator @SpudsMcToole
                                    last edited by mediamogul

                                    @SpudsMcToole said in Pro tip for anyone thinking of installing MESS:

                                    Alt with Tab just acts like a normal BBC tab.

                                    Ha! Well, that was me assuming that 'Alt' wasn't used in the BBC environment, but if it is, it would just put you back at square one. I've run into this before with other emulated computer systems that map the majority of the keyboard. While there might be a more elegant solution out there, I ended up mapping keys for emulator functions that weren't used in the emulated environment. Normally, I'd say to open up the options menu to discover which keys aren't already being used, but in your case you can't open up the options menu to check. If your physical keyboard has media controls, I doubt they would be in use here. For example, you might try using:

                                    input_map[ui_configure] keyboard[0,playpause]
                                    

                                    @John_RM_70

                                    That should work for whatever controller you are using for player 1.

                                    Those are indeed likely to be the sanest default settings. One word of warning however, is that when set to 'auto', AdvanceMAME/MESS will grab whatever controller is assigned by the OS as js0 and js1 for players one and two respectively and so on down the line. Seeing as how this assignment often varies between sessions, it can create issues with setups that require the player controls to remain constant.

                                    RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                                    S 1 Reply Last reply Reply Quote 0
                                    • S
                                      SpudsMcToole Banned @mediamogul
                                      last edited by

                                      @mediamogul said in Pro tip for anyone thinking of installing MESS:

                                      @SpudsMcToole said in Pro tip for anyone thinking of installing MESS:

                                      Alt with Tab just acts like a normal BBC tab.

                                      Ha! Well, that was me assuming that 'Alt' wasn't used in the BBC environment, but if it is, it would just put you back at square one. I've run into this before with other computer systems that map the majority of the keyboard. While there might be a more elegant solution out there, I ended up mapping keys for emulator functions that weren't used in the emulation environment. Normally, I'd say to open up the options menu to discover which keys aren't already being used, but in your case you can't open up the options menu to check. If your physical keyboard has media controls, I doubt they would be in use. For example, you might try using:

                                      input_map[ui_configure] keyboard[0,playpause]
                                      

                                      Sadly my keyboard is a basic one with nothing like that. But the BBC doesn't have an Alt key, so goodness knows what's going on.

                                      https://acorn.huininga.nl/pub/software/BeebEm/BeebEm-4.14.68000-20160619/Help/keyboard.jpg

                                      I've tried everything I can think of in terms of editing the RC file manually, both trying to get the menus up and trying to hardcode the joystick to keys, especially around these lines:

                                      input_map[p1_up] joystick_digital[0079_0006_3,0,0,0] or keyboard[0,up]
                                      input_map[p1_down] joystick_digital[0079_0006_3,0,0,1] or keyboard[0,down]
                                      input_map[p1_left] joystick_digital[0079_0006_3,0,1,1] or keyboard[0,left]
                                      input_map[p1_right] joystick_digital[0079_0006_3,0,1,0] or keyboard[0,right]
                                      input_map[p1_start] joystick_button[0079_0006_3,7] or keyboard[0,1]
                                      input_map[p1_select] joystick_button[0079_0006_3,7] or keyboard[0,5]
                                      

                                      but nothing has any effect. I know people HAVE managed to get the MESS menu up in the BBC emulator, but Lord knows how they did it.

                                      mediamogulM 1 Reply Last reply Reply Quote 0
                                      • mediamogulM
                                        mediamogul Global Moderator @SpudsMcToole
                                        last edited by mediamogul

                                        @SpudsMcToole said in Pro tip for anyone thinking of installing MESS:

                                        BBC doesn't have an Alt key, so goodness knows what's going on.

                                        Still, it may be using the 'Alt' key as a stand-in for some other key. If you could find one key that isn't being used, you should be able to access the menu. Below is a list of all the available options.

                                        a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z, n0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0_pad, 1_pad, 2_pad, 3_pad, 4_pad, 5_pad, 6_pad, 7_pad, 8_pad, 9_pad, f1, f2, f3, f4, f5, f6, f7, f8, f9, f10, f11, f12, esc, backquote, minus, equals, backspace, tab, openbrace, closebrace, enter, semicolon, quote, backslash, less, comma, period, slash, space, insert, del, home, end, pgup, pgdn, left, right, up, down, slash_pad, asterisk_pad, minus_pad, plus_pad, period_pad, enter_pad, prtscr, pause, lshift, rshift, lcontrol, rcontrol, lalt, ralt, lwin, rwin, menu, scrlock, numlock, capslock, stop, again, props, undo, front, copy, open, paste, find, cut, help, calc, setup, sleep, wakeup, file, sendfile, deletefile, xfer, prog1, prog2, www, msdos, coffee, direction, cyclewindows, mail, bookmarks, computer, back, forward, closecd, ejectcd, ejectclosecd, nextsong, playpause, previoussong, stopcd, record, rewind, phone, iso, config, homepage, refresh, exit, move, edit, scrollup, scrolldown, leftparen_pad, rightparen_pad, intl1, intl2, intl3, intl4, intl5, intl6, intl7, intl8, intl9, lang1, lang2, lang3, lang4, lang5, lang6, lang7, lang8, lang9, playcd, pausecd, prog3, prog4, suspend, close, brightnessdown, brightnessup, macro, mute, volumedown, volumeup, power, compose, f13, f14, f15, f16, f17, f18, f19, f20, f21, f22, f23, f24

                                        EDIT: Anyone know what the 'coffee' key is?

                                        RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                                        S 1 Reply Last reply Reply Quote 0
                                        • ?
                                          A Former User
                                          last edited by

                                          Got it working great.
                                          Followed Spud11's post, and partly mediamogul's astrocade posts.
                                          Just fired up Planetoid, looks good.
                                          Tried a few bbc disk commands, and they too worked - *cat, *!boot , etc....
                                          It's 2am here, so off to bed. Tomorrow, I will test a real BBC Master, alongside the Pi, and post some screens from the same games.
                                          Whats weird is that my BBC Master has a Pi Zero inside it, running as a co-pro, along with usb and a CF HD. Amazing what people are doing with the Pi, even adding it to it's big old granddad, the BBC.

                                          mediamogulM 1 Reply Last reply Reply Quote 0
                                          • mediamogulM
                                            mediamogul Global Moderator @A Former User
                                            last edited by

                                            @John_RM_70 said in Pro tip for anyone thinking of installing MESS:

                                            Tomorrow, I will test a real BBC Master, alongside the Pi, and post some screens from the same games.

                                            Very nice! I look forward to seeing how it holds up.

                                            RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                                            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.