Programación en Lenguaje Ensamblador

-El Verdadero Lenguaje de las Máquinas-

Conferencia de Gráficas por Computadora

–Tecnológico de Zitácuaro, Michoacán–

sala de computo itz
Zitácuaro Michoacán, 6:00 am. A esa hora desperté y como de costumbre dejé la presentación para último momento. Afortunadamente el buscador de imágenes del Google me ayudó a poner imágenes bonitas en esas diapositivas. Por suerte la presentación se retrasó hasta las doce del día y eso me dio tiempo para acabar esas diapositivas y de paso preparar el equipaje para el regreso. Luego de tomar por asalto el buffet y acabar de ponerme bonito para salir en público me llevaron al lugar del evento. Sin embargo, cuando me preparaba para iniciar el show este se retrasó una hora mas, de modo que la función comenzó pasadas la una de la tarde en una de las salas audiovisuales del centro de cómputo.

No se si ya lo había mencionado; pero la conferencia al final no fue enteramente sobre lenguaje ensamblador; sino de gráficas por computadora (específicamente aquellas generadas en Tiempo-Real en computadoras caseras). Debo de confesar que me sorprendió ver a tanta gente reunida en la sala para escucharme hablar; no sabría precisar un número pero seguro había “al menos 100” personas entre maestros, alumnos y hasta un par de empleados de mantenimiento que observaron por una ventana al fondo de la sala. Luego de la presentación comencé a hablar, aunque algo confundido no me di cuenta que dije algunas cosas muy raras y otras que son imperdonables. De entre lo gracioso, en lugar de “Gráficas por computadora y programación en Ensamblador” dije “Gráficas en Ensamblador y programación por computadora” pero la imperdonable fue la de que Ivan Sutherland no solo había sido el padre de las Gráficas por Computadora sino de la computadora en general. Ahora que reviso detenidamente la grabación que hice de la conferencia en formato MP3; que por cierte pienso subir en formato de Podcast veo otras imprecisiones no tan graciosas que creo que es mejor editar para la versión final. Por cierto, eso de confundir al ‘padre de tal arte o ciencia’ es un chiste bastante malo que de seguro entenderán por ahí un par de otakus.

La presentación se dividió en estas partes:

1.- Presentación de lo que eran las gráficas por computadora

2.- Poder matemático involucrado en la creación de las mismas

3.- Diferencia entre imágenes Pre-rendereadas y las generadas en Tiempo-Real

4.- Estructura general de los sistemas gráficos en una computadora

5.- Funcionamiento de un sistema capaz de generar gráficas en Tiempo-Real

6.- Comparación entre las gráficas generadas por GPU contra el CPU solo.

7.- Técnicas para optimizar la programación gráfica en Tiempo-Real (aquí es donde entra el ASM)

8.- Explicación de la generación de imágenes por polígonos y trazado de rayos

9.- Desarrollo de las Gráficas por Computadora en Ensamblador en México (esta fue la mejor de las diapositivas)

10.- Presentación del demo DEBRIS hecho por un grupo de hackers del norte de europa y que genera una animación 3D con música y que mide tan solo 177 kilobytes

11.- Sección de preguntas y respuestas

12.- Despedida

La verdad no hay mucho que pueda decir sobre la conferencia que no pueda encontarse con detalle en el podcast; pero cabe mencionar que entre los presentes había un reducido grupo de Geeks que hicieron unas preguntas muy buenas. La verdad es que no imaginé que encontraría a estudiantes tan preparados en una escuela tan apartada como el Tecnológico de Zitácuaro. Espero que si se hace el proyecto que voy a mencionar en la entrada siguiente, cuente con su activa participación. Por cierto, uno de ellos me hizo la única pregunta que me costó mucho trabajo contestar: ¿Y yo que era lo que había hecho y que aplicación tenía mi trabajo en ‘la industria’? Ahí fue donde me salió la gota gigante de sudor en la cara. Pero dije la verdad, que a pesar de llevar mas de 10 años de investigación independiente hasta el día de hoy no había logrado producir nada digno de ser vendido en el mercado internacional. Espero que la próxima vez que alguien me pregunte eso ya tenga algo hecho por mi que pueda mostrarles. Pues un cuestionamiento como este fue lo que desencadenó mi “vendetta” contra cierto grupo de autodenominados desarrolladores (que para mi no son mas que un montón de lamers con dinero) que opera en Guadalajara.

