Fennix  1.0.0
Full Documentation
Loading...
Searching...
No Matches
aip.h File Reference

Go to the source code of this file.

Data Structures

union  PS2_STATUSES
 
union  PS2_CONFIGURATION
 
union  PS2_OUTPUT_PORT
 
union  PS2_KBD_TYPEMATIC
 
struct  PS2_MOUSE_PACKET
 
struct  PS2_STATUSES.__unnamed1__
 
struct  PS2_CONFIGURATION.__unnamed3__
 
struct  PS2_OUTPUT_PORT.__unnamed5__
 
struct  PS2_KBD_TYPEMATIC.__unnamed7__
 
union  PS2_MOUSE_PACKET.Base
 
union  PS2_MOUSE_PACKET.ZMovement
 

Macros

#define PIC1_CMD   0x20
 
#define PIC1_DATA   (PIC1_CMD + 1)
 
#define PIC2_CMD   0xA0
 
#define PIC2_DATA   (PIC2_CMD + 1)
 
#define _PIC_EOI   0x20
 
#define PS2_DATA   0x60
 
#define PS2_STATUS   0x64
 
#define PS2_CMD   PS2_STATUS
 
#define PS2_ACK   0xFA
 
#define PS2_TEST_PASSED   0x55
 
#define PS2_TEST_FAILED   0xFC
 
#define PS2_CMD_READ_CONFIG   0x20
 
#define PS2_CMD_READ_CONFIG_N(n)   (PS2_CMD_READ_CONFIG + n)
 
#define PS2_CMD_WRITE_CONFIG   0x60
 
#define PS2_CMD_WRITE_CONFIG_N(n)   (PS2_CMD_WRITE_CONFIG + n)
 
#define PS2_CMD_DISABLE_PORT_2   0xA7
 
#define PS2_CMD_ENABLE_PORT_2   0xA8
 
#define PS2_CMD_TEST_PORT_2   0xA9
 
#define PS2_CMD_TEST_CONTROLLER   0xAA
 
#define PS2_CMD_TEST_PORT_1   0xAB
 
#define PS2_CMD_DIAGNOSTIC_DUMP   0xAC
 
#define PS2_CMD_DISABLE_PORT_1   0xAD
 
#define PS2_CMD_ENABLE_PORT_1   0xAE
 
#define PS2_CMD_READ_INPUT_PORT   0xC0
 
#define PS2_CMD_COPY_INPUT_0_3_TO_4_7_STATUS   0xC1
 
#define PS2_CMD_COPY_INPUT_4_7_TO_4_7_STATUS   0xC2
 
#define PS2_CMD_READ_OUTPUT_PORT   0xD0
 
#define PS2_CMD_WRITE_NEXT_BYTE_TO_OUTPUT_PORT   0xD1
 
#define PS2_CMD_WRITE_NEXT_BYTE_TO_PS2_PORT_1_OUTPUT   0xD2
 
#define PS2_CMD_WRITE_NEXT_BYTE_TO_PS2_PORT_2_OUTPUT   0xD3
 
#define PS2_CMD_WRITE_NEXT_BYTE_TO_PS2_PORT_2_INPUT   0xD4
 
#define PS2_CMD_PULSE_OUTPUT_LINE(n)   (0xF0 + n)
 
#define WaitOutput   PS2Wait(DriverID, true)
 
#define WaitInput   PS2Wait(DriverID, false)
 
#define PS2_KBD_CMD_SET_LEDS   0xED
 
#define PS2_KBD_CMD_ECHO   0xEE
 
#define PS2_KBD_CMD_SCAN_CODE_SET   0xF0
 
#define PS2_KBD_CMD_IDENTIFY   0xF2
 
#define PS2_KBD_CMD_TYPEMATIC   0xF3
 
#define PS2_KBD_CMD_ENABLE_SCANNING   0xF4
 
#define PS2_KBD_CMD_DISABLE_SCANNING   0xF5
 
#define PS2_KBD_CMD_DEFAULTS   0xF6
 
#define PS2_KBD_CMD_ALL_TYPEMATIC   0xF7
 
#define PS2_KBD_CMD_ALL_MAKE_RELEASE   0xF8
 
#define PS2_KBD_CMD_ALL_MAKE   0xF9
 
#define PS2_KBD_CMD_ALL_TYPEMATIC_MAKE_RELEASE   0xFA
 
