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 @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
                                        • S
                                          SpudsMcToole Banned @mediamogul
                                          last edited by SpudsMcToole

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

                                          @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.

                                          Gah. My best bet out of this lot was probably "lwin", but that does nothing either.

                                          0_1541156114382_lwin.jpg image url)

                                          I booted the emulator up and tried every key at the command prompt, and the only one that had no discernible effect on either the BBC or MESS was F12, but that was no good either. How in the heck are people getting the menus up?

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

                                            Here are 2 wholly un-scientific images from a real BBC Master, and a Raspberry Pi 3b+ running Advmess.

                                            The hardware
                                            https://imagizer.imageshack.com/v2/xq90/924/jgjFDN.png
                                            https://imagizer.imageshack.com/v2/xq90/922/xNrlqc.png

                                            Just 2 images, for now.
                                            https://imagizer.imageshack.com/v2/xq90/923/6qkdSb.png
                                            https://imagizer.imageshack.com/v2/xq90/921/qKm7Jx.png

                                            Can't get images working, so only links for now. The first image under "Just 2 images, for now.", is the BBC Master.
                                            You can see the Pi isn't running in the correct aspect ratio. But overall, it's not bad for composite. The Master is RGB Scart.

                                            mediamogulM 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.