The 2D commands like dot for example, have to lock the buffer prior to drawing any pixels and then unlock it once they're done. The lock/unlock process can be fairly slow, much slower than the drawing the pixel in this case.
You can control this behavior yourself however, by using the
lock pixels &
unlock pixels commands to manually lock/unlock the bitmap you're drawing to..
So if you're drawing a lot of dots in a loop, then you manually the lock the buffer prior to entering the loop and unlock once you're done..
Some like this for example,
lock pixels
For lp=0 to 10000
` Do some pixel drawing
dot rnd(800),rnd(600)
next
unlock pixels