diff --git a/Densha de GO! (PS1-PS2)/ZuikiToPS1.gpc b/Densha de GO! (PS1-PS2)/ZuikiToPS1.gpc
new file mode 100755
index 0000000..2a9a5f7
--- /dev/null
+++ b/Densha de GO! (PS1-PS2)/ZuikiToPS1.gpc	
@@ -0,0 +1,180 @@
+// Script to use a Zuiki Switch controller with Densha de GO! games for the PS1/PS2 on emulators or real hardware
+// Written by Marc Riera, 2022
+
+// D-Pad is mapped to left stick and X is mapped to L3 for use with for use with PS2 cheats:
+https://marcriera.github.io/ddgo-controller-docs/adapters/#playstation-2-cheat-codes-for-playstation-1-controllers
+
+unmap HID_XINPUT_1;
+unmap PS4_PS;
+remap PS4_RX -> PS4_LX;
+remap PS4_RY -> PS4_LY;
+unmap PS4_RX;
+unmap PS4_RY;
+
+main {
+
+    // Teal light
+    set_led(LED_1, 1);
+    set_led(LED_2, 0);
+    set_led(LED_3, 1);
+
+
+    // X button
+    if (get_val(HID_BUTTON_14) == 100) {
+        set_val(PS4_L3, 100);
+    }
+    
+    // D-Pad
+    if (get_val(HID_BUTTON_10) == 100) {  // UP
+        set_val(PS4_RY, -100);
+    }
+    if (get_val(HID_BUTTON_11) == 100) {  // DOWN
+        set_val(PS4_RY, 100);
+    }
+    if (get_val(HID_BUTTON_12) == 100) {  // LEFT
+        set_val(PS4_RX, -100);
+    }
+    if (get_val(HID_BUTTON_13) == 100) {  // RIGHT
+        set_val(PS4_RX, 100);
+    }
+    
+    // Handle
+    if (get_val(HID_STICK_2_Y) == -100) {  // EB
+        set_val(PS4_L1, 0);
+        set_val(PS4_L2, 0);
+        set_val(PS4_R1, 0);
+        set_val(PS4_R2, 0);
+        set_val(PS4_LEFT, 100);
+        set_val(PS4_RIGHT, 100);
+        set_val(PS4_TRIANGLE, 0);
+    }
+    if (get_val(HID_STICK_2_Y) == -96) {  // B8
+        set_val(PS4_L1, 0);
+        set_val(PS4_L2, 100);
+        set_val(PS4_R1, 100);
+        set_val(PS4_R2, 0);
+        set_val(PS4_LEFT, 100);
+        set_val(PS4_RIGHT, 100);
+        set_val(PS4_TRIANGLE, 0);
+    }
+    if (get_val(HID_STICK_2_Y) == -85) {  // B7
+        set_val(PS4_L1, 100);
+        set_val(PS4_L2, 100);
+        set_val(PS4_R1, 100);
+        set_val(PS4_R2, 0);
+        set_val(PS4_LEFT, 100);
+        set_val(PS4_RIGHT, 100);
+        set_val(PS4_TRIANGLE, 0);
+    }
+    if (get_val(HID_STICK_2_Y) == -74) {  // B6
+        set_val(PS4_L1, 0);
+        set_val(PS4_L2, 0);
+        set_val(PS4_R1, 0);
+        set_val(PS4_R2, 100);
+        set_val(PS4_LEFT, 100);
+        set_val(PS4_RIGHT, 100);
+        set_val(PS4_TRIANGLE, 0);
+    }
+    if (get_val(HID_STICK_2_Y) == -63) {  // B5
+        set_val(PS4_L1, 100);
+        set_val(PS4_L2, 0);
+        set_val(PS4_R1, 0);
+        set_val(PS4_R2, 100);
+        set_val(PS4_LEFT, 100);
+        set_val(PS4_RIGHT, 100);
+        set_val(PS4_TRIANGLE, 0);
+    }
+    if (get_val(HID_STICK_2_Y) == -52) {  // B4
+        set_val(PS4_L1, 0);
+        set_val(PS4_L2, 100);
+        set_val(PS4_R1, 0);
+        set_val(PS4_R2, 100);
+        set_val(PS4_LEFT, 100);
+        set_val(PS4_RIGHT, 100);
+        set_val(PS4_TRIANGLE, 0);
+    }
+    if (get_val(HID_STICK_2_Y) == -42) {  // B3
+        set_val(PS4_L1, 100);
+        set_val(PS4_L2, 100);
+        set_val(PS4_R1, 0);
+        set_val(PS4_R2, 100);
+        set_val(PS4_LEFT, 100);
+        set_val(PS4_RIGHT, 100);
+        set_val(PS4_TRIANGLE, 0);
+    }
+    if (get_val(HID_STICK_2_Y) == -31) {  // B2
+        set_val(PS4_L1, 0);
+        set_val(PS4_L2, 0);
+        set_val(PS4_R1, 100);
+        set_val(PS4_R2, 100);
+        set_val(PS4_LEFT, 100);
+        set_val(PS4_RIGHT, 100);
+        set_val(PS4_TRIANGLE, 0);
+    }
+    if (get_val(HID_STICK_2_Y) == -20) {  // B1
+        set_val(PS4_L1, 100);
+        set_val(PS4_L2, 0);
+        set_val(PS4_R1, 100);
+        set_val(PS4_R2, 100);
+        set_val(PS4_LEFT, 100);
+        set_val(PS4_RIGHT, 100);
+        set_val(PS4_TRIANGLE, 0);
+    }
+    if (get_val(HID_STICK_2_Y) == 0) {  // N
+        set_val(PS4_L1, 0);
+        set_val(PS4_L2, 100);
+        set_val(PS4_R1, 100);
+        set_val(PS4_R2, 100);
+        set_val(PS4_LEFT, 100);
+        set_val(PS4_RIGHT, 100);
+        set_val(PS4_TRIANGLE, 0);
+    }
+    if (get_val(HID_STICK_2_Y) == 24) {  // P1
+        set_val(PS4_L1, 0);
+        set_val(PS4_L2, 100);
+        set_val(PS4_R1, 100);
+        set_val(PS4_R2, 100);
+        set_val(PS4_LEFT, 0);
+        set_val(PS4_RIGHT, 100);
+        set_val(PS4_TRIANGLE, 100);
+    }
+    if (get_val(HID_STICK_2_Y) == 43) {  // P2
+        set_val(PS4_L1, 0);
+        set_val(PS4_L2, 100);
+        set_val(PS4_R1, 100);
+        set_val(PS4_R2, 100);
+        set_val(PS4_LEFT, 0);
+        set_val(PS4_RIGHT, 100);
+        set_val(PS4_TRIANGLE, 0);
+    }
+    if (get_val(HID_STICK_2_Y) == 61) {  // P3
+        set_val(PS4_L1, 0);
+        set_val(PS4_L2, 100);
+        set_val(PS4_R1, 100);
+        set_val(PS4_R2, 100);
+        set_val(PS4_LEFT, 100);
+        set_val(PS4_RIGHT, 0);
+        set_val(PS4_TRIANGLE, 100);
+    }
+    if (get_val(HID_STICK_2_Y) == 80) {  // P4
+        set_val(PS4_L1, 0);
+        set_val(PS4_L2, 100);
+        set_val(PS4_R1, 100);
+        set_val(PS4_R2, 100);
+        set_val(PS4_LEFT, 100);
+        set_val(PS4_RIGHT, 0);
+        set_val(PS4_TRIANGLE, 0);
+    }
+    if (get_val(HID_STICK_2_Y) == 100) {  // P5
+        set_val(PS4_L1, 0);
+        set_val(PS4_L2, 100);
+        set_val(PS4_R1, 100);
+        set_val(PS4_R2, 100);
+        set_val(PS4_LEFT, 0);
+        set_val(PS4_RIGHT, 0);
+        set_val(PS4_TRIANGLE, 100);
+    }
+    
+    set_val(PS4_UP, 100);
+    set_val(PS4_DOWN, 100);
+}
diff --git a/Densha de GO! Hashirou Yamanote Sen (PS4)/DenshaDeGoPS1ToPS4_103-T1.gpc b/Densha de GO! Hashirou Yamanote Sen (PS4)/DenshaDeGoPS1ToPS4_103-T1.gpc
index 31b0872..ea0dc69 100755
--- a/Densha de GO! Hashirou Yamanote Sen (PS4)/DenshaDeGoPS1ToPS4_103-T1.gpc	
+++ b/Densha de GO! Hashirou Yamanote Sen (PS4)/DenshaDeGoPS1ToPS4_103-T1.gpc	
@@ -1,4 +1,5 @@
 // Script to use PS1/N64/SS/DC Densha de GO! controllers with Densha de GO! Hashirou Yamanote Sen (PS4/Switch)
