 
 static inline __attribute__((always_inline)) struct tftPoint_t mapToTft( const uint16_t &touchX, const uint16_t &touchY )
 {
+  const uint16_t XPT_RES = 4096;
   uint16_t x, y;
+
   if ( !TOUCH_IS_INVERTED )
   {
     if (  tftOrientation == TFT_ORIENTATION_UPSIDEDOWN )
     {
-      x = mapFloat( touchX, 340, 3900, 0, 320 );
-      y = mapFloat( touchY, 200, 3850, 0, 240 );
+      x = map( touchX, 0, XPT_RES, 0, 320 );
+      y = map( touchY, 0, XPT_RES, 0, 240 );
     }
     else if ( tftOrientation == TFT_ORIENTATION_NORMAL )
     {
-      x = mapFloat( touchX, 340, 3900, 320, 0 );
-      y = mapFloat( touchY, 200, 3850, 240, 0 );
+      x = map( touchX, 0, XPT_RES, 320, 0 );
+      y = map( touchY, 0, XPT_RES, 240, 0 );
     }
   }
   else
   {
     if (  tftOrientation == TFT_ORIENTATION_UPSIDEDOWN )
     {
-      x = mapFloat( touchX, 340, 3900, 320, 0 );
-      y = mapFloat( touchY, 200, 3850, 240, 0 );
+      x = map( touchX, 0, XPT_RES, 320, 0 );
+      y = map( touchY, 0, XPT_RES, 240, 0 );
     }
     else if ( tftOrientation == TFT_ORIENTATION_NORMAL )
     {
-      x = mapFloat( touchX, 340, 3900, 0, 320 );
-      y = mapFloat( touchY, 200, 3850, 0, 240 );
+      x = map( touchX, 0, XPT_RES, 0, 320 );
+      y = map( touchY, 0, XPT_RES, 0, 240 );
     }
   }
   return { x, y };

  tft.writeFillRect( area.x + area.w / 2  - 1, area.y, 2, area.h, ILI9341_YELLOW );
  tft.endWrite();

  int16_t ypos = mapFloat( value, rangeLow, rangeHigh, area.h + area.y, area.y );
  knob = { area.x, 0, BL_SLIDER_WIDTH, 10, ILI9341_YELLOW };
  knob.y = ypos - 5;
  button.draw( knob );

                 ( tempArea.y - 6 ) );
  tft.print( newLabel );
}
