By the way, I would recommend making functions with DEF, instead of making subroutines with labels and GOSUB. GOSUB is an older way of doing things, and doesn't let you give parameters like DEF does. 'User command which returns nothing DEF FOO X PRINT "X = ";X END 'User function which returns a value DEF SQUARE(X) RETURN X * X END FOO 100 PRINT SQUARE(10)