diff --git a/apps/zasm/symbol.asm b/apps/zasm/symbol.asm index 21f96a7..da673bb 100644 --- a/apps/zasm/symbol.asm +++ b/apps/zasm/symbol.asm @@ -192,9 +192,15 @@ _symFind: jr z, .end ; match! Z already set, IY and HL placed. .skip: ; ok, next! - ld a, (iy) ; name len again - call addHL ; advance HL by A chars - inc iy \ inc iy \ inc iy + + push de + ld de, 0x0003 + add iy, de + ; offset is signed, but '-' isn't supported by zasm + ld e, (iy+0xFD) ; offset is also compulsory, so no extra bytes used + add hl, de ; advance HL by (iy) characters + pop de + djnz .loop ; end of the chain, nothing found .nothing: