mirror of
https://github.com/RevCurtisP/C02.git
synced 2024-11-24 15:31:17 +00:00
35377b5807
commit ed00e1d1b5a9783a72dade3f3676b161a9cfe287 Author: Curtis F Kaylor <revcurtis@gmail.com> Date: Sun Sep 9 22:20:49 2018 -0400 Documented joystk, paddle, and lgtpen modules commit ec0a5ede8d1b043fcf0094ea653255a808dbf8d3 Author: Curtis F Kaylor <revcurtis@gmail.com> Date: Sun Sep 9 20:31:11 2018 -0400 Added joystick, paddle, and lightpen test programs commit 7b787f432e2f4f7ae5d7f0053ade1d3586a4fad1 Author: Curtis F Kaylor <revcurtis@gmail.com> Date: Sun Sep 9 20:30:03 2018 -0400 Updated Apple II and VIC-20 Batch Files commit 50568294349d7e3c6b7d0d364aeaece73c9e4ab6 Author: Curtis F Kaylor <revcurtis@gmail.com> Date: Sun Sep 9 20:28:09 2018 -0400 Separated light pen code into separate files commit d45e59f73d55eef1d30c591d19a043ad79cfd81a Author: Curtis F Kaylor <revcurtis@gmail.com> Date: Sun Sep 9 19:28:56 2018 -0400 Moved code for paddles into separate include files commit fc5c5472d758c960332ea14105d5ec4a7c8cbbfb Author: Curtis F Kaylor <revcurtis@gmail.com> Date: Sun Sep 9 16:15:32 2018 -0400 Added system specific module 'joystk'
49 lines
2.1 KiB
Plaintext
49 lines
2.1 KiB
Plaintext
Joystick Functions for C02 Programs
|
|
|
|
This module contains constants and a function for reading digital joysticks
|
|
(the type used on Atari and Commodore 8-bit computers). For systems that use
|
|
analog joysticks (such as the Apple II), the paddle module should be used.
|
|
|
|
The constants and assembly code vary by system, so when invoking the
|
|
cross-compilers, the command line option -s must be used to ensure that
|
|
the correct header files are included.
|
|
|
|
At the beginning of the program use the directives
|
|
|
|
#include <joystk.h02>
|
|
|
|
The following constants are defined:
|
|
|
|
#JYSTKS Maximum number of joysticks supported by system.
|
|
|
|
For systems with no joystick support, this will be 0.
|
|
|
|
#JOYUP Joystick Switch Bitmask - Up
|
|
#JOYDN Joystick Switch Bitmask - Down
|
|
#JOYLF Joystick Switch Bitmask - Left
|
|
#JOYRT Joystick Switch Bitmask - Right
|
|
#JOYB0 Joystick Switch Bitmask - Fire Button
|
|
|
|
The following functions are defined:
|
|
|
|
j = joystk(n); Returns the current state of joystick n.
|
|
|
|
If n is greater than or equal to #JYSTKS then $FF
|
|
will be returned. Otherwise, a byte representing the
|
|
state of the joystick switches will be returned.
|
|
|
|
Each switch in the joystick has a corresponding bit
|
|
in the result which will be 1 if the switch is
|
|
depressed or 0 if it is not.
|
|
|
|
The specific assignment of bits varies by system, so
|
|
the joystick bitmask constants should be used to check
|
|
the state of the individual switches.
|
|
|
|
The state of an individual switch can be determined by
|
|
doing a bitwise and of the result with the corresponding
|
|
bitmask constant, which will result in a non-zero value
|
|
if and only if that switch is depressed.
|
|
|
|
Note: This library has no external dependencies.
|