From 02e49932ea5f0acabf300847538ced056ed7d6c0 Mon Sep 17 00:00:00 2001 From: Daniel Loffgren Date: Mon, 2 Oct 2017 00:58:39 -0700 Subject: [PATCH] Cleaned up the freeze logic a bit --- src/pia.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/pia.c b/src/pia.c index 0ed82a6..8127029 100644 --- a/src/pia.c +++ b/src/pia.c @@ -33,7 +33,8 @@ void saveFreeze(a1pia *pia, const char *fname) { } uint8_t pcHigh = pia->cpu->pc >> 8; - fwrite(&pia->cpu->pc, 1, 1, f); // Low + uint8_t pcLow = pia->cpu->pc & 0xFF; + fwrite(&pcLow, 1, 1, f); // Low fwrite(&pcHigh, 1, 1, f); // High fwrite(&pia->cpu->ac, 1, 1, f); fwrite(&pia->cpu->x, 1, 1, f); @@ -60,7 +61,7 @@ void loadFreeze(a1pia *pia, const char *fname) { uint8_t pcLow, pcHigh; fread(&pcLow, 1, 1, f); // Low - fwrite(&pcHigh, 1, 1, f); // High + fread(&pcHigh, 1, 1, f); // High pia->cpu->pc = pcLow | (pcHigh << 8); fread(&pia->cpu->ac, 1, 1, f);