Dudas de la tarea

Dudas de la tarea

de Nicolas Aguilera Leal -
Número de respuestas: 1

Buenas, tenemos un par de consultas acerca de la letra de la practica 2:

-En la subrutina get_ps2 dice que de aca en adelante: "se deben realizar todos estos cambios para que el programa de prueba de
ésta y todas las subrutinas que siguen, funcionen indistintamente si son compilados para
ROM o si son compilados para trabajar con el debugger." A que se refiere?

-En la subrutina get_packet, dice: "Una vez recibidos los 3 bytes, realiza una conversión de los desplazamientos representados en complemento a 2 de nueve bits a complemento a 2 de 16 bits". Debemos considerar los bits de overflow de X e Y? Que haría en caso de que los bits de overflow fueran 1?

Gracias

En respuesta a Nicolas Aguilera Leal

Re: Dudas de la tarea

de Julio Perez -

Nicolás, van las respuestas:

1) "compilados para ROM o si son compilados para trabajar con el debugger"

Está explicado en el párrafo anterior de la letra.

Cuando se trabaja con el debugger, el programa se compila con "Macro > Compilar" y se carga en la placa y se ejecuta con "Macro > JtagCon + Gdb". Esto es lo que han usado hasta ahora. En este caso la sección .text queda ubicada a partir de la dirección 0xB000 y la sección .data se ubica, a continuación, a partir del siguiente inicio de una página de 256 bytes

Otra opción es no utilizar el debugger, y cargar el programa en ROM. Para eso tienen que compilar el programa con "Macro > Compilar para ROM". En este caso el programa se compila con .text ubicado a partir de la dirección 0x0000 y .data a partir de 0xB000. Para grabar el programa en ROM se utiliza "Macro > Cargar en ROM". Esto último copia la sección .text en ROM a partir de la dirección 0x0000, pero no hace nada con la sección .data.

Básicamente tienen que elegir qué cosas poner en la sección .text y qué cosas poner en la sección .data para que los programas de ustedes funcionen bien en ambos casos.

2) En la subrutina get_packet y en toda la práctica vamos a suponer que no se produce overflow. Por lo tanto pueden ignorar los bits de overflow de X e Y.


Saludos,

julio