forked from arti/vt1200
dwt/screenshot: --real reads the 1024x2048 interleaved framebuffer and keeps the even rows 1:1; corrects the earlier doubling
This commit is contained in:
1 parent
71588e5405
commit
6adc04ba02
3 files changed
+51
-17
No files matched your search
@@ -107,3 +107,28 @@ This is a **display-fetch difference, not a CPU-emulation difference**. MAME's
|
||||
driver models a linear 1bpp framebuffer, so the emulator never shows the
|
||||
interleave; the real TMS34010 display controller is programmed for the doubled
|
||||
even field.
|
||||
|
||||
### Correction: the framebuffer is 1024x2048, not line-doubled
|
||||
|
||||
The earlier "the display doubles the even field" reading was wrong. A **256 KiB**
|
||||
read (2048 rows x 128 bytes) shows the 1024 image lines sitting on **even rows
|
||||
at 1:1**, with the odd rows carrying the mask. The earlier 128 KiB read held
|
||||
only the **top 512 image lines**; doubling them stretched the top half and cut
|
||||
the bottom — which is exactly the "missing left/bottom" and "line doubled"
|
||||
appearance.
|
||||
|
||||
Correct 1:1 capture:
|
||||
|
||||
```sh
|
||||
python3 dwt/screenshot.py --host 100.103.100.103 --real --out screen.png
|
||||
```
|
||||
|
||||
`--real` means `--rows 0:2048 --field even` and outputs **1024x1024 with no
|
||||
resampling**. `dwt/evidence/real-unit-1to1.png` is that capture: Icon Box,
|
||||
Terminal Manager, Memory bar, and the `Ethernet Port Error - 24` box at the
|
||||
bottom — the whole screen.
|
||||
|
||||
`--stretch 1280x1024` is only the monitor's 5:4 scaling of the 1024-wide
|
||||
framebuffer; it is **not** 1:1 and the nearest-neighbour version produces the
|
||||
uneven-pixel artefacts. Use it only for an approximate visual match, not as
|
||||
evidence.
|
||||
Reference in new issue
Block a user