#ifndef HW_PARALLEL_H #define HW_PARALLEL_H #include "exec/ioport.h" #include "exec/memory.h" #include "hw/isa/isa.h" #include "hw/irq.h" #include "chardev/char-fe.h" #include "chardev/char.h" typedef struct ParallelState { MemoryRegion iomem; uint8_t dataw; uint8_t datar; uint8_t status; uint8_t control; qemu_irq irq; int irq_pending; CharBackend chr; int hw_driver; int epp_timeout; uint32_t last_read_offset; /* For debugging */ /* Memory-mapped interface */ int it_shift; PortioList portio_list; } ParallelState; void parallel_hds_isa_init(ISABus *bus, int n); bool parallel_mm_init(MemoryRegion *address_space, hwaddr base, int it_shift, qemu_irq irq, Chardev *chr); #endif