ref: a51b1a2f1399798193e3d788d9f3fb8bb9f3ac5c
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