#define PS2_KBD_CMD_SPECIFIC_TYPEMATIC   0xFB
 
#define PS2_KBD_CMD_SPECIFIC_MAKE_RELEASE   0xFC
 
#define PS2_KBD_CMD_SPECIFIC_MAKE   0xFD
 
#define PS2_KBD_CMD_RESEND   0xFE
 
#define PS2_KBD_CMD_RESET   0xFF
 
#define PS2_KBD_RESP_ACK   0xFA
 
#define PS2_KBD_RESP_ECHO   0xEE
 
#define PS2_KBD_RESP_RESEND   0xFE
 
#define PS2_KBD_RESP_TEST_PASSED   0xAA
 
#define PS2_KBD_RESP_TEST_FAILED   0xFC
 
#define PS2_KBD_RESP_TEST_FAILED_2   0xFD
 
#define PS2_MOUSE_CMD_SET_SCALING_1_1   0xE6
 
#define PS2_MOUSE_CMD_SET_SCALING_2_1   0xE7
 
#define PS2_MOUSE_CMD_SET_RESOLUTION   0xE8
 
#define PS2_MOUSE_CMD_GET_STATUS   0xE9
 
#define PS2_MOUSE_CMD_SET_STREAM_MODE   0xEA
 
#define PS2_MOUSE_CMD_READ_DATA   0xEB
 
#define PS2_MOUSE_CMD_RESET_WRAP_MODE   0xEC
 
#define PS2_MOUSE_CMD_SET_WRAP_MODE   0xEE
 
#define PS2_MOUSE_CMD_SET_REMOTE_MODE   0xF0
 
#define PS2_MOUSE_CMD_READ_ID   0xF2
 
#define PS2_MOUSE_CMD_SET_SAMPLE_RATE   0xF3
 
#define PS2_MOUSE_CMD_ENABLE_DATA_REPORTING   0xF4
 
#define PS2_MOUSE_CMD_DISABLE_DATA_REPORTING   0xF5
 
#define PS2_MOUSE_CMD_SET_DEFAULTS   0xF6
 
#define PS2_MOUSE_CMD_RESEND   0xFE
 
#define PS2_MOUSE_CMD_RESET   0xFF
 
#define PS2_MOUSE_RESP_ACK   0xFA
 
#define PS2_MOUSE_RESP_RESEND   0xFE
 
#define PS2_MOUSE_RESP_TEST_PASSED   0xAA
 
#define PS2_MOUSE_RESP_TEST_FAILED   0xFC
 

Enumerations

enum  PS2_KBD_LEDS { PS2_KBD_LED_SCROLL_LOCK = 1 , PS2_KBD_LED_NUM_LOCK = 2 , PS2_KBD_LED_CAPS_LOCK = 4 }
 
enum  PS2_KBD_SCAN_CODE_SET {
  PS2_KBD_SCAN_CODE_GET_CURRENT = 0 , PS2_KBD_SCAN_CODE_SET_1 = 1 , PS2_KBD_SCAN_CODE_SET_2 = 2 , PS2_KBD_SCAN_CODE_SET_3 = 3 ,
  PS2_KBD_SC_SET_1 = 0x43 , PS2_KBD_SC_SET_2 = 0x41 , PS2_KBD_SC_SET_3 = 0x3F
}
 
enum  PS2_MOUSE_RESOLUTION { PS2_MOUSE_RES_1 = 0 , PS2_MOUSE_RES_2 = 1 , PS2_MOUSE_RES_4 = 2 , PS2_MOUSE_RES_8 = 3 }
 

Functions

void PIC_EOI (uint8_t IRQ)
 
void IRQ_MASK (uint8_t IRQ)
 
void IRQ_UNMASK (uint8_t IRQ)
 
void PS2Wait (const bool Output)
 
void PS2WriteCommand (uint8_t Command)
 
void PS2WriteData (uint8_t Data)
 
uint8_t PS2ReadData ()
 
uint8_t PS2ReadStatus ()
 
uint8_t PS2ReadAfterACK ()
 
void PS2ClearOutputBuffer ()
 
int PS2ACKTimeout ()
 

Variables

uint8_t LeftButton
 
uint8_t RightButton
 
uint8_t MiddleButton
 
uint8_t Always1
 
uint8_t XSign
 
uint8_t YSign
 
uint8_t XOverflow
 
uint8_t YOverflow
 
uint8_t Z
 
uint8_t Button4
 
uint8_t Button5
 
