Mouse - subrutina get_packet

Mouse - subrutina get_packet

de Gonzalo Pigato Risso -
Número de respuestas: 1

Buenas, en la parte e), en la prueba de la subrutina get_packet, se pide que se reserve espacio de memoria para los 5 bytes. Por lo tanto nosotros lo hicimos en la sección .data.

Luego a IX le tenemos que cargar el valor de la dir de memoria del comienzo de esos 5 bytes, pero la dirección de .data cambia dependiendo si se compila para rom o se compila para ram.

Como dice que debe funcionar indistintamente para ambos casos nosotros le quisimos asignar a IX el valor de la etiqueta que le pusimos al comienzo de los 5 bytes, pero nos da error al compilar, al parecer cuando quiere asignar a IX el valor de la etiqueta nos dice que no está definido el valor para el nombre de la etiqueta, tal vez sea porque la etiqueta aparece luego en el programa, en la sección .data.

En fin, no sabemos cómo resolverlo pues si no ponemos los 5 bytes en .data no va a funcionar al compilar en rom, pero si lo ponemos en .data, al cambiar la dirección en la que está al compilar para rom y ram, no sabemos cómo hacerlo andar para ambos casos sin poder cambiar ni siquiera una línea de programa.

El programa no se puede modificar ni una línea al cambiar de compilar para ram a para rom?

Gracias, saludos.


En respuesta a Gonzalo Pigato Risso

Re: Mouse - subrutina get_packet

de Gonzalo Pigato Risso -

Ya lo solucionamos. Notamos que el error era que en la plantilla que nos brindaron hay un .end antes de .data, entonces según lo que dice en la diapositiva de la clase 7, el texto que viene después del .end es ignorado. Además lo probamos con el jtag y vimos que efectivamente no cargaba la sección .data.

Saludos