Difference between revisions of "Optimal timings"

From Classic Console Upscaler Wiki
Jump to navigation Jump to search
(add additional Playstation 1 modes)
(Add PS2 480i modes)
Line 46: Line 46:
 
|
 
|
 
|-
 
|-
|PSX 320x240 @59.82Hz
+
|PlayStation 320x240 @59.82Hz
 
|426.625 (?) / 263 / @<u><span title="exact frequency varies between boards">6.71MHz</span></u>(NTSC) @<u><span title="exact frequency varies between boards">6.65MHz</span></u>(PAL) [http://problemkaputt.de/psx-spx.htm#gputimings] [http://forum.fobby.net/index.php?t=msg&&th=1117&goto=4132#msg_4132]
 
|426.625 (?) / 263 / @<u><span title="exact frequency varies between boards">6.71MHz</span></u>(NTSC) @<u><span title="exact frequency varies between boards">6.65MHz</span></u>(PAL) [http://problemkaputt.de/psx-spx.htm#gputimings] [http://forum.fobby.net/index.php?t=msg&&th=1117&goto=4132#msg_4132]
 
|320x240
 
|320x240
Line 53: Line 53:
 
|
 
|
 
|-
 
|-
|PSX 384x240 @59.82Hz
+
|PlayStation 384x240 @59.82Hz
 
|487.5 / 263 / @<u><span title="exact frequency varies between boards">7.67MHz</span></u>(NTSC)
 
|487.5 / 263 / @<u><span title="exact frequency varies between boards">7.67MHz</span></u>(NTSC)
 
|320x240
 
|320x240
Line 60: Line 60:
 
|
 
|
 
|-
 
|-
|PSX 256x240 @59.82Hz
+
|PlayStation 256x240 @59.82Hz
 
|341.25 / 263 / @<u><span title="exact frequency varies between boards">5.369MHz</span></u>(NTSC)
 
|341.25 / 263 / @<u><span title="exact frequency varies between boards">5.369MHz</span></u>(NTSC)
 
|256x240
 
|256x240
Line 67: Line 67:
 
|
 
|
 
|-
 
|-
|PSX 512x240 @59.82Hz
+
|PlayStation 512x240 @59.82Hz
 
|682.5 / 263 / @<u><span title="exact frequency varies between boards">10.74MHz</span></u>(NTSC)
 
|682.5 / 263 / @<u><span title="exact frequency varies between boards">10.74MHz</span></u>(NTSC)
 
|240p
 
|240p
 
|H.active=512, H.samplerate=683, H.synclen=10, H.backporch=117
 
|H.active=512, H.samplerate=683, H.synclen=10, H.backporch=117
 
|Example games: Crash Bandicoot (resolution of the dithering)
 
|Example games: Crash Bandicoot (resolution of the dithering)
 +
|
 +
|-
 +
|PS2 512x480i @59.94Hz
 +
|686.4 / 525 / @<u>10.8MHz</u>(NTSC)
 +
|480i
 +
|H.active=512, H.samplerate=686, H.synclen=44, H.backporch=84
 +
|Example games: Megaman X7, Castlevania Lament of Innocence
 +
|
 +
|-
 +
|PS2 640x480i @59.94Hz
 +
|858 / 525 / @<u>27MHz</u>(NTSC)
 +
|480i
 +
|H.active=640, H.samplerate=858, H.synclen=44, H.backporch=116
 +
|Example games: GTA III, Crash Bandicoot Wrath of Cortex
 
|
 
|
 
|-
 
|-

Revision as of 21:51, 13 January 2018

The advanced timing options on the OSSC allow for fine control over how the output image is generated and how the analogue signal is sampled. In some cases it is possible to adjust these values to perfectly match the incoming analogue signal from a console. This results in a very sharp image (possibly even too sharp for many people's tastes).

The table below contains some preliminary timings for popular consoles, it should be considered a work in progress, do not be surprised if further fine tuning is required.

Console / mode Dots per scanline / no. scanlines / @dotclk OSSC base mode Modified parameters Notes PC modeline
NES 256x240 @60.10Hz 341* / 262 / @5.37MHz(NTSC) [1][2][3] 256x240 To reduce jitter in couple topmost lines, try disabling ""Allow TVP HPLL2x" and/or using mask.
* one scanline is typically 1 dot shorter on every other frame
Modeline "ossc_nes_1280x720_60.08"  80.55  1280 1385 1510 1705  720 729 738 786  -hsync -vsync
SNES 256x239/224 @60.10Hz 341* / 262 / @5.37MHz(NTSC) @5.32MHz(PAL) [4] 256x240 * one scanline is typically 1 dot shorter on every other frame
Modeline "ossc_snes_1280x720_60.08"  80.55  1280 1385 1510 1705  720 729 738 786  -hsync -vsync
Mega Drive 320x224 @60Hz 320×8 + 86×10 (?) / 262 / @53.693175MHz(NTSC) @53.203425MHz(PAL) 320x240 H.samplerate=428 (?)
Mega Drive 256x224 @60Hz 342 / 262 / @5.37MHz(NTSC) @5.32MHz(PAL) [5][6] 256x240 H.samplerate=342
N64 320x240 @60Hz 773.25 (?) / 262 / @12.17MHz(NTSC) @12.41MHz(PAL) [7][8] 320x240 H.samplerate=387, H.synclen=22, H.backporch=36 Every other visible dot (of 640) is interpolated
PlayStation 320x240 @59.82Hz 426.625 (?) / 263 / @6.71MHz(NTSC) @6.65MHz(PAL) [9] [10] 320x240 H.active=320, H.samplerate=427, H.synclen=76, H.backporch=63 Example games: Chrono Cross
PlayStation 384x240 @59.82Hz 487.5 / 263 / @7.67MHz(NTSC) 320x240 H.active=384, H.samplerate=487, H.synclen=63, H.backporch=18 Example games: Ape Escape, Castlevania SotN (menus only)
PlayStation 256x240 @59.82Hz 341.25 / 263 / @5.369MHz(NTSC) 256x240 H.active=256, H.samplerate=341, H.synclen=26, H.backporch=39 Example games: Adventure of Little Ralph, Castlevania SotN (in-game only)
PlayStation 512x240 @59.82Hz 682.5 / 263 / @10.74MHz(NTSC) 240p H.active=512, H.samplerate=683, H.synclen=10, H.backporch=117 Example games: Crash Bandicoot (resolution of the dithering)
PS2 512x480i @59.94Hz 686.4 / 525 / @10.8MHz(NTSC) 480i H.active=512, H.samplerate=686, H.synclen=44, H.backporch=84 Example games: Megaman X7, Castlevania Lament of Innocence
PS2 640x480i @59.94Hz 858 / 525 / @27MHz(NTSC) 480i H.active=640, H.samplerate=858, H.synclen=44, H.backporch=116 Example games: GTA III, Crash Bandicoot Wrath of Cortex
Saturn 320x240 @60Hz 427 / 263 / @6.71MHz(NTSC) [11][] 320x240 H.samplerate=427
Neo-Geo MVS 320x240 @59.19Hz 384 / 264 / @6.00MHz [12] 320x240 H.samplerate=384, H.backporch=25
DC VGA @60Hz 858 / 525 / @27MHz [13] 480p H active=640
GBI ULL 480p @59.72Hz 866 / 522 / @27MHz ? 480p H samplerate=866 ?
CPS2 384x224 @59.64Hz 512 / 262 / @8MHz 320x240 H.samplerate=512, H.active=384, H.backporch=66
PC-98 640x400 @56.4Hz 848 / 440 / @21.0526MHz 640x384 H.samplerate=848, H.backporch=80, H.synclen=64,, V.active=400, V.backporch=25
Seibu SPI ? / 293 (?) ?


Horizontal multiplication factors

Frame width is multiplied by an integer factor defined below while picture area is multiplied by the value in parenthesis (if different) to maintain correct aspect ratio. Vertical multiplication factor is defined directly by line multiplication mode. For example, consider 320x240 in line3x mode. Frame size is multiplied by 4 in horizontal direction, and by 3 in vertical direction to generate a frame of 1280x720 which is ideal for 720p output. However, picture area is only multiplied by 3 in horizontal direction so that effective area (960x720) maintains 4:3 ratio of the source.

320x240 256x240 (4:3) 256x240 (8:7)
Line2x 2x 3x 3x(2x)
Line3x 4x(3x) 5x(4x) 5x(3x)
Line4x 4x 5x 5x(4x)
Line5x 5x* 6x* 6x(5x)*
  • With Line5x, horizontal active and mask are adjusted internally so that frame width of 1600 or 1920 (depending on "Line5x format") is always generated. In 1920x1080 format, vertical active and backporch are also internally adjusted (-24 and +12) to generate suitable frame height.

The FirebrandX optimal timing method

Community member FirebrandX has produced a useful YouTube video tutorial on how to discover optimal video timings. This video can be viewed here.