uint8_t Always0
 
uint8_t Always0_2
 

Data Structure Documentation

◆ PS2_STATUSES

union PS2_STATUSES

Definition at line 58 of file aip.h.

Data Fields
struct PS2_STATUSES.__unnamed1__ __unnamed__
uint8_t Raw

◆ PS2_CONFIGURATION

union PS2_CONFIGURATION

Definition at line 74 of file aip.h.

Data Fields
struct PS2_CONFIGURATION.__unnamed3__ __unnamed__
uint8_t Raw

◆ PS2_OUTPUT_PORT

union PS2_OUTPUT_PORT

Definition at line 90 of file aip.h.

Data Fields
struct PS2_OUTPUT_PORT.__unnamed5__ __unnamed__
uint8_t Raw

◆ PS2_KBD_TYPEMATIC

union PS2_KBD_TYPEMATIC

Definition at line 167 of file aip.h.

Data Fields
struct PS2_KBD_TYPEMATIC.__unnamed7__ __unnamed__
uint8_t Raw

◆ PS2_MOUSE_PACKET

struct PS2_MOUSE_PACKET

Definition at line 224 of file aip.h.

Data Fields
union PS2_MOUSE_PACKET.Base Base
uint8_t XMovement
uint8_t YMovement
union PS2_MOUSE_PACKET.ZMovement ZMovement

◆ PS2_STATUSES.__unnamed1__

struct PS2_STATUSES.__unnamed1__

Definition at line 60 of file aip.h.

Data Fields
uint8_t CommandData: 1
uint8_t InputBufferFull: 1
uint8_t OutputBufferFull: 1
uint8_t ParityError: 1
uint8_t SystemFlag: 1
uint8_t TimeoutError: 1
uint8_t Unknown1: 1
uint8_t Unknown2: 1

◆ PS2_CONFIGURATION.__unnamed3__

struct PS2_CONFIGURATION.__unnamed3__

Definition at line 76 of file aip.h.

Data Fields
uint8_t Port1Clock: 1
uint8_t Port1Interrupt: 1
uint8_t Port1Translation: 1
uint8_t Port2Clock: 1
uint8_t Port2Interrupt: 1
uint8_t SystemFlag: 1
uint8_t Zero0: 1
uint8_t Zero1: 1

◆ PS2_OUTPUT_PORT.__unnamed5__

struct PS2_OUTPUT_PORT.__unnamed5__

Definition at line 92 of file aip.h.

Data Fields
uint8_t A20Gate: 1
uint8_t Port1InputBufferFull: 1
uint8_t Port1OutputBufferFull: 1
uint8_t Port2Clock: 1
uint8_t Port2Data: 1
uint8_t Port2InputBufferFull: 1
uint8_t Port2OutputBufferFull: 1
uint8_t SystemReset: 1

◆ PS2_KBD_TYPEMATIC.__unnamed7__

struct PS2_KBD_TYPEMATIC.__unnamed7__

Definition at line 169 of file aip.h.

Data Fields
uint8_t Delay: 2

00b - 250ms 01b - 500ms 10b - 750ms 11b - 1000ms

uint8_t RepeatRate: 5

00000b - 30Hz 11111b - 2Hz

uint8_t Zero: 1

Must be zero

◆ PS2_MOUSE_PACKET.Base

union PS2_MOUSE_PACKET.Base

Definition at line 226 of file aip.h.

Data Fields
uint8_t Raw

◆ PS2_MOUSE_PACKET.ZMovement

union PS2_MOUSE_PACKET.ZMovement

Definition at line 245 of file aip.h.

Data Fields
uint8_t Raw

Macro Definition Documentation

◆ _PIC_EOI

#define _PIC_EOI   0x20

Definition at line 27 of file aip.h.

◆ PIC1_CMD

#define PIC1_CMD   0x20

Definition at line 23 of file aip.h.

◆ PIC1_DATA

#define PIC1_DATA   (PIC1_CMD + 1)

Definition at line 24 of file aip.h.

◆ PIC2_CMD

#define PIC2_CMD   0xA0

Definition at line 25 of file aip.h.

◆ PIC2_DATA

#define PIC2_DATA   (PIC2_CMD + 1)

Definition at line 26 of file aip.h.

◆ PS2_ACK

#define PS2_ACK   0xFA

Definition at line 32 of file aip.h.

◆ PS2_CMD

#define PS2_CMD   PS2_STATUS

