; ( -- ) Tools ; R( -- ) ; emits a list of all (visible) words in the dictionary VE_WORDS: .db $05, "words" .dw VE_HEAD .set VE_HEAD = VE_WORDS XT_WORDS: .dw DO_COLON PFA_WORDS: .dw XT_HEAD .dw XT_EFETCH PFA_WORDS1: .dw XT_DUP ; ( -- addr addr ) .dw XT_NOTEQUALZERO ; ( -- addr f ) .dw XT_DOCONDBRANCH ; ( -- addr ) is nfa = counted string .dw PFA_WORDS2 ; .dw XT_ICOUNT ; ( -- adr n ) .dw XT_DOLITERAL .dw $1F .dw XT_AND ; mask immediate bit .dw XT_OVER .dw XT_OVER .dw XT_ITYPE ; ( -- adr n ) .dw XT_2SLASH ; ( -- adr k ) .dw XT_1PLUS ; ( -- adr k+1 ) .dw XT_PLUS ; ( -- adrk+1 ) .dw XT_SPACE ; emit space .dw XT_IFETCH ; ( -- addr ) .dw XT_DOBRANCH ; ( -- addr ) .dw PFA_WORDS1 ; ( -- addr ) PFA_WORDS2: .dw XT_DROP ; ( addr -- ) .dw XT_EXIT