BASIC stamp manual v2.2

5: BASIC Stamp Command Reference – STORE
BASIC Stamp Syntax and Reference Manual 2.2 www.parallax.com Page 453
Main:
DEBUG "Flat Memory", CR,
"---------------------", CR,
"First Slot..... ", DEC LoSlot, CR,
"Last Slot...... ", DEC HiSlot, CR,
"Flat EE Size... ", DEC MemSize, CR, CR
PAUSE 2000
DEBUG "Writing to flat Memory...", CR
PAUSE 1000
FOR eeAddr = 0 TO (MemSize - 1) STEP 128 ' step through "flat" EE
value = eeAddr * 2 ' generate value
GOSUB Write_Word ' write it
GET 127, slot ' get R/W slot
DEBUG "--> Location: ", DEC5 eeAddr, " ", ' show "flat" address
"Value: ", DEC5 value, " ", ' show value
"(", DEC slot.NIB1, ")", CR ' show slot
NEXT
DEBUG CR
DEBUG "Reading from flat Memory...", CR
PAUSE 1000
FOR eeAddr = 0 TO (MemSize - 1) STEP 128
GOSUB Read_Word ' read value from EE
GET 127, slot ' get W/R slot
DEBUG "<-- Location: ", DEC5 eeAddr, " ",
"Value: ", DEC5 value, " ",
"(", DEC slot.NIB1, ") "
IF (value <> (2 * eeAddr)) THEN ' verify location
DEBUG "- Error"
ENDIF
DEBUG CR
NEXT
END
Write_Word:
' NOTE: only use even-byte eeAddr with this routine
STORE (eeAddr >> 11) + LoSlot ' set slot
WRITE eeAddr, Word value ' write value
RETURN
Read_Word:
' NOTE: only use even-byte eeAddr with this routine
STORE (eeAddr >> 11) + LoSlot ' set slot
READ eeAddr, Word value ' read value
RETURN