industria en mexico
Y hablando de guerras y vendettas, aquí les muestro la que fue la mejor de todas las diapositivas mostradas en la presentación donde, como todos pueden ver, se aprecia al detalle el crecimiento y desarrollo de ‘la industria’ de las gráficas por computadora y la programación en Ensamblador en México, así como las reputadas mentes que han hecho investigaciónes serias en este campo entre las que destacan la creación de engines gráficos en tiempo-real altamente optimizados hechos por nuestros talentosos programadores mexicanos en instituciones educativas supercaras de prestigio internacional. Por cierto, a mi regreso a Monterrey filtré esta diapositiva en el foro de discusión de cierta comunidad dedicada al desarrollo de videojuegos en México como respuesta a una discusión sobre el (muy precario) desarrollo de videojuegos en América Latina. Y mientras todos discutían como típicos intelectuales de café diciendo que si la falta de dinero o la ‘indiosincracia’ del latino eran las culpables yo saqué a relucir esa imagen. Como por arte de magia apareció alguien que decía estar desarrollando gráficas por computadora en una sucursal del reputado CALMECAC en el centro del país. Y otro, que aunque mas mexicano que los lancheros que mueven la panza por unas monedas me mentó la madre en sueco y me dijo que con esa diapositiva solo demostraba mi ignorancia sobre los grandes avances en gráficas por computadora hechos por los mundialmente reconocidos desarrolladores mexicanos. Y eso que no escucharon la parte de la conferencia cuyo fondo fue esa imagen. Creo que a la hora de editarla le voy a poner BEEPS a los nombres de empresas e instituciones mencionadas. Aunque estoy bien seguro de que mas de uno de ellos va a reconocer al amigo de un amigo al escuchar los logros ahí mencionados.

Por ahora hago una pausa, en la siguiente entrada hablaré no solo de mi mundano regreso a la ciudad de Monterrey sino de un par de planes que, si todo va bien, podrían convertirse en un grupo dedicado al desarrollo de videojuegos con reconocimiento internacional y el inicio de lo que podría ser la enseñanza de la verdadera programación en Ensamblador en una institución de educación superior. Eso si no se me ocure tomar unas vacaciones en guadalajara o playa del carmen antes de que esto suceda.

Noviembre 3, 2009 Publicado por asm86 | Uncategorized | , , | 12 comentarios

¡Hoy si vamos a comer!

–Llegada a Zitácuaro Michoacán–

Esta nota es la segunda parte del viaje al Tecnológico de Zitácuaro Michoacán, en México. En la última nota se habló de la llegada al aeropuerto. Ahora que ya estoy de regreso lamento de verdad no haber llevado una cámara digital conmigo. Pues vi tantas cosas que merecían ser exhibidas en este blog. Como por ejemplo la falla en uno de esos pizarrones electrónicos que anuncian las llegadas y las salidas, durante casi media hora la pantalla mostró el escritorio de Windows con un mensaje de error hasta que la tuvieron que reiniciar. El vuelo salió a las siete de la mañana sin muchos contratiempos y no pasó nada especial durante el mismo. Una vez en el aeropuerto de Toluca restaba llegar hasta Zitácuaro. Al bajar del taxi del aeropuerto se me acercó un señor con cara de “igual se trata de trata” a ofrecerme un taxi ‘barato’. De todos modo no me hacía falta y me seguí de largo. Bueno, total luego de un viaje de mas o menos 2 horas entre bosque y montañas al fin llegué a la terminal de autobuses de Zitácuaro donde me habría de encontrar con el Profesor Mauricio Delgado del Tecnológico de Zitácuaro. Este personaje, cuyo peinado y estilo de anteojos lo hacían parecer una versión joven de Jacobo Zabludovsky, arribó minutos después y no le costó mucho reconocerme. Luego de eso ocurrió quizas uno de los eventos mas importantes en mi ‘carrera’ como programador de Ensamblador que les narro a continuación:

