Empieza desde arriba hacia abajo porque tenes el valor inicial de private int sub = 0, y
el sistema de coordenadas tiene el origen (0,0) en el extremo izquierdo superior del applet.
Bueno, para obtener el valor "x", "y" de tu applet, utilizas el metodo getSize(), que te devuelve un objeto Dimension (que si te fijas en el api, vas a ver que tiene 2 variables de miembro, width y height, que te permiten "filtrar" el dato que queres), por ejemplo:
int altura = getSize().height;
int ancho = getSize().width;
si no me equivoco, tambien podes hacerlo directamente con getSize().getWidth()...el resultado te da lo mismo