-
Notifications
You must be signed in to change notification settings - Fork 74
Guide to Building AppleWin on Linux
Rough Guide For Building AppleWin Linux Version to use with FujiNet
git clone https://github.com/FujiNetWIFI/AppleWin.git
cd AppleWin
git fetch --all
git checkout linux
git submodule update --init --recursive
# c = clean, b = build. use -h for help
./build.sh -cb
git clone https://github.com/FujiNetWIFI/fujinet-firmware.git
cd fujinet-firmware
./build.sh -cp APPLE
cd fujinet-firmware/build/dist
./run-fujinet
# another shell
cd AppleWin/build
./sa2 --log
Note: when you have finished this you will also need to run FujiNet-PC (and build it) from the fujinet-firmware repo. There may be guides for that but it boils down to checking out the repo if you don't have it and then building with: $ ./build -sh -e APPLE
[Prereqs: note: may not be all, but build for me on a base Ubuntu 22.x Linux machine]
sudo apt install -y build-essential checkinstall zlib1g-dev libpcap-dev libssl-dev libyaml-dev libtool autoconf libslirp-dev libminizip-dev libboost-all-dev libsdl2-image-dev unzip curl wget git python3.10-venv libmbedtls-dev default-jre
sudo snap install cmake --classic
This assumes you have your own forks of each of these, if not just clone the direct repo in the FujiNet Org Area.
I am just clonging AppleWin directly as I'm going to assume not many people expect to commit to that repo. But if you do want to you know what you should do.
mkdir code
cd code
git clone https://github.com/dillera/fujinet-firmware
git clone https://github.com/dillera/fujinet-apps
git clone https://github.com/dillera/AppleWin
cd fujinet-apps
git remote upstream https://github.com/FujiNetWIFI/fujinet-apps
cd fujinet-firmware
git remote upstream https://github.com/FujiNetWIFI/fujinet-firmware
cd AppleWin
git remote upstream https://github.com/FujiNetWIFI/AppleWin
cd AppleWin
git remote add upstream https://github.com/FujiNetWIFI/AppleWin.git
git fetch --all
git checkout linux
# checkout submodules
git submodule update --init --recursive
mkdir build
cd build
# You can also use RELEASE instead of DEBUG if you're not going to be doing any gdb style debugging
cmake -DCMAKE_BUILD_TYPE=DEBUG -DBUILD_SA2=on ..
make
To run it:
# logs are hardcoded to /tmp/AppleWin.log by the app if you specify --log
# the configuration file is at ~/.applewin/applewin.conf, you can remove slots if you have issues in that file
# sa2 stands for "SDL Apple 2", i.e. sa2
# use "./sa2 -h" to see help, defaults to x11:
./sa2 --log
# OPTIONAL! you can also specify a gfx driver specifically, e.g. x11, wayland.
SDL_VIDEODRIVER=wayland ./sa2
Once running, open the configuration menu (System/Settings), open the Hardware TAB, In an empty slot (I've been using slot 5), choose "SPoverSLIP". This will load the card. If you exit AppleWin, your config is saved to the previously mentioned applwin.conf. Then when you run it again, it'll auto start with the card in.
You can preconfigure your config to load SPoverSLIP with the following section: [Configuration\Slot 5] Card type=25
change the Slot number as you desire.
Copyright 2024 Contributors to the FujiNetWIFI project.
Join us on Discord: https://discord.gg/7MfFTvD
- Home
- What is FujiNet?
- The Definition of Done
- Board bring up for FujiNet Platform.IO code
- The Complete Linux CLI Guide
- The Complete macOS CLI Guide
- Development Env for Apps
- FujiNet-Development-Guidelines
- System Quickstarts
- FujiNet Flasher
- Setting up a TNFS Server
- FujiNet Configuration File: fnconfig.ini
- AppKey Registry - SIO Command $DC Open App Key
- CP-M Support
- BBS
- Official Hardware Versions
- Prototype Board Revisions
- FujiNet Development Guidelines
- Atari Programming
- Apple Programming
- C64 Programming
- ADAM Programming
- Testing Plan
- Hacker List
- FujiNet VirtualMachine