One of the users at msx.org tech forums asked if was possible to use Atari 7800 joypads in MSX.
The 7800 controllers are very similar to 2600 and therefore to MSX. The main difference is that to maintain compatibility with 2600 joysticks whilst providing two buttons, the 7800 used active high buttons on pins 5 and 9 which are used in 2600 for paddle inputs.
The straightforward solution is to invert the signals and that can be accomplished by a pair of NPN transistors.
Controller and adapter schematics, side by side, for better understanding.