Here is a snippet of running code
Code:
INTCON = %11000000
'---------------------------------------------
INCLUDE "DT_INTS-18.bas"
INCLUDE "ReEnterPBP-18.bas"
ASM
INT_LIST macro
INT_Handler RX2_INT, _GetCharPort2, PBP, yes
endm
INT_CREATE
ENDASM
;----------------------------------------------------------------------------------
Goto OverInt
GetCharPort2:
for I_XDataLen = 0 to 63
HSERIN2 50,TimeOut2,[I_XDataChar]
if I_XDataChar = 13 then goto GetChar2Valid
I_XDataBuf[I_XDataLen] = I_XDataChar
next I_XDataLen
I_XDataLen = 63 ' lost characters, but do the best we can
GetChar2Valid:
Timeout2:
I_XDataBuf[I_XDataLen] = 0
if I_XDataLen > 0 then
XDataSource = 2
XDataFlag = 1
endif
GetChar2_Return:
if PIR3.5 then HSERIN2 [I_XDataChar]
@ INT_RETURN
;--------------------------------------------------------------------
Overint:
PIR3.5 = 0
@ INT_ENABLE RX2_INT
YOUR CODE HERE
Bookmarks