Problema con ui.lua

Hola, tengo el siguiente problema. Estoy trabajando en una aplicacion y funciona de la siguiente manera: tengo una fondo con caminos, y el usuario apreta botones para manejar un auto por estos caminos hasta llegar a la ciudad. Mi problema es que los botones funcionan en 3/4 de la pantalla. A que me refiero? es que por alguna razon, 1/4 de la pantalla (esquina superior derecha) dejan de funcionar los botones. Incluse puso un boton justa a la mitad, y solo se puede precionar la mitad del boton. Les dejo el codigo para ver si me pueden ayudar por favor. Desde ya, muchas gracias.

[lua]module( …, package.seeall)

function new()
  local localGroup = display.newGroup( )

  local ui = require (“ui”)

  display.setStatusBar( display.HiddenStatusBar )

  scaleBGX = 480/1280
  scaleBGY = 320/800
  iconX = 65 * scaleBGX
  iconY = 64 * scaleBGY
  cityX = 227 * scaleBGX
  cityY = 247 * scaleBGY

  local function main( )
    createBg()
    createValues()
    createTimer()
    createBack()
    createObjects()
    createCircle()
  end

  function createBg( )
    local bg = display.newImage( “bgLevel1.png”, display.contentWidth/2, display.contentHeight/2 )
    bg.xScale = scaleBGX
    bg.yScale = scaleBGY
    localGroup:insert(bg)
  end

  function createValues( )
    cX = 85.55* display.contentWidth /100
    cY = 38.5* display.contentHeight /100
    aX = display.contentWidth /5
    aY = display.contentHeight /2.3
    b1X = display.contentWidth /1.95
    b1Y = 1*display.contentHeight /3.5
    b2X = display.contentWidth /1.95
    b2Y = 3*display.contentHeight /4.2
    recorrido = 0
    lastBall = 0
  end

  function createObjects( )
    auto = display.newImage( “auto.png”, aX, aY )
    auto.xScale = scaleBGX
    auto.yScale = scaleBGY
    localGroup:insert(auto)
  end

  function moveCar( event )
    if (event.phase == “release”) then
     if (event.id == “2”) then
       if (lastBall == 0) then
          transition.to(auto, {time=500, x=b2X, y=b2Y})
          localGroup:insert(auto)
          recorrido = recorrido +3
          lastBall = 2
       end
       elseif (event.id == “1”) then
         if (lastBall == 0) then
           transition.to(auto, {time=500, x=b1X, y=b1Y})
           localGroup:insert(auto)
           recorrido = recorrido +2
           lastBall = 1
         end
       end
       if (event.id == “3”) then
         if (lastBall == 1) then
           transition.to(auto, {time=500, x=cX, y=cY})
           localGroup:insert(auto)
           recorrido = recorrido +1
         elseif (lastBall == 2) then
           transition.to(auto, {time=500, x=cX, y=cY})
           localGroup:insert(auto)
           recorrido = recorrido +1
         end
         if (lastBall == 1 or lastBall == 2) then
           if (recorrido == 3) then
             if _G.nextlock-0 == 0 then
               _G.nextlock= _G.nextlock+1
               saveit.save()
             end
             timer.cancel(tmr)
             director:changeScene(“winner”, “moveFromRight”)
           else
             timer.cancel(tmr)
             director:changeScene(“looser1”, “moveFromRight”)
           end
         end
       end
     end
     return true
  end

  function createCircle( )
    circleT = ui.newButton { defaultSrc = “circle.png”, defaultX = iconX, defaultY = iconY, overSrc = “circleT.png”, overX = iconX, overY = iconY, onEvent = moveCar, x = b1X, y = b1Y, id = “1” }
    circleB = ui.newButton { defaultSrc = “circle.png”, defaultX = iconX, defaultY = iconY, overSrc = “circleT.png”, overX = iconX, overY = iconY, onEvent = moveCar, x = b2X, y = b2Y, id = “2” }
    city = ui.newButton{ defaultSrc = “city.png”, defaultX = cityX, defaultY = cityY, onEvent = moveCar, x = cX, y = cY, id = “3” }
  end

   function createTimer( )

      local scoreboard = display.newImage( “tiempo.png” )
      scoreboard.xScale = scaleBGX
      scoreboard.yScale = scaleBGY
      scoreboard.x = display.contentWidth /2
      scoreboard.y = 10.8
      localGroup:insert(scoreboard)
      local timeLimit = 20
      timeLeft = display.newText(timeLimit, 11.3*display.contentWidth /20, 9.6, “HELVETICAROUNDED”, 14)
      timeLeft:setTextColor(1,1,1)
      localGroup:insert(timeLeft)
     
      local function timerDown()
         timeLimit = timeLimit-1
         timeLeft.text = timeLimit
         if(timeLimit==0)then
            timer.cancel(tmr)
            director:changeScene(“looser1”, “moveFromRight”)

         end
      end
      tmr = timer.performWithDelay(1000,timerDown,timeLimit)
   end

   function createBack( )
      local backButton = display.newImage( “back.png”, 0+display.contentWidth/8, display.contentHeight/6 *5 )
      backButton.xScale = scaleBGX
      backButton.yScale = scaleBGY
      localGroup:insert(backButton)

      local function pressBack( event )
         if event.phase == “ended” then
            timer.cancel(tmr)
            director:changeScene(“levels”, “moveFromLeft”)
         end
      end
      backButton:addEventListener( “touch”, pressBack )
   end

   main()
   return localGroup
end[/lua]

Ademas cabe mencionar que trabajo con la librerias ui.lua y director.lua