LOOKDOWN - BASIC Stamp Command Reference
SYMBOL
Value = B0
SYMBOL
Result = B1
Value = 17
Result = 15
LOOKDOWN Value, (26, 177, 13, 1, 0, 17, 99), Result
DEBUG "Value matches item ", #Result, "in list"
-- or --
Value
VAR BYTE
Result
VAR NIB
Value = 17
Result = 15
LOOKDOWN Value, [26, 177, 13, 1, 0, 17, 99], Result
DEBUG "Value matches item ", DEC Result, " in list"
DEBUG prints, "Value matches item 5 in list" because the value (17)
matches item 5 of [26, 177, 13, 1, 0, 17, 99]. Note that index numbers count
up from 0, not 1; that is, in this list, 26 is item 0.
What happens if the value doesn't match any of the items in the list? Try
changing "Value = 17" to "Value = 2."
LOOKDOWN leaves Result unaffected. Since Result contained 15 before
LOOKDOWN executed, DEBUG prints "Value matches item 15 in list."
By strategically setting the initial value of Result, as we have here, your
program can be written to detect when an item was not found in the list.
Don't forget that text phrases are just lists of byte values, so they too are
eligible for LOOKDOWN searches, as in this example:
SYMBOL
Value = B0
SYMBOL
Result = B1
Value = "f"
Result = 255
LOOKDOWN Value, ("The quick brown fox"), Result
DEBUG "Value matches item ", #Result, "in list"
-- or --
Value
VAR BYTE
Result
VAR NIB
Value = "f"
Result = 255
Page 178 • BASIC Stamp Programming Manual 2.0b • www.parallaxinc.com
Since 2 is not on the list,
1
2
2
2
2
e
p
sx
T
HE INDEX NUMBER OF THE FIRST
0,
1.
ITEM IS
NOT
U
SING TEXT IN THE VALUE LIST
1
2
2
2
2
e
p
sx
.
Need help?
Do you have a question about the BASIC Stamp 2e and is the answer not in the manual?