I have spent two days trying to figure this out. I have a feeling it has to do with the SERIN command. Please help.
------------------------------------------------------------------------
define OSC 4
Define CHAR_PACING 500

CMCON0 = 7
ANSEL = %00000000

cont con %10100000
scl var GPIO.5
sda var GPIO.4
sout var GPIO.2
sein var GPIO.1
addr var byte
wr var byte
val var byte

Main:

serout sout, 6, ["To write to EEPROM press w", 13, "To read EEPROM press r", 13]
serin sein, 6, wr
if (wr = "w") then goto ewrite
if (wr = "r") then goto eread
goto main

ewrite:

serout sout, 6, ["Write", 13]
serout sout, 6, ["Enter address 0 - 15", 13]
serin sein, 6, addr
serout sout, 6, ["Enter value 0 - 255", 13]
serin sein, 6, val

i2cwrite sda, scl, cont, addr, [val]
pause 10

serout sout, 6, ["Write complete", 13]
goto main

eread:

serout sout, 6, ["Read", 13]
serout sout, 6, ["Enter address 0 - 15", 13]
serin sein, 6, addr

i2cread sda, scl, cont, addr, val
pause 10

serout sout, 6, [#val, 13]
serout sout, 6, ["Read complete", 13]
goto main
------------------------------------------------------------------------