Definition at line 31 of file aip.h.

◆ PS2_CMD_COPY_INPUT_0_3_TO_4_7_STATUS

#define PS2_CMD_COPY_INPUT_0_3_TO_4_7_STATUS   0xC1

Definition at line 49 of file aip.h.

◆ PS2_CMD_COPY_INPUT_4_7_TO_4_7_STATUS

#define PS2_CMD_COPY_INPUT_4_7_TO_4_7_STATUS   0xC2

Definition at line 50 of file aip.h.

◆ PS2_CMD_DIAGNOSTIC_DUMP

#define PS2_CMD_DIAGNOSTIC_DUMP   0xAC

Definition at line 45 of file aip.h.

◆ PS2_CMD_DISABLE_PORT_1

#define PS2_CMD_DISABLE_PORT_1   0xAD

Definition at line 46 of file aip.h.

◆ PS2_CMD_DISABLE_PORT_2

#define PS2_CMD_DISABLE_PORT_2   0xA7

Definition at line 40 of file aip.h.

◆ PS2_CMD_ENABLE_PORT_1

#define PS2_CMD_ENABLE_PORT_1   0xAE

Definition at line 47 of file aip.h.

◆ PS2_CMD_ENABLE_PORT_2

#define PS2_CMD_ENABLE_PORT_2   0xA8

Definition at line 41 of file aip.h.

◆ PS2_CMD_PULSE_OUTPUT_LINE

#define PS2_CMD_PULSE_OUTPUT_LINE (   n)    (0xF0 + n)

Definition at line 56 of file aip.h.

◆ PS2_CMD_READ_CONFIG

#define PS2_CMD_READ_CONFIG   0x20

Definition at line 36 of file aip.h.

◆ PS2_CMD_READ_CONFIG_N

#define PS2_CMD_READ_CONFIG_N (   n)    (PS2_CMD_READ_CONFIG + n)

Definition at line 37 of file aip.h.

◆ PS2_CMD_READ_INPUT_PORT

#define PS2_CMD_READ_INPUT_PORT   0xC0

Definition at line 48 of file aip.h.

◆ PS2_CMD_READ_OUTPUT_PORT

#define PS2_CMD_READ_OUTPUT_PORT   0xD0

Definition at line 51 of file aip.h.

◆ PS2_CMD_TEST_CONTROLLER

#define PS2_CMD_TEST_CONTROLLER   0xAA

Definition at line 43 of file aip.h.

◆ PS2_CMD_TEST_PORT_1

#define PS2_CMD_TEST_PORT_1   0xAB

Definition at line 44 of file aip.h.

◆ PS2_CMD_TEST_PORT_2

#define PS2_CMD_TEST_PORT_2   0xA9

Definition at line 42 of file aip.h.

◆ PS2_CMD_WRITE_CONFIG

#define PS2_CMD_WRITE_CONFIG   0x60

Definition at line 38 of file aip.h.

◆ PS2_CMD_WRITE_CONFIG_N

#define PS2_CMD_WRITE_CONFIG_N (   n)    (PS2_CMD_WRITE_CONFIG + n)

Definition at line 39 of file aip.h.

◆ PS2_CMD_WRITE_NEXT_BYTE_TO_OUTPUT_PORT

#define PS2_CMD_WRITE_NEXT_BYTE_TO_OUTPUT_PORT   0xD1

Definition at line 52 of file aip.h.

◆ PS2_CMD_WRITE_NEXT_BYTE_TO_PS2_PORT_1_OUTPUT

#define PS2_CMD_WRITE_NEXT_BYTE_TO_PS2_PORT_1_OUTPUT   0xD2

Definition at line 53 of file aip.h.

◆ PS2_CMD_WRITE_NEXT_BYTE_TO_PS2_PORT_2_INPUT

#define PS2_CMD_WRITE_NEXT_BYTE_TO_PS2_PORT_2_INPUT   0xD4

Definition at line 55 of file aip.h.

◆ PS2_CMD_WRITE_NEXT_BYTE_TO_PS2_PORT_2_OUTPUT

#define PS2_CMD_WRITE_NEXT_BYTE_TO_PS2_PORT_2_OUTPUT   0xD3

Definition at line 54 of file aip.h.

◆ PS2_DATA

#define PS2_DATA   0x60

Definition at line 29 of file aip.h.

◆ PS2_KBD_CMD_ALL_MAKE

