1
0
mirror of https://github.com/KarolS/millfork.git synced 2024-07-10 10:28:55 +00:00
millfork/docs/stdlib/input.md

74 lines
1.8 KiB
Markdown
Raw Normal View History

2019-07-15 12:21:50 +00:00
[< back to index](../doc_index.md)
2018-12-17 16:18:29 +00:00
## joy
The module contains global variables representing the state of the one-button joystick.
If the program is not using any joystick driver, the state of these variables is undefined.
2019-07-15 11:52:05 +00:00
To actually use this module, an appropriate joystick module must be used, such as `c64_joy`, `nes_joy` or `gb_joy`.
2018-12-17 16:18:29 +00:00
#### `sbyte input_dx`
Horizontal joystick movement. 1 if right, -1 if left, 0 if neither.
#### `sbyte input_dy`
2019-09-16 20:48:21 +00:00
Vertical joystick movement. 1 if down, -1 if up, 0 if neither.
2018-12-17 16:18:29 +00:00
#### `byte input_btn`
2019-10-23 09:03:01 +00:00
1 if main button pressed, 0 if not pressed.
2018-12-17 16:18:29 +00:00
#### `void reset_joy()`
Resets the state variables.
The default implementation resets only the main button.
May be overridden by a strong alias on some platforms that have more buttons.
2018-12-17 16:18:29 +00:00
## null_joy_default
This module set the default joystick to no joystick.
#### `alias read_joy`
A reserved name for reading the default joystick.
2018-12-17 16:18:29 +00:00
## mouse
The `mouse` module automatically imports the `x_coord` module.
The module contains global variables representing the state of the mouse.
If the program is not using any mouse driver, the state of these variables is undefined.
2019-07-15 11:52:05 +00:00
To actually use this module, an appropriate mouse module must be used, such as `c1531`.
2018-12-17 16:18:29 +00:00
#### `x_coord mouse_x`
Mouse X position.
#### `byte mouse_y`
Mouse Y position.
#### `byte mouse_lbm`
1 if the left mouse button is being pressed, 0 otherwise
#### `byte mouse_rbm`
1 if the right mouse button is being pressed, 0 otherwise
## `x_coord` module
#### `alias x_coord`
The type for representing horizontal screen coordinates.
It's `byte` if the screen is 256 pixels wide or less,
or `word` if the screen is more that 256 pixels wide.
## null_mouse_default
2019-06-05 09:46:06 +00:00
This module set the default mouse to no mouse.
2018-12-17 16:18:29 +00:00
#### `void read_mouse()`