illegalThreadStateException Emulador Nokia

Pessoal é o seguinte estou desenvolvendo um projeto mas tranquei em uma exceção:
É mais ou menos isto a aplicação.

public class AnimationLogo extends CustomItem implements Runnable
{

private final boolean move;
private Thread thread;

public Animation()
{
this.move = false;
this.thread = new Thread(this);
}

public void showNotify()
{
this.thread.start();
this.move = true;
}

public void hideNotify()
{
this.move = false;
}

public void run()
{
while(move)
{

}
}

resto da classe!!!
}

=====================

Aplicação

package application;
import graphicsInterfaceUser.AnimationLogo;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.TextField;
import javax.microedition.midlet.*;

public class MidletLogo extends MIDlet
{
private final Display display;
private final Command exit, ok;
private final Form form;
private final TextField password;
private final AnimationLogo logo;

public MidletLogo()
{
    //define o display
    this.display = Display.getDisplay(this);

    // define o comando de saída.
    this.exit = new Command("exit", Command.EXIT, 0);
    
    //define o form e adiciona o comando de saida
    this.form = new Form("");
    this.form.addCommand(exit);

    // define a adiciona o comando de acesso.
    this.ok = new Command("Acessar", Command.OK, 0);
    form.addCommand(ok);

    // define e adiciona a animação na tela.
    this.logo = new AnimationLogo("", form);
    this.form.append(logo);

    // atualiza o command listener.
    this.form.setCommandListener(new CommandListener() {
        public void commandAction(Command arg0, Displayable arg1) {
            if(arg0==exit)
            {
                notifyDestroyed();
                destroyApp(true);
            }
            else if(arg0==ok)
            {
                logo.hideNotify();
                form.append(password);
            }
            
        }
    });

    this.password = new TextField("Password", "", 10, TextField.PASSWORD);
}

public void startApp() {
    this.display.setCurrent(form);
}

public void pauseApp() {
}

public void destroyApp(boolean unconditional) {
}

}

O intuito é gerar uma animação bem simple e em um customItem , como se fosse uma entrada ilustrada da aplicação e quando o usuário clicar na opção acessar adicionar um TextField encerrar a animação, ou até continuar tanto faz. Ele gera a animação na boa, mas quando clico na opção acessar (Command) ele gera a exceção java.lang.illegalThreadStateException.

O estranho é que no emulador default da sun ele roda na boa, só ocorre quanto executo no emulador do nókia.

Gurizada eu não conheço muita coisa de J2ME nem de Threads estou começando a esudar agora se tiver alguma bobagem muito grande pode falarrrr na buenaaa.
Desde já valeu a forçaaa!!!