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

    BBC Micro Emulation

    Scheduled Pinned Locked Moved Help and Support
    bbc microeliterepton
    19 Posts 11 Posters 6.7k 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
      spud11 @nevsan
      last edited by spud11

      @nevsan I've checked my advmess setup. I currently have 4 games working - Elite, Chuckie Egg, Planetoid and Thrust. Beebem is the better emulator, but when I last tried it, the sound did not work, so I resorted to advmess.

      Install the latest version of Advance Mame which currently is 3.7. In the /opt/retropie/emulators/advmame/bin folder, you will find advmess.

      My setup is complicated. There may be an easier way of getting it to work. I've got an arcade table with 4 Dragonrise USB joysticks. I didn't want to use a keyboard to control each game, so I've mapped the joystick inputs to each game's keyboard controls using xboxdrv. Because each game had different controls, I found that it was best to copy the advmess binary and create chuckieegg, thrust etc binaries (making each of them executable). Then I could tailor xboxdrv for each game through runcommand-onstart.

      I'm using Attract Mode so here are my configs, some of which you'll need to adapt for emulation station if you want to go down this route. Here is my vanilla BBC Micro setup anyway:

      # Generated by Attract-Mode v2.2.1
      #
      executable           /opt/retropie/supplementary/runcommand/runcommand.sh
      args                 0 _SYS_ bbcmicro "[romfilename]"
      rompath              /home/pi/RetroPie/roms/bbcmicro
      romext               .ssd;.SSD
      system               BBC Micro
      info_source          thegamesdb.net
      artwork    flyer           /home/pi/RetroPie/roms/bbcmicro/flyer
      artwork    marquee         /home/pi/RetroPie/roms/bbcmicro/marquee
      artwork    snap            /home/pi/RetroPie/roms/bbcmicro/snap
      artwork    wheel           /home/pi/RetroPie/roms/bbcmicro/wheel
      

      My emulators.cfg which is in /opt/retropie/configs/bbcmicro:

      default = "advmess"
      advmess = "/opt/retropie/emulators/advmame/bin/advmess bbcbp128 -cfg /opt/retropie/configs/mame-advmame/bbcmicro.rc -floppy %ROM%"
      

      See my next post for my bbcmicro.rc.

      You will see in the bbcmicro.rc a line beginning bbcbp128[home_pi_retropie_roms_bbcmicrochuckieegg_chuckie]/script_play delay(750); simulate_key(key_scrlock,75);

      This line and the lines that follow allow me to start each game automatically. These lines send key signals to the emulator to "chainload" the relevant game.

      As well as the game roms which go in the /home/pi/RetroPie/roms/bbcmicro/ folder, you will need the BIOS file. I'm using bbcbp128.zip which I've placed in the /opt/retropie/configs/mame-advmame/roms/ folder.

      I hope this all helps you in some way.

      RetroPie v4.4.1 • RPi3 Model B • 5.1V 2.5A PSU • 32GB SanDisk Extreme microSD • 2TB Toshiba Canvio Basics Portable USB 3.0 hard drive • 4 x DragonRise USB Arcade joysticks • 2 x TurboTwist spinners • 1 x USB trackball • 1 x PS4 wireless • 1 x 8BitDo Zero

      1 Reply Last reply Reply Quote 0
      • S
        spud11 @nevsan
        last edited by

        @nevsan My bbcmicro.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] 
        
        bbcbp128[home_pi_retropie_roms_bbcmicro_chuckie]/input_map[key_1] joystick_button[0079_0006_3,7] or keyboard[0,1]
        bbcbp128[home_pi_retropie_roms_bbcmicro_chuckie]/input_map[key_3] joystick_button[0079_0006,10] or keyboard[0,3]
        bbcbp128[home_pi_retropie_roms_bbcmicro_chuckie]/input_map[key_2] joystick_button[0079_0006,9] or keyboard[0,2]
        bbcbp128[home_pi_retropie_roms_bbcmicro_chuckie]/input_map[key_4] joystick_button[0079_0006,11] or keyboard[0,4]
        bbcbp128[home_pi_retropie_roms_bbcmicro_chuckie]/input_map[key_5] joystick_button[0079_0006,12] or keyboard[0,5]
        bbcbp128[home_pi_retropie_roms_bbcmicro_chuckie]/input_map[key_7] joystick_button[0079_0006,14] or keyboard[0,7]
        bbcbp128[home_pi_retropie_roms_bbcmicro_chuckie]/input_map[key_6] joystick_button[0079_0006,13] or keyboard[0,6]
        bbcbp128[home_pi_retropie_roms_bbcmicro_chuckie]/input_map[key_8] joystick_button[0079_0006,15] or keyboard[0,8]
        bbcbp128[home_pi_retropie_roms_bbcmicro_chuckie]/input_map[key_9] joystick_button[0079_0006,16] or keyboard[0,9]
        bbcbp128[home_pi_retropie_roms_bbcmicro_chuckie]/input_map[key_0] joystick_button[0079_0006,18] or keyboard[0,0]
        bbcbp128[home_pi_retropie_roms_bbcmicro_chuckie]/input_map[key_enter] joystick_button[0079_0006,19] or keyboard[0,enter]
        bbcbp128[home_pi_retropie_roms_bbcmicro_chuckie]/input_map[key_del] joystick_button[0079_0006,17] or keyboard[0,del] or keyboard[0,backspace]
        bbcbp128[home_pi_retropie_roms_bbcmicro_chuckie]/input_map[key_a] joystick_digital[0079_0006_3,0,0,0] or keyboard[0,a]
        bbcbp128[home_pi_retropie_roms_bbcmicro_chuckie]/input_map[key_s] joystick_button[0079_0006_3,7] or keyboard[0,s]
        bbcbp128[home_pi_retropie_roms_bbcmicro_chuckie]/input_map[key_z] joystick_digital[0079_0006_3,0,0,1] or keyboard[0,z]
        bbcbp128[home_pi_retropie_roms_bbcmicro_chuckie]/input_map[key_space] joystick_button[0079_0006_3,2] or keyboard[0,space]
        bbcbp128[home_pi_retropie_roms_bbcmicro_chuckie]/input_map[key_comma] joystick_digital[0079_0006_3,0,1,1] or keyboard[0,comma]
        bbcbp128[home_pi_retropie_roms_bbcmicro_chuckie]/input_map[key_period] joystick_digital[0079_0006_3,0,1,0] or keyboard[0,period]
        bbcbp128[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_1] joystick_button[0079_0006,8] or keyboard[0,1]
        bbcbp128[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_ctrl] joystick_digital[0079_0006_3,0,1,0] or keyboard[0,lcontrol]
        bbcbp128[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_3] joystick_button[0079_0006,10] or keyboard[0,3]
        bbcbp128[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_2] joystick_button[0079_0006,9] or keyboard[0,2]
        bbcbp128[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_4] joystick_button[0079_0006,11] or keyboard[0,4]
        bbcbp128[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_space] joystick_button[0079_0006_3,7] or joystick_button[0079_0006_3,5] or keyboard[0,space]
        bbcbp128[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_5] joystick_button[0079_0006,12] or keyboard[0,5]
        bbcbp128[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_7] joystick_button[0079_0006,14] or keyboard[0,7]
        bbcbp128[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_6] joystick_button[0079_0006,13] or keyboard[0,6]
        bbcbp128[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_8] joystick_button[0079_0006,15] or keyboard[0,8]
        bbcbp128[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_9] joystick_button[0079_0006,16] or keyboard[0,9]
        bbcbp128[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_0] joystick_button[0079_0006,18] or keyboard[0,0]
        bbcbp128[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_enter] joystick_button[0079_0006_3,0] or keyboard[0,enter]
        bbcbp128[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_del] joystick_button[0079_0006,17] or keyboard[0,del] or keyboard[0,backspace]
        bbcbp128[home_pi_retropie_roms_bbcmicro_thrust]/input_map[p1_button1] 
        bbcbp128[home_pi_retropie_roms_bbcmicro_thrust]/input_map[p1_button2] 
        bbcbp128[home_pi_retropie_roms_bbcmicro_planetoid]/input_map[key_1] joystick_button[0079_0006,8] or keyboard[0,1]
        bbcbp128[home_pi_retropie_roms_bbcmicro_planetoid]/input_map[key_tab] joystick_button[0079_0006_3,1] or keyboard[0,tab]
        bbcbp128[home_pi_retropie_roms_bbcmicro_planetoid]/input_map[key_3] joystick_button[0079_0006,10] or keyboard[0,3]
        bbcbp128[home_pi_retropie_roms_bbcmicro_planetoid]/input_map[key_2] joystick_button[0079_0006,9] or keyboard[0,2]
        bbcbp128[home_pi_retropie_roms_bbcmicro_planetoid]/input_map[key_a] joystick_digital[0079_0006_3,0,0,0] or keyboard[0,a]
        bbcbp128[home_pi_retropie_roms_bbcmicro_planetoid]/input_map[key_z] joystick_digital[0079_0006_3,0,0,1] or keyboard[0,z]
        bbcbp128[home_pi_retropie_roms_bbcmicro_planetoid]/input_map[key_4] joystick_button[0079_0006,11] or keyboard[0,4]
        bbcbp128[home_pi_retropie_roms_bbcmicro_planetoid]/input_map[key_space] joystick_button[0079_0006_3,5] or keyboard[0,space]
        bbcbp128[home_pi_retropie_roms_bbcmicro_planetoid]/input_map[key_5] joystick_button[0079_0006,12] or keyboard[0,5]
        bbcbp128[home_pi_retropie_roms_bbcmicro_planetoid]/input_map[key_7] joystick_button[0079_0006,14] or keyboard[0,7]
        bbcbp128[home_pi_retropie_roms_bbcmicro_planetoid]/input_map[key_6] joystick_button[0079_0006,13] or keyboard[0,6]
        bbcbp128[home_pi_retropie_roms_bbcmicro_planetoid]/input_map[key_h] joystick_button[0079_0006_3,4] or keyboard[0,h]
        bbcbp128[home_pi_retropie_roms_bbcmicro_planetoid]/input_map[key_8] joystick_button[0079_0006,15] or keyboard[0,8]
        bbcbp128[home_pi_retropie_roms_bbcmicro_planetoid]/input_map[key_9] joystick_button[0079_0006,16] or keyboard[0,9]
        bbcbp128[home_pi_retropie_roms_bbcmicro_planetoid]/input_map[key_0] joystick_button[0079_0006,18] or keyboard[0,0]
        bbcbp128[home_pi_retropie_roms_bbcmicro_planetoid]/input_map[key_enter] joystick_button[0079_0006_3,0] or keyboard[0,enter]
        bbcbp128[home_pi_retropie_roms_bbcmicro_planetoid]/input_map[key_del] joystick_button[0079_0006,17] or keyboard[0,del] or keyboard[0,backspace]
        bbcbp128[home_pi_retropie_roms_bbcmicro_elite]/input_map[key_1] joystick_button[0079_0006,8] or keyboard[0,1]
        bbcbp128[home_pi_retropie_roms_bbcmicro_elite]/input_map[key_3] joystick_button[0079_0006,10] or keyboard[0,3]
        bbcbp128[home_pi_retropie_roms_bbcmicro_elite]/input_map[key_2] joystick_button[0079_0006,9] or keyboard[0,2]
        bbcbp128[home_pi_retropie_roms_bbcmicro_elite]/input_map[key_4] joystick_button[0079_0006,11] or keyboard[0,4]
        bbcbp128[home_pi_retropie_roms_bbcmicro_elite]/input_map[key_5] joystick_button[0079_0006,12] or keyboard[0,5]
        bbcbp128[home_pi_retropie_roms_bbcmicro_elite]/input_map[key_7] joystick_button[0079_0006,14] or keyboard[0,7]
        bbcbp128[home_pi_retropie_roms_bbcmicro_elite]/input_map[key_6] joystick_button[0079_0006,13] or keyboard[0,6]
        bbcbp128[home_pi_retropie_roms_bbcmicro_elite]/input_map[key_8] joystick_button[0079_0006,15] or keyboard[0,8]
        bbcbp128[home_pi_retropie_roms_bbcmicro_elite]/input_map[key_9] joystick_button[0079_0006,16] or keyboard[0,9]
        bbcbp128[home_pi_retropie_roms_bbcmicro_elite]/input_map[key_0] joystick_button[0079_0006,18] or keyboard[0,0]
        bbcbp128[home_pi_retropie_roms_bbcmicro_elite]/input_map[key_enter] joystick_button[0079_0006,19] or keyboard[0,enter]
        bbcbp128[home_pi_retropie_roms_bbcmicro_elite]/input_map[key_del] joystick_button[0079_0006,17] or keyboard[0,del] or keyboard[0,backspace]
        bbcbp128[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_shift] joystick_button[0079_0006_3,2] or keyboard[0,lshift]
        bbcb[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_1] joystick_button[0079_0006,8] or keyboard[0,1]
        bbcb[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_3] joystick_button[0079_0006,10] or keyboard[0,3]
        bbcb[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_2] joystick_button[0079_0006,9] or keyboard[0,2]
        bbcb[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_4] joystick_button[0079_0006,11] or keyboard[0,4]
        bbcb[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_5] joystick_button[0079_0006,12] or keyboard[0,5]
        bbcb[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_7] joystick_button[0079_0006,14] or keyboard[0,7]
        bbcb[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_6] joystick_button[0079_0006,13] or keyboard[0,6]
        bbcb[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_8] joystick_button[0079_0006,15] or keyboard[0,8]
        bbcb[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_9] joystick_button[0079_0006,16] or keyboard[0,9]
        bbcb[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_0] joystick_button[0079_0006,18] or keyboard[0,0]
        bbcb[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_enter] joystick_button[0079_0006,19] or keyboard[0,enter]
        bbcb[home_pi_retropie_roms_bbcmicro_thrust]/input_map[key_del] joystick_button[0079_0006,17] or keyboard[0,del] or keyboard[0,backspace]
        bbcbp128[home_pi_retropie_roms_bbcmicrothrust_thrust]/input_map[key_1] joystick_button[0079_0006,8] or keyboard[0,1]
        bbcbp128[home_pi_retropie_roms_bbcmicrothrust_thrust]/input_map[key_3] joystick_button[0079_0006,10] or keyboard[0,3]
        bbcbp128[home_pi_retropie_roms_bbcmicrothrust_thrust]/input_map[key_2] joystick_button[0079_0006,9] or keyboard[0,2]
        bbcbp128[home_pi_retropie_roms_bbcmicrothrust_thrust]/input_map[key_4] joystick_button[0079_0006,11] or keyboard[0,4]
        bbcbp128[home_pi_retropie_roms_bbcmicrothrust_thrust]/input_map[key_5] joystick_button[0079_0006,12] or keyboard[0,5]
        bbcbp128[home_pi_retropie_roms_bbcmicrothrust_thrust]/input_map[key_7] joystick_button[0079_0006,14] or keyboard[0,7]
        bbcbp128[home_pi_retropie_roms_bbcmicrothrust_thrust]/input_map[key_6] joystick_button[0079_0006,13] or keyboard[0,6]
        bbcbp128[home_pi_retropie_roms_bbcmicrothrust_thrust]/input_map[key_8] joystick_button[0079_0006,15] or keyboard[0,8]
        bbcbp128[home_pi_retropie_roms_bbcmicrothrust_thrust]/input_map[key_9] joystick_button[0079_0006,16] or keyboard[0,9]
        bbcbp128[home_pi_retropie_roms_bbcmicrothrust_thrust]/input_map[key_0] joystick_button[0079_0006,18] or keyboard[0,0]
        bbcbp128[home_pi_retropie_roms_bbcmicrothrust_thrust]/input_map[key_enter] joystick_button[0079_0006,19] or keyboard[0,enter]
        bbcbp128[home_pi_retropie_roms_bbcmicrothrust_thrust]/input_map[key_del] joystick_button[0079_0006,17] or keyboard[0,del] or keyboard[0,backspace]
        bbcbp128[home_pi_retropie_roms_bbcmicroplanetoid_planetoid]/input_map[key_1] joystick_button[0079_0006,8] or keyboard[0,1]
        bbcbp128[home_pi_retropie_roms_bbcmicroplanetoid_planetoid]/input_map[key_3] joystick_button[0079_0006,10] or keyboard[0,3]
        bbcbp128[home_pi_retropie_roms_bbcmicroplanetoid_planetoid]/input_map[key_2] joystick_button[0079_0006,9] or keyboard[0,2]
        bbcbp128[home_pi_retropie_roms_bbcmicroplanetoid_planetoid]/input_map[key_4] joystick_button[0079_0006,11] or keyboard[0,4]
        bbcbp128[home_pi_retropie_roms_bbcmicroplanetoid_planetoid]/input_map[key_5] joystick_button[0079_0006,12] or keyboard[0,5]
        bbcbp128[home_pi_retropie_roms_bbcmicroplanetoid_planetoid]/input_map[key_7] joystick_button[0079_0006,14] or keyboard[0,7]
        bbcbp128[home_pi_retropie_roms_bbcmicroplanetoid_planetoid]/input_map[key_6] joystick_button[0079_0006,13] or keyboard[0,6]
        bbcbp128[home_pi_retropie_roms_bbcmicroplanetoid_planetoid]/input_map[key_8] joystick_button[0079_0006,15] or keyboard[0,8]
        bbcbp128[home_pi_retropie_roms_bbcmicroplanetoid_planetoid]/input_map[key_9] joystick_button[0079_0006,16] or keyboard[0,9]
        bbcbp128[home_pi_retropie_roms_bbcmicroplanetoid_planetoid]/input_map[key_0] joystick_button[0079_0006,18] or keyboard[0,0]
        bbcbp128[home_pi_retropie_roms_bbcmicroplanetoid_planetoid]/input_map[key_enter] joystick_button[0079_0006,19] or keyboard[0,enter]
        bbcbp128[home_pi_retropie_roms_bbcmicroplanetoid_planetoid]/input_map[key_del] joystick_button[0079_0006,17] or keyboard[0,del] or keyboard[0,backspace]
        bbcbp128[home_pi_retropie_roms_bbcmicrochuckieegg_chuckie]/input_map[key_1] joystick_button[0079_0006,8] or keyboard[0,1]
        bbcbp128[home_pi_retropie_roms_bbcmicrochuckieegg_chuckie]/input_map[key_3] joystick_button[0079_0006,10] or keyboard[0,3]
        bbcbp128[home_pi_retropie_roms_bbcmicrochuckieegg_chuckie]/input_map[key_2] joystick_button[0079_0006,9] or keyboard[0,2]
        bbcbp128[home_pi_retropie_roms_bbcmicrochuckieegg_chuckie]/input_map[key_4] joystick_button[0079_0006,11] or keyboard[0,4]
        bbcbp128[home_pi_retropie_roms_bbcmicrochuckieegg_chuckie]/input_map[key_5] joystick_button[0079_0006,12] or keyboard[0,5]
        bbcbp128[home_pi_retropie_roms_bbcmicrochuckieegg_chuckie]/input_map[key_7] joystick_button[0079_0006,14] or keyboard[0,7]
        bbcbp128[home_pi_retropie_roms_bbcmicrochuckieegg_chuckie]/input_map[key_6] joystick_button[0079_0006,13] or keyboard[0,6]
        bbcbp128[home_pi_retropie_roms_bbcmicrochuckieegg_chuckie]/input_map[key_8] joystick_button[0079_0006,15] or keyboard[0,8]
        bbcbp128[home_pi_retropie_roms_bbcmicrochuckieegg_chuckie]/input_map[key_9] joystick_button[0079_0006,16] or keyboard[0,9]
        bbcbp128[home_pi_retropie_roms_bbcmicrochuckieegg_chuckie]/input_map[key_0] joystick_button[0079_0006,18] or keyboard[0,0]
        bbcbp128[home_pi_retropie_roms_bbcmicrochuckieegg_chuckie]/input_map[key_enter] joystick_button[0079_0006,19] or keyboard[0,enter]
        bbcbp128[home_pi_retropie_roms_bbcmicrochuckieegg_chuckie]/input_map[key_del] joystick_button[0079_0006,17] or keyboard[0,del] or keyboard[0,backspace]
        

        RetroPie v4.4.1 • RPi3 Model B • 5.1V 2.5A PSU • 32GB SanDisk Extreme microSD • 2TB Toshiba Canvio Basics Portable USB 3.0 hard drive • 4 x DragonRise USB Arcade joysticks • 2 x TurboTwist spinners • 1 x USB trackball • 1 x PS4 wireless • 1 x 8BitDo Zero

        1 Reply Last reply Reply Quote 0
        • B
          BBCMicro
          last edited by

          I would also love to see the BBC Micro emulation on RetroPie. There were some really great original games which you cannot get on any other micro. I found one game where you have to build a wall to stop people coming to stealing your money. Donald Trump may love to play this game!

          1 Reply Last reply Reply Quote 0
          • C
            ChaosFox
            last edited by

            Still have fond memories of the old SHIFT+BREAK combination followed by the eager wait to see if the disk actually would load.

            Not sure if Elite, Chuckie Egg and Exile are really viable reasons for Beeb support though beyond simple nostalgia for those particular versions of the games. They were the original versions, no doubt about it, but both games were roundly surpassed by their various ports later on.

            That said, Superior Software's substantial back catalogue of Beeb/Electron "exclusives" is worth a look, and the Beeb's versions of Repton & Repton 2 still remain the best way to play the game, even compared to Superior's horrendously bad PC ports.

            1 Reply Last reply Reply Quote 0
            • OneSwitchO
              OneSwitch
              last edited by

              Would definitely still love to see BBC Micro emulation. Seems a massive gaping hole in what RetroPie can do.

              The BBC Micro has a ton of unique brilliant games and software. On a personal note, I'd love to be able to use a RetroPie to run some old SpecialNeeds games and software that just never surfaced on other platforms.

              When I see that emulation can be done:

              - with good working sound and speed, I can't quite understand why it's getting pushed aside from the RetroPie top-bods. Too difficult to get working?

              It's not a lot, but I'd happily donate £50 if it could be included, at least in the experimental builds section.

              mituM 1 Reply Last reply Reply Quote 1
              • mituM
                mitu Global Moderator @OneSwitch
                last edited by

                @oneswitch said in BBC Micro Emulation:

                Too difficult to get working?

                It's already working - have you read the previous posts ?

                OneSwitchO 1 Reply Last reply Reply Quote 0
                • OneSwitchO
                  OneSwitch @mitu
                  last edited by

                  @mitu - Yes, I mean to get it working in a less cumbersome way. So it could be listed here: https://github.com/RetroPie/RetroPie-Setup/wiki - downloaded from the RetroPie setup area, and not involve messing about with individual files just to change disks.

                  mituM 1 Reply Last reply Reply Quote 0
                  • mituM
                    mitu Global Moderator @OneSwitch
                    last edited by

                    @oneswitch Yes, that part is missing - adding the BBM as a separate system. Maybe one of these days it will appear :).

                    OneSwitchO 1 Reply Last reply Reply Quote 1
                    • OneSwitchO
                      OneSwitch @mitu
                      last edited by

                      @mitu Hope so.

                      1 Reply Last reply Reply Quote 0
                      • herb_fargusH
                        herb_fargus administrators
                        last edited by

                        I constantly bug jools about it. Bit more intensive as it requires actual emulator development as opposed to just setting up a script to compile it.

                        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

                        OneSwitchO 1 Reply Last reply Reply Quote 1
                        • OneSwitchO
                          OneSwitch @herb_fargus
                          last edited by

                          @herb_fargus One day, hopefully. Thanks for the update.

                          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.