comida
Lo primero que hice inmediatamente después de arreglar los detalles del hospedaje fue ¡Comer!. Si, puede parecer algo insignificante pero esa fue la primera vez en mi vida en que comí gracias a la programación el Lenguaje Ensamblador. Dicen que la primer comida que uno compra con su propio dinero es la que mejor sabe (o al menos eso dicen los mártires del capitalismo de los que tanto me burlo) pero estoy seguro que no se compara si tomamos en cuenta de que la mayoría de esos mártires trabajan en algo que no les gusta solo para sobrevivir. Si a esto le agregamos que fue la propia institución la que pagó todos estos gastos (es decir que ni siquiera usé mi propio dinero) y que además la programación en ASM es algo que realmente me gusta hacen a este sencillo hecho una victoria total.

De hecho, la frase de –¡Ahora si vamos a comer!– era original de Remi, el niño huerfano y vagabundo de una animación japonesa popular a principios de los años ochenta. Esta frase la dice en cierto momento en que logra conseguir unas cuantas monedas para comprar un pan que habría de compartir con sus únicos amigos, un perro y un changuito que le ayudaban a dar un show callejero. La verdad es que una de las mas grandes humillaciones que recibo casi a diario viene por parte de aquellos que ’se ganan la vida honradamente’ haciendo cosas como administrar bases de datos y cosas similares. Incluso me ofende profundamente que me digan cosas como “el hijo de tal o cual persona ya trabaja y se gana la vida honradamente y no como tu que te la pasas de huevón todo el día con la computadora”. De ahora en adelante ya no me podrán decir que programar en Ensamblador no da de comer porque ya comí gracias a este, al menos por 2 días. Ahora sigamos con la narración del primer día en Zitácuaro Michoacán.

Tec de Zitacuaro
Luego de ese evento trascendental, me llevaron a conocer las instalaciones del Tecnológico de Zitácuaro. Una institución de educación superior instalada en lo que ‘al menos 100′ años atrás había sido una hacienda enorme. De hecho aún se conservaba buena parte de su estructura original casi intacta, incluido un edificio al que llamaban ‘el casco’ y al que se tenía prohibido el acceso debido a su debil estructura. Se decía que en esa estructura había fantasmas porque ya entrada la noche se escuchaban gemidos y aparecían niños (algunos meses después por supuesto). Luego de ver desde afuera este peligroso lugar pasamos a la biblioteca, que aunque grande tenía muy pocos libros. Al menos tenían una versión no demasiado antigua de “Los Microprocesadores Intel” de Barry Brey y algunos otros libros ya viejos. Ahí discutimos un rato sobre como usar la tecnología actual para impartir mejor la clase de Ensamblador. Al parecer todo estaba listo para la conferencia del siguiente día.

Luego de eso y una pequeña convivencia familiar terminé en el lugar de hospedaje donde no hice gran cosa mas que dormir, pues no lo había hecho en mas de 33 horas y ya comenzaba a fallarme el juicio. Se suponía que la conferencia sería el día siguiente a las diez de la mañana.

Aquí termina la crónica de mi llegada a Zitácuaro y el previo a la conferencia. Pero no dejo de sentirme como uno está luchando contra un jefe que parece invencible en un juego de video y luego de interminables minutos uno de nuestros disparos parece haber surtido efecto; ese ruido que le dice a uno que aunque la victoria se encuentre aún muy lejos es alcanzable. Solo falta concentrar el fuego en ese punto y evitar ser vencido en el proceso. En la siguiente nota contaré por fin los detalles de la conferencia en el Tec de Zitácuaro.

Noviembre 3, 2009 Publicado por asm86 | Uncategorized | , | 2 comentarios