KernOS
pic.h
Go to the documentation of this file.
1
//
2
// Created on 8/15/20.
3
//
4
5
#ifndef KERNOS_PIC_H
6
#define KERNOS_PIC_H
7
8
#include <
common.h
>
9
46
namespace
PIC
47
{
48
enum
ICW1_0
: uint8_t
49
{
50
NO_ICW4
= 0b0,
51
USE_ICW4
= 0b1
52
};
53
54
enum
ICW1_1
: uint8_t
55
{
56
CASCADE
= 0b00,
57
SINGLE
= 0b10
58
};
59
60
enum
ICW1_2
: uint8_t
61
{
62
INTRP_8B
= 0b000,
63
INTRP_4B
= 0b100
64
};
65
66
enum
ICW1_3
: uint8_t
67
{
68
EDGE_TRIGGERED
= 0b0000,
69
LEVEL_TRIGGERED
= 0b1000
70
};
71
72
enum
ICW1_4
: uint8_t
73
{
74
INVALID
= 0b00000,
75
USE_ICW1
= 0b10000
76
};
77
78
enum
ICW4_0
: uint8_t
79
{
80
MODE_8085
= 0b0,
81
MODE_8086
= 0b1
82
};
83
84
enum
ICW4_1
: uint8_t
85
{
86
EOI
= 0b00,
87
AUTO_EOI
= 0b10
88
};
89
90
enum
ICW4_4
: uint8_t
91
{
92
SEQUENTIAL
= 0b00000,
93
SPECIAL_FULLY_NESTED
= 0b10000
94
};
95
96
enum
OCW2
: uint8_t
97
{
98
NON_SPECIFIC_EOI
= 0b0010
'0000, ///< 0x20
99
NOP = 0b0100'
0000,
100
SPECIFIC_EOI
= 0b0110
'0000,
101
ROTATE_AEOI = 0b1000'
0000,
102
ROTATE_NON_SPEC_EOI
= 0b1010
'0000,
103
SET_PRIORITY_CMD = 0b1100'
0000,
104
ROTATE_SPEC_EOI
= 0b1110
'0000,
105
};
106
107
void Remap();
108
109
} // namespace PIC
110
111
#endif //KERNOS_PIC_H
PIC::ROTATE_SPEC_EOI
Definition:
pic.h:104
PIC::OCW2
OCW2
Definition:
pic.h:96
PIC::SPECIFIC_EOI
Definition:
pic.h:100
PIC::ICW4_4
ICW4_4
Definition:
pic.h:90
PIC::NO_ICW4
Definition:
pic.h:50
PIC::ICW1_0
ICW1_0
Definition:
pic.h:48
PIC::ICW4_1
ICW4_1
Definition:
pic.h:84
PIC::ICW4_0
ICW4_0
Definition:
pic.h:78
PIC::AUTO_EOI
Definition:
pic.h:87
PIC::ICW1_2
ICW1_2
Definition:
pic.h:60
PIC::NON_SPECIFIC_EOI
0x20
Definition:
pic.h:98
PIC::ICW1_1
ICW1_1
Definition:
pic.h:54
PIC::EOI
Definition:
pic.h:86
PIC::INTRP_8B
Definition:
pic.h:62
PIC::SPECIAL_FULLY_NESTED
Definition:
pic.h:93
PIC::CASCADE
Definition:
pic.h:56
PIC::SEQUENTIAL
Definition:
pic.h:92
PIC::INVALID
Definition:
pic.h:74
PIC::LEVEL_TRIGGERED
Definition:
pic.h:69
PIC::MODE_8086
Definition:
pic.h:81
PIC::ICW1_4
ICW1_4
Definition:
pic.h:72
PIC::MODE_8085
Definition:
pic.h:80
PIC::USE_ICW1
Definition:
pic.h:75
PIC
8259 Progammable interrupt controller
Definition:
pic.h:46
PIC::ICW1_3
ICW1_3
Definition:
pic.h:66
common.h
PIC::SINGLE
Definition:
pic.h:57
PIC::ROTATE_NON_SPEC_EOI
Definition:
pic.h:102
PIC::INTRP_4B
Definition:
pic.h:63
PIC::EDGE_TRIGGERED
Definition:
pic.h:68
PIC::USE_ICW4
Definition:
pic.h:51
OS
include
pic.h
Generated by
1.8.13