aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2012-04-26 20:34:20 +0000
committerDimitri Sokolyuk <demon@dim13.org>2012-04-26 20:34:20 +0000
commit8ec09e69f9df0377191350de22cf05e01b3358d2 (patch)
treeb4af4a0cf8fa3371db8ed2c606f5d74428ee2164
parent4f1936d1291a07abd5ceefff4b2e5e1a919e94fb (diff)
fix literals
-rw-r--r--emu.c2
-rw-r--r--gramar.y4
2 files changed, 3 insertions, 3 deletions
diff --git a/emu.c b/emu.c
index 9d1a620..d5690b0 100644
--- a/emu.c
+++ b/emu.c
@@ -497,7 +497,7 @@ fetcharg(int a, int barg)
return &mem[reg[PC]++];
default:
/* literal */
- reg[Aux] = a - 0x20;
+ reg[Aux] = a - 0x20 - 1;
return &reg[Aux];
}
}
diff --git a/gramar.y b/gramar.y
index 01c1a85..d5ec24a 100644
--- a/gramar.y
+++ b/gramar.y
@@ -186,8 +186,8 @@ operand
}
| expr
{
- if ($1 < 0x1f)
- $$ = 0x21 + $1;
+ if ($1 <= 30 && $1 >= -1)
+ $$ = 0x20 + $1 + 1;
else {
$$ = 0x1f;
push($1, NULL);