Colour profile

From ThinkWiki
Revision as of 20:13, 14 December 2009 by Pi3832 (Talk | contribs) (Supported ThinkPads)

Jump to: navigation, search

Linux distributions are starting to get support for Colour profiles with gnome-color-manager which is planned to be part of Fedora 13 [1].

IBM and Lenovo have been providing colour profile packages for years, unfortunately they are stuck away in Windows .exe files, so you need wine or a windows machine to unpack them.

TODO
simplify the procedure for finding the right colour profile to load

Unpack and find your colour profile

Unpack the "ThinkPad Monitor INF File" .exe file using Wine. The profiles will be located in ~/.wine/drive_c/DRIVERS/WIN/MONITOR/, or in ~/.wine/drive_c/DRIVERS/WIN/MONITOR/WINXP for older models1. In that directory you will find the TPLCD.INI file (IBMTPLCD.INI for older models) with a mapping of the LCD vendor to colour profile.

But first you need to know which LCD you have. Unfortunately xrandr does not provide the vendor information, but monitor-edid from the monitor-edid RPM (on Fedora) does.

$ monitor-edid
EISA ID: LEN4022
Screen size: 28.6 cm x 21.4 cm (14.06 inches, aspect ratio 4/3 = 1.34)
Gamma: 2.2
Digital signal

	# Monitor preferred modeline (60.0 Hz vsync, 64.0 kHz hsync, ratio 4/3, 124 dpi)
	ModeLine "1400x1050" 108 1400 1448 1560 1688 1050 1051 1054 1066 -hsync -vsync

	# Monitor preferred modeline (50.0 Hz vsync, 53.3 kHz hsync, ratio 4/3, 124 dpi)
	ModeLine "1400x1050" 89.97 1400 1448 1560 1688 1050 1051 1054 1066 -hsync -vsync

As you can see from the above, I have a LEN4022. If I then look at the INF file

$ grep LEN4022 TPLCD.INF 
%TPSXGAP%   = TPLCDSXGAP.Install,    Monitor\LEN4022   ; 14"   SXGA+     TFT               1400x1050
%TPSXGAP%   = TPLCDSXGAP.Install.NTx86,    Monitor\LEN4022   ; 14"   SXGA+     TFT               1400x1050
%TPSXGAP%   = TPLCDSXGAP.Install,    Monitor\LEN4022   ; 14"   SXGA+     TFT               1400x1050

You will see this maps to TPLCDSXGAP

We now need to find what colour profile that maps to.

$ grep -A 2 \\[TPLCDSXGAP.Install] TPLCD.INF
[TPLCDSXGAP.Install]                   ; SXGA+ 1400x1050
DelReg=DEL_CURRENT_REG
AddReg=1400, DPMS, ICM

As you can see on the last line, it refers to a ICM colour profile. Now to finally find out which file we need to use

$ grep  -A 1 \\[ICM] TPLCD.INF
[ICM]
HKR,,ICMProfile,0,"TPLCD.icm"

As you can see above the ICM colour profile, maps to the TPLCD.icm file, so that is the file I need to load in gnome-color-manager for my ThinkPad LCD.

Recent ThinkPads

Download "ThinkPad Monitor INF File"

Supported ThinkPads

Older ThinkPads

Download "ThinkPad Monitor File"

Supported ThinkPads

Footnotes

  1. There are actually four paths extracted from the "ThinkPad Monitor INF File" for older ThinkPad models: ./WIN98, ./WINME, ./WIN2000, ./WINXP, but the IBMTPLCD.INI file in each is essentially identical--any of them will work for the purposes of this article.