OK, so do a simple test, skip the HSERIN stuff and load the value in the array manually at the top of your code, then redo your tests.

Also... there's a little mistake here
Code:
hserin 10000,MainStart,[WAIT("!"),STR Datain\13]
Should be
Code:
hserin 10000,MainStart,[WAIT("!"),STR Datain\12]
I think it's on the VB side... just drop the Mscomm1.Output line