1
TFTs / EVE2 Lines and Bitmaps
« on: October 05, 2018, 10:11:32 PM »
Hi Newhaven!
I'm working on a simple displaylist that has a few lines.
At a glance:
The upper garbage red bar does not even smoothly make a rectangle. Its top row begins ~80% scanned to the right and the bottom row ends ~60% scanned to the right (of the apparent red rectangle). Both of the garbage bars occur beneath all the lines, and the change that causes them to appear is the uppermost line on the display.
I've attached pictures of the 64 and 65 states, as well as the display lists that produce them. The display lists were pulled from display memory and stored locally as a straight binary byte-for-byte dump. I processed them via `hexdump -ve '/4 "%08X\n"' working_displaylist.dump > dl_working.hex` and trimmed to the first 0x00000000 command (END_DISPLAYLIST). The diff is as expected by adding one green line; near the end of the broken (65 green line) display list, there are 2 commands:
```
diff dl_working_trim.hex dl_broken_trim.hex
159a160,161
> 51381B80
> 51381B40
```
What's going on with this display list?
P.S. I'm sorry, the forum does not permit attachment of non-image files. I'll have to paste these text hex displays of the display lists:
I'm working on a simple displaylist that has a few lines.
At a glance:
- Clear
- 2 bitmaps (L1 then L8) placed with vertex2f
- 3 white lines
- green lines:
- 64 green lines work great. (attached as dl_working_trim.hex)
- 65 or more green lines cause garbage to be drawn on the display (attached as dl_broken_trim.hex)
The upper garbage red bar does not even smoothly make a rectangle. Its top row begins ~80% scanned to the right and the bottom row ends ~60% scanned to the right (of the apparent red rectangle). Both of the garbage bars occur beneath all the lines, and the change that causes them to appear is the uppermost line on the display.
I've attached pictures of the 64 and 65 states, as well as the display lists that produce them. The display lists were pulled from display memory and stored locally as a straight binary byte-for-byte dump. I processed them via `hexdump -ve '/4 "%08X\n"' working_displaylist.dump > dl_working.hex` and trimmed to the first 0x00000000 command (END_DISPLAYLIST). The diff is as expected by adding one green line; near the end of the broken (65 green line) display list, there are 2 commands:
```
diff dl_working_trim.hex dl_broken_trim.hex
159a160,161
> 51381B80
> 51381B40
```
What's going on with this display list?
P.S. I'm sorry, the forum does not permit attachment of non-image files. I'll have to paste these text hex displays of the display lists:
|