From 86bfd0331d842c7210a3a4758b71231b18193b5b Mon Sep 17 00:00:00 2001 From: aiju Date: Wed, 1 Apr 2015 12:49:59 +0200 Subject: games/c64: writes to I/O area do not affect underlying memory (documentation lied) --- sys/src/games/c64/mem.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/sys/src/games/c64/mem.c b/sys/src/games/c64/mem.c index 1b13f2465..5245a55e9 100644 --- a/sys/src/games/c64/mem.c +++ b/sys/src/games/c64/mem.c @@ -280,8 +280,11 @@ memread(u16int a) void memwrite(u16int a, u8int v) { - if(a >> 12 == 13 && !((pla & (HIRAM|LORAM)) == 0 || pla == 1 || (pla & CHAREN) == 0 && (pla & (EXROM|GAME)) != EXROM)) + if(a >> 12 == 13 && !((pla & (HIRAM|LORAM)) == 0 || pla == 1 || (pla & CHAREN) == 0 && (pla & (EXROM|GAME)) != EXROM)){ miowrite(a & 0xfff, v); + io(); + return; + } ram[a] = v; if(a == 1) pla = pla & ~7 | v & 7; -- cgit v1.2.3