# HG changeset patch # User Paul Boddie # Date 1556832067 -7200 # Node ID 427811b05deae7338be3ebca2d03aee7a3c7db7e # Parent b572f8cd14769f9fb11e1783696ca1a1b0047856 Moved the VGA output examples summary to a separate document. diff -r b572f8cd1476 -r 427811b05dea README.txt --- a/README.txt Mon Apr 15 17:53:50 2019 +0200 +++ b/README.txt Thu May 02 23:21:07 2019 +0200 @@ -101,39 +101,6 @@ -VGA Output Example Comparison -============================= - -In investigating different techniques, the following observations have been -made about the behaviour of the different VGA examples: - - DMA Horizontal Picture Pixel Scrolling - Channels Resolution Stability Consistency Operational - -------- ---------- --------- ----------- ----------- -vga 1 High No No Yes -vga-cpu 0 High Yes Yes Yes -vga-dual 2 High No No No -vga-pmp 1 High No No Yes -vga-timer 2 Low Yes Yes Yes - -Here, picture stability is assessed with the CPU accessing RAM. In general, -all of the approaches can provide stable pictures with limited RAM access -loading. However, under load, the picture will stretch and ripple for all -examples where picture stability is given as "No". - -It should be noted that the vga-timer example employs two DMA channels, but -this is only to maximise horizontal resolution. With a single channel, -horizontal resolution is diminished still further in comparison to the other -examples. - -It would appear that two most viable approaches are the vga-cpu and vga-timer, -if only because they produce consistently-sized pixels, retain picture -stability under load, and provide operational horizontal scrolling. These -approaches provide a tradeoff between performance (vga-timer being faster) and -resolution (vga-cpu being better). - - - References ========== diff -r b572f8cd1476 -r 427811b05dea docs/wiki/CommonPIC32 --- a/docs/wiki/CommonPIC32 Mon Apr 15 17:53:50 2019 +0200 +++ b/docs/wiki/CommonPIC32 Thu May 02 23:21:07 2019 +0200 @@ -6,4 +6,5 @@ == Documentation == + * [[VGA Output Examples]] * [[VGA Signal Output]] diff -r b572f8cd1476 -r 427811b05dea docs/wiki/VGA_Output_Examples --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/docs/wiki/VGA_Output_Examples Thu May 02 23:21:07 2019 +0200 @@ -0,0 +1,35 @@ += VGA Output Example Comparison = + +In investigating different techniques, the following observations have been +made about the behaviour of the different VGA examples: + +{{{#!table + || DMA Channels || Horizontal Resolution || Picture Stability + || Pixel Consistency || Scrolling Operational +== +vga || 1 || High || No || No || Yes +== +vga-cpu || 0 || High || Yes || Yes || Yes +== +vga-dual || 2 || High || No || No || No +== +vga-pmp || 1 || High || No || No || Yes +== +vga-timer || 2 || Low || Yes || Yes || Yes +}}} + +Here, picture stability is assessed with the CPU accessing RAM. In general, +all of the approaches can provide stable pictures with limited RAM access +loading. However, under load, the picture will stretch and ripple for all +examples where picture stability is given as "No". + +It should be noted that the vga-timer example employs two DMA channels, but +this is only to maximise horizontal resolution. With a single channel, +horizontal resolution is diminished still further in comparison to the other +examples. + +It would appear that two most viable approaches are the vga-cpu and vga-timer, +if only because they produce consistently-sized pixels, retain picture +stability under load, and provide operational horizontal scrolling. These +approaches provide a tradeoff between performance (vga-timer being faster) and +resolution (vga-cpu being better).