From 5d216840dbe845f2f3c3b1c579c7b5e6720b216a Mon Sep 17 00:00:00 2001 From: Persephone Bubblegum-Holiday Date: Sun, 1 Jun 2025 13:55:57 -0700 Subject: [PATCH] discontinue single character file format --- Bit Mappings.md | 28 +- Future Goals.md | 7 +- .../PC2Player.Gtk/PC2Player.Gtk.csproj | 0 .../PC2Player.Old}/PC2Player.Gtk/Program.cs | 0 .../PC2Player.Old/PC2Player.Mac}/Icon.icns | Bin .../PC2Player.Old}/PC2Player.Mac/Info.plist | 0 .../PC2Player.Mac/PC2Player.Mac.csproj | 0 .../PC2Player.Old}/PC2Player.Mac/Program.cs | 0 .../PC2Player.Wpf/PC2Player.Wpf.csproj | 0 .../PC2Player.Old}/PC2Player.Wpf/Program.cs | 0 .../PC2Player.Old}/PC2Player/MainForm.cs | 0 .../PC2Player.Old}/PC2Player/PC2Player.csproj | 0 .../USTConverter.Gtk}/Program.cs | 2 +- .../USTConverter.Gtk/USTConverter.Gtk.csproj | 2 +- .../USTConverter.Mac}/Icon.icns | Bin .../USTConverter.Mac}/Info.plist | 6 +- .../USTConverter.Mac}/Program.cs | 2 +- .../USTConverter.Mac/USTConverter.Mac.csproj | 2 +- .../USTConverter.Wpf}/Program.cs | 2 +- .../USTConverter.Wpf/USTConverter.Wpf.csproj | 2 +- .../USTConverter}/MainForm.cs | 246 +++--------------- .../USTConverter}/RSHWFile.cs | 1 - .../USTConverter/USTConverter.csproj | 0 23 files changed, 56 insertions(+), 244 deletions(-) rename {PC2Player => Legacy Tools/PC2Player.Old}/PC2Player.Gtk/PC2Player.Gtk.csproj (100%) rename {PC2Player => Legacy Tools/PC2Player.Old}/PC2Player.Gtk/Program.cs (100%) rename {PC2Converter/PC2Converter.Mac => Legacy Tools/PC2Player.Old/PC2Player.Mac}/Icon.icns (100%) rename {PC2Player => Legacy Tools/PC2Player.Old}/PC2Player.Mac/Info.plist (100%) rename {PC2Player => Legacy Tools/PC2Player.Old}/PC2Player.Mac/PC2Player.Mac.csproj (100%) rename {PC2Player => Legacy Tools/PC2Player.Old}/PC2Player.Mac/Program.cs (100%) rename {PC2Player => Legacy Tools/PC2Player.Old}/PC2Player.Wpf/PC2Player.Wpf.csproj (100%) rename {PC2Player => Legacy Tools/PC2Player.Old}/PC2Player.Wpf/Program.cs (100%) rename {PC2Player => Legacy Tools/PC2Player.Old}/PC2Player/MainForm.cs (100%) rename {PC2Player => Legacy Tools/PC2Player.Old}/PC2Player/PC2Player.csproj (100%) rename {PC2Converter/PC2Converter.Gtk => USTConverter/USTConverter.Gtk}/Program.cs (81%) rename PC2Converter/PC2Converter.Gtk/PC2Converter.Gtk.csproj => USTConverter/USTConverter.Gtk/USTConverter.Gtk.csproj (83%) rename {PC2Player/PC2Player.Mac => USTConverter/USTConverter.Mac}/Icon.icns (100%) rename {PC2Converter/PC2Converter.Mac => USTConverter/USTConverter.Mac}/Info.plist (81%) rename {PC2Converter/PC2Converter.Mac => USTConverter/USTConverter.Mac}/Program.cs (81%) rename PC2Converter/PC2Converter.Mac/PC2Converter.Mac.csproj => USTConverter/USTConverter.Mac/USTConverter.Mac.csproj (84%) rename {PC2Converter/PC2Converter.Wpf => USTConverter/USTConverter.Wpf}/Program.cs (81%) rename PC2Converter/PC2Converter.Wpf/PC2Converter.Wpf.csproj => USTConverter/USTConverter.Wpf/USTConverter.Wpf.csproj (83%) rename {PC2Converter/PC2Converter => USTConverter/USTConverter}/MainForm.cs (53%) rename {PC2Converter/PC2Converter => USTConverter/USTConverter}/RSHWFile.cs (97%) rename PC2Converter/PC2Converter/PC2Converter.csproj => USTConverter/USTConverter/USTConverter.csproj (100%) diff --git a/Bit Mappings.md b/Bit Mappings.md index c3571f9..d1a1a4a 100644 --- a/Bit Mappings.md +++ b/Bit Mappings.md @@ -1,4 +1,4 @@ -# PINKCONNECTION2 Bit Mappings +# UST Bit Mappings This information was sourced from Cheese-E-Pedia, the Showbiz Pizza Cyberstar Install Manual, and the Chuck E. Cheese 2-Stage Install Manual. @@ -6,7 +6,7 @@ This information was sourced from Cheese-E-Pedia, the Showbiz Pizza Cyberstar In ### Rolfe Dewolfe & Earl Schmerle/Chuck E. Cheese -| Movement Name | UST Single Character Bit | UST Full Stage Bit | RR Engine Bit | Greybox Bit | R12 Bit | R12 Inverted | +| Movement Name | UST Character Bit | UST Full Stage Bit | RR Engine Bit | Greybox Bit | R12 Bit | R12 Inverted | | --------------- | ------------------------ | ------------------ | ------------- | ----------- | ------------ | ------------ | | Mouth | 1 | 1 | 1 | 1-1 | TB1 1-2 H1 | No | | Left Ear | 2 | 2 | 9 | 1-9 | | | @@ -35,7 +35,7 @@ Earl's movements were removed during Concept Unification. ### Mitzi Mozzarella/Helen Henny -| Movement Name | UST Single Character Bit | UST Full Stage Bit | RR Engine Bit | Greybox Bit | R12 Bit | R12 Inverted | +| Movement Name | UST Character Bit | UST Full Stage Bit | RR Engine Bit | Greybox Bit | R12 Bit | R12 Inverted | | --------------- | ------------------------ | ------------------ | ------------- | ----------- | ------------ | ------------ | | Mouth | 1 | 23 | 185 | 2-35 | TB1 1-2 H5 | No | | Left Ear | 2 | 24 | 176 | 2-26 | | | @@ -61,7 +61,7 @@ No movements were removed during Concept Unification. ### Fatz Geronimo/Mr. Munch -| Movement Name | UST Single Character Bit | UST Full Stage Bit | RR Engine Bit | Greybox Bit | R12 Bit | R12 Inverted | +| Movement Name | UST Character Bit | UST Full Stage Bit | RR Engine Bit | Greybox Bit | R12 Bit | R12 Inverted | | --------------- | ------------------------ | ------------------ | ------------- | ----------- | ------------ | ------------ | | Mouth | 1 | 42 | 45 | 1-45 | TB1 1-2 H4 | No | | Left Eyelid | 2 | 43 | 41 | 1-41 | TB1 11-12 H4 | Yes | @@ -84,7 +84,7 @@ No movements were removed during Concept Unification. ### Beach Bear/Jasper T. Jowls -| Movement Name | UST Single Character Bit | UST Full Stage Bit | RR Engine Bit | Greybox Bit | R12 Bit | R12 Inverted | +| Movement Name | UST Character Bit | UST Full Stage Bit | RR Engine Bit | Greybox Bit | R12 Bit | R12 Inverted | | --------------- | ------------------------ | ------------------ | ------------- | ----------- | ------------------------- | ------------ | | Mouth | 1 | 58 | 166 | 2-16 | TB1 1-2 H2 | No | | Left Eyelid | 2 | 59 | 151 | 2-1 | TB1 11-12 H2 | Yes | @@ -107,7 +107,7 @@ No movements were removed during Concept Unification. ### Dook Larue/Pasqually -| Movement Name | UST Single Character Bit | UST Full Stage Bit | RR Engine Bit | Greybox Bit | R12 Bit | R12 Inverted | +| Movement Name | UST Character Bit | UST Full Stage Bit | RR Engine Bit | Greybox Bit | R12 Bit | R12 Inverted | | --------------- | ------------------------ | ------------------ | ------------- | ----------- | ------------ | ------------ | | Mouth | 1 | 74 | 30 | 1-30 | TB1 1-2 H3 | No | | Left Ear | 2 | 75 | 23 | 1-23 | | | @@ -131,7 +131,7 @@ Ear movements and Kick Drum were removed during Concept Unification. ### Billy Bob -| Movement Name | UST Single Character Bit | UST Full Stage Bit | RR Engine Bit | Greybox Bit | +| Movement Name | UST Character Bit | UST Full Stage Bit | RR Engine Bit | Greybox Bit | | --------------- | ------------------------ | ------------------ | ------------- | ----------- | | Mouth | 1 | 91 | 196 | 2-46 | | Left Eyelid | 2 | 92 | 197 | 2-47 | @@ -158,7 +158,7 @@ Entire bot was removed during Concept Unification. ### Looney Bird/Pizzacam -| Movement Name | UST Single Character Bit | UST Full Stage Bit | RR Engine Bit | Greybox Bit | +| Movement Name | UST Character Bit | UST Full Stage Bit | RR Engine Bit | Greybox Bit | | --------------- | ------------------------ | ------------------ | ------------- | ----------- | | Mouth | 1 | 111 | 167 | 2-17 | | Left Eyelid | 2 | 112 | 191 | 2-41 | @@ -277,7 +277,7 @@ Hand movement was removed during Concept Unification. ### Chuck E. Cheese -| Movement Name | UST Single Character Bit | UST Full Stage Bit | RR Engine Bit | CCS Bit | +| Movement Name | Character Bit | UST Full Stage Bit | RR Engine Bit | CCS Bit | | ------------- | ------------------------ | ------------------ | ------------- | ------------ | | Mouth | 1 | 1 | 1 | TB1 1-2 H1 | | Head Left | 2 | 2 | 2 | TB1 3-4 H1 | @@ -290,7 +290,7 @@ Hand movement was removed during Concept Unification. ### Helen Henny/Guest Star -| Movement Name | UST Single Character Bit | UST Full Stage Bit | RR Engine Bit | CCS Bit | +| Movement Name | UST Character Bit | UST Full Stage Bit | RR Engine Bit | CCS Bit | | ------------- | ------------------------ | ------------------ | ------------- | ------------ | | Mouth | 1 | 9 | 65 | TB1 1-2 H5 | | Head Left | 2 | 10 | 66 | TB1 3-4 H5 | @@ -303,7 +303,7 @@ Hand movement was removed during Concept Unification. ### Mr. Munch -| Movement Name | UST Single Character Bit | UST Full Stage Bit | RR Engine Bit | CCS Bit | +| Movement Name | UST Character Bit | UST Full Stage Bit | RR Engine Bit | CCS Bit | | ------------- | ------------------------ | ------------------ | ------------- | ------------ | | Mouth | 1 | 17 | 49 | TB1 1-2 H4 | | Head Left | 2 | 18 | 50 | TB1 3-4 H4 | @@ -316,7 +316,7 @@ Hand movement was removed during Concept Unification. ### Jasper T. Jowls -| Movement Name | UST Single Character Bit | UST Full Stage Bit | RR Engine Bit | CCS Bit | +| Movement Name | UST Character Bit | UST Full Stage Bit | RR Engine Bit | CCS Bit | | ------------- | ------------------------ | ------------------ | ------------- | ------------ | | Mouth | 1 | 25 | 17 | TB1 1-2 H2 | | Head Left | 2 | 26 | 18 | TB1 3-4 H2 | @@ -329,7 +329,7 @@ Hand movement was removed during Concept Unification. ### Pasqually -| Movement Name | UST Single Character Bit | UST Full Stage Bit | RR Engine Bit | CCS Bit | +| Movement Name | UST Character Bit | UST Full Stage Bit | RR Engine Bit | CCS Bit | | ------------- | ------------------------ | ------------------ | ------------- | ------------ | | Mouth | 1 | 33 | 33 | TB1 1-2 H3 | | Head Left | 2 | 34 | 34 | TB1 3-4 H3 | @@ -427,7 +427,7 @@ Hand movement was removed during Concept Unification. ### Chuck E. -| Movement Name | UST Single Character Bit | UST Full Stage Bit | RR Engine Bit | DTU Bit | 16M | +| Movement Name | UST Character Bit | UST Full Stage Bit | RR Engine Bit | DTU Bit | 16M | | ----------------- | ------------------------ | ------------------ | ------------- | ------- | --- | | Mouth | 1 | 1 | 21 | 1-21 | Yes | | Nose | 2 | 2 | 28 | 1-28 | No | diff --git a/Future Goals.md b/Future Goals.md index 30f46c1..de584cb 100644 --- a/Future Goals.md +++ b/Future Goals.md @@ -1,18 +1,15 @@ # Future Goals -## PC2Converter +## USTConverter - .SHW (ProgramBlue) input format - .3ST/.R12/.C&R (APS) input format - Biphase (Pianocorder and Cyberstar) from tape input format - Studio C from Floppy Disk input format - - UST Full Stage to Single Character Stripper ## PC2Player - - ~~make the program~~ done!! - - fix memory leak issue - - make audio player work on windows + - burn the damn thing to the ground and start over ## Firmwares diff --git a/PC2Player/PC2Player.Gtk/PC2Player.Gtk.csproj b/Legacy Tools/PC2Player.Old/PC2Player.Gtk/PC2Player.Gtk.csproj similarity index 100% rename from PC2Player/PC2Player.Gtk/PC2Player.Gtk.csproj rename to Legacy Tools/PC2Player.Old/PC2Player.Gtk/PC2Player.Gtk.csproj diff --git a/PC2Player/PC2Player.Gtk/Program.cs b/Legacy Tools/PC2Player.Old/PC2Player.Gtk/Program.cs similarity index 100% rename from PC2Player/PC2Player.Gtk/Program.cs rename to Legacy Tools/PC2Player.Old/PC2Player.Gtk/Program.cs diff --git a/PC2Converter/PC2Converter.Mac/Icon.icns b/Legacy Tools/PC2Player.Old/PC2Player.Mac/Icon.icns similarity index 100% rename from PC2Converter/PC2Converter.Mac/Icon.icns rename to Legacy Tools/PC2Player.Old/PC2Player.Mac/Icon.icns diff --git a/PC2Player/PC2Player.Mac/Info.plist b/Legacy Tools/PC2Player.Old/PC2Player.Mac/Info.plist similarity index 100% rename from PC2Player/PC2Player.Mac/Info.plist rename to Legacy Tools/PC2Player.Old/PC2Player.Mac/Info.plist diff --git a/PC2Player/PC2Player.Mac/PC2Player.Mac.csproj b/Legacy Tools/PC2Player.Old/PC2Player.Mac/PC2Player.Mac.csproj similarity index 100% rename from PC2Player/PC2Player.Mac/PC2Player.Mac.csproj rename to Legacy Tools/PC2Player.Old/PC2Player.Mac/PC2Player.Mac.csproj diff --git a/PC2Player/PC2Player.Mac/Program.cs b/Legacy Tools/PC2Player.Old/PC2Player.Mac/Program.cs similarity index 100% rename from PC2Player/PC2Player.Mac/Program.cs rename to Legacy Tools/PC2Player.Old/PC2Player.Mac/Program.cs diff --git a/PC2Player/PC2Player.Wpf/PC2Player.Wpf.csproj b/Legacy Tools/PC2Player.Old/PC2Player.Wpf/PC2Player.Wpf.csproj similarity index 100% rename from PC2Player/PC2Player.Wpf/PC2Player.Wpf.csproj rename to Legacy Tools/PC2Player.Old/PC2Player.Wpf/PC2Player.Wpf.csproj diff --git a/PC2Player/PC2Player.Wpf/Program.cs b/Legacy Tools/PC2Player.Old/PC2Player.Wpf/Program.cs similarity index 100% rename from PC2Player/PC2Player.Wpf/Program.cs rename to Legacy Tools/PC2Player.Old/PC2Player.Wpf/Program.cs diff --git a/PC2Player/PC2Player/MainForm.cs b/Legacy Tools/PC2Player.Old/PC2Player/MainForm.cs similarity index 100% rename from PC2Player/PC2Player/MainForm.cs rename to Legacy Tools/PC2Player.Old/PC2Player/MainForm.cs diff --git a/PC2Player/PC2Player/PC2Player.csproj b/Legacy Tools/PC2Player.Old/PC2Player/PC2Player.csproj similarity index 100% rename from PC2Player/PC2Player/PC2Player.csproj rename to Legacy Tools/PC2Player.Old/PC2Player/PC2Player.csproj diff --git a/PC2Converter/PC2Converter.Gtk/Program.cs b/USTConverter/USTConverter.Gtk/Program.cs similarity index 81% rename from PC2Converter/PC2Converter.Gtk/Program.cs rename to USTConverter/USTConverter.Gtk/Program.cs index 3297df7..1d1b0b0 100644 --- a/PC2Converter/PC2Converter.Gtk/Program.cs +++ b/USTConverter/USTConverter.Gtk/Program.cs @@ -1,7 +1,7 @@ using System; using Eto.Forms; -namespace PC2Converter.Gtk +namespace USTConverter.Gtk { class Program { diff --git a/PC2Converter/PC2Converter.Gtk/PC2Converter.Gtk.csproj b/USTConverter/USTConverter.Gtk/USTConverter.Gtk.csproj similarity index 83% rename from PC2Converter/PC2Converter.Gtk/PC2Converter.Gtk.csproj rename to USTConverter/USTConverter.Gtk/USTConverter.Gtk.csproj index 7e86dbd..3832d00 100644 --- a/PC2Converter/PC2Converter.Gtk/PC2Converter.Gtk.csproj +++ b/USTConverter/USTConverter.Gtk/USTConverter.Gtk.csproj @@ -7,7 +7,7 @@ - + diff --git a/PC2Player/PC2Player.Mac/Icon.icns b/USTConverter/USTConverter.Mac/Icon.icns similarity index 100% rename from PC2Player/PC2Player.Mac/Icon.icns rename to USTConverter/USTConverter.Mac/Icon.icns diff --git a/PC2Converter/PC2Converter.Mac/Info.plist b/USTConverter/USTConverter.Mac/Info.plist similarity index 81% rename from PC2Converter/PC2Converter.Mac/Info.plist rename to USTConverter/USTConverter.Mac/Info.plist index 6157797..667bce4 100644 --- a/PC2Converter/PC2Converter.Mac/Info.plist +++ b/USTConverter/USTConverter.Mac/Info.plist @@ -3,11 +3,11 @@ CFBundleName - PC2Converter + USTConverter CFBundleIdentifier - com.example.PC2Converter + me.kawaiizenbo.USTConverter CFBundleShortVersionString - 1.0 + 1.3 LSMinimumSystemVersion 10.15 CFBundleDevelopmentRegion diff --git a/PC2Converter/PC2Converter.Mac/Program.cs b/USTConverter/USTConverter.Mac/Program.cs similarity index 81% rename from PC2Converter/PC2Converter.Mac/Program.cs rename to USTConverter/USTConverter.Mac/Program.cs index 973dc3d..089435e 100644 --- a/PC2Converter/PC2Converter.Mac/Program.cs +++ b/USTConverter/USTConverter.Mac/Program.cs @@ -1,7 +1,7 @@ using System; using Eto.Forms; -namespace PC2Converter.Mac +namespace USTConverter.Mac { class Program { diff --git a/PC2Converter/PC2Converter.Mac/PC2Converter.Mac.csproj b/USTConverter/USTConverter.Mac/USTConverter.Mac.csproj similarity index 84% rename from PC2Converter/PC2Converter.Mac/PC2Converter.Mac.csproj rename to USTConverter/USTConverter.Mac/USTConverter.Mac.csproj index 437ecec..2f87570 100644 --- a/PC2Converter/PC2Converter.Mac/PC2Converter.Mac.csproj +++ b/USTConverter/USTConverter.Mac/USTConverter.Mac.csproj @@ -8,7 +8,7 @@ - + diff --git a/PC2Converter/PC2Converter.Wpf/Program.cs b/USTConverter/USTConverter.Wpf/Program.cs similarity index 81% rename from PC2Converter/PC2Converter.Wpf/Program.cs rename to USTConverter/USTConverter.Wpf/Program.cs index 8a370b0..df54590 100644 --- a/PC2Converter/PC2Converter.Wpf/Program.cs +++ b/USTConverter/USTConverter.Wpf/Program.cs @@ -1,7 +1,7 @@ using System; using Eto.Forms; -namespace PC2Converter.Wpf +namespace USTConverter.Wpf { class Program { diff --git a/PC2Converter/PC2Converter.Wpf/PC2Converter.Wpf.csproj b/USTConverter/USTConverter.Wpf/USTConverter.Wpf.csproj similarity index 83% rename from PC2Converter/PC2Converter.Wpf/PC2Converter.Wpf.csproj rename to USTConverter/USTConverter.Wpf/USTConverter.Wpf.csproj index 32ab58c..89efd4b 100644 --- a/PC2Converter/PC2Converter.Wpf/PC2Converter.Wpf.csproj +++ b/USTConverter/USTConverter.Wpf/USTConverter.Wpf.csproj @@ -7,7 +7,7 @@ - + diff --git a/PC2Converter/PC2Converter/MainForm.cs b/USTConverter/USTConverter/MainForm.cs similarity index 53% rename from PC2Converter/PC2Converter/MainForm.cs rename to USTConverter/USTConverter/MainForm.cs index 696c2bf..9ef6e9e 100644 --- a/PC2Converter/PC2Converter/MainForm.cs +++ b/USTConverter/USTConverter/MainForm.cs @@ -1,19 +1,17 @@ -using System; using System.Collections; using System.Diagnostics; -using System.Numerics; using System.IO; +using System.Numerics; using Eto.Forms; using Eto.Drawing; -namespace PC2Converter +namespace USTConverter { public partial class MainForm : Form { DropDown InputTypeSelector = new DropDown(); DropDown OutputTypeSelector = new DropDown(); - DropDown CharacterSelector = new DropDown(); TextBox FilePathTextBox = new TextBox(); Button BrowseFileButton = new Button { Text = "Browse", Width = 100 }; Button ConvertButton = new Button { Text = "Convert", Width = 100 }; @@ -24,49 +22,12 @@ namespace PC2Converter "3ST File (APS)", "ROA/R12/C&R File (APS)"*/ }; - string[] RAE3stOutputTypes = { "UST 32 Bits (Single Bot RAE/3st)", "UST 8 Bits (Single Bot Cybers Rosetta)", "UST 256 Bits (Full RAE/3st)" , "UST 256 Bits (Full Cybers Rosetta)" }; - string[] CyberOutputTypes = { "UST 8 Bits (Single Bot Cybers)", "UST 256 Bits (Full Cybers)" }; - string[] StudioCOutputTypes = { "UST 32 Bits (Single Bot Studio C)", "UST 256 Bits (Full Studio C)" }; + string[] RAE3stOutputTypes = { "UST (Rock-afire Explosion/3-Stage)" , "UST (Cyberamics Rosetta)" }; + string[] CyberOutputTypes = { "UST (Cyberamics)" }; + string[] StudioCOutputTypes = { "UST (Studio C)" }; - string[] RAE3stCharacters = { "Rolfe/Chuck E.", "Mitzi/Helen", "Fatz/Munch", "Beach Bear/Jasper", "Dook/Pasqually", "Billy Bob", "Looney Bird/PizzaCam"}; - string[] CyberCharacters = { "Chuck E.", "Helen/Guest Star", "Munch", "Jasper", "Pasqually" }; - string[] StudioCCharacters = { "Chuck E." }; - int[][] SC_CyberBitMap = - { - /* chuck */ new int[]{ 1, 2, 3, 4, 8, 5, 6, 7 }, - /* helen */ new int[]{ 65, 66, 67, 68, 72, 69, 70, 71 }, - /* munch */ new int[]{ 49, 50, 51, 56, 53, 54, 55, 52 }, - /* jasper */ new int[]{ 17, 18, 19, 20, 24, 21, 22, 23 }, - /* pasqually */ new int[]{ 33, 34, 35, 40, 37, 38, 39, 36 } - }; - - int[][] SC_CyberBitMapRosetta = - { - /* chuck */ new int[]{ 1, 6, 7, 8, 4, 5, 2, 19 }, - /* helen */ new int[]{ 185, 178, 179, 180, 183, 184, 181, 169 }, - /* munch */ new int[]{ 45, 54, 55, 43, 44, 41, 58, 59 }, - /* jasper */ new int[]{ 166, 156, 157, 158, 156, 157, 151, 163 }, - /* pasqually */ new int[]{ 30, 25, 21, 28, 29, 26, 31, 35 } - }; - - int[][] SC_RAE3stBitMap = - { - /* rolfe/chuck */ new int[]{ 1, 9, 10, 2, 3, 4, 5, 6, 7, 8, 11, 12, 13, 17, 18, 19, 14, 15, 16, 20, 36, 37 }, - /* mitzi/helen */ new int[]{ 185, 176, 177, 181, 182, 183, 184, 178, 179, 180, 173, 175, 174, 168, 170, 169, 186, 187, 188 }, - /* fatz/munch */ new int[]{ 45, 41, 42, 43, 44, 54, 55, 51, 52, 53, 57, 59, 58, 60, 61, 62 }, - /* beach bear/jasper */ new int[]{ 166, 151, 152, 153, 156, 157, 158, 161, 162, 163, 164, 154, 155, 159, 160, 165 }, - /* dook/pasqually */ new int[]{ 30, 23, 24, 26, 27, 28, 29, 25, 21, 22, 33, 35, 34, 31, 32, 63, 64 }, - /* billy bob */ new int[]{ 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 189, 190, 194, 211, 212, 213 }, - /* looney/pizzacam */ new int[]{ 167, 191, 192, 193, 171, 172, 48 } - }; - - int[][] SC_StudioCBitMap = - { - /* chuck e. */ new int[]{ 21, 28, 25, 24, 26, 27, 29, 30, 31, 18, 19, 23, 22, 20, 6, 7, 11, 8, 9, 10, 1, 2, 17, 3, 4, 5, 12, 16, 15, 13, 14, 32 } - }; - - int[] FS_CyberBitMap = { + int[] CyberBitMap = { 1, 2, 3, 4, 8, 5, 6, 7, 65, 66, 67, 68, 72, 69, 70, 71, 49, 50, 51, 56, 53, 54, 55, 52, @@ -81,7 +42,7 @@ namespace PC2Converter 103, 105, 125, 121, 126, 99, 124, 122, 97, 98 }; - int[] FS_CyberBitMapRosetta = { + int[] CyberBitMapRosetta = { 1, 6, 7, 8, 4, 5, 2, 19, 185, 178, 179, 180, 183, 184, 181, 169, 45, 54, 55, 43, 44, 41, 58, 59, @@ -96,7 +57,7 @@ namespace PC2Converter 220, 244, 245, 225, 77, 241, 240, 87, 222, 0 }; - int[] FS_RAE3stBitMap = { + int[] RAE3stBitMap = { 1, 9, 10, 2, 3, 4, 5, 6, 7, 8, 11, 12, 13, 17, 18, 19, 14, 15, 16, 20, 36, 37, 185, 176, 177, 181, 182, 183, 184, 178, 179, 180, 173, 175, 174, 168, 170, 169, 186, 187, 188, 45, 41, 42, 43, 44, 54, 55, 51, 52, 53, 57, 59, 58, 60, 61, 62, @@ -114,7 +75,7 @@ namespace PC2Converter 220, 244, 245, 225, 230, 241 }; - int[] FS_StudioCBitMap = { + int[] StudioCBitMap = { 21, 28, 25, 24, 26, 27, 29, 30, 31, 18, 19, 23, 22, 20, 6, 7, 11, 8, 9, 10, 1, 2, 17, 3, 4, 5, 12, 16, 15, 13, 14, 32, 33, 36, 34, 35, 40, 160, 161, 177, 178, @@ -130,12 +91,12 @@ namespace PC2Converter bool FullStage = false; bool Rosetta = false; - const int USTVersion = 1; + const int USTVersion = 2; public MainForm() { - Title = "PinkConnection2 Showtape Converter"; - Size = new Size(512, 384); + Title = "UST Showtape Converter"; + Size = new Size(500, 300); Maximizable = false; Resizable = false; @@ -143,7 +104,6 @@ namespace PC2Converter ConvertButton.Command = new Command((sender, e) => { Event_ConvertFileButton(); }); InputTypeSelector.SelectedValueChanged += (sender, e) => Event_ChangeInputType(); - OutputTypeSelector.SelectedValueChanged += (sender, e) => Event_ChangeOutputType(); foreach (string s in InputTypes) { @@ -173,14 +133,6 @@ namespace PC2Converter layout.BeginHorizontal(); layout.Add(OutputTypeSelector, true); layout.EndHorizontal(); - - layout.BeginHorizontal(); - layout.Add(new Label { Text = "Character" }); - layout.EndHorizontal(); - - layout.BeginHorizontal(); - layout.Add(CharacterSelector, true); - layout.EndHorizontal(); layout.EndVertical(); layout.BeginVertical(); @@ -209,51 +161,24 @@ namespace PC2Converter return layout; } - string MakeHeader(string showName, string outputType, string character) + string MakeHeader(string showName, string outputType) { string headerOut = $"UST,{USTVersion.ToString()},{showName.Replace(",", "_").Replace(";", "_")},"; - bool fullStage = false; switch (outputType) { - case "UST 32 Bits (Single Bot RAE/3st)": - headerOut += "32,"; - headerOut += "Rockafire Explosion/3-Stage (Single Character),"; + case "UST (Rock-afire Explosion/3-Stage)": + headerOut += "Rockafire Explosion/3-Stage;"; break; - case "UST 8 Bits (Single Bot Cybers Rosetta)": - headerOut += "8,"; - headerOut += "Cyberamics (Single Character),"; + case "UST (Cyberamics Rosetta)": + headerOut += "Cyberamics;"; break; - case "UST 256 Bits (Full RAE/3st)": - headerOut += "256,"; - headerOut += "Rockafire Explosion/3-Stage (Full Stage),"; - fullStage = true; + case "UST (Cyberamics)": + headerOut += "Cyberamics;"; break; - case "UST 256 Bits (Full Cybers Rosetta)": - headerOut += "256,"; - headerOut += "Cyberamics (Full Stage),"; - fullStage = true; - break; - case "UST 8 Bits (Single Bot Cybers)": - headerOut += "8,"; - headerOut += "Cyberamics (Single Character),"; - break; - case "UST 256 Bits (Full Cybers)": - headerOut += "256,"; - headerOut += "Cyberamics (Full Stage),"; - fullStage = true; - break; - case "UST 32 Bits (Single Bot Studio C)": - headerOut += "32,"; - headerOut += "Studio C (Single Character),"; - break; - case "UST 256 Bits (Full Studio C)": - headerOut += "256,"; - headerOut += "Studio C (Full Stage),"; - fullStage = true; + case "UST (Studio C)": + headerOut += "Studio C;"; break; } - if (fullStage) headerOut += "All,"; - else headerOut += character + ";"; return headerOut; } @@ -263,7 +188,6 @@ namespace PC2Converter { case 0: OutputTypeSelector.Items.Clear(); - CharacterSelector.Items.Clear(); foreach (string s in RAE3stOutputTypes) { OutputTypeSelector.Items.Add(s); @@ -271,7 +195,6 @@ namespace PC2Converter break; case 1: OutputTypeSelector.Items.Clear(); - CharacterSelector.Items.Clear(); foreach (string s in CyberOutputTypes) { OutputTypeSelector.Items.Add(s); @@ -279,7 +202,6 @@ namespace PC2Converter break; case 2: OutputTypeSelector.Items.Clear(); - CharacterSelector.Items.Clear(); foreach (string s in StudioCOutputTypes) { OutputTypeSelector.Items.Add(s); @@ -288,92 +210,6 @@ namespace PC2Converter } } - void Event_ChangeOutputType() - { - switch(InputTypeSelector.SelectedIndex) - { - case 0: - switch(OutputTypeSelector.SelectedIndex) - { - case 0: - CharacterSelector.Items.Clear(); - foreach (string s in RAE3stCharacters) - { - CharacterSelector.Items.Add(s); - } - CharacterSelector.Enabled = true; - Rosetta = false; - FullStage = false; - break; - case 1: - CharacterSelector.Items.Clear(); - foreach (string s in CyberCharacters) - { - CharacterSelector.Items.Add(s); - } - CharacterSelector.Enabled = true; - Rosetta = true; - FullStage = false; - break; - case 2: - CharacterSelector.Items.Clear(); - CharacterSelector.Enabled = false; - Rosetta = false; - FullStage = true; - break; - case 3: - CharacterSelector.Items.Clear(); - CharacterSelector.Enabled = false; - Rosetta = true; - FullStage = true; - break; - } - break; - case 1: - switch(OutputTypeSelector.SelectedIndex) - { - case 0: - CharacterSelector.Items.Clear(); - foreach (string s in CyberCharacters) - { - CharacterSelector.Items.Add(s); - } - CharacterSelector.Enabled = true; - Rosetta = false; - FullStage = false; - break; - case 1: - CharacterSelector.Items.Clear(); - CharacterSelector.Enabled = false; - Rosetta = false; - FullStage = true; - break; - } - break; - case 2: - switch(OutputTypeSelector.SelectedIndex) - { - case 0: - CharacterSelector.Items.Clear(); - foreach (string s in StudioCCharacters) - { - CharacterSelector.Items.Add(s); - } - CharacterSelector.Enabled = true; - Rosetta = false; - FullStage = false; - break; - case 1: - CharacterSelector.Items.Clear(); - CharacterSelector.Enabled = false; - Rosetta = false; - FullStage = true; - break; - } - break; - } - } - void Event_BrowseFileButton() { OpenFileDialog fileDialog = new OpenFileDialog(); @@ -399,11 +235,6 @@ namespace PC2Converter MessageBox.Show("Fatal: You must select an output type."); return; } - if (CharacterSelector.SelectedIndex == -1 && !FullStage) - { - MessageBox.Show("Fatal: You must select a character."); - return; - } if (FilePathTextBox.Text.Trim() == "") { MessageBox.Show("Fatal: You must select an input file."); @@ -470,37 +301,22 @@ namespace PC2Converter int[] targetBits = { 0 }; switch (outputType) { - case "UST 32 Bits (Single Bot RAE/3st)": - bitsCount = 32; - targetBits = SC_RAE3stBitMap[Array.IndexOf(RAE3stCharacters, CharacterSelector.SelectedKey)]; - break; - case "UST 8 Bits (Single Bot Cybers Rosetta)": - bitsCount = 8; - targetBits = SC_CyberBitMapRosetta[Array.IndexOf(CyberCharacters, CharacterSelector.SelectedKey)]; - break; - case "UST 256 Bits (Full RAE/3st)": + case "UST (Rock-afire Explosion/3-Stage)": bitsCount = 256; - targetBits = FS_RAE3stBitMap; + targetBits = RAE3stBitMap; break; - case "UST 256 Bits (Full Cybers Rosetta)": + case "UST (Cyberamics Rosetta)": bitsCount = 256; - targetBits = FS_CyberBitMapRosetta; + targetBits = CyberBitMapRosetta; + Rosetta = true; break; - case "UST 8 Bits (Single Bot Cybers)": - bitsCount = 8; - targetBits = SC_CyberBitMap[Array.IndexOf(CyberCharacters, CharacterSelector.SelectedKey)]; - break; - case "UST 256 Bits (Full Cybers)": + case "UST (Cyberamics)": bitsCount = 256; - targetBits = FS_CyberBitMap; + targetBits = CyberBitMap; break; - case "UST 32 Bits (Single Bot Studio C)": - bitsCount = 32; - targetBits = SC_StudioCBitMap[Array.IndexOf(StudioCCharacters, CharacterSelector.SelectedKey)]; - break; - case "UST 256 Bits (Full Studio C)": + case "UST (Studio C)": bitsCount = 256; - targetBits = FS_StudioCBitMap; + targetBits = StudioCBitMap; break; } @@ -535,7 +351,7 @@ namespace PC2Converter File.Delete("tmp.mp3"); } - File.WriteAllText(outFilePath, MakeHeader(Path.GetFileNameWithoutExtension(outFilePath), outputType, CharacterSelector.SelectedKey)+String.Join(",", writeOut.ToArray())+";"+Convert.ToBase64String(audioOut)); + File.WriteAllText(outFilePath, MakeHeader(Path.GetFileNameWithoutExtension(outFilePath), outputType)+String.Join(",", writeOut.ToArray())+";"+Convert.ToBase64String(audioOut)); } MessageBox.Show("Conversion complete!"); } diff --git a/PC2Converter/PC2Converter/RSHWFile.cs b/USTConverter/USTConverter/RSHWFile.cs similarity index 97% rename from PC2Converter/PC2Converter/RSHWFile.cs rename to USTConverter/USTConverter/RSHWFile.cs index d155ddf..8e09a5f 100644 --- a/PC2Converter/PC2Converter/RSHWFile.cs +++ b/USTConverter/USTConverter/RSHWFile.cs @@ -1,4 +1,3 @@ -using System.IO; using System.Reflection; using System.Runtime.Serialization.Formatters.Binary; diff --git a/PC2Converter/PC2Converter/PC2Converter.csproj b/USTConverter/USTConverter/USTConverter.csproj similarity index 100% rename from PC2Converter/PC2Converter/PC2Converter.csproj rename to USTConverter/USTConverter/USTConverter.csproj