diff options
Diffstat (limited to 'app-emulation/xtrs/files/xtrs-4.9d-ulm.patch')
-rw-r--r-- | app-emulation/xtrs/files/xtrs-4.9d-ulm.patch | 41 |
1 files changed, 0 insertions, 41 deletions
diff --git a/app-emulation/xtrs/files/xtrs-4.9d-ulm.patch b/app-emulation/xtrs/files/xtrs-4.9d-ulm.patch deleted file mode 100644 index aff5556..0000000 --- a/app-emulation/xtrs/files/xtrs-4.9d-ulm.patch +++ /dev/null @@ -1,41 +0,0 @@ ---- xtrs-4.9d-orig/trs_disk.c -+++ xtrs-4.9d/trs_disk.c -@@ -2349,6 +2349,19 @@ trs_disk_command_write(unsigned char cmd - break; - } - id_index = search(state.sector, goal_side); -+ -+ /* Model I cannot boot from a double density floppy and would -+ hang at this point. Switch to 1791 controller and retry. */ -+ if (id_index == -1 && state.density == 0 -+ && trs_model == 1 && REG_PC == 0x06c0) { -+ FDCState s = state; -+ state.density = 1; -+ state.controller = TRSDISK_P1791; -+ state.status = 0; -+ if ((id_index = search(state.sector, goal_side)) == -1) -+ state = s; /* Still unsuccessful: restore state. */ -+ } -+ - if (id_index == -1) { - state.status |= TRSDISK_BUSY; - trs_schedule_event(trs_disk_done, 0, 512); ---- xtrs-4.9d-orig/trs_memory.c -+++ xtrs-4.9d/trs_memory.c -@@ -216,6 +216,7 @@ int mem_read(int address) - if (address == TRSDISK_TRACK) return trs_disk_track_read(); - if (address == TRSDISK_SECTOR) return trs_disk_sector_read(); - if (address >= KEYBOARD_START) return trs_kb_mem_read(address); -+ if (address < 0x37e0) return memory[address]; - return 0xff; - - case 0x30: /* Model III */ -@@ -312,6 +313,8 @@ void mem_write(int address, int value) - trs_disk_sector_write(value); - } else if (TRSDISK_SELECT(address)) { - trs_disk_select_write(value); -+ } else if (address >= trs_rom_size && address < 0x37e0) { -+ memory[address] = value; - } - break; - |