Programación en Lenguaje Ensamblador

-El Verdadero Lenguaje de las Máquinas-

Test Your Might!

–¡Quien Crea Saber Programar que lo Demuestre!–

controles

Durante la época de las arcades de inicios de los noventas, particularmente con los juegos de Mortal Kombat, podía verse un interesante fenómeno entre algunos de los jugadores: algunos ocultaban los movimientos de sus manos con su propia ropa. Al principio pensé que lo hacían para evitar que los dedos se les enfriaran en climas invernales pero esto también ocurría en días calurosos. A veces junto con el jugador principal había un “padrino” que se encargaba de cubir los controles con su propio cuerpo en ciertos momentos clave, particularmente a la hora de hacer los “Fatalities”. A la fecha soy incapaz de entender el porqué de esto; pero luego escuché otra historia que tiene mucho que ver con el asunto. Por cierto, la frase “Test Your Might!” viene precisamente del juego de Mortal Kombat.

Hace ya algunos años cierto maestro me contó una interesante historia de algo que a la fecha no se si se trata de un acto de egoismo, mentiras o simples ganas de fastidiar. Según me contó durante los inicios y mediados de los noventas él quiso dar un curso sobre programación gráfica. En esos tiempos el estandar de los juegos era 320 por 200 a 256 colores. El famoso Modo 13h en el que corrían la inmensa mayoría de los juegos de aquellos días tan lejanos. Quien me contó esta historia decía que cada vez que tocaba el tema de la programación gráfica todos los alumnos permanecián en un silencio nervioso. Cuando pregun\te a que creía que se debía esto, esto fue lo que me contestó:

–“Es que la mayoría no sabía de lo que estaba hablando y los que sabían algo no lo querían decir”–.

