Split the 286/386 interpreter away from the 486+ one (the 286/386 interpreter does not use the pccache's, readlookup's, and writelookup's as the emulated CPU's are too slow for them to be required, and also has more accurate FPU timings), also added a LPT status read function for future-proofing.
This commit is contained in:
@@ -83,7 +83,8 @@ extern lpt_port_t lpt_ports[PARALLEL_MAX];
|
||||
extern void lpt_write(uint16_t port, uint8_t val, void *priv);
|
||||
extern uint8_t lpt_read(uint16_t port, void *priv);
|
||||
|
||||
extern void lpt_irq(void *priv, int raise);
|
||||
extern uint8_t lpt_read_status(int port);
|
||||
extern void lpt_irq(void *priv, int raise);
|
||||
|
||||
extern char *lpt_device_get_name(int id);
|
||||
extern char *lpt_device_get_internal_name(int id);
|
||||
|
||||
@@ -331,6 +331,24 @@ extern void writememll_no_mmut(uint32_t addr, uint32_t *a64, uint32_t val);
|
||||
|
||||
extern void do_mmutranslate(uint32_t addr, uint32_t *a64, int num, int write);
|
||||
|
||||
extern uint8_t readmembl_2386(uint32_t addr);
|
||||
extern void writemembl_2386(uint32_t addr, uint8_t val);
|
||||
extern uint16_t readmemwl_2386(uint32_t addr);
|
||||
extern void writememwl_2386(uint32_t addr, uint16_t val);
|
||||
extern uint32_t readmemll_2386(uint32_t addr);
|
||||
extern void writememll_2386(uint32_t addr, uint32_t val);
|
||||
extern uint64_t readmemql_2386(uint32_t addr);
|
||||
extern void writememql_2386(uint32_t addr, uint64_t val);
|
||||
|
||||
extern uint8_t readmembl_no_mmut_2386(uint32_t addr, uint32_t a64);
|
||||
extern void writemembl_no_mmut_2386(uint32_t addr, uint32_t a64, uint8_t val);
|
||||
extern uint16_t readmemwl_no_mmut_2386(uint32_t addr, uint32_t *a64);
|
||||
extern void writememwl_no_mmut_2386(uint32_t addr, uint32_t *a64, uint16_t val);
|
||||
extern uint32_t readmemll_no_mmut_2386(uint32_t addr, uint32_t *a64);
|
||||
extern void writememll_no_mmut_2386(uint32_t addr, uint32_t *a64, uint32_t val);
|
||||
|
||||
extern void do_mmutranslate_2386(uint32_t addr, uint32_t *a64, int num, int write);
|
||||
|
||||
extern uint8_t *getpccache(uint32_t a);
|
||||
extern uint64_t mmutranslatereal(uint32_t addr, int rw);
|
||||
extern uint32_t mmutranslatereal32(uint32_t addr, int rw);
|
||||
@@ -429,6 +447,9 @@ extern void mem_close(void);
|
||||
extern void mem_reset(void);
|
||||
extern void mem_remap_top(int kb);
|
||||
|
||||
extern mem_mapping_t *read_mapping[MEM_MAPPINGS_NO];
|
||||
extern mem_mapping_t *write_mapping[MEM_MAPPINGS_NO];
|
||||
|
||||
#ifdef EMU_CPU_H
|
||||
static __inline uint32_t
|
||||
get_phys(uint32_t addr)
|
||||
|
||||
Reference in New Issue
Block a user