Mercurial > repos > simple16
changeset 10:9f575f77a157
Fix parsing of hex literals in assembler
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Sun, 27 Mar 2016 17:32:09 -0700 |
parents | a3f14b00aead |
children | 04d8efe7a1f0 |
files | src/asm.c |
diffstat | 1 files changed, 2 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/asm.c Sun Mar 27 16:15:46 2016 -0700 +++ b/src/asm.c Sun Mar 27 17:32:09 2016 -0700 @@ -203,7 +203,7 @@ { //TODO: actual error checking if (arg[0] == '$' || (arg[0] == '0' && arg[1] == 'x')) { - value = strtol(arg, NULL, 16); + value = strtol(arg[0] == '$' ? arg+1 : arg+2, NULL, 16); } else if (arg[0] >= '0' && arg[0] <= '9') { value = strtol(arg, NULL, 10); } else if (arg[0] == '"') { @@ -321,7 +321,7 @@ //TODO: actual error checking if (arg[0] == '$' || (arg[0] == '0' && arg[1] == 'x')) { - value = strtol(arg, NULL, 16); + value = strtol(arg[0] == '$' ? arg+1 : arg+2, NULL, 16); } else if (arg[0] >= '0' && arg[0] <= '9') { value = strtol(arg, NULL, 10); } else {