ref: f954c61668935d7d4a2b41a5528fddedf04d9c6d
dir: /home/array.asm/
IsInArray:: ; Find value a for every de bytes in array hl. ; Return index in b and carry if found. ld b, 0 ld c, a .loop ld a, [hl] cp -1 jr z, .NotInArray cp c jr z, .InArray inc b add hl, de jr .loop .NotInArray: and a ret .InArray: scf ret SkipNames:: ; Skip a names. ld bc, NAME_LENGTH and a ret z .loop add hl, bc dec a jr nz, .loop ret AddNTimes:: ; Add bc * a to hl. and a ret z .loop add hl, bc dec a jr nz, .loop ret