LOC - QB64 Wiki


From QB64 Wiki

Jump to: navigation, search

The LOC function returns the status of a Serial(COM) port receive buffer or the current byte position in a file.


bytes% = LOC(open_number)

  • The parameter used is the number used in the port OPEN AS statement.
  • Returns 0 if the buffer is empty. Any value above 0 indicates COM has received data.
  • Use it in conjunction with INPUT$ to get the data bytes received.
  • Can also be used for the current position in a file routine. See: SEEK

Example: Reading and writing from a COM port opened in Basic.

OPEN "COM1: 9600,N,8,1,OP0" FOR RANDOM AS #1 LEN = 2048 ' random mode = input and output DO: t$ = INKEY$ ' get any transmit keypresses from user IF LEN(t$) THEN PRINT #1, t$ ' send keyboard byte to transmit buffer bytes% = LOC(1) ' bytes in buffer IF bytes% THEN ' check receive buffer for data" r$ = INPUT$(bytes%, 1) ' get bytes in the receive buffer PRINT r$; ' print byte strings consecutively to screen" END IF LOOP UNTIL t$ = CHR$(27) 'escape key exit CLOSE #

See also:

Go to Keyword Reference - Alphabetical
Go to Keyword Reference - By usage
Go to Main WIKI Page
  • Page
  • Discussion
  • View source
  • History
Personal tools
  • Log in
  • What links here
  • Related changes
  • Special pages
  • Printable version