From 72c83534b877b848dc2e6d3883903d9a0dffbe28 Mon Sep 17 00:00:00 2001 From: Jason Morley Date: Fri, 19 Dec 2025 08:35:07 -1000 Subject: [PATCH 1/5] Build MAME-friendly ROM directory --- scripts/build.sh | 66 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100755 scripts/build.sh diff --git a/scripts/build.sh b/scripts/build.sh new file mode 100755 index 0000000..dd340cf --- /dev/null +++ b/scripts/build.sh @@ -0,0 +1,66 @@ +#!/bin/bash + +# This build script generates a zip file structured for use with MAME. + +ROOT_DIRECTORY="$( cd "$( dirname "$( dirname "${BASH_SOURCE[0]}" )" )" &> /dev/null && pwd )" +BUILD_DIRECTORY="$ROOT_DIRECTORY/build" + + +# Clean up and recreate the build directory. +if [ -d "$BUILD_DIRECTORY" ]; then + rm -r "$BUILD_DIRECTORY" +fi +mkdir -p "$BUILD_DIRECTORY" + +cd "$BUILD_DIRECTORY" + +mkdir psionlz64 +cp "$ROOT_DIRECTORY/OrganiserII/43-lz64.rom" psionlz64 +cp "$ROOT_DIRECTORY/OrganiserII/hd44780_a00.bin" psionlz64 +cp "$ROOT_DIRECTORY/OrganiserII/psion_lz_charset.bin" psionlz64 + +mkdir psion3 +cp "$ROOT_DIRECTORY/Series3/s3_v1.91f_multi.bin" psion3 +cp "$ROOT_DIRECTORY/Series3/s3_v1.80f_multi.bin" psion3 + +mkdir psion3s +cp "$ROOT_DIRECTORY/Series3/s3_v1.91f_eng/s3_v1.91f_eng.bin" psion3s + +mkdir psion3a +cp "$ROOT_DIRECTORY/Series3a/s3a_v3.22f_eng.bin" psion3a +cp "$ROOT_DIRECTORY/Series3a/s3a_v3.41f_deu.bin" psion3a +cp "$ROOT_DIRECTORY/Series3a/s3a_v3.43f_rus.bin" psion3a +cp "$ROOT_DIRECTORY/Series3a/s3a_v3.40f_usa.bin" psion3a +cp "$ROOT_DIRECTORY/Series3a/s3a_v3.40f_ita.bin" psion3a +cp "$ROOT_DIRECTORY/Series3a/s3a_v3.40f_eng.bin" psion3a + +mkdir psion3c +cp "$ROOT_DIRECTORY/Series3c/oak_v5.20f_eng.bin" psion3c + +mkdir psion3mx +cp "$ROOT_DIRECTORY/Series3mx/maple_v6.16f_uk.bin" psion3mx + +mkdir psion3mx_nl +cp "$ROOT_DIRECTORY/Series3mx/maple_v6.17f_nl.bin" psion3mx_nl + +mkdir psion3mx_fr +cp "$ROOT_DIRECTORY/Series3mx/maple_v6.20f_fre.bin" psion3mx_fr + +mkdir siena +cp "$ROOT_DIRECTORY/Siena/vine_v4.20f_eng.bin" siena +cp "$ROOT_DIRECTORY/Siena/vine_v4.21f_fre.bin" siena/vine_v4.21f_frn.bin + +mkdir psionwa +cp "$ROOT_DIRECTORY/Workabout/w1_v2.40f.bin" psionwa +cp "$ROOT_DIRECTORY/Workabout/w1_v1.00f.bin" psionwa +cp "$ROOT_DIRECTORY/Workabout/w1_v0.24b.bin" psionwa + +mkdir psionwamx +cp "$ROOT_DIRECTORY/WorkaboutMX/w2mx_v7.20f.bin" psionwamx + +mkdir pocketbk +cp "$ROOT_DIRECTORY/Series3/pb_v1.91f_acn/acspell.bin" pocketbk +cp "$ROOT_DIRECTORY/Series3/pb_v1.91f_acn/pb_v1.91f_acn.bin" pocketbk + +mkdir pocketbk2 +cp "$ROOT_DIRECTORY/Series3a/pb2_v1.30f_acn.bin" pocketbk2 From 10ef265d8765433cd99fb4657fb8e4f469f424ce Mon Sep 17 00:00:00 2001 From: Jason Morley Date: Mon, 19 Jan 2026 17:25:04 -1000 Subject: [PATCH 2/5] Generate a zip file and build using CI --- .github/workflows/build.yaml | 28 ++++++++++++++++++++++++++++ scripts/build.sh | 10 ++++++---- 2 files changed, 34 insertions(+), 4 deletions(-) create mode 100644 .github/workflows/build.yaml diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml new file mode 100644 index 0000000..b5c5b4e --- /dev/null +++ b/.github/workflows/build.yaml @@ -0,0 +1,28 @@ +name: build + +on: + pull_request: + branches: [ main ] + push: + branches: [ main ] + workflow_dispatch: + +jobs: + + macos-build: + + runs-on: ubuntu-latest + + steps: + + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Package the ROMs + run: scripts/build.sh + + - name: Archive the binary + uses: actions/upload-artifact@v4 + with: + path: build/mame-roms.zip + if-no-files-found: error diff --git a/scripts/build.sh b/scripts/build.sh index dd340cf..d19b917 100755 --- a/scripts/build.sh +++ b/scripts/build.sh @@ -14,10 +14,10 @@ mkdir -p "$BUILD_DIRECTORY" cd "$BUILD_DIRECTORY" -mkdir psionlz64 -cp "$ROOT_DIRECTORY/OrganiserII/43-lz64.rom" psionlz64 -cp "$ROOT_DIRECTORY/OrganiserII/hd44780_a00.bin" psionlz64 -cp "$ROOT_DIRECTORY/OrganiserII/psion_lz_charset.bin" psionlz64 +# mkdir psionlz64 +# cp "$ROOT_DIRECTORY/OrganiserII/43-lz64.rom" psionlz64 +# cp "$ROOT_DIRECTORY/OrganiserII/hd44780_a00.bin" psionlz64 +# cp "$ROOT_DIRECTORY/OrganiserII/psion_lz_charset.bin" psionlz64 mkdir psion3 cp "$ROOT_DIRECTORY/Series3/s3_v1.91f_multi.bin" psion3 @@ -64,3 +64,5 @@ cp "$ROOT_DIRECTORY/Series3/pb_v1.91f_acn/pb_v1.91f_acn.bin" pocketbk mkdir pocketbk2 cp "$ROOT_DIRECTORY/Series3a/pb2_v1.30f_acn.bin" pocketbk2 + +zip -r "mame-roms.zip" * From 64d88c799690308e7ec246bcc929951ffc2f5b81 Mon Sep 17 00:00:00 2001 From: Jason Morley Date: Mon, 19 Jan 2026 17:25:13 -1000 Subject: [PATCH 3/5] Ignore build directory --- .gitignore | 1 + 1 file changed, 1 insertion(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..796b96d --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/build From c05bd1242a652a9d708632e0df841286d9d269c9 Mon Sep 17 00:00:00 2001 From: Jason Morley Date: Mon, 19 Jan 2026 17:30:18 -1000 Subject: [PATCH 4/5] Clean up the build job --- .github/workflows/build.yaml | 2 +- scripts/build.sh | 5 ----- 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index b5c5b4e..3761f8e 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -9,7 +9,7 @@ on: jobs: - macos-build: + archive-build: runs-on: ubuntu-latest diff --git a/scripts/build.sh b/scripts/build.sh index d19b917..249f99f 100755 --- a/scripts/build.sh +++ b/scripts/build.sh @@ -14,11 +14,6 @@ mkdir -p "$BUILD_DIRECTORY" cd "$BUILD_DIRECTORY" -# mkdir psionlz64 -# cp "$ROOT_DIRECTORY/OrganiserII/43-lz64.rom" psionlz64 -# cp "$ROOT_DIRECTORY/OrganiserII/hd44780_a00.bin" psionlz64 -# cp "$ROOT_DIRECTORY/OrganiserII/psion_lz_charset.bin" psionlz64 - mkdir psion3 cp "$ROOT_DIRECTORY/Series3/s3_v1.91f_multi.bin" psion3 cp "$ROOT_DIRECTORY/Series3/s3_v1.80f_multi.bin" psion3 From 078ecacd2f41a1796630673d0248d9e212866a29 Mon Sep 17 00:00:00 2001 From: Jason Morley Date: Tue, 20 Jan 2026 06:41:16 -1000 Subject: [PATCH 5/5] Put all 3mx roms in the same folder --- scripts/build.sh | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/scripts/build.sh b/scripts/build.sh index 249f99f..af44378 100755 --- a/scripts/build.sh +++ b/scripts/build.sh @@ -34,12 +34,8 @@ cp "$ROOT_DIRECTORY/Series3c/oak_v5.20f_eng.bin" psion3c mkdir psion3mx cp "$ROOT_DIRECTORY/Series3mx/maple_v6.16f_uk.bin" psion3mx - -mkdir psion3mx_nl -cp "$ROOT_DIRECTORY/Series3mx/maple_v6.17f_nl.bin" psion3mx_nl - -mkdir psion3mx_fr -cp "$ROOT_DIRECTORY/Series3mx/maple_v6.20f_fre.bin" psion3mx_fr +cp "$ROOT_DIRECTORY/Series3mx/maple_v6.17f_nl.bin" psion3mx +cp "$ROOT_DIRECTORY/Series3mx/maple_v6.20f_fre.bin" psion3mx mkdir siena cp "$ROOT_DIRECTORY/Siena/vine_v4.20f_eng.bin" siena