You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Implement cursor direction (e.g. right to left) (VDU 23,16)
hopefully recent changes to the framebuffer.c should make this easier
Implement PLOT &D0 + n (FONT plot)
Finish off Block Move:
Currently only copy is implemented
add support for block move (blanking original)
add support for block swap
consider writing an ARM assembler version
clip vertically (currently just the horizontal bounds are checked)
Implement VDU 14/15 (enable/disable page mode)?
Implement VDU 6/21 (enable/disable VDU drivers)?
Revisit V3D code - it would be nice to have a way to do complex 3D rendering (texture + multiple triangle), even if this is non-standard
Bugs
Draw arc doesn't currently handle screen modes with non-square pixels. Maybe switch to the ellipse version of Bresenhan. Or is a quick fix possible, as pixel aspect ratios are limited (2:1 1:2 and 1:4)
Draw arc sometimes omits final points
Fill Arc/Segment sometimes misses bits of a very thin shapes
Completed
Implement missing misc operations (VDU 23,17)
Implement fill patterns
(this might be alot of work!)
VDU 23, 2-5
VDU 23, 11-15
also VDU 23,17,6 set ECF origin
Implement dotted line patterns (VDU 23,6)
Implement flashing colours
timer driven
using palette changes
VDU 23, 9-10 set mark space ratio
ReImplement VDU sprites correctly
definition using MOVE, MOVE, VDU 23,27
drawing using PLOT &E8+n
Implement cursor control (VDU 23,1)
also consider switching to the framebuffer hardware cursor
some work on this in a local branch called hwcursor
also look at Rod's work on this
Implement subset of teletext display characteristics (VDU 23,18)
Finish off Teletext Mode:
pick a single framebuffer size (e.g. 480x500 or 1200x1000) and clean up rendering code
consider using 12x20 font that already has character rounding applied. I've got a version of this that's used in BeebFPGA. I think it also includes the graphics characters pre-rendered as well. This should simplfy things and improve efficiency.
update the rendering code to allow out-of-order updates to be handled correctly
iterate on the REPEAT VDU RND(224)+31:UNTIL FALSE test, using *PIVDU 3 on the Native ARM Co Pro to replicate the VDU stream to the Master and Pi.
This issue is a bit of a dumping round for finishing off the frame buffer work.
See also a more upto date list here:
https://github.com/hoglet67/PiTubeDirect/wiki/Pi-VDU-Driver#known-issues
At some point, we should split these into seperate issues. Or edit this issue as things are complete.
Features
Details on many of these can be found here:
http://beebwiki.mdfs.net/VDU_23
Implement cursor direction (e.g. right to left) (VDU 23,16)
Implement PLOT &D0 + n (FONT plot)
Finish off Block Move:
Implement VDU 14/15 (enable/disable page mode)?
Implement VDU 6/21 (enable/disable VDU drivers)?
Revisit V3D code - it would be nice to have a way to do complex 3D rendering (texture + multiple triangle), even if this is non-standard
Bugs
Draw arc doesn't currently handle screen modes with non-square pixels. Maybe switch to the ellipse version of Bresenhan. Or is a quick fix possible, as pixel aspect ratios are limited (2:1 1:2 and 1:4)
Draw arc sometimes omits final points
Fill Arc/Segment sometimes misses bits of a very thin shapes
Completed
Implement missing misc operations (VDU 23,17)
Implement fill patterns
Implement dotted line patterns (VDU 23,6)
Implement flashing colours
ReImplement VDU sprites correctly
Implement cursor control (VDU 23,1)
Implement subset of teletext display characteristics (VDU 23,18)
Finish off Teletext Mode:
Rework non-standard use of VDU 23,2-9
The text was updated successfully, but these errors were encountered: