Fixed AT systems broken by rev 1184.
This commit is contained in:
parent
cbf4b9f813
commit
8ac2157f87
3 changed files with 14 additions and 4 deletions
14
src/mem.c
14
src/mem.c
|
|
@ -2315,10 +2315,10 @@ void mem_init()
|
|||
|
||||
memset(_mem_state, 0, sizeof(_mem_state));
|
||||
|
||||
mem_set_mem_state(0x000000, (mem_size > (AT ? 640 : 768)) ? (AT ? 0xa0000 : 0xc0000) : mem_size * 1024, MEM_READ_INTERNAL | MEM_WRITE_INTERNAL);
|
||||
mem_set_mem_state(0x000000, (mem_size > 640) ? 0xa0000 : mem_size * 1024, MEM_READ_INTERNAL | MEM_WRITE_INTERNAL);
|
||||
mem_set_mem_state(0x0c0000, 0x40000, MEM_READ_EXTERNAL | MEM_WRITE_EXTERNAL);
|
||||
|
||||
mem_mapping_add(&ram_low_mapping, 0x00000, (mem_size > (AT ? 640 : 768)) ? (AT ? 0xa0000 : 0xc0000) : mem_size * 1024, mem_read_ram, mem_read_ramw, mem_read_raml, mem_write_ram, mem_write_ramw, mem_write_raml, ram, MEM_MAPPING_INTERNAL, NULL);
|
||||
mem_mapping_add(&ram_low_mapping, 0x00000, (mem_size > 640) ? 0xa0000 : mem_size * 1024, mem_read_ram, mem_read_ramw, mem_read_raml, mem_write_ram, mem_write_ramw, mem_write_raml, ram, MEM_MAPPING_INTERNAL, NULL);
|
||||
if (mem_size > 1024)
|
||||
{
|
||||
if (cpu_16bitbus && mem_size > 16256)
|
||||
|
|
@ -2377,6 +2377,12 @@ void mem_remap_top_384k()
|
|||
mem_remap_top(384);
|
||||
}
|
||||
|
||||
void mem_set_704kb()
|
||||
{
|
||||
mem_set_mem_state(0x000000, (mem_size > 704) ? 0xb0000 : mem_size * 1024, MEM_READ_INTERNAL | MEM_WRITE_INTERNAL);
|
||||
mem_mapping_set_addr(&ram_low_mapping, 0x00000, (mem_size > 704) ? 0xb0000 : mem_size * 1024);
|
||||
}
|
||||
|
||||
void mem_resize()
|
||||
{
|
||||
int c;
|
||||
|
|
@ -2416,10 +2422,10 @@ void mem_resize()
|
|||
|
||||
memset(_mem_state, 0, sizeof(_mem_state));
|
||||
|
||||
mem_set_mem_state(0x000000, (mem_size > (AT ? 640 : 768)) ? (AT ? 0xa0000 : 0xc0000) : mem_size * 1024, MEM_READ_INTERNAL | MEM_WRITE_INTERNAL);
|
||||
mem_set_mem_state(0x000000, (mem_size > 640) ? 0xa0000 : mem_size * 1024, MEM_READ_INTERNAL | MEM_WRITE_INTERNAL);
|
||||
mem_set_mem_state(0x0c0000, 0x40000, MEM_READ_EXTERNAL | MEM_WRITE_EXTERNAL);
|
||||
|
||||
mem_mapping_add(&ram_low_mapping, 0x00000, (mem_size > (AT ? 640 : 768)) ? (AT ? 0xa0000 : 0xc0000) : mem_size * 1024, mem_read_ram, mem_read_ramw, mem_read_raml, mem_write_ram, mem_write_ramw, mem_write_raml, ram, MEM_MAPPING_INTERNAL, NULL);
|
||||
mem_mapping_add(&ram_low_mapping, 0x00000, (mem_size > 640) ? 0xa0000 : mem_size * 1024, mem_read_ram, mem_read_ramw, mem_read_raml, mem_write_ram, mem_write_ramw, mem_write_raml, ram, MEM_MAPPING_INTERNAL, NULL);
|
||||
if (mem_size > 1024)
|
||||
{
|
||||
if (cpu_16bitbus && mem_size > 16256)
|
||||
|
|
|
|||
|
|
@ -182,6 +182,8 @@ void mem_add_bios();
|
|||
void mem_init();
|
||||
void mem_resize();
|
||||
|
||||
void mem_set_704kb();
|
||||
|
||||
void flushmmucache();
|
||||
void flushmmucache_nopc();
|
||||
void flushmmucache_cr3();
|
||||
|
|
|
|||
2
src/pc.c
2
src/pc.c
|
|
@ -417,6 +417,8 @@ void resetpchard()
|
|||
disc_load(1, discfns[1]);
|
||||
|
||||
model_init();
|
||||
if (!AT)
|
||||
mem_set_704kb();
|
||||
mouse_emu_init();
|
||||
video_init();
|
||||
speaker_init();
|
||||
|
|
|
|||
Loading…
Reference in a new issue