That makes total sense, in terms of how pixels get drawn left to right up to down. but my rotate option doesn't work either, there is a dtparam=rotate but that doesn't affect the cursor, which becomes "upside down"DPI (and DSI) displays have no margins properties on the connectors, therefore video= has no place to put any of those settings that you might try and configure.
Most displays will be working from one edge of the sync pulses. If you increase the hbp (horizontal back porch - the bit between sync pulse and start of the active area), and reduce the hacvtive value to match, you should shift the left margin. Likewise with hfp for the right margin, vbp for top margin, and vfp for bottom margin.
It is all assuming that the display is looking at the sync pulses for timings, and not the data enable or other similar signal.

What I'm trying to achieve is a custom-sized "active area" of the display. smaller than the display itself, I still want the display to draw every pixel, I just want a chunk at the bottom to be drawn black and the OS to treat the active area (say 240x240) as the entire display.
I used to achieve this with overscan_bottom in config.txt. So I'm a little frustrated that I can't work out how to get the same effect.
Statistics: Posted by Jameth — Fri Nov 22, 2024 7:15 pm