Saludos a todos, espero que todavía lean este post, mi pregunta es para el amigo Duende Azul, Adapté el código que tienes en este post para el manejo de un touch para pantalla de 128x64 para funcionar en un touch de una pantalla de 160x80, y debo decir que funciona de maravilla!, gracias por el código, pero solo puedo escribir en el área de 128x64, por lo que me dí manos a la obra y traté de modificar el código para abarcar toda la pantalla, pero sin éxito, y es que no comprendo unas partes de tu código, si fueras tán amable de aclararme para que sirven esos pedazos de código (claro, si es que aún lo recuerdas jejeje). Es el siguiente:
resp = true;
tmp=(tx - x_min) << 7;
x_loc =(int16)(tmp/x_rng);
if(x_loc > 127) x_loc = 127;
tmp = (ty - y_min) << 6;
y_loc = (int16)(tmp/y_rng);
if(y_loc > 63) y_loc = 63;
Ya me quebré la cabeza bastante tiempo y no logro comprender para que sirve el (tx - x_min) << 7 y tampoco se que hace la tercera línea, lo mismo para y.
Si aún lo recuerdas, crees que me podrías explicar como funciona este pedazo del algoritmo por favor?. Muchas gracias.