psxpaddriver.h

来自「ps1开发设计资料」· C头文件 代码 · 共 76 行

H
76
字号
////////////////////////////////////
// PSX Pad data structure
//
// File : psxPadDriver.h
//
// Author : L. Saint-Marcel
//		    lstmarcel@yahoo.fr
//
// Date : 12/12/01
////////////////////////////////////

#ifndef _PSX_PAD_SERIAL_DRIVER_H__
#define _PSX_PAD_SERIAL_DRIVER_H__

typedef enum psxType{
	PAD_DIGITAL,
	PAD_NEGCON,
	PAD_ANA_RED,
	PAD_ANALOG,
	PAD_UNCKNOWN,

	NBR_PAD_TYPE
} psxType;

static unsigned char psxTypeArray[NBR_PAD_TYPE]={
	0x41, // PAD_DIGITAL
	0x23, // PAD_NEGCON
	0x73, // PAD_ANA_RED
	0x53, // PAD_ANALOG
	0x00  // PAD_UNCKNOWN
};

static unsigned char psxNbrData[NBR_PAD_TYPE]={
	2, // PAD_DIGITAL
	6, // PAD_NEGCON
	6, // PAD_ANA_RED
	6, // PAD_ANALOG
	0  // PAD_UNCKNOWN
};

typedef struct psxPad {
	psxType	type;

	int	btnStart;
	int btnSelect;

	int	btnUp;
	int btnDown;
	int btnRight;
	int btnLeft;

	int btnL1;
	int btnL2;
	int btnR1;
	int btnR2;

	int btnCross;
	int btnCircle;
	int btnSquare;
	int btnTriangle;

	double joyRightDown;
	double joyRightRight;
	double joyLeftDown;
	double joyLeftRight;
} psxPad;

// update psxPad struct with data received from serial port
extern void updatePsxPadData(psxPad *pad, 
							 unsigned char data[7]);
// display psxPad struct
extern void psxPrint(psxPad *pad);
// display psxPad struct on only one line
extern void psxPrintOneLine(psxPad *pad);

#endif

⌨️ 快捷键说明

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