From d4674e7347f1571fb10f6b39187f01c634c0c5f7 Mon Sep 17 00:00:00 2001 From: beeanyew Date: Mon, 17 May 2021 21:43:03 +0200 Subject: [PATCH] A314 updates Replace a314.device with one suitable for PiStorm Adjust address of writes/reads to/from the emulated device Add missing includes to startup.c --- a314/a314device/a314.device | Bin 0 -> 10248 bytes a314/a314device/startup.c | 3 +++ platforms/amiga/amiga-platform.c | 10 ++++++---- 3 files changed, 9 insertions(+), 4 deletions(-) create mode 100644 a314/a314device/a314.device diff --git a/a314/a314device/a314.device b/a314/a314device/a314.device new file mode 100644 index 0000000000000000000000000000000000000000..9efa80d3223b47fed5cf81ff9e24397d4cc06ae4 GIT binary patch literal 10248 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 #include +#include +#include + #include "a314.h" #include "device.h" #include "protocol.h" diff --git a/platforms/amiga/amiga-platform.c b/platforms/amiga/amiga-platform.c index 819eda4..a7a8f34 100644 --- a/platforms/amiga/amiga-platform.c +++ b/platforms/amiga/amiga-platform.c @@ -116,17 +116,18 @@ inline int custom_read_amiga(struct emulator_config *cfg, unsigned int addr, uns } if (a314_emulation_enabled && addr >= a314_base && addr < a314_base + (64 * SIZE_KILO)) { + //printf("%s read from A314 @$%.8X\n", op_type_names[type], addr); switch (type) { case OP_TYPE_BYTE: - *val = a314_read_memory_8(addr); + *val = a314_read_memory_8(addr - a314_base); return 1; break; case OP_TYPE_WORD: - *val = a314_read_memory_16(addr); + *val = a314_read_memory_16(addr - a314_base); return 1; break; case OP_TYPE_LONGWORD: - *val = a314_read_memory_32(addr); + *val = a314_read_memory_32(addr - a314_base); return 1; break; default: @@ -202,9 +203,10 @@ inline int custom_write_amiga(struct emulator_config *cfg, unsigned int addr, un } if (a314_emulation_enabled && addr >= a314_base && addr < a314_base + (64 * SIZE_KILO)) { + //printf("%s write to A314 @$%.8X: %d\n", op_type_names[type], addr, val); switch (type) { case OP_TYPE_BYTE: - a314_write_memory_8(addr, val); + a314_write_memory_8(addr - a314_base, val); return 1; break; case OP_TYPE_WORD: -- 2.39.2