Skip to content
This repository has been archived by the owner on Apr 23, 2024. It is now read-only.
/ fujinet-pc Public archive
forked from a8jan/fujinet-pc

FujiNet firmware port to Linux, MacOS and Windows

License

Notifications You must be signed in to change notification settings

FujiNetWIFI/fujinet-pc

 
 

Repository files navigation

THIS REPOSITORY IS NO LONGER USED, AS ITS CODE HAS BEEN FOLDED INTO the fujinet-firmware REPOSITORY.

FujiNet-PC

FujiNet-PC is port of FujiNet firmware for Linux, macOS and Windows.

FujiNet is a multi-peripheral emulator and WiFi network device for vintage computers - https://fujinet.online.

FujiNet project on GitHub https://github.com/FujiNetWIFI


Merge Sign

We merged!

FujiNet-PC code is now part of FujiNet firmware repository.


Port Status

Targets

FujiNet-PC is available for these target platforms:

  • Atari 8-bit
  • Apple II

More targets covered by the parent FujiNet project will be added in a future.

Working

All targets

  • FujiNet network device with support for various network protocols:
    • TCP, UDP, TNFS, HTTP(s), SMB, FTP, Telnet, SSH
  • Data parsers:
    • JSON and XML
  • Hash and encode/decode functions:
    • SHA-1, SHA-256, SHA-512, Base64
  • TNFS, SMB and NFS file system to access image files over network
  • Web interface to control program's settings, browse and mount disk images

Atari 8-bit

  • Disk drive (D:) emulation with support for ATR disk images and XEX files (no ATX yet)
  • Modem emulation (R:)
  • Printer emulation (P:)
  • APETIME
  • PCLink
  • CP/M emulation
  • Can connect to Atari via SIO2PC/USB cable
  • Can connect to Altirra Atari emulator with help of emulator bridge
    It is possible to run Altirra on Linux via Wine or on Mac via Crossover.

Apple II

  • Disk drive emulation with support for PO, DSK, WOZ and HDV disk images
  • More to be added ...
  • Can connect to updated AppleWin (Windows, Linux) Apple II emulator
    It is possible to run AppleWin on Mac via Crossover.

Not (yet) working

  • SAM voice synthesizer
  • MIDIMaze support
  • Cassette player/recorder
  • ATX disk images

Download

FujiNet-PC pre-compiled binaries for few systems are available in Releases section.

Do you want to try Altirra or AppleWin together with FujiNet-PC? There is a FujiNet virtual appliance!
It can be downloaded here (from MEGA) and detailed documentation is available here.

If interested into running FujiNet-PC with Altirra take a look at FujiNet-PC Launcher, bundle with GUI or lightweight scripts package can be an option for you.

To run FujiNet-PC with AppleWin emulator please follow ... To Be Added

Building

The build process is controlled with CMake. Build works with GNU Make or Ninja build systems, with GCC or Clang/LLVM C and C++ compilers.

Build environment

Prepare the build environment, there are instructions for macOS here and for Windows here.

To install necessary build tools on Debian, Ubuntu and derivatives:

sudo apt install cmake g++

Dependencies

Install necessary libraries.

Debian/Ubuntu

sudo apt install libexpat-dev libmbedtls-dev

macOS

brew install mbedtls

Windows MSYS2 CLANG64

pacman -S mingw-w64-clang-x86_64-mbedtls

Python packages (all platforms)

Install Python packages for scripts used for build.

python -m pip install -U Jinja2 pyyaml

Build

To build on Windows use MSYS2/CLANG64 environment. Start CLANG64 shell (clang64.exe). On Linux and macOS use your favorite shell.

# get the source code
git clone https://github.com/FujiNetWIFI/fujinet-firmware.git

# enter source code directory
cd fujinet-firmware

# run the build script
build.sh -p ATARI # or -p APPLE

The result of successful build is in build/dist directory.

SD Card

FujiNet-PC uses SD folder, not real SD Card. Visit FujiNet SD Card repository to get some useful utilities which can be placed into SD folder.

Run it

Directory build/dist contains files needed to run FujiNet-PC. You can run FujiNet-PC directly inside dist or copy/move/rename the dist directory to the place of your preference and run it from there.

# enter dist directory (or copied/moved/renamed directory, if you copied/moved/...), must be inside
cd build/dist

# optionally, put some additional disk image(s) to SD sub-directory
cp /your/dir/some/image.atr SD

# start fujinet with "runner" helper script
./run-fujinet  # or run-fujinet.bat or run-fujinet.ps1 on Windows

It can be stopped with Ctrl+C

Configure

Visit http://localhost:8000 (see below how to use different port for WebUI).

If connecting with real Atari configure Serial Port to match your SIO2PC/USB cable and disable SIO over Network in Emulator section. Connect SIO2PC/USB and boot the Atari from FujiNet.

For emulator options check instructions here. Alternatively, FujiNet-PC Launcher can be used.

By default FujiNet Web Interface is available on port 8000 listening on all available IP addresses. This can be changed with -u <URL> parameter. For example:

# to limit the web interface only for machine which is running fujinet 
# and to listen on non-default port 8001
./run-fujinet -u http://localhost:8001

# "http://" part can be omitted
# this will make web interface available on any address assigned to PC/Mac/RPi
# port for web interface will be 8080
./run-fujinet -u 0.0.0.0:8080

Additional information

Visit FujiNet WiKi for load of useful information.

Join the group on Discord.

Enjoy!

About

FujiNet firmware port to Linux, MacOS and Windows

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 62.9%
  • C++ 27.8%
  • HTML 3.8%
  • CMake 1.8%
  • Python 0.8%
  • Ruby 0.8%
  • Other 2.1%