X-Git-Url: https://git.rrq.au/?a=blobdiff_plain;f=impl.asm;h=923406f2465e50728f83e5e710bfe42341b1205f;hb=02f53b20b4f7244a84a442bbae10eb8401abcfc5;hp=f8093d0653a43534971fd1a91cb590317019583b;hpb=2cd770b4f9a46cbc7ff07b26f4851bba1ea36a7d;p=rrq%2Fjonasforth.git diff --git a/impl.asm b/impl.asm index f8093d0..923406f 100644 --- a/impl.asm +++ b/impl.asm @@ -15,12 +15,12 @@ segment readable executable find: ;; RSI contains the entry we are currently looking at .loop: - movzx rcx, byte [rsi + 8] ; Length of word being looked at + movzx rcx, byte [rsi + 8 + 1] ; Length of word being looked at cmp rcx, [.search_length] jne .next ; If the words don't have the same length, we have the wrong word ;; Otherwise, we need to compare strings - lea rdx, [rsi + 8 + 1] ; Location of character being compared in entry + lea rdx, [rsi + 8 + 1 + 1] ; Location of character being compared in entry mov rdi, [.search_buffer] ; Location of character being compared in search buffer .compare_char: mov al, [rdx]