que interesante yo algún día me miraré el código de algún emulador sencillo a ver si lo entiendo...
aún así te puedo ayudar en dudas de optimización genericas. A nivel de pantalla te recomendaría que gastes el menor tipo de dato que puedas ya que como vemos los colores están reducidos. Intenta evitar el uso de flotantes donde puedas.
no he visto tu código pero supongo que construirás un árbol para realizar la emulación para construirlo normalmente se suelen hacer muchas llamadas recursivas... intenta minimizarlas y bueno al fin y al cabo lo que es muy importante intenta que el código en ensamblador generado aproveche al máximo la ds.
espero que sirva de algo
pd: tienes el código de tu emul por ahí?