Added a second set of physical address byte read and write functions in mem.c that are now used by dma.c so that DMA reads and writes do not go through the CPU's paging mechanism anymore - fixes Adaptec and BusLogic SCSI drivers in NT 3.1;
Applied some more of greatpsycho's CPU patches; Reworked the PS/2 Model 80 split memory block handling and removed the top 256k remap from it (that's what the split memory block is for) - fixes OS/2 2.x on that machine.
This commit is contained in:
@@ -126,8 +126,10 @@ extern int mem_a20_key;
|
||||
void mem_a20_recalc();
|
||||
|
||||
uint8_t mem_readb_phys(uint32_t addr);
|
||||
uint8_t mem_readb_phys_dma(uint32_t addr);
|
||||
uint16_t mem_readw_phys(uint32_t addr);
|
||||
void mem_writeb_phys(uint32_t addr, uint8_t val);
|
||||
void mem_writeb_phys_dma(uint32_t addr, uint8_t val);
|
||||
void mem_writew_phys(uint32_t addr, uint16_t val);
|
||||
|
||||
uint8_t mem_read_ram(uint32_t addr, void *priv);
|
||||
@@ -227,6 +229,9 @@ extern void flushmmucache_cr3(void);
|
||||
extern void flushmmucache_nopc(void);
|
||||
extern void mmu_invalidate(uint32_t addr);
|
||||
|
||||
extern void mem_split_enable(int max_size, uint32_t addr);
|
||||
extern void mem_split_disable(int max_size, uint32_t addr);
|
||||
|
||||
|
||||
extern void mem_add_bios(void);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user