#define PS2_KBD_CMD_ALL_MAKE   0xF9

Definition at line 133 of file aip.h.

◆ PS2_KBD_CMD_ALL_MAKE_RELEASE

#define PS2_KBD_CMD_ALL_MAKE_RELEASE   0xF8

Definition at line 132 of file aip.h.

◆ PS2_KBD_CMD_ALL_TYPEMATIC

#define PS2_KBD_CMD_ALL_TYPEMATIC   0xF7

Definition at line 131 of file aip.h.

◆ PS2_KBD_CMD_ALL_TYPEMATIC_MAKE_RELEASE

#define PS2_KBD_CMD_ALL_TYPEMATIC_MAKE_RELEASE   0xFA

Definition at line 134 of file aip.h.

◆ PS2_KBD_CMD_DEFAULTS

#define PS2_KBD_CMD_DEFAULTS   0xF6

Definition at line 130 of file aip.h.

◆ PS2_KBD_CMD_DISABLE_SCANNING

#define PS2_KBD_CMD_DISABLE_SCANNING   0xF5

Definition at line 129 of file aip.h.

◆ PS2_KBD_CMD_ECHO

#define PS2_KBD_CMD_ECHO   0xEE

Definition at line 124 of file aip.h.

◆ PS2_KBD_CMD_ENABLE_SCANNING

#define PS2_KBD_CMD_ENABLE_SCANNING   0xF4

Definition at line 128 of file aip.h.

◆ PS2_KBD_CMD_IDENTIFY

#define PS2_KBD_CMD_IDENTIFY   0xF2

Definition at line 126 of file aip.h.

◆ PS2_KBD_CMD_RESEND

#define PS2_KBD_CMD_RESEND   0xFE

Definition at line 138 of file aip.h.

◆ PS2_KBD_CMD_RESET

#define PS2_KBD_CMD_RESET   0xFF

Definition at line 139 of file aip.h.

◆ PS2_KBD_CMD_SCAN_CODE_SET

#define PS2_KBD_CMD_SCAN_CODE_SET   0xF0

Definition at line 125 of file aip.h.

◆ PS2_KBD_CMD_SET_LEDS

#define PS2_KBD_CMD_SET_LEDS   0xED

Definition at line 123 of file aip.h.

◆ PS2_KBD_CMD_SPECIFIC_MAKE

#define PS2_KBD_CMD_SPECIFIC_MAKE   0xFD

Definition at line 137 of file aip.h.

◆ PS2_KBD_CMD_SPECIFIC_MAKE_RELEASE

#define PS2_KBD_CMD_SPECIFIC_MAKE_RELEASE   0xFC

Definition at line 136 of file aip.h.

◆ PS2_KBD_CMD_SPECIFIC_TYPEMATIC

#define PS2_KBD_CMD_SPECIFIC_TYPEMATIC   0xFB

Definition at line 135 of file aip.h.

◆ PS2_KBD_CMD_TYPEMATIC

#define PS2_KBD_CMD_TYPEMATIC   0xF3

Definition at line 127 of file aip.h.

◆ PS2_KBD_RESP_ACK

#define PS2_KBD_RESP_ACK   0xFA

Definition at line 141 of file aip.h.

◆ PS2_KBD_RESP_ECHO

#define PS2_KBD_RESP_ECHO   0xEE

Definition at line 142 of file aip.h.

◆ PS2_KBD_RESP_RESEND

#define PS2_KBD_RESP_RESEND   0xFE

Definition at line 143 of file aip.h.

◆ PS2_KBD_RESP_TEST_FAILED

#define PS2_KBD_RESP_TEST_FAILED   0xFC

Definition at line 145 of file aip.h.

◆ PS2_KBD_RESP_TEST_FAILED_2

#define PS2_KBD_RESP_TEST_FAILED_2   0xFD

Definition at line 146 of file aip.h.

◆ PS2_KBD_RESP_TEST_PASSED

#define PS2_KBD_RESP_TEST_PASSED   0xAA

Definition at line 144 of file aip.h.

◆ PS2_MOUSE_CMD_DISABLE_DATA_REPORTING

#define PS2_MOUSE_CMD_DISABLE_DATA_REPORTING   0xF5

Definition at line 206 of file aip.h.

◆ PS2_MOUSE_CMD_ENABLE_DATA_REPORTING

#define PS2_MOUSE_CMD_ENABLE_DATA_REPORTING   0xF4

