diff options
author | Segher Boessenkool <segher@kernel.crashing.org> | 2010-02-12 21:42:37 +0100 |
---|---|---|
committer | Segher Boessenkool <segher@kernel.crashing.org> | 2010-02-12 21:42:37 +0100 |
commit | 1723f221d8627a71f2ba3ca883301a80607cbf3b (patch) | |
tree | fe128a10d3c0c722ea17a1d3a6eda628c0eef7bc | |
parent | 2505250ded739666bbbfc5eea5e570d58ce91abe (diff) |
Add debug keys for triggering EXTINT
-rw-r--r-- | emu.c | 20 | ||||
-rw-r--r-- | platform-sdl.c | 1 |
2 files changed, 21 insertions, 0 deletions
@@ -38,6 +38,10 @@ static u8 trace_irq[9] = { 0, 0, 0, 0, 0, 0, 0, 0, 0 }; static u8 unsp_version = 11; // version a.b as 10*a + b static u8 ever_ran_this[N_MEM]; + +static int do_extint1, do_extint2; + + static u16 reg[8]; static u8 sb; static u8 irq, fiq; @@ -725,6 +729,14 @@ static void do_controller(void) mute_audio ^= 1; break; + case 'w': + do_extint1 = 1; + break; + + case 'e': + do_extint2 = 1; + break; + case 'a': hide_page_1 ^= 1; break; @@ -809,6 +821,14 @@ static void run(void) mem[0x3d22] |= 2; // TMB2 FIXME: freq + if (do_extint1) { + mem[0x3d22] |= 0x0200; + do_extint1 = 0; + } + if (do_extint2) { + mem[0x3d22] |= 0x1000; + do_extint2 = 0; + } // UART FIXME mem[0x3d22] |= 0x0100; diff --git a/platform-sdl.c b/platform-sdl.c index dd759ce..56b5085 100644 --- a/platform-sdl.c +++ b/platform-sdl.c @@ -172,6 +172,7 @@ static char handle_debug_key(int key) case 'u': case 'x': case 'q': + case 'w': case 'e': case 'a': case 's': case 'd': case 'v': case 'c': return (key); |