Sorry about that everybody... forgot what base I was in. The version I posted was for Pro.
Here's the two versions that are valid in this base. Both look the same as the Pro version on the screen.
Darkbasic Classic ( with inkey$() )
In this one the timer it still there but in an if/then statement by itself... so a$ can be cleared to prevent the backspace character (a vertical line) to be added to the string when the timer() is below the time it allows backspace to work.
sync rate 0
sync on
tim=timer()
do
cls
text 0,0,"User Input: " + Com$+" "
a$=inkey$()
if a$=chr$(8)
a$=""
if timer()>tim+100
Com$ = left$(Com$,len(Com$)-1)
tim=timer()
endif
endif
if a$=chr$(13) then exit
if a$<>"" then Com$ = Com$ + a$
sync
loop
text 0,20,Com$
sync
wait key
Darkbasic Enhanced ( with entry$() )
This one has a for/next loop for a$ because it sometimes has more than one character (without this it also adds the backspace character to the string). And the return has to be taken off Com$ before it exits the do/loop.
sync rate 0
sync on
clear entry buffer
do
cls
text 0,0,"User Input: " + Com$+" "
a$=entry$():clear entry buffer
for t=1 to len(a$)
b$=mid$(a$,t)
if b$=chr$(8)
Com$ = left$(Com$,len(Com$)-1)
b$=""
endif
if b$<>"" then Com$ = Com$ + b$
next t
if b$=chr$(13) then Com$ = left$(Com$,len(Com$)-1):exit
sync
loop
text 0,20,Com$
sync
wait key
Both have a "cls" that can be replaced with a pasted image of your choice. Again sorry about that. I'll pay more attention next time.