From 4adec34f5bb5108c9878393368023ca2471ed578 Mon Sep 17 00:00:00 2001 From: Gyorgy Szombathelyi Date: Sun, 9 Feb 2020 12:39:15 +0100 Subject: [PATCH] Robotron HW: updates - use ARC and MRA files - control tweak (secondary joystick can be used with primary triggers) - silence audio a bit - embed CMOS into the ROM --- .../Robotron Hardware/README.md | 16 +- .../Robotron Hardware/buildall.sh | 16 -- .../Robotron Hardware/meta/Alien Arena.arc | 3 + .../Robotron Hardware/meta/Bubbles.arc | 3 + .../Robotron Hardware/meta/Joust.arc | 3 + .../Robotron Hardware/meta/Robotron 2084.arc | 3 + .../Robotron Hardware/meta/Sinistar.arc | 3 + .../Robotron Hardware/meta/Splat.arc | 3 + .../Robotron Hardware/meta/Stargate.arc | 3 + .../Robotron Hardware/meta/alienar.mra | 87 +++++++++ .../Robotron Hardware/meta/bubbles.mra | 86 +++++++++ .../Robotron Hardware/meta/joust.mra | 87 +++++++++ .../Robotron Hardware/meta/robotron.mra | 87 +++++++++ .../Robotron Hardware/meta/sinistar.mra | 86 +++++++++ .../Robotron Hardware/meta/splat.mra | 87 +++++++++ .../Robotron Hardware/meta/stargate.mra | 87 +++++++++ .../rtl/RobotronFPGA_MiST.sv | 169 +++++++++++------- 17 files changed, 750 insertions(+), 79 deletions(-) delete mode 100644 Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/buildall.sh create mode 100644 Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Alien Arena.arc create mode 100644 Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Bubbles.arc create mode 100644 Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Joust.arc create mode 100644 Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Robotron 2084.arc create mode 100644 Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Sinistar.arc create mode 100644 Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Splat.arc create mode 100644 Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Stargate.arc create mode 100644 Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/alienar.mra create mode 100644 Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/bubbles.mra create mode 100644 Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/joust.mra create mode 100644 Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/robotron.mra create mode 100644 Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/sinistar.mra create mode 100644 Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/splat.mra create mode 100644 Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/stargate.mra diff --git a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/README.md b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/README.md index f0291cc6..ea048cd4 100644 --- a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/README.md +++ b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/README.md @@ -1,13 +1,27 @@ robotron-fpga MiST port ======================= -Supported games: Robotron 2048, Joust, Sinistar, Bubbles, Splat, Stargate +Supported games: Robotron 2048, Joust, Sinistar, Bubbles, Splat, Stargate, Alien Arena After loading the RBF, a CMOS clearing will happen. Reset the core to start the game. Sinistar has some graphics issues, and the speech chip is not implemented. +Usage: +------ +- Copy the RBF and the ARC files to the same folder. +- Create ROM files from MAME ROM zip files using the mra utility and the MRA files. +- Example: mra -z /path/to/mame/roms scramble.mra +- Copy the ROM files to the root of the SD Card. + +- MRA utilty: https://github.com/sebdel/mra-tools-c + +Note: the MRA files contains a dump of the CMOS RAM. It will be included in the genearted ROM file. +Change it for permanent settings (search for the format online). It's possible to change these values +inside the core, with turning on "Auto-up" switch, and activate the "Advance" trigger in the OSD. +Refer to the arcade's user manual for further info. + robotron-fpga ============= diff --git a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/buildall.sh b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/buildall.sh deleted file mode 100644 index 2fa8e228..00000000 --- a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/buildall.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/sh - -PROJECTS=" \ -ROBOTRON \ -JOUST \ -SPLAT \ -BUBBLES \ -STARGATE \ -SINISTAR" - -mkdir -p Releases -for PROJECT in $PROJECTS; do - echo "Compiling $PROJECT" - sed -i "s/^.define CORE_NAME.*/\`define CORE_NAME \"$PROJECT\"/" rtl/RobotronFPGA_MiST.sv - quartus_sh --flow compile RobotronFPGA.qsf && cp output_files/RobotronFPGA.rbf Releases/$PROJECT.rbf -done \ No newline at end of file diff --git a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Alien Arena.arc b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Alien Arena.arc new file mode 100644 index 00000000..4dc18ef6 --- /dev/null +++ b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Alien Arena.arc @@ -0,0 +1,3 @@ +[ARC] +RBF=ROBOTRON +MOD=5 diff --git a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Bubbles.arc b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Bubbles.arc new file mode 100644 index 00000000..85af9193 --- /dev/null +++ b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Bubbles.arc @@ -0,0 +1,3 @@ +[ARC] +RBF=ROBOTRON +MOD=3 diff --git a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Joust.arc b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Joust.arc new file mode 100644 index 00000000..f0b3f9ad --- /dev/null +++ b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Joust.arc @@ -0,0 +1,3 @@ +[ARC] +RBF=ROBOTRON +MOD=1 diff --git a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Robotron 2084.arc b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Robotron 2084.arc new file mode 100644 index 00000000..98c1ad76 --- /dev/null +++ b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Robotron 2084.arc @@ -0,0 +1,3 @@ +[ARC] +RBF=ROBOTRON +MOD=0 diff --git a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Sinistar.arc b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Sinistar.arc new file mode 100644 index 00000000..f561390f --- /dev/null +++ b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Sinistar.arc @@ -0,0 +1,3 @@ +[ARC] +RBF=ROBOTRON +MOD=6 diff --git a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Splat.arc b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Splat.arc new file mode 100644 index 00000000..d674b450 --- /dev/null +++ b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Splat.arc @@ -0,0 +1,3 @@ +[ARC] +RBF=ROBOTRON +MOD=2 diff --git a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Stargate.arc b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Stargate.arc new file mode 100644 index 00000000..7712ab95 --- /dev/null +++ b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/Stargate.arc @@ -0,0 +1,3 @@ +[ARC] +RBF=ROBOTRON +MOD=4 diff --git a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/alienar.mra b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/alienar.mra new file mode 100644 index 00000000..8eebe0a3 --- /dev/null +++ b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/alienar.mra @@ -0,0 +1,87 @@ + + Alien Arena + 0209 + + + + + + + + + + + + + + + + + + 02 25 00 03 00 03 00 01 00 04 00 01 00 01 00 00 + 00 00 00 01 00 03 00 03 00 00 00 00 00 00 00 00 + 00 00 00 00 02 20 02 20 02 20 02 20 02 20 05 50 + 05 52 04 45 05 53 04 45 04 4e 05 54 04 45 04 04 + 02 20 04 42 05 59 02 20 02 20 02 20 02 20 02 20 + 02 20 02 20 02 20 05 57 04 49 04 4c 04 4c 04 49 + 04 41 04 4d 05 53 02 20 04 45 04 4c 04 45 04 43 + 05 54 05 52 04 4f 04 4e 04 49 04 43 05 53 02 20 + 04 49 04 4e 04 43 03 3d 02 2f 02 28 05 52 0e ec + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + + + diff --git a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/bubbles.mra b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/bubbles.mra new file mode 100644 index 00000000..7c39b74e --- /dev/null +++ b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/bubbles.mra @@ -0,0 +1,86 @@ + + Bubbles + 0209 + + + + + + + + + + + + + + + + + 02 25 00 03 00 01 00 03 00 01 00 04 00 01 00 01 + 00 00 00 00 00 05 00 03 00 00 00 00 00 00 00 00 + 00 00 00 00 00 0A 00 0A 00 0A 00 0A 00 0A 00 0A + 00 0A 01 1A 01 1C 00 0F 01 1D 00 0F 01 18 01 1E + 00 0F 00 0E 00 0A 00 0C 02 23 03 32 00 0A 00 0A + 00 0A 00 0A 00 0A 02 21 01 13 01 16 01 16 01 13 + 00 0B 01 17 01 1D 00 0A 00 0F 01 16 00 0F 00 0D + 01 1E 01 1C 01 19 01 18 01 13 00 0D 01 1D 00 0A + 01 13 01 18 00 0D 02 2E 02 25 02 29 05 54 05 52 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + + + diff --git a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/joust.mra b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/joust.mra new file mode 100644 index 00000000..40740b61 --- /dev/null +++ b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/joust.mra @@ -0,0 +1,87 @@ + + Joust + 0209 + + + + + + + + + + + + + + + + + + f2 00 00 f5 00 f1 00 f3 00 f1 00 f4 00 f1 00 f1 + 00 00 00 00 00 f5 00 f3 00 00 00 00 00 00 00 00 + 00 00 00 00 00 fa 00 fa 00 fa 00 fa 00 fa 00 fa + 00 fa f1 fa f1 fc 00 ff f1 fd 00 ff f1 f8 f1 fe + 00 ff 00 fe 00 fa 00 fc f2 f3 f3 f2 00 fa 00 fa + 00 fa 00 fa 00 fa f2 f1 f1 f3 f1 f6 f1 f6 f1 f3 + 00 fb f1 f7 f1 fd 00 fa 00 ff f1 f6 00 ff 00 fd + f1 fe f1 fc f1 f9 f1 f8 f1 f3 00 fd f1 fd 00 fa + f1 f3 f1 f8 00 fd f2 fe f2 f5 f2 f9 f5 f1 f5 f2 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + + + diff --git a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/robotron.mra b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/robotron.mra new file mode 100644 index 00000000..a61ae4c4 --- /dev/null +++ b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/robotron.mra @@ -0,0 +1,87 @@ + + Robotron 2084 + 0209 + + + + + + + + + + + + + + + + + + 02 25 00 03 00 03 00 01 00 04 00 01 00 01 00 00 + 00 00 00 01 00 03 00 03 00 00 00 00 00 00 00 00 + 00 00 00 00 02 20 02 20 02 20 02 20 02 20 05 50 + 05 52 04 45 05 53 04 45 04 4e 05 54 04 45 04 04 + 02 20 04 42 05 59 02 20 02 20 02 20 02 20 02 20 + 02 20 02 20 02 20 05 57 04 49 04 4c 04 4c 04 49 + 04 41 04 4d 05 53 02 20 04 45 04 4c 04 45 04 43 + 05 54 05 52 04 4f 04 4e 04 49 04 43 05 53 02 20 + 04 49 04 4e 04 43 03 3d 02 2f 02 28 05 52 0e ec + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + + + diff --git a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/sinistar.mra b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/sinistar.mra new file mode 100644 index 00000000..0cec8cd3 --- /dev/null +++ b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/sinistar.mra @@ -0,0 +1,86 @@ + + Sinistar + 0209 + + + + + + + + + + + + + + + + +03 30 03 30 00 03 00 05 00 01 00 01 00 03 00 01 +00 04 00 01 00 01 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 05 51 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + + + diff --git a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/splat.mra b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/splat.mra new file mode 100644 index 00000000..e5aa1ef5 --- /dev/null +++ b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/splat.mra @@ -0,0 +1,87 @@ + + Splat + 0209 + + + + + + + + + + + + + + + + + +03 30 00 03 02 25 00 03 00 01 00 04 00 01 00 01 +00 00 00 00 00 05 00 03 00 00 00 00 00 00 00 00 +00 00 00 01 00 0A 00 0A 00 0A 00 0A 00 0A 00 0A +00 0A 01 1A 01 1C 00 0F 01 1D 00 0F 01 18 01 1E +00 0F 00 0E 00 0A 00 0C 02 23 02 2C 00 0A 00 0A +00 0A 00 0A 00 0A 02 21 01 13 01 16 01 16 01 13 +00 0B 01 17 01 1D 00 0A 00 0F 01 16 00 0F 00 0D +01 1E 01 1C 01 19 01 18 01 13 00 0D 01 1D 00 0A +01 13 01 18 00 0D 02 2D 02 25 02 29 05 57 05 5A +02 20 02 20 02 20 02 20 02 20 02 25 02 25 05 5F +0D D8 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 03 3A 03 3A 03 3A 01 1D +01 1A 01 16 00 0B 01 1E 00 0A 02 21 01 13 01 16 +01 16 01 13 00 0B 01 17 01 1D 00 0A 00 0A 00 0A +00 0A 00 0A 00 0A 02 21 01 13 01 16 C9 00 00 01 +00 00 00 00 01 17 01 1C 01 1D 54 00 00 01 00 00 +00 00 01 14 01 1C 01 18 4C 00 00 01 00 00 00 00 +01 12 00 0F 00 0D 30 00 00 01 00 00 00 00 01 17 +00 0C 01 1D 43 00 00 01 00 00 00 00 01 1A 01 10 +02 24 53 00 00 01 00 00 00 00 01 14 01 13 01 16 +41 00 00 01 00 00 00 00 00 0D 02 21 01 15 47 00 +00 01 00 00 00 00 01 1C 01 1D 01 17 54 00 00 01 +00 00 00 00 00 0F 00 0A 02 24 40 00 00 01 00 00 +00 00 01 15 00 0F 01 18 3F 00 00 01 00 00 00 00 +02 20 01 1D 01 17 59 00 00 01 00 00 00 00 00 0D +01 1C 00 0C 37 00 00 01 00 00 00 00 01 1A 02 20 +00 0B 49 00 00 01 00 00 00 00 01 11 02 21 02 21 +59 00 00 01 00 00 00 00 01 1C 01 19 01 18 51 00 +00 01 00 00 00 00 01 14 01 19 00 0F 3F 00 00 01 +00 00 00 00 01 1E 01 13 01 17 4C 00 00 01 00 00 +00 00 01 1C 01 1D 01 17 54 00 00 01 00 00 00 00 +01 14 01 13 01 17 42 00 00 01 00 00 00 00 02 20 +01 13 00 0D 44 00 00 01 00 00 00 00 01 16 00 0F +01 19 41 00 00 01 00 00 00 00 00 0C 01 1F 02 24 +53 00 00 01 00 00 00 00 01 14 01 14 01 15 41 00 +00 01 00 00 00 00 01 1C 00 0F 01 18 46 00 00 01 +00 00 00 00 01 18 00 0A 01 10 35 00 00 01 00 00 +00 00 01 14 01 1C 01 18 4C 00 00 01 00 00 00 00 +01 12 00 0F 00 0D 30 00 00 01 00 00 00 00 01 17 +00 0C 01 1D 43 00 00 01 00 00 00 00 01 1A 01 10 +02 24 53 00 00 01 00 00 00 00 01 14 01 13 01 16 +41 00 00 01 00 00 00 00 01 1C 02 20 01 1E 5F 00 +00 01 00 00 00 00 01 15 00 0B 02 23 47 00 00 01 +00 00 00 00 01 14 01 11 01 16 3F 00 00 01 00 00 +00 00 01 1C 00 0B 01 17 41 00 00 01 00 00 00 00 +01 12 00 0F 00 0D 30 00 00 01 00 00 00 00 01 15 +02 20 00 0E 47 00 00 01 00 00 00 00 00 0F 01 14 +01 1D 43 00 00 01 00 00 00 00 02 20 00 0B 02 22 +52 00 00 01 00 00 00 00 00 0E 01 1C 01 14 41 00 +00 01 00 00 00 00 01 14 00 0B 02 23 46 00 00 01 +00 00 00 00 01 14 01 1C 01 18 00 00 00 01 00 00 +00 00 01 12 00 0F 00 0D 00 00 00 01 00 00 00 00 +01 17 00 0C 01 1D 00 00 00 01 00 00 00 00 01 1A +01 10 02 24 00 00 00 01 00 00 00 00 01 14 01 13 +01 16 00 00 00 01 00 00 00 00 00 0D 02 21 01 15 +00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 + + + diff --git a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/stargate.mra b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/stargate.mra new file mode 100644 index 00000000..3c22ce1b --- /dev/null +++ b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/meta/stargate.mra @@ -0,0 +1,87 @@ + + Stargate + 0209 + + + + + + + + + + + + + + + + + +01 10 00 03 00 07 00 03 00 01 00 04 00 01 00 01 +00 00 00 00 00 00 00 03 00 05 03 30 00 00 00 00 +00 00 01 10 00 04 01 10 02 20 00 00 00 00 00 00 +00 00 00 00 00 00 05 57 04 49 04 4C 04 4C 04 49 +04 41 04 4D 05 53 02 20 04 45 04 4C 04 45 04 43 +05 54 05 52 04 4F 04 4E 04 49 04 43 05 53 02 20 +04 49 04 4E 04 43 03 3D 02 20 02 20 02 20 02 20 +02 20 02 20 02 20 02 20 02 20 02 20 02 20 05 50 +05 52 04 45 05 53 04 45 04 4E 05 54 05 53 03 3F +02 20 02 20 02 20 02 20 02 20 02 25 02 25 05 5F +0D D8 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00 00 00 00 00 00 00 00 03 3A 03 3A 03 3A 03 3A +03 3A 03 3A 03 3A 03 3A 03 3A 03 3A 03 3A 03 3A +03 3A 03 3A 03 3A 03 3A 03 3A 03 3A 03 3A 03 3A +03 3A 03 3A 03 3A BF 00 00 00 04 40 00 00 03 3A +03 3A 03 3A FB 00 00 00 04 40 00 00 03 3A 03 3A +03 3A FB 00 00 00 04 40 00 00 03 3A 03 3A 03 3A +FB 00 00 00 04 40 00 00 03 3A 03 3A 03 3A FB 00 +00 00 04 40 00 00 03 3A 03 3A 03 3A FB 00 00 00 +04 40 00 00 03 3A 03 3A 03 3A FB 00 00 00 04 40 +00 00 03 3A 03 3A 03 3A FB 00 00 00 04 40 00 00 +03 3A 03 3A 03 3A FB 00 00 00 04 40 00 00 03 3A +03 3A 03 3A FB 00 00 00 04 40 00 00 03 3A 03 3A +03 3A FB 00 00 00 04 40 00 00 03 3A 03 3A 03 3A +FB 00 00 00 04 40 00 00 03 3A 03 3A 03 3A FB 00 +00 00 04 40 00 00 03 3A 03 3A 03 3A FB 00 00 00 +04 40 00 00 03 3A 03 3A 03 3A FB 00 00 00 04 40 +00 00 03 3A 03 3A 03 3A FB 00 00 00 04 40 00 00 +03 3A 03 3A 03 3A FB 00 00 00 04 40 00 00 03 3A +03 3A 03 3A FB 00 00 00 04 40 00 00 03 3A 03 3A +03 3A FB 00 00 00 04 40 00 00 03 3A 03 3A 03 3A +FB 00 00 00 04 40 00 00 03 3A 03 3A 03 3A FB 00 +00 00 04 40 00 00 03 3A 03 3A 03 3A FB 00 00 00 +04 40 00 00 03 3A 03 3A 03 3A FB 00 00 00 04 40 +00 00 03 3A 03 3A 03 3A FB 00 00 00 04 40 00 00 +03 3A 03 3A 03 3A FB 00 00 00 04 40 00 00 03 3A +03 3A 03 3A FB 00 00 00 04 40 00 00 03 3A 03 3A +03 3A FB 00 00 00 04 40 00 00 03 3A 03 3A 03 3A +FB 00 00 00 04 40 00 00 03 3A 03 3A 03 3A FB 00 +00 00 04 40 00 00 03 3A 03 3A 03 3A FB 00 00 00 +04 40 00 00 03 3A 03 3A 03 3A FB 00 00 00 04 40 +00 00 03 3A 03 3A 03 3A FB 00 00 00 04 40 00 00 +03 3A 03 3A 03 3A FB 00 00 00 04 40 00 00 03 3A +03 3A 03 3A FB 00 00 00 04 40 00 00 03 3A 03 3A +03 3A FB 00 00 00 04 40 00 00 03 3A 03 3A 03 3A +FB 00 00 00 04 40 00 00 03 3A 03 3A 03 3A FB 00 +00 00 04 40 00 00 03 3A 03 3A 03 3A FB 00 00 00 +04 40 00 00 03 3A 03 3A 03 3A FB 00 00 00 04 40 +00 00 03 3A 03 3A 03 3A FB 00 00 00 04 40 00 00 +03 3A 03 3A 03 3A FB 00 00 00 04 40 00 00 04 44 +05 52 04 4A 00 00 00 03 06 64 04 40 04 4C 04 45 +04 44 00 00 00 02 01 18 05 57 05 53 04 41 04 4D +00 00 00 01 09 95 05 55 05 53 05 53 05 52 00 00 +00 01 04 45 06 65 04 45 05 50 04 4A 00 00 00 01 +02 27 05 55 04 4A 04 45 05 52 00 00 00 01 02 27 +05 50 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + + + diff --git a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/rtl/RobotronFPGA_MiST.sv b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/rtl/RobotronFPGA_MiST.sv index 3e8e5100..fad7f994 100644 --- a/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/rtl/RobotronFPGA_MiST.sv +++ b/Arcade_MiST/Williams 6809 rev.1 Hardware/Robotron Hardware/rtl/RobotronFPGA_MiST.sv @@ -38,20 +38,14 @@ module RobotronFPGA_MiST( `include "rtl/build_id.v" -//`define CORE_NAME "ROBOTRON" -//`define CORE_NAME "JOUST" -//`define CORE_NAME "SPLAT" -//`define CORE_NAME "BUBBLES" -//`define CORE_NAME "STARGATE" -//`define CORE_NAME "SINISTAR" -`define CORE_NAME "ALIENAR" - localparam CONF_STR = { - `CORE_NAME,";ROM;", + ";ROM;", "O2,Rotate Controls,Off,On;", "O34,Scanlines,Off,25%,50%,75%;", "O5,Blend,Off,On;", "O6,Swap Joysticks,Off,On;", + "O7,Auto up,Off,On;", + "T8,Advance,Off,On;", "T0,Reset;", "V,v1.0.",`BUILD_DATE }; @@ -60,57 +54,98 @@ wire rotate = status[2]; wire [1:0] scanlines = status[4:3]; wire blend = status[5]; wire joyswap = status[6]; +wire autoup = status[7]; +wire adv = status[8]; -reg [7:0] SW; -reg [7:0] JA; -reg [7:0] JB; -reg [3:0] BTN; -reg blitter_sc2, sinistar; -reg [1:0] orientation; // [left/right, landscape/portrait] +reg [7:0] SW; +reg [7:0] JA; +reg [7:0] JB; +reg [3:0] BTN; +reg blitter_sc2, sinistar; + +wire [6:0] core_mod; +reg [8*8-1:0] core_name; +reg [1:0] orientation; // [left/right, landscape/portrait] + +// advance button +reg [23:0] adv_counter; +wire advance = (adv_counter != 0); + +always @(posedge clk_sys) begin + reg adv_d; + + adv_d <= adv; + if (~adv_d & adv) adv_counter <= 24'hfffff; + if (adv_counter != 0) adv_counter <= adv_counter - 1'd1; +end always @(*) begin orientation = 2'b10; - SW = 8'h00; + SW = {6'h0, advance, autoup}; + JA = 8'hFF; + JB = 8'hFF; + BTN = 4'hF; + core_name = "ROBOTRON"; blitter_sc2 = 0; sinistar = 0; - if (`CORE_NAME == "ROBOTRON") begin + case (core_mod) + 7'h0: + begin + core_name = "ROBOTRON"; BTN = { m_one_player, m_two_players, m_coin1 | m_coin2, reset }; - JA = ~{ m_right2, m_left2, m_down2, m_up2, m_right, m_left, m_down, m_up }; - JB = ~{ m_right2, m_left2, m_down2, m_up2, m_right, m_left, m_down, m_up }; - end else if (`CORE_NAME == "JOUST") begin + // Fire Up/Down/Left/Right maps to joystick 1/2/3/4 and keyboard R/F/D/G (MAME style) + JA = ~{ m_fireD|m_right2, m_fireC|m_left2, m_fireB|m_down2, m_fireA|m_up2, m_right, m_left, m_down, m_up }; + JB = ~{ m_fireD|m_right2, m_fireC|m_left2, m_fireB|m_down2, m_fireA|m_up2, m_right, m_left, m_down, m_up }; + end + 7'h1: + begin + core_name = "JOUST "; BTN = { m_two_players, m_one_player, m_coin1 | m_coin2, reset }; JA = ~{ 5'b00000, m_fireA, m_right, m_left }; JB = ~{ 5'b00000, m_fire2A, m_right2, m_left2 }; - end else if (`CORE_NAME == "SPLAT") begin + end + 7'h2: + begin + core_name = "SPLAT "; blitter_sc2 = 1; BTN = { m_one_player, m_two_players, m_coin1 | m_coin2, reset }; - JA = ~{ m_right2, m_left2, m_down2, m_up2, m_right, m_left, m_down, m_up }; - JB = ~{ m_right4, m_left4, m_down4, m_up4, m_right3, m_left3, m_down3, m_up3 }; - end else if (`CORE_NAME == "BUBBLES") begin + // Fire Up/Down/Left/Right maps to joystick 1/2/3/4 and keyboard R/F/D/G (MAME style) + JA = ~{ m_fireD|m_right2, m_fireC|m_left2, m_fireB|m_down2, m_fireA|m_up2, m_right, m_left, m_down, m_up }; + JB = ~{ m_fireD|m_right2, m_fireC|m_left2, m_fireB|m_down2, m_fireA|m_up2, m_right, m_left, m_down, m_up }; + end + 7'h3: + begin + core_name = "BUBBLES "; BTN = { m_two_players, m_one_player, m_coin1 | m_coin2, reset }; JA = ~{ 4'b0000, m_right, m_left, m_down, m_up }; JB = ~{ 4'b0000, m_right2, m_left2, m_down2, m_up2 }; - end else if (`CORE_NAME == "STARGATE") begin + end + 7'h4: + begin + core_name = "STARGATE"; BTN = { m_two_players, m_one_player, m_coin1 | m_coin2, reset }; JA = ~{ m_fireE, m_up, m_down, m_left | m_right, m_fireD, m_fireC, m_fireB, m_fireA }; JB = ~{ m_fire2E, m_up2, m_down2, m_left2 | m_right2, m_fire2D, m_fire2C, m_fire2B, m_fire2A }; - - - end else if (`CORE_NAME == "ALIENAR") begin - BTN = { m_two_players, m_one_player, m_coin1 | m_coin2, reset }; - JA = ~{ m_right2, m_left2, m_down2, m_up2, m_right, m_left, m_down, m_up }; - JB = ~{ m_right2, m_left2, m_down2, m_up2, m_right, m_left, m_down, m_up }; - - - - end else if (`CORE_NAME == "SINISTAR") begin + end + 7'h5: + begin + core_name = "ALIENAR "; + BTN = { m_one_player, m_two_players, m_coin1 | m_coin2, reset }; + JA = ~{ 1'b0, 1'b0, m_fireB, m_fireA, m_right, m_left, m_down, m_up }; + JB = ~{ 1'b0, 1'b0, m_fire2B, m_fire2A, m_right2, m_left2, m_down2, m_up2 }; + end + 7'h6: + begin + core_name = "SINISTAR"; sinistar = 1; orientation = 2'b01; BTN = { m_two_players, m_one_player, m_coin1 | m_coin2, reset }; JA = { sin_x, 2'b00, m_right | m_left | m_right2 | m_left2, sin_y, 2'b00, m_up | m_down | m_up2 | m_down2 }; JB = { sin_x, 2'b00, m_right | m_left | m_right2 | m_left2, sin_y, 2'b00, m_up | m_down | m_up2 | m_down2 }; end + default: ; + endcase end assign LED = ~ioctl_downl; @@ -134,6 +169,7 @@ wire [1:0] switches; wire [7:0] joystick_0; wire [7:0] joystick_1; wire scandoublerD; +wire no_csync; wire ypbpr; wire [7:0] audio; wire hs, vs; @@ -144,6 +180,29 @@ wire key_pressed; wire [7:0] key_code; wire key_strobe; +user_io #( + .STRLEN(8+($size(CONF_STR)>>3))) +user_io( + .clk_sys ( clk_sys ), + .conf_str ( {core_name, CONF_STR} ), + .SPI_CLK ( SPI_SCK ), + .SPI_SS_IO ( CONF_DATA0 ), + .SPI_MISO ( SPI_DO ), + .SPI_MOSI ( SPI_DI ), + .buttons ( buttons ), + .switches ( switches ), + .scandoubler_disable (scandoublerD ), + .ypbpr ( ypbpr ), + .no_csync ( no_csync ), + .core_mod ( core_mod ), + .key_strobe ( key_strobe ), + .key_pressed ( key_pressed ), + .key_code ( key_code ), + .joystick_0 ( joystick_0 ), + .joystick_1 ( joystick_1 ), + .status ( status ) + ); + wire ioctl_downl; wire [7:0] ioctl_index; wire ioctl_wr; @@ -154,7 +213,9 @@ wire [7:0] ioctl_dout; ROM Structure: 0000-BFFF main cpu 48k C000-CFFF snd cpu 4k +D000-D3FF CMOS RAM 1k */ + data_io data_io ( .clk_sys ( clk_mem ), .SPI_SCK ( SPI_SCK ), @@ -167,7 +228,7 @@ data_io data_io ( .ioctl_dout ( ioctl_dout ) ); -reg port1_req, port2_req; +reg port1_req; wire [23:1] mem_addr; wire [15:0] mem_do; wire [15:0] mem_di; @@ -190,7 +251,7 @@ sdram #(.MHZ(96)) sdram( // ROM upload .port1_req ( port1_req ), .port1_ack ( ), - .port1_a ( ioctl_addr[22:0] ), + .port1_a ( downl_addr ), .port1_ds ( 2'b11 ), .port1_we ( ioctl_downl ), .port1_d ( {ioctl_dout[7:4], ioctl_dout[7:4], ioctl_dout[3:0], ioctl_dout[3:0]} ), @@ -200,7 +261,7 @@ sdram #(.MHZ(96)) sdram( .cpu1_addr ( ioctl_downl ? 17'h1ffff : sdram_addr ), .cpu1_d ( mem_di ), .cpu1_q ( mem_do ), - .cpu1_oe ( ~mem_oe & ~(ramcs & romcs) ), + .cpu1_oe ( ~mem_oe & ~(ramcs & romcs) ), .cpu1_we ( ~mem_we & ~(ramcs & romcs) ), .cpu1_ds ( ~romcs ? 2'b11 : ~{ramub, ramlb} ) ); @@ -210,6 +271,11 @@ sdram #(.MHZ(96)) sdram( // DXXX-FXXX -> 9xxx-Bxxx wire [17:1] sdram_addr = ~romcs ? {1'b0, mem_addr[16], ~mem_addr[16] & mem_addr[15], mem_addr[14:1]} : { 1'b1, mem_addr[16:1] }; +// IOCTL address to SDRAM address: +// D000-D3FF -> 1CC00-1CFFF (CMOS), otherwise direct mapping + +wire [22:0] downl_addr = (ioctl_addr[22:10] == { 7'h0, 4'hD, 2'b00 }) ? { 1'b1, 4'hC, 2'b11, ioctl_addr[9:0] } : ioctl_addr; + always @(posedge clk_mem) begin reg ioctl_wr_last = 0; @@ -217,7 +283,6 @@ always @(posedge clk_mem) begin if (ioctl_downl) begin if (~ioctl_wr_last && ioctl_wr) begin port1_req <= ~port1_req; - port2_req <= ~port2_req; end end end @@ -285,42 +350,22 @@ mist_video #(.COLOR_DEPTH(3), .SD_HCNT_WIDTH(11)) mist_video( .rotate ( {orientation[1],rotate} ), .scandoubler_disable( scandoublerD ), .ce_divider ( 1'b1 ), + .no_csync ( no_csync ), .scanlines ( scanlines ), .blend ( blend ), .ypbpr ( ypbpr ) ); -user_io #( - .STRLEN(($size(CONF_STR)>>3))) -user_io( - .clk_sys ( clk_sys ), - .conf_str ( CONF_STR ), - .SPI_CLK ( SPI_SCK ), - .SPI_SS_IO ( CONF_DATA0 ), - .SPI_MISO ( SPI_DO ) , - .SPI_MOSI ( SPI_DI ), - .buttons ( buttons ), - .switches ( switches ), - .scandoubler_disable (scandoublerD ), - .ypbpr ( ypbpr ), - .key_strobe ( key_strobe ), - .key_pressed ( key_pressed ), - .key_code ( key_code ), - .joystick_0 ( joystick_0 ), - .joystick_1 ( joystick_1 ), - .status ( status ) - ); - wire dac_o; assign AUDIO_L = dac_o; assign AUDIO_R = dac_o; dac #( - .C_bits(8)) + .C_bits(11)) dac( .clk_i(clk_aud), .res_n_i(1), - .dac_i(audio), + .dac_i({3'd0, audio}), // silence by 9dB .dac_o(dac_o) );