arm: fix #114 by enabling cortex-a15 model. FIXME: enable this on demand with an API

This commit is contained in:
Nguyen Anh Quynh 2015-09-08 01:08:37 +08:00
parent 3ac8615cbb
commit 6c132bc673
2 changed files with 8 additions and 1 deletions

View file

@ -19,7 +19,8 @@
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)

View file

@ -1,11 +1,17 @@
#!/usr/bin/python
from unicorn import *
from unicorn.arm_const import *
uc = Uc(UC_ARCH_ARM, UC_MODE_ARM)
uc.mem_map(0x1000, 0x1000)
uc.mem_write(0x1000, '00c000e3'.decode('hex'))
def hook_block(uc, addr, *args):
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)
print 'block should only run once'
uc.emu_start(0x1000, 0x1004, timeout=250)
print 'r12 =', uc.reg_read(UC_ARM_REG_R12)