Misc tweaks
This commit is contained in:
parent
c8b4ce9631
commit
4bff5c15b5
|
@ -1,6 +1,6 @@
|
||||||
#define BUILDDATE 0x20230502
|
#define BUILDDATE 0x20230504
|
||||||
#define BUILDID 0x0182
|
#define BUILDID 0x0187
|
||||||
#define BUILDSTR " 2 May 2023 Build 0182"
|
#define BUILDSTR " 4 May 2023 Build 0187"
|
||||||
|
|
||||||
#ifdef ANALOG_GS
|
#ifdef ANALOG_GS
|
||||||
#define HWSTRING " V2 Analog GS Rev1"
|
#define HWSTRING " V2 Analog GS Rev1"
|
||||||
|
|
|
@ -761,10 +761,18 @@ void DELAYED_COPY_CODE(config_handler)() {
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'R':
|
case 'R':
|
||||||
// Reboot and bypass auto-detection of machine type.
|
switch(config_cmdbuf[1]) {
|
||||||
cfg_machine = current_machine;
|
default:
|
||||||
write_config(true);
|
retval = REPLY_ECMD;
|
||||||
flash_reboot();
|
break;
|
||||||
|
case 'b':
|
||||||
|
// Reboot and bypass auto-detection of machine type.
|
||||||
|
cfg_machine = current_machine;
|
||||||
|
read_config();
|
||||||
|
write_config(true);
|
||||||
|
flash_reboot();
|
||||||
|
break;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'I':
|
case 'I':
|
||||||
|
|
|
@ -55,9 +55,12 @@ void __time_critical_func(vga_businterface)(uint32_t address, uint32_t value) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Nothing left to do for RAM accesses.
|
||||||
|
if(address < 0xc000) return;
|
||||||
|
|
||||||
// Shadow the soft-switches by observing all read & write bus cycles
|
// Shadow the soft-switches by observing all read & write bus cycles
|
||||||
if((address & 0xff80) == 0xc000) {
|
if(address < 0xc080) {
|
||||||
switch(address & 0x7f) {
|
switch(address & 0x7f) {
|
||||||
case 0x00:
|
case 0x00:
|
||||||
if((internal_flags & (IFLAGS_IIGS_REGS | IFLAGS_IIE_REGS)) && ACCESS_WRITE) {
|
if((internal_flags & (IFLAGS_IIGS_REGS | IFLAGS_IIE_REGS)) && ACCESS_WRITE) {
|
||||||
|
@ -210,7 +213,7 @@ void __time_critical_func(vga_businterface)(uint32_t address, uint32_t value) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
} else if(romx_unlocked == 3) {
|
} else if(romx_unlocked == 3) {
|
||||||
if((address & 0xFFF0) == 0xF810) {
|
if((address >> 4) == 0xF81) {
|
||||||
romx_textbank = address & 0xF;
|
romx_textbank = address & 0xF;
|
||||||
}
|
}
|
||||||
if(address == 0xF851) {
|
if(address == 0xF851) {
|
||||||
|
@ -237,10 +240,10 @@ void __time_critical_func(vga_businterface)(uint32_t address, uint32_t value) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
} else if(romx_unlocked == 3) {
|
} else if(romx_unlocked == 3) {
|
||||||
if((address & 0xFFF0) == 0xCFD0) {
|
if((address >> 4) == 0xCFD) {
|
||||||
romx_textbank = address & 0xF;
|
romx_textbank = address & 0xF;
|
||||||
}
|
}
|
||||||
if((address & 0xFFF0) == 0xCFE0) {
|
if((address >> 4) == 0xCFE) {
|
||||||
romx_changed = 1;
|
romx_changed = 1;
|
||||||
romx_unlocked = 0;
|
romx_unlocked = 0;
|
||||||
}
|
}
|
||||||
|
@ -299,10 +302,12 @@ void __time_critical_func(vga_businterface)(uint32_t address, uint32_t value) {
|
||||||
apple_memory[address] = (terminal_fifo_rdptr - terminal_fifo_wrptr);
|
apple_memory[address] = (terminal_fifo_rdptr - terminal_fifo_wrptr);
|
||||||
break;
|
break;
|
||||||
case 0x0B:
|
case 0x0B:
|
||||||
|
#if 0
|
||||||
if((value & 0xFF) <= 0x27) {
|
if((value & 0xFF) <= 0x27) {
|
||||||
romx_textbank = (value & 0xFF);
|
romx_textbank = (value & 0xFF);
|
||||||
romx_changed = 1;
|
romx_changed = 1;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
break;
|
break;
|
||||||
case 0x0C:
|
case 0x0C:
|
||||||
apple_memory[address] = value;
|
apple_memory[address] = value;
|
||||||
|
|
Loading…
Reference in New Issue