Difference between revisions of "MultiPlay"

From CPCWiki - THE Amstrad CPC encyclopedia!
Jump to: navigation, search
(Technical information)
Line 24: Line 24:
 
</pre>
 
</pre>
  
== Technical information ==
+
About usages:
 +
 
 +
- Reading from BASIC with 50Hz interrupt is fine to handle a fast char pointer with acceleration.
 +
 
 +
- Reading from ASM with 300Hz interrupt is fine to handle a fast pixel pointer with acceleration.
 +
 
 +
== I/O ports ==
  
 
Port &F990 : 0321RLDU : Input A, joystick and buttons
 
Port &F990 : 0321RLDU : Input A, joystick and buttons
Line 42: Line 48:
  
 
&F996 and &F997 ports are unused.
 
&F996 and &F997 ports are unused.
 
 
About usages:
 
 
- Reading from BASIC with 50Hz interrupt is fine to handle a fast char pointer with acceleration.
 
 
- Reading from ASM with 300Hz interrupt is fine to handle a fast pixel pointer with acceleration.
 
  
 
== Downloads ==
 
== Downloads ==

Revision as of 15:20, 31 May 2024

The MultiPlay allows to add two controllers on the expansion port. It is easy to use them from BASIC, with the INP() command.

Each controller port can be set with two inputs modes:

  • AMS = Amstrad joystick and GX4000 gamepad
  • AMI = Amiga joystick / mouse (and compatible)

Each mouse sensitivity is 200dpi / 4bit acceleration.  (DK'Tronics mouse is 50dpi / 1bit) Last but not least: Left, Middle and Right buttons are supported.

50Hz games support w/o conflict. It is handled like arcade machines!

Technical

200 DPI (1 inch = 200 pixel movement)

         ________          ________
 A _____|        |________|        |________
             ________          ________        
 B _________|        |________|        |________

200 DPI |1  |2   |3  |4   |5  |6   |7  |8                                   
 50 DPI |1                |2 

About usages:

- Reading from BASIC with 50Hz interrupt is fine to handle a fast char pointer with acceleration.

- Reading from ASM with 300Hz interrupt is fine to handle a fast pixel pointer with acceleration.

I/O ports

Port &F990 : 0321RLDU : Input A, joystick and buttons

Port &F991 : 0321RLDU : Input B, joystick and buttons

Port &F992 : 0000XXXX : Input A, mouse X

Port &F993 : 0000YYYY : Input A, mouse Y

Port &F994 : 0000XXXX : Input B, mouse X

Port &F995 : 0000YYYY : Input B, mouse Y


Buttons 1, 2, 3 are the same for joystick and mouse input A/B.

&F996 and &F997 ports are unused.

Downloads

  • Any MultiPlay example or driver software exists?