From 2e9fb813a96d5bb346bb93c37e4e25ecadfac8ab Mon Sep 17 00:00:00 2001 From: lif <> Date: Sun, 24 Dec 2023 17:13:41 -0800 Subject: [PATCH] minor cleanup and write an emit for load/store doubleword --- Makefile | 2 +- cheats.c | 2 ++ mips/mips_codegen.h | 8 ++++++++ 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 6ca0482..7c95daf 100644 --- a/Makefile +++ b/Makefile @@ -444,7 +444,7 @@ else ifeq ($(platform), n64) CFLAGS += -march=vr4300 -mtune=vr4300 -falign-functions=32 CFLAGS += -DN64 -DUSE_RGBA5551_FORMAT -DSMALL_TRANSLATION_CACHE -DROM_BUFFER_SIZE=1 CFLAGS += -I$(N64_INST)/include/ - HAVE_DYNAREC = 1 + HAVE_DYNAREC := 1 CPU_ARCH := mips STATIC_LINKING = 1 FRONTEND_SUPPORTS_RGB565 = 0 diff --git a/cheats.c b/cheats.c index 5be525b..bbf1888 100644 --- a/cheats.c +++ b/cheats.c @@ -118,6 +118,8 @@ static void process_cheat_codebreaker(cheat_type *cheat, u16 pad) case 4 ... 5: bvalue = cheat->codes[i].value >> (40 - off*8); break; + default: + continue; }; write_memory8(address, bvalue); address++; diff --git a/mips/mips_codegen.h b/mips/mips_codegen.h index 6dd0392..fc2d5a6 100644 --- a/mips/mips_codegen.h +++ b/mips/mips_codegen.h @@ -150,6 +150,8 @@ typedef enum mips_opcode_sh = 0x29, mips_opcode_sw = 0x2B, mips_opcode_cache = 0x2F, + mips_opcode_ld = 0x37, + mips_opcode_sd = 0x3F, } mips_opcode; #ifdef NINTENDO64 @@ -336,6 +338,9 @@ typedef enum #define mips_emit_lw(rt, rs, offset) \ mips_emit_imm(lw, rs, rt, offset) \ +#define mips_emit_ld(rt, rs, offset) \ + mips_emit_imm(ld, rs, rt, offset) \ + #define mips_emit_sb(rt, rs, offset) \ mips_emit_imm(sb, rs, rt, offset) \ @@ -345,6 +350,9 @@ typedef enum #define mips_emit_sw(rt, rs, offset) \ mips_emit_imm(sw, rs, rt, offset) \ +#define mips_emit_sd(rt, rs, offset) \ + mips_emit_imm(sd, rs, rt, offset) \ + #define mips_emit_lui(rt, imm) \ mips_emit_imm(lui, 0, rt, imm) \