Difference between revisions of "240p test suite"

From Classic Console Upscaler wiki
Jump to navigation Jump to search
Line 13: Line 13:
 
This is a typical pattern for adjusting blacks, whites and colors in general. Based on the [[CPS-2]] color adjust pattern. Each bar has been set at a regular interval in hexadecimal, corresponding to colors 0x00 to 0xFF (0 to 255).  
 
This is a typical pattern for adjusting blacks, whites and colors in general. Based on the [[CPS-2]] color adjust pattern. Each bar has been set at a regular interval in hexadecimal, corresponding to colors 0x00 to 0xFF (0 to 255).  
  
==== Genesis/MD Version ====
+
===== Genesis/MD Version =====
  
 
In the case of the Genesis, there is a big limitation when trying to display primary colors. While it can display 64 colors simultaneously (4 palettes of 15 colors + alpha each), the palette  only has 8 pure tones of Red, Green and Blue. Because of this, the scale can only display 8 tones per color, including the white scale. Nevertheless, the real values are stored in VRAM and on each palette. The palette is adjusted to what the Genesis can display.
 
In the case of the Genesis, there is a big limitation when trying to display primary colors. While it can display 64 colors simultaneously (4 palettes of 15 colors + alpha each), the palette  only has 8 pure tones of Red, Green and Blue. Because of this, the scale can only display 8 tones per color, including the white scale. Nevertheless, the real values are stored in VRAM and on each palette. The palette is adjusted to what the Genesis can display.
  
==== Dreamcast Version ====
+
===== Dreamcast Version =====
  
 
The pattern is displayed with full accurate colors.
 
The pattern is displayed with full accurate colors.
Line 25: Line 25:
 
This pattern idea and layout borrows form the Digital Video Essentials color adjust pattern. It has a gray background as reference, and can be used with color filters in order to adjust color accuracy.
 
This pattern idea and layout borrows form the Digital Video Essentials color adjust pattern. It has a gray background as reference, and can be used with color filters in order to adjust color accuracy.
  
==== Genesis/MS version ====
+
=== Grid ===
  
It seems the Genesis can display these non pure colors exactly as intended.
+
A grid which borrows its basic pattern from the [[CPS-2]] grid. It is used to determine linearity on CRTs, but is presented here in order to align the screen and find out overscan on the display.  
  
==== Dreamcast Version ====
+
=== Linearity ===
  
The pattern is displayed with full accurate colors.
+
Five circles are displayed on top of a grid, one in each corner and a big one in the middle. Used on CRTs to check linearity of the display, in this case you can show or hide the grid with the "A" button, and toggle betwwen grids with the "b" button. It is interesting to see how the intensity of the light changes when turning off the grid on some flat panel displays.
  
=== Grid ===
+
=== Drop Shadow ===
  
A grid which borrows its basic pattern from the [[CPS-2]] grid. It is used to determine linearity on CRTs, but is presented here in order to align the screen and find out overscan on the display.  
+
This is a crucial test for 240p upscan converters. It displays a simple sprite shadow (32 by 32 pixels) against a background, but the shadow is shown only on each other frame. On a CRT this achieves a transparency effect, since you are watching a 30hz shadow on a 60hz signal. No background detail should be lost and the shadow should be visible.  
  
=== Linearity ===
+
This is a very revealing test since it exposes how the device is processing the signal. On devices that can't handle 240p signals, you can usually see that the signal is being interlaced with an odd and an even frame. This shows a shadow that doesn't flicks, but shows feathering (a line is drawn and the next one isn't).
  
=== Drop Shadow ===
+
You can toggle the frame used to draw the shadow with the c button on the Genesis or the Y button on the Dreamcast. Backgrounds can be switched with the A and B buttons.
  
 
=== Lag Test ===
 
=== Lag Test ===

Revision as of 04:31, 14 February 2011

A homebrew software suite for video game consoles developed to help in the evaluation of upscalers, upscan converters and line doublers.

It has tests designed with the processing of 240p signals in mind, although when possible it includes other video modes and specific tests for them.

Tests and Patterns

Since the software is running on a gamin platform, there is some degree of interactivity not possible on regular video tests, we have tried to use this as best as possible when applicable. For the rest of the cases regular test patterns, with inspiration in other sources, have been used.

Here's a description of each of the options, as well as any specific commands within them.

Color Bars

This is a typical pattern for adjusting blacks, whites and colors in general. Based on the CPS-2 color adjust pattern. Each bar has been set at a regular interval in hexadecimal, corresponding to colors 0x00 to 0xFF (0 to 255).

Genesis/MD Version

In the case of the Genesis, there is a big limitation when trying to display primary colors. While it can display 64 colors simultaneously (4 palettes of 15 colors + alpha each), the palette only has 8 pure tones of Red, Green and Blue. Because of this, the scale can only display 8 tones per color, including the white scale. Nevertheless, the real values are stored in VRAM and on each palette. The palette is adjusted to what the Genesis can display.

Dreamcast Version

The pattern is displayed with full accurate colors.

Colos Bars with Gray Scale

This pattern idea and layout borrows form the Digital Video Essentials color adjust pattern. It has a gray background as reference, and can be used with color filters in order to adjust color accuracy.

Grid

A grid which borrows its basic pattern from the CPS-2 grid. It is used to determine linearity on CRTs, but is presented here in order to align the screen and find out overscan on the display.

Linearity

Five circles are displayed on top of a grid, one in each corner and a big one in the middle. Used on CRTs to check linearity of the display, in this case you can show or hide the grid with the "A" button, and toggle betwwen grids with the "b" button. It is interesting to see how the intensity of the light changes when turning off the grid on some flat panel displays.

Drop Shadow

This is a crucial test for 240p upscan converters. It displays a simple sprite shadow (32 by 32 pixels) against a background, but the shadow is shown only on each other frame. On a CRT this achieves a transparency effect, since you are watching a 30hz shadow on a 60hz signal. No background detail should be lost and the shadow should be visible.

This is a very revealing test since it exposes how the device is processing the signal. On devices that can't handle 240p signals, you can usually see that the signal is being interlaced with an odd and an even frame. This shows a shadow that doesn't flicks, but shows feathering (a line is drawn and the next one isn't).

You can toggle the frame used to draw the shadow with the c button on the Genesis or the Y button on the Dreamcast. Backgrounds can be switched with the A and B buttons.

Lag Test

Horizontal Stripes

Checkerboard

Versions

There are currently two platforms that run the suite, both have been developed and tested on real hardware, The software should run in NTSC mode by default (hasn't been tested in PAL hardware).

  • Sega Genesis/ Mega Drive
  • Sega Dreamcast

The Sega Genesis version was developed using the [SGDK http://code.google.com/p/sgdk/], it was the first version of the 240p Test Suite and is fully coded in C. In order to run it, we recommend the Tototek Flashcart or the newer Everdrive. The Genesis resolution is 320x224 and is being used fully, in NTSC (60hz).

The Sega Dreamcast version includes more options, but the core functionality for 240p is the same. No special hardware or modifications are needed, it will run on any MIL compatible dreamcast after burning the CDI image (discjuggler format). The Dreamcast resoolution is full 320x240 when in that mode.

Source code

The source code will be released at the same time the binaries are, under the GPL. Homebrew and open source SDKs have been used on the platforms so far. The test pattern images used to generate the graphical data for the console versions will be included along with the source code.

Contributors