This file is indexed.

/usr/share/doc/displaycal/README.html is in dispcalgui 3.1.0.0-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

   1
   2
   3
   4
   5
   6
   7
   8
   9
  10
  11
  12
  13
  14
  15
  16
  17
  18
  19
  20
  21
  22
  23
  24
  25
  26
  27
  28
  29
  30
  31
  32
  33
  34
  35
  36
  37
  38
  39
  40
  41
  42
  43
  44
  45
  46
  47
  48
  49
  50
  51
  52
  53
  54
  55
  56
  57
  58
  59
  60
  61
  62
  63
  64
  65
  66
  67
  68
  69
  70
  71
  72
  73
  74
  75
  76
  77
  78
  79
  80
  81
  82
  83
  84
  85
  86
  87
  88
  89
  90
  91
  92
  93
  94
  95
  96
  97
  98
  99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 114
 115
 116
 117
 118
 119
 120
 121
 122
 123
 124
 125
 126
 127
 128
 129
 130
 131
 132
 133
 134
 135
 136
 137
 138
 139
 140
 141
 142
 143
 144
 145
 146
 147
 148
 149
 150
 151
 152
 153
 154
 155
 156
 157
 158
 159
 160
 161
 162
 163
 164
 165
 166
 167
 168
 169
 170
 171
 172
 173
 174
 175
 176
 177
 178
 179
 180
 181
 182
 183
 184
 185
 186
 187
 188
 189
 190
 191
 192
 193
 194
 195
 196
 197
 198
 199
 200
 201
 202
 203
 204
 205
 206
 207
 208
 209
 210
 211
 212
 213
 214
 215
 216
 217
 218
 219
 220
 221
 222
 223
 224
 225
 226
 227
 228
 229
 230
 231
 232
 233
 234
 235
 236
 237
 238
 239
 240
 241
 242
 243
 244
 245
 246
 247
 248
 249
 250
 251
 252
 253
 254
 255
 256
 257
 258
 259
 260
 261
 262
 263
 264
 265
 266
 267
 268
 269
 270
 271
 272
 273
 274
 275
 276
 277
 278
 279
 280
 281
 282
 283
 284
 285
 286
 287
 288
 289
 290
 291
 292
 293
 294
 295
 296
 297
 298
 299
 300
 301
 302
 303
 304
 305
 306
 307
 308
 309
 310
 311
 312
 313
 314
 315
 316
 317
 318
 319
 320
 321
 322
 323
 324
 325
 326
 327
 328
 329
 330
 331
 332
 333
 334
 335
 336
 337
 338
 339
 340
 341
 342
 343
 344
 345
 346
 347
 348
 349
 350
 351
 352
 353
 354
 355
 356
 357
 358
 359
 360
 361
 362
 363
 364
 365
 366
 367
 368
 369
 370
 371
 372
 373
 374
 375
 376
 377
 378
 379
 380
 381
 382
 383
 384
 385
 386
 387
 388
 389
 390
 391
 392
 393
 394
 395
 396
 397
 398
 399
 400
 401
 402
 403
 404
 405
 406
 407
 408
 409
 410
 411
 412
 413
 414
 415
 416
 417
 418
 419
 420
 421
 422
 423
 424
 425
 426
 427
 428
 429
 430
 431
 432
 433
 434
 435
 436
 437
 438
 439
 440
 441
 442
 443
 444
 445
 446
 447
 448
 449
 450
 451
 452
 453
 454
 455
 456
 457
 458
 459
 460
 461
 462
 463
 464
 465
 466
 467
 468
 469
 470
 471
 472
 473
 474
 475
 476
 477
 478
 479
 480
 481
 482
 483
 484
 485
 486
 487
 488
 489
 490
 491
 492
 493
 494
 495
 496
 497
 498
 499
 500
 501
 502
 503
 504
 505
 506
 507
 508
 509
 510
 511
 512
 513
 514
 515
 516
 517
 518
 519
 520
 521
 522
 523
 524
 525
 526
 527
 528
 529
 530
 531
 532
 533
 534
 535
 536
 537
 538
 539
 540
 541
 542
 543
 544
 545
 546
 547
 548
 549
 550
 551
 552
 553
 554
 555
 556
 557
 558
 559
 560
 561
 562
 563
 564
 565
 566
 567
 568
 569
 570
 571
 572
 573
 574
 575
 576
 577
 578
 579
 580
 581
 582
 583
 584
 585
 586
 587
 588
 589
 590
 591
 592
 593
 594
 595
 596
 597
 598
 599
 600
 601
 602
 603
 604
 605
 606
 607
 608
 609
 610
 611
 612
 613
 614
 615
 616
 617
 618
 619
 620
 621
 622
 623
 624
 625
 626
 627
 628
 629
 630
 631
 632
 633
 634
 635
 636
 637
 638
 639
 640
 641
 642
 643
 644
 645
 646
 647
 648
 649
 650
 651
 652
 653
 654
 655
 656
 657
 658
 659
 660
 661
 662
 663
 664
 665
 666
 667
 668
 669
 670
 671
 672
 673
 674
 675
 676
 677
 678
 679
 680
 681
 682
 683
 684
 685
 686
 687
 688
 689
 690
 691
 692
 693
 694
 695
 696
 697
 698
 699
 700
 701
 702
 703
 704
 705
 706
 707
 708
 709
 710
 711
 712
 713
 714
 715
 716
 717
 718
 719
 720
 721
 722
 723
 724
 725
 726
 727
 728
 729
 730
 731
 732
 733
 734
 735
 736
 737
 738
 739
 740
 741
 742
 743
 744
 745
 746
 747
 748
 749
 750
 751
 752
 753
 754
 755
 756
 757
 758
 759
 760
 761
 762
 763
 764
 765
 766
 767
 768
 769
 770
 771
 772
 773
 774
 775
 776
 777
 778
 779
 780
 781
 782
 783
 784
 785
 786
 787
 788
 789
 790
 791
 792
 793
 794
 795
 796
 797
 798
 799
 800
 801
 802
 803
 804
 805
 806
 807
 808
 809
 810
 811
 812
 813
 814
 815
 816
 817
 818
 819
 820
 821
 822
 823
 824
 825
 826
 827
 828
 829
 830
 831
 832
 833
 834
 835
 836
 837
 838
 839
 840
 841
 842
 843
 844
 845
 846
 847
 848
 849
 850
 851
 852
 853
 854
 855
 856
 857
 858
 859
 860
 861
 862
 863
 864
 865
 866
 867
 868
 869
 870
 871
 872
 873
 874
 875
 876
 877
 878
 879
 880
 881
 882
 883
 884
 885
 886
 887
 888
 889
 890
 891
 892
 893
 894
 895
 896
 897
 898
 899
 900
 901
 902
 903
 904
 905
 906
 907
 908
 909
 910
 911
 912
 913
 914
 915
 916
 917
 918
 919
 920
 921
 922
 923
 924
 925
 926
 927
 928
 929
 930
 931
 932
 933
 934
 935
 936
 937
 938
 939
 940
 941
 942
 943
 944
 945
 946
 947
 948
 949
 950
 951
 952
 953
 954
 955
 956
 957
 958
 959
 960
 961
 962
 963
 964
 965
 966
 967
 968
 969
 970
 971
 972
 973
 974
 975
 976
 977
 978
 979
 980
 981
 982
 983
 984
 985
 986
 987
 988
 989
 990
 991
 992
 993
 994
 995
 996
 997
 998
 999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
