From 89efe0cc86441e417d21e891f7f83544bd296fce Mon Sep 17 00:00:00 2001 From: icex2 Date: Mon, 10 Apr 2023 23:54:37 +0200 Subject: [PATCH 1/2] feat(dev): Add github build and release workflows --- .github/workflows/build-master.yaml | 39 ++++++++++++++++ .github/workflows/build-tag.yaml | 71 +++++++++++++++++++++++++++++ 2 files changed, 110 insertions(+) create mode 100644 .github/workflows/build-master.yaml create mode 100644 .github/workflows/build-tag.yaml diff --git a/.github/workflows/build-master.yaml b/.github/workflows/build-master.yaml new file mode 100644 index 0000000..2f4b64d --- /dev/null +++ b/.github/workflows/build-master.yaml @@ -0,0 +1,39 @@ +name: "Build bemanitools" + +on: + push: + branches: + - master + +jobs: + build: + runs-on: "ubuntu-22.04" + steps: + - name: "Checkout repository" + uses: "actions/checkout@v2" + + - name: "Install prerequisites" + run: | + sudo apt-get update + sudo apt-get install -y runc containerd docker.io + + - name: "Build" + run: | + make build-docker + + # Do some unpacking of the dist zip. Artifact upload repackages stuff + - name: "Prepare artifact package" + run: | + mkdir artifact + cd artifact + unzip ../build/bemanitools.zip + cd .. + + - name: "Upload artifact" + uses: "actions/upload-artifact@v2" + with: + name: bemanitools-${{ github.sha }} + retention-days: 90 + if-no-files-found: "error" + path: | + artifact/** diff --git a/.github/workflows/build-tag.yaml b/.github/workflows/build-tag.yaml new file mode 100644 index 0000000..d00cf7c --- /dev/null +++ b/.github/workflows/build-tag.yaml @@ -0,0 +1,71 @@ +name: "Build bemanitools" + +on: + push: + tags: + - "*.*" + +jobs: + build: + runs-on: "ubuntu-22.04" + steps: + - name: "Checkout repository" + uses: "actions/checkout@v2" + + # Building bootstrapped using docker containers + - name: "Install prerequisites" + run: | + sudo apt-get update + sudo apt-get install -y runc containerd docker.io + + - name: "Build" + run: | + make build-docker + + # Do some unpacking of the dist zip. Artifact upload repackages stuff + - name: "Prepare artifact package" + run: | + mkdir artifact + cd artifact + unzip ../build/bemanitools.zip + cd .. + + - name: "Upload artifact" + uses: "actions/upload-artifact@v2" + with: + name: bemanitools-${{ github.sha }} + retention-days: 90 + if-no-files-found: "error" + path: | + artifact/** + + publish-release: + needs: "build" + runs-on: "ubuntu-22.04" + steps: + # This already extracts the contents of the artifact + - name: "Download artifact" + uses: "actions/download-artifact@v2" + with: + name: bemanitools-${{ github.sha }} + + - name: "Get the version" + id: get_version + run: | + echo ::set-output name=VERSION::$(echo $GITHUB_REF | cut -d / -f 3) + + # The publish release action does not package the artifact *sigh* + - name: "Create release package" + run: | + zip bemanitools-${{ steps.get_version.outputs.VERSION }}.zip * + + - name: "Publish release" + uses: "marvinpinto/action-automatic-releases@v1.2.1" + with: + repo_token: "${{ secrets.GITHUB_TOKEN }}" + automatic_release_tag: "latest" + draft: false + prerelease: true + title: ${{ steps.get_version.outputs.VERSION }} + files: | + bemanitools-${{ steps.get_version.outputs.VERSION }}.zip -- 2.54.0 From aa49766af7b2aafeb0a3755eab695c93899fd325 Mon Sep 17 00:00:00 2001 From: din Date: Mon, 10 Apr 2023 16:55:48 -0500 Subject: [PATCH 2/2] unicorn tail doc update --- doc/ddrhook/unicorntail.md | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/doc/ddrhook/unicorntail.md b/doc/ddrhook/unicorntail.md index 788d78c..09cb134 100644 --- a/doc/ddrhook/unicorntail.md +++ b/doc/ddrhook/unicorntail.md @@ -17,10 +17,11 @@ A Chimera PCB however is different in many aspects to the Dragon PCB and require The Dragon's P3IO has two serial ports that the regular P3IOs do not, and one of these serial ports is used to communicate with the card readers. Note that these are actual serial ports driven directly by the P3IO microcontroller, these are NOT just passed through to the motherboard like the -proprietary COM1 and COM2 connectors. Unicorn Tail intercepts serial port IO commands being sent to -the P3IO and redirects them to COM2 instead, since COM2 is unused on SD cabinets (on HD cabinets it -connects to a second ACIO bus which drives the extra lighting glitz like the light spikes and maybe -the LED strip). +proprietary COM1 and COM2 connectors. + +Unicorn Tail intercepts serial port IO commands being sent to the P3IO and redirects them to a +COM4 in Windows instead, where two readers can be connected via the motherboard's RS232 port or +a usb RS232 adapter. ## Drivers @@ -28,6 +29,16 @@ You need the P3IO driver installed on your target system. These can be acquired HDD or grabbed from [bemanitools-supplements](https://dev.s-ul.net/djhackers/bemanitools-supplement/-/blob/master/gfdm/p3io/README.md). +## COM Port Setup + +Using Device Manager in Windows, ensure the following COM ports are connected and setup. + +COM1: EXTIO +COM4: Two readers + +Windows is often poor about saving the COM port number, so ewf commit (if applicable) and +reboot after saving this setting to ensure it sticks. + ## Setup and run Edit the `gamestart.bat` file that you are using and append `unicorntail.dll` to the list of hooks, -- 2.54.0