aboutsummaryrefslogtreecommitdiff
path: root/amforth-6.5/msp430/words/compare.asm
blob: 75a864414745a3ca97b91e16fa6868f2f48fa20a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

HEADER(XT_COMPARE,7,"compare",DOCOLON)

; : compare ( c-addr1 len1 c-addr2 len 2 -- f )
;   f == 0 if both strings are equal
;   f <> 0 if strings differ, details are way more complex
;    rot over <> if ( -- c-addr1 c-addr2 len2)
;     \ string dont have the same length
;     drop drop drop -1 exit then
;   s= ;

    DW XT_ROT,XT_OVER,XT_NOTEQUAL
    DW XT_DOCONDBRANCH
    DEST(COMPARE_1)
	DW XT_DROP,XT_2DROP, XT_MINUSONE,XT_EXIT
COMPARE_1:
    DW XT_SEQUAL
    DW XT_EXIT