Intenté compilar una versión de MOD LSD de eMule optimizada para Athlon XP. Hace algunos años, vi que el mejor compilador Windows para los procesadores de AMD era el CodeWarrior de Metrowerks.

Así que procedí a bajar los fuentes del eMule 0.44d LSD 19b 1061 (Lambda 1), y descargué la versión de evaluación de CodeWarrior Development Studio for Windows 9.3.

Al abrir el proyecto original en Visual C++ 7.1, la mayoría de cosas se importaron bien, y solo tuve que agregar manualmente algunas referencias.

El proceso de compilación dio unos pocos errores, así que yendo bastante a saco, agregué algunos #ifdef, y algunos #define.

Al final del proceso, todo compiló correctamente, y para mi sorpresa, el ejecutable resultante era mucho menor que el de la compilación oficial del Dr. LSD.

Lanzo mi binario, y nada más arrancar, genera un error de protección de Windows, y se cierra el proceso. No creo que sea un error de CodeWarrior, sino que más bien, por diferencias de sintaxis menores con Visual C++, la compilación condicional que modifiqué debió romper algo.

El caso es que los 4 Gb que tenía en mi cola de descarga desaparecieron por completo. Todos los archivos .met y .met.bak habían sido borrados, o bien corrompidos.

La mala noticia es que he tenido que volverlos a poner a descargar, perdiendo todo lo que ya se había bajado. La buena es que he visto que es posible compilar eMule con CodeWarrior sin demasiado esfuerzo, pero eso si, modificando el código con cuidado y tranquilidad.

Cuando tenga el tiempo suficiente intentaré compilar varias versiones para los usuarios de procesadores AMD. Se que el MOD de LSD incluye ciertas optimizaciones para CPU concretas, pero éstas se reducen a memcpy y poco más. Una compilación así, debe dar un rendimiento muchísimo más elevado.