+// Written by Marc Riera, 2021
 
 // Based on the code by EddieLau for the Titan Two: https://github.com/tylau0/DenGo/blob/main/DenshaDeGoPS1ToPS4MayFlash.gpc
 // Requires enabling advanced controls (analog pressure + non-step)
diff --git a/Densha de GO! Hashirou Yamanote Sen (PS4)/DenshaDeGoPS1ToPS4_General-T1.gpc b/Densha de GO! Hashirou Yamanote Sen (PS4)/DenshaDeGoPS1ToPS4_General-T1.gpc
index 4937b87..07ceace 100755
--- a/Densha de GO! Hashirou Yamanote Sen (PS4)/DenshaDeGoPS1ToPS4_General-T1.gpc	
+++ b/Densha de GO! Hashirou Yamanote Sen (PS4)/DenshaDeGoPS1ToPS4_General-T1.gpc	
@@ -1,4 +1,5 @@
 // Script to use PS1/N64/SS/DC Densha de GO! controllers with Densha de GO! Hashirou Yamanote Sen (PS4/Switch)
+// Written by Marc Riera, 2021
 
 // Based on the code by EddieLau for the Titan Two: https://github.com/tylau0/DenGo/blob/main/DenshaDeGoPS1ToPS4MayFlash.gpc
 // Requires enabling advanced controls (analog pressure + non-step)
