Please do not post a support request without first reading and following the advice in

AdvMESS And The Secret BIOS Location

  • I'm trying to run Tandy CoCo games through AdvMESS, but it keeps crashing with a "File not found" error for the bas10.rom BIOS file.

    Executing: /opt/retropie/emulators/advmame/bin/advmess coco -log -cfg /opt/retropie/configs/coco/advmess.rc -cassette "/home/pi/RetroPie/roms/coco/GAMES01.DSK"
    bas10.rom    NOT FOUND
    ERROR: required files are missing, the game cannot be run.

    Being AdvMESS, though, it doesn't do anything helpful or useful like tell me where it's looking for it, and there's no "verbose logging" option in RUNCOMMAND.

    This is my EMULATORS.CFG:

    xroar-cocous = "/opt/retropie/emulators/xroar/bin/xroar -fs -vo sdl -ccr simple -machine cocous -run %ROM%"
    xroar-coco = "/opt/retropie/emulators/xroar/bin/xroar -fs -vo sdl -ccr simple -machine coco -run %ROM%"
    advmess = "/opt/retropie/emulators/advmame/bin/advmess coco -log -cfg /opt/retropie/configs/coco/advmess.rc -cassette %ROM%"

    This is my ADVMESS.RC:

    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/.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/coco
    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 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
    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] 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[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_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_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_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_configure] keyboard[0,tab] or joystick_button[0079_0011_2,7]
    input_map[p1_button1] keyboard[0,lcontrol] or joystick_button[0079_0011,3]
    input_map[p1_button2] keyboard[0,lalt] or joystick_button[0079_0011,4]
    input_map[p1_button3] keyboard[0,space] or joystick_button[0079_0011,0]
    input_map[p1_button4] keyboard[0,lshift] or joystick_button[0079_0011,1]
    input_map[ui_cancel] keyboard[0,esc] or keyboard[0,f7] or joystick_button[0079_0011_2,tr]

    I have copies of bas10.rom (and bas12.rom and bas13.rom for good measure) in the following locations:







    But apparently none of those are acceptable. Any ideas?

  • Global Moderator

    While there's nothing shown in the logfile, advmess (like advmame) saves a log file (advmess.log) in the folder from where the command is started.

    So, running your example, I see that advmess tries to find bas10.rom in a subfolder coco in any of the dir_rom folders. So I've set

    dir_rom /home/pi/roms/coco:/home/pi/RetroPie/BIOS

    in /opt/retropie/configs/coco/advmess.rc, then I've copied a bas10.rom file in /home/pi/RetroPie/BIOS/coco. This should help you get rid of this error.

  • @mitu That did the trick, cheers. Except now it turns out that I needed the disk BIOS :(

    (Xroar boots into disk OS automatically. I can't find anything anywhere about what I need to make AdvMESS do the same. Gah.)

    I'm pretty sure the file will be the extbas10.rom and extbas11.rom files I have, but I'm scratching my head trying to work out how to tell AdvMESS to use them. It's not the misc_bios line in ADVMESS.RC - I changed that from

    misc_bios default


    misc_bios extbas11.rom

    and to

    misc_bios extbas11

    but that made no difference, still just booted in BASIC 1.0. I also tried just renaming the extbas11 file to bas10, but no dice there either. And I tried deleting all the BIOS files except extbas11.rom, but it somehow still managed to just boot in BASIC 1.0. Pretty much out of ideas now.

  • @SpudsMcToole I should make this a separate thread since it's a totally different question, really.

  • ...except now it's turned into a BIOS-location problem again. I eventually worked out that I need to be setting it to "cocoe" in EMULATORS.CFG rather than just "coco". Except now I get this:

    Executing: /opt/retropie/emulators/advmame/bin/advmess cocoe -log -cfg /opt/retropie/configs/coco/advmess.rc -floppydisk "/home/pi/RetroPie/roms/coco/GAMES01.DSK"
    bas11.rom    NOT FOUND
    extbas10.rom NOT FOUND
    OPTIONAL disk10.rom   NOT FOUND
    ERROR: required files are missing, the game cannot be run.

    ...even though all of those files are present, in the exact same folder(s) as bas10.rom is. WHUH?

  • Try creating a subfolder called cocoe and putting the BIOS files there.


    Then put the bas10.rom, bas11.rom, extbas10.rom, and disk10.rom into that new subfolder.

    See if that helps AdvMame find the proper BIOS for the cocoe system.

  • @dmmarti It was simpler than that - I'm a dumdum and I had so many folders with CoCo BIOS files in them from when I was trying to get it work that I'd added the Extended Basic ROMs to every folder except the right one :D

Log in to reply

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.