SidecarTridge Multi-device ROM Emulator

Source code CHANGELOG Report BUG v2.1.1

This is a microfirmware application for the SidecarTridge Multi-device, designed to emulate a ROM cartridge for Atari computers, including the Atari ST, STe, Mega ST, and Mega STe.

Table of contents
  1. 🚀 Installation
  2. 🕹️ Usage
    1. ⚙️ Setup Screen Commands
    2. ⬇️ Browsing or Downloading ROM Files
    3. 🚀 Launching a ROM
    4. 🔁 System Reset Behavior
    5. 🔌 Power Cycling
    6. ❌ Delay/Ripper Mode
    7. 🔁 Headless autorun mode
  3. 🛠️ Setting Up the Development Environment
  4. 📄 License
  5. 🤝 Contributing

🚀 Installation

To install the ROM Emulator app on your SidecarTridge Multi-device:

  1. Launch the Booster App on your SidecarTridge Multi-device..
  2. Open the Booster web interface.
  3. In the Apps tab, select “ROM Emulator” from the list of available apps.
  4. Click “Download” to install the app to your SidecarTridge’s microSD card.
  5. Once installed, select the app and click “Launch” to activate it.

After launching, the app will automatically run every time your Atari computer is powered on.

🕹️ Usage

If there is no ROM binary file loaded, the app will display a setup screen. If there is already a ROM loaded, the app will attempt to run it immediately after powering on your Atari. To return to the setup screen, press SELECT on your Multi-device and reboot.

⚙️ Setup Screen Commands

CommandDescription
[B]rowseBrowse the ROM files on the microSD card.
[D]ownloadDownload a ROM file from the internet.
[S]ettingsConfigure the low level settings for the ROM emulator.
[R]RipperEnable or Disable the Delay/Ripper mode. It does not load the ROM file until the SELECT button is pressed.
 [L]aunchLaunch the selected ROM file, if available.
[E]xit to DesktopExit to desktop without loading the ROM.
[X] Return to the Booster menuExit setup and return to the Booster Loader main menu.

⬇️ Browsing or Downloading ROM Files

When you select the [B]rowse option, the app will display a list of available ROM files on the microSD card. You can navigate through the list using the keyboard and select a ROM file to load it. When you select the [D]ownload option, the app will show you the list of available ROM files from the internet. You can select a ROM file to download it to your microSD card.

🚀 Launching a ROM

When you select the [L]aunch option, the app will attempt to run the selected ROM file. If the ROM is valid and compatible, it will be loaded into memory and executed. The computer will then behave as if the ROM was loaded from a physical cartridge, even after a power cycle or reset.

To return to the setup screen, press SELECT on your Multi-device and reboot.

🔁 System Reset Behavior

The ROM Emulator app is resistant to system resets. Pressing the reset button on your Atari will load again the ROM file, if available, or return to the setup screen if no ROM is loaded.

🔌 Power Cycling

The ROM Emulator app is designed to be persistent across power cycles. When you power off and on your Atari, the app will automatically load the last selected ROM file, if available, or return to the setup screen if no ROM is loaded.

❌ Delay/Ripper Mode

The ROM Emulator app includes a Delay/Ripper mode that allows you to load the ROM file only when you press the SELECT button on your Multi-device. This is useful for debugging or testing purposes, as it prevents the ROM from being loaded automatically when the app starts. To enable or disable the Delay/Ripper mode, select the [R]Ripper option in the setup screen. When enabled, the app will not load the ROM file until you press the SELECT button.

The Ripper mode was useful combined with tools like Ultimate Ripper. To use it, follow these steps:

  1. Download the Ultimate Ripper ROM file from the internet repository (option D).
  2. Enable the Ripper mode in the setup screen (option R).
  3. Launch the Ultimate Ripper ROM file (option L).
  4. Now reset or power cycle your Atari computer and load your own application or game.
  5. When you want to rip the ROM, press the SELECT button on your Multi-device. The game or application should continue running.
  6. Reset (not power cycle) your Atari computer. The screen will look like it is frozen. Now, you have can press F1 (move memory to allocate the ripper program) or F2 (use memory available to allocate the ripper program) to enter the Ultimate Ripper menu.

🔁 Headless autorun mode

The ROM Emulator app supports a headless autorun mode that automatically loads a specific ROM at startup, skipping the setup screen and requiring no user interaction.

To enable this mode, create a text file named .autorun inside the roms/ directory (default path) on the microSD card. The file must contain only the filename of the ROM to be loaded, which must also be located in the same directory.

This mode is especially useful for troubleshooting systems with a faulty keyboard or display, or for simplifying workflows that rely on a frequently used ROM.

For example, to automatically load a ROM named diagnostic.img, follow these steps:

  1. Create a text file called .autorun in the roms/ directory of the microSD card. Create the roms/ directory if it does not already exist.
  2. Open the .autorun file with a text editor and add the following line:

    diagnostic.img
    
  3. Save the file and safely eject the microSD card from your computer.
  4. Insert the microSD card into your SidecarTridge Multi-device and power it using a micro-USB cable. If the device has not been configured before, follow the instructions in Auto setup and headless factory configuration first.
  5. Access the Booster web interface and launch the ROM Emulator app.
  6. After a few seconds, the app will automatically load the diagnostic.img ROM. The Multi-device green LED will blink slowly to indicate the ROM is ready.
  7. Remove the micro-USB cable. Insert the Multi-device into your Atari computer and power it on. The ROM will be loaded automatically without showing the setup screen. Now every time you power cycle or reset your Atari, the specified ROM will be loaded automatically.
  8. To disable the headless autorun mode, simply delete or rename the .autorun file from the roms/ directory on the microSD card. Then use the SELECT button behavior described below to exit headless mode.

In this mode, the SELECT button retains its normal function but may behave differently:

  • Pressing SELECT causes the ROM Emulator to re-read the .autorun file and reload the specified ROM, if available. The green LED will blink slowly to indicate the ROM is ready.
  • Holding SELECT for more than 10 seconds does not return to the Factory Reset screen. Instead, it disables headless autorun mode and returns the system to the Booster menu. The .autorun file remains on the microSD card but is ignored until the ROM Emulator is launched again.

A list of available ROM files can be found in the ROMs repository. In a standard ROM emulation setup, ROMs can be downloaded directly using the [D]ownload option in the setup screen. When using headless autorun mode, ROM files must typically be copied manually to the microSD card from your computer.

🛠️ Setting Up the Development Environment

This project is based on an early version of the SidecarTridge Multi-device Microfirmware App Template.
To set up your development environment, please follow the instructions provided in the official documentation.

📄 License

This project is licensed under the GNU General Public License v3.0.
See the LICENSE file for full terms.

🤝 Contributing

Made with ❤️ by SidecarTridge

Previous: Microfirmwares Main Next: RTC Emulator