diff --git a/Densha de GO! Hashirou Yamanote Sen (Switch)/DenshaDeGoPS1ToSwitch_103-T1.gpc b/Densha de GO! Hashirou Yamanote Sen (Switch)/DenshaDeGoPS1ToSwitch_103-T1.gpc
index 5ee906a..3735199 100755
--- a/Densha de GO! Hashirou Yamanote Sen (Switch)/DenshaDeGoPS1ToSwitch_103-T1.gpc	
+++ b/Densha de GO! Hashirou Yamanote Sen (Switch)/DenshaDeGoPS1ToSwitch_103-T1.gpc	
@@ -1,4 +1,5 @@
 // Script to use PS1/N64/SS/DC Densha de GO! controllers with Densha de GO! Hashirou Yamanote Sen (PS4/Switch)
+// Written by Marc Riera, 2021
 
 // Based on the code by EddieLau for the Titan Two: https://github.com/tylau0/DenGo/blob/main/DenshaDeGoPS1ToPS4MayFlash.gpc
 // Requires enabling advanced controls (analog pressure + non-step)
diff --git a/Densha de GO! Hashirou Yamanote Sen (Switch)/DenshaDeGoPS1ToSwitch_General-T1.gpc b/Densha de GO! Hashirou Yamanote Sen (Switch)/DenshaDeGoPS1ToSwitch_General-T1.gpc
index 8d3b0dd..547bd7a 100755
--- a/Densha de GO! Hashirou Yamanote Sen (Switch)/DenshaDeGoPS1ToSwitch_General-T1.gpc	
+++ b/Densha de GO! Hashirou Yamanote Sen (Switch)/DenshaDeGoPS1ToSwitch_General-T1.gpc	
@@ -1,4 +1,5 @@
 // Script to use PS1/N64/SS/DC Densha de GO! controllers with Densha de GO! Hashirou Yamanote Sen (PS4/Switch)
+// Written by Marc Riera, 2021
 
 // Based on the code by EddieLau for the Titan Two: https://github.com/tylau0/DenGo/blob/main/DenshaDeGoPS1ToPS4MayFlash.gpc
 // Requires enabling advanced controls (analog pressure + non-step)
diff --git a/README.md b/README.md
index 52c8145..3eb1a22 100644
--- a/README.md
+++ b/README.md
@@ -15,3 +15,9 @@ Hold **START** to use **A**, **B**, **C** and **SELECT** as a D-pad and navigate
 - **DenshaDeGoPS1ToSwitch_103-T1.gpc**: to connect PS1 controllers to a Switch. For use with the 103 series train.
 
 Hold **START** to use **A**, **B**, **C** and **SELECT** as a D-pad and navigate game menus.
+
+**Densha de GO! (PS1-PS2)**
+
+- **ZuikiToPS1.gpc**: to connect a Zuiki Switch controller to a real PS1/PS2 (via adapter/PADEMU) or emulator.
+
+The **D-Pad** is mapped to the **left stick** and **X** is mapped to **L3** for use with [PS2 cheats](https://marcriera.github.io/ddgo-controller-docs/adapters/#playstation-2-cheat-codes-for-playstation-1-controllers).