1 ;;; This file contains words dealing with word lists (vocabularies)
3 WORD p_wordlist,'WORDLIST',dovariable
4 ;; VARIABLE WORDLIST is the currently active wordlist.
7 WORD p_words,'WORDS',fasm
11 push qword [p_wordlist_DFA]
18 ;; pfa@ => ( chars* length)
26 pop rax ; ignore errors
38 WORD p_strncmp,'STRNCMP',fasm
39 ;; ( chars1 chars2 n -- flag )
40 ;; Compare bytes until one is NUL, return <0, =0 or >0 to
41 ;; indicate that chars1 is lesser, they are equal, or chars2
42 ;; is lesser in ascii ordering respectively.
47 ;; rax = chars1, rbx = chars2, cl = byte acc, rdx = length
62 ;; ( chars length -- [ chars 0 | cfa 1 )
63 ;; Search the current wordlists for the given pname
64 mov rcx,[p_wordlist_DFA]
78 pop rax ; return value
86 mov qword [rsp+8],rcx ; replace chars with tfa