⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 input.h

📁 NES game Emulator in Linux.c and asm codes.
💻 H
字号:
/*

SNEeSe, an Open Source Super NES emulator.


Copyright (c) 1998-2004 Charles Bilyue'.
Portions Copyright (c) 2003-2004 Daniel Horchner.

This is free software.  See 'LICENSE' for details.
You must read and accept the license prior to use.

*/

#ifndef SNEeSe_input_h
#define SNEeSe_input_h

#include "misc.h"

#define JOYSTICK_MAX_JOYSTICKS 4
#define JOYSTICK_MAX_STICKS 32
#define JOYSTICK_MAX_AXES_PER_STICK 4
#define JOYSTICK_MAX_BUTTONS 256
#define JOYSTICK_OFFSET(joystick) \
 (-(1 + joystick) * (2 * (JOYSTICK_MAX_BUTTONS + \
 (JOYSTICK_MAX_STICKS * JOYSTICK_MAX_AXES_PER_STICK * 2))))

#define JOYSTICK_STICKS_OFFSET 0
#define JOYSTICK_STICK_OFFSET(stick) \
 (JOYSTICK_STICKS_OFFSET + \
 (stick * JOYSTICK_MAX_AXES_PER_STICK * 2) / 128 * 256 + \
 (stick * JOYSTICK_MAX_AXES_PER_STICK * 2) % 128)
#define JOYSTICK_BUTTONS_OFFSET \
 JOYSTICK_STICK_OFFSET(JOYSTICK_MAX_STICKS)
#define JOYSTICK_BUTTON_OFFSET(button) \
 (JOYSTICK_BUTTONS_OFFSET + button / 128 * 256 + (button & 127))

typedef struct {
 int up, down, left, right;
 int a, b, x, y, l, r, select, start;
} SNES_CONTROLLER_INPUTS;

EXTERN SNES_CONTROLLER_INPUTS input_player1, input_player2;

EXTERN signed char mouse_available;

EXTERN unsigned char CONTROLLER_1_TYPE;
EXTERN unsigned char CONTROLLER_2_TYPE;

EXTERN unsigned short MickeyRead;   /* MSB = Yyyyyyyy  LSB = Xxxxxxxx */
EXTERN unsigned char MouseButtons;

EXTERN void install_key_release_callback();
EXTERN void MickeyMouse(void);

EXTERN void scantotext(int scanc, char *text);
EXTERN int update_joystick_vkeys(void);

#endif /* !defined(SNEeSe_input_h) */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -