No one is laughing. You are trying to learn and that is what we like around here.

When using SERIN2/SEROUT2
INCLUDE "MODEDEFS.BAS"
is not needed. Does not cause any problems if it is there though. It is a hold over from the BS1 days.

Same goes for "SYMBOL", another BS1 hold over.
serpin VAR porta.0 'serial input pin
is fine.

Unless I am missing something your code looks like it will work for what you want.
You did what I would do...
;clrf GPIO ; Clear outputs on button release (or timeout)