Dirt-cheap Vaus paddle clone for MSX

Page 5/5
1 | 2 | 3 | 4 |

By Danjovic

Master (216)

Danjovic's picture

21-05-2022, 17:50

Hi ducasp

Thank you for the feedback. I may not replicate the electric behavior of the suggested circuit for the standard paddle but it works perfectly with the standard BIOS routine GTPDL.

Nevertheless the .ino already provides the code for such changes (below).

Un-comment the lines

    if (operatingMode == Standard) { // Standard Mode
      //      pinMode(DATA,INPUT_PULLUP); // Turn output HIGH
      //      digitalWrite(13,HIGH);

And comment the line

	 // Turn output HIGH again
      pinMode(DATA, INPUT_PULLUP);

The MSX standard allows paddles on any of the 6 inputs, and I changed the behavior of the code to allow simultaneous use of the joystick lines either as analog or digital lines like the NSX64 project (video)

Regarding HIDTEST, it surely employs a clever heuristic but prone to false results because the footprints obtained are circumstantial rather than intended. The detection can be enhanced, though, if combined with secondary heuristics matching the peripherals that the game/program should support, for instance, ask for the user to press a fire button.

Another suggestion is to make clear on the MSXHID wiki that the detection of analog (timed) controller devices relies on a specific wiring (below), and it is recommended to follow such wiring for new devices built by the community.

  MSX-Paddle                   : 3Eh,3Fh,3Fh -> 1 timer  at UP
  Yamaha MMP-01 music pad      : 3Ch,3Fh,3Fh -> 2 timers at UP and DOWN
  IBM-PC DA15 joystick adapter : 3Ah,3Fh,3Fh -> 2 timers at UP and LEFT
  Atari dual-paddle adapter    : 36h,3Fh,3Fh -> 2 timers at UP and RIGHT
  Dual-axis analog controller  : 30h,3Fh,3Fh -> 4 timers at UP, DOWN, LEFT, RIGHT
Page 5/5
1 | 2 | 3 | 4 |