mirror of
https://github.com/yuzu-emu/unicorn.git
synced 2025-07-07 14:30:41 +00:00
arm: fix #114 by enabling cortex-a15 model. FIXME: enable this on demand with an API
This commit is contained in:
parent
3ac8615cbb
commit
6c132bc673
|
@ -19,7 +19,8 @@
|
||||||
|
|
||||||
static void tosa_init(struct uc_struct *uc, MachineState *machine)
|
static void tosa_init(struct uc_struct *uc, MachineState *machine)
|
||||||
{
|
{
|
||||||
cpu_arm_init(uc, "pxa255");
|
//cpu_arm_init(uc, "pxa255");
|
||||||
|
cpu_arm_init(uc, "cortex-a15"); // FIXME
|
||||||
}
|
}
|
||||||
|
|
||||||
void tosa_machine_init(struct uc_struct *uc)
|
void tosa_machine_init(struct uc_struct *uc)
|
||||||
|
|
|
@ -1,11 +1,17 @@
|
||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
|
|
||||||
from unicorn import *
|
from unicorn import *
|
||||||
|
from unicorn.arm_const import *
|
||||||
|
|
||||||
uc = Uc(UC_ARCH_ARM, UC_MODE_ARM)
|
uc = Uc(UC_ARCH_ARM, UC_MODE_ARM)
|
||||||
uc.mem_map(0x1000, 0x1000)
|
uc.mem_map(0x1000, 0x1000)
|
||||||
uc.mem_write(0x1000, '00c000e3'.decode('hex'))
|
uc.mem_write(0x1000, '00c000e3'.decode('hex'))
|
||||||
def hook_block(uc, addr, *args):
|
def hook_block(uc, addr, *args):
|
||||||
print 'enter block 0x%04x' % addr
|
print 'enter block 0x%04x' % addr
|
||||||
|
|
||||||
|
uc.reg_write(UC_ARM_REG_R12, 0x123)
|
||||||
|
print 'r12 =', uc.reg_read(UC_ARM_REG_R12)
|
||||||
uc.hook_add(UC_HOOK_BLOCK, hook_block)
|
uc.hook_add(UC_HOOK_BLOCK, hook_block)
|
||||||
print 'block should only run once'
|
print 'block should only run once'
|
||||||
uc.emu_start(0x1000, 0x1004, timeout=250)
|
uc.emu_start(0x1000, 0x1004, timeout=250)
|
||||||
|
print 'r12 =', uc.reg_read(UC_ARM_REG_R12)
|
||||||
|
|
Loading…
Reference in a new issue