Flashing with external hardware

As noted before, the FireBee has 8MB of flash memory which normally is updated from TOS or MiNT with a software tool.
The FireBee´s hardware structure provides a "BDM" pinheader for accessing this chip by using an external computer and a (USB-to-FB pinheader) hardware interface.

Regarding the Flash ROM, external access is only needed for development purposes or in case that something went seriously wrong while flashing the system software/operating systems with the FireBee flasher tool.

Flashing the ROM

Safety precautions:
  • Before opening the FireBee case or touching the motherboard make sure that you are not electrostatical loaded. Ground yourself by touching the metal shield of a grounded electrical device, water pipe or the blank pipe of a wall radiator.

  • Always power off the FireBee before connecting external devices. Check the correct wiring before starting any action!

  • We recommend to use a remote computer with a Linux (Debian/Ubuntu) based system because this is used by most of "our" developers and so help in case of problems is easy then.

  • For the hardware device we recommend a "TBLCF", the Turbo BDM Lite ColdFire Interface. It is an open source project ( Download Documentation v10 ), so we could produce a small series of TBLCF boards. Until the boards are available in our webshop, please send an email to acpinfo (at) firebee (dot) org if you want to get a TBLCF.

    The TBLCF device is also working well with Win XP computers and you can use them for flashing as well. As nobody of our team is using XP (and no later MS operating System is working with the TBLCFs) we cannot describe it in detail here. Please seek for support at the community if you really do not get along with the Linux possibility we describe.
    There are some other USB- and also paralell port devices which use mostly own software.

    The handy TBLCF board is directly plugged onto the FireBee´s BDM pinheader and connected to the remote computer via USB (type A to type B) cable.

TBLCF on FireBee motherboard, view from backside

  • bdmctrl is a free software, a commandline tool for Linux and Windows. It can be used for the TBLCF and for P&E BDM (paralell port) interface. If you want to build bdmctrl yourself for your system, follow this manual: https://sourceforge.net/p/bdm ... 68k/README
    Sources of the BDM flash scripts are on GitHub: https://github.com/firebee-or ... sh_scripts

  • We offer a software "Rescue pack", designed for easy restoring a bricked Bee exclusively for Ubuntu/Debian based systems in conjunction with the TBLCF. The rescue package contains the bdmctrl executable and pre-configured run-scripts for flashing every system software part. The included system software files will restore your Bee to the "System package 2017 state" and are already converted to .elf format which is used by the bdmctrl executable.

    The last decade you only knew about .s19 files for flashing the FireBees ROM. These .s19 files with BaS, FPGAconfig or Emu-/FireTOS are still used if you like to flash from the Bee directly. If you flash the ROM with bdmctrl software from a Linux system with a TBLCF interface, please use the converted .elf files. Do not use .elf with FLASH060.PRG or FLASHCF.PRG or when using a TBLCF with WinXP. In this cases please stay with the .s19 files. The .elf files are only for using your TBLCF from Linux.
    The rescue pack "fbrescue.zip" is available at our Downloads page

Usage of the rescue pack:

Unpack the archive to your home directory. Then create a file /etc/udev/rules.d/91-tblcf.rules (you'll need root access) with the content


This must be written in one line, no spaces in between (this is for Debian/Ubuntu based systems, you might need something different for other distributions). Make sure it's literally the same, the USB subsystem won't forgive any typos here. Save the file then.

Next, check that your FireBee is power off , connect the TBLCF to the BDM header on motherboard like you see on the picture above and connect the USB cable to the remote computer.
Open the commandline shell (terminal) and check if the TBLCF is found with the command

ls /dev/tb*

The device should be listed now as


where " X " is a number. Remember the exact name/number for the following operations. If you do not see a /dev/tblcfX device, something went wrong. Check the name and content of the file we created above, replug your TBLCF and/or do a 'sudo service udev restart' until you'll see the new device.
  • Flash single components:

    Flashing of any system software part is simply done by running the respective .bdm script. These scripts are clearly named, e.g. "flash_firebee_bas.bdm".
    Note: The system software files in this rescue pack depend on each other, so don´t expect to cure a "dead" Bee by flashing only one part. Always flash all included files in one run, this way you can be sure that you don´t have mixed components in the Flash ROM which may not work together.
    The example here shows how to flash BaS but it´s the same for the other components.

    In terminal, change to the new directory (fbrescue) you just unpacked. Now power on your FireBee, then type

    ./flash_firebee_bas.bdm /dev/tblcfX

    Of course the " X " must be replaced by the number that you found with "ls" command above. Press RETURN and the flashing procedure starts.
    After flashing BaS is finished, do the same for FPGA, FireTOS and EmuTOS (with the respective ./flash_firebee_*.bdm command).

  • Special usage - Run with BaS loaded in RAM:

    If you just need to reanimate a bricked Firebee where flashing BaS (or BaS_gcc) went wrong , you might get away with the following procedure. Here the BaS is not flashed into FireBee ROM, but loaded in RAM and booted from there. Note that this will only work if you still have an undamaged EmuTOS or FireTOS in flash (because the RAM BaS_gcc just boots that).

    In terminal, change to the new directory you just unpacked. Power on your FireBee, then type

    ./bas_ram_firebee.bdm /dev/tblcfX

    Again " X " must be replaced by the number that you found with "ls" command above.
    Press RETURN, now in terminal some loading messages each followed by an "OK" should be displayed. This needs some seconds, then the FireBee should come up and you can use the normal process of flashing BaS_gcc (or any other BaS) with the FireBees own flash tool.

Finally switch off both machines and unplug the TBLCF. Now start your Bee and have fun!

Latest News
The FireBee FreeMiNT Setup 2022
This year we are back with a strong sign of life. Now that the website is up and ...
Read more
EmuTOS 1.2 and 1.2.1
On August 07th 2022 EmuTOS Development Team published new version 1.2 of free and ...
Read more
EmuTOS 1.1.1
On July 08th 2021 EmuTOS Development Team published new version 1.1 of this free ...
Read more
RSS Feed | Terms of Use | Sitemap