It is true that DBC has some troubles with collision. I also noticed from other people (I'm over a year on this DBC forum) that there are some problems with which object should be put first in
object collision(). But hey, DBC is getting old

.
I'd do something like:
for Asteroid = MinAsteroid to MaxAsteroid
if object in screen(Asteroid) > 0
if object collision(SpaceShip, Asteroid) > 0
dec SpaceShipLife
endif
endif
next Asteroid
the variables should point themselves out.
Quote: "You could use distance formulas."
sqrt() is a slow command.
It's the programmer's life:
Have a problem, solve the problem, and have a new problem to solve.