ioport.h revision 81db31727ed27322c3f5e3bc40e71fe7fc54bf91
4c37c32b924cb13b821f9d2e01f42cabbd3d9cf9vboxsync * defines ioport related functions
4c37c32b924cb13b821f9d2e01f42cabbd3d9cf9vboxsync * Copyright (c) 2003 Fabrice Bellard
4c37c32b924cb13b821f9d2e01f42cabbd3d9cf9vboxsync * This library is free software; you can redistribute it and/or
4c37c32b924cb13b821f9d2e01f42cabbd3d9cf9vboxsync * modify it under the terms of the GNU Lesser General Public
4c37c32b924cb13b821f9d2e01f42cabbd3d9cf9vboxsync * License as published by the Free Software Foundation; either
4c37c32b924cb13b821f9d2e01f42cabbd3d9cf9vboxsync * version 2 of the License, or (at your option) any later version.
4c37c32b924cb13b821f9d2e01f42cabbd3d9cf9vboxsync * This library is distributed in the hope that it will be useful,
4c37c32b924cb13b821f9d2e01f42cabbd3d9cf9vboxsync * but WITHOUT ANY WARRANTY; without even the implied warranty of
4c37c32b924cb13b821f9d2e01f42cabbd3d9cf9vboxsync * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
4c37c32b924cb13b821f9d2e01f42cabbd3d9cf9vboxsync * Lesser General Public License for more details.
4c37c32b924cb13b821f9d2e01f42cabbd3d9cf9vboxsync * You should have received a copy of the GNU Lesser General Public
4c37c32b924cb13b821f9d2e01f42cabbd3d9cf9vboxsync * License along with this library; if not, see <http://www.gnu.org/licenses/>.
4c37c32b924cb13b821f9d2e01f42cabbd3d9cf9vboxsync/**************************************************************************
4c37c32b924cb13b821f9d2e01f42cabbd3d9cf9vboxsync * IO ports API
4c37c32b924cb13b821f9d2e01f42cabbd3d9cf9vboxsync/* These should really be in isa.h, but are here to make pc.h happy. */
4c37c32b924cb13b821f9d2e01f42cabbd3d9cf9vboxsynctypedef void (IOPortWriteFunc)(void *opaque, uint32_t address, uint32_t data);
4c37c32b924cb13b821f9d2e01f42cabbd3d9cf9vboxsynctypedef uint32_t (IOPortReadFunc)(void *opaque, uint32_t address);
4c37c32b924cb13b821f9d2e01f42cabbd3d9cf9vboxsyncint register_ioport_read(pio_addr_t start, int length, int size,
4c37c32b924cb13b821f9d2e01f42cabbd3d9cf9vboxsyncint register_ioport_write(pio_addr_t start, int length, int size,
4c37c32b924cb13b821f9d2e01f42cabbd3d9cf9vboxsyncvoid isa_unassign_ioport(pio_addr_t start, int length);
4c37c32b924cb13b821f9d2e01f42cabbd3d9cf9vboxsyncvoid cpu_outb(CPUState *env, pio_addr_t addr, uint8_t val);
4c37c32b924cb13b821f9d2e01f42cabbd3d9cf9vboxsyncvoid cpu_outw(CPUState *env, pio_addr_t addr, uint16_t val);
4c37c32b924cb13b821f9d2e01f42cabbd3d9cf9vboxsyncvoid cpu_outl(CPUState *env, pio_addr_t addr, uint32_t val);
4c37c32b924cb13b821f9d2e01f42cabbd3d9cf9vboxsync#endif /* IOPORT_H */