Definition at line 205 of file aip.h.

◆ PS2_MOUSE_CMD_GET_STATUS

#define PS2_MOUSE_CMD_GET_STATUS   0xE9

Definition at line 196 of file aip.h.

◆ PS2_MOUSE_CMD_READ_DATA

#define PS2_MOUSE_CMD_READ_DATA   0xEB

Definition at line 198 of file aip.h.

◆ PS2_MOUSE_CMD_READ_ID

#define PS2_MOUSE_CMD_READ_ID   0xF2

Definition at line 202 of file aip.h.

◆ PS2_MOUSE_CMD_RESEND

#define PS2_MOUSE_CMD_RESEND   0xFE

Definition at line 208 of file aip.h.

◆ PS2_MOUSE_CMD_RESET

#define PS2_MOUSE_CMD_RESET   0xFF

Definition at line 209 of file aip.h.

◆ PS2_MOUSE_CMD_RESET_WRAP_MODE

#define PS2_MOUSE_CMD_RESET_WRAP_MODE   0xEC

Definition at line 199 of file aip.h.

◆ PS2_MOUSE_CMD_SET_DEFAULTS

#define PS2_MOUSE_CMD_SET_DEFAULTS   0xF6

Definition at line 207 of file aip.h.

◆ PS2_MOUSE_CMD_SET_REMOTE_MODE

#define PS2_MOUSE_CMD_SET_REMOTE_MODE   0xF0

Definition at line 201 of file aip.h.

◆ PS2_MOUSE_CMD_SET_RESOLUTION

#define PS2_MOUSE_CMD_SET_RESOLUTION   0xE8

Definition at line 195 of file aip.h.

◆ PS2_MOUSE_CMD_SET_SAMPLE_RATE

#define PS2_MOUSE_CMD_SET_SAMPLE_RATE   0xF3

Values: 10, 20, 40, 60, 80, 100, 200

Definition at line 204 of file aip.h.

◆ PS2_MOUSE_CMD_SET_SCALING_1_1

#define PS2_MOUSE_CMD_SET_SCALING_1_1   0xE6

Definition at line 193 of file aip.h.

◆ PS2_MOUSE_CMD_SET_SCALING_2_1

#define PS2_MOUSE_CMD_SET_SCALING_2_1   0xE7

Definition at line 194 of file aip.h.

◆ PS2_MOUSE_CMD_SET_STREAM_MODE

#define PS2_MOUSE_CMD_SET_STREAM_MODE   0xEA

Definition at line 197 of file aip.h.

◆ PS2_MOUSE_CMD_SET_WRAP_MODE

#define PS2_MOUSE_CMD_SET_WRAP_MODE   0xEE

Definition at line 200 of file aip.h.

◆ PS2_MOUSE_RESP_ACK

#define PS2_MOUSE_RESP_ACK   0xFA

Definition at line 211 of file aip.h.

◆ PS2_MOUSE_RESP_RESEND

#define PS2_MOUSE_RESP_RESEND   0xFE

Definition at line 212 of file aip.h.

◆ PS2_MOUSE_RESP_TEST_FAILED

#define PS2_MOUSE_RESP_TEST_FAILED   0xFC

Definition at line 214 of file aip.h.

◆ PS2_MOUSE_RESP_TEST_PASSED

#define PS2_MOUSE_RESP_TEST_PASSED   0xAA

Definition at line 213 of file aip.h.

◆ PS2_STATUS

#define PS2_STATUS   0x64

Definition at line 30 of file aip.h.

◆ PS2_TEST_FAILED

#define PS2_TEST_FAILED   0xFC

Definition at line 34 of file aip.h.

◆ PS2_TEST_PASSED

#define PS2_TEST_PASSED   0x55

Definition at line 33 of file aip.h.

◆ WaitInput

#define WaitInput   PS2Wait(DriverID, false)

Definition at line 121 of file aip.h.

◆ WaitOutput

#define WaitOutput   PS2Wait(DriverID, true)

Definition at line 120 of file aip.h.

Enumeration Type Documentation

◆ PS2_KBD_LEDS

Enumerator
PS2_KBD_LED_SCROLL_LOCK 
PS2_KBD_LED_NUM_LOCK 
PS2_KBD_LED_CAPS_LOCK 

Definition at line 148 of file aip.h.