“¡Y los que sabían no lo querían decir!” Esta frase se me quedó muy grabada al escucharla, aunque por mucho tiempo después me encontré con situaciones parecidas en toda “la industria” de la computación. Ya perdí la cuenta de las veces que me topé con supuestos profesionales que juraban y perjuraban haber trabajado en grandes proyectos informáticos de talla internacional, desde simples administradores de bases de datos que hablaban por horas y horas de certificaciones hasta un gordo que afirmaba haber programado para la NASA (esta historia ocurrió en una plática con el grupo de usuarios de Linux en Monterrey y este personaje era el padre de un pelado que se parecía a Toru Tanaka). Sin embargo, cuando quería preguntarles acerca de su trabajo y sus descubrimientos todos guardaban silencio y se defendían diciendo cosas como que habían firmado contratos NDA que les impedían hablar del asunto u otros que sencillamente me contestaban con “que ( H!N6@D05 te importa”. La verdad es que, con el tiempo descubrí que la inmensa mayoría de esta gente en realidad era incapaz de hacer aquello que afirmaba poder hacer y de los pocos que realmente habían hecho algo, en realidad eran cosas poco menos que insignificantes. La pregunta aquí es ¿Qué es lo que la gente gana con esto?

Entiendo perfectamente que cuando alguien consigue un logro quiera que todo mundo sepa que lo hizo y como. Como los que presumen sus hazañas o sus conquistas en esas noches de juerga. Pero no entiendo porque alguien que quiere llamar la atención sobre algo que afirma haber hecho al mismo tiempo intenta ocultar los detalles sobre el “como” lo logró. No voy a mencionar ningún ejemplo famoso porque no terminaría nunca. Pero sigo yo preguntándome el porqué de esto. Mi simple lógica me dice que alguien orgulloso quiere que todo mundo vea su obra hasta el mas mínimo de los detalles para que todos se admiren de su capacidad y conocimientos. No tiene sentido que alguien así quiera ocultar precisamente este tipo de cosas.

A veces pienso que este “miedo” puede tener 2 razones: la primera es que en realidad quienes intentan ocultar esta clase de información en realidad son farsantes que en realidad no saben programar y la segunda es que tienen miedo de que alguien “les robe la idea”. El primer punto no tengo necesidad de discutirlo; pero el segundo vale la pena dedicarle un par de párrafos.

Cangrejos a 10 centavos la docena

Se dice que el escritor de la novela DUNAS (DUNE para los fans) dijo alguna vez que las ideas sin desarrollar valían 10 centavos la docena. Una idea solo tiene valor a partir de que uno le invierte el suficiente trabajo y por lo tanto, solo una idea completamente desarrollada puede considerarse robable.

La pregunta es ¿Cuanto desarrollo necesita una idea para ser considerada robable?¿Puede uno realmente decir que la idea que tiene le pertenece realmente a uno?

De hecho, recientemente acabo de terminar de ver un interesante video de una conferencia impartida en el Campus Party (y cuyo enlace pueden encontrarlo en la red social asociada a este blog) donde un empleado de Electronic Arts hablaba de lo que siempre hablan en esta clase de conferencias; mas adelante escribiré una nota completa sobre este video; pero lo que viene a colación con lo tratado en esta nota fue la última parte donde se hablaba del trabajo en equipo. Como de costumbre mencionó aquella fábula de los cangrejos en los que estos se impiden mutuamente la salida del barril donde se hallan atrapados. ( Como paréntesis, cada vez que escucho esta historia me pregunto como es que hace el último de los cangrejos para salir del barril cuando se ha quedado solo ).

Para nadie es un secreto que yo soy muy poco colaborativo para con mis colegas de “La industria”, pues aunque aún (noviembre 2009) no tengo una S.A. Registrada bajo mi nombre si tengo ya un buen rato investigando en “el mundillo” (como dirían los españoles). Yo mismo he declarado unilateralmente la guerra a determinados grupos de “Desarrolladores” y normalmente vivo burlándome de todos los demás. Pero este no es el caso cuando se trata de la Programación en Lenguaje Ensamblador; pues hasta ahora no he encontrado a un solo programador (competente) de ensamblador con el que no me lleve bien. Supongo que por el mismo hecho de que somos pocos es que existe esa hermandad innata entre los programadores de Ensamblador. Por lo que lo mucho o poco que he conseguido en mis investigaciones en estos mas de 10 años voy a compartirlo con esta comunidad.

La pregunta que supongo que han de estar haciéndose es ¿Porqué este imbecil quiere regalar por ahí sus conocimientos tan duramente ganados en lugar de usarlos para producir un buen juego y hacerse rico? Puedo contestar a esto con al menos 3 respuestas:

Primera: Estos conocimientos son exclusivamente para programadores de Ensamblador, esta información le resultará inutil, cuando no imposible de entender a quienes no conocen ni les interesa programar en este lenguaje.

Segunda: Al menos en mi país, y en buena parte de los paises mas avanzados, casi nadie programa en Ensamblador. Sin embargo ya hay grupos que dicen dedicarse profesionalmente al desarrollo de videojuegos. Si alguien se va a llevar mi empleo prefiero mil veces que se lo lleve otro programador de Ensamblador que sea mucho mejor que yo a un maldito lamer que ni siquiera sabe como hacer scripts para un motor gráfico ya hecho.

Tercera: Los trabajos “robables” son aquellos que ya están terminados, no los formados de piezas inconexas. Por lo que aunque veo muy probable que algunos hagan copy-paste con algunas rutinas veo muy dificil que alguien se tome la molestia de hacerlas trabajar todas juntas para formar un videojuego completo. Y acaso hay alguien que logre tal hazaña.. ¡Bienvenido sea al fascinante mundo de la Programación en Lenguaje Ensamblador!

Saben, desde hace ya algunos meses que quiero comenzar a hablar sobre el tema de gráficas por computadora. Pero no lo he hecho porque para poder entrar al tema se requiere de cierto dominio sobre temas de los que casi no he escrito en este blog. Pero espero poder haber cubierto algunos de estos temas y haberles mostrado como hacer una sencilla animación de sprites en uno o dos meses. Mas adelante puede que veamos algo de gráficas vectoriales. Pero por ahora es mejor velar las armas y prepararnos para lo que viene en las próximas notas.

asm

Por cierto, la red social de programadores de ensamblador ya está creciendo, literalmente de la noche a la mañana se inscribieron “two of my most deadly minions” que me han acompañado en esto del ensamblador durante ya algunos años y el maestro que organizó el evento en el Tec de Zitácuaro. Algunas horas después entró otro famoso seguidor y casi un “contributor” que proviene de una tierra donde no es nada facil programar (él sabrá de quien hablo cuando lea esto), un programador argentino que escribe un interesante blog sobre programación tan avanzado que aún yo tengo que leerlo despacio para entenderlo y un programador español que aunque aún no ha mostrado sus habilidades ya demostró su valor al entrar a una red social de locos que solo programan en Ensamblador. En fin, espero que esa red social junto con este blog crezcan, si no con mucha gente, al menos con los mejores. Pues programar en Ensamblador es tan dificil que solo muy pocos entre los pocos pueden realmente dominar este lenguaje.

Espero que un día no muy lejano esta pequeña sociedad tenga el suficiente poder en términos de recurso humano e infraestructura de software para poder convertirse en una verdadera desarrolladora de videojuegos. Hay que actuar ahora que los esfuerzos por levantar estas empresas en México son poco menos que risibles; al menos desde el punto de vista de los programadores de Ensamblador.

Anuncios

noviembre 16, 2009 - Posted by | Uncategorized | , ,

2 comentarios »

  1. Bravo otra vez y mil veces mas . Union solo eso es lo que hace falta.En estos dias voy a publicar un articulo sobre la programacion en ASM y sus “dificultades” . Todo es un mito con respecto al ASM . (al menos eso creo).

    PD: Respondeme el correo que te envie sobre los mbox.
    :Tengo terminadillo un codigo Antiexploits.Te lo envio por correo.
    :Lo otro es un codigo que termine ayer para mostrar la macaddress , se que esto se sale un poco del tema pero es bueno saberlo.
    link:http://sites.google.com/site/compactamos/descargas/MacAddres.rar?attredirects=0&d=1

    Test Your Migth!!

    oh Mortal Combat , que tiempos esoss

    Saludos
    The contributor.

    Comentario por Kapetres | noviembre 17, 2009 | Responder

  2. pUES INTERESADO ESTOY TODAVIA SOBRE ENSAMBLADOR Y AUNQUE PARECIERA IMPOSIBLE, CADA VEZ LE AGARRO MAS GUSTO Y FACILIDAD AL ENTENDERLO (LIBROS E INTERNET MEDIANTE), CLARO SOLO ES MODO 286, PERO ALGO ES ALGO.

    Comentario por MAURICIO | noviembre 17, 2009 | Responder


Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: