Hi Arbee,

I thought I'd give the sirius joyport a spin with my favorite game ever Stellar 7 and it was only letting me go left and right, but not up and down.

Diving into joyport.cpp it looks like we just need to swap an_0 with an_1 and vice versa, super simple fix.

an_0 selecting the player
and an_1 choosing which direction we're reading

Code
git diff
diff --git a/src/devices/bus/a2gameio/joyport.cpp b/src/devices/bus/a2gameio/joyport.cpp
index cfc8ef1246..9ed0579644 100644
--- a/src/devices/bus/a2gameio/joyport.cpp
+++ b/src/devices/bus/a2gameio/joyport.cpp
@@ -76,23 +76,23 @@ void apple2_joyport_device::device_start()
 
 READ_LINE_MEMBER(apple2_joyport_device::sw0_r)
 {
-       u8 port_read = m_an1 ? m_player2->read() : m_player1->read();
+       u8 port_read = m_an0 ? m_player2->read() : m_player1->read();
 
        return BIT(port_read, 4);
 }
 
 READ_LINE_MEMBER(apple2_joyport_device::sw1_r)
 {
-       u8 port_read = m_an1 ? m_player2->read() : m_player1->read();
+       u8 port_read = m_an0 ? m_player2->read() : m_player1->read();
 
-       return m_an0 ? BIT(port_read, 0) : BIT(port_read, 3);
+       return m_an1 ? BIT(port_read, 0) : BIT(port_read, 3);
 }
 
 READ_LINE_MEMBER(apple2_joyport_device::sw2_r)
 {
-       u8 port_read = m_an1 ? m_player2->read() : m_player1->read();
+       u8 port_read = m_an0 ? m_player2->read() : m_player1->read();
 
-       return m_an0 ? BIT(port_read, 2) : BIT(port_read, 1);
+       return m_an1 ? BIT(port_read, 2) : BIT(port_read, 1);
 }
 
 WRITE_LINE_MEMBER(apple2_joyport_device::an0_w)
(END)