Skip to content

Use small rounded corners on Windows to avoid the bottom corner characters being cut off #535

Use small rounded corners on Windows to avoid the bottom corner characters being cut off

Use small rounded corners on Windows to avoid the bottom corner characters being cut off #535

Workflow file for this run

name: Build Binaries
on: [push, pull_request]
jobs:
README:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.9'
- name: Install Dependencies
run: sudo apt-get update && sudo apt-get install -y build-essential make fonts-dejavu
- uses: actions/setup-node@v4
with:
node-version: 18
- name: Install md-to-pdf (npm)
run: |
npm i md-to-pdf
- name: Create output directory
run: |
mkdir artifacts
- name: Create README
run: |
export PATH=$(pwd)/node_modules/.bin:$PATH
cat header_footer.md README.md RELEASES.md | md-to-pdf --config-file .gh/config.js --stylesheet .gh/markdown.css > "artifacts/README.pdf"
- uses: actions/upload-artifact@v4
with:
name: readme-pdf
path: artifacts/*
build-win-x86_64:
needs: [README]
runs-on: windows-2019
defaults:
run:
shell: msys2 {0}
steps:
- uses: actions/checkout@v4
- uses: msys2/setup-msys2@v2
with:
msystem: MINGW64
update: true
install: make git mingw-w64-x86_64-toolchain mingw-w64-x86_64-libelf mingw-w64-x86_64-SDL2
- uses: actions/setup-python@v5
with:
python-version: '3.9'
- name: Fetch latest ROM
if: startsWith(github.ref, 'refs/tags/r') != true
run: |
gh run download -R X16Community/x16-rom -n "ROM Image" --dir latest_rom
shell: cmd
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Fetch latest release ROM
if: startsWith(github.ref, 'refs/tags/r')
run: |
gh run download -R X16Community/x16-rom -n "Release ROM Image" --dir latest_rom
shell: cmd
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Copy ROM symbols
run: |
cp latest_rom/*.h src/.
- name: Build Emulator
run: |
git reset --hard
git diff
TRACE=1 CROSS_COMPILE_WINDOWS=1 SDL2CONFIG=sdl2-config make V=1 -j2
mkdir emu_binaries
cp $(which SDL2.dll) emu_binaries/.
cp $(which zlib1.dll) emu_binaries/.
cp $(which libwinpthread-1.dll) emu_binaries/.
cp sdcard.img.zip emu_binaries/.
cp x16emu.exe emu_binaries/.
cp makecart.exe emu_binaries/.
file emu_binaries/*
- name: Copy ROM
run: |
cp latest_rom/rom.bin emu_binaries/.
cp latest_rom/*.sym emu_binaries/.
- uses: actions/download-artifact@v4
with:
name: readme-pdf
path: emu_binaries
- name: Fetch x16-docs PDFs
run: gh run download -R X16Community/x16-docs -n x16-docs-pdf --dir emu_binaries
shell: cmd
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- uses: actions/upload-artifact@v4
with:
name: x16emu_win64
path: emu_binaries/*
build-win-i686:
needs: [README]
runs-on: windows-2019
defaults:
run:
shell: msys2 {0}
steps:
- uses: actions/checkout@v4
- uses: msys2/setup-msys2@v2
with:
msystem: MINGW64
update: true
install: make git mingw-w64-i686-toolchain mingw-w64-i686-libelf mingw-w64-i686-SDL2
path-type: inherit
- uses: actions/setup-python@v5
with:
python-version: '3.9'
- name: Add /mingw32/bin to path
run: echo "/mingw32/bin" >> $GITHUB_PATH
- name: Fetch latest ROM
if: startsWith(github.ref, 'refs/tags/r') != true
run: |
gh run download -R X16Community/x16-rom -n "ROM Image" --dir latest_rom
shell: cmd
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Fetch latest release ROM
if: startsWith(github.ref, 'refs/tags/r')
run: |
gh run download -R X16Community/x16-rom -n "Release ROM Image" --dir latest_rom
shell: cmd
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Copy ROM symbols
run: |
cp latest_rom/*.h src/.
- name: Build Emulator
run: |
git reset --hard
git diff
TRACE=1 WIN_SDL2=/mingw32 TARGET_CPU=x86 CROSS_COMPILE_WINDOWS=1 make V=1 -j2
mkdir emu_binaries
cp $(which SDL2.dll) emu_binaries/.
cp $(which zlib1.dll) emu_binaries/.
cp $(which libwinpthread-1.dll) emu_binaries/.
cp sdcard.img.zip emu_binaries/.
cp x16emu.exe emu_binaries/.
cp makecart.exe emu_binaries/.
file emu_binaries/*
- name: Copy ROM
run: |
cp latest_rom/rom.bin emu_binaries/.
cp latest_rom/*.sym emu_binaries/.
- uses: actions/download-artifact@v4
with:
name: readme-pdf
path: emu_binaries
- name: Fetch x16-docs PDFs
run: gh run download -R X16Community/x16-docs -n x16-docs-pdf --dir emu_binaries
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- uses: actions/upload-artifact@v4
with:
name: x16emu_win32
path: emu_binaries/*
build-linux-x86_64:
needs: [README]
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.9'
- name: Install Dependencies
run: sudo apt-get update && sudo apt-get install -y build-essential make libsdl2-dev
- name: Fetch latest ROM
if: startsWith(github.ref, 'refs/tags/r') != true
run: |
gh run download -R X16Community/x16-rom -n "ROM Image" --dir latest_rom
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Fetch latest release ROM
if: startsWith(github.ref, 'refs/tags/r')
run: |
gh run download -R X16Community/x16-rom -n "Release ROM Image" --dir latest_rom
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Copy ROM symbols
run: |
cp latest_rom/*.h src/.
- name: Build Emulator
run: |
TRACE=1 make V=1 -j3
mkdir emu_binaries
cp sdcard.img.zip emu_binaries/.
cp x16emu emu_binaries/.
cp makecart emu_binaries/.
file emu_binaries/*
- name: Copy ROM
run: |
cp latest_rom/rom.bin emu_binaries/.
cp latest_rom/*.sym emu_binaries/.
- uses: actions/download-artifact@v4
with:
name: readme-pdf
path: emu_binaries
- name: Fetch x16-docs PDFs
run: gh run download -R X16Community/x16-docs -n x16-docs-pdf --dir emu_binaries
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- uses: actions/upload-artifact@v4
with:
name: x16emu_linux-x86_64
path: emu_binaries/*
build-linux-aarch64:
needs: [README]
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.9'
- name: Install Dependencies
run: |
sudo apt-get update
sudo apt-get install -y build-essential make qemu-user-static
- name: Fetch latest ROM
if: startsWith(github.ref, 'refs/tags/r') != true
run: |
gh run download -R X16Community/x16-rom -n "ROM Image" --dir latest_rom
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Fetch latest release ROM
if: startsWith(github.ref, 'refs/tags/r')
run: |
gh run download -R X16Community/x16-rom -n "Release ROM Image" --dir latest_rom
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Copy ROM symbols
run: |
cp latest_rom/*.h src/.
- name: Build Emulator
uses: pguyot/arm-runner-action@v2
with:
base_image: raspios_lite_arm64:2022-04-04
image_additional_mb: 8192
cpu: cortex-a53
copy_artifact_path: emu_binaries
commands: |
apt-get update
apt-get install -y build-essential make libsdl2-dev file git
TRACE=1 make V=1 -j3
mkdir emu_binaries
cp sdcard.img.zip emu_binaries/.
cp x16emu emu_binaries/.
cp makecart emu_binaries/.
file emu_binaries/*
- name: Copy ROM
run: |
sudo chown -R runner emu_binaries
cp latest_rom/rom.bin emu_binaries/.
cp latest_rom/*.sym emu_binaries/.
- uses: actions/download-artifact@v4
with:
name: readme-pdf
path: emu_binaries
- name: Fetch x16-docs PDFs
run: gh run download -R X16Community/x16-docs -n x16-docs-pdf --dir emu_binaries
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- uses: actions/upload-artifact@v4
with:
name: x16emu_linux-aarch64
path: emu_binaries/*
build-linux-armhf:
needs: [README]
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.9'
- name: Install Dependencies
run: |
sudo apt-get update
sudo apt-get install -y build-essential make qemu-user-static
- name: Fetch latest ROM
if: startsWith(github.ref, 'refs/tags/r') != true
run: |
gh run download -R X16Community/x16-rom -n "ROM Image" --dir latest_rom
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Fetch latest release ROM
if: startsWith(github.ref, 'refs/tags/r')
run: |
gh run download -R X16Community/x16-rom -n "Release ROM Image" --dir latest_rom
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Copy ROM symbols
run: |
cp latest_rom/*.h src/.
- name: Build Emulator
uses: pguyot/arm-runner-action@v2
with:
base_image: raspios_lite:2022-04-04
image_additional_mb: 8192
cpu: cortex-a7
copy_artifact_path: emu_binaries
commands: |
apt-get update
apt-get install -y build-essential make libsdl2-dev file git
TRACE=1 make V=1 -j3
mkdir emu_binaries
cp sdcard.img.zip emu_binaries/.
cp x16emu emu_binaries/.
cp makecart emu_binaries/.
file emu_binaries/*
- name: Copy ROM
run: |
sudo chown -R runner emu_binaries
cp latest_rom/rom.bin emu_binaries/.
cp latest_rom/*.sym emu_binaries/.
- uses: actions/download-artifact@v4
with:
name: readme-pdf
path: emu_binaries
- name: Fetch x16-docs PDFs
run: gh run download -R X16Community/x16-docs -n x16-docs-pdf --dir emu_binaries
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- uses: actions/upload-artifact@v4
with:
name: x16emu_linux-armhf
path: emu_binaries/*
build-macos-x86_64:
needs: [README]
# this is currently macos-11, Big Sur
runs-on: macos-11
steps:
- uses: actions/checkout@v4
- name: Install Dependencies
run: |
brew install make git sdl2
- uses: actions/setup-python@v5
with:
python-version: '3.9'
- name: Fetch latest ROM
if: startsWith(github.ref, 'refs/tags/r') != true
run: |
gh run download -R X16Community/x16-rom -n "ROM Image" --dir latest_rom
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Fetch latest release ROM
if: startsWith(github.ref, 'refs/tags/r')
run: |
gh run download -R X16Community/x16-rom -n "Release ROM Image" --dir latest_rom
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Copy ROM symbols
run: |
cp latest_rom/*.h src/.
- name: Build Emulator
run: |
TRACE=1 MAC_STATIC=1 LIBSDL_FILE=/usr/local/Cellar/sdl2/*/lib/libSDL2.a make V=1 -j3
mkdir emu_binaries
cp sdcard.img.zip emu_binaries/.
cp x16emu emu_binaries/.
cp makecart emu_binaries/.
file emu_binaries/*
- name: Copy ROM
run: |
cp latest_rom/rom.bin emu_binaries/.
cp latest_rom/*.sym emu_binaries/.
- uses: actions/download-artifact@v4
with:
name: readme-pdf
path: emu_binaries
- name: Fetch x16-docs PDFs
run: gh run download -R X16Community/x16-docs -n x16-docs-pdf --dir emu_binaries
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- uses: actions/upload-artifact@v4
with:
name: x16emu_macos_intel
path: emu_binaries/*
build-macos-arm64:
needs: [README]
runs-on: macos-14
steps:
- uses: actions/checkout@v4
- name: Install Dependencies
run: |
brew install make git sdl2
- uses: actions/setup-python@v5
with:
python-version: '3.10'
- name: Fetch latest ROM
if: startsWith(github.ref, 'refs/tags/r') != true
run: |
gh run download -R X16Community/x16-rom -n "ROM Image" --dir latest_rom
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Fetch latest release ROM
if: startsWith(github.ref, 'refs/tags/r')
run: |
gh run download -R X16Community/x16-rom -n "Release ROM Image" --dir latest_rom
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Copy ROM symbols
run: |
cp latest_rom/*.h src/.
- name: Build Emulator
run: |
TRACE=1 MAC_STATIC=1 LIBSDL_FILE=/opt/homebrew/Cellar/sdl2/*/lib/libSDL2.a make V=1 -j3
mkdir emu_binaries
cp sdcard.img.zip emu_binaries/.
cp x16emu emu_binaries/.
cp makecart emu_binaries/.
file emu_binaries/*
- name: Copy ROM
run: |
cp latest_rom/rom.bin emu_binaries/.
cp latest_rom/*.sym emu_binaries/.
- uses: actions/download-artifact@v4
with:
name: readme-pdf
path: emu_binaries
- name: Fetch x16-docs PDFs
run: gh run download -R X16Community/x16-docs -n x16-docs-pdf --dir emu_binaries
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- uses: actions/upload-artifact@v4
with:
name: x16emu_macos_m1
path: emu_binaries/*
build-wasm:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Dependencies
run: sudo apt-get update && sudo apt-get install -y build-essential make libsdl2-dev
- uses: mymindstorm/setup-emsdk@v14
- uses: actions/setup-python@v5
with:
python-version: '3.9'
- name: Fetch latest ROM
if: startsWith(github.ref, 'refs/tags/r') != true
run: |
gh run download -R X16Community/x16-rom -n "ROM Image" --dir latest_rom
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Fetch latest release ROM
if: startsWith(github.ref, 'refs/tags/r')
run: |
gh run download -R X16Community/x16-rom -n "Release ROM Image" --dir latest_rom
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Copy ROM symbols
run: |
cp latest_rom/*.h src/.
- name: Copy ROM
run: |
cp latest_rom/rom.bin .
- name: Build Emulator
run: |
make V=1 -j3 wasm
mkdir emu_binaries
cp x16emu.data x16emu.html x16emu.js x16emu.wasm emu_binaries/
mkdir emu_binaries/webassembly
cp webassembly/styles.css webassembly/main.js webassembly/jszip.min.js emu_binaries/webassembly/
file emu_binaries/*
- uses: actions/upload-artifact@v4
with:
name: x16emu_wasm
path: emu_binaries/*