To be clear:
1 - I am trying to help.
2 - Those questions I asked may actually provide clues.
Can you post a minimal code example and I'll run it?
Even if I wasn't offsetting the graphics' positions by 0.5, surely this wouldn't explain why the misalignment we're seeing is (in the majority) only vertical and not horizontal?
When you use wrong coordinates, it does whatever the driver wants to do. It may simply be "undefined" and you've got different drivers choosing a different fix.
What systems are you trying on? 3 Linux boxes? One intel, one geforce, and one geforce 560? All running the same Linux and driver versions? (Note: Linux supports both open-source and nVidia drivers for GeForce cards.)
- You're not stretching the bitmap or window, right? (all bases covered)
- Are you using any Allegro or OpenGL transformations?
- Have you made sure mip-mapping is off?
- What Allegro version? Is it the newest?