User manual

Page 17 MSI-P602 User Manual
pchar = &H10: GOSUB sendpchar ‘send <DLE>
pchar = &H3: GOSUB sendpchar ‘send <ETX>
GOTO begin
CASE “11”
END
CASE ELSE
GOTO begin
END SELECT
start:
CLS
repeat:
C$ = INKEY$
IF C$ <> “” THEN GOTO begin ‘goto begin on keyboard entry
IF NMEA = 1 THEN GOSUB getsecondarychar ELSE GOSUB getprimarychar
GOTO repeat
init:
‘init MSI-P602 port of U4
cr$ = CHR$(13)
OUT primary + 3, &H80
OUT primary, BAUD
OUT primary + 1, 0
OUT primary + 3, 11’3
x = INP(primary) ‘dummy read
x = INP(primary) ‘dummy read
‘init MSI-P602 port of U5
cr$ = CHR$(13)
OUT secondary + 3, &H80
OUT secondary, BAUD1
OUT secondary + 1, 0
OUT secondary + 3, 3
x = INP(secondary) ‘dummy read
x = INP(secondary) ‘dummy read
RETURN
sendpchar: ‘Send character pchar to primarry port
WHILE (INP(primary + 5) AND &H40) = 0: WEND
OUT primary, pchar
RETURN
getprimarychar:
IF (INP(primary + 5) AND 1) = 1 THEN
z = INP(primary)
IF NMEA = 1 THEN
PRINT CHR$(z);
ELSE
PRINT CHR$(&H30 + z / 16);
PRINT CHR$(&H30 OR (z AND 15));
END IF
END IF
RETURN