Yes that's what I meant A4000_Mad. The error that the Rexx server is already running means you don't need to do this manually (it's probably in WBStartup). Line 21 seems to be the following line:
writeln(out,"Hello. Welcome to times tables practiss. Enter X for an answer when you want to stop.")
though I don't know whether numbering starts at 0 or 1, and whether or not it counts comments and blank lines as a line or not. If it is that line, then the syntax looks ok so it's definitely worth checking what Meega suggested (make sure the SPEAK: mountlist entry is in SYS:Storage/DOSDrivers and do Mount Speak: before running the app).
--
moto