Difference between revisions of "Colour profile"

From ThinkWiki
Jump to: navigation, search
(Supported ThinkPads)
(replaced cabextract by innoextract)
 
(17 intermediate revisions by 6 users not shown)
Line 10: Line 10:
 
==Unpacking the EXE==
 
==Unpacking the EXE==
 
Download the Windows EXE file for your model. There are three methods of unpacking it.
 
Download the Windows EXE file for your model. There are three methods of unpacking it.
# Use a windows machine
+
# Use a (virtual) windows machine
 
# Use wine
 
# Use wine
# Use cabextract
+
# Use innoextract
  
The last one is by far the easiest, and will extract the files to your current directory.
+
The last one is by far the easiest, but will only work on the 1yoi04ww.exe file for the old ThinkPads.
==== cabextract on newer ThinkPads ====
 
{{NOTE|cabextract is typically not installed by default, but should be available from your distribution vendor. In the case of Fedora, just do a
 
{{cmd|yum install cabextract|}}}}
 
The files will be saved in the current working directory. No directories will be created.
 
  
$ cabextract 79oi18ww.exe
+
==== innoextract on old ThinkPads====
79oi18ww.exe: library not compiled to support large files.
 
79oi18ww.exe: library not compiled to support large files.
 
Extracting cabinet: 79oi18ww.exe
 
  extracting TPFLX.ICM
 
  extracting TPLCD.CAT
 
  extracting TPLCD.ICM
 
  extracting TPLCD.INF
 
  extracting TPLCD60.ICM
 
  extracting TPMB60.ICM
 
  extracting TPMB72.ICM
 
 
 
==== cabextract on older ThinkPads====
 
 
Files and directories will be created in the current working directory. You can use the files in any of the directories created, they are all the same.
 
Files and directories will be created in the current working directory. You can use the files in any of the directories created, they are all the same.
  
  $ cabextract 1yoi04ww.exe  
+
  $ innoextract 1yoi04ww.exe  
 
  Extracting cabinet: 1yoi04ww.exe
 
  Extracting cabinet: 1yoi04ww.exe
 
   extracting WIN98/IBMTPFLX.ICM
 
   extracting WIN98/IBMTPFLX.ICM
Line 55: Line 39:
  
 
==== Using wine====
 
==== Using wine====
If you use wine instead to unpack the "ThinkPad Monitor INF File" .exe file.  The profiles for newer ThinkPads will be located in {{path|~/.wine/drive_c/DRIVERS/WIN/MONITOR/}}.
+
If you use wine instead to unpack the "ThinkPad Monitor INF File" .exe file.  The profiles will be extracted to {{path|~/.wine/drive_c/DRIVERS/WIN/MONITOR/}}.
  
For older ThinkPads a bunch of OS directories will be created in {{path|~/.wine/drive_c/DRIVERS/WIN/MONITOR}}. It does not matter which OS directory you use, the ICM files are all the same.
+
For older ThinkPads a bunch of OS directories will be created in this location. It does not matter which OS directory you use, the ICM files are all the same.
  
 
==Finding your colour profile==
 
==Finding your colour profile==
Line 63: Line 47:
 
After unpacking the windows EXE you should find a bunch of ICM files and a INF file with a mapping of the LCD vendor to colour profile.  
 
After unpacking the windows EXE you should find a bunch of ICM files and a INF file 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 EISA vendor information, but monitor-edid from the monitor-edid RPM (on Fedora) does. On ubuntu, you can install read-edid ("sudo aptitude install read-edid") and then run "sudo get-edid | parse-edid".
+
But first you need to know which LCD you have. Unfortunately xrandr does not provide the EISA vendor information, but monitor-edid from the monitor-edid RPM (on Fedora) does. On ubuntu, you can install read-edid ("sudo aptitude install read-edid") and then run "sudo get-edid | parse-edid", the identifier information will have to be transposed ("LEN:3140" -> LEN4031).
  
 
  $ monitor-edid
 
  $ monitor-edid
