00001 #ifndef __SYS_PPI_8255A_H__
00002 #define __SYS_PPI_8255A_H__
00003
00008 #include "ibmpc.h"
00009
00010 namespace IBMPC
00011 {
00013 class VDD_SYS_PPI_8255A : public Device
00014 {
00015 enum
00016 {
00017 PORT_A = 0x60,
00018 PORT_B = 0x61,
00019 PORT_C = 0x62,
00020 };
00021
00022 public:
00023
00024 VDD_SYS_PPI_8255A();
00025 ~VDD_SYS_PPI_8255A();
00026
00027
00028 virtual void init();
00029 virtual void done();
00030 virtual uint8 mem_read8(unsigned int addr);
00031 virtual void mem_write8(unsigned int addr, uint8 value);
00032 virtual void irq_ack();
00033 virtual void port_write8(unsigned int port_index, uint8 value);
00034 virtual uint8 port_read8(unsigned int port_index);
00035 };
00036 };
00037
00038 #endif