mirror of
https://github.com/ARMSX2/ARMSX1.git
synced 2026-08-24 16:53:35 -07:00
25 lines
765 B
C
25 lines
765 B
C
#ifndef BUS_H
|
|
#define BUS_H
|
|
|
|
#include <stdint.h>
|
|
|
|
struct psx_bus_t;
|
|
|
|
typedef struct psx_bus_t psx_bus_t;
|
|
typedef void (*psx_bus_write_observer_t)(void*, uint32_t, uint32_t);
|
|
|
|
psx_bus_t* psx_bus_create(void);
|
|
void psx_bus_init(psx_bus_t*);
|
|
uint32_t psx_bus_read32(psx_bus_t*, uint32_t);
|
|
uint16_t psx_bus_read16(psx_bus_t*, uint32_t);
|
|
uint8_t psx_bus_read8(psx_bus_t*, uint32_t);
|
|
void psx_bus_write32(psx_bus_t*, uint32_t, uint32_t);
|
|
void psx_bus_write16(psx_bus_t*, uint32_t, uint32_t);
|
|
void psx_bus_write8(psx_bus_t*, uint32_t, uint32_t);
|
|
uint32_t psx_bus_get_access_cycles(psx_bus_t*);
|
|
uint32_t psx_bus_physical_address(uint32_t);
|
|
void psx_bus_set_write_observer(psx_bus_t*, psx_bus_write_observer_t, void*);
|
|
void psx_bus_destroy(psx_bus_t*);
|
|
|
|
#endif
|