Line 76: Line 60:
 
  # Monitor preferred modeline (50.0 Hz vsync, 53.3 kHz hsync, ratio 4/3, 124 dpi)
 
  # 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
 
  ModeLine "1400x1050" 89.97 1400 1448 1560 1688 1050 1051 1054 1066 -hsync -vsync
 +
 +
{{NOTE|x201s on Ubuntu 10.10 can't have get-edid working. Instead, I looked carefully at the TPLCD.INF file and concluded that x201s's monitor id is LEN4014. --> following the steps the icm file I used is TPLCD.ICM. I'm not professional but it does make the color look a lot better than none, by setting the profile using gnome-color-manager.}}
  
 
As you can see from the above, I have a '''LEN4022'''. If I then look at the INF file
 
As you can see from the above, I have a '''LEN4022'''. If I then look at the INF file
Line 99: Line 85:
 
{{NOTE|Even though I need to use TPLCD.ICM for my ThinkPad does not mean the outcome will be the same for your ThinkPad. Please run through the steps to determine what file you need to use}}
 
{{NOTE|Even though I need to use TPLCD.ICM for my ThinkPad does not mean the outcome will be the same for your ThinkPad. Please run through the steps to determine what file you need to use}}
  
== Recent ThinkPads==
+
== Current ThinkPads==
Download [http://www-307.ibm.com/pc/support/site.wss/MIGR-62923.html "ThinkPad Monitor INF File"]
+
Download {{LNVDOCURL|DS015012|"ThinkPad Monitor INF File"}}
  
 
===Supported ThinkPads===
 
===Supported ThinkPads===
* L410, L510
+
* L410, {{L412}}, L510, {{L512}}, {{L520}}
* {{Edge}}
+
* {{Edge 13"}}, {{Edge 14"}}, {{Edge 15"}},
 
* {{R60}}, {{R60e}}, {{R61}}, {{R61e}}, {{R61i}}
 
* {{R60}}, {{R60e}}, {{R61}}, {{R61e}}, {{R61i}}
 
* {{R400}}, {{R500}}
 
* {{R400}}, {{R500}}
 
* {{SL300}}, {{SL400}}, {{SL400c}}, {{SL410}}, {{SL500}}, {{SL500c}}, {{SL510}}
 
* {{SL300}}, {{SL400}}, {{SL400c}}, {{SL410}}, {{SL500}}, {{SL500c}}, {{SL510}}
 
* {{T60}}, {{T60p}}, {{T61}}, {{T61p}}
 
* {{T60}}, {{T60p}}, {{T61}}, {{T61p}}
* {{T400}}, {{T400s}}, {{T410}}, {{T500}}, {{T510}}
+
* {{T400}}, {{T400s}}, {{T410}}, {{T410i}}, {{T410s}}, {{T410si}}, {{T420}},{{T420s}}, {{T500}}, {{T510}}, {{T510i}}, {{T520}}
* {{W500}}, {{W510}}, {{W700}}, {{W700ds}}
+
* {{W500}}, {{W510}}, {{W520}}, {{W700}}, {{W700ds}}, {{W701}}, {{W701ds}}
 
* {{X60}}, {{X60s}}, {{X60 Tablet}}, {{X61}}, {{X61s}}, {{X61 Tablet}}
 
* {{X60}}, {{X60s}}, {{X60 Tablet}}, {{X61}}, {{X61s}}, {{X61 Tablet}}
* {{X200}}, {{X200s}}, {{X200 Tablet}}, {{X300}}, {{X301}}
+
* {{X1}}, {{X100e}}, {{X120e}}, {{X200}}, {{X200s}}, {{X200 Tablet}}, {{X201}}, {{X201s}}, {{X201 Tablet}}, {{X220}}, {{X220 Tablet}}, {{X300}}, {{X301}}
 
* {{Z61e}}, {{Z61m}}, {{Z61p}}, {{Z61t}}
 
* {{Z61e}}, {{Z61m}}, {{Z61p}}, {{Z61t}}
 
* {{Reserve Edition}}
 
* {{Reserve Edition}}
  
 
== Older ThinkPads==
 
== Older ThinkPads==
Download [http://www-307.ibm.com/pc/support/site.wss/MIGR-44320.html "ThinkPad Monitor File"]
+
Download {{IBMDOCURL|MIGR-44320|ThinkPad Monitor File}}
  
 
===Supported ThinkPads===
 
===Supported ThinkPads===
Line 126: Line 112:
 
* {{770E}}, {{770ED}}, {{770X}}, {{770Z}}
 
* {{770E}}, {{770ED}}, {{770X}}, {{770Z}}
 
* {{i1200}}, {{i1300}}
 
* {{i1200}}, {{i1300}}
* i Series 1400, Type 2621, 2651
+
* {{i1400}}, Type 2621, 2651
 
* {{i1720}}, {{i1721}}, i1781
 
* {{i1720}}, {{i1721}}, i1781
 
* {{A20m}}, {{A20p}}, {{A21e}}, {{A21m}}, {{A21p}}, {{A22e}}, {{A22m}}, {{A22p}}
 
* {{A20m}}, {{A20p}}, {{A21e}}, {{A21m}}, {{A21p}}, {{A22e}}, {{A22m}}, {{A22p}}

Latest revision as of 16:04, 28 August 2016

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, with no easy to read mapping of ThinkPad model to ICM file. These instructions will tell you how to unpack the archive and locate the correct ICM file for your ThinkPad.

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

Unpacking the EXE

Download the Windows EXE file for your model. There are three methods of unpacking it.

  1. Use a (virtual) windows machine
  2. Use wine
  3. Use innoextract

The last one is by far the easiest, but will only work on the 1yoi04ww.exe file for the old ThinkPads.

innoextract on old ThinkPads

Files and directories will be created in the current working directory. You can use the files in any of the directories created, they are all the same.

$ innoextract 1yoi04ww.exe 
Extracting cabinet: 1yoi04ww.exe
  extracting WIN98/IBMTPFLX.ICM
  extracting WIN98/IBMTPLCD.CAT
  extracting WIN98/IBMTPLCD.ICM
  extracting WIN98/IBMTPLCD.INF
  extracting WIN2000/IBMTPFLX.ICM
  extracting WIN2000/IBMTPLCD.CAT
  extracting WIN2000/IBMTPLCD.ICM
  extracting WIN2000/IBMTPLCD.INF
  extracting WINME/IBMTPFLX.ICM
  extracting WINME/IBMTPLCD.CAT
  extracting WINME/IBMTPLCD.ICM
  extracting WINME/IBMTPLCD.INF
  extracting WINXP/IBMTPFLX.ICM
  extracting WINXP/IBMTPLCD.CAT
  extracting WINXP/IBMTPLCD.ICM
  extracting WINXP/IBMTPLCD.INF

Using wine

If you use wine instead to unpack the "ThinkPad Monitor INF File" .exe file. The profiles will be extracted to ~/.wine/drive_c/DRIVERS/WIN/MONITOR/.

For older ThinkPads a bunch of OS directories will be created in this location. It does not matter which OS directory you use, the ICM files are all the same.

Finding your colour profile

NOTE!
These instructions assume you have a newer model ThinkPad. If you have an older model ThinkPad you need to use IBMTPLCD.INF instead.

After unpacking the windows EXE you should find a bunch of ICM files and a INF file 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 EISA vendor information, but monitor-edid from the monitor-edid RPM (on Fedora) does. On ubuntu, you can install read-edid ("sudo aptitude install read-edid") and then run "sudo get-edid | parse-edid", the identifier information will have to be transposed ("LEN:3140" -> LEN4031).

$ 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
NOTE!
x201s on Ubuntu 10.10 can't have get-edid working. Instead, I looked carefully at the TPLCD.INF file and concluded that x201s's monitor id is LEN4014. --> following the steps the icm file I used is TPLCD.ICM. I'm not professional but it does make the color look a lot better than none, by setting the profile using gnome-color-manager.

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

$ grep -i 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 (the actual filename will be all upper-case), so that is the file I need to load in gnome-color-manager for my ThinkPad LCD.

NOTE!
Even though I need to use TPLCD.ICM for my ThinkPad does not mean the outcome will be the same for your ThinkPad. Please run through the steps to determine what file you need to use

Current ThinkPads

Download "ThinkPad Monitor INF File"

Supported ThinkPads

Older ThinkPads

Download ThinkPad Monitor File

Supported ThinkPads