=====Inserting characters into the keyboard buffer=====
//by Richard Russell, July 2006//\\ \\ On the //BBC Microcomputer// and some other Acorn computers you could insert a character into the keyboard buffer using the ***FX 138** command. For example the following code would insert the character "R" (CHR$82) into the keyboard buffer:
*FX138,0,82
//BBC BASIC for Windows// doesn't have a directly equivalent command, but you can achieve the same effect using the following procedure:
DEF PROCfx138(C%)
WM_CHAR = 258
SYS "PostMessage", @hwnd%, WM_CHAR, C%, 0
ENDPROC
The equivalent procedure for //BBC BASIC for SDL 2.0// is as follows:
DEF PROCfx138(C%)
LOCAL ev{} : DIM ev{type%,stamp%,winid%,text&(1)}
ev.type% = &303 : ev.text&(0) = C% : SYS "SDL_PushEvent", ev{}
ENDPROC
So to insert the character "R" into the keyboard buffer you would do:
PROCfx138(82)
or, equivalently,
PROCfx138(ASC("R"))