ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
Loading...
Searching...
No Matches
emu_engine.c
Go to the documentation of this file.
1
14
15#include "emu_engine.h"
16
17const int k_arm_reg_id[16] = {
18 UC_ARM_REG_R0,
19 UC_ARM_REG_R1,
20 UC_ARM_REG_R2,
21 UC_ARM_REG_R3,
22 UC_ARM_REG_R4,
23 UC_ARM_REG_R5,
24 UC_ARM_REG_R6,
25 UC_ARM_REG_R7,
26 UC_ARM_REG_R8,
27 UC_ARM_REG_R9,
28 UC_ARM_REG_R10,
29 UC_ARM_REG_R11,
30 UC_ARM_REG_R12,
31 UC_ARM_REG_SP,
32 UC_ARM_REG_LR,
33 UC_ARM_REG_PC,
34};
35
49static bool s_seam_relaunch;
50
53{
54 s_seam_relaunch = true;
55}
56
59{
60 const bool hit = s_seam_relaunch;
61 s_seam_relaunch = false;
62 return hit;
63}
void emu_seam_request_relaunch(void)
Implementation of emu_seam_request_relaunch() – set the latch.
Definition emu_engine.c:52
static bool s_seam_relaunch
Set by a C-seam to relaunch WITHOUT consuming a chunk.
Definition emu_engine.c:49
bool emu_seam_take_relaunch(void)
Implementation of emu_seam_take_relaunch() – read + clear.
Definition emu_engine.c:58
Shared Unicorn engine access utilities for the board emulator.
const int k_arm_reg_id[16]
ARM register index (0..15) -> Unicorn register id.
Definition emu_engine.c:17