Coordenada invertida em imagem no Java

Eu já fiz todo o programa e deixei a parte de interface por último e me deparei com esse problema. O código foi todo feito em cima de coordenadas “normais”, com o valor de x aumentando da esquerda para direita e o valor de y aumentando de baixo pra cima. Quando joguei minha imagem de fundo no programa e coloquei como coordenada inicial do personagem o valor (0,0) percebi que o bonequinho foi inserido na parte no canto superior esquerdo e que as coordenadas funcionam de forma invertida: com x aumentando da esquerda para direita e y aumentando de cima para baixo.
Estou confusa quanto a escala também, pq usei o Tiled para gerar o mapa com 42x42 tiles de 32 px cada e quando exportei a imagem, ela ficou com 672x672 px. O personagem tem que andar por tiled, não por px e não estou sabendo como faço pra ele se mover da forma correta.

Esse é um esboço do mapa, já quadriculado. O personagem tem que se mover de quadrado em quadrado e deve iniciar na posição marcada de vermelho (6,40)

Gostaria de saber se existe alguma forma de fazer com que as coordenadas funcionem de forma normal ou como faço pra trabalhar com essa coordenada invertida pq o programa já funciona (já testei no terminal), só que como inicio com os valores errados não da certo

Vc teria que calcular

int tileY = totalDeVerticalTiles - boneco.y - 1;
int posicaoY = tileY * tamanhoVerticalDeCadaTile;
int posicaoX = boneco.x * tamanhoHorizontalDeCadaTile;
graphics.draw(boneco.sprite, posicaoX, posicaoY);