Run FujiNet with Altirra for Atari - FujiNetWIFI/fujinet-firmware GitHub Wiki

Emulate Atari on Altirra + FujiNet-PC (up to 2 instances)

It is possible to run multiple instances of Fujinet-PC / Altirra to simulate two Ataris on a single computer for emulation.

Follow the guide below to setup 1 or 2 Altirra+FujiNet-PC environment on your Mac, Windows, or Linux machine.

Emulator Data Flow

Altirra (netsio.atdevice) -> FujiNet (NetSIO) Bridge -> FujiNet-PC

Altirra uses a custom device file to talk to the Python NetSIO bridge, which in turns talks to FujiNet-PC.

Out goal - have two instances

  • Altirra -> FujiNet Bridge (port 9996) -> FujiNet-PC (port 9997)
  • Altirra -> FujiNet Bridge (port 9986) -> FujiNet-PC (port 9987)

LET'S DO THIS

Install Dependencies

  1. FujiNet NetSIO bridge requires Python.
  1. Altirra is Windows only, so to run on Mac/Linux, use Wine64.

Download Altirra + FujiNet Applications

  1. Altirra - https://www.virtualdub.org/altirra.html

  2. Fujinet NetSIO Emulator Bridge - https://github.com/a8jan/fujinet-pc-launcher/releases

  • Download/unzip the latest fujinet-pc-scripts-* file
  1. FujiNet-PC Binaries - https://github.com/FujiNetWIFI/fujinet-firmware/releases/
  • Download the latest FujiNet-PC nightly build, unzip to fujinet-pc directory from step 2 above

Setup

We will basically create two copies of some files/directories, with the second copy modified to use different ports.

Step 1 - FujiNet-PC

Duplicate the fujinet-pc directory to fujinet-pc2 for the second instance

In fujinet-pc2/fnconfig.ini , change the port under NetSIO to 9987

[NetSIO]
enabled=1
host=localhost
port=9997

Step 2 - Altirra Device file

In emulator/Altirra, duplicate the netsio.atdevice file to netsio-2.atdevice.

Edit the second copy, changing the port from 9996 to 9986

option "network": 
{
    port: 9986
};

Step 3 - Altirra Instance 1

Start Altirra. Save a configuration as instance-1.ini Open the ini file and make the following changes (alternatively, you can do this in the Altirra screens and save the config afterward):

Disable fastboot so the fujinet config will boot

"Kernel: Fast boot enabled" = 0

Enable Altirra to run in the background

"Pause when inactive" = 0

If on a Mac, disable direct3d/9 to avoid crashes by editing the

"Display: Direct3D9" = 0
"Display: 3D" = 0

Add the FujiNet Bridge device (change to your emulator/Altirra path):

"Devices" = "[{\"tag\":\"custom\",\"params\":{\"hotreload\":false,\"path\":\"C:\\\\users\\\\eric\\\\My Documents\\\\projects\\\\fujinet-emulator-bridge\\\\emulator\\\\Altirra\\\\netsio.atdevice\"}}]"

Step 4 - Altirra Instance 2

Duplicate instance-1.ini to instance-2.ini

Open instance-2.ini and modify the device to point to netsio-2.device

"Devices" = "[{\"tag\":\"custom\",\"params\":{\"hotreload\":false,\"path\":\"C:\\\\users\\\\eric\\\\My Documents\\\\projects\\\\fujinet-emulator-bridge\\\\emulator\\\\Altirra\\\\netsio-2.atdevice\"}}]"

Boot It Up

Now, you should be able to run two instance of Altirra that connect to their own instances of FujiNet Bridge/FujiNet-PC

  1. Start FujiNet bridge for my two instances
cd ~/Documents/fujinet-pc-scripts/;python3 -m netsiohub --port 9996 --netsio-port 9997
cd ~/Documents/fujinet-pc-scripts/;python3 -m netsiohub --port 9986 --netsio-port 9987
  1. Start FujiNet PC
cd ~/Documents/fujinet-pc-scripts/fujinet-pc;./run-fujinet
cd ~/Documents/fujinet-pc-scripts/fujinet-pc2;./run-fujinet
  1. Start Altirra
cd ~/Documents/Altirra;wine64 Altirra64.exe /portablealt:instance-1.ini
cd ~/Documents/Altirra;wine64 Altirra64.exe /portablealt:instance-2.ini

You should see each boot into fujinet config. You can now use FujiNet on these two instances as separate machines.