<!DOCTYPE html>
<!--[if lte IE 8 ]>
<html xmlns="http://www.w3.org/1999/xhtml" class="ie_lte_8">
<![endif]-->
<!--[if (gt IE 8)|!(IE) ]><!-->
<html xmlns="http://www.w3.org/1999/xhtml">
<!--<![endif]-->
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
		<meta name="viewport" content="width=device-width" />
		<title>DisplayCAL (formerly known as dispcalGUI)—Open Source Display Calibration and Characterization powered by Argyll CMS</title>
		<meta name="description" content="A graphical front-end for display calibration and profiling using Argyll CMS" />
		<link rel="shortcut icon" href="theme/icons/favicon.ico" type="image/x-icon" />
		<link rel="stylesheet" href="http://displaycal.net/shariff/shariff.complete.css" />
		<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Lato%3A400%2C700%2C900%2C400italic%2C700italic&#038;subset=latin%2Clatin-ext" type="text/css" media="all" />
		<link rel="stylesheet" href="theme/readme.css?ts=2015-12-23T03:39" />
		<link rel="stylesheet" href="theme/slimbox2/slimbox2.css?ts=2015-09-01T12:44" />
		<link rel="stylesheet" href="theme/prism.css" />
		<script type="text/javascript" src="theme/jquery.js"></script>
		<script type="text/javascript" src="theme/jquery.scrollTo.js"></script>
		<script type="text/javascript" src="theme/jquery.localscroll.js"></script>
		<script type="text/javascript" src="theme/slimbox2/slimbox2.js?ts=2015-09-01T14:54"></script>
		<script type="text/javascript" src="theme/readme.js?ts=2015-10-01T02:21"></script>
	</head>
	<body>

		<div id="header">
			<div id="title-wrapper">
				<div id="title">
					<h1><img src="theme/icon-reflection.png" alt="" /> <a href="http://displaycal.net/"><span class="appname">Display<span>CAL</span></span></a><span><span class="dash"></span>Formerly known as dispcalGUI<br />Open Source Display Calibration and Characterization powered by <a href="http://argyllcms.com">Argyll CMS</a></span></h1>

					<p class="shariff" data-lang="en" data-services="[&quot;facebook&quot;,&quot;googleplus&quot;,&quot;linkedin&quot;,&quot;twitter&quot;,&quot;info&quot;]" data-theme="white" data-backend-url="http://displaycal.net/shariff/index.php" data-url="http://displaycal.net/" data-info-url="https://github.com/heiseonline/shariff"></p>
				</div>

				<div id="site-navigation">
					<ul>
						<li><a href="http://displaycal.net/news/">News</a></li>
						<li><a href="http://displaycal.net/forums/">Forums</a></li>
						<li><a href="http://displaycal.net/issues/">Issue Tracker</a></li>
						<li><a href="http://displaycal.net/wiki/">Wiki</a></li>
					</ul>
				</div>
			</div>
			<div id="header-inner-overlay"></div>
		</div>

		<div id="intro">
			<div id="friendlybox">
				<div id="get">
					<h2 id="version">3.1 </h2>
					<p>2016-02-01 00:32 UTC</p>
					<ul>
						<li class="download"><a href="#download">Get DisplayCAL</a></li>
						<li class="requirements"><a href="#requirements">System requirements</a></li>
						<li class="changelog"><a href="#changelog">What's new in this version</a></li>
					</ul>
				</div>
				<ul class="complementary">
					<li class="about"><a href="#about">About</a></li>
					<li class="quickstart"><a href="#quickstart">Quickstart guide</a></li>
					<li class="toc"><a href="#toc">Documentation</a></li>
					<li class="help"><a href="#help">Get help</a></li>
					<li class="reportbug"><a href="#reportbug">Report a bug</a></li>
					<li class="donate"><a href="#donate">Contribute</a></li>
				</ul>
			</div>

			<p id="teaser">
				<a href="#screenshots" title="View screenshots"><img src="theme/DisplayCAL-adjust-reflection.png" alt="" /></a>
			</p>
		</div>

		<div id="donation-box">
			<div id="donate">
			<h2 style="margin-top: 0">Your support is appreciated!</h2>
			<p>If you would like to support the development of, technical assistance with, and continued availability of DisplayCAL and Argyll CMS, please consider a financial contribution.
			As DisplayCAL wouldn't be useful without Argyll CMS, all contributions received for DisplayCAL will be split between both projects.<br />
			For light personal non-commercial use, a one-time contribution may be appropriate.
			If you're using DisplayCAL professionally, an annual or monthly contribution would make a great deal of difference in ensuring that both projects continue to be available.</p>
			<p>If you have decided to contribute (many thanks!), but you'd like to give to <a href="http://argyllcms.com">Argyll CMS</a> directly on your own behalf (visit <a href="http://argyllcms.com">argyllcms.com</a> and scroll down a bit to get to its contribution links), please leave a note on your DisplayCAL contribution if contributing to both projects. Please note that if your contribution should be put towards adding a certain feature in Argyll CMS, like support for a specific instrument, it will be more appropriate and efficient to <a href="http://argyllcms.com">contribute to Argyll CMS only</a>, and directly.</p>
			<form id="donationform" action="https://www.paypal.com/cgi-bin/webscr" method="post">
				<p>
					Contribute using PayPal:
					<input type="hidden" name="cmd" value="_donations" />
					<input id="donationform_business" type="hidden" name="business" value="" />
					<input type="hidden" name="item_name" value="Contribution to Florian Hoech/DisplayCAL" />
					<input type="hidden" name="no_shipping" value="1" />
					<input type="hidden" name="lc" value="US" />
					<INPUT TYPE="hidden" NAME="return" value="http://displaycal.net/contribution_thank_you.html">
					<select name="amount">
						<option disabled="disabled">Home / Enthusiast Use</option>
						<option value="10">10</option>
						<option value="20" selected="selected">20</option>
						<option value="30">30</option>
						<option value="40">40</option>
						<option value="50">50</option>
						<option value="75">75</option>
						<option disabled="disabled">Professional / Business Use</option>
						<option value="100">100</option>
						<option value="150">150</option>
						<option value="200">200</option>
						<option value="250">250</option>
						<option value="300">300</option>
						<option value="350">350</option>
					</select>
					<select name="currency_code">
						<option value="EUR" selected="selected">€ Euro</option>
						<option value="GBP">£ Pound</option>
						<option value="AUD">$ Australian Dollar</option>
						<option value="CAD">$ Canadian Dollar</option>
						<option value="USD">$ US Dollar</option>
					</select>
					<button type="submit" class="paypal">Contribute</button>
					<button type="button" class="paypal" onclick="location.href = document.forms['donationform'].action + '?cmd=_donations&amp;lc=' + document.forms['donationform'].elements['lc'].value + '&amp;business=' + encodeURIComponent(document.forms['donationform'].elements['business'].value) + '&amp;item_name=' + encodeURIComponent(document.forms['donationform'].elements['item_name'].value) + '&amp;no_shipping=1&amp;currency_code=' + document.forms['donationform'].elements['currency_code'].value">Own amount</button>
				</p>
			</form>
			<script type="text/javascript">
				//<![CDATA[
				(function () {
					var btns = document.getElementsByTagName('button'), i;
					for (i = 0; i < btns.length; i ++) {
						btns[i].style.visibility = 'hidden';
					}
					setTimeout(function () {
						document.getElementById('donationform_business').value = ['displaycal.net', 'contribute'].reverse().join('\x40');
						for (i = 0; i < btns.length; i ++) {
							btns[i].style.visibility = 'visible';
						}
					}, 3000);
				})();
				//]]>
			</script>
			<span>(For other means of contributing, please contact me under <a>florian ‹at› displaycal . net</a>)</span>
			<p><a href="#thanks">Thanks to all contributors!</a></p>
			<p>Special thanks to the following people and organizations:</p>
			<p><a href="https://uptimepal.net"><img src="http://dispcalgui.hoech.net/img/uptimepal-logo-icon-only-22.png" alt="" style="vertical-align: bottom" /></a> <a href="https://uptimepal.net">Uptime Pal - Website Monitoring</a></p>
			<p>Riley Brandt Photography—<a href="http://www.rileybrandt.com/lessons/">The Open Source Photography Course</a></p>
			</div>
		</div>

		<div class="infobox" style="margin-top: 78px">
			<p><a href="http://argyllcms.com/pro/" title="ArgyllPRO ColorMeter"><img src="http://displaycal.net/img/argyllpro-small.png" alt="" style="float: left; margin-left: -38px; margin-right: 8px; margin-top: -64px" /></a> <strong>If you'd like to measure color on the go</strong>, you may also be interested in <a href="http://argyllcms.com/pro/"><strong>ArgyllPRO ColorMeter</strong></a> by Graeme Gill, author of Argyll CMS. <strong>Available for Android</strong> from the Google Play store. <a href="http://youtu.be/ODfCoUH0euQ" title="ArgyllPRO ColorMeter 2 Minute Overview + Guided Tour Video">Check out the 2 Minute Overview + Guided Tour Video.</a></p>
		</div>

		<div id="content">

		<div id="toc">

			<h2>Table of contents</h2>
			<ul>
				<li><a href="#about">About DisplayCAL</a>
				</li>
				<li><a href="#disclaimer">Disclaimer</a></li>
				<li><a href="#download">Download</a></li>
				<li><a href="#quickstart">Quickstart guide</a></li>
				<li><a href="#requirements">System requirements and other prerequisites</a>
					<ul>
						<li><a href="#requirements">General system requirements</a></li>
						<li><a href="#argyll">Argyll CMS</a></li>
						<li><a href="#instruments">Supported instruments</a></li>
						<li><a href="#requirements-unattended">Additional requirements for unattended calibration and profiling</a></li>
						<li><a href="#requirements-source">Additional requirements for using the source code</a></li>
					</ul>
				</li>
				<li><a href="#install">Installation</a></li>
				<li><a href="#concept">Basic concept of display calibration</a></li>
				<li><a href="#colorimeter-corrections">A note about colorimeters, displays and DisplayCAL</a></li>
				<li><a href="#usage">Usage</a>
					<ul>
						<li><a href="#usage">General usage</a></li>
						<li><a href="#settingsfile">Settings</a></li>
						<li><a href="#presets">Predefined settings (presets)</a></li>
						<li><a href="#display_instrument">Choosing a display and measurement device</a></li>
						<li><a href="#settings_calibration">Calibration settings</a></li>
						<li><a href="#settings_profiling">Profiling settings</a></li>
						<li><a href="#testchart_editor">Testchart editor</a></li>
						<li><a href="#calibrating">Calibrating / profiling</a></li>
						<li><a href="#create-3dlut">Creating 3D LUTs</a></li>
						<li><a href="#verify-profile">Verification / measurement report</a></li>
						<li><a href="#special">Special functionality</a>
							<ul>
								<li><a href="#special">Overview of special functionality</a></li>
								<li><a href="#remote">Remote measurements and profiling</a></li>
								<li><a href="#madvr">madVR test pattern generator</a></li>
								<li><a href="#resolve">Resolve (10.1+) as pattern generator</a></li>
								<li><a href="#untethered">Untethered display measurement and profiling</a></li>
							</ul>
						</li>
					</ul>
				</li>
				<li><a href="#menu">Menu commands</a>
					<ul>
						<li><a href="#menu">List of menu commands</a></li>
						<li><a href="#menu-file">File menu</a></li>
						<li><a href="#menu-options">Options menu</a></li>
						<li><a href="#menu-tools">Tools menu</a></li>
						<li><a href="#menu-lang">Language menu</a></li>
					</ul>
				</li>
				<li><a href="#scripting">Scripting</a></li>
				<li><a href="#userdata">User data and configuration file locations</a></li>
				<li><a href="#issues">Known issues &amp; solutions</a></li>
				<li><a href="#help">Get help</a></li>
				<li><a href="#reportbug">Report a bug</a></li>
				<li><a href="#discuss">Discussion</a></li>
				<li><a href="#todo">To-Do / planned features</a></li>
				<li><a href="#thanks">Thanks and acknowledgements</a></li>
				<li><a href="#changelog">Version history / changelog</a></li>
				<li><a href="#definitions">Definitions</a></li>
			</ul>
		</div>

		<div id="about">
			<h2>About DisplayCAL</h2>		

			<p>DisplayCAL is a graphical user interface developed by Florian Höch for the display calibration and profiling tools of <a href="http://argyllcms.com">Argyll CMS</a>, an open source color management system developed by Graeme Gill.</p>

			<p>Calibrate and characterize your display devices using one of the <a href="#instruments">many supported hardware sensors</a>, with support for multi-display setups and a variety of available settings like customizable whitepoint, luminance, tone response curve as well as the option to create matrix and look-up-table ICC profiles, with optional gamut mapping, as well as some proprietary 3D LUT formats. Other features include:</p>

			<ul>
				<li>Support of colorimeter correction for different screens via <em>correction matrices</em> or <em>calibration specral sample</em> files (the latter only for specific colorimeters i.e. i1 Display Pro, ColorMunki Display and Spyder 4/5).</li>
				<li>Profile verification and measurement report: Check the quality of profiles and 3D LUTs via measurements. Also supports custom CGATS files (e.g. FOGRA, GRACoL/IDEAlliance, SWOP) and using of reference profiles to obtain test values.</li>
				<li>Test chart editor: Create charts with any amount of color patches, easy copy &amp; paste from CGATS, CSV files (only tab-delimited) and spreadsheet applications.</li>
				<li>Create synthetic ICC (matrix) profiles with custom primaries, white- and blackpoint as well as tone response.</li>
			</ul>

			<div id="screenshots">
				<h3>Screenshots</h3>		

				<p>
					<span><a href="screenshots/DisplayCAL-screenshot-GNOME.png" class="imagelink" data-lightbox="lightbox-set" title="Display &amp; instrument settings"><img src="screenshots/DisplayCAL-screenshot-GNOME-thumb.png" alt="" class="opaque" /></a><br />
					<small>Display &amp; instrument settings</small><br /></span>

					<span><a href="screenshots/DisplayCAL-screenshot-GNOME-calibration-settings.png" class="imagelink" data-lightbox="lightbox-set" title="Calibration settings"><img src="screenshots/DisplayCAL-screenshot-GNOME-calibration-settings-thumb.png" alt="" class="opaque" /></a><br />
					<small>Calibration settings</small><br /></span>

					<span><a href="screenshots/DisplayCAL-screenshot-GNOME-profiling-settings.png" class="imagelink" data-lightbox="lightbox-set" title="Profiling settings"><img src="screenshots/DisplayCAL-screenshot-GNOME-profiling-settings-thumb.png" alt="" class="opaque" /></a><br />
					<small>Profiling settings</small><br /></span>
				</p>

				<p>
					<span><a href="screenshots/DisplayCAL-screenshot-GNOME-3DLUT-settings.png" class="imagelink" data-lightbox="lightbox-set" title="3D LUT settings"><img src="screenshots/DisplayCAL-screenshot-GNOME-3DLUT-settings-thumb.png" alt="" class="opaque" /></a><br />
					<small>3D LUT settings</small><br /></span>

					<span><a href="screenshots/DisplayCAL-screenshot-GNOME-verification-settings.png" class="imagelink" data-lightbox="lightbox-set" title="Verification settings"><img src="screenshots/DisplayCAL-screenshot-GNOME-verification-settings-thumb.png" alt="" class="opaque" /></a><br />
					<small>Verification settings</small><br /></span>

					<span><a href="screenshots/DisplayCAL-screenshot-GNOME-edit-testchart.png" class="imagelink" data-lightbox="lightbox-set" title="Testchart editor"><img src="screenshots/DisplayCAL-screenshot-GNOME-edit-testchart-thumb.png" alt="" class="opaque" /></a><br />
					<small>Testchart editor</small><br /></span>
				</p>

				<p>
					<span><a href="screenshots/DisplayCAL-screenshot-GNOME-adjust.png" class="imagelink" data-lightbox="lightbox-set" title="Display adjustment"><img src="screenshots/DisplayCAL-screenshot-GNOME-adjust-thumb.png" alt="" class="opaque" /></a><br />
					<small>Display adjustment</small><br /></span>

					<span><a href="screenshots/DisplayCAL-screenshot-GNOME-profile-information.png" class="imagelink" data-lightbox="lightbox-set" title="Profile information"><img src="screenshots/DisplayCAL-screenshot-GNOME-profile-information-thumb.png" alt="" class="opaque" /></a><br />
					<small>Profile information</small><br /></span>

					<span><a href="screenshots/DisplayCAL-screenshot-GNOME-view-curves.png" class="imagelink" data-lightbox="lightbox-set" title="Calibration curves"><img src="screenshots/DisplayCAL-screenshot-GNOME-view-curves-thumb.png" alt="" class="opaque" /></a><br />
					<small>Calibration curves</small><br /></span>
				</p>

				<p>
					<span><a href="screenshots/DisplayCAL-screenshot-KDE4.png" class="imagelink" data-lightbox="lightbox-set" title="DisplayCAL running under Linux with KDE4"><img src="screenshots/DisplayCAL-screenshot-KDE4-thumb.png" alt="" class="opaque" /></a><br />
					<small>KDE4</small><br /></span>

					<span><a href="screenshots/DisplayCAL-screenshot-Mac.png" class="imagelink" data-lightbox="lightbox-set" title="DisplayCAL running under Mac OS X"><img src="screenshots/DisplayCAL-screenshot-Mac-thumb.png" alt="" class="opaque" /></a><br />
					<small>Mac OS X</small><br /></span>

					<span><a href="screenshots/DisplayCAL-screenshot-Win10.png" class="imagelink" data-lightbox="lightbox-set" title="DisplayCAL running under Windows 10"><img src="screenshots/DisplayCAL-screenshot-Win10-thumb.png" alt="" class="opaque" /></a><br />
					<small>Windows 10</small><br /></span>
				</p>
			</div>
		</div>

		<div id="disclaimer">
			<h2>Disclaimer</h2>

			<p>This program is free software; you can redistribute it and/or modify it 
			under the terms of the <a href="LICENSE.txt">GNU General Public License</a> as published by the 
			<a href="http://fsf.org/">Free Software Foundation</a>; either <a href="LICENSE.txt">version 3 of the License</a>, or (at your 
			option) any later version.</p>

			<p>This program is distributed in the hope that it will be useful, but 
			WITHOUT ANY WARRANTY; without even the implied warranty of 
			MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the <a href="LICENSE.txt">GNU General Public License</a> for more details.</p>

			<p>DisplayCAL is written in <a href="http://python.org/">Python</a> and uses the 3rd-party packages <a href="http://numpy.scipy.org/">NumPy</a>, <a href="http://pypi.python.org/pypi/demjson">demjson</a> (<abbr title="JavaScript Object Notation">JSON<sup><a href="#definition_JSON">[6]</a></sup></abbr> library) and <a href="http://wxpython.org/">wxPython</a> (<abbr title="Graphical User Interface">GUI<sup><a href="#definition_GUI">[4]</a></sup></abbr> toolkit). It also makes extensive use of several <a href="http://argyllcms.com/">Argyll CMS</a> utilities. The build system to create standalone executables additionally uses <a href="http://pypi.python.org/pypi/setuptools">setuptools</a> and <a href="http://pypi.python.org/pypi/py2app">py2app</a> on Mac OS X or <a href="http://pypi.python.org/pypi/py2exe">py2exe</a> on Windows. All of these software packages are © by their respective authors.</p>
		</div>

		<div id="download">
			<h2 id="standalone">Get DisplayCAL standalone</h2>

			<ul>
				<li>
					<h3 id="packages">For Linux</h3>
					<div>
						<p>Native packages for several distributions are available via <a href="https://build.opensuse.org">openSUSE Build Service</a>:</p>
						<ul class="packages">
							<li>
								<span>Arch Linux</span>
								<span><a href="http://displaycal.net/download/Arch_Extra/i686/DisplayCAL.pkg.tar.xz">x86</a> | 
								<a href="http://displaycal.net/download/Arch_Extra/x86_64/DisplayCAL.pkg.tar.xz">x86_64</a></span>
							</li>
							<li>
								<span>CentOS 6</span>
								<span><a href="http://displaycal.net/download/CentOS_CentOS-6/i686/DisplayCAL.rpm">x86</a> | 
								<a href="http://displaycal.net/download/CentOS_CentOS-6/x86_64/DisplayCAL.rpm">x86_64</a></span>
							</li>
							<li>
								<span>CentOS 7</span>
								<span>
								<a href="http://displaycal.net/download/CentOS_CentOS-7/x86_64/DisplayCAL.rpm">x86_64</a></span>
							</li>
							<li>
								<span>Debian 7 (Wheezy)</span>
								<span><a href="http://displaycal.net/download/Debian_7.0/i386/DisplayCAL.deb">x86</a> | 
								<a href="http://displaycal.net/download/Debian_7.0/amd64/DisplayCAL.deb">x86_64</a></span>
							</li>
							<li>
								<span>Debian 8 (Jessie)</span>
								<span><a href="http://displaycal.net/download/Debian_8.0/i386/DisplayCAL.deb">x86</a> | 
								<a href="http://displaycal.net/download/Debian_8.0/amd64/DisplayCAL.deb">x86_64</a></span>
							</li>
							<li>
								<span>Fedora 20</span>
								<span><a href="http://displaycal.net/download/Fedora_20/i686/DisplayCAL.rpm">x86</a> | 
								<a href="http://displaycal.net/download/Fedora_20/x86_64/DisplayCAL.rpm">x86_64</a></span>
							</li>
							<li>
								<span>Fedora 21</span>
								<span><a href="http://displaycal.net/download/Fedora_21/i686/DisplayCAL.rpm">x86</a> | 
								<a href="http://displaycal.net/download/Fedora_21/x86_64/DisplayCAL.rpm">x86_64</a></span>
							</li>
							<li>
								<span>Fedora 22</span>
								<span><a href="http://displaycal.net/download/Fedora_22/i686/DisplayCAL.rpm">x86</a> | 
								<a href="http://displaycal.net/download/Fedora_22/x86_64/DisplayCAL.rpm">x86_64</a></span>
							</li>
							<li>
								<span>Fedora 23</span>
								<span><a href="http://displaycal.net/download/Fedora_23/i686/DisplayCAL.rpm">x86</a> | 
								<a href="http://displaycal.net/download/Fedora_23/x86_64/DisplayCAL.rpm">x86_64</a></span>
							</li>
							<li>
								<span>openSUSE 13.1</span>
								<span><a href="http://displaycal.net/download/openSUSE_13.1/i586/DisplayCAL.rpm">x86</a> | 
								<a href="http://displaycal.net/download/openSUSE_13.1/x86_64/DisplayCAL.rpm">x86_64</a></span>
							</li>
							<li>
								<span>openSUSE 13.2</span>
								<span><a href="http://displaycal.net/download/openSUSE_13.2/i586/DisplayCAL.rpm">x86</a> | 
								<a href="http://displaycal.net/download/openSUSE_13.2/x86_64/DisplayCAL.rpm">x86_64</a></span>
							</li>
							<li>
								<span>openSUSE Leap 42.1</span>
								<span>
								<a href="http://displaycal.net/download/openSUSE_Leap_42.1/x86_64/DisplayCAL.rpm">x86_64</a></span>
							</li>
							<li>
								<span>openSUSE Factory</span>
								<span><a href="http://displaycal.net/download/openSUSE_Factory/i586/DisplayCAL.rpm">x86</a> | 
								<a href="http://displaycal.net/download/openSUSE_Factory/x86_64/DisplayCAL.rpm">x86_64</a></span>
							</li>
							<li>
								<span>openSUSE Tumbleweed</span>
								<span><a href="http://displaycal.net/download/openSUSE_Tumbleweed/i586/DisplayCAL.rpm">x86</a> | 
								<a href="http://displaycal.net/download/openSUSE_Tumbleweed/x86_64/DisplayCAL.rpm">x86_64</a></span>
							</li>
							<li>
								<span>RedHat RHEL 6</span>
								<span><a href="http://displaycal.net/download/RedHat_RHEL-6/i686/DisplayCAL.rpm">x86</a> | 
								<a href="http://displaycal.net/download/RedHat_RHEL-6/x86_64/DisplayCAL.rpm">x86_64</a></span>
							</li>
							<li>
								<span>RedHat RHEL 7</span>
								<span>
								<a href="http://displaycal.net/download/RedHat_RHEL-7/x86_64/DisplayCAL.rpm">x86_64</a></span>
							</li>
							<li>
								<span>SLE 11 SP2</span>
								<span><a href="http://displaycal.net/download/SLE_11_SP2/i586/DisplayCAL.rpm">x86</a> | 
								<a href="http://displaycal.net/download/SLE_11_SP2/x86_64/DisplayCAL.rpm">x86_64</a></span>
							</li>
							<li>
								<span>SLE 11 SP3</span>
								<span><a href="http://displaycal.net/download/SLE_11_SP3/i586/DisplayCAL.rpm">x86</a> | 
								<a href="http://displaycal.net/download/SLE_11_SP3/x86_64/DisplayCAL.rpm">x86_64</a></span>
							</li>
							<li>
								<span>SLE 11 SP4</span>
								<span><a href="http://displaycal.net/download/SLE_11_SP4/i586/DisplayCAL.rpm">x86</a> | 
								<a href="http://displaycal.net/download/SLE_11_SP4/x86_64/DisplayCAL.rpm">x86_64</a></span>
							</li>
							<li>
								<span>SLE 12</span>
								<span>
								<a href="http://displaycal.net/download/SLE_12/x86_64/DisplayCAL.rpm">x86_64</a></span>
							</li>
							<li>
								<span>Ubuntu 12.04 (Precise)</span>
								<span><a href="http://displaycal.net/download/xUbuntu_12.04/i386/DisplayCAL.deb">x86</a> | 
								<a href="http://displaycal.net/download/xUbuntu_12.04/amd64/DisplayCAL.deb">x86_64</a></span>
							</li>
							<li>
								<span>Ubuntu 14.04 (Trusty)</span>
								<span><a href="http://displaycal.net/download/xUbuntu_14.04/i386/DisplayCAL.deb">x86</a> | 
								<a href="http://displaycal.net/download/xUbuntu_14.04/amd64/DisplayCAL.deb">x86_64</a></span>
							</li>
							<li>
								<span>Ubuntu 14.10 (Utopic)</span>
								<span><a href="http://displaycal.net/download/xUbuntu_14.10/i386/DisplayCAL.deb">x86</a> | 
								<a href="http://displaycal.net/download/xUbuntu_14.10/amd64/DisplayCAL.deb">x86_64</a></span>
							</li>
							<li>
								<span>Ubuntu 15.04 (Vivid)</span>
								<span><a href="http://displaycal.net/download/xUbuntu_15.04/i386/DisplayCAL.deb">x86</a> | 
								<a href="http://displaycal.net/download/xUbuntu_15.04/amd64/DisplayCAL.deb">x86_64</a></span>
							</li>
							<li>
								<span>Ubuntu 15.10 (Wily)</span>
								<span><a href="http://displaycal.net/download/xUbuntu_15.10/i386/DisplayCAL.deb">x86</a> | 
								<a href="http://displaycal.net/download/xUbuntu_15.10/amd64/DisplayCAL.deb">x86_64</a></span>
							</li>
						</ul>

						<p>Packages made for older distributions may work on newer distributions as long as nothing substantial has changed (i.e. Python version). Also there are several distributions out there that are based on one in the above list (e.g. Linux Mint which is based on Ubuntu). This means that packages for that base distribution should also work on derivatives, you just need to know which version the derivative is based upon and pick your download accordingly.</p>

						<p>In all other cases, you can try this universal install that should work on a multitude of distributions (if you use it, please uninstall any already installed version of DisplayCAL first to avoid file conflicts):</p>
						<p><a href="http://displaycal.net/download/DisplayCAL.package">Autopackage (Python 2.6 and 2.7, x86 and x86_64)</a></p>
					</div>
				</li>
				<li>
					<h3>For Mac OS X (10.5 or newer)</h3>
					<div>
						<p>
							<a href="http://displaycal.net/download/standalone/DisplayCAL.dmg">Disk image</a>
						</p>
					</div>
				</li>
				<li>
					<h3>For Windows (XP or newer)</h3>
					<div>
						<p>
							<a href="http://displaycal.net/download/standalone/DisplayCAL-Setup.exe">Installer (recommended)</a> or <a href="http://displaycal.net/download/standalone/DisplayCAL-win32.zip">ZIP archive</a>
						</p>
					</div>
				</li>
				<li>
					<h3>Source code</h3>
					<div>
						<p>You need to have a working Python installation and all <a href="#requirements-source">requirements</a>.</p>
						<p><a href="http://displaycal.net/download/DisplayCAL.tar.gz">Source Tarball</a></p>
						<p>
							Alternatively, if you don't mind trying out development code, <a href="http://sourceforge.net/p/dispcalgui/code/">browse the </a><abbr title="Subversion"><a href="http://sourceforge.net/p/dispcalgui/code/">SVN</a><sup><a href="#definition_SVN">[8]</a></sup></abbr><a href="http://sourceforge.net/p/dispcalgui/code/"> repository of the latest development version</a> (or do a full checkout using <code>svn checkout svn://svn.code.sf.net/p/dispcalgui/code/trunk displaycal</code>). But please note that the development code might contain bugs or not run at all, or only on some platform(s). Use at your own risk. 
						</p>
					</div>
				</li>
			</ul>
			
			<p>Please continue with the <a href="#quickstart">Quickstart Guide</a>.</p>

			<h2>Get DisplayCAL <!--and Argyll CMS--> via Zero Install</h2>

			<ul>
				<li>
					<h3>Brief introduction to Zero Install</h3>
					<div>
						<p>(<strong>Note:</strong> Usually you do not have to install Zero Install separately, it is handled automatically by the DisplayCAL downloads linked below. The following paragraph is only informational.)</p>
						<p><a href="http://0install.net">Zero Install</a> is a decentralised cross-platform software installation system. The benefits you get from Zero Install are:</p>
						<ul>
							<li><strong>Always up-to-date.</strong> Zero Install automatically keeps all software updated.</li>
							<li><strong>Easily switch between software versions</strong> from within Zero Install if desired.</li>
							<li><strong>No administrator rights needed</strong> to add or update software (*).</li>
						</ul>
						<p class="footnote">* Note: Installing/updating Zero Install itself or software dependencies through the operating system's mechanisms may require administrative privileges.</p>
					</div>
				</li>
				<li>
					<h3>For Linux</h3>
					<div>
						<p>Native packages for several distributions are available via <a href="https://build.opensuse.org">openSUSE Build Service</a>:</p>
						<ul class="packages">
							<li>
								<span></span>
								<span><a href="http://displaycal.net/download/Arch_Extra/any/DisplayCAL-0install.pkg.tar.xz">Arch Linux</a> <em>(please see note below)</em></span>
							</li>
							<li>
								<span></span>
								<span><a href="http://displaycal.net/download/CentOS_CentOS-6/noarch/DisplayCAL-0install.rpm">CentOS 6</a></span>
							</li>
							<li>
								<span></span>
								<span><a href="http://displaycal.net/download/CentOS_CentOS-7/noarch/DisplayCAL-0install.rpm">CentOS 7</a></span>
							</li>
							<li>
								<span></span>
								<span><a href="http://displaycal.net/download/Debian_7.0/all/DisplayCAL-0install.deb">Debian 7 (Wheezy)</a></span>
							</li>
							<li>
								<span></span>
								<span><a href="http://displaycal.net/download/Debian_8.0/all/DisplayCAL-0install.deb">Debian 8 (Jessie)</a></span>
							</li>
							<li>
								<span></span>
								<span><a href="http://displaycal.net/download/Fedora_20/noarch/DisplayCAL-0install.rpm">Fedora 20</a></span>
							</li>
							<li>
								<span></span>
								<span><a href="http://displaycal.net/download/Fedora_21/noarch/DisplayCAL-0install.rpm">Fedora 21</a></span>
							</li>
							<li>
								<span></span>
								<span><a href="http://displaycal.net/download/Fedora_22/noarch/DisplayCAL-0install.rpm">Fedora 22</a></span>
							</li>
							<li>
								<span></span>
								<span><a href="http://displaycal.net/download/Fedora_23/noarch/DisplayCAL-0install.rpm">Fedora 23</a></span>
							</li>
							<li>
								<span></span>
								<span><a href="http://displaycal.net/download/openSUSE_13.1/noarch/DisplayCAL-0install.rpm">openSUSE 13.1</a></span>
							</li>
							<li>
								<span></span>
								<span><a href="http://displaycal.net/download/openSUSE_13.2/noarch/DisplayCAL-0install.rpm">openSUSE 13.2</a></span>
							</li>
							<li>
								<span></span>
								<span><a href="http://displaycal.net/download/openSUSE_Leap_42.1/noarch/DisplayCAL-0install.rpm">openSUSE Leap 42.1</a></span>
							</li>
							<li>
								<span></span>
								<span><a href="http://displaycal.net/download/openSUSE_Factory/noarch/DisplayCAL-0install.rpm">openSUSE Factory</a></span>
							</li>
							<li>
								<span></span>
								<span><a href="http://displaycal.net/download/openSUSE_Tumbleweed/noarch/DisplayCAL-0install.rpm">openSUSE Tumbleweed</a></span>
							</li>
							<li>
								<span></span>
								<span><a href="http://displaycal.net/download/RedHat_RHEL-6/noarch/DisplayCAL-0install.rpm">RedHat RHEL 6</a></span>
							</li>
							<li>
								<span></span>
								<span><a href="http://displaycal.net/download/RedHat_RHEL-7/noarch/DisplayCAL-0install.rpm">RedHat RHEL 7</a></span>
							</li>
							<li>
								<span></span>
								<span><a href="http://displaycal.net/download/xUbuntu_12.04/all/DisplayCAL-0install.deb">Ubuntu 12.04 (Precise)</a></span>
							</li>
							<li>
								<span></span>
								<span><a href="http://displaycal.net/download/xUbuntu_14.04/all/DisplayCAL-0install.deb">Ubuntu 14.04 (Trusty)</a></span>
							</li>
							<li>
								<span></span>
								<span><a href="http://displaycal.net/download/xUbuntu_14.10/all/DisplayCAL-0install.deb">Ubuntu 14.10 (Utopic)</a></span>
							</li>
							<li>
								<span></span>
								<span><a href="http://displaycal.net/download/xUbuntu_15.04/all/DisplayCAL-0install.deb">Ubuntu 15.04 (Vivid)</a></span>
							</li>
							<li>
								<span></span>
								<span><a href="http://displaycal.net/download/xUbuntu_15.10/all/DisplayCAL-0install.deb">Ubuntu 15.10 (Wily)</a></span>
							</li>
						</ul>

						<div>
							<em>Arch Linux note:</em> The zeroinstall-injector 2.6.1 package in AUR is broken. Get a working version here:
						</div>
						<div>
							<a href="http://download.opensuse.org/repositories/home:/fhoech:/0install/Arch_Extra/i686/zeroinstall-injector-2.6.2-1-i686.pkg.tar.xz" title="Zero Install 2.6.2 for Arch Linux (x86)">x86</a> |
							<a href="http://download.opensuse.org/repositories/home:/fhoech:/0install/Arch_Extra/x86_64/zeroinstall-injector-2.6.2-1-x86_64.pkg.tar.xz" title="Zero Install 2.6.2 for Arch Linux (x86_64)">x86_64</a>
						</div>
						
						<p>Please note:</p>
						<ul>
							<li><strong>The version number in the package name does not necessarily reflect the DisplayCAL version</strong>.</li>
							<!--li><strong>An official Argyll CMS version from ArgyllCMS.com will be used by default</strong> unless the distribution-packaged version is newer, but you can switch to a distribution-packaged version anytime (see <a href="#zeroinstall-updating">“Updating or switching between software versions”</a> below).</li-->
						</ul>

						<p>Packages made for older distributions may work on newer distributions as long as nothing substantial has changed (i.e. Python version). Also there are several distributions out there that are based on one in the above list (e.g. Linux Mint which is based on Ubuntu). This means that packages for that base distribution should also work on derivatives, you just need to know which version the derivative is based upon and pick your download accordingly. In all other cases, please try the instructions below or one of the <a href="#standalone">standalone installations</a>.</p>
						
						<h4>Alternate installation method</h4>
						
						<p>If your distribution is not listed above, please follow these instructions:</p>
						
						<ol>
							<li>Install the <strong>0install</strong> or <strong>zeroinstall-injector</strong> package from your distribution. In case it is not available, there are pre-compiled <a href="http://0install.net/tools/0install.xml">generic binaries</a>. Download the appropriate archive for your system, unpack it, <code>cd</code> to the extracted folder in a terminal, and run <code>sudo ./install.sh local</code> to install to /usr/local, or <code>./install.sh home</code> to install to your home directory (you may have to add ~/bin to your PATH variable in that case). You'll need libcurl installed (most systems have it by default).</li>
							<li>Choose the <strong>0install</strong> entry from the applications menu (older versions of Zero Install will have an “Add New Program” entry instead).</li>
							<li>Drag <a href="http://displaycal.net/0install/DisplayCAL.xml">DisplayCAL's Zero Install feed</a> link to the Zero Install window.</li>
						</ol>
						<p>Note on DisplayCAL's standalone tools under Linux (3D LUT maker, curve viewer, profile information, synthetic profile creator, testchart editor, VRML to X3D converter): If using the alternate installation method, an application icon entry will only be created for DisplayCAL itself. This is currently a limitation of Zero Install under Linux. You can manually install icon entries for the standalone tools by running the following in a terminal:</p>
						<pre><code>0launch --command=install-standalone-tools-icons \<br />	http://displaycal.net/0install/DisplayCAL.xml</code></pre>
						<p>And you may uninstall them again with:</p>
						<pre><code>0launch --command=uninstall-standalone-tools-icons \<br />	http://displaycal.net/0install/DisplayCAL.xml</code></pre>
					</div>
				</li>
				<li>
					<h3>For Mac OS X (10.5 or newer)</h3>
					<div>
						<p>Download the <a href="http://displaycal.net/download/DisplayCAL-0install.dmg">DisplayCAL Zero Install Launcher</a> disk image and run any of the included applications.</p>
					</div>
				</li>
				<li>
					<h3>For Windows (XP or newer)</h3>
					<div>
						<p>Download and install the DisplayCAL Zero Install Setup: <a href="http://displaycal.net/download/DisplayCAL-0install-Setup.exe">Administrator install</a> | <a href="http://displaycal.net/download/DisplayCAL-0install-Setup-per-user.exe">Per-user install</a>.</p>
					</div>
				</li>
				<li>
					<h3 id="zeroinstall-updating">Manually updating or switching between software versions</h3>
					<div>
						<p>Updates are normally applied automatically. If you want to manually update or switch between software versions, please follow the instructions below.</p>
						<ul>
							<li>
								<h4>Linux</h4>
								<p>Choose the <strong>0install</strong> entry from the applications menu (older versions of Zero Install will have a “Manage Programs” entry instead). In the window that opens, right-click the DisplayCAL icon and select “Choose versions” (with older versions of Zero Install, you have to click the small “Update or change version” icon below the “Run” button instead). You can then click the “Refresh all” button to update, or click the small button to the right of an entry and select “Show versions”.</p>
								<p>To select a specific software version, click on the version entry and set the rating to “preferred” (note that this will prevent updates being downloaded for the selected software until you manually change to a different version or reset the rating).</p>
							</li>
							<li>
								<h4>Mac OS X</h4>
								<p>Run the <strong>0install Launcher</strong>. In the window that opens, click the “Refresh all” button to update, or click the small button to the right of an entry and select “Show versions”.</p>
								<p>To select a specific software version, click on the version entry and set the rating to “preferred” (note that this will prevent updates being downloaded for the selected software until you manually change to a different version or reset the rating).</p>
							</li>
							<li>
								<h4>Windows</h4>
								<p>Choose the <strong>Zero Install</strong> entry from the start page under Windows 8, or the respective subfolder of the programs folder in the start menu under Windows 10, Windows 7 and earlier, and switch to the “My Applications” tab in the window that opens. Click the small “down” arrow inside the “Start” button to the right of the DisplayCAL entry and choose “Update” or “Select version”.</p>
								<p>To select a specific software version, click on the “change” link next to an item, then click on the version entry and set the rating to “preferred” (note that this will prevent updates being downloaded for the selected software until you manually change to a different version or reset the rating).</p>
							</li>
						</ul>
					</div>
				</li>
			</ul>
			
			<p>Please continue with the <a href="#quickstart">Quickstart Guide</a>.</p>
		</div>

		<div id="quickstart">
			<h2>Quickstart guide</h2>

			<p>This short guide intends to get you up and running quickly, but if you run into a problem, please refer to the full <a href="#requirements">prerequisites</a> and <a href="#install">installation</a> sections.</p>

			<ol>
				<li>
					<p>Launch DisplayCAL. If it cannot find Argyll CMS on your computer, it will prompt you to automatically download the latest version or select the location manually.</p>
				</li>
				<li>
					<p class="info"><strong>Windows only:</strong> If your measurement device is <strong>not</strong> a ColorMunki Display, i1 Display Pro, Huey, ColorHug, specbos or K-10, you need to install an Argyll-specific driver before continuing. Select “Install Argyll CMS instrument drivers...” from the “Tools” menu. See also <a href="#install-windows-driver">“Instrument driver installation under Windows”.</a></p>
					<p class="info"><strong>Mac OS X only:</strong> If you want to use the HCFR colorimeter, follow the instructions in the “HCFR Colorimeter” section under “<a href="http://argyllcms.com/doc/Installing_OSX.html">Installing Argyll CMS on Mac OS X</a>” in the Argyll CMS documentation before continuing.</p>
					<p>Connect your measurement device to your computer.</p>
				</li>
				<li>
					<p>Click the small icon with the swirling arrow <img src="theme/refresh_lr.png" alt="" /> in between the “Display device” and “Instrument” controls to detect connected display devices and instruments. The detected instrument(s) should show up in the “Instrument” dropdown.</p>
					<p class="info"><strong>If your measurement device is a Spyder 2</strong>, a popup dialog will show which will let you enable the device. This is required to be able to use the Spyder 2 with Argyll CMS and DisplayCAL.</p>
					<p class="info"><strong>If your measurement device is a i1 Display 2, i1 Display Pro, ColorMunki Display, DTP94, Spyder 2/3/4/5</strong>, a popup dialog will show and allow you to import generic <a href="#colorimeter-corrections">colorimeter corrections</a> from the vendor software which may help measurement accuracy on the type of display you're using. After importing, they are available under the “Correction” dropdown, where you can choose one that fits the type of display you have, or leave it at “Auto” if there is no match. <em>Note:</em> Importing from the Spyder 4/5 software enables additional measurement modes for that instrument.</p>
				</li>
				<li>
					<p>Click <strong>“Calibrate &amp; profile”</strong>. That's it!</p>
					<p>Feel free to check out the <a href="http://displaycal.net/wiki/">Wiki</a> for guides and tutorials, and refer to the <a href="#concept">documentation</a> for advanced usage instructions (optional).</p>
					<p class="info"><strong>Linux only:</strong> If you can't access your instrument, choose “Install Argyll CMS instrument configuration files...” from the “Tools” menu (if that menu item is grayed out, the Argyll CMS version you're currently using has probably been installed from the distribution's repository and should already be setup correctly for instrument access). If you still cannot access the instrument, try unplugging and reconnecting it, or a reboot. If all else fails, read “<a href="http://argyllcms.com/doc/Installing_Linux.html">Installing Argyll CMS on Linux: Setting up instrument access</a>” in the Argyll CMS documentation.</p>
				</li>
			</ol>
		</div>

		<div id="requirements">
			<h2>System requirements and other prerequisites</h2>

			<div>
				<h3>General system requirements</h3>
				<ul>
					<li>A recent Linux, Mac OS X (10.5 or newer) or Windows (XP/Server 2003 or newer) operating system.</li>
					<li>A graphics card with at least 24 bits per pixel (true color) support and the desktop set up to use this color depth.</li>
				</ul>
			</div>

			<div id="argyll">
				<h3>Argyll CMS</h3>

				<p>To use DisplayCAL, you need to download and install <a href="http://argyllcms.com">Argyll CMS</a> (1.0 or newer).</p>
			</div>

			<div id="instruments">
				<h3>Supported instruments</h3>

				<p>You need one of the supported instruments to make measurements. All instruments supported by Argyll CMS are also supported by DisplayCAL. For display readings, these currently are:</p>

				<h4>Colorimeters</h4>
				<ul>
					<li>CalMAN X2 (treated as i1 Display 2)</li>
					<li>Datacolor/ColorVision Spyder 2</li>
					<li>Datacolor Spyder 3 (since Argyll CMS 1.1.0)</li>
					<li>Datacolor Spyder 4 (since Argyll CMS 1.3.6)</li>
					<li>Datacolor Spyder 5 (since Argyll CMS 1.7.0)</li>
					<li>HP Advanced Profiling Solution (treated as i1 Display 2)</li>
					<li>HP DreamColor (treated as i1 Display 2)</li>
					<li>Hughski ColorHug (Linux support since Argyll CMS 1.3.6, Windows support with newest ColorHug firmware since Argyll CMS 1.5.0, fully functional Mac OS X support since Argyll CMS 1.6.2)</li>
					<li>Hughski ColorHug2 (new in Argyll CMS 1.7.0)</li>
					<li>Image Engineering EX1 (new in Argyll CMS 1.8.0 Beta)</li>
					<li>Klein K10-A (new in Argyll CMS 1.7.0)</li>
					<li>Lacie Blue Eye (treated as i1 Display 2)</li>
					<li>Sequel Imaging MonacoOPTIX (treated as i1 Display 1)</li>
					<li>X-Rite ColorMunki Create (treated as i1 Display 2)</li>
					<li>X-Rite ColorMunki Smile (since Argyll CMS 1.5.0)</li>
					<li>X-Rite DTP92</li>
					<li>X-Rite DTP94</li>
					<li>X-Rite/GretagMacbeth/Pantone Huey</li>
					<li>X-Rite/GretagMacbeth i1 Display 1</li>
					<li>X-Rite/GretagMacbeth i1 Display 2/LT</li>
					<li>X-Rite i1 Display Pro, ColorMunki Display (since Argyll CMS 1.3.4)</li>
				</ul>

				<h4>Spectrometers</h4>
				<ul>
					<li>JETI specbos 1211/1201 (since Argyll CMS 1.6.0)</li>
					<li>X-Rite ColorMunki Design, ColorMunki Photo (since Argyll CMS 1.1.0)</li>
					<li>X-Rite/GretagMacbeth i1 Monitor (since Argyll CMS 1.0.3)</li>
					<li>X-Rite/GretagMacbeth i1 Pro</li>
					<li>X-Rite i1 Pro 2 (since Argyll CMS 1.5.0)</li>
					<li>X-Rite/GretagMacbeth Spectrolino</li>
				</ul>

				<div class="infobox">
					<p>If you've decided to buy a color instrument because Argyll CMS supports it, please let the dealer and manufacturer know that “You bought it because Argyll CMS supports it”—thanks.</p>
				</div>

				<p>Note that the <em>i1 Display Pro</em> and <em>i1 Pro</em> are very different instruments despite their naming similarities.</p>

				<p>Also there are currently (2014-05-20) five instruments (or rather, packages) under the ColorMunki brand, two of which are spectrometers, and three are colorimeters (not all of them being recent offerings, but you should be able to find them used in case they are no longer sold new):</p>
				<ul>
					<li>The <em>ColorMunki Design</em> and <em>ColorMunki Photo</em> spectrometers differ only in the functionality of the bundled vendor software. There are no differences between the instruments when used with Argyll CMS and DisplayCAL.</li>
					<li>The <em>ColorMunki Display</em> colorimeter is a less expensive version of the i1 Display Pro colorimeter. It comes bundled with a simpler vendor software and has longer measurement times compared to the i1 Display Pro. Apart from that, the instrument appears to be virtually identical.</li>
					<li>The <em>ColorMunki Create</em> and <em>ColorMunki Smile</em> colorimeters are similar hardware as the i1 Display 2 (with the ColorMunki Smile no longer having a built-in correction for CRT but for white LED backlit LCD instead).</li>
				</ul>
			</div>

			<div id="requirements-unattended">
				<h3>Additional requirements for unattended calibration and profiling</h3>

				<p>When using a spectrometer that is supported by the unattended feature (see below), having to take the instrument off the screen to do a sensor self-calibration again after display calibration before starting the measurements for profiling may be avoided if the menu item “Allow skipping of spectrometer self-calibration” in the “Options” menu is checked (colorimeter measurements are always unattended because they generally do not require a sensor calibration away from the screen, with the exception of the i1 Display 1).</p>

				<p>Unattended calibration and profiling currently supports the following spectrometers in addition to most colorimeters:</p>

				<ul>
					<li>X-Rite ColorMunki</li>
					<li>X-Rite/GretagMacbeth i1 Monitor &amp; Pro</li>
					<li>X-Rite/GretagMacbeth Spectrolino</li>
					<li>X-Rite i1 Pro 2</li>
				</ul>

				<p>Be aware you may still be forced to do a sensor calibration if the instrument requires it. Also, please look at the possible <a href="#issue-samplereadfail">caveats</a>.</p>
			</div>

			<div id="requirements-source">
				<div id="requirements-source-basic">
					<h3>Additional requirements for using the source code</h3>

					<div>
						<p>You can <a href="#install">skip</a> this section if you downloaded a package, installer, ZIP archive or disk image of DisplayCAL for your operating system and do not want to run from source.</p>

						<h4>All platforms:</h4>
						<ul>
							<li><a href="http://python.org/">Python</a> &gt;= v2.6 &lt;= v2.7.x (2.7.x is the recommended version. Mac OS X users: If you want to compile DisplayCAL's C extension module, it is advisable to <strong>first</strong> install XCode and <strong>then</strong> the official python.org Python)</li>
							<li><a href="http://numpy.scipy.org/">NumPy</a></li>
							<li><a href="http://wxpython.org/">wxPython</a> <abbr title="Graphical User Interface">GUI<sup><a href="#definition_GUI">[4]</a></sup></abbr> toolkit</li>
						</ul>

						<h4>Windows:</h4>
						<ul>
							<li><a href="http://sourceforge.net/projects/pywin32/">pywin32</a></li>
							<li><a href="http://pypi.python.org/pypi/WMI/">WMI</a></li>
						</ul>
					</div>
				</div>

				<div id="requirements-source-compile">
					<h3>Additional requirements for compiling the C extension module</h3>

					<div>
						<p>Normally you can <a href="#install">skip</a> this section as the source code contains pre-compiled versions of the C extension module that DisplayCAL uses.</p>

						<h4>Linux:</h4>
						<ul>
							<li>GCC and development headers for Python + X11 + Xrandr + Xinerama + Xxf86vm if not already installed, they should be available through your distribution's packaging system</li>
						</ul>

						<h4>Mac OS X:</h4>
						<ul>
							<li><a href="http://developer.apple.com/xcode/">XCode</a></li>
							<li><a href="http://pypi.python.org/pypi/py2app/">py2app</a> if you want to build a standalone executable. On Mac OS X before 10.5, install setuptools first: <code>sudo python util/ez_setup.py setuptools</code></li>
						</ul>

						<h4>Windows:</h4>
						<ul>
							<li>a C-compiler (e.g. <a href="http://www.microsoft.com/germany/Express/product/visualcplusplusexpress.aspx">MS Visual C++ Express</a> or <a href="http://www.mingw.org">MinGW</a>. If you're using the official python.org Python 2.6 or later I'd recommend Visual C++ Express as it works out of the box)</li>
							<li><a href="http://pypi.python.org/pypi/py2exe/">py2exe</a> if you want to build a standalone executable</li>
						</ul>
					</div>
				</div>

				<div id="requirements-source-run">
					<h3 id="runsource">Running directly from source</h3>
					<div>
						<p>After satisfying all <a href="#requirements-source">additional requirements for using the source code</a>, you can simply run any of the included <code>.pyw</code> files from a terminal, e.g. <code>python2 DisplayCAL.pyw</code>, or install the software so you can access it via your desktop's application menu with <code>python2 setup.py install</code>. Run <code>python2 setup.py --help</code> to view available options.</p>

						<p>One-time setup instructions for source code checked out from SVN:</p>

						<p>Run <code>python2 setup.py</code> to create the version file so you don't see the update popup at launch.</p>
					
						<p>If the pre-compiled extension module that is included in the sources does not work for you (in that case you'll notice that the movable measurement window's size does not closely match the size of the borderless window generated by Argyll CMS during display measurements) or you want to re-build it unconditionally, run <code>python2 setup.py build_ext -i</code> to re-build it from scratch (you need to satisfy the <a href="#requirements-source-compile">requirements for compiling the C extension module</a> first).</p>
					</div>
				</div>
			</div>

		</div>

		<div id="install">
			<h2>Installation</h2>

			<p>It is recommended to first remove all previous versions unless you used Zero Install to get them.</p>
			
			<div id="install-windows-driver">
				<h3>Instrument driver installation under Windows</h3>

				<div>
					<p class="info">You only need to install the Argyll-specific driver if your measurement device is <strong>not</strong> a ColorMunki Display, i1 Display Pro, Huey, ColorHug, specbos or K-10.</p>

					<div class="info">
						<p>If you are using Windows 8, 8.1, or 10, you need to <strong>disable driver signature enforcement</strong> before you can install the driver.
						If <a href="https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface#Secure_boot">Secure Boot</a> is enabled in the <abbr title="Unified Extensible Firmware Interface">UEFI<sup><a href="#definition_UEFI">[12]</a></sup></abbr> setup, you need to disable it first. Refer to your mainboard or firmware manual how to go about this. Usually entering the firmware setup requires holding the DEL key when the system starts booting.</p>

						<p><strong>Method 1: Disable driver signature enforcement temporarily</strong></p>

						<ol>
							<li>Go to “Settings” (hover the lower right corner of the screen, then click the gear icon)</li>
							<li>Select “Power” (the on/off icon)</li>
							<li>Hold the SHIFT key down and click “Restart”.</li>
							<li>Select “Troubleshoot → “Advanced Options” → “Startup Settings” → “Restart”</li>
							<li>After reboot, select “Disable Driver Signature Enforcement” (number 7 on the list)</li>
						</ol>

						<p><strong>Method 2: Disable driver signature enforcement permanently</strong></p>

						<ol>
							<li>Open an elevated command prompt. Search for “Command Prompt” in the Windows start menu, right-click and select “Run as administrator”</li>
							<li>Run the following command: <code>bcdedit /set loadoptions DDISABLE_INTEGRITY_CHECKS</code></li>
							<li>Run the following command: <code>bcdedit /set TESTSIGNING ON</code></li>
							<li>Reboot</li>
						</ol>
					</div>

					<p>To install the Argyll-specific driver that is needed to use some instruments, launch DisplayCAL and select “Install Argyll CMS instrument drivers...” from the “Tools” menu.</p>
					
					<p>To switch between the Argyll CMS and vendor drivers, launch Windows' Device Manager and locate the instrument in the device list. It may be underneath one of the top level items.
					Right click on the instrument and select “Update Driver Software...”, then choose “Browse my computer for driver software”, “Let me pick from a list of device drivers on my computer” and finally select the Argyll driver for your instrument from the list.</p>
				</div>
			</div>

			<div id="install-deb-rpm">
				<h3>Linux package (.deb/.rpm)</h3>

				<div>
					<p>A lot of distributions allow easy installation of packages via the graphical desktop, i.e. by double-clicking the package file's icon. Please consult your distribution's documentation if you are unsure how to install packages.</p>
					<p class="info">If you cannot access your instrument, first try unplugging and reconnecting it, or a reboot. If that doesn't help, read “<a href="http://argyllcms.com/doc/Installing_Linux.html">Installing Argyll CMS on Linux: Setting up instrument access</a>”.</p>
				</div>
			</div>

			<div id="install-autopackage">
				<h3>Linux Autopackage (.package)</h3>

				<div>
					<p>Before installing the autopackage, first install wxPython (on some systems called python-wxGTK or python-wxWidgets) and NumPy using your system's package management software. To install the autopackage, follow these three steps (you only have to do it once, next time, you can just skip these steps and open the .package file directly):</p>

					<ol>
						<li>Click on the package with your right mouse button. Then click on the “Properties” menu item.</li>
						<li>Go to the “Permissions” tab.
							<ul>
								<li>Check the “Execute”, “Exec” or “Is Executable” checkbox. If there are more than one Execute/Exec checkboxes, check the top-most one.</li>
								<li>Click “Close” or “OK”, depending on the dialog.</li>
							</ul>
						</li>
						<li>If you already have the software installed from your distributions packages or from the source, remove it first. Then <em>open</em> the package file. If you are asked whether you want to display or run the package, choose “Run”.</li>
					</ol>
					<p>The installation will now begin. Follow further intructions that are displayed, if any.</p>
					<p class="info">If you cannot access your instrument, first try unplugging and reconnecting it, or a reboot. If that doesn't help, read “<a href="http://argyllcms.com/doc/Installing_Linux.html">Installing Argyll CMS on Linux: Setting up instrument access</a>”.</p>
				</div>
			</div>

			<div id="install-mac">
				<h3>Mac OS X</h3>

				<div>
					<p>Mount the disk image and option-drag its icon to your “Applications” folder. Afterwards open the “DisplayCAL” folder in your “Applications” folder and drag DisplayCAL's icon to the dock if you want easy access.</p>
				
					<p class="info">If you want to use the HCFR colorimeter under Mac OS X, follow the instructions under “<a href="http://argyllcms.com/doc/Installing_OSX.html">installing Argyll CMS on Mac OS X</a>” in the Argyll CMS documentation.</p>
				</div>
			</div>


			<div id="install-windows-setup">
				<h3>Windows (Installer)</h3>

				<div>
					<p>Launch the installer which will guide you trough the required setup steps.</p>
					<p class="info">If your measurement device is <strong>not</strong> a ColorMunki Display, i1 Display Pro, Huey, ColorHug, specbos or K-10, you need to install an Argyll-specific driver. <a href="#install-windows-driver">See “Instrument driver installation under Windows”.</a></p>
				</div>
			</div>


			<div id="install-windows-zip">
				<h3>Windows (ZIP archive)</h3>

				<div>
					<p>Unpack and then simply run DisplayCAL from the created folder.</p>
					<p class="info">If your measurement device is <strong>not</strong> a ColorMunki Display, i1 Display Pro, Huey, ColorHug, specbos or K-10, you need to install an Argyll-specific driver. <a href="#install-windows-driver">See “Instrument driver installation under Windows”.</a></p>
				</div>
			</div>

			<div id="install-src">
				<h3>Source code (all platforms)</h3>

				<div>
					<p>See the “Prerequisites” section to <a href="#runsource">run directly from source</a>.</p>

					<p>Starting with DisplayCAL 0.2.5b, you can use standard distutils/setuptools commands with setup.py to build, install, and create packages. <code>sudo python setup.py install</code> will compile the extension modules and do a standard installation. Run <code>python setup.py --help</code> or <code>python setup.py --help-commands</code> for more information. A few additional commands and options which are not part of distutils or setuptools (and thus do not appear in the help) are also available:</p>

					<h4>Additional setup commands</h4>
					<div class="info">
						<dl>
							<dt><code>0install</code></dt>
								<dd>Create/update 0install feeds and create Mac OS X application bundles to run those feeds.</dd>
							<dt><code>appdata</code></dt>
								<dd>Create/update <a href="http://people.freedesktop.org/~hughsient/appdata/">AppData</a> file.</dd>
							<dt><code>bdist_appdmg</code> (Mac OS X only)</dt>
								<dd>Creates a DMG of previously created (by the py2app or bdist_standalone commands) application bundles, or if used together with the <code>0install</code> command.</dd>
							<dt><code>bdist_deb</code> (Linux/Debian-based)</dt>
								<dd>Create an installable Debian (.deb) package, much like the standard distutils command bdist_rpm for RPM packages. Prerequisites:
								You first need to install alien and rpmdb, create a dummy RPM database via <code>sudo rpmdb --initdb</code>, then edit (or create from scratch) the setup.cfg (you can have a look at misc/setup.ubuntu9.cfg for a working example). Under Ubuntu, running utils/dist_ubuntu.sh will automatically use the correct setup.cfg. If you are using Ubuntu 11.04 or any other debian-based distribution which has Python 2.7 as default, you need to edit /usr/lib/python2.7/distutils/command/bdist_rpm.py, and change the line <code>install_cmd = ('%s install <span style="color: #c00">-O1</span> --root=$RPM_BUILD_ROOT '</code> to <code>install_cmd = ('%s install --root=$RPM_BUILD_ROOT '</code> by removing the <code><span style="color: #c00">-O1</span></code> flag. Also, you need to change /usr/lib/rpm/brp-compress to do nothing (e.g. change the file contents to <code>exit 0</code>, but don't forget to create a backup copy first) otherwise you will get errors when building.</dd>
							<dt><code>bdist_lipa</code></dt>
								<dd>Create a <a href="http://listaller.tenstral.net/">Listaller</a> package.</dd>
							<dt><code>bdist_pyi</code></dt>
								<dd>An alternative to <code>bdist_standalone</code>, which uses <a href="http://www.pyinstaller.org/">PyInstaller</a> instead of bbfreeze/py2app/py2exe.</dd>
							<dt><code>bdist_standalone</code></dt>
								<dd>Creates a standalone application that does not require a Python installation. Uses bbfreeze on Linux, py2app on Mac OS X and py2exe on Windows. setup.py will try and automatically download/install these packages for you if they are not yet installed and if not using the --use-distutils switch. Note: On Mac OS X, older versions of py2app (before 0.4) are not able to access files inside python “egg” files (which are basically ZIP-compressed folders). Setuptools, which is needed by py2app, will normally be installed in “egg” form, thus preventing those older py2app versions from accessing its contents. To fix this, you need to remove any installed setuptools-&lt;version&gt;-py&lt;python-version&gt;.egg files from your Python installation's site-packages directory (normally found under <code>/Library/Frameworks/Python.framework/Versions/Current/lib</code>). Then, run <code>sudo python util/ez_setup.py -Z setuptools</code> which will install setuptools unpacked, thus allowing py2app to acces all its files. This is no longer an issue with py2app 0.4 and later.</dd>
							<dt><code>buildservice</code></dt>
								<dd>Creates control files for openSUSE Build Service (also happens implicitly when invoking <code>sdist</code>).</dd>
							<dt><code>finalize_msi</code> (Windows only)</dt>
								<dd>Adds icons and start menu shortcuts to the MSI installer previously created with <code>bdist_msi</code>. Successful MSI creation needs a <a href="http://bugs.python.org/file15898/msilib_make_short.diff">patched msilib</a> (<a href="http://bugs.python.org/issue1128">additional</a> <a href="http://bugs.python.org/issue7639">information</a>).</dd>
							<dt><code>inno</code> (Windows only)</dt>
								<dd>Creates <a href="http://www.jrsoftware.org/isinfo.php">Inno Setup</a> scripts which can be used to compile setup executables for standalone applications generated by the <code>py2exe</code> or <code>bdist_standalone</code> commands and for 0install.</dd>
							<dt><code>purge</code></dt>
								<dd>Removes the <code>build</code> and <code>DisplayCAL.egg-info</code> directories including their contents.</dd>
							<dt><code>purge_dist</code></dt>
								<dd>Removes the <code>dist</code> directory and its contents.</dd>
							<dt><code>readme</code></dt>
								<dd>Creates README.html by parsing misc/README.template.html and substituting placeholders like date and version numbers.</dd>
							<dt><code>uninstall</code></dt>
								<dd>Uninstalls the package. You can specify the same options as for the <code>install</code> command.</dd>
						</dl>
					</div>

					<h4>Additional setup options</h4>
					<div class="info">
						<dl>
							<dt><code>--cfg=&lt;name&gt;</code></dt>
								<dd>Use an alternate setup.cfg, e.g. tailored for a given Linux distribution. The original setup.cfg is backed up and restored afterwards. The alternate file must exist as misc/setup.&lt;name&gt;.cfg</dd>
							<dt><code>-n</code>, <code>--dry-run</code></dt>
								<dd>Don't actually do anything. Useful in combination with the uninstall command to see which files would be removed.</dd>
							<dt><code>--skip-instrument-configuration-files</code></dt>
								<dd>Skip installation of udev rules and hotplug scripts.</dd>
							<dt><code>--skip-postinstall</code></dt>
								<dd>Skip post-installation on Linux (an entry in the desktop menu will still be created, but may not become visible until logging out and back in or rebooting) and Windows (no shortcuts in the start menu will be created at all).</dd>
							<dt><code>--stability=stable | testing | developer | buggy | insecure</code></dt>
								<dd>Set the stability for the implementation that is added/updated via the <code>0install</code> command.</dd>
							<dt><code>--use-distutils</code></dt>
								<dd>Force setup to use distutils (default) instead of setuptools. This is useful in combination with the bdist* commands, because it will avoid an artificial dependency on setuptools. This is actually a switch, use it once and the choice is remembered until you specify the <code>--use-setuptools</code> switch (see next paragraph).</dd>
							<dt><code>--use-setuptools</code></dt>
								<dd>Force setup to try and use setuptools instead of distutils. This is actually a switch, use it once and the choice is remembered until you specify the <code>--use-distutils</code> switch (see above).</dd>
						</dl>
					</div>
				</div>
			</div>

		</div>
			
		<div id="install-2">
			<h3>Instrument-specific setup</h3>
			
			<p><strong>If your measurement device is a i1 Display 2, i1 Display Pro, ColorMunki Display, DTP94, Spyder 2/3/4/5</strong>, you'll want to import the colorimeter corrections that are part of the vendor software packages, which can be used to better match the instrument to a particular type of display. <em>Note:</em> The full range of measurement modes for the Spyder 4/5 are also only available if they are imported from the Spyder 4/5 software.</p>
			<p>Choose “Import colorimeter corrections from other display profiling software...” from DisplayCAL's “Tools” menu.</p>
	
			<p><strong>If your measurement device is a Spyder 2</strong>, you need to enable it to be able to use it with Argyll CMS and DisplayCAL. Choose “Enable Spyder 2 colorimeter...” from DisplayCAL's “Tools” menu.</p>

		</div>

		<div id="concept">
			<h2>Basic concept of display calibration and profiling</h2>

			<p>If you have previous experience, <a href="#colorimeter-corrections">skip ahead</a>. If you are new to display 
			calibration, here is a quick outline of the basic concept.</p>

			<p>First, the display behavior is measured and adjusted to meet 
			user-definable target characteristics, like brightness, gamma and white point. 
			This step is generally referred to as <em>calibration</em>. Calibration is done by 
			adjusting the monitor controls, and the output of the graphics card (via 
			<em>calibration curves</em>, also sometimes called <em>video <abbr title="Look Up Table">LUT<sup><a href="#definition_LUT">[7]</a></sup></abbr> curves</em>—please don't confuse these with <em>LUT profiles</em>, the <a href="#difference_lutcurves_lutprofile" title="Difference between LUT (calibration) curves and LUT profiles">differences are explained here</a>) to get as 
			close as possible to the chosen target.<br />
			To meet the user-defined target characteristics, it is generally advisable to 
			get as far as possible by using the monitor controls, and only thereafter by 
			manipulating the output of the video card via calibration curves, which are loaded into the <em>video card gamma table</em>, to get the best
			results.</p>

			<p>Second, the calibrated displays response is measured and an <abbr title="International Color Consortium">ICC<sup><a href="#definition_ICC">[5]</a></sup></abbr> profile 
			describing it is created.</p>

			<p>Optionally and for convenience purposes, the calibration is stored in the profile, but both 
			still need to be used together to get correct results. This can lead to some ambiguity, 
			because loading the calibration curves from the profile is generally the 
			responsibility of a third party utility or the OS, while applications using 
			the profile to do color transforms usually don't know or care about the calibration (they don't need to). Currently, the only OS that 
			applies calibration curves out-of-the-box is Mac OS X (under <a href="#issue-win7-autoloadcalibration">Windows 7 or later you can enable it</a>, but it's off by default and doesn't offer the same high precision as the DisplayCAL profile loader)—for other OS's, DisplayCAL takes care of creating an appropriate loader.</p>

			<p>Even non-color-managed applications will benefit from a loaded 
			calibration because it is stored in the graphics card—it is “global”. But the calibration alone will not yield accurate colors—only fully color-managed applications will make use of display 
			profiles and the necessary color transforms.</p>

			<p>Regrettably there are several image viewing and editing applications that 
			only implement half-baked color management by not using the system's display profile (or any display profile at all), but an internal and often unchangeable “default”
			color space like sRGB, and sending output unaltered to the display after converting to that default colorspace. If the 
			display's actual response is close to sRGB, you might get pleasing (albeit not
			accurate) results, but on displays which behave differently, for example wide-color-gamut displays, even mundane colors can 
			get a strong tendency towards neon.</p>
		</div>

		<div id="colorimeter-corrections">
			<h2>A note about colorimeters, displays and DisplayCAL</h2>

			<p>Colorimeters need a correction in hardware or software to obtain correct measurements from different types of displays (please also see <a href="http://argyllcms.com/doc/WideGamutColmters.html">“Wide Gamut Displays and Colorimeters”</a> on the Argyll CMS website for more information). The latter is supported when using Argyll CMS &gt;= 1.3.0, so if you own a display and colorimeter which has not been specifically tuned for this display (i.e. does not contain a correction in hardware), you can apply a correction that has been calculated from spectrometer measurements to help better measure such a screen.<br />
			You need a spectrometer in the first place to do the necessary measurements to create such a correction, or you may query DisplayCAL's <a href="http://colorimetercorrections.displaycal.net/">Colorimeter Corrections Database</a>, and there's also a <a href="http://argyllcms.com/doc/ccmxs.html">list of contributed colorimeter correction files on the Argyll CMS website</a><strong>please note</strong> though that a matrix created for one particular instrument/display combination may not work well for different instances of the same combination because of display manufacturing variations and generally low inter-instrument agreement of most older colorimeters (with the exception of the DTP94), newer devices like the i1 Display Pro/ColorMunki Display and possibly the Spyder 4/5 seem to be less affected by this.<br />
			Starting with DisplayCAL 0.6.8, you can also <a href="#import-correction-matrices">import generic corrections</a> from some profiling softwares by choosing the corresponding item in the “Tools” menu.</p>

			<p>If you buy a screen bundled with a colorimeter, the instrument may have been matched to the screen in some way already, so you may not need a software correction in that case.</p>

			<h3>Special note about the X-Rite i1 Display Pro, ColorMunki Display and Spyder 4/5 colorimeters</h3>

			<p>These instruments greatly reduce the amount of work needed to match them to a display because they contain the spectral sensitivities of their filters in hardware, so only a spectrometer reading of the display is needed to create the correction (in contrast to matching other colorimeters to a display, which needs two readings: One with a spectrometer and one with the colorimeter).<br />
			That means anyone with a particular screen and a spectrometer can create a special <em>Colorimeter Calibration Spectral Set</em> (<code>.ccss</code>) file of that screen for use with those colorimeters, without needing to actually have access to the colorimeter itself.</p>
		</div>

		<div id="usage">
			<h2>Usage</h2>

			<p>Through the main window, you can choose your settings. When running calibration measurements, another window will guide you through the interactive part of display adjustment.</p>

			<div id="settingsfile">
				<h3>Settings file</h3>
				<p>Here, you can load a preset, or a calibration (<code>.cal</code>) or ICC profile (<code>.icc</code> / <code>.icm</code>) file from a previous 
				run. This will set options to 
				those stored in the file. If the file contains only a subset of settings, the other options will automatically be reset to defaults (except the 3D LUT settings, which won't be reset if the settings file doesn't contain 3D LUT settings, and the verification settings which will never be reset automatically).</p>

				<p>If a calibration file or profile is loaded in this way, its name will
				show up here to indicate that the settings reflect those in the file.
				Also, if a calibration is present it can be used as the base when “Just Profiling”.<br />
				The chosen settings file will stay selected as long as you do not change any of the 
				calibration or profiling settings, with one exception: When a <code>.cal</code> file with the same base name as the settings file
				exists in the same directory, adjusting the quality and profiling controls will not cause unloading of the settings file. This allows you to use an existing calibration with new profiling settings for “Just Profiling”, or to update an existing calibration with different quality and/or profiling settings. If you change settings in other situations, the file will get unloaded (but current settings will be retained—unloading just happens to remind you that the settings no longer match those in the file), and current display profile's calibration curves will be restored (if present, otherwise they will reset to linear).</p>

				<p>When a calibration file is selected, the “Update calibration”
				checkbox will become available, which takes less time than a calibration from scratch.
				If a <abbr title="International Color Consortium">ICC<sup><a href="#definition_ICC">[5]</a></sup></abbr> profile is selected, and a calibration file with the same base name
				exists in the same directory, the profile will be updated with the new calibration. Ticking the “Update calibration” checkbox will gray out
				all options as well as the “Calibrate &amp; profile” and “Just profile” buttons, only the quality level will be changeable.</p>
			</div>

			<div id="presets">
				<h3>Predefined settings (presets)</h3>

				<p>Starting with DisplayCAL v0.2.5b, predefined settings for several use cases are selectable in the settings dropdown. I strongly recommend to NOT view these presets as the solitary “correct” settings you absolutely should use unmodified if your use case matches their description. Rather view them as starting points, from where you can work towards your own, optimized (in terms of your requirements, hardware, surroundings, and personal preference) settings.</p>

				<h4>Why has a default gamma of 2.2 been chosen for some presets?</h4>

				<p>Many displays, be it CRT, LCD, Plasma or OLED, have a default response characteristic close to a gamma of approx. 2.2-2.4 (for CRTs, this is the actual native behaviour; and other technologies typically try to mimic CRTs). A target response curve for calibration that is reasonably close to the native response of a display should help to minimize calibration artifacts like banding, because the adjustments needed to the video card's gamma tables via calibration curves will not be as strong as if a target response farther away from the display's native response had been chosen.</p>
				<p>Of course, you can and should change the calibration response curve to a value suitable for your own requirements. For example, you might have a display that offers hardware calibration or gamma controls, that has been internally calibrated/adjusted to a different response curve, or your display's response is simply not close to a gamma of 2.2 for other reasons. You can run “Report on uncalibrated display device” from the “Tools” menu to measure the approximated overall gamma among other info.</p>
			</div>

			<div id="tabs">
				<h3>Tabs</h3>

				<p>The main user interface is divided into tabs, with each tab containing a sub-set of settings. Not all tabs may be available at any given time. Unavailable tabs will be grayed out.</p>
			</div>

			<div id="display_instrument">
				<h3>Choosing the display to calibrate and the measurement device</h3>

				<p>After connecting the instrument, click the small icon with the swirling arrow <img src="theme/refresh_lr.png" alt="" /> in between the “Display device” and “Instrument” controls to detect connected display devices and instruments.</p>

				<h4 id="settings_display_device">Choosing a display device</h4>
				
				<p>Directly connected displays will appear at the top of the list as entries in the form “Display Name/Model @ x, y, w, h” with x, y, w and h being virtual screen coordinates depending on resolution and DPI settings. Apart from those directly connected displays, a few additional options are also available:</p>

				<dl>
					<dt>Web @ localhost</dt>
						<dd>
							<p>Starts a standalone web server on your machine, which then allows a local or remote web browser to display the color test patches, e.g. to calibrate/profile a smartphone or tablet computer.</p>

							<p>Note that if you use this method of displaying test patches, then colors will be displayed with 8 bit per component precision, and any screen-saver or power-saver will <strong>not</strong> be automatically disabled. You will also be at the mercy of any color management applied by the web browser, and may have to carefully review and configure such color management.</p>
						</dd>

					<dt>madVR</dt>
						<dd>
							<p>Causes test patches to be displayed using the madVR Test Pattern Generator (madTPG) application which comes with the <a href="http://madvr.com/">madVR video renderer</a> (only available for Windows, but you can connect via local network from Linux and Mac OS X). Note that while you can adjust the test pattern configuration controls in madTPG itself, you should not normally alter the “disable videoLUT” and “disable 3D LUT” controls, as these will be set appropriately automatically when doing measurements.</p>

							<p>Note that if you want to create a 3D LUT for use with madVR, there is a “Video 3D LUT for madVR” preset available under “Settings” that will not only configure DisplayCAL to use madTPG, but also setup the correct 3D LUT format and encoding for madVR.</p>
						</dd>

					<dt>Prisma</dt>
						<dd>
							<p>The Q, Inc./Murideo Prisma is a video processor and combined pattern generator/3D LUT holder accessible over the network.</p>

							<p>Note that if you want to create a 3D LUT for use with a Prisma, there is a “Video 3D LUT for Prisma” preset available under “Settings” that will not only configure DisplayCAL to use a Prisma, but also setup the correct 3D LUT format and encoding.</p>

							<p>Also note that the Prisma has 1 MB of internal memory for custom LUT storage, which is enough for around 15 17x17x17 LUTs. You may occasionally need to enter the Prisma's administrative interface via a web browser to delete old LUTs to make space for new ones.</p>
						</dd>

					<dt>Resolve</dt>
						<dd>
							<p>Allows you to use the built-in pattern generator of DaVinci Resolve video editing and grading software, which is accessible over the network or on the local machine. The way this works is that you start a calibration or profiling run in DisplayCAL, position the measurement window and click “Start measurement”. A message “Waiting for connection on IP:PORT” should appear. Note the IP and port numbers. In Resolve, switch to the “Color” tab and then choose “Monitor calibration”, “CalMAN” in the “Color” menu (Resolve version 11 and earlier) or the “Workspace” menu (Resolve 12).<br />
Enter the IP address in the window that opens (port should already be filled) and click “Connect” (if Resolve is running on the same machine as DisplayCAL, enter <code>localhost</code> or <code>127.0.0.1</code> instead). The position of the measurement window you placed earlier will be mimicked on the display you have connected via Resolve.</p>

							<p>Note that if you want to create a 3D LUT for use with Resolve, there is a “Video 3D LUT for Resolve” preset available under “Settings” that will not only configure DisplayCAL to use Resolve, but also setup the correct 3D LUT format and encoding.</p>

							<p><strong>Note</strong> that if you want to create a 3D LUT for a display that is <strong>directly connected</strong> (e.g. for Resolve's GUI viewer), you should <strong>not</strong> use the Resolve pattern generator, and select the actual display device instead which will allow for quicker measurements (Resolve's pattern generator has additional delay).</p>
						</dd>

					<dt>Untethered</dt>
						<dd>
							<p>See <a href="#untethered">untethered display measurements</a>. <em>Please note that the untethered mode should generally only be used if you've exhausted all other options.</em></p>
						</dd>
				</dl>
				
				<h4 id="settings_measurement_modes">Choosing a measurement mode</h4>
				
				<p>Some instruments may support different measurement modes for different types of display devices. In general, there are three base measurement modes: “LCD”, “Refresh” (e.g. CRT and Plasma are refresh-type displays) and “Projector” (the latter is only available if supported by the instrument). Some instruments like the Spyder 4/5 and ColorHug support additional measurement modes, where a mode is coupled with a predefined colorimeter correction (in that case, the <a href="#settings_colorimeter_correction">colorimeter correction</a> dropdown will automatically be set to “None”).<br />
				Variations of these measurement modes may be available depending on the instrument: “Adaptive” measurement mode for spectrometers uses varying integration times (always used by colorimeters) to increase accuracy of dark readings. “HiRes” turns on high resolution spectral mode for spectrometers like the i1 Pro, which may increase the accuracy of measurements.</p>

				<h4 id="settings_drift_compensation">Drift compensation during measurements (only available if using Argyll CMS &gt;= 1.3.0)</h4>
				
				<p>White level drift compensation tries to counter luminance changes of a warming up display device. For this purpose, a white test patch is measured periodically, which increases the overall time needed for measurements.</p>

				<p>Black level drift compensation tries to counter measurement deviations caused by black calibration drift of a warming up measurement device. For this purpose, a black test patch is measured periodically, which increases the overall time needed for measurements. Many colorimeters are temperature stabilised, in which case black level drift compensation should not be needed, but spectrometers like the i1 Pro or ColorMunki Design/Photo are not temperature compensated.</p>

				<h4 id="display-update-delay">Override display update delay (only available if using Argyll CMS &gt;= 1.5.0, only visible if “Show advanced options” in the “Options” menu is enabled)</h4>
				
				<p>Normally a delay of 200 msec is allowed between changing a patch color in software, and that change appearing in the displayed color itself. For some instuments (i.e. i1d3, i1pro, ColorMunki, Klein K10-A) ArgyllCMS will automatically measure and set an appropriate update delay during instrument calibration. In rare situations this delay may not be sufficient (ie. some TV's with extensive image processing features turned on), and a larger delay can be set here.</p>

				<h4 id="display-settle-time">Override display settle time multiplier (only available if using Argyll CMS &gt;= 1.7.0, only visible if “Show advanced options” in the “Options” menu is enabled)</h4>
				
				<p>Normally the display technology type determines how long is allowed between when a patch color change appears on the display, and when that change has settled down, and as actually complete within measurement tolerance. A CRT or Plasma display for instance, can have quite a long settling delay due to the decay characteristics of the phosphor used, while an LCD can also have a noticeable settling delay due to the liquid crystal response time and any response time enhancement circuit (instruments without a display technology type selection such as spectrometers assume a worst case).<br />
				The display settle time multiplier allows the rise and fall times of the model to be scaled to extend or reduce the settling time. For instance, a multiplier of 2.0 would double the settling time, while a multiplier of 0.5 would halve it.</p>

				<h4 id="settings_colorimeter_correction">Choosing a colorimeter correction for a particular display</h4>

				<p>This can improve a colorimeters accuracy for a particular type of display, please also see <a href="#colorimeter-corrections">“A note about colorimeters, displays and DisplayCAL”</a>. You can import generic matrices from some other display profiling softwares as well as check the online <a href="http://colorimetercorrections.displaycal.net/">Colorimeter Corrections Database</a> for a match of your display/instrument combination (click the small globe next to the correction dropdown)—<strong>please note</strong> though that all colorimeter corrections in the online database have been contributed by various users, and their usefulness to your particular situation is up to you to evaluate: They may or may not improve the absolute accuracy of your colorimeter with your display. A <a href="http://argyllcms.com/doc/ccmxs.html">list of contributed correction matrices</a> can also be found on the Argyll CMS website.</p>

				<p>Please note this option is only available if using Argyll CMS &gt;= 1.3.0 and a colorimeter.</p>
			</div>

			<div id="settings_calibration">
				<h3>Calibration settings</h3>

				<dl>
					<dt id="settings_calibration_interactive_display_adjustment">Interactive display adjustment</dt>
						<dd>Turning this off skips straight to calibration or profiling measurements instead of giving you the opportunity to alter the display's controls first. You will normally want to keep this checked, to be able to use the controls to get closer to the chosen target characteristics.</dd>

					<dt id="settings_calibration_observer">Observer</dt>
						<dd>
							<p>To see this setting, you need to have an instrument that supports spectral readings (i.e. a spectrometer) or spectral sample calibration (e.g. i1 DisplayPro, ColorMunki Display and Spyder4/5), and go into the “Options” menu, and enable “Show advanced options”.</p>

							<p>This can be used to select a different colorimetric observer, also known as color matching function (CMF), for instruments that support it. The default is the CIE 1931 standard 2° observer.</p>

							<p><strong>Note</strong> that if you select anything other than the default 1931 2 degree observer, then the Y values will not be cd/m², due to the Y curve not being the CIE 1924 photopic V(λ) luminosity function.</p>
						</dd>

					<dt id="settings_calibration_white_point">White point</dt>
						<dd>
							<p>Allows setting the target white point locus to the equivalent of a daylight or black body spectrum of the given temperature in degrees Kelvin, or as chromaticity co-ordinates. By default the white point target will be the native white of the display, and it's color temperature and delta E to the daylight spectrum locus will be shown during monitor adjustment, and adjustments will be recommended to put the display white point directly on the Daylight locus. If a daylight color temperature is given, then this will become the target of the adjustment, and the recommended adjustments will be those needed to make the monitor white point meet the target. Typical  values might be 5000 for matching printed output, or 6500, which gives a brighter, bluer look. A white point temperature different to that native to the display may limit the maximum brightness possible.</p>

							<p>If you want to find out the current uncalibrated whitepoint of your display, you can run “Report on uncalibrated display device” from the “Tools” menu to measure it.</p>

							<p>If you want to adjust the whitepoint to the chromaticities of your ambient lighting, or those of a viewing booth as used in prepress and photography, and your measurement device has ambient measuring capability (e.g. like the i1 Pro or i1 Display with their respective ambient measurement heads), you can use the “Measure” button next to the whitepoint settings. If you want to measure ambient lighting, place the instrument upwards, beside the display. Or if you want to measure a viewing booth, put a metamerism-free gray card inside the booth and point the instrument towards it. Further instructions how to measure ambient may be available in your instrument's documentation.</p>
						</dd>

					<dt id="settings_calibration_white_level">White level</dt>
						<dd>
							<p>Set the target brightness of white in cd/m<sup>2</sup>. If this number cannot be reached, the brightest output possible is chosen, consistent with matching the white point target. Note that many of the instruments are not particularly accurate when assessing the absolute display brightness in cd/m<sup>2</sup>. Note that some LCD screens behave a little strangely near their absolute white point, and may therefore exhibit odd behavior at values just below white. It may be advisable in such cases to set a brightness slightly less than the maximum such a display is capable of.</p>

							<p>If you want to find out the current uncalibrated white level of your display, you can run “Report on uncalibrated display device” from the “Tools” menu to measure it.</p>
						</dd>

					<dt id="settings_calibration_black_level">Black level</dt>
						<dd>
							<p>(To see this setting, go into the “Options” menu, and enable “Show advanced options”)</p>

							<p>Can be used to set the target brightness of black in cd/m<sup>2</sup> and is useful for e.g. matching two different screens with different native blacks to one another, by measuring the black levels on both (i.e. in the “Tools” menu, choose “Report on uncalibrated display”) and then entering the highest measured value. Normally you may want to use native black level though, to maximize contrast ratio. Setting too high a value may also give strange results as it interacts with trying to achieve the target “advertised” tone curve shape. Using a black output offset of 100% tries to minimize such problems.</p>
						</dd>

					<dt id="trc">Tone curve / gamma</dt>
						<dd>							
							<p>The target response curve is normally an exponential curve (output = input<sup>gamma</sup>), and defaults to 2.2 (which is close to a typical CRT displays real response). Four pre-defined curves can be used as well: the sRGB colorspace response curve, which is an exponent curve with a straight segment at the dark end and an overall response of approximately gamma 2.2, the L* curve, which is the response of the CIE L*a*b* perceptual colorspace, the Rec. 709 video standard response curve and the SMPTE 240M video standard response curve.<br />
							Another possible choice is “As measured”, which will skip video card gamma table (1D LUT) calibration.</p>

							<p>Note that a real display usually can't reproduce any of the ideal pre-defined curves, since it will have a non-zero black point, whereas all the ideal curves assume zero light at zero input.</p>

							<p>For gamma values, you can also specify wheter it should be interpreted relative, meaning the gamma value provided is used to set an actual response curve in light of the non-zero black of the actual display that has the same relative output at 50% input as the ideal gamma power curve, or absolute, which allows the actual power to be specified instead, meaning that after the actual displays non-zero black is accounted for, the response at 50% input will probably not match that of the ideal power curve with that gamma value (to see this setting, you have to go into the “Options” menu, and enable “Show advanced options”).</p>

							<p>To allow for the non-zero black level of a real display, by default the target curve values will be offset so that zero input gives the actual black level of the display (output offset). This ensures that the target curve better corresponds to the typical natural behavior of displays, but it may not be the most visually even progression from display minimum. This behavior can be changed using the black output offset option (see further below).</p>

							<p>Also note that many color spaces are encoded with, and labelled as having a gamma of approximately 2.2 (ie. sRGB, REC 709, SMPTE 240M, Macintosh OS X 10.6), but are actually intended to be displayed on a display with a typical CRT gamma of 2.4 viewed in a darkened environment.<br />
							This is because this 2.2 gamma is a source gamma encoding in bright viewing conditions such as a television studio, while typical display viewing conditions are quite dark by comparison, and a contrast expansion of (approx.) gamma 1.1 is desirable to make the images look as intended.<br />
							So if you are displaying images encoded to the sRGB standard, or displaying video through the calibration, just setting the gamma curve to sRGB or REC 709 (respectively) is probably not what you want! What you probably want to do, is to set the gamma curve to about gamma 2.4, so that the contrast range is expanded appropriately, or alternatively use sRGB or REC 709 or a gamma of 2.2 but also specify the actual ambient viewing conditions via a light level in Lux, so that an appropriate contrast enhancement can be made during calibration. If your instrument is capable of measuring ambient light levels, then you can do so.<br />
							<span class="footnote">(For in-depth technical information about sRGB, see “<a href="http://www.color.org/sRGB.xalter">A Standard Default Color Space for the Internet: sRGB</a>” at the <abbr title="International Color Consortium">ICC<sup><a href="#definition_ICC">[5]</a></sup></abbr> website for details of how it is intended to be used)</span></p>

							<p>If you're wondering what gamma value you should use, you can run “Report on uncalibrated display device” from the “Tools” menu to measure the approximated overall gamma among other info. Setting the gamma to the reported value can then help to reduce calibration artifacts like banding, because the adjustments needed for the video card's gamma table should not be as strong as if a gamma further away from the display's native response was chosen.</p>
						</dd>

					<dt id="ambient">Ambient light level</dt>
						<dd>
							<p>(To see this setting, go into the “Options” menu, and enable “Show advanced options”)</p>

							<p>As explained for the tone curve settings, often colors are encoded in a situation with viewing conditions that are quite different to the viewing conditions of a typical display, with the expectation that this difference in viewing conditions will be allowed for in the way the display is calibrated. The ambient light level option is a way of doing this. By default calibration will not make any allowances for viewing conditions, but will calibrate to the specified response curve, but if the ambient light level is entered or measured, an appropriate viewing conditions adjustment will be performed. For a gamma value or sRGB, the original viewing conditions will be assumed to be that of the sRGB standard viewing conditions, while for REC 709 and SMPTE 240M they will be assumed to be television studio viewing conditions.<br />
							By specifying or measuring the ambient lighting for your display, a viewing conditions adjustment based on the CIECAM02 color appearance model will be made for the brightness of your display and the contrast it makes with your ambient light levels.</p>

							<p>Please note your measurement device needs ambient measuring capability (e.g. like the i1 Pro or i1 Display with their respective ambient measurement heads) to measure the ambient light level.</p>
						</dd>

					<dt id="settings_calibration_black_output_offset">Black output offset</dt>
						<dd>
							<p>(To see this setting, go into the “Options” menu, and enable “Show advanced options”)</p>

							<p>Real displays do not have a zero black response, while all the target response curves do, so this has to be allowed for in some way.</p>

							<p>The default way of handling this (equivalent to 100% black output offset) is to allow for this at the output of the ideal response curve, by offsetting and scaling the output values. This defined a curve that will match the responses that many other systems provide and may be a better match to the natural response of the display, but will give a less visually even response from black.</p>

							<p>The other alternative is to offset and scale the input values into the ideal response curve so that zero input gives the actual non-zero display response. This ensures the most visually even progression from display minimum, but might be hard to achieve since it is different to the natural response of a display.</p>

							<p>A subtlety is to provide a split between how much of the offset is accounted for as input to the ideal response curve, and how much is accounted for at the output, where the degree is 0.0 accounts for it all as input offset, and 100% accounts for all of it as output offset.</p>
						</dd>

					<dt id="settings_calibration_black_point_correction">Black point correction</dt>
						<dd>
							<p>(To see this setting, go into the “Options” menu, and enable “Show advanced options”)</p>

							<p>Normally dispcal will attempt to make all colors down the neutral axis (R=G=B) have the same hue as the chosen white point. Near the black point, red, green or blue can only be added, not subtracted from zero, so the process of making the near black colors have the desired hue, will lighten them to some extent. For a device with a good contrast ratio or a black point that has nearly the same hue as the white, this is not a problem. If the device contrast ratio is not so good, and the black hue is noticeably different to that of the chosen white point (which is often the case for LCD type displays), this could have a noticeably detrimental effect on an already limited contrast ratio. Here the amount of black point hue correction can be controlled.<br />
							By default a factor of 100% will be used, which is usually good for “Refresh”-type displays like CRT or Plasma and also by default a factor of 0% is used for LCD type displays, but you can override these with a custom value between 0% (no correction) to 100% (full correction), or enable automatically setting it based on the measured black level of the display.</p>

							<p>If less than full correction is chosen, then the resulting calibration curves will have the target white point down most of the curve, but will then cross over to the native or compromise black point.</p>
						</dd>

					<dt id="settings_calibration_black_point_correction_rate">Black point correction rate (only available if using Argyll CMS &gt;= 1.0.4)</dt>
						<dd>
							<p>(To see this setting, go into the “Options” menu, and enable “Show advanced options”)</p>

							<p>If the black point is not being set completely to the same hue as the white point (ie. because the factor is less than 100%), then the resulting calibration curves will have the target white point down most of the curve, but will then blend over to the native or compromise black point that is blacker, but not of the right hue. The rate of this blend can be controlled. The default value is 4.0, which results in a target that switches from the white point target to the black, moderately close to the black point. While this typically gives a good visual result with the target neutral hue being maintained to the point where the crossover to the black hue is not visible, it may be asking too much of some displays (typically LCD type displays), and there may be some visual effects due to inconsistent color with viewing angle. For this situation a smaller value may give a better visual result (e.g. try values of 3.0 or 2.0. A value of 1.0 will set a pure linear blend from white point to black point). If there is too much coloration near black, try a larger value, e.g. 6.0 or 8.0.</p>
						</dd>

					<dt id="settings_calibration_quality">Calibration speed</dt>
						<dd>
							<p>(This setting will not apply and be hidden when the tone curve is set to “As measured”)</p>
						
							<p>Determines how much time and effort to go to in calibrating the display. The lower the speed, the more test readings will be done, the more refinement passes will be done, the tighter will be the accuracy tolerance, and the more detailed will be the calibration of the display. The result will ultimately be limited by the accuracy of the instrument, the repeatability of the display and instrument, and the resolution of the video card gamma table entries and digital or analogue output (RAMDAC).</p>
						</dd>
				</dl>
			</div>		

			<div id="settings_profiling">
				<h3>Profiling settings</h3>

				<dl>
					<dt>Profile quality</dt>
						<dd>Sets the level of effort and/or detail in the resulting profile. For table based profiles (<abbr title="Look Up Table">LUT<sup><a href="#definition_LUT">[7]</a></sup></abbr>), it sets the main lookup table size, and hence quality in the resulting profile. For matrix profiles it sets the per channel curve detail level and fitting “effort”.</dd>

					<dt id="settings_profiling_bpc">Black point compensation (enable “Show advanced options” in the “Options” menu)</dt>
						<dd>
							<p>(Note: This option has no effect if just calibrating and creating a simple curves + matrix profile directly from the calibration data without additional profiling measurements)</p>
							<p>This effectively prevents black crush when using the profile, but at the expense of accuracy. It is generally best to only use this option when it is not certain that the applications you are going to use have a high quality color management implementation. For LUT profiles, more sophisticated options exist (i.e. <a href="#settings_profiling_gamutmapping">advanced gamut mapping options</a> and use either “Enhance effective resolution of colorimetric <abbr title="Profile Connection Space">PCS<sup><a href="#definition_PCS">[11]</a></sup></abbr>-to-device tables”, which is enabled by default, or “Gamut mapping for perceptual intent”, which can be used to create a perceptual table that maps the black point).</p>
						</dd>

					<dt id="settings_profiling_profile_type">Profile type (enable “Show advanced options” in the “Options” menu)</dt>
						<dd>
							<p>Generally you can differentiate between two types of profiles: <abbr title="Look Up Table">LUT<sup><a href="#definition_LUT">[7]</a></sup></abbr> based and matrix based.</p>

							<p>Matrix based profiles are smaller in filesize, somewhat less accurate (though in most cases smoother) compared to <abbr title="Look Up Table">LUT<sup><a href="#definition_LUT">[7]</a></sup></abbr> based types, and usually have the best compatibility across <abbr title="Color Mangement Module">CMM<sup><a href="#definition_CMM">[2]</a></sup></abbr>s, applications and systems — but only support the colorimetric intent for color transforms. For matrix based profiles, the <abbr title="Profile Connection Space">PCS<sup><a href="#definition_PCS">[11]</a></sup></abbr> is always XYZ. You can choose between using individual curves for each channel (red, green and blue), a single curve for all channels, individual gamma values for each channel or a single gamma for all channels. Curves are more accurate than gamma values. A single curve or gamma can be used if individual curves or gamma values degrade the gray balance of an otherwise good calibration.</p>

							<p><abbr title="Look Up Table">LUT<sup><a href="#definition_LUT">[7]</a></sup></abbr> based profiles are larger in filesize, more accurate (but may sacrifice smoothness), in some cases less compatible (applications might not be able to use or show bugs/quirks with <abbr title="Look Up Table">LUT<sup><a href="#definition_LUT">[7]</a></sup></abbr> type profiles, or certain variations of them).
							When choosing a <abbr title="Look Up Table">LUT<sup><a href="#definition_LUT">[7]</a></sup></abbr> based profile type, advanced gamut mapping options become available which you can use to create perceptual and/or saturation tables inside the profile in addition to the default colorimetric tables which are always created.<br />
							L*a*b* or XYZ can be used as <abbr title="Profile Connection Space">PCS<sup><a href="#definition_PCS">[11]</a></sup></abbr>, with XYZ being recommended especially for wide-gamut displays bacause their primaries might exceed the <abbr title="International Color Consortium">ICC<sup><a href="#definition_ICC">[5]</a></sup></abbr> L*a*b* encoding range (Note: Under Windows, XYZ <abbr title="Look Up Table">LUT<sup><a href="#definition_LUT">[7]</a></sup></abbr> types are only available in DisplayCAL if using Argyll CMS &gt;= 1.1.0 because of a requirement for matrix tags in the profile, which are not created by prior Argyll CMS versions).<br />
							As it is hard to verify if the <abbr title="Look Up Table">LUT<sup><a href="#definition_LUT">[7]</a></sup></abbr> of an combined XYZ <abbr title="Look Up Table">LUT<sup><a href="#definition_LUT">[7]</a></sup></abbr> + matrix profile is actually used, you may choose to create a profile with a swapped matrix, ie. blue-red-green instead of red-green-blue, so it will be obvious if an application uses the (deliberately wrong) matrix instead of the (correct) LUT because the colors will look very wrong (e.g. everything that should be red will be blue, green will be red, blue will be green, yellow will be purple etc).</p>

							<p id="difference_lutcurves_lutprofile">Note: <abbr title="Look Up Table">LUT<sup><a href="#definition_LUT">[7]</a></sup></abbr>-based profiles (which contain three-dimensional LUTs) might be confused with video card <abbr title="Look Up Table">LUT<sup><a href="#definition_LUT">[7]</a></sup></abbr> (calibration) curves (one-dimensional LUTs), but they're two different things. Both <abbr title="Look Up Table">LUT<sup><a href="#definition_LUT">[7]</a></sup></abbr>-based and matrix-based profiles may include calibration curves which can be loaded into a video card's gamma table hardware.</p>
						</dd>

					<dt id="settings_profiling_gamutmapping">Advanced gamut mapping options (enable “Show advanced options” in the “Options” menu)</dt>
						<dd>
							<p>You can choose any of the following options after selecting a LUT profile type and clicking “Advanced...”. <em>Note:</em> The options “Low quality <abbr title="Profile Connection Space">PCS<sup><a href="#definition_PCS">[11]</a></sup></abbr>-to-device tables” and “Enhance effective resolution of colorimetric <abbr title="Profile Connection Space">PCS<sup><a href="#definition_PCS">[11]</a></sup></abbr>-to-device table” are mutually exclusive.</p>
							
							<h4>Low quality <abbr title="Profile Connection Space">PCS<sup><a href="#definition_PCS">[11]</a></sup></abbr>-to-device tables</h4>
							<p>Choose this option if the profile is only going to be used with inverse device-to-<abbr title="Profile Connection Space">PCS<sup><a href="#definition_PCS">[11]</a></sup></abbr> gamut mapping to create a DeviceLink or 3D LUT (DisplayCAL always uses inverse device-to-<abbr title="Profile Connection Space">PCS<sup><a href="#definition_PCS">[11]</a></sup></abbr> gamut mapping when creating a DeviceLink/3D LUT). This will reduce the processing time needed to create the <abbr title="Profile Connection Space">PCS<sup><a href="#definition_PCS">[11]</a></sup></abbr>-to-device tables. <strong>Don't</strong> choose this option if you want to install or otherwise use the profile.</p>

							<h4>Enhance effective resolution of colorimetric <abbr title="Profile Connection Space">PCS<sup><a href="#definition_PCS">[11]</a></sup></abbr>-to-device table</h4>

							<p>To use this option, you have to select a XYZ or L*a*b* LUT profile type (XYZ will be more effective). This option increases the effective resolution of the <abbr title="Profile Connection Space">PCS<sup><a href="#definition_PCS">[11]</a></sup></abbr> to device colorimetric color lookup table by using a matrix to limit the XYZ space and fill the whole grid with the values obtained by inverting the device-to-<abbr title="Profile Connection Space">PCS<sup><a href="#definition_PCS">[11]</a></sup></abbr> table, as well as optionally applies smoothing. If no <a href="#settings_profiling_gamutmapping_ciecam02">CIECAM02 gamut mapping</a> has been enabled for the perceptual intent, a simple but effective perceptual table (which is almost identical to the colorimetric table, but maps the black point to zero) will also be generated.</p>
							<p>You can also set the interpolated lookup table size. The default “Auto” will use a base 33x33x33 resulution that is increased if needed and provide a good balance between smoothness and accuracy. Lowering the resolution can increase smoothness (at the potential expense of some accuracy), while increasing resolution may make the resulting profile potentially more accurate (at the expense of some smoothness). Note that computation will need a lot of memory (&gt;= 4 GB of RAM recommended to prevent swapping to harddisk) especially at higher resolutions.</p>
							<p>See below example images for the result you can expect, where the original image has been converted from sRGB to the display profile. Note though that the particular synthetic image chosen, a “granger rainbow”, exaggerates banding, real-world material is much less likely to show this. Also note that the sRGB blue in the image is actually out of gamut for the specific display used, and the edges visible in the blue gradient for the rendering are a result of the color being out of gamut, and the gamut mapping thus hitting the less smooth gamut boundaries.</p>
							<div style="overflow: hidden; padding: 1.4em 16px 1.4em 0; text-align: center">
								<div>
									<p><a data-lightbox="lightbox-set-smooth_b2a" href="http://displaycal.net/img/GrangerRainbow.png"><img src="http://displaycal.net/img/GrangerRainbow.thumb.png" alt="Original Granger Rainbow image" style="box-shadow: 0px 1px 3px rgba(0, 0, 0, .75);" /></a></p>
									<p>Original “granger rainbow” image</p>
								</div>
								<div style="display: inline-block; margin: 0 12px; vertical-align: top; width: 200px">
									<p><a data-lightbox="lightbox-set-smooth_b2a" href="http://displaycal.net/img/GrangerRainbow_sRGB_to_widegamut_colorimetric_default.png"><img src="http://displaycal.net/img/GrangerRainbow_sRGB_to_widegamut_colorimetric_default.thumb.png" alt="Granger Rainbow - default colorimetric rendering" style="box-shadow: 0 1px 3px rgba(0, 0, 0, .75);" /></a></p>
									<p>Default colorimetric rendering <span style="white-space: nowrap">(2500 OFPS XYZ LUT profile)</span></p>
								</div>
								<div style="display: inline-block; margin: 0 12px; vertical-align: top; width: 200px">
									<p><a data-lightbox="lightbox-set-smooth_b2a" href="http://displaycal.net/img/GrangerRainbow_sRGB_to_widegamut_smooth_colorimetric.png"><img src="http://displaycal.net/img/GrangerRainbow_sRGB_to_widegamut_smooth_colorimetric.thumb.png" alt="Granger Rainbow - “smooth” colorimetric rendering" style="box-shadow: 0 1px 3px rgba(0, 0, 0, .75);" /></a></p>
									<p>“Smooth” colorimetric rendering <span style="white-space: nowrap">(2500 OFPS XYZ LUT profile</span>, inverted A2B)</p>
								</div>
								<div style="display: inline-block; margin: 0 12px; vertical-align: top; width: 200px">
									<p><a data-lightbox="lightbox-set-smooth_b2a" href="http://displaycal.net/img/GrangerRainbow_sRGB_to_widegamut_smooth_perceptual.png"><img src="http://displaycal.net/img/GrangerRainbow_sRGB_to_widegamut_smooth_perceptual.thumb.png" alt="Granger Rainbow - “smooth” perceptual rendering" style="box-shadow: 0 1px 3px rgba(0, 0, 0, .75);" /></a></p>
									<p>“Smooth” perceptual rendering <span style="white-space: nowrap">(2500 OFPS XYZ LUT profile</span>, inverted A2B)</p>
								</div>
							</div>
							
							<h4>Default rendering intent for profile</h4>
							<p>Sets the default rendering intent. In theory applications could use this, in practice they don't, so changing this setting probably won't have any effect whatsoever.</p>
							
							<h4 id="settings_profiling_gamutmapping_ciecam02">CIECAM02 gamut mapping</h4>

							<p>Note: When enabling one of the CIECAM02 gamut mapping options, and the source profile is a matrix profile, then enabling effective resolution enhancement will also influence the CIECAM02 gamut mapping, making it smoother, more accurate and also generated faster as a side-effect.</p>

							<p>Normally, profiles created by DisplayCAL only incorporate the colorimetric rendering intent, which means colors outside the display's gamut will be clipped to the next in-gamut color. LUT-type profiles can also have gamut mapping by implementing perceptual and/or saturation rendering intents (gamut compression/expansion). You can choose if and which of those you want by specifying a source profile and marking the appropriate checkboxes. Note that a input, output, display or device colororspace profile should be specified as source, not a non-device colorspace, device link, abstract or named color profile. You can also choose viewing conditions which describe the intended use of both the source and the display profile that is to be generated. An appropriate source viewing condition is chosen automatically based on the source profile type.</p>

							<p>An explanation of the available rendering intents can be found in the 3D LUT section “<a href="#rendering-intents">Rendering intent</a>”.</p>

							<p>For more information on why a source gamut is needed, see “<a href="http://argyllcms.com/doc/iccgamutmapping.html">About ICC profiles and Gamut Mapping</a>” in the Argyll CMS documentation.</p>

							<p>One strategy for getting the best perceptual results with display profiles is as follows: Select a CMYK profile as source for gamut mapping. Then, when converting from another RGB profile to the display profile, use relative colorimetric intent, and if converting from a CMYK profile, use the perceptual intent.<br />
							Another approach which especially helps limited-gamut displays is to choose one of the larger (gamut-wise) source profiles you usually work with for gamut mapping, and then always use perceptual intent when converting to the display profile.</p>

							<p>Please note that not all applications support setting a rendering intent for display profiles and might default to colorimetric (e.g. Photoshop normally uses relative colorimetric with black point compensation, but can use different intents via custom soft proofing settings).</p>
						</dd>

					<dt id="testchart_file">Testchart file</dt>
						<dd>You can choose the test patches used when profiling the display here. The default “Auto” optimized setting takes the actual display characteristics into account. You can further increase potential profile accuracy by increasing the number of patches using the slider.</dd>

					<dt id="testchart_editor">Testchart editor</dt>
						<dd>
							<p>The provided default testcharts should work well in most situations, but allowing you to create custom charts ensures maximum flexibility when characterizing a display and can improve profiling accuracy and efficiency. See also <a href="#optimizecharts">optimizing testcharts</a>.</p>

							<h4>Testchart generation options</h4>

							<p>You can enter the amount of patches to be generated for each patch type (white, black, gray, single channel, iterative and multidimensional cube steps). The iterative algorythm can be tuned if more than zero patches are to be generated. What follows is a quick description of the several available iterative algorythms, with “device space” meaning in this case RGB coordinates, and “perceptual space” meaning the (assumed) XYZ numbers of those RGB coordinates. The assumed XYZ numbers can be influenced by providing a previous profile, thus allowing optimized test point placement.</p>

							<ul>
								<li>Optimized Farthest Point Sampling (OFPS) will optimize the point locations to minimize the distance from any point in device space to the nearest sample point</li>
								<li>Incremental Far Point Distribution incrementally searches for test points that are as far away as possible from any existing points</li>
								<li>Device space random chooses test points with an even random distribution in device space</li>
								<li>Perceptual space random chooses test points with an even random distribution in perceptual space</li>
								<li>Device space filling quasi-random chooses test points with a quasi-random, space filling distribution in device space</li>
								<li>Perceptual space filling quasi-random chooses test points with a quasi-random, space filling distribution in perceptual space</li>
								<li>Device space body centered cubic grid chooses test points with body centered cubic distribution in device space</li>
								<li>Perceptual space body centered cubic grid chooses test points with body centered cubic distribution in perceptual space</li>
							</ul>

							<p>You can set the degree of adaptation to the known device characteristics used by the default full spread OFPS algorithm. A preconditioning profile should be provided if adaptation is set above a low level. By default the adaptation is 10% (low), and should be set to 100% (maximum) if a profile is provided. But, if for instance, the preconditioning profile doesn't represent the device behavior very well, a lower adaption than 100% might be appropriate.</p>

							<p>For the body centered grid distributions, the angle parameter sets the overall angle that the grid distribution has.</p>

							<p>The “Gamma” parameter sets a power-like (to avoid the excessive compression that a real power function would apply) value applied to all of the device values after they are generated. A value greater than 1.0 will cause a tighter spacing of test values near device value 0.0, while a value less than 1.0 will cause a tighter spacing near device value 1.0. Note that the device model used to create the expected patch values will not take into account the applied power, nor will the more complex full spread algorithms correctly take into account the power.</p>

							<p>The neutral axis emphasis parameter allows changing the degree to which the patch distribution should emphasise the neutral axis. Since the neutral axis is regarded as the most visually critical area of the color space, it can help maximize the quality of the resulting profile to place more measurement patches in this region. This emphasis is only effective for perceptual patch distributions, and for the default OFPS distribution if the adaptation parameter is set to a high value. It is also most effective when a preconditioning profile is provided, since this is the only way that neutral can be determined. The default value of 50% provides an effect about twice the emphasis of the CIE94 Delta E formula.</p>

							<p>The dark region emphasis parameter allows changing the degree to which the patch distribution should emphasis dark region of the device response. Display devices used for video or film reproduction are typically viewed in dark viewing environments with no strong white reference, and typically employ a range of brightness levels in different scenes. This often means that the devices dark region response is of particular importance, so increasing the relative number of sample points in the dark region may improve the balance of accuracy of the resulting profile for video or film reproduction. This emphasis is only effective for perceptual patch distributions where a preconditioning profile is provided. The default value of 0% provides no emphasis of the dark regions. A value somewhere around 15% - 30% is a good place to start for video profile use. A scaled down version of this parameter will be passed on to the profiler. Note that increasing the proportion of dark patches will typically lengthen the time that an instrument takes to read the whole chart. Emphasizing the dark region characterization will reduce the accuracy of measuring and modelling the lighter regions, given a fixed number of test points and profile quality/grid resolution. The parameter will also be used in an analogous way to the “Gamma” value in changing the distribution of single channel, grayscale and multidimensional steps.</p>

							<p>The “Limit samples to sphere” option is used to define an L*a*b* sphere to filter the test points through. Only test points within the sphere (defined by it's center and radius) will be in the generated testchart. This can be good for targeting supplemental test points at a troublesome area of a device. The accuracy of the L*a*b* target will be best when a reasonably accurate preconditioning profile for the device is chosen. Note that the actual number of points generated can be hard to predict, and will depend on the type of generation used. If the OFPS, device and perceptual space random and device space filling quasi-random methods are used, then the target number of points will be achieved. All other means of generating points will generate a smaller number of test points than expected. For this reason, the device space filling quasi-random method is probably the easiest to use.</p>

							<h4>Generating diagnostic 3D views of testcharts</h4>
							
							<p>You can generate 3D views in several formats. The default HTML format should be viewable in a modern WebGL-enabled browser. You can choose the colorspace(s) you want to view the results in and also control whether to use RGB black offset (which will lighten up dark colors so they are better visible) and whether you want white to be neutral. All of these options are purely visual and will not influence the actual test patches.</p>

							<h4>Other functions</h4>
							
							<p>If generating any number of iterative patches as well as single channel, gray or multidimensional patches, you can add the single channel, gray and multidimensional patches in a separate step by holding the shift key while clicking on “Create testchart”. This prevents those patches affecting the iterative patch distribution, with the drawback of making the patch distribution less even. This is an experimental feature.</p>
							
							<p>You are also able to:</p>

							<ul>
								<li>Export patches as CSV, TIFF, PNG or DPX files, and set how often each patch should be repeated when exporting as images after you click the “Export” button (black patches will be repeated according to the “Max” value, and white patches according to the “Min” value, and patches in between according to their lightness in L* scaled to a value between “Min” and “Max”).</li>
								<li>Add saturation sweeps which are often used in a video or film context to check color saturation. A preconditioning profile needs to be used to enable this.</li>
								<li>Add reference patches from measurement files in CGATS format, from named color ICC profiles, or by analyzing TIFF, JPEG or PNG images. A preconditioning profile needs to be used to enable this.</li>
								<li>Sort patches by various color criteria (warning: this will interfere with the Argyll CMS 1.6.0 or newer patch order
	optimisation which minimizes measurement times, so manual sorting should only be used for visual inspection of testcharts, or if required to optimize the patch order for untethered measurements in automatic mode where it is useful to maximize the lightness difference from patch to patch so the automatism has an easier time detecting changes).</li>
							</ul>

							<h4>Patch editor</h4>

							<p>Controls for the spreadsheet-like patch editor are as follows:</p>
							<ul>
								<li>To select patches, click and drag the mouse over table cells, or hold SHIFT (select range) or CTRL/CMD (add/remove single cells/rows to/from selection)</li>
								<li>To add a patch below an existing one, double-click a row label</li>
								<li>To delete patches, select them, then hold CTRL (Linux, Windows) or CMD (Mac OS X) and hit DEL or BACKSPACE (will always delete whole rows even if only single cells are selected)</li>
								<li>CTRL-C/CTRL-V/CTRL-A = copy/paste/select all</li>
							</ul>
							<p>If you want to insert a certain amount of patches generated in a spreadsheet application (as RGB coordinates in the range 0.0-100.0 per channel), the easiest way to do this is to save them as CSV file and drag &amp; drop it on the testchart editor window to import it.</p>
						</dd>

					<dt>Profile name</dt>
						<dd>
							<p>As long as you do not enter your own text here, the profile name is auto generated from the chosen calibration and profiling options. The current auto naming mechanism creates quite verbose names which are not necessarily nice to read, but they can help in identifying the profile.<br />
							Also note that the profile name is not only used for the resulting profile, but for all intermediate files as well (filename extensions are added automatically) <em>and</em> all files are stored in a folder of that name. You can choose where this folder is created by clicking the disk icon next to the field (it defaults to your system's default location for user data).</p>

							<p>Here's an example under Linux, on other platforms some file extensions and the location of the home directory will differ. See <a href="#userdata">User data and configuration file locations</a>. You can mouse over the filenames to get a tooltip with a short description what the file is for:</p>

							<p>Chosen profile save path: <samp title="User home directory">~/.local/share/DisplayCAL/storage</samp></p>

							<p>Profile name: <samp>mydisplay</samp></p>

							<p>The following folder will be created: <samp>~/.local/share/DisplayCAL/storage/mydisplay</samp></p>

							<p>During calibration &amp; profiling the following files will be created:</p>

							<p><samp><span title="Log of the generation of the 3D representation of the profile colorspace vs. Adobe RGB (useful for troubleshooting)">~/.local/share/DisplayCAL/storage/mydisplay/mydisplay vs ClayRGB1998.log</span><br />
							<span title="3D representation of the profile colorspace vs. Adobe RGB as compressed VRML file">~/.local/share/DisplayCAL/storage/mydisplay/mydisplay vs ClayRGB1998.wrz</span><br />
							<span title="Log of the generation of the 3D representation of the profile colorspace vs. sRGB (useful for troubleshooting)">~/.local/share/DisplayCAL/storage/mydisplay/mydisplay vs sRGB.log</span><br />
							<span title="3D representation of the profile colorspace vs. sRGB as compressed VRML file">~/.local/share/DisplayCAL/storage/mydisplay/mydisplay vs sRGB.wrz</span><br />
							<span title="Contains calibration curves and most settings used for calibration">~/.local/share/DisplayCAL/storage/mydisplay/mydisplay.cal</span><br />
							<span title="Gamut of the profile colorspace as compressed CGATS file">~/.local/share/DisplayCAL/storage/mydisplay/mydisplay.gam.gz</span><br />
							<span title="The end result, a display profile">~/.local/share/DisplayCAL/storage/mydisplay/mydisplay.icc</span><br />
							<span title="Log of the generation of the display profile (useful for troubleshooting)">~/.local/share/DisplayCAL/storage/mydisplay/mydisplay.log</span><br />
							<span title="Contains the measurement patches used to create the .ti3 measurement file">~/.local/share/DisplayCAL/storage/mydisplay/mydisplay.ti1</span><br />
							<span title="Contains the measured display response">~/.local/share/DisplayCAL/storage/mydisplay/mydisplay.ti3</span><br />
							<span title="3D representation of the profile colorspace">~/.local/share/DisplayCAL/storage/mydisplay/mydisplay.wrz</span></samp></p>

							<p>Any used colorimeter correction file will also be copied to the profile folder.</p>
						</dd>
				</dl>
			</div>

			<div id="calibrating">
				<h3>Calibrating / profiling</h3>

				<p>If you are unclear about the difference between calibration and profiling (also called characterization), see “<a href="http://www.argyllcms.com/doc/calvschar.html">Calibration vs. Characterization</a>” in the Argyll CMS documentation.</p>

				<p>Please let the screen stabilize for at least half an hour after powering it up before doing any measurements or assessing its color properties. The screen can be used normally with other applications during that time.</p>

				<p>After you have set your options, click on the button at the bottom
				to start the actual calibration/profiling process. The main window will hide during measurements, and should pop up again after they are completed (or after an 
				error). You can always cancel out of running measurements using the “Cancel” button in the progress dialog, or by pressing ESC or Q. Viewing the informational log window (from the “Tools” menu) after measurements will give you access to the raw output of the Argyll CMS commandline tools and other verbose information.</p>

				<h4 id="adjusting">Adjusting a display before calibration</h4>

				<p>If you clicked “Calibrate” or “Calibrate &amp; profile” and have not turned off “Interactive display adjustment”, you will be presented with the interactive display adjustment window which contains several options to help you bring a display's characteristics closer to the chosen target values. Depending on wheter you have a “Refresh”- or LCD-type display, I will try to give some recommendations here which options to adjust, and which to skip.</p>

				<h5>Adjusting a LCD display</h5>

				<p>For LCD displays, you will in most cases only want to adjust white point (if the screen has RGB gain or other whitepoint controls) and white level (with the white level also affecting the black level unless you have a local dimming LED model), as many LCDs lack the necessary “offset” controls to adjust the black point (and even if they happen to have them, they often change the overall color temperature, not only the black point). Also note that for most LCD screens, you should leave the “contrast” control at (factory) default.</p>

				<dl>
					<dt>White point</dt>
						<dd>
							If your screen has RGB gain, colortemperature or other whitepoint controls, the first step should be adjusting the whitepoint. Note that you may also benefit from this adjustment if you have set the target whitepoint to “native”, as it will allow you to bring it closer to the daylight or blackbody locus, which can help the human visual system to better adapt to the whitepoint. Look at the bars shown during the measurements to adjust RGB gains and minimize the delta E to the target whitepoint.
						</dd>
					<dt>White level</dt>
						<dd>
							Continue with the white level adjustment. If you have set a target white level, you may reduce or increase the brightness of your screen (ideally using only the backlight) until the desired value is reached (i.e. the bar ends at the marked center position). If you haven't set a target, simply adjust the screen to a visually pleasing brightness that doesn't cause eye strain.
						</dd>
				</dl>

				<h5>Adjusting a “Refresh”-type display like CRT or Plasma</h5>

				<dl>
					<dt>Black level</dt>
						<dd>
							On “Refresh”-type displays, this adjustment is usually done using the “brightness” control. You may reduce or increase the brightness of your screen until the desired black level is reached (i.e. the bar ends at the marked center position).
						</dd>
					<dt>White point</dt>
						<dd>
							The next step should be adjusting the whitepoint, using the display's RGB gain controls or other means of adjusting the whitepoint. Note that you may also benefit from this adjustment if you have set the target whitepoint to “native”, as it will allow you to bring it closer to the daylight or blackbody locus, which can help the human visual system to better adapt to the whitepoint. Look at the bars shown during the measurements to adjust RGB gains and minimize the delta E to the target whitepoint.
						</dd>
					<dt>White level</dt>
						<dd>
							Continue with the white level adjustment. On “Refresh”-type displays this is usually done using the “contrast” control. If you have set a target white level, you may reduce or increase contrast until the desired value is reached (i.e. the bar ends at the marked center position). If you haven't set a target, simply adjust the screen to a visually pleasing level that doesn't cause eye strain.
						</dd>
					<dt>Black point</dt>
						<dd>
							If your display has RGB offset controls, you can adjust the black point as well, in much the same way that you adjusted the whitepoint.
						</dd>
				</dl>

				<h5>Finishing adjustments and starting calibration/characterization</h5>

				<p>After the adjustments, you can run a check on all the settings by choosing the last option from the left-hand menu to verify the achieved values. If adjusting one setting adversely affected another, you can then simply repeat the respective option as necessary until the target parameters are met.</p>

				<p>Finally, select “Continue on to calibration/profiling” to start the non-interactive part. You may want to get a coffee or two as the process can take a fair amount of time, especially if you selected a high quality level. If you only wanted help to adjust the display and don't want/need calibration curves to be created, you can also choose to exit by closing the interactive display adjustment window and then select “Profile only” from the main window.<br />
				If you originally selected “Calibrate &amp; profile” and fulfil the requirements for <a href="#requirements-unattended">unattended calibration &amp; profiling</a>, the characterization measurements for the profiling process should start automatically after calibration is finished. Otherwise, you may be forced to take the instrument off the screen to do a sensor self-calibration before starting the profiling measurements.</p>
				
				<h5 id="optimizecharts">Optimizing testcharts for improved profiling accuracy and efficiency</h5>
				
				<p>The easiest way to use an optimized testchart for profiling is to set the testchart to “Auto” and adjusting the patch amount slider to the desired number of test patches. Optimization will happen automatically as part of the profiling measurements (this will increase measurement and processing times by a certain degree).<br />
				Alternatively, if you want to do generate an optimized chart manually prior to a new profiling run, you could go about this in the following way:</p>
				
				<ul>
					<li>Have a previous display profile and select it under “Settings”.</li>
					<li>Select one of the pre-baked testcharts to use as base and bring up the testchart editor.</li>
					<li>Next to “Preconditioning profile” click on “current profile”. It should automatically select the previous profile you've
					chosen. Then place a check in the checkbox. Make sure adaptation is set to a high level (e.g. 100%)</li>
					<li>If desired, adjust the number of patches and make sure the iterative patches amount is not zero.</li>
					<li>Create the chart and save it. Click “yes” when asked to select the newly generated chart.</li>
					<li>Start the profiling measurements (e.g. click “calibrate &amp; profile” or “profile only”).</li>
				</ul>

				<h4>Profile installation</h4>

				<p>When installing a profile after creating or updating it, a startup item to load its calibration curves 
				automatically on login will be created (on Windows and Linux, Mac OS X does not need a loader). You may also prevent this loader from doing anything by removing the check in the “Load calibration curves on Login” checkbox in the profile installation dialog, and in case you are using Windows 7 or later, you may let the operating system handle calibration loading instead (note that the Windows internal calibration loader does not offer the same high precision as the DisplayCAL profile loader, due to wrong scaling and 8-bit quantization).</p>

				<h4>Profile loader (Windows)</h4>

				<p>Under Windows, the profile loader will stay in the taskbar tray and keep the calibration loaded. In addition, the profile loader is <a href="http://madvr.com/">madVR</a>-aware and will disable calibration loading if it detects e.g. madTPG or madVR being used by a video player. A right-click menu also allows you to set the desired calibration state and a few other options:</p>

				<ul>
					<li><strong>Reload calibration from current display device profile(s)</strong>. Selecting this reloads the calibration instantly, and also sets the desired calibration state (see “Preserve calibration state” below).</li>
					<li><strong>Reset video card gamma table</strong>. Selecting this resets the video card gamma tables instantly, and also sets the desired calibration state (see “Preserve calibration state” below).</li>
					<li><strong>Preserve calibration state</strong>. This periodically checks if the video card gamma tables match the desired calibration state. It may take up to three seconds until the selected calibration state is automatically re-applied.</li>
					<li><strong>Fix profile associations automatically</strong> when only one display is active in a multi-display setup. This is a work-around for applications (and Windows itself) querying the display profile in a way that does not take into account the active display, which can lead to a wrong profile being used. A pre-requisite for this working correctly is that the profile loader has to be running <strong>before</strong> you switch from a multi-display to a single-display configuration in Windows, and the profile associations have to be correct at this point. Note that quitting the profile loader will restore profile associations to what they were (honoring any changes to profile associations during its runtime).</li>
				</ul>
			</div>

			<div>
				<h3 id="create-3dlut">Creating 3D LUTs</h3>

				<p>You can create display correction RGB-in/RGB-out 3D LUTs (for use in video playback or editing applications/devices that don't have ICC support) as part of the profiling process.</p>

				<h4>3D LUT settings</h4>
				
				<dl>
					<dt>Create 3D LUT after profiling</dt>
					<dd>Normally after profiling, you'll be given the option to install the profile to make it available for ICC color managed applications. If this box is checked, you'll have the option to generate a 3D LUT (with the chosen settings) instead, and the 3D LUT settings will also be stored inside the profile, so that they can be easily restored by selecting the profile under “Settings” if needed. If this box is unchecked, you can create a 3D LUT from an existing profile.</dd>

					<dt>Source colorspace/source profile</dt>
					<dd>This sets the source colorspace for the 3D LUT, which is normally a video standard space like defined by Rec. 709 or Rec. 2020.</dd>

					<dt>Tone curve</dt>
					<dd>This allows to set a predefined or custom tone response curve for the 3D LUT. Predefined settings are Rec. 1886 (input offset) and Gamma 2.2 (output offset, pure power).</dd>

					<dt>Apply calibration (vcgt) (only visible if “Show advanced options” in the “Options” menu is enabled)</dt>
					<dd>Apply the profile's 1D LUT calibration (if any) to the 3D LUT. Nornmally, this should always be enabled if the profile contains a non-linear 1D LUT calibration, otherwise you have to make sure the 1D calibration is loaded whenever the 3D LUT is used.</dd>

					<dt>Gamut mapping mode (only visible if “Show advanced options” in the “Options” menu is enabled)</dt>
					<dd>The default gamut mapping mode is “Inverse device to PCS” and gives the most accurate results. In case a profile with high enough PCS-to-device tables is used, the option “PCS-to-device” is selectable as well, which allows for quicker generation of a 3D LUT, but is somewhat less accurate.</dd>

					<dt id="rendering-intents">Rendering intent</dt>
					<dd>
						<ul>
							<li><strong>“Absolute colorimetric”</strong> is intended to reproduce colors exactly. Out of gamut colors will be clipped to the closest possible match. The destination whitepoint will be altered to match the source whitepoint if possible, which may get clipped if it is out of gamut.</li>
							<li><strong>“Absolute appearance”</strong> maps colors from source to destination, trying to match the appearance of colors as closely as possible, but may not exactly map the whitepoint. Out of gamut colors will be clipped to the closest possible match.</li>
							<li><strong>“Absolute colorimetric with white point scaling”</strong> behaves almost exactly like “Absolute colorimetric”, but will scale the source colorspace down to make sure the source whitepoint isn't clipped.</li>
							<li><strong>“Luminance matched appearance”</strong> linearly compresses or expands the luminance axis from white to black to match the source to the destination space, while not otherwise altering the gamut, clipping any out of gamut colors to the closest match. The destination whitepoint is <strong>not</strong> altered to match the source whitepoint.</li>
							<li><strong>“Perceptual”</strong> uses three-dimensional compression to make the source gamut fit within the destination gamut. As much as possible, clipping is avoided, hues and the overall appearance is maintained. The destination whitepoint is <strong>not</strong> altered to match the source whitepoint. This intent is useful if the destination gamut is smaller than the source gamut.</li>
							<li><strong>“Perceptual appearance”</strong> uses three-dimensional compression to make the source gamut fit within the destination gamut. As much as possible, clipping is avoided, hues and the overall appearance is maintained. The destination whitepoint is altered to match the source whitepoint. This intent is useful if the destination gamut is smaller than the source gamut.</li>
							<li><strong>“Luminance preserving perceptual”</strong> (Argyll CMS 1.8.3+) uses compression to make the source gamut fit within the destination gamut, but very heavily weights the preservation of the luminance value of the source, which will compromise the preservation of saturation. No contrast enhancement is used if the dynamic range is reduced. This intent may be of use where preserving the tonal distinctions in images is more important than maintaining overall colorfulness or contrast.</li>
							<li><strong>“Preserve saturation”</strong> uses three-dimensional compression and expansion to try and make the source gamut match the destination gamut, and also favours higher saturation over hue or lightness preservation. The destination whitepoint is <strong>not</strong> altered to match the source whitepoint.</li>
							<li><strong>“Relative colorimetric”</strong> is intended to reproduce colors exactly, but relative to the destination whitepoint which will <strong>not</strong> be altered to match the source whitepoint. Out of gamut colors will be clipped to the closest possible match. This intent is useful if you have calibrated a display to a custom whitepoint that you want to keep.</li>
							<li><strong>“Saturation”</strong> uses the same basic gamut mapping as “Preserve saturation”, but increases saturation slightly in highly saturated areas of the gamut.</li>
						</ul>
					</dd>

					<dt>3D LUT file format</dt>
					<dd>Sets the output format for the 3D LUT. Currently supported are Autodesk/Kodak (<code>.3dl</code>), Iridas (<code>.cube</code>), eeColor (<code>.txt</code>), <a href="http://madvr.com/">madVR</a> (<code>.3dlut</code>), Pandora (<code>.mga</code>), Portable Network Graphic (<code>.png</code>), <a href="http://reshade.me/">ReShade</a> (<code>.png</code>, <code>.fx</code>) and Sony Imageworks (<code>.spi3d</code>). Note that an ICC device link profile (the ICC equivalent of an RGB-in/RGB-out 3D LUT) is always created as well.</dd>

					<dt>Input/output encoding</dt>
					<dd>Some 3D LUT formats allow you to set the input/output encoding. Note that in most cases, sensible defaults will be chosen depending on selected 3D LUT format, but may be application- or workflow-specific.</dd>

					<dt>Input/output bit depth</dt>
					<dd>Some 3D LUT formats allow you to set the input/output bit depth. Note that in most cases, sensible defaults will be chosen depending on selected 3D LUT format, but may be application- or workflow-specific.</dd>
				</dl>

				<h4>Installing 3D LUTs</h4>

				<p>Depending on the 3D LUT file format, installing or saving the 3D LUT to a specific location may be required before it can be used. You will be asked to install or save the 3D LUT directly after it was created. If you need to install or save the 3D LUT again at a later point, switch to the “3D LUT” tab and click the small “Install 3D LUT” button next to the “Settings” dropdown (the same button that installs display profiles when on the “Display &amp; instrument” tab and a directly connected, desktop-accessible display is selected).</p>

				<h4>Installing 3D LUTs for the ReShade injector</h4>

				<p>First, you need to install <a href="http://reshade.me/">ReShade</a> for each application or game you want to use a 3D LUT with. Follow the installation instructions in the ReShade README, but in case you are using ReShade Core do <strong>not</strong> copy the example <code>ReShade.fx</code> that comes with it. If you want to use the 3D LUT together with one of the other shader packs available for ReShade, install that too <strong>prior</strong> to installing the 3D LUT. Then, install the 3D LUT from within DisplayCAL to the same folder where you previously installed/copied ReShade and related files. The default toggle key to turn the 3D LUT on and off is the HOME key. You can change this key or disable the 3D LUT altogether by editing ColorLookUpTable.fx (with a text editor) inside the application/game folder where you installed the 3D LUT. To remove a 3D LUT completely, delete ColorLookUpTable.png and ColorLookUpTable.fx, as well as edit ReShade.fx and remove the line <code class="language-clike">#include "ColorLookupTable.fx"</code> near the end.</p>
			</div>

			<div>
				<h3 id="verify-profile">Verification / measurement report</h3>

				<p>You can do verification measurements to assess the display chain's (display profile - video card and the calibration curves in its gamma table - monitor) fit to the measured data, or to find out about the soft proofing capabilities of the display chain.</p>

				<p>To do the former, you have to select a <abbr title="CGATS.5 Data Exchange Format">CGATS<sup><a href="#definition_CGATS">[1]</a></sup></abbr> testchart file containing device values (RGB). The measured values are then compared to the values obtained by feeding the device RGB numbers through the display profile (measured vs expected values). The default verification chart contains 26 patches and can be used, for example, to check if a display needs to be re-profiled. If a RGB testchart with gray patches (R=G=B) is measured, like the default and extended verification charts, you also have the option to evaluate the graybalance through the calibration only, by placing a check in the corresponding box on the report.</p>

				<p>To perform a check on the soft proofing capabilities, you have to provide a CGATS reference file containing XYZ or L*a*b* data, or a combination of simulation profile and testchart file, which will be fed through the display profile to lookup corresponding device (RGB) values, and then be sent to the display and measured. Afterwards, the measured values are compared to the original XYZ or L*a*b* values, which can give a hint how suitable (or unsuitable) the display is for softproofing to the colorspace indicated by the reference.</p>

				<p>The profile that is to be evaluated can be chosen freely. You can select it in DisplayCAL's main window under “settings”. The report files generated after the verification measurements are plain HTML with some embedded JavaScript, and are fully self-contained. They also contain the reference and measurement data, which consists of device RGB numbers, original measured XYZ values, and D50-adapted L*a*b* values computed from the XYZ numbers, and which can be examined as plain text directly from the report at the click of a button.</p>
				
				<h5>HowTo—Common scenarios</h5>

				<p>Select the profile you want to evaluate under “Settings” (for evaluating 3D LUTs and DeviceLink profiles, this setting has significance for a Rec. 1886 or custom gamma tone response curve, because they depend on the black level).</p>
				
				<p>There are two sets of default verification charts in different sizes, one for general use and one for Rec. 709 video. The “small” and “extended” versions can be used for a quick to moderate check to see if a display should be re-profiled, or if the used profile/3D LUT is any good to begin with. The “large” and “xl” versions can be used for a more thorough check. Also, you can create your own customized verification charts with the testchart editor.</p>

				<h6>Checking the accuracy of a display profile (evaluating how well the profile characterizes the display)</h6>

				<p>In this case, you want to use a testchart with RGB device values and no simulation profile. Select a suitable file under “testchart or reference” and disable “simulation profile”. Other settings that do not apply in this case will be grayed out.</p>
					
				<h6>Checking how well a display can simulate another colorspace (evaluating softproofing capabilities, 3D LUTs, DeviceLink profiles, or native display performance)</h6>

				<p>There are two ways of doing this:</p>

				<ul>
					<li>Use a reference file with XYZ or L*a*b* aim values,</li>
					<li>or use a combination of testchart with RGB or CMYK device values and an RGB or CMYK simulation profile (for an RGB testchart, it will only allow you to use an RGB simulation profile and vice versa, and equally a CMYK testchart needs to be used with a CMYK simulation profile)</li>
				</ul>

				<p>Then, you have a few options that influence the simulation.</p>

				<ul>
					<li>
						<strong>Whitepoint simulation</strong>. If you are using a reference file that contains device white (100% RGB or 0% CMYK), or if you use a combination of testchart and simulation profile, you can choose if you want whitepoint simulation of the reference or simulation profile, and if so, if you want the whitepoint simulated relative to the target profile whitepoint. To explain the latter option: Let's assume a reference has a whitepoint that is slightly blueish (compared to D50), and a target profile has a whitepoint that is more blueish (compared to D50). If you do <em>not</em> choose to simulate the reference white relative to the target profile whitepoint, and the target profile's gamut is large and accurate enough to accomodate the reference white, then that is exactly what you will get. Depending on the adaptation state of your eyes though, it may be reasonable to assume that you are to a large extent adapted to the target profile whitepoint (assuming it is valid for the device), and the simulated whitepoint will look a little yellowish compared to the target profile whitepoint. In this case, choosing to simulate the whitepoint relative to that of the target profile may give you a better visual match e.g. in a softproofing scenario where you compare to a hardcopy proof under a certain illuminant, that is close to but not quite D50, and the display whitepoint has been matched to that illuminant. It will “add” the simulated whitepoint “on top” of the target profile whitepoint, so in our example the simulated whitepoint will be even more blueish than that of the target profile alone.
					</li>
					<li>
						<strong>Using the simulation profile as target profile</strong> will override the profile set under “Settings”. Whitepoint simulation does not apply here because color management will not be used and the display device is expected to be in the state described by the simulation profile. This may be accomplished in several ways, for example the display may be calibrated internally or externally, by a 3D LUT or device link profile. If this setting is enabled, a few other options will be available:
						<ul>
							<li>
								<strong>Enable 3D LUT</strong> (if using the <a href="http://madvr.com/">madVR</a> display device/madTPG under Windows, or a Prisma video processor). This allows you to check how well the 3D LUT transforms the simulation colorspace to the display colorspace. Note this setting can not be used together with a DeviceLink profile.
							</li>
							<li>
								<strong>DeviceLink profile</strong>. This allows you to check how well the DeviceLink transforms the simulation colorspace to the display colorspace. Note this setting can not be used together with the “Enable 3D LUT” setting.
							</li>
						</ul>
					</li>
					<li>
						<strong>Tone response curve</strong>. If you are evaluating a 3D LUT or DeviceLink profile, choose the same settings here as during 3D LUT/DeviceLink creation (and also make sure the same target profile is set, because it is used to map the blackpoint).<br />
						To check a display that does not have an associated profile (e.g. “Untethered”), set the verification tone curve to “Unmodified”. In case you want to verify against a different tone response curve instead, you need to create a synthetic profile for this purpose (“Tools” menu).
					</li>
				</ul>

				<h4>How were the nominal and recommended aim values chosen?</h4>

				<p>The nominal tolerances, with the whitepoint, average, maximum and gray balance Delta E CIE 1976 aim values stemming from <a href="http://www.fogra.org/mediawedge/">UGRA/Fogra Media Wedge</a> and <a href="http://www.ugra.ch/ugra-display-analysis-and-certification-tool.phtml">UDACT</a>, are pretty generous, so I've included somewhat stricter “recommended” numbers which I've chosen more or less arbitrarily to provide a bit “extra safety margin”.</p>

				<p>For reports generated from reference files that contain CMYK numbers in addition to L*a*b* or XYZ values, you can also select the official Fogra Media Wedge V3 or IDEAlliance Control Strip aim values for paper white, CMYK solids and CMY grey, if the chart contains the right CMYK combinations.</p>

				<h4>How are the results of the profile verification report to be interpreted?</h4>

				<p>This depends on the chart that was measured. The explanation in the first paragraph sums it up pretty well: If you have calibrated and profiled your display, and want to check how well the profile fits a set of measurements (profile accuracy), or if you want to know if your display has drifted and needs to be re-calibrated/re-profiled, you select a chart containing RGB numbers for the verification. Note that directly after profiling, accuracy can be expected to be high if the profile characterizes the display well, which will usually be the case if the display behaviour is not very non-linear, in which case creating a LUT profile instead of a “Curves + matrix” one, or increasing the number of measured patches for LUT profiles, can help.</p>

				<p>If you want to know how well your profile can simulate another colorspace (softproofing), select a reference file containing L*a*b* or XYZ values, like one of the <a href="http://www.fogra.org/mediawedge/">Fogra Media Wedge</a> subsets, or a combination of a simulation profile and testchart. Be warned though, only wide-gamut displays will handle a larger offset printing colorspace like FOGRA39 or similar well enough.</p>

				<p>In both cases, you should check that atleast the nominal tolerances are not exceeded. For a bit “extra safety margin”, look at the recommended values instead.</p>

				<p>Note that both tests are “closed-loop” and will not tell you an “absolute” truth in terms of “color quality” or “color accuracy” as they may not show if your instrument is faulty/measures wrong (a profile created from repeatable wrong measurements will usually still verify well against other wrong measurements from the same instrument if they don't fluctuate too much) or does not cope with your display well (which is especially true for <a href="#colorimeter-corrections">colorimeters and wide-gamut screens</a>, as such combinations need a <a href="http://argyllcms.com/doc/ccmxs.html" title="List of contributed colorimeter correction files on the Argyll CMS website">correction</a> in hardware or software to obtain accurate results—this problem does not exist with spectrometers, which do not need a correction for wide-gamut, but have lately been discovered to have issues measuring the correct brightness of some LED backlit displays which use white LEDs), or if colors on your screen match an actual colored object next to it (like a print). It is perfectly possible to obtain good verification results but the actual visual performance being sub-par. It is always wise to combine such measurements with a test of the actual visual appearance via a “known good” reference, like a print or proof (although it should not be forgotten that those also have tolerances, and illumination also plays a big role when assessing visual results). Keep all that in mind when admiring (or pulling your hair out over) verification results :)</p>

				<h4>How are profiles evaluated against the measured values?</h4>

				<p>Different softwares use different methods (which are not always disclosed in detail) to compare and evaluate measurements. This section aims to give interested users a better insight how DisplayCAL's profile verification feature works “under the hood”.</p>

				<h5>How is a testchart or reference file used?</h5>

				<p>There are currently two slightly different paths depending if a testchart or reference file is used for the verification measurements, as outlined above. In both cases, Argyll's <a href="http://www.argyllcms.com/doc/xicclu.html">xicclu</a> utility is run behind the scenes and the values of the testchart or reference file are fed relative colorimetrically (if no whitepoint simualtion is used) or absolute colorimetrically (if whitepoint simulation is used) through the profile that is tested to obtain corresponding L*a*b* (in the case of RGB testcharts) or device RGB numbers (in the case of XYZ or L*a*b* reference files or a combination of simulation profile and testchart). If a combination of simulation profile and testchart is used as reference, the reference L*a*b* values are calculated by feeding the device numbers from the testchart through the simulation profile absolute colorimetrically if whitepoint simulation is enabled (which will be the default if the simulation profile is a printer profile) and relative colorimetrically if whitepoint simulation is disabled (which will be the default if the simulation profile is a display profile, like most RGB working spaces). Then, the original RGB values from the testchart, or the looked up RGB values for a reference are sent to the display through the calibration curves of the profile that is going to be evaluated. A reference white of D50 (ICC default) and complete chromatic adaption of the viewer to the display's whitepoint is assumed if “simulate whitepoint relative to target profile whitepoint” is used, so the measured XYZ values are adapted to D50 (with the measured whitepoint as source reference white) using the Bradford transform (see <a href="http://brucelindbloom.com/Eqn_ChromAdapt.html">Chromatic Adaption</a> on <a href="http://brucelindbloom.com/">Bruce Lindbloom's website</a> for the formula and matrix that is used by DisplayCAL) or with the adaption matrix from the profile in the case of profiles with 'chad' chromatic adaption tag, and converted to L*a*b*. The L*a*b* values are then compared by the generated dynamic report, with user-selectable critera and ΔE (delta E) formula.</p>

				<h5>How is the assumed vs. measured whitepoint ΔE calculated?</h5>

				<p>In a report, the correlated color temperature and assumed target whitepoint, as well as the whitepoint ΔE, do warrant some further explanations: The whitepoint ΔE is calculated as difference between the measured whitepoint's and the assumed target whitepoint's normalized XYZ values, which are first converted to L*a*b*. The assumed target whitepoint color temperature shown is simply the rounded correlated color temparature (100K threshold) calculated from the measured XYZ values. The XYZ values for the assumed target whitepoint are obtained by calculating the chromaticity (xy) coordinates of a CIE D (daylight) or blackbody illuminant of that color temperature and converting them to XYZ. You can find all the used formulas on <a href="http://brucelindbloom.com/">Bruce Lindbloom's website</a> and on <a href="http://en.wikipedia.org/wiki/Planckian_locus#Approximation">Wikipedia</a>.</p>

				<h5>How is the gray balance “range” evaluated?</h5>

				<p>The gray balance “range” uses a combined delta a/delta b absolute deviation (e.g. if max delta a = -0.5 and max delta b = 0.7, the range is 1.2). Because results in the extreme darks can be problematic due to lack of instrument accuracy and other effects like a black point which has a different chromaticity than the whitepoint, the gray balance check in DisplayCAL only takes into account gray patches with a minimum measured luminance of 1% (i.e. if the white luminance = 120 cd/m², then only patches with at least 1.2 cd/m² will be taken into account).</p>

				<h5>What does the “Evaluate gray balance through calibration only” checkbox on a report actually do?</h5>

				<p>It sets the nominal (target) L* value to the measured L* value and a*=b*=0, so the profile is effectively ignored and only the calibration (if any) will influence the results of the gray balance checks. Note that this option will not make a difference for a “Single curve + matrix” profile, as the single curve effectively already achieves a similar thing (the L* values can be different, but they are ignored for the gray balance checks and only influence the overall result).</p>
			</div>

			<div>
				<h3 id="special">Special functionality</h3>
				
				<h4 id="remote">Remote measurements and profiling</h4>
				
				<p>When using Argyll CMS 1.4.0 and newer, remote measurements on a device not directly connected to the machine that is running DisplayCAL is possible (e.g. a smartphone or tablet). The remote device needs to be able to run a web browser (Firefox recommended), and the local machine running DisplayCAL may need firewall rules added or altered to allow incoming connections. To set up remote profiling, select “Web @ localhost” from the display device dropdown menu, then choose the desired action (e.g. “Profile only”). When the message “Webserver waiting at http://&lt;IP&gt;:&lt;Port&gt;” appears, open the shown address in the remote browser and attach the measurement device.<br />
				<strong>NOTE:</strong> If you use this method of displaying test patches, there is no access to the display video <abbr title="Look Up Table">LUT<sup><a href="#definition_LUT">[7]</a></sup></abbr>s and hardware calibration is not possible. The colors will be displayed with 8 bit per component precision, and any screen-saver or power-saver will not be automatically disabled. You will also be at the mercy of any color management applied by the web browser, and may have to carefully review and configure such color management.<br />
				<strong>Note:</strong> Close the web browser window or tab after each run, otherwise reconnection may fail upon further runs.</p>

				<h4 id="madvr">madVR test pattern generator</h4>

				<p>DisplayCAL supports the <a href="http://madvr.com/">madVR</a> test pattern generator (madTPG) and madVR 3D LUT formats since version 1.5.2.5 when used together with Argyll CMS 1.6.0 or newer.</p>

				<h4 id="resolve">Resolve (10.1+) as pattern generator</h4>

				<p>Since version 2.5, DisplayCAL can use <a href="https://www.blackmagicdesign.com/products/davinciresolve">Resolve</a> (10.1+) as pattern generator. Select the “Resolve” entry from the display devices dropdown in DisplayCAL and in Resolve itself choose “Monitor calibration”, “CalMAN” in the “Color” menu.</p>

				<h4 id="untethered">Untethered display measurements</h4>
				
				<p><em>Please note that the untethered mode should generally only be used if you've exhausted all other options.</em></p>
				
				<p>Untethered mode is another option to measure and profile a remote display that is not connected via standard means (calibration is not supported). To use untethered mode, the testchart that should be used needs to be optimized, then exported as image files (via the testchart editor) and those image files need to be displayed on the device that should be measured, in successive order. The procedure is as follows:</p>
				<ul>
					<li>Select the desired testchart, then open the testchart editor.</li>
					<li>Select “Optimize for untethered in auto mode” from the sorting options dropdown, click “Apply”, then export the testchart.</li>
					<li>Burn the images to a DVD, copy them on an USB stick or use any other available means to get them to display onto the device that should be measured.</li>
					<li>In DisplayCAL's display dropdown, select “Untethered” (the last option).</li>
					<li>Show the first image on the remote display, and attach the instrument. Then select “Profile only”.</li>
				</ul>
				<p>Measurements will commence, and changes in the displayed image should be automatically detected if “auto” mode is enabled. Use whatever means available to you to cycle through the images from first to last, carefully monitoring the measurement process and only changing to the next image if the current one has been successfully measured (as will be shown in the untethered measurement window). Note that untethered mode will be (atleast) twice as slow as normal display measurements.</p>
			</div>
		</div>

		<div id="menu">
			<h2>Menu commands</h2>

			<div id="menu-file">
				<h3>“File” menu</h3>

				<dl>
					<dt>Load settings...</dt>
						<dd>Loads settings from a profile created by DisplayCAL, or a calibration file, as described under “<a href="#settingsfile">settings file</a>”.</dd>

					<dt>Choose testchart file...</dt>
						<dd>Loads a testchart <code>.ti1</code> file used for profiling (existing profiles created with Argyll CMS or DisplayCAL can also be selected as source).</dd>

					<dt>Edit testchart...</dt>
						<dd>Opens the testchart editor/creator.</dd>

					<dt>Choose save path...</dt>
						<dd>Allows you to select a directory to store the files created by DisplayCAL during calibration/profiling and custom measurements.</dd>
					
					<dt>Profile information</dt>
						<dd>Show gamut plot, calibration and tone response curves, as well as header and tag information for the current profile.</dd>

					<dt>Locate Argyll CMS executables...</dt>
						<dd>Normally DisplayCAL will look for and use the Argyll CMS binaries using your system's PATH variable, but you may specify a different location.</dd>
				</dl>
			</div>

			<div id="menu-options">
				<h3>“Options” menu</h3>

				<dl>
					<dt>Measure testchart</dt>
						<dd>Measures the currently selected testchart on the selected display in its current state and creates a <code>.ti3</code> measurement data file. The file is saved under the chosen save path (see “Choose save path...” under the “File” menu) and with the same base name used for profiles.</dd>

					<dt id="create_profile_from_measurement_data">Create profile from measurement data...</dt>
						<dd>Allows you to (re-)create a profile from existing measurement data (existing profiles created with Argyll CMS or DisplayCAL can also be selected as source) with the current profiling settings.</dd>

					<dt>Create profile from extended display identification data...</dt>
						<dd>Allows you to create a profile from your display's <abbr title="Extended Display Identification Data">EDID<sup><a href="#definition_EDID">[10]</a></sup></abbr> (if available).</dd>

					<dt>Install display device profile...</dt>
						<dd>Install an existing profile for the currently selected display.</dd>

					<dt>Upload profile...</dt>
						<dd>Share a profile via the <a href="http://icc.opensuse.org">openSUSE ICC Profile Taxi</a> service. This will only work for profiles created from actual measurements by DisplayCAL 0.8.0.8 and newer, and not for profiles created from EDID.</dd>

					<dt>Load calibration curves from calibration file or profile...</dt>
						<dd>Unlike “Load settings....” from the “File” menu, loads just calibration curves for the currently selected display into the video card without changing settings.</dd>

					<dt>Load calibration curves from current display device profile</dt>
						<dd>Tries to determine the profile associated to the currently selected display and loads its calibration curves from the 'vcgt' tag.</dd>

					<dt>Reset video card gamma table</dt>
						<dd>Resets the video card gamma table for the currently selected display to linear, clearing any calibration curves, such that input = output.</dd>

					<dt>Detect displays and instruments</dt>
						<dd>To detect changes in display setup or connected instruments, use this menu entry.</dd>

					<dt>Automatically detect instruments</dt>
						<dd>If this menu item is checked, DisplayCAL will automatically detect instruments on startup and periodically check for changes roughly every 10 seconds after that, if no other operation is currently running.</dd>

					<dt>Use separate video card gamma table acccess</dt>
						<dd>Because of the difficulty caused by TwinView and MergedFB in X11 based systems, you can optionally specify a separate display for accessing the video card gamma table hardware during calibration. You may be able to calibrate one screen, and then share the calibration with another screen. Profiling can be done independently to calibration on each screen. Normally DisplayCAL will automatically detect if separate video card gamma table access is needed (and appropriate controls need to be displayed), but you may force it by selecting this menu entry.</dd>

					<dt>Do not use  video card gamma table to apply calibration</dt>
						<dd>Calibration will be applied to the test values for each measurement instead of being loaded into the video card gamma table, and also included in measurement data files, so that the profiler can include it as a vcgt tag in the resulting profile. This is <strong>not</strong> normally the best way to profile a calibrated display, since the frame buffer may have lower precision than the video card gamma table. This is the way calibration should be applied if <a href="http://madvr.com/">madVR</a> is being used to display the test patches.</dd>

					<dt>Allow skipping of spectrometer self-calibration</dt>
						<dd>Spectrometers require a sensor calibration before measurements. If this option is checked, DisplayCAL will try to skip this sensor calibration. <em>Note</em> even if this option is checked, you may be forced to do a sensor calibration if the instrument requires it.</dd>

					<dt>Spectrometer self-calibration</dt>
						<dd>Do spectrometer sensor calibration on its own.</dd>

					<dt>Show advanced options</dt>
						<dd>Enabling this menu option will show some additional controls for advanced users.</dd>

					<dt id="additional-commandline-arguments">Set additional commandline arguments...</dt>
						<dd>Allows you to set additional options for the Argyll CMS dispcal, dispread, spotread, colprof, collink and targen tools in the same way you would specify them on the commandline.</dd>

					<dt>Enable Argyll CMS diagnostic output</dt>
						<dd>When checked, outputs diagnostic information for measurements. Useful for debugging. Warning: Very verbose.</dd>

					<dt>Dry run</dt>
						<dd>When enabled, all functionality that calls Argyll CMS executables will effectively do nothing. This allows review of the used command line parameters by checking the log.</dd>

					<dt>Restore defaults</dt>
						<dd>Restores all settings except language, selected display, instrument, measurement mode and profile name to default.</dd>
				</dl>
			</div>

			<div id="menu-tools">
				<h3>“Tools” menu</h3>

				<dl>

					<dt id="report-uncal">Report on uncalibrated display device</dt>
						<dd>Does some quick measurements on the currently selected display, first resetting the video card gamma table, and displays information about the measured response like luminance, approx. gamma, color temperature, and video card gamma table bit depth.</dd>

					<dt id="report-cal">Report on calibrated display device</dt>
						<dd>Does some quick measurements on the currently selected display, keeping the video card gamma table, and displays information about the measured response like luminance, approx. gamma, and color temperature.</dd>

					<dt id="verify-cal">Verify calibration</dt>
						<dd>Run verify measurements on the selected display as it is currently setup (ie. video card gamma table). This will use the usual input parameters to establish the expected (target) characteristic. Note that if the initial calibration was modified due to it being out of gamut of the display, verify will show the resulting discrepancy.</dd>

					<dt>Update measurement report...</dt>
						<dd>This allows to update an existing report HTML file with the template and functionality from a newer version of DisplayCAL (no measurements involved). It's a handy way to get new or changed comparison features, updated layout and even bugfixes into old reports. A backup copy of the old report with a date extension will automatically be created.</dd>

					<dt>Measure display device uniformity...</dt>
						<dd>Measure the display at several points to evaluate evenness of illumination and color errors. The results are shown after all patches are measured, and include the luminance difference, delta E 2000, CCT (correlated color temperature), and CDT (closest daylight temperature) or CPT (closest planckian temperature) depending on the selection for the whitepoint locus set on the “Calibration” tab. Differences are computed in comparison to the center point, which is used as reference.<br />
						The evaluation is done according to ISO 12646:2015. A checkmark means the ISO criteria have been met (delta E of equal or less than 4, luminance difference of less than 10%). Two checkmarks mean that both the ISO criteria as well as twice as strict tolerances have been met (delta E of equal or less than 2, luminance difference of less than 5%). You can switch between delta E, delta C, delta H and delta L by clicking the labels.</dd>

					<dt>Check measurement file...</dt>
						<dd>This checks a measurement file for suspicious (erroneous) readings. An sRGB-like display is assumed, so this option will not work well if the display response is not so close to sRGB, and may report false positives.</dd>

					<dt>Automatically check measurements</dt>
						<dd>This automatically checks measurements for suspicious (erroneous) readings. An sRGB-like display is assumed, so this option will not work well if the display response is not so close to sRGB, and may report false positives.</dd>

					<dt id="import-correction-matrices">Import colorimeter corrections from other display profiling software...</dt>
						<dd>Converts matrices from other softwares to Argyll's CCMX / CCSS formats and adds them to the corresponding dropdown menu. Currently iColor Display, i1 Profiler, ColorMunki Display and Spyder 4/5 softwares are supported. If they are installed or the CD / disk image is mounted, the correct file(s) can in most cases be imported directly, otherwise they can be downloaded automatically. Please note: The colorimeter corrections imported from Spyder 4/5 software are only usable with the Spyder 4/5 and need to be selected in the measurement mode dropdown instead of the colorimeter corrections dropdown.</dd>


					<dt id="create-colorimeter-correction">Create colorimeter correction...</dt>
						<dd>Allows you to create correction matrices for all colorimeters as well as spectral corrections for i1 Display Pro, ColorMunki Display and Spyder 4/5.
						You first need to measure the required test colors with a spectrometer, and in case you want to create a correction matrix instead of a spectral correction, also with the colorimeter. A checkmark next to the “Measure” buttons indicates previous measurements already being present (it is recommended that measurements be recent though, so ideally both spectrometer and colorimeter measurements should be performed whenever a colorimeter correction matrix is to be created). Alternatively you can also use existing measurements by choosing “Browse...”.
						</dd>

					<dt id="upload-colorimeter-correction">Upload colorimeter correction...</dt>
						<dd>Upload a colorimeter correction to the online <a href="http://colorimetercorrections.displaycal.net/">Colorimeter Corrections Database</a> to share it with other users or download it later on another machine.
						</dd>

					<dt id="synthprofile">Create synthetic ICC profile...</dt>
						<dd>Create a synthetic ICC profile by entering XYZ or chromaticity coordinates for R, G, B and white, and by choosing a tone response curve.</dd>

					<dt id="install-argyll-instrument-drivers">Install Argyll CMS instrument drivers... (Windows) / Install Argyll CMS instrument configuration files... (Linux)</dt>
						<dd>Windows: Install the Argyll CMS instrument drivers that are needed by some instruments.<br />
						Linux: Install udev rules or hotplug scripts that configure instrument access (you only need to install these if you cannot access your instrument).</dd>

					<dt id="uninstall-argyll-instrument-drivers">Uninstall Argyll CMS instrument drivers... (Windows Vista and newer only) / Uninstall Argyll CMS instrument configuration files... (Linux)</dt>
						<dd>Windows Vista and newer: Uninstall the Argyll CMS instrument drivers.<br />
						Linux: Uninstall udev rules or hotplug scripts that configure instrument access (note that they will be backed up to <samp>/home/<var>Your Username</var>/.local/share/DisplayCAL/backup</samp>).</dd>

					<dt>Enable Spyder 2 colorimeter...</dt>
						<dd>The Spyder 2 instrument cannot function without the presence of the instrument vendors PLD firmware pattern for the device. This firmware is not provided with Argyll CMS nor DisplayCAL, since it has not been made available under a compatible license.<br />
The purchaser of a Spyder 2 instrument should have received a copy of this firmware along with their instrument from the original vendor, as part of the instrument setup files.<br />
On Microsoft Windows or Mac OS X, if the vendors software has been installed on the users machine, the firmware pattern can usually automatically be located from there. If the vendors software have not been installed, or the user does not wish to install it, or no vendors software are available for the users platform (i.e. Linux), then the Spyder 2 installation CDROM will also be searched if present. In case no firmware files are found, the necessary binary can be downloaded automatically.</dd>

					<dt id="curveviewer">Show curves</dt>
						<dd>Shows/hides the curve viewer, which graphs calibration and profile tone response curves and also shows the percentage and amount of tone values for calibration curves.</dd>

					<dt>Show actual calibration curves from video card</dt>
						<dd>When this is enabled in the curve viewer window, it will show the actual calibration curves from the video card gamma table instead of showing the curves of the currently active profile. (only available if using Argyll CMS 1.1.0 or newer)</dd>

					<dt>Show log window</dt>
						<dd>Shows/hides the informational log window.</dd>

					<dt>Show log window automatically</dt>
						<dd>Shows the log window automatically after actions like measurements or creating a profile.</dd>
				</dl>
			</div>

			<div id="menu-lang">
				<h3>“Language” menu</h3>

				<p>Allows you to select one of the available localizations.</p>
			</div>
		</div>

		<div id="non-ui-functionality">
			<h2>Non-UI functionality</h2>

			<p>There is a bit of functionality that is not available via the UI and needs to be run from a command prompt or ternminal. Use of this functionality currently requires 0install, or running from source.</p>

			<div>
				<div class="info">
					<dl>
						<dt id="change-display-profile-cal-whitepoint">Change display profile and calibration whitepoint</dt>
							<dd>
								<p>Note that this reduces the profile gamut and accuracy.</p>
								<p>Via 0install:</p>
								<pre><code>0install run --command=change-display-profile-cal-whitepoint -- \<br />
&#160; http://displaycal.net/0install/DisplayCAL.xml \<br />
&#160; [-t temp | -T temp | -w x,y] [--cal-only] [inprofile] outfilename</code></pre>
									<p>From source:</p>
									<pre><code>python util/change_display_profile_cal_whitepoint.py- \<br />
&#160; http://displaycal.net/0install/DisplayCAL.xml \<br />
&#160; [-t temp | -T temp | -w x,y] [--cal-only] [inprofile] outfilename</code></pre>
								<div>
									<dl>
										<dt><code>-t temp</code></dt>
											<dd>Use daylight color temperature <code>temp</code> as whitepoint target.</dd>
										<dt><code>-T temp</code></dt>
											<dd>Use blackbody color temperature <code>temp</code> as whitepoint target.</dd>
										<dt><code>-w x,y</code></dt>
											<dd>Use x,y chromaticity as whitepoint target.</dd>
										<dt><code>--cal-only</code> (optional)</dt>
											<dd>Only alter the calibration embedded in the profile, not the profile itself.</dd>
										<dt><code>inprofile</code> (optional)</dt>
											<dd>Use profile <code>inprofile</code> instead of the current display profile.</dd>
										<dt><code>outfilename</code></dt>
											<dd>Output profile filename. The changed profile will be written to this file.</dd>
									</dl>
								</div>
							</dd>
						<dt id="set-calibration-loading">Enable/disable Windows 7 and later calibration loading</dt>
							<dd>
								<p>Note that Windows calibration loading is of lower quality than using Argyll CMS because Windows always quantizes the calibration to 8 bit and scales it wrongly. This is not the case when using the DisplayCAL calibration loader which uses Argyll CMS.</p>
								<p>Via 0install:</p>
								<pre><code>0install run --command=set-calibration-loading -- \<br />
&#160; http://displaycal.net/0install/DisplayCAL.xml [--os]</code></pre>
								<p>From source:</p>
								<pre><code>python -c "import sys; from DisplayCAL import util_win; \<br />
&#160; util_win.calibration_management_isenabled() or \<br />
&#160; util_win.enable_calibration_management() \<br />
&#160; if '--os' in sys.argv[1:] else \<br />
&#160; not util_win.calibration_management_isenabled() or \<br />
&#160; util_win.disable_calibration_management();" [--os]</code></pre>
								<p>The <code>--os</code> option determines wether Windows calibration loading functionality should be enbaled or disabled.</p>
							</dd>
					</dl>
				</div>
			</div>
		</div>

		<div id="scripting">
			<h2>Scripting</h2>
			
			<p>DisplayCAL supports scripting locally and over the network (the latter must be explicitly enabled by setting <code>app.allow_network_clients = 1</code> in DisplayCAL.ini) via sockets. DisplayCAL must be already running on the target machine for this to work. Below is an example connecting to a running instance on the default port <code>15411</code> and starting calibration measurements (the port is configurable in DisplayCAL.ini as <code>app.port</code>, although if the desired port is not available an unused one will be chosen automatically. You can read the actual used port from the file DisplayCAL.lock in the <a href="#configuration">configuration</a> file folder of DisplayCAL while it is running). The example is written in <a href="http://www.python.org/">Python</a> and deals with some of the intricacies of sockets as well.</p>
			
			<pre class="language-python"><code>#!/usr/bin/env python2

import socket

class DCGScriptingClientSocket(socket.socket):

	def __enter__(self):
		return self

	def __exit__(self, etype, value, tb):
		# Disconnect
		try:
			# Will fail if the socket isn't connected, i.e. if there was an
			# error during the call to connect()
			self.shutdown(socket.SHUT_RDWR)
		except socket.error:
			pass
		self.close()

	def __init__(self):
		socket.socket.__init__(self)
		self.recv_buffer = ''

	def get_single_response(self):
		# Buffer received data until EOT (response end marker) and return
		# single response (additional data will still be in the buffer)
		while not '\4' in self.recv_buffer:
			incoming = self.recv(4096)
			if incoming == '':
				raise socket.error("Connection broken")
			self.recv_buffer += incoming
		end = self.recv_buffer.find('\4')
		single_response = self.recv_buffer[:end]
		self.recv_buffer = self.recv_buffer[end + 1:]
		return single_response

	def send_and_check(self, command, expected_response="ok"):
		""" Send command, get &amp; check response """
		self.send_command(command)
		single_response = self.get_single_response()
		if single_response != expected_response:
			# Check application state. If a modal dialog is displayed, choose
			# the OK option. Note that this is just an example and normally you
			# should be very careful with this, as it could mean confirming a
			# potentially destructive operation (e.g. discarding current
			# settings, overwriting existing files etc).
			self.send_command('getstate')
			state = self.get_single_response()
			if 'Dialog' in state.split()[0]:
				self.send_command('ok')
				if self.get_single_response() == expected_response:
					return
			raise RuntimeError('%r got unexpected response: %r != %r' %
							   (command, single_response, expected_response))

	def send_command(self, command):
		# Automatically append newline (command end marker)
		self.sendall(command + '\n')

# Generate a list of commands we want to execute in order
commands = []

# Load “Laptop” preset
commands.append('load presets/laptop.icc')

# Setup calibration &amp; profiling measurements
commands.append('calibrate-profile')

# Start actual measurements
commands.append('measure')

# Create socket &amp; send commands
with DCGScriptingClientSocket() as client:
	client.settimeout(3)  # Set a timeout of 3 seconds

	# Open connection
	client.connect(('127.0.0.1', 15411))  # Default port

	for command in commands:
		client.send_and_check(command)

</code></pre>
			
			<p>Each command needs to be terminated with a newline character (after any arguments the command may accept). Note that data sent must be UTF-8 encoded, and if arguments contain spaces they should be encased in double or single quotes. You should check the response for each command sent (the response end marker is ASCII 0x4 EOT, and the default <a href="#scripting.commands.setresponseformat">response format</a> is a plain text format, but JSON and XML are also available). The common return values for commands are either <code>ok</code> in case the command was understood (note that this does not indicate if the command finished processing), <code>busy</code> or <code>blocked</code> in case the command was ignored because another operation was running or a modal dialog blocks the UI, <code>failed</code> in case the command or an argument could not be processed successfully, <code>forbidden</code> in case the command was not allowed (this may be a temporary condition depending on the circumstances, e.g. when trying to interact with an UI element that is currently disabled), <code>invalid</code> in case the command (or one of its arguments) was invalid, or <code>error</code> followed by an error message in case of an unhandled exception. Other return values are possible depending on the command. All values returned are UTF-8 encoded. If the return value is <code>blocked</code> (e.g. because a modal dialog is displayed) you should check the <a href="#scripting.commands.getstate">application state</a> with the <code><a href="#scripting.commands.getstate">getstate</a></code> command to determine the further course of action.</p>
			
			<div>
				<h3>List of supported commands</h3>
				<p>Below is a list of the currently supported commands (the list contains all valid commands for the main application, the standalone tools will typically just support a smaller subset. You can use the “DisplayCAL Scripting Client” standalone tool to learn about and experiment with commands). Note that filename arguments must refer to files present on the target machine running DisplayCAL.</p>
				<div class="info">
					<dl>
						<dt><code>3DLUT-maker [create filename]</code></dt>
							<dd>Show 3D LUT creation tab, or create 3D LUT <code>filename</code>.</dd>
						<dt><code>abort</code></dt>
							<dd>Try to abort a currently running operation.</dd>
						<dt id="scripting.commands.activate"><code>activate [window ID | name | label]</code></dt>
							<dd>Activate window <code>window</code> or the main application window (bring it to the front). If it is minimized, restore it.</dd>
						<dt id="scripting.commands.dialogactions"><code>alt | cancel | ok [filename]</code></dt>
							<dd>If a modal dialog is shown, call the default action (ok), the alternate action (if applicable), or cancel it. If a file dialog is shown, using <code>ok filename</code> chooses that file.</dd>
						<dt><code>calibrate</code></dt>
							<dd>Setup calibration measurements (note that this won't give a choice whether to create a fast curves + matrix profile as well, if you want that use <code><a href="#scripting.commands.interact">interact</a> mainframe calibrate_btn</code> instead). For non-virtual displays as well as pattern generators (except madVR), call the <code><a href="#scripting.commands.measure">measure</a></code> command afterwards to commence measurements.</dd>
						<dt><code>calibrate-profile</code></dt>
							<dd>Setup calibration &amp; profiling measurements. For non-virtual displays as well as pattern generators (except madVR), call the <code><a href="#scripting.commands.measure">measure</a></code> command afterwards to commence measurements.</dd>
						<dt id="scripting.commands.close"><code>close [window ID | name | label]</code></dt>
							<dd>Close window <code>window</code> or the current active window (if the window is the main window, this quits the application). Note that this tries to abort any running operations first, so you may want to check application state via the <code><a href="#scripting.commands.getstate">getstate</a></code> command.</dd>
						<dt><code>create-colorimeter-correction</code></dt>
							<dd>Create colorimeter correction.</dd>
						<dt><code>create-profile [filename]</code></dt>
							<dd>Create profile from existing measurements (profile or measurement file).</dd>
						<dt><code>curve-viewer [filename]</code></dt>
							<dd>Show curves, optionally loading <code>filename</code>. Relative paths are possible e.g. for presets: <code>curve-viewer presets/photo.icc</code></dd>
						<dt><code>DisplayCAL [filename]</code></dt>
							<dd>Bring the main window to the front. If it is minimized, restore it. Optionally, load <code>filename</code>.</dd>
						<dt><code>enable-spyder2</code></dt>
							<dd>Enable the spyder 2.</dd>
						<dt><code>getactivewindow</code></dt>
							<dd>Get the current active window. The returned format is <code>classname</code> <code>ID</code> <code>name</code> <code>label</code> <code>state</code>. <code>state</code> is either <code>enabled</code> or <code>disabled</code>.</dd>
						<dt><code>getcellvalues [window ID | name | label] &lt;grid ID | name | label&gt;</code></dt>
							<dd>Get cell values from grid <code>grid</code> of window <code>window</code> or the current active window.</dd>
						<dt><code>getappname</code></dt>
							<dd>Get the name of the application you're connected to.</dd>
						<dt><code>getcfg [option]</code></dt>
							<dd>Get configuration <code>option</code>, or whole configuration (key-value pairs in INI format).</dd>
						<dt><code>getcommands</code></dt>
							<dd>Get list of commands supported by this application.</dd>
						<dt><code>getdefault &lt;option&gt;</code></dt>
							<dd>Get default <code>option</code> (key-value pair in INI format).</dd>
						<dt id="scripting.commands.getdefaults"><code>getdefaults</code></dt>
							<dd>Get all defaults (key-value pairs in INI format).</dd>
						<dt id="scripting.commands.getmenus"><code>getmenus</code></dt>
							<dd>Get available menus in the format <code>ID "label" state</code>. <code>state</code> is either <code>enabled</code> or <code>disabled</code>.</dd>
						<dt id="scripting.commands.getmenuitems"><code>getmenuitems [menuposition | label]</code></dt>
							<dd>Get available menu items in the format <code>menuposition</code> <code>"menulabel"</code> <code>menuitemID</code> <code>"menuitemlabel"</code> <code>state</code> <code>[checkable]</code> <code>[checked]</code>. <code>state</code> is either <code>enabled</code> or <code>disabled</code>.</dd>
						<dt id="scripting.commands.getstate"><code>getstate</code></dt>
							<dd>Get application state. Return value will be either <code>idle</code>, <code>busy</code>, <code>dialogclassname</code> <code>ID</code> <code>dialogname</code> <code>[dialoglabel]</code> <code>state</code> <code>"messagetext"</code> <code>[path "path"]</code> <code>[buttons "buttonlabel"...]</code> if a modal dialog is shown or <code>blocked</code> in case the UI is currently blocked. Most commands will not work if the UI is blocked—the only way to resolve the block is to non-programmatically interact with the actual UI elements of the application or closing it. Note that a state of <code>blocked</code> should normally only occur if an actual file dialog is shown. If using the scripting interface exclusively, this should never happen because it uses a replacement file dialog that supports the same actions as a real file dialog, but doesn't block. Also note that a return value of <code>blocked</code> for any of the other commands just means that a modal dialog is currently waiting to be interacted with, only if <code>getstate</code> also returns <code>blocked</code> you cannot resolve the situation with scripting alone.</dd>
						<dt id="scripting.commands.getuielement"><code>getuielement [window ID | name | label] &lt;element ID | name | label&gt;</code></dt>
						<dt id="scripting.commands.getuielements"><code>getuielements [window ID | name | label]</code></dt>
							<dd>Get a single UI element or a list of the visible UI elements of window <code>window</code> or the current active window. Each returned line represents an UI element and has the format <code>classname</code> <code>ID</code> <code>name</code> <code>["label"]</code> <code>state</code> <code>[checked]</code> <code>[value "value"]</code> <code>[items "item"...]</code>. <code>classname</code> is the internal UI library class name. It can help you determine what type of UI element it is, and which interactions it supports. <code>ID</code> is a numeric identifier. <code>name</code> is the name of the UI element. <code>"label"</code> (if present) is a label which further helps in identifying the UI element. You can use the latter three with the <code><a href="#scripting.commands.interact">interact</a></code> command. <code>state</code> is either <code>enabled</code> or <code>disabled</code>. <code>items "item"...</code> (if present) is a list of items connected to the UI element (i.e. selection choices).</dd>
						<dt id="scripting.commands.getvalid"><code>getvalid</code></dt>
							<dd>Get valid values for options that have constraints (key-value pairs in INI format). There are two sections, <code>ranges</code> and <code>values</code>. <code>ranges</code> are the valid ranges for options that accept numeric values (note that integer options not covered by <code>ranges</code> are typically boolean types). <code>values</code> are the valid values for options that only accept certain values. Options not covered by <code>ranges</code> and <code>values</code> are limited to their data type (you can't set a numeric option to a string and vice versa).</dd>
						<dt id="scripting.commands.getwindows"><code>getwindows</code></dt>
							<dd>Get a list of visible windows. The returned format is a list of <code>classname</code> <code>ID</code> <code>name</code> <code>label</code> <code>state</code>. <code>state</code> is either <code>enabled</code> or <code>disabled</code>.</dd>
						<dt><code>import-colorimeter-corrections [filename...]</code></dt>
							<dd>Import colorimeter corrections.</dd>
						<dt><code>install-profile [filename]</code></dt>
							<dd>Install a profile.</dd>
						<dt id="scripting.commands.interact"><code>interact [window ID | name | label] &lt;element ID | name | label&gt; [setvalue value]</code></dt>
							<dd>Interact with the UI element <code>element</code> of window <code>window</code> or the current active window, e.g. invoke a button or set a control to a value.</dd>
						<dt id="scripting.commands.invokemenu"><code>invokemenu &lt;menuposition | menulabel&gt; &lt;menuitemID | menuitemlabel&gt;</code></dt>
							<dd>Invoke a menu item.</dd>
						<dt id="scripting.commands.load"><code>load &lt;filename&gt;</code></dt>
							<dd>Load <code>filename</code>. Relative paths are possible e.g. for presets: <code>load presets/photo.icc</code></dd>
						<dt id="scripting.commands.measure"><code>measure</code></dt>
							<dd>Start measurements (must be setup first!).</dd>
						<dt><code>measure-uniformity</code></dt>
							<dd>Measure screen uniformity.</dd>
						<dt><code>measurement-report [filename]</code></dt>
							<dd>If no filename given, show measurement report tab. Otherwise, setup measurement to create the HTML report <code>filename</code>. For non-virtual displays as well as pattern generators (except madVR), call the <code><a href="#scripting.commands.measure">measure</a></code> command afterwards to commence measurements.</dd>
						<dt><code>profile</code></dt>
							<dd>Setup profiling measurements (note that this will always use the current calibration if applicable, if you want to use linear calibration instead call <code>load linear.cal</code> prior to calling <code>profile</code>). For non-virtual displays as well as pattern generators (except madVR), call the <code><a href="#scripting.commands.measure">measure</a></code> command afterwards to commence measurements.</dd>
						<dt><code>profile-info [filename]</code></dt>
							<dd>Show profile information, optionally loading profile <code>filename</code>. Relative paths are possible e.g. for presets: <code>profile-info presets/photo.icc</code></dd>
						<dt id="scripting.commands.refresh"><code>refresh</code></dt>
							<dd>Update the GUI after configuration changes via <code><a href="#scripting.commands.setcfg">setcfg</a></code> or <code><a href="#scripting.commands.restore-defaults">restore-defaults</a></code>.</dd>
						<dt><code>report-calibrated</code></dt>
							<dd>Report on calibrated display. For non-virtual displays as well as pattern generators (except madVR), call the <code><a href="#scripting.commands.measure">measure</a></code> command afterwards to commence measurements.</dd>
						<dt><code>report-uncalibrated</code></dt>
							<dd>Report on uncalibrated display. For non-virtual displays as well as pattern generators (except madVR), call the <code><a href="#scripting.commands.measure">measure</a></code> command afterwards to commence measurements.</dd>
						<dt id="scripting.commands.restore-defaults"><code>restore-defaults [category...]</code></dt>
							<dd>Restore defaults globally or just for <code>category</code>. Call <code><a href="#scripting.commands.refresh">refresh</a></code> after changing the configuration to update the GUI.</dd>
						<dt id="scripting.commands.setlanguage"><code>setlanguage &lt;languagecode&gt;</code></dt>
							<dd>Set language.</dd>
						<dt id="scripting.commands.setcfg"><code>setcfg &lt;option&gt; &lt;value&gt;</code></dt>
							<dd>Set configuration <code>option</code> to <code>value</code>. The special value <code>null</code> clears a configuration option. Call <code>refresh</code> after changing the configuration to update the GUI. Also see <code><a href="#scripting.commands.getdefaults">getdefaults</a></code> and <code><a href="#scripting.commands.getvalid">getvalid</a></code>.</dd>
						<dt id="scripting.commands.setresponseformat"><code>setresponseformat &lt;format&gt;</code></dt>
							<dd>Set the format for responses. The default <code>plain</code> is a text format that is easy to read, but not necessarily the best for parsing programmatically. The other possible formats are <code>json</code>, <code>json.pretty</code>, <code>xml</code> and <code>xml.pretty</code>. The <code>*.pretty</code> formats use newlines and indentation to make them easier to read.</dd>
						<dt><code>synthprofile [filename]</code></dt>
							<dd>Show synthetic profile creation window, optionally loading profile <code>filename</code>.</dd>
						<dt><code>testchart-editor [filename | create filename]</code></dt>
							<dd>Show testchart editor window, optionally loading or creating testchart <code>filename</code>. Relative paths are possible e.g. for loading a default testchart: <code>testchart-editor ti1/d3-e4-s17-g49-m5-b5-f0.ti1</code></dd>
						<dt><code>verify-calibration</code></dt>
							<dd>Verify calibration. For non-virtual displays as well as pattern generators (except madVR), call the <code><a href="#scripting.commands.measure">measure</a></code> command afterwards to commence measurements.</dd>
					</dl>
				</div>
			</div>
			
			<h3>Interacting with UI elements</h3>
			
			<ul>
				<li>Invoking a button: <code><a href="#scripting.commands.interact">interact</a> [window] &lt;button&gt;</code> e.g. show profile name placeholders information: <code><a href="#scripting.commands.interact">interact</a> mainframe profile_name_info_btn</code></li>
				<li>Setting a value on a dropdown, text field, or slider: <code><a href="#scripting.commands.interact">interact</a> [window] &lt;element&gt; setvalue "value"</code> e.g. set calibration gamma to 2.4: <code><a href="#scripting.commands.interact">interact</a> mainframe trc_textctrl setvalue 2.4</code> (note that for changing multiple options at once it is generally preferable to call <code><a href="#scripting.commands.setcfg">setcfg</a> &lt;option&gt; &lt;value&gt;</code> for each option you want to set followed by a single <code><a href="#scripting.commands.refresh">refresh</a></code> instead)</li>
				<li>Setting a cell value on a grid: <code><a href="#scripting.commands.interact">interact</a> [window] &lt;grid&gt; setvalue "row,col,value"</code> e.g. while the testchart editor is shown, set the cell at the second column of the first row to 33: <code><a href="#scripting.commands.interact">interact</a> tcgen grid setvalue "0,1,33"</code></li>
			</ul>
			
			<h3>Caveats and limitations</h3>
			
			<p>There are a few things to be aware of when using commands that interact with the UI directly (i.e. <code><a href="#scripting.commands.activate">activate</a></code>, <code><a href="#scripting.commands.dialogactions">alt | cancel | ok</a></code>, <code><a href="#scripting.commands.close">close</a></code>, <code><a href="#scripting.commands.interact">interact</a></code> and <code><a href="#scripting.commands.invokemenu">invokemenu</a></code>).</p>
			
			<p><strong>Referring to windows and UI elements:</strong> You can refer to windows and UI elements by their ID, name or label (you can find out about windows and UI elements with the <code><a href="#scripting.commands.getmenus">getmenus</a></code>/<code><a href="#scripting.commands.getmenuitems">getmenuitems</a></code>, <code><a href="#scripting.commands.getuielement">getuielement</a></code>/<code><a href="#scripting.commands.getuielements">getuielements</a></code>, and <code><a href="#scripting.commands.getwindows">getwindows</a></code> commands). If an object's ID is negative, it means that it has been automatically assigned at object creation time and is only valid during the lifetime of the object (i.e. for modal dialogs, only while the dialog is displayed). For this reason, using an object's name instead is easier, but names (aswell as non automatically assigned IDs) are not guaranteed to be unique, even for objects which share the same parent window (although most of the “important” controls as well as application windows will have unique names). Another possibility is to use an object's label, which while also not guaranteed to be unique, still has a fairly high likelihood of being unique for controls that share the same parent window, but has the drawback that it is localized (although you can ensure a specific UI language by calling <code><a href="#scripting.commands.setlanguage">setlanguage</a></code>) and is subject to change when the localization is updated.</p>
			
			<p><strong>Sequential operations:</strong> Calling commands that interact with the UI in rapid succession may require the use of additional delays between sending commands to allow the GUI to react (so <code><a href="#scripting.commands.getstate">getstate</a></code> will return the actual UI state after a specific command), although there is a default delay for commands that interact with the UI of atleast 55 ms. A good rule of thumb for sending commands is to use a “send command” → “read response” → “optionally wait a few extra ms” → “get application state (send <code><a href="#scripting.commands.getstate">getstate</a></code> command)” → “read response” cycle.</p>
			
			<p><strong>Setting values:</strong> If setting a value on an UI element returns <code>ok</code>, this is not always an indication that the value was actually changed, but only that the attempt to set the value has not failed, i.e. the event handler of the element may still do error checking and change the value to something sane if it was not valid. If you want to make sure that the intended value is set, use <code><a href="#scripting.commands.getuielement">getuielement</a></code> on the affected element(s) and check the value (or even better, if you use <a href="#scripting.commands.setresponseformat">JSON or XML response format</a>, you can check the <code>object</code> property/element of the response instead which will reflect the object's current state and saves you one request). In general it is preferable to use <code><a href="#scripting.commands.interact">interact</a> &lt;elementname&gt; setvalue &lt;value&gt;</code> only on dialogs, and in all other cases use a sequence of <code><a href="#scripting.commands.setcfg">setcfg</a> &lt;option&gt; &lt;value&gt;</code> (repeat as necessary, optionally call <code><a href="#scripting.commands.load">load</a> &lt;filename&gt;</code> or <code><a href="#scripting.commands.restore-defaults">restore-defaults</a></code> first to minimize the amount of configuration options that you need to change) followed by a call to <code><a href="#scripting.commands.refresh">refresh</a></code> to update the UI.</p>
			
			<p>Also, not all controls may offer a comprehensive scripting interface. I'm open to suggestions though.</p>
		</div>

		<div id="userdata">
			<h2>User data and configuration file locations</h2>
			
			<p>DisplayCAL uses the following folders for configuration, logfiles and storage (the storage directory is configurable). <strong>Note</strong> that if you have upgraded to DisplayCAL from dispcalGUI, that DisplayCAL will continue to use the existing dispcalGUI directories and configuration file names (so replace DisplayCAL with dispcalGUI in the lists below).</p>
			
			<h3 id="configuration">Configuration</h3>
			<ul>
				<li>Linux:
					<samp>/home/<var>Your Username</var>/.config/DisplayCAL</samp></li>
				<li>Mac OS X:
					<samp>/Users/<var>Your Username</var>/Library/Preferences/DisplayCAL</samp></li>
				<li>Windows Vista and newer:
					<samp>C:\Users\<var>Your Username</var>\AppData\Roaming\DisplayCAL</samp></li>
				<li>Windows XP:
					<samp>C:\Documents and Settings\<var>Your Username</var>\Application Data\DisplayCAL</samp></li>
			</ul>
			
			<h3 id="logs">Logs</h3>
			<ul>
				<li>Linux:
					<samp>/home/<var>Your Username</var>/.local/share/DisplayCAL/logs</samp></li>
				<li>Mac OS X:
					<samp>/Users/<var>Your Username</var>/Library/Logs/DisplayCAL</samp> and<br />
					<samp>/Users/<var>Your Username</var>/Library/Logs/0install</samp></li>
				<li>Windows Vista and newer:
					<samp>C:\Users\<var>Your Username</var>\AppData\Roaming\DisplayCAL\logs</samp></li>
				<li>Windows XP:
					<samp>C:\Documents and Settings\<var>Your Username</var>\Application Data\DisplayCAL\logs</samp></li>
			</ul>
			
			<h3 id="storage">Storage</h3>
			<ul>
				<li>Linux:
					<samp>/home/<var>Your Username</var>/.local/share/DisplayCAL/storage</samp></li>
				<li>Mac OS X:
					<samp>/Users/<var>Your Username</var>/Library/Application Support/DisplayCAL/storage</samp></li>
				<li>Windows Vista and newer:
					<samp>C:\Users\<var>Your Username</var>\AppData\Roaming\DisplayCAL\storage</samp></li>
				<li>Windows XP:
					<samp>C:\Documents and Settings\<var>Your Username</var>\Application Data\DisplayCAL\storage</samp></li>
			</ul>
			
			<h3 id="incomplete">Incomplete/failed runs (useful for troubleshooting)</h3>
			<ul>
				<li>Linux:
					<samp>/home/<var>Your Username</var>/.local/share/DisplayCAL/incomplete</samp></li>
				<li>Mac OS X:
					<samp>/Users/<var>Your Username</var>/Library/Application Support/DisplayCAL/incomplete</samp></li>
				<li>Windows Vista and newer:
					<samp>C:\Users\<var>Your Username</var>\AppData\Roaming\DisplayCAL\incomplete</samp></li>
				<li>Windows XP:
					<samp>C:\Documents and Settings\<var>Your Username</var>\Application Data\DisplayCAL\incomplete</samp></li>
			</ul>
		</div>

		<div id="issues">
			<h2>Known issues and solutions</h2>

			<ul>
				<li><a href="#issue-redgreenswapped">General: Wacky image colors (swapped colors)</a></li>
				<li><a href="#issue-samplereadfail">General: Measurements are failing if using the “Allow skipping of spectrometer self-calibration” option and/or highres/adaptive mode</a></li>
				<li><a href="#issue-usb3connectivity">USB 3.0 connectivity issues (instrument not found, access failing, or not working properly)</a></li>
				<li><a href="#issue-win-process-startfail">Windows: “The process &lt;dispcal.exe|dispread.exe|coloprof.exe|...&gt; could not be started.”</a></li>
				<li><a href="#issue-win-photoshop-monprofdefect">Photoshop: “The monitor profile […] appears to be defective. Please rerun your monitor calibration software.”</a></li>
				<li><a href="#issue-win-uac-cal-reset">MS Windows Vista: The calibration gets unloaded when a User Access Control prompt is shown</a></li>
				<li><a href="#issue-win-intel-cal-reset">MS Windows with Intel graphics: The Calibration gets unloaded after login/resume/User Access Control prompt</a></li>
				<li><a href="#issue-win-user-profile-not-used">MS Windows Vista and later: The display profile isn't used if it was installed for the current user</a></li>
				<li><a href="#issue-win7-autoloadcalibration">MS Windows 7 or later: Calibration does not load automatically on login when not using the DisplayCAL Profile Loader</a></li>
				<li><a href="#issue-winxp-multidisplay">MS Windows XP, multiple displays: One profile is used by all displays connected to a graphics card</a></li>
				<li><a href="#issue-mac-dispcalgui-0install-elcapitan">Mac OS X: If running via 0install, DisplayCAL won't launch anymore under Mac OS X 10.11 “El Capitan”</a></li>
				<li><a href="#issue-mac-dispcalgui-damaged">Mac OS X: DisplayCAL.app is damaged and can't be opened.</a></li>
				<li><a href="#issue-mac-pscursor">Photoshop CS3 (Mac OS X): The brush cursor looks funny (box around brush)</a></li>
				<li><a href="#issue-linux-lutaccess">Linux/Windows: No video card gamma table access (“Calibrate &amp; profile” button grayed despite display and instrument detected)</a></li>
				<li><a href="#issue-linux-libmtp">Linux: Instrument not working correctly/constantly disconnecting (conflict with libmtp)</a></li>
			</ul>

			<dl>
				<dt id="issue-redgreenswapped"><span>General:</span> Wacky image colors (swapped colors)</dt>
				<dd><strong>Solution:</strong> This happens when you created a “XYZ LUT + swapped matrix” profile and is a way to alert you that the software you're using does not support XYZ LUT profiles and falls back to the included matrix (which generally means you'd loose accuracy). If you're having this situation only in some applications, creating a “XYZ LUT + matrix” profile will remedy it (but please keep in mind that those applications not supporting XYZ LUT will still fall back to the matrix, so results can be different from applications that support XYZ LUT correctly). If all colormanaged applications you use show swapped colors, you should create a matrix profile instead. Note that you do not have to re-run any measurements: In DisplayCAL, choose a profile type as suggested previously, adjust quality and profile name if you want, then choose “Create profile from measurement data...” in the “Options” menu and select the profile you had the issue with.</dd>

				<dt id="issue-samplereadfail"><span>General:</span> Measurements are failing (“Sample read failed”) if using the “Allow skipping of spectrometer self-calibration” option and/or highres/adaptive mode</dt>
				<dd><strong>Solution:</strong> Disable either or all of the above options. The problem seems to mainly occur with the ColorMunki.</dd>

				<dt id="issue-usb3connectivity"><span>USB 3.0</span> connectivity issues (instrument not found, access failing, or not working properly)</dt>
				<dd>Such issues would usually manifest themselves through instruments not being found, or randomly disconnecting even if seemingly working fine for some time. From all information that is known about these issues, they seem to be related to USB 3.0, not related to software as the vendor software is also affected, and they seem to occur irrespective of operating system or device drivers.<br />
The underlying issue seems to be that while USB 3.0 has been designed to be backwards compatible with USB 2.0, some USB 2 devices do not seem to work reliably when connected over USB 3. As currently available instruments with USB connectivity are usually USB 2 devices, they may be affected.<br />
<strong>Solution:</strong> A potential solution to such USB 3.0 connectivity issues is to connect the instrument to a USB 2.0 port (if available) or the use of an externally powered USB 2.0 hub.</dd>

				<dt id="issue-win-process-startfail"><span>Windows:</span> “The process &lt;dispcal.exe|dispread.exe|coloprof.exe|...&gt; could not be started.”</dt>
				<dd><strong>Solution:</strong> If you downloaded Argyll CMS manually, go to your Argyll_VX.X.X\bin directory, and right-click the exe file from the error message. Select “Properties”, and then if there is a text on the “General” tab under security “This file came from another computer and might be blocked”, click “Unblock”. Sometimes also over-zealous Antivirus or 3rd-party Firewall solutions cause such errors, and you may have to add exceptions for all involved programs (which may include all the Argyll CMS executables and if you're using Zero Install also python.exe which you'll find in a subdirectory under C:\ProgramData\0install.net\implementations) or (temporarily) disable the Antivirus/Firewall.</dd>

				<dt id="issue-win-photoshop-monprofdefect"><span>Photoshop:</span> “The monitor profile […] appears to be defective. Please rerun your monitor calibration software.”</dt>
				<dd><strong>Solution:</strong> Adobe ACE, Adobe's color conversion engine, contains monitor profile validation functionality which attempts to filter out bad profiles. With XYZ LUT profiles created in Argyll CMS versions up to 1.3.2, the B2A white point mapping is sometimes not particularly accurate, just enough so that ACE will see it as a problem, but in actual use it may only have little impact that the whitepoint is a bit off. So if you get a similar message when launching Photoshop, with the options “Use profile regardless” and “Ignore profile”, you may choose “Use profile regardless” and check visually or with the pipette in Photoshop if the inaccurate whitepoint poses a problem. This issue is fixed in Argyll CMS 1.3.3 and newer. Alternatively, you can create a L*a*b* LUT profile.</dd>

				<dt id="issue-win-uac-cal-reset"><span>MS Windows Vista:</span> The calibration gets unloaded when a User Access Control prompt is shown</dt>
				<dd><strong>Solution:</strong> (Intel and Intel/AMD hybrid graphics users please see <a href="#issue-win-intel-cal-reset">“The Calibration gets unloaded after login/resume/User Access Control prompt”</a> first) This Windows Vista bug seems to have been fixed under Windows 7 (and later), and can be remedied under Vista by either manually reloading calibration, or disabling UAC—but please note that you sacrifice security by doing this. To manually reload the calibration, either open DisplayCAL and select “Load calibration curves from current display profile” in the “Options” menu, or (quicker) open the Windows start menu and select “DisplayCAL Profile Loader” in the “Startup” subfolder. To disable <abbr title="User Access Control">UAC<sup><a href="#definition_UAC">[9]</a></sup></abbr> (not recommended!), open the Windows start menu and enter “msconfig” in the search box. Click on the Tools tab. Select the line “Disable UAC” and click the “Launch” button. Close msconfig. You need to reboot your system for changes to apply.</dd>
				
				<dt id="issue-win-intel-cal-reset"><span>MS Windows with Intel graphics (also Intel/AMD hybrid):</span> The Calibration gets unloaded after login/resume/User Access Control prompt</dt>
				<dd><strong>Solution:</strong> The Intel graphics drivers contain several utilities that interfere with correct calibration loading. A workaround is to rename, move or disable (e.g. using a tool like <a href="http://technet.microsoft.com/en-us/sysinternals/bb963902">AutoRuns</a>) the following files:
				<pre><code>C:\Windows\system32\igfxtray.exe
C:\Windows\system32\igfxpph.dll
C:\Windows\system32\igfxpers.exe</code></pre></dd>

				<dt id="issue-win-user-profile-not-used"><span>MS Windows Vista and later:</span> The display profile isn't used if it was installed for the current user</dt>
				<dd><strong>Solution:</strong> Open the Windows start menu, select “Control Panel”, then “Color Management” (you may have to select “Classic View” under Vista and anything other than “Category View” under Windows 7 and later to see it). Under the “Devices” tab, select your display device, then tick “Use my settings for this device”.</dd>

				<dt id="issue-win7-autoloadcalibration"><span>MS Windows 7 or later:</span> Calibration does not load automatically on login when not using the DisplayCAL Profile Loader</dt>
				<dd><strong>Solution:</strong> Open the Windows start menu, select “Control Panel”, then “Color Management” (you may have to select something other than “Category View” to see it). Select the “Advanced” tab, then “Change system defaults...”, and finally tick the “Use Windows display calibration” checkbox. <strong>Note</strong> that the precision of Windows' built-in calibration loading is <strong>inferior</strong> compared to the DisplayCAL profile loader and may introduce inaccuracies and artifacts.</dd>

				<dt id="issue-winxp-multidisplay"><span>MS Windows XP, multiple displays:</span> One profile is used by all displays connected to a graphics card</dt>
				<dd><strong>Solution:</strong> The underlying issue is that Windows XP assigns color profiles per (logical) graphics card, not per output. Most XP graphics drivers present only one logical card to the OS even if the card itself has multiple outputs. There are several possible solutions to this problem:
					<ul>
						<li>Use different graphics cards and connect only one display to each (this is probably the preferable solution in terms of ease of use and is least prone to configuration error)</li>
						<li>Install and use the <a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=1e33dca0-7721-43ca-9174-7f8d429fbb9e">Windows XP color control applet</a></li>
						<li>Some graphics cards, like the Matrox Parhelia APV (no longer produced), will expose two logical cards to the OS when using a specific vendor driver (some older ATI drivers also had this feature, but it seems to have been removed from newer ones)</li>
					</ul>
				</dd>

				<dt id="issue-mac-dispcalgui-0install-elcapitan"><span>Mac OS X:</span> If running via 0install, DisplayCAL won't launch anymore under Mac OS X 10.11 “El Capitan”</dt>
				<dd><strong>Solution:</strong>

					<ol>
						<li>Run the “0install Launcher” application from the DisplayCAL-0install.dmg disk image.</li>
						<li>Click “Refresh”, then “Run”. An updated library will be downloaded, and DisplayCAL should launch.</li>
						<li>From now on, you can start DisplayCAL normally as usual.</li>
					</ol>
				</dd>

				<dt id="issue-mac-dispcalgui-damaged"><span>Mac OS X:</span> DisplayCAL.app is damaged and can't be opened.</dt>
				<dd><strong>Solution:</strong> Go to the “Security &amp; Privacy” settings in System Preferences and set “Allow applications downloaded from” (under the “General” tab) to the “Anywhere” setting. After you have successfully launched DisplayCAL, you can change the setting back to a more secure option and DisplayCAL will continue to run properly.</dd>

				<dt id="issue-mac-pscursor"><span>Photoshop CS3 (Mac OS X):</span> Under Mac OS X, the brush cursor in Photoshop CS3 looks funny (box around brush)</dt>
				<dd><strong>Solution:</strong> This seems to be a bug which shows with <abbr title="Look Up Table">LUT<sup><a href="#definition_LUT">[7]</a></sup></abbr>-type profiles that have only one rendering intent. You can try to overcome it by selecting “Advanced...” next to the profile type dropdown, selecting an existing <abbr title="International Color Consortium">ICC<sup><a href="#definition_ICC">[5]</a></sup></abbr> profile as source (for hints as to which profile to select, see  “<a href="#settings_profiling_gamutmapping">Advanced gamut mapping options</a>”) and tick at least one of the “Enhance effective resolution of colorimetric <abbr title="Profile Connection Space">PCS<sup><a href="#definition_PCS">[11]</a></sup></abbr>-to-device table” or “Apply gamut mapping to” checkboxes before profiling. To do that for an existing profile, adjust quality and profile name if you want, choose “Create profile from measurement data...” from the “Options” menu and select the profile. Note that this does not always solve the issue. Trying another profile type (XYZ LUT instead of L*a*b* LUT) might also help.</dd>				

				<dt id="issue-linux-lutaccess"><span>Linux/Windows:</span> No video card gamma table access (“Calibrate only” and “Calibrate &amp; profile” buttons grayed, “Profile only” button available)</dt>
				<dd><strong>Solution:</strong> Make sure you have not selected a display that doesn't support calibration (i.e. “Web @ localhost” or “Untethered”) and that you have enabled “Interactive display adjustment” or set the tone curve to a different value than “As measured”. Under Linux, please refer to the Argyll CMS documentation, “<a href="http://argyllcms.com/doc/Installing_Linux.html">Installing the software on Linux with X11</a>” and “Note on X11 multi-monitor setups” / “Fixing access to Video LUTs” therein. Under Windows, please also see the solution posted under “<a href="#issue-win-user-profile-not-used">The display profile isn't used if it was installed for the current user</a>” if you are using Windows and make sure you have a recent driver for your video card installed.</dd>

				<dt id="issue-linux-libmtp"><span>Linux:</span> Instrument not working correctly/constantly disconnecting (conflict with libmtp)</dt>
				<dd><strong>Solution:</strong> There is a bug on some systems with libmtp that causes instruments to continuously switch between connected and disconnected state.
				This seems to be a <a href="http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=626010">bug in libmtp-runtime</a>.
				You can work around it by renaming <code>/lib/udev/mtp-probe</code> or updating to libmtp 1.0.6 where the issue should be fixed.</dd>
			</dl>
		</div>

		<div id="help">
			<h2>Get help</h2>

			<p>Need help with a specific task or problem? It may be a good idea to first check the <a href="#issues">known issues &amp; solutions</a> if the topic has been covered.
			If you want to report a bug, please see the <a href="#reportbug">guidelines on bug reporting</a>. Otherwise, feel free to use one of the following channels:</p>

			<ul>
				<li><a href="http://displaycal.net/forums/forum/help-and-support/">Help &amp; support forum</a></li>
				<li><a href="https://lists.sourceforge.net/lists/listinfo/dispcalgui-users">dispcalgui-users mailing list</a></li>
				<li>Contact me directly via E-Mail: <a>florian ‹at› displaycal . net</a> (but keep in mind other users may also benefit from exchanges, so I'm encouraging the use one of the above channels if possible)</li>
			</ul>
		</div>

		<div id="reportbug">
			<h2>Report a bug</h2>

			<p>Found a bug? If so, please first check the <a href="http://displaycal.net/issues/">issue tracker</a>, it may have been reported already.
			Otherwise, please follow these guidelines for reporting bugs:</p>

			<ul>
				<li>Try to give a <strong>short, but concise summary of the problem</strong>.</li>
				<li>Try to give some <strong>steps to reproduce the problem</strong>.</li>
				<li>Always <strong>attach logfiles</strong> if possible. They are usually automatically created by DisplayCAL as part of normal program operation. The easiest way to do that is to choose “Show log” from the “Tools” menu and then click the “Create compressed archive...” button (<strong>not</strong> the “Save as...” button as this will only save the session log) on the log window. You can also find the logfiles here:
					<ul>
						<li>Linux:
							<samp>/home/<var>Your Username</var>/.local/share/DisplayCAL/logs</samp></li>
						<li>Mac OS X:
							<samp>/Users/<var>Your Username</var>/Library/Logs/DisplayCAL</samp> and<br />
							<samp>/Users/<var>Your Username</var>/Library/Logs/0install</samp></li>
						<li>Windows Vista and newer:
							<samp>C:\Users\<var>Your Username</var>\AppData\Roaming\DisplayCAL\logs</samp></li>
						<li>Windows XP:
							<samp>C:\Documents and Settings\<var>Your Username</var>\Application Data\DisplayCAL\logs</samp></li>
					</ul>
					<p>As the folder may contain several logfiles, it is a good idea to compress the whole folder to a ZIP or tar.gz archive that you can easily attach to a bug report.</p>
					<p><em>Please note the logfiles may contain your username as well as paths of files you may have used in DisplayCAL. I will respect your privacy at all times, but you may want to consider this when attaching logfiles to public places like the <a href="http://displaycal.net/issues/">issue tracker</a>.</em></p>
				</li>
			</ul>
			<p>Create a new ticket (or if the bug has been reported already, use the existing ticket) at the <a href="http://displaycal.net/issues/">issue tracker</a>, following the guidelines above, and attach the logfiles archive.</p>

			<p>If you don't want to or can't use the bug tracker, feel free to use one of the <a href="#help">other support channels</a>.</p>
		</div>

		<div id="discuss">
			<h2>Discussion</h2>

			<p>Do you want to get in touch with me or other users regarding DisplayCAL or related topics? The <a href="http://displaycal.net/forums/forum/general-discussion/">general discussion forum</a> or <a href="https://lists.sourceforge.net/lists/listinfo/dispcalgui-users">dispcalgui-users mailing list</a> is a good place to do so. You can also contact me directly via E-Mail: <a>florian ‹at› displaycal . net</a>.</p>
		</div>

		<div id="todo">
			<h2>To-Do / planned features (in no particular order)</h2>

			<ul>
				<li>On first launch, guide user through basic setup using a wizard (postpone DisplayCAL update check until after wizard has run?):
					<ul>
						<li><del>Check Argyll CMS availability, if not available or outdated, offer automatic download &amp; installation (consider 0install/native Linux distribution packages?)</del> (implemented)</li>
						<li>Windows only: Install instrument drivers if necessary (probably need to check if already installed)</li>
						<li>Check available instruments and instrument capabilities</li>
						<li>Do instrument specific first launch stuff:
							<ul>
								<li><del>Import OEM files</del> (implemented)</li>
								<li>Choose/create colorimeter correction if applicable</li>
							</ul>
						</li>
					</ul>
				</li>
				<li>When an instrument is first selected:
					<ul>
						<li><del>Check if OEM files from the vendor software have already been imported (if applicable); if not, offer to do it.</del> (implemented in v2.1.1.3 Beta and newer, after detecting instruments)</li>
						<li>Check colorimeter corrections if applicable (from respective vendor software and online database, skip the latter if a spectro is available), in case of no usable specific or generic correction, offer to create one if possible, preferably using spectro measurements as reference, EDID as user-selectable fallback? (Need to sanity-check EDID red/green/blue/white xy coordinates in that case! Possibly against sRGB and AdobeRGB as the most commonly cited gamuts for standard gamut and wide-gamut displays? As some cheaper panels and many of those found in Laptops/Notebooks are sometimes very limited in gamut, additionally a special “low-gamut RGB” may be needed)</li>
						<li>Users need to be made aware of the implications their colorimeter correction choice has, e.g.
							<ul>
								<li>When using a correction created from spectral reference measurements of the specific display (user needs a spectro): Usually very good accuracy/match to user's specific display/instrument combination</li>
								<li>When using a vendor-supplied generic correction: Good (?) (e.g. i1 DisplayPro, ColorMunki Display) to poor (?) (e.g. i1 Display 1/2/LT, Huey, ColorHug) accuracy/match to user's specific display/instrument combination, in case of CCSS considered preferable to corrections supplied by other users because of lab-grade equipment (high spectral resolution) used by vendor.</li>
								<li>When using a correction supplied by another user for the same display/instrument combination: Good (?) (e.g. i1 DisplayPro, ColorMunki Display, DTP94) to poor (?) (e.g. i1 Display 1/2/LT, Huey, ColorHug) accuracy/match to user's specific display/instrument combination</li>
								<li>When using EDID of the specific display as reference: Moderate (?) to poor (?) accuracy/match to user's specific display/instrument combination (could be ok match, could be awful, but should in most cases still be able to fix problems like e.g. ColorHug red sensitivity so may be ok as last resort)</li>
							</ul>
						</li>
					</ul>
				</li>
				<li><del>When trying to import colorimeter corrections or enable the Spyder 2, have automatic mode download the vendor software if needed.</del> (implemented in v2.1.1.2 Beta and newer)</li>
				<li>(Long-term) improve UI.</li>
				<li><del>Better interface to <a href="http://projects.gnome.org/gnome-color-manager/">GNOME Color Manager</a></del> (implemented in v0.8.1.0+)</li>
				<li><del>Measure and report on screen homogenity / evenness of illumination</del></li>
				<li><del>Get rid of the terminal and implement a proper GUI for the interactive part of calibration</del> (implemented in v0.8.5.6+)</li>
				<li><del>Better user interface for profile verification: If a test set contains multiple value formats (CMYK, RGB, XYZ, L*a*b*), allow selection which one(s) should be used in a “setup” window</del> (“setup” window implemented in v1.5.6.9+, value format selection added in v1.6.3.5)</li>
				<li>Add gamut coverage percentages to the profile verification report if the test set contains reference values (not *.ti1): Calculate profiles from test set and verification measurements on-the-fly and create gamut volumes from test set profile, evaluated profile, and verification measurements profile using Argyll's <code>iccgamut</code> tool. Compare gamut volumes using Argyll's <code>viewgam</code> tool with <code>-i</code> option and include the results in the report (coverage calculation for test set reference and profile to be evaluated could be done before the actual measurements and also shown in the yet-to-be-implemented profile verification “setup” window).</li>
				<li><del>Complete the documentation in the README</del></li>
				<li>German language README (postponed)</li>
				<li><del>Profile verification (feed XYZ or L*a*b* to display profile, display 
					corresponding RGB values, measure, output Delta E)</del> (implemented in v0.3.6+)</li>
				<li><del>“Before” / “After” switch when calibration / profiling complete</del> (implemented in v0.2+)</li>
				<li><del>Store all settings in profile, allow loading of settings from profile in 
					addition to <code>.cal</code> file</del> (implemented in v0.2+)</li>
				<li><del>Document the code</del> (code documentation could still be enhanced, for now it'll do)</li>
				<li><del>Code cleanup</del> (mostly done)</li>
			</ul>
		</div>

		<div id="thanks">
			<h2>Thanks and acknowledgements</h2>

			<p>I would like to thank the following people:</p>

			<p>Graeme Gill, for creating Argyll CMS</p>

			<p>Translators: Loïc Guégant, François Leclerc (french translation),
			Roberto Quintero (spanish translation),
			Tommaso Schiavinotto (italian translation)</p>

			<p>Recent contributors:
Toni Kettula,
Peter Varo,
Matt Nelson,
Chris Daughtry,
Ilie Florin Catarama,
Pierre Dubertrand,
Joseph Wohlscheid,
Harald Puerzel,
Riley Brandt Photography,
Harald Hugenschmidt,
Visceral Psyche Films,
David Tiroletto,
alain perrier,
Jens Hartwig,
Carlos Mazon,
Ian Castledine,
Alberto Caso,
Franz Senftl,
Sarah Gerweck
<a href="#more_donors" onclick="document.getElementById('more_donors').style.display = 'inline'; this.style.display = 'none'; return false" style="cursor: pointer">more...</a><span id="more_donors" style="display: none">
Jürgen Gallus,
Jonas Wagner,
Mind On Photography LLC,
Ehtesham Haque,
Paolo Francesco Cavestro,
Heiko Thies,
Dae Hyun An,
Stephen Schaffner,
Carmelo D'Agostino,
Jorge Luis Recalde Mesías,
Swee Oon,
Nikolay Baronov,
Jürgen Diez,
Joel Lehmann,
John Hawkins,
Rebecca Jackson,
Eric Crawford</span></p>

			<p>And everyone who sent me feedback or bug reports, suggested features, or simply uses DisplayCAL.</p>

			<p class="h">Acknowledgements</p>

			<p>Part of the comprehensive Argyll CMS documentation has been used in this document, and was only slightly altered to better fit DisplayCAL's behavior and notations.</p>
		</div>

		<div id="changelog">
			<h2>Changelog</h2>
			<!-- 2016-02-01 00:32 (UTC) 3.1  -->
			<dl>
				<dt id="changelog-3.1">2016-02-01 00:32 (UTC) 3.1 </dt>
					<dd>
						<h3>3.1 </h3>

						<h4>dispcalGUI has been renamed to DisplayCAL.</h4>

						<p><strong>If you upgrade using 0install under Linux:</strong> It is recommended that you download the respective <a href="http://displaycal.net/#download">DisplayCAL-0install package</a> for your distribution and install it so that the applications accessible via the menu of your desktop environment are updated properly.</p>

						<p><strong>If you upgrade using 0install under Mac OS X:</strong> It is recommended that you delete existing dispcalGUI application icons, then download the <a href="http://displaycal.net/download/DisplayCAL-0install.dmg">DisplayCAL-0install.dmg</a> disk image to get updated applications.</p>

						<h4>Added in this release:</h4>
						<ul>
							<li><strong>Better HiDPI support.</strong> All text should now be crisp on HiDPI displays (with the exception of axis labels on curve and gamut graphs under Mac OS X). Icons will be scaled according to the scaling factor or DPI set in the display settings under Windows, or the respective (font) scaling or DPI system setting under Linux. Icons will be scaled down or up from their 2x version if a matching size is not available. Note that support for crisp icons in HiDPI mode is currently not available in the GTK3 and Mac OS X port of wxPython/wxWidgets. Also note that if you run a multi-monitor configuration, the application is system-DPI aware but not per-monitor-DPI aware, which is a limitation of wxPython/wxWidgets (under Windows, you will need to log out and back in after changing DPI settings for changes to take effect in DisplayCAL).</li>
							<li>When having created a compressed archive of a profile and related files, it can now also be imported back in via drag'n'drop or the “Load settings...” menu entry and respective button.</li>
							<li>Argyll CMS can be automatically downloaded and updated.</li>
							<li>A compressed logs archive can be created from the log window.</li>
							<li><strong>Windows: New profile loader.</strong> It will stay in the taskbar tray and automatically reload calibration if the display configuration changes or if the calibration is lost (although fullscreen Direct3D applications can still override the calibration). It can also automatically fix profile associations when switching from a multi-monitor configuration to a single display and vice versa (only under Vista and later). In addition, the profile loader is <a href="http://madvr.com/">madVR</a>-aware and will disable calibration loading if it detects e.g. madTPG or madVR being used by a video player.</li>
						</ul>
						<h4>Changed in this release:</h4>
						<ul>
							<li>Changed default calibration speed from “Medium” to “Fast”. Typically this cuts calibration time in half, while the accuracy difference is negligible at below 0.2 delta E.</li>
							<li>Enabled “Enhance effective resolution of PCS to device tables” and smoothing for L*a*b* LUT profiles.</li>
						</ul>
						<h4>Fixed in this release:</h4>
						<ul>
							<li>In some cases, importing colorimeter corrections from the vendor software CD could fail (falling back to downloading them from the web).</li>
							<li>Moving the auto testchart patches slider to a value that changed the profile type did not update BPC accordingly (shaper+matrix defaults to BPC on).</li>
							<li>Minor: Safari/IE messed up positioning of CCT graph vertical axis labels in measurement reports.</li>
							<li>Minor: When clicking the “Install profile” button while not on the 3D LUT tab, and “Create 3D LUT after profiling” is enabled, don't create a 3D LUT.</li>
							<li>Minor: When changing profile type, only change the selected testchart if needed, and default to “Auto” for all profile types.</li>
							<li>Minor: 1st launch defaults were slightly different from what was intended (testchart should be “Auto”).</li>
							<li>Minor: Use OS line separator when writing configuration files.</li>
							<li>Linux: Text and icon sizes should be more consistent accross the application when the system text scaling or DPI has been adjusted (application restart required).</li>
							<li>Linux: Fall back to use the XrandR display name for colord device IDs if EDID is not available.</li>
							<li>Linux/Mac OS X: madVR test pattern generator interface was prone to connection failures due to a race condition. Also, verifying a madVR 3D LUT didn't work.</li>
						</ul>
					</dd>

			</dl>
			<p><a href="history.html">View changelog entries for older versions</a></p>
		</div>

		<div id="definitions">
			<h2>Definitions</h2>
			<dl>
				<dt id="definition_CGATS">[1] CGATS</dt>
					<dd><span>Graphic Arts Technologies Standards, CGATS.5 Data Exchange Format (ANSI CGATS.5-1993 Annex J)</span></dd>
				<dt>[2] <span id="definition_CMM">CMM</span> / <span id="definition_CMS">CMS</span></dt>
					<dd>Color Management Module / Color Management System</dd>
				<dt id="definition_GPL">[3] GPL</dt>
					<dd>GNU General Public License — <a href="http://gnu.org/licenses/gpl.html">gnu.org/licenses/gpl.html</a></dd>
				<dt id="definition_GUI">[4] GUI</dt>
					<dd>Graphical User Interface</dd>
				<dt id="definition_ICC">[5] ICC</dt>
					<dd>International Color Consortium — <a href="http://color.org">color.org</a></dd>
				<dt id="definition_JSON">[6] JSON</dt>
					<dd>JavaScript Object Notation, a lightweight data-interchange format — <a href="http://json.org">json.org</a></dd>
				<dt id="definition_LUT">[7] LUT</dt>
					<dd>Look Up Table — <a href="http://en.wikipedia.org/wiki/Lookup_table">en.wikipedia.org/wiki/Lookup_table</a></dd>
				<dt id="definition_SVN">[8] SVN</dt>
					<dd>Subversion, a version-control system — <a href="http://subversion.tigris.org">subversion.tigris.org</a></dd>
				<dt id="definition_UAC">[9] UAC</dt>
					<dd>User Account Control — <a href="http://en.wikipedia.org/wiki/User_Account_Control">en.wikipedia.org/wiki/User_Account_Control</a></dd>
				<dt id="definition_EDID">[10] EDID</dt>
					<dd>Extended Display Identification Data — <a href="http://en.wikipedia.org/wiki/EDID">en.wikipedia.org/wiki/EDID</a></dd>
				<dt id="definition_PCS">[11] PCS</dt>
					<dd>Profile Connection Space — <a href="http://en.wikipedia.org/wiki/ICC_profile">en.wikipedia.org/wiki/ICC_profile</a></dd>
				<dt id="definition_UEFI">[12] UEFI</dt>
					<dd>Unified Extensible Firmware Interface — <a href="https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface">en.wikipedia.org/wiki/UEFI</a></dd>
			</dl>
		</div>

		</div>
		
		<hr />
		
		<p id="copyright">DisplayCAL © 2008-2016 Florian Höch | <a href="http://displaycal.net/imprint/">Imprint</a> | <a href="http://displaycal.net/privacy/">Privacy</a> | <a href="http://displaycal.net/tos/">Terms of Service</a></p>

		<div id="footer-container">
			<div id="footer"><a href="#toc" id="totop">↑ Top</a></div>
		</div>

		<script type="text/javascript" src="theme/prism.js"></script>
		<script type="text/javascript" src="http://displaycal.net/shariff/shariff.min.js"></script>

	</body>
</html>