@@ -324,6 +324,7 @@ evaluxn(Uxn *u, Uint16 vec)
{
Uint8 instr;
u->ram.ptr = vec;
+ if(u->wst.ptr > 0xf8) u->wst.ptr = 0xf8;
while(u->ram.ptr) {
instr = u->ram.dat[u->ram.ptr++];
switch(instr) {
@@ -232,6 +232,7 @@ evaluxn(Uxn *u, Uint16 vec)
@@ -56,6 +56,7 @@ evaluxn(Uxn *u, Uint16 vec)
@@ -159,6 +159,7 @@ evaluxn(Uxn *u, Uint16 vec)
u->wst.error = 0;
u->rst.error = 0;
while(u->ram.ptr)
if(!stepuxn(u, u->ram.dat[u->ram.ptr++]))
return 0;