diff options
author | Olivier Galibert <galibert@pobox.com> | 2010-02-19 14:01:15 +0000 |
---|---|---|
committer | Olivier Galibert <galibert@pobox.com> | 2010-02-19 14:01:15 +0000 |
commit | 5a6206c11749767210968d555ac0bc3d8bdbebb1 (patch) | |
tree | 0440fb6f22686ba79a576df0f36afa3f7256f68f /src/emu/debug/express.c | |
parent | f6f36eda212a0d9b738930c3dcd05f36ce23c68b (diff) |
Make mips register names accessible in the debugger expressions [Olivier Galibert]
The trick is to lookup the register name before treating '$' as
announcing an hex value. It doesn't make anything impossible or even
hard since even if you have the register name '$a0' you can still use
a bare 'a0' or an explicit '0xa0' to get to the value. Symmetrically,
'$a0' still works for the hex value on say m68k with 'a0' as the
register.
Diffstat (limited to 'src/emu/debug/express.c')
-rw-r--r-- | src/emu/debug/express.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/emu/debug/express.c b/src/emu/debug/express.c index 96c880e2473..15c3b405b4e 100644 --- a/src/emu/debug/express.c +++ b/src/emu/debug/express.c @@ -914,8 +914,7 @@ static EXPRERR parse_string_into_tokens(const char *stringstart, parsed_expressi { /* if we have a number prefix, assume it is a number */ bufindex = 0; - if (buffer[0] == '$') { numbase = 16; bufindex++; must_be_number = 1; } - else if (buffer[0] == '0' && buffer[1] == 'x') { numbase = 16; bufindex += 2; must_be_number = 1; } + if (buffer[0] == '0' && buffer[1] == 'x') { numbase = 16; bufindex += 2; must_be_number = 1; } else if (buffer[0] == '#') { numbase = 10; bufindex++; must_be_number = 1; } /* if we're not forced to be a number, check for a symbol match first */ @@ -939,6 +938,7 @@ static EXPRERR parse_string_into_tokens(const char *stringstart, parsed_expressi /* see if we parse as a number */ if (token->type == TOK_INVALID) { + if (buffer[0] == '$') { numbase = 16; bufindex++; must_be_number = 1; } value = 0; while (buffer[bufindex] != 0) { |