149{
PS2_KBD_LEDS
Definition aip.h:149
@ PS2_KBD_LED_SCROLL_LOCK
Definition aip.h:150
@ PS2_KBD_LED_CAPS_LOCK
Definition aip.h:152
@ PS2_KBD_LED_NUM_LOCK
Definition aip.h:151

◆ PS2_KBD_SCAN_CODE_SET

Enumerator
PS2_KBD_SCAN_CODE_GET_CURRENT 
PS2_KBD_SCAN_CODE_SET_1 
PS2_KBD_SCAN_CODE_SET_2 
PS2_KBD_SCAN_CODE_SET_3 
PS2_KBD_SC_SET_1 
PS2_KBD_SC_SET_2 
PS2_KBD_SC_SET_3 

Definition at line 155 of file aip.h.

156{
161
162 PS2_KBD_SC_SET_1 = 0x43,
163 PS2_KBD_SC_SET_2 = 0x41,
164 PS2_KBD_SC_SET_3 = 0x3F
PS2_KBD_SCAN_CODE_SET
Definition aip.h:156
@ PS2_KBD_SC_SET_3
Definition aip.h:164
@ PS2_KBD_SCAN_CODE_GET_CURRENT
Definition aip.h:157
@ PS2_KBD_SCAN_CODE_SET_3
Definition aip.h:160
@ PS2_KBD_SCAN_CODE_SET_2
Definition aip.h:159
@ PS2_KBD_SC_SET_1
Definition aip.h:162
@ PS2_KBD_SC_SET_2
Definition aip.h:163
@ PS2_KBD_SCAN_CODE_SET_1
Definition aip.h:158

◆ PS2_MOUSE_RESOLUTION

Enumerator
PS2_MOUSE_RES_1 
PS2_MOUSE_RES_2 
PS2_MOUSE_RES_4 
PS2_MOUSE_RES_8 

Definition at line 216 of file aip.h.

217{
218 PS2_MOUSE_RES_1 = 0,
219 PS2_MOUSE_RES_2 = 1,
220 PS2_MOUSE_RES_4 = 2,
PS2_MOUSE_RESOLUTION
Definition aip.h:217
@ PS2_MOUSE_RES_2
Definition aip.h:219
@ PS2_MOUSE_RES_1
Definition aip.h:218
@ PS2_MOUSE_RES_8
Definition aip.h:221
@ PS2_MOUSE_RES_4
Definition aip.h:220

Function Documentation

◆ IRQ_MASK()

void IRQ_MASK ( uint8_t  IRQ)

◆ IRQ_UNMASK()

void IRQ_UNMASK ( uint8_t  IRQ)

◆ PIC_EOI()

void PIC_EOI ( uint8_t  IRQ)

◆ PS2ACKTimeout()

int PS2ACKTimeout ( )

◆ PS2ClearOutputBuffer()

void PS2ClearOutputBuffer ( )

◆ PS2ReadAfterACK()

uint8_t PS2ReadAfterACK ( )

◆ PS2ReadData()

uint8_t PS2ReadData ( )

◆ PS2ReadStatus()

uint8_t PS2ReadStatus ( )

◆ PS2Wait()

void PS2Wait ( const bool  Output)

◆ PS2WriteCommand()

void PS2WriteCommand ( uint8_t  Command)

◆ PS2WriteData()

void PS2WriteData ( uint8_t  Data)

Variable Documentation

◆ Always0

uint8_t Always0

Definition at line 3 of file aip.h.

◆ Always0_2

uint8_t Always0_2

Definition at line 4 of file aip.h.

◆ Always1

uint8_t Always1

Definition at line 3 of file aip.h.

◆ Button4

uint8_t Button4

Definition at line 1 of file aip.h.

◆ Button5

uint8_t Button5

Definition at line 2 of file aip.h.

◆ LeftButton

uint8_t LeftButton

Definition at line 0 of file aip.h.

◆ MiddleButton

uint8_t MiddleButton

Definition at line 2 of file aip.h.

◆ RightButton

uint8_t RightButton

Definition at line 1 of file aip.h.

◆ XOverflow

uint8_t XOverflow

Definition at line 6 of file aip.h.

◆ XSign

uint8_t XSign

Definition at line 4 of file aip.h.

◆ YOverflow

uint8_t YOverflow

Definition at line 7 of file aip.h.

◆ YSign

uint8_t YSign

Definition at line 5 of file aip.h.

◆ Z

uint8_t Z

Definition at line 0 of file aip.h.