Vastly overhauled the UI, there's now a completely new Settings dialog as well as a status bar with disk activity icons and removable drive menus;
Thoroughly clean up the code to vastly reduce the number of compiler warnings and found and fixed several bugs in the process; Applied all mainline PCem commits; Added SCSI hard disk emulation; Commented out all unfinished machines and graphics cards; Added the AOpen AP53 and ASUS P/I-P55T2 machines as well as another Tyan 440FX machine, all three with AMI WinBIOS (patch from TheCollector1995); Added the Diamond Stealth 3D 3000 (S3 ViRGE/VX) graphics card (patch from TheCollector1995); Added the PS/2 XT IDE (AccuLogic) HDD Controller (patch from TheCollector1995); Added Microsoft/Logitech Bus Mouse emulation (patch from waltje); Overhauled the makefiles (patch from waltje); Added the Adaptec AHA-1542CF SCSI controller (patch from waltje); Added preliminary (but still unfinished) Adaptec AHA-154x SCSI controller BIOS support (patch from waltje); Added an ISABugger debugging device (patch from waltje); Added sanity checks to the Direct3D code.
This commit is contained in:
26
src/mem.h
26
src/mem.h
@@ -87,7 +87,9 @@ extern int mem_a20_key;
|
||||
void mem_a20_recalc();
|
||||
|
||||
uint8_t mem_readb_phys(uint32_t addr);
|
||||
uint16_t mem_readw_phys(uint32_t addr);
|
||||
void mem_writeb_phys(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);
|
||||
uint16_t mem_read_ramw(uint32_t addr, void *priv);
|
||||
@@ -110,6 +112,8 @@ FILE *romfopen(char *fn, char *mode);
|
||||
mem_mapping_t bios_mapping[8];
|
||||
mem_mapping_t bios_high_mapping[8];
|
||||
|
||||
extern mem_mapping_t ram_high_mapping;
|
||||
|
||||
|
||||
typedef struct page_t
|
||||
{
|
||||
@@ -134,7 +138,7 @@ extern page_t **page_lookup;
|
||||
uint32_t mmutranslate_noabrt(uint32_t addr, int rw);
|
||||
|
||||
extern uint32_t get_phys_virt,get_phys_phys;
|
||||
static inline uint32_t get_phys(uint32_t addr)
|
||||
static __inline uint32_t get_phys(uint32_t addr)
|
||||
{
|
||||
if (!((addr ^ get_phys_virt) & ~0xfff))
|
||||
return get_phys_phys | (addr & 0xfff);
|
||||
@@ -149,10 +153,10 @@ static inline uint32_t get_phys(uint32_t addr)
|
||||
|
||||
get_phys_phys = (mmutranslatereal(addr, 0) & rammask) & ~0xfff;
|
||||
return get_phys_phys | (addr & 0xfff);
|
||||
// return mmutranslatereal(addr, 0) & rammask;
|
||||
/* return mmutranslatereal(addr, 0) & rammask; */
|
||||
}
|
||||
|
||||
static inline uint32_t get_phys_noabrt(uint32_t addr)
|
||||
static __inline uint32_t get_phys_noabrt(uint32_t addr)
|
||||
{
|
||||
if (!(cr0 >> 31))
|
||||
return addr & rammask;
|
||||
@@ -167,11 +171,27 @@ extern uint32_t mem_logical_addr;
|
||||
void mem_write_ramb_page(uint32_t addr, uint8_t val, page_t *p);
|
||||
void mem_write_ramw_page(uint32_t addr, uint16_t val, page_t *p);
|
||||
void mem_write_raml_page(uint32_t addr, uint32_t val, page_t *p);
|
||||
void mem_flush_write_page(uint32_t addr, uint32_t virt);
|
||||
|
||||
void mem_reset_page_blocks();
|
||||
|
||||
extern mem_mapping_t ram_low_mapping;
|
||||
|
||||
void mem_remap_top_256k();
|
||||
void mem_remap_top_384k();
|
||||
|
||||
void flushmmucache_nopc();
|
||||
|
||||
int loadbios();
|
||||
|
||||
void mem_add_bios();
|
||||
|
||||
void mem_init();
|
||||
void mem_resize();
|
||||
|
||||
void port_92_reset();
|
||||
|
||||
void port_92_add();
|
||||
void port_92_remove();
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user