summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-emulation/xtrs/files/xtrs-4.9d-ulm.patch')
-rw-r--r--app-emulation/xtrs/files/xtrs-4.9d-ulm.patch41
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;
-