1 INTERFACE[i8259 && (ia32 || amd64)]:
7 friend class Jdb_kern_info_pic_state;
12 MASTER_PIC_BASE = 0x20,
13 SLAVES_PIC_BASE = 0xa0,
17 MASTER_ICW = MASTER_PIC_BASE + OFF_ICW,
18 MASTER_OCW = MASTER_PIC_BASE + OFF_OCW,
19 SLAVES_ICW = SLAVES_PIC_BASE + OFF_ICW,
20 SLAVES_OCW = SLAVES_PIC_BASE + OFF_OCW,
25 IMPLEMENTATION [i8259 && (ia32 || amd64)]:
29 PUBLIC static inline NEEDS["io.h"]
31 Pic::disable_all_save()
34 s = Io::in8(MASTER_OCW);
35 s |= Io::in8(SLAVES_OCW) << 8;
36 Io::out8(0xff, MASTER_OCW);
37 Io::out8(0xff, SLAVES_OCW);
42 PUBLIC static inline NEEDS["io.h"]
44 Pic::restore_all(Unsigned16 s)
46 Io::out8(s & 0x0ff, MASTER_OCW);
47 Io::out8((s >> 8) & 0x0ff, SLAVES_OCW);