Iniciación a la programación en ensamblador (II)

A muchos de vosotros os gustó el primer tutorial de iniciación a la programación en ensamblador que publicamos en el mes de mayo. Desde entonces habéis estado esperando por la segunda parte del mismo. Lo cierto es que se ha hecho esperar pero por fin ya está aquí y os aseguro que merece la pena.

Me consta que su autor, Pepe Vila, ha dedicado mucho tiempo y esfuerzo en prepara el artículo y hacerlo accesible para los más novatos. Ha logrado adaptar las explicaciones de manera que seguirlo no supondrá ningún problema. En palabras de Pepe:

Vamos a ver como hemos creado el programa HOLA MUNDO que vimos en la primera parte, qué son las llamadas a la BIOS, cómo podemos ver donde están y como usarlas, así como depurar el código o buscar errores usando el Debugger del BlueMSX con nuestro programa.

Quiero agradecerle públicamente su trabajo en pro de la divulgación de estos conocimientos. A mí me está ayudando muchísimo, de hecho he sido capaz de entender cómo poner un sprite en pantalla usando lenguaje ensamblador… Cosa imposible hace tan solo unos meses.

Y recordad que podéis plantear vuestras dudas, comentar qué os ha parecido o qué cosas se podrían mejorar, al pie de esta entrada. La colaboración de todos es muy importante.

Actualización: A continuación tenéis en enlace a la descarga completa del tutorial con todos los capítulos unidos en un solo PDF para una lectura más cómoda. A medida que Pepe publique nuevos capítulos actualizaré el documento.

Iniciación a la programación en ensamblador (Pepe Vila)

14 comentarios sobre «Iniciación a la programación en ensamblador (II)»

  1. Konamito, que te voy a decir, yo estoy haciendo algo similar en el Sistema Commodore en relación a divulgar conocimientos de iniciación en Lenguaje Maquina resumiendo un Libro que estoy estudiando.
    No puedo menos que felicitar tu iniciativa de dar a conocer el Lenguaje Maquina que me parece la mejor Herramienta y mas desaprovechada en el Desarrollo Actual..

    Ehhh Jose!!!

    Saludos.

  2. El mérito es de Pepe Vila que sabe de esto y quiere compartirlo con los “legos” en la materia. Creo que su iniciativa es de elogiar.

    Desde Konamito.com recibirá todo el apoyo necesario para continuar.

  3. En realidad yo soy tan fanático del CM/Assembler com Rulas, de hecho cuando hacía cosas en BASIC mi sueño era dar ese paso y aprender el “mágico código máquina”, el lenguaje que todo lo puede 🙂

    Sigo pensando lo mismo, con la diferencia que ahora sé que no es el único factor a contar, además del lenguaje también pesa la jugabilidad. Por eso, aunque un juego esté hecho en BASIC (compilado o no), C, o lo que sea, si la jugabilidad y el producto es bueno entonces el lenguaje no es TAN importante.

  4. Hola,

    Pregunta abierta para Pepe Vila, Konamito o quien se precie… Mi deseo sería saber si aprendiendo con este manual podría editar las versiones de juegos en cassette que dan problemas y poder hacerlas funcionar, o convertirlas a rom o a dsk o lo que sea, pero hacerlas funcionar. Este tutorial me llevaría por ese camino? Es muy difícil poder hacer lo que tengo en mente?

    Saludos,

  5. Hola DEREBO

    Lo que pretendes es muy dificil, trastocar o modificar un codigo por dentro implica aprender como funciona el juego que quieres adaptar a ROM por dentro paso a paso, y eso es un mundo.

    Ahora eso si. pasar un .bin o imagen de cassete a rom hay herramientas que lo hacen.

    Un saludo.

  6. Hola Pepe,

    Gracias por tu respuesta. Justo como me imaginaba… es un tema para profesionales 😉 Bueno, qué se le va a hacer. Sin ebaro, lo que comentas de convertir de cassette a rom sí que parece interesante! Por cassette te refieres a los ficheros que llevan extensión .cas? He probado uno que siempre me llamó la atención, el Deus Ex Machina. Las dos versiones .cas fallan en el emulador BlueMSX, quizá en un ordenador MSX real no fallen. Convertirla de .cas a .rom podría ayudar a que funcionara bien?

    Saludos,

  7. Puesto que aquí estamos para dar ideas, se me acaba de ocurrir una. Puede parecer que “ya está hecha”, pero de ser así, no la he encontrado en ningún sitio.

    Se trataría, de crear una página Web sencilla -puesto que no hace falta dar muchos aspavientos- sobre los diferentes apartados sobre el lenguaje Ensamblador: Instrucciones, los Flags, etc… así como un apartado dedicado a la programación, empezando -claro está- desde cero, y que poco a poco vaya incrementando la dificultad.

    Si a esto le añadimos la posibilidad de incluir -como yo mismo hago en este momento- comentarios, ruegos, preguntas, etc… la cosa tomaría un cariz mucho mas interesante.

    Todo esto es una bonita teoría, ya que no creo que haya mucho personal dispuesto -por falta de tiempo y/o ganas- a llevarlo a cabo. En mi caso mi nivel sobre HTML es bajo, y francamente, más valdría mandarselo hacer a un mono con teclado -por ejemplo, uno de esos tantos que tiene Mocosoft- ya que si bien, podría no ser buena página, sería bonita. Mi aportación sería la de intentar explicar de forma sencilla, los conceptos que sean más complicados -previamente lo tendría que leer- y ponerlos de alguna forma en la Web. Mi experiencia dando cursos -aunque de otro tipo de materias- podría venir muy bien a tal efecto

    Perdón por la bromilla de Mocosoft. ¿Porqué comento esto? Por que a parte de ser muy interesante, sería una buena forma de consultar toda la información, que por otra parte, y haciendo una sugerencia más, sería bueno que estuviera implementada en la página. Toda la información centralizada… ¡eso si que sería un lujo!

    Queda hecha la propuesta, y perdón por ser “un pelín pedante”. Graccie!

  8. Acerca del blueMSX. Querría utilizar el Debugger interno (un desensamblador interno del bluMSX), pero no hay manera de activarlo, ya que me indica que no está disponible. He visto por diferentes páginas que funciona, pero no hay forma de conseguirlo. ¿Alguna idea?

    1. solo tienes que darle al botón de pausa.

      Con el emulador pausado es cuando se activa el depurador y todas sus funciones.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.