* [[_DEFINE]] can be used to define all new or old QB64 variable [[TYPE]] definitions instead of DEF***.
* [[$INCLUDE]] text library files with needed SUB and [[FUNCTION]] procedures can be included in programs after all sub-procedures.
* '''QB64 ignores all procedural [[DECLARE]] statements!''' Define all ''parameter'' [[TYPE]]s in the SUB procedure.
* '''Images are not deallocated when the [[SUB]] or [[FUNCTION]] they are created in ends. Free them with [[_FREEIMAGE]].'''
<center>'''Qbasic'''</center>
* The [[IDE]] can create the SUB and [[END SUB]] lines for you. Use the Make SUB option in the Edit Menu. A box will come up for you to enter a name for the SUB. Enter the procedure code between the SUB and [[END SUB]] lines created.
* '''Qbasic SUB procedures could not have [[ON]] events, [[DATA]], [[TYPE]] or [[ON ERROR]] statements inside of them.'''
* Procedure code can use [[GOSUB]] and [[GOTO]] linenumbers and linelabels inside of the procedure only.
* Qbasic's [[IDE]] may place a [[DEFINT]], [[DEFSNG]], [[DEFLNG]], [[DEFDBL]] or [[DEFSTR]] statement before the SUB line if it is used in the main module. It may even be the wrong variable type needed. It can be removed or changed if necessary.
* An uncalled SUB will not be [[DECLARE]]d in Qbasic if it is not used.
{{Cl|COLOR}} Tclr: {{Cl|LOCATE}} Trow, Tcol: {{Cl|PRINT}} Text$; ' end semicolon prevents screen roll
{{Cl|END SUB}} '' ''
{{CodeEnd}}
:''Explanation:'' The procedure centers text printed to the screen. The parameters are the text color, row and the text itself as a string or string variable. The maximum width of the screenmode is found and divided in half to find the center point. The text string's length is also divided in half and subtracted from the screen's center position. The procedure will also work when the [[WIDTH]] statement has been used. When adding variables to Text$ use the + concatenation operator. Not semicolons!