You may not link in the SBasic interface into the compiled code using the $$asmb directive. This is due to technical reasons, and also because it wouldn't make sense: If your compiled program needs these keywords, this means that it (only) works in ProWesS. Thus, all users of your programs must have ProWesS. And if they have ProWesS, they have this interface anyway.
This is also why you can load the ProWesS SBasic Interface into normal SuperBasic, so that one can run compiled programs. As was mentioned in the introduction, you must not try to run uncompiled programs on machines which are not running SMSQ(/E). Again, there are technical reasons for this (for the non-technical user, skip the next paragraph):
As you may know, SuperBasic is special in that it, and its data area, may zip around memory according to how the TPA expands and contracts. This is why A6 must always be kept constant when using Superbasic extensions, the operating system can change that at any time. The problem here is that ProWesS modifies and uses A6 for itself. One could of course make sure that, when coming back from ProWesS, one finds the correct value of A6 and sets it to that before going back to the interpreter - but what happens if the operating system changes A6 whilst that is being used by ProWesS? ProWesS wouldn't know of this, of course - instant crash when it tries to use a (now changed) A6!
Also, and since the Interface must be initialised ina special way which won't be possible from within QLiberator, the upshot is that permission is explicitly denied to include the ProWesS SBasic Interface in your own compiled programs with the $$asmb directive, or in any other way. Again, as mentioned above, this is no problem since all who have ProWesS also have this interface!
As was mentioned in the part of this manual concerning the PW keyword, the parameter passed to it can either be a string between quotes (largely preferable) or just the tag/type name, the keyword being sufficiently intelligent to convert the direct name to a string.
HOWEVER, if you compile your program with the NAMES option deselected (i.e. NONAMES) then you MUST enclose the parameter between quotes, else QLiberator will complain and/or the PW function will not be able to find the value corresponding to the tags or types and/or return strange values.
When compiling a program that is to work under ProWesS, you should take care to use the "NOWINDS" option, i.e. have the "WIND" item in the QLiberator interface deselected. Else, channels #0,#1 and #2 are already opended for the program when it attempts to use ProWesS, which can play havoc with the windows. See the PWoutln keyword for more detail.