Chameleon

Chameleon Commit Details

Date:2012-02-28 03:28:20 (12 years 1 month ago)
Author:ErmaC
Commit:1836
Parents: 1835
Message:- sync with trunk 1830 - Update Dutch Language Resource - Update Romanian Language Resource - Update Italian Language Resource - Added npci=0x3000 flags choice options into all language - Update both chameleon.xcodeproj (Trunk/Modules SubBranches) - Update nvidia.c re-add NVPM, GT 210 mem. detection fix. (CASE) - Update ati.c card list compared from http://forge.voodooprojects.org/p/chameleon/source/tree/HEAD/branches /Chimera/i386/libsaio/ati.c
Changes:
R/branches/ErmaC/Modules/package/Scripts/Sub/UnMountEFIvolumes.sh → /branches/ErmaC/Modules/package/Scripts.templates/UnMount/UnMountEFIvolumes.sh
A/branches/ErmaC/Modules/package/Scripts.templates/UnMount
M/branches/ErmaC/Modules/package/Resources/nl.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/vi.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/ro.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/hu.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/tr.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/ru.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/ca.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/zh_TW.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/id.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/el.lproj/Localizable.strings
M/branches/ErmaC/Trunk/i386/libsaio/ati.c
M/branches/ErmaC/Trunk/package/Resources/es.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/mk.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/en.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/ar.lproj/Localizable.strings
M/branches/ErmaC/Modules/Make.rules
M/branches/ErmaC/Modules/package/Resources/pt-PT.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/OptionalSettings/KernelFlags.txt
M/branches/ErmaC/Modules/package/Resources/cs.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/OptionalSettings/KernelFlags.txt
M/branches/ErmaC/Modules/package/Resources/ko.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/uk.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/ms.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/it.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/sk.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/sr.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/da.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/pt-BR.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/sv.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/de.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/nl.lproj/Conclusion.rtfd/TXT.rtf
M/branches/ErmaC/Trunk/package/Resources/ro.lproj/Conclusion.rtfd/TXT.rtf
M/branches/ErmaC/Modules/package/Resources/nl.lproj/Description.html
M/branches/ErmaC/Trunk/package/Resources/he.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/bg.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/ja.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/zh_CN.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/fi.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/fr.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/nl.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/bs.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/hu.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/hr.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/pl.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/th.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/no.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/ca.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/vi.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/ro.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/nl.lproj/Description.html
M/branches/ErmaC/Modules/package/Resources/pt-BR.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/tr.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/ru.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/id.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/el.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/ro.lproj/Description.html
M/branches/ErmaC/Trunk/package/Resources/en.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/ar.lproj/Localizable.strings
M/branches/ErmaC/Trunk/Make.rules
M/branches/ErmaC/Trunk/package/Resources/cs.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/zh_CN.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/buildpkg.sh
M/branches/ErmaC/Trunk/package/Resources/ko.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/es.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/mk.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/it.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/sk.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/ro.lproj/Welcome.rtfd/TXT.rtf
M/branches/ErmaC/Modules/Chameleon.xcodeproj/project.pbxproj
M/branches/ErmaC/Modules/i386/modules/NVIDIAGraphicsEnabler/nvidia.c
M/branches/ErmaC/Trunk/package/Resources/nl.lproj/Conclusion.rtfd/TXT.rtf
M/branches/ErmaC/Modules/package/Resources/ms.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/uk.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/bg.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/da.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/sr.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/ja.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/zh_TW.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/de.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/sv.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/ro.lproj/Description.html
M/branches/ErmaC/Trunk/package/Resources/fi.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/ro.lproj/Conclusion.rtfd/TXT.rtf
M/branches/ErmaC/Modules/package/Resources/he.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/buildpkg.sh
M/branches/ErmaC/Trunk/i386/libsaio/nvidia.c
M/branches/ErmaC/Trunk/package/Resources/pt-PT.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/bs.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/hr.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/ro.lproj/Welcome.rtfd/TXT.rtf
M/branches/ErmaC/Trunk/package/Resources/th.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/pl.lproj/Localizable.strings
M/branches/ErmaC/Modules/package/Resources/fr.lproj/Localizable.strings
M/branches/ErmaC/Trunk/package/Resources/no.lproj/Localizable.strings
M/branches/ErmaC/Modules/i386/modules/AMDGraphicsEnabler/ati.c

File differences

branches/ErmaC/Trunk/i386/libsaio/nvidia.c
7979
8080
8181
82
83
84
85
8286
8387
8488
8589
90
91
92
93
8694
8795
8896
8997
9098
9199
100
101
102
103
104
105
106
92107
108
93109
94110
95111
......
400416
401417
402418
403
419
404420
405421
406422
......
440456
441457
442458
443
459
444460
445461
446
462
447463
448464
449465
......
451467
452468
453469
454
470
455471
456472
457473
......
481497
482498
483499
484
500
485501
486502
487503
......
512528
513529
514530
515
531
516532
517533
518534
......
530546
531547
532548
533
549
534550
535551
536552
537553
538554
539
555
540556
541557
542558
......
563579
564580
565581
566
582
567583
568584
569585
......
586602
587603
588604
589
605
590606
591607
592608
......
606622
607623
608624
609
610
625
626
611627
612628
613629
......
635651
636652
637653
638
639
654
655
640656
641657
642658
......
646662
647663
648664
649
665
650666
651667
652668
......
671687
672688
673689
674
690
675691
676
692
677693
678694
679695
......
714730
715731
716732
717
733
718734
719735
720736
721
737
722738
723739
724740
......
748764
749765
750766
751
752
767
768
753769
754770
755771
756772
757
773
758774
759
775
760776
761777
762778
......
765781
766782
767783
768
769
784
785
770786
771787
772788
773789
774790
775791
776
777
778
779
792
793
794
795
780796
781
797
782798
783799
784800
......
791807
792808
793809
794
810
795811
796
797
812
813
798814
799815
800816
......
833849
834850
835851
836
837
838
839
852
853
854
855
840856
841857
842
858
843859
844860
845861
846862
847863
848
849
850
864
865
866
851867
852
853
868
869
854870
855
871
856872
857
858
873
874
859875
860876
861877
862
878
863879
864
880
865881
866
882
867883
868884
869
870
871
885
886
887
872888
873889
874
890
875891
876892
877893
......
12531269
12541270
12551271
1256
1272
12571273
12581274
12591275
1276
12601277
12611278
12621279
......
15111528
15121529
15131530
1531
1532
1533
1534
15141535
15151536
15161537
const char *nvidia_device_type_0[]={ "@0,device_type", "display" };
const char *nvidia_device_type_1[]={ "@1,device_type", "display" };
const char *nvidia_device_type[]={ "device_type","NVDA,Parent" };
/*
TODO: http://forge.voodooprojects.org/p/chameleon/issues/193/
const char *nvidia_device_type[]={ "device_type","NVDA,Child" };
*/
const char *nvidia_name_0[]={ "@0,name","NVDA,Display-A" };
const char *nvidia_name_1[]={ "@1,name","NVDA,Display-B" };
const char *nvidia_slot_name[]={ "AAPL,slot-name", "Slot-1" };
// uint8_t display_cfg_0[]={0x03, 0x01, 0x03, 0x00};
// uint8_t display_cfg_1[]={0xff, 0xff, 0x00, 0x01};
// uint8_t connector_type_1[] ={0x00, 0x08, 0x00, 0x00};
static uint8_t default_NVCAP[]= {
0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a,
0x00, 0x00, 0x00, 0x00
};
static uint8_t default_NVPM[]= {
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00
};
#define NVCAP_LEN ( sizeof(default_NVCAP) / sizeof(uint8_t) )
#define NVPM_LEN ( sizeof(default_NVPM) / sizeof(uint8_t) )
static uint8_t default_dcfg_0[]={0xff, 0xff, 0xff, 0xff};
static uint8_t default_dcfg_1[]={0xff, 0xff, 0xff, 0xff};
{ 0x10DE05E2, "GeForce GTX 260" },
{ 0x10DE05E3, "GeForce GTX 285" },
{ 0x10DE05E6, "GeForce GTX 275" },
{ 0x10DE05E7, "Tesla C1060" }, // ErmaC
{ 0x10DE05E7, "Tesla C1060" },
{ 0x10DE05EA, "GeForce GTX 260" },
{ 0x10DE05EB, "GeForce GTX 295" },
{ 0x10DE05ED, "Quadroplex 2200 D2" },
{ 0x10DE061B, "Quadro VX 200" },
{ 0x10DE061C, "Quadro FX 3600M" },
{ 0x10DE061D, "Quadro FX 2800M" },
{ 0x10DE061E, "Quadro FX 3700M" }, // ErmaC
{ 0x10DE061E, "Quadro FX 3700M" },
{ 0x10DE061F, "Quadro FX 3800M" },
// 0620 - 062F
{ 0x10DE0621, "GeForce GT 230" }, // ErmaC
{ 0x10DE0621, "GeForce GT 230" },
{ 0x10DE0622, "GeForce 9600 GT" },
{ 0x10DE0623, "GeForce 9600 GS" },
{ 0x10DE0625, "GeForce 9600 GSO 512"},
{ 0x10DE0627, "GeForce GT 140" },
{ 0x10DE0628, "GeForce 9800M GTS" },
{ 0x10DE062A, "GeForce 9700M GTS" },
{ 0x10DE062B, "GeForce 9800M GS" }, // ErmaC
{ 0x10DE062B, "GeForce 9800M GS" },
{ 0x10DE062C, "GeForce 9800M GTS" },
{ 0x10DE062D, "GeForce 9600 GT" },
{ 0x10DE062E, "GeForce 9600 GT" },
{ 0x10DE0652, "GeForce GT 130M" },
{ 0x10DE0653, "GeForce GT 120M" },
{ 0x10DE0654, "GeForce GT 220M" },
{ 0x10DE0655, "GeForce GT 120" }, // ErmaC
{ 0x10DE0655, "GeForce GT 120" },
{ 0x10DE0656, "GeForce 9650 S" },
{ 0x10DE0658, "Quadro FX 380" },
{ 0x10DE0659, "Quadro FX 580" },
{ 0x10DE06DD, "Quadro 4000" },
{ 0x10DE06DE, "Tesla M2050" },// TODO: sub-device id: 0x0846
{ 0x10DE06DE, "Tesla M2070" },// TODO: sub-device id: ?
{ 0x10DE06DF, "Tesla M2070-Q" }, // ErmaC
{ 0x10DE06DF, "Tesla M2070-Q" },
// 0x10DE06DE also applies to misc S2050, X2070, M2050, M2070
// 06E0 - 06EF
{ 0x10DE06E0, "GeForce 9300 GE" },
{ 0x10DE06EC, "GeForce G 105M" },
{ 0x10DE06EF, "GeForce G 103M" },
// 06F0 - 06FF
{ 0x10DE06F1, "GeForce G105M" }, // ErmaC
{ 0x10DE06F1, "GeForce G105M" },
{ 0x10DE06F8, "Quadro NVS 420" },
{ 0x10DE06F9, "Quadro FX 370 LP" },
{ 0x10DE06FA, "Quadro NVS 450" },
{ 0x10DE06FB, "Quadro FX 370M" },
{ 0x10DE06FD, "Quadro NVS 295" },
{ 0x10DE06FF, "HICx16 + Graphics" }, // ErmaC
{ 0x10DE06FF, "HICx16 + Graphics" },
// 0700 - 070F
// 0710 - 071F
// 0720 - 072F
// 0820 - 082F
// 0830 - 083F
// 0840 - 084F
{ 0x10DE0840, "GeForce 8200M" }, // ErmaC
{ 0x10DE0840, "GeForce 8200M" },
{ 0x10DE0844, "GeForce 9100M G" },
{ 0x10DE0845, "GeForce 8200M G" },
{ 0x10DE0846, "GeForce 9200" },
{ 0x10DE0866, "GeForce 9400M G" },
{ 0x10DE0867, "GeForce 9400" },
{ 0x10DE0868, "nForce 760i SLI" },
{ 0x10DE0869, "GeForce 9400" }, // ErmaC
{ 0x10DE0869, "GeForce 9400" },
{ 0x10DE086A, "GeForce 9400" },
{ 0x10DE086C, "GeForce 9300 / nForce 730i" },
{ 0x10DE086D, "GeForce 9200" },
// 0880 - 088F
// 0890 - 089F
// 08A0 - 08AF
{ 0x10DE08A0, "GeForce 320M" }, // ErmaC
{ 0x10DE08A4, "GeForce 320M" }, // ErmaC
{ 0x10DE08A0, "GeForce 320M" },
{ 0x10DE08A4, "GeForce 320M" },
// 08B0 - 08BF
// 08C0 - 08CF
// 08D0 - 08DF
{ 0x10DE0A20, "GeForce GT220" },
{ 0x10DE0A22, "GeForce 315" },
{ 0x10DE0A23, "GeForce 210" },
{ 0x10DE0A26, "GeForce 405" }, // ErmaC
{ 0x10DE0A27, "GeForce 405" }, // ErmaC
{ 0x10DE0A26, "GeForce 405" },
{ 0x10DE0A27, "GeForce 405" },
{ 0x10DE0A28, "GeForce GT 230M" },
{ 0x10DE0A29, "GeForce GT 330M" },
{ 0x10DE0A2A, "GeForce GT 230M" },
// 0A30 - 0A3F
{ 0x10DE0A34, "GeForce GT 240M" },
{ 0x10DE0A35, "GeForce GT 325M" },
{ 0x10DE0A38, "Quadro 400" }, // ErmaC
{ 0x10DE0A38, "Quadro 400" },
{ 0x10DE0A3C, "Quadro FX 880M" },
// 0A40 - 0A4F
// 0A50 - 0A5F
{ 0x10DE0A73, "GeForce 305M" },
{ 0x10DE0A74, "GeForce G210M" },
{ 0x10DE0A75, "GeForce G310M" },
{ 0x10DE0A76, "ION" }, // ErmaC
{ 0x10DE0A76, "ION" },
{ 0x10DE0A78, "Quadro FX 380 LP" },
{ 0x10DE0A7A, "GeForce 315M" }, // ErmaC
{ 0x10DE0A7A, "GeForce 315M" },
{ 0x10DE0A7C, "Quadro FX 380M" },
// 0A80 - 0A8F
// 0A90 - 0A9F
{ 0x10DE0CA2, "GeForce GT 320" },
{ 0x10DE0CA3, "GeForce GT 240" },
{ 0x10DE0CA4, "GeForce GT 340" },
{ 0x10DE0CA5, "GeForce GT 220" }, // ErmaC
{ 0x10DE0CA5, "GeForce GT 220" },
{ 0x10DE0CA7, "GeForce GT 330" },
{ 0x10DE0CA8, "GeForce GTS 260M" },
{ 0x10DE0CA9, "GeForce GTS 250M" },
{ 0x10DE0CAC, "GeForce GT 220" }, // ErmaC
{ 0x10DE0CAC, "GeForce GT 220" },
{ 0x10DE0CAF, "GeForce GT 335M" },
// 0CB0 - 0CBF
{ 0x10DE0CB0, "GeForce GTS 350M" },
{ 0x10DE0DC5, "GeForce GTS 450" },
{ 0x10DE0DC6, "GeForce GTS 450" },
{ 0x10DE0DCA, "GF10x" },
{ 0x10DE0DCD, "GeForce GT 555M" }, // ErmaC
{ 0x10DE0DCE, "GeForce GT 555M" }, // ErmaC
{ 0x10DE0DCD, "GeForce GT 555M" },
{ 0x10DE0DCE, "GeForce GT 555M" },
// 0DD0 - 0DDF
{ 0x10DE0DD1, "GeForce GTX 460M" },
{ 0x10DE0DD2, "GeForce GT 445M" },
{ 0x10DE0DD3, "GeForce GT 435M" },
{ 0x10DE0DD6, "GeForce GT 550M" }, // ErmaC
{ 0x10DE0DD6, "GeForce GT 550M" },
{ 0x10DE0DD8, "Quadro 2000" },
{ 0x10DE0DDA, "Quadro 2000M" }, // ErmaC
{ 0x10DE0DDA, "Quadro 2000M" },
{ 0x10DE0DDE, "GF106-ES" },
{ 0x10DE0DDF, "GF106-INT" },
// 0DE0 - 0DEF
{ 0x10DE0DE2, "GeForce GT 420" },
{ 0x10DE0DE5, "GeForce GT 530" },
{ 0x10DE0DEB, "GeForce GT 555M" },
{ 0x10DE0DEC, "GeForce GT 525M" }, // ErmaC
{ 0x10DE0DED, "GeForce GT 520M" }, // ErmaC
{ 0x10DE0DEC, "GeForce GT 525M" },
{ 0x10DE0DED, "GeForce GT 520M" },
{ 0x10DE0DEE, "GeForce GT 415M" },
// 0DF0 - 0DFF
{ 0x10DE0DF0, "GeForce GT 425M" },
{ 0x10DE0DF1, "GeForce GT 420M" },
{ 0x10DE0DF2, "GeForce GT 435M" },
{ 0x10DE0DF3, "GeForce GT 420M" },
{ 0x10DE0DF4, "GeForce GT 540M" }, // ErmaC
{ 0x10DE0DF5, "GeForce GT 525M" }, // ErmaC
{ 0x10DE0DF6, "GeForce GT 550M" }, // ErmaC
{ 0x10DE0DF7, "GeForce GT 520M" }, // ErmaC
{ 0x10DE0DF4, "GeForce GT 540M" },
{ 0x10DE0DF5, "GeForce GT 525M" },
{ 0x10DE0DF6, "GeForce GT 550M" },
{ 0x10DE0DF7, "GeForce GT 520M" },
{ 0x10DE0DF8, "Quadro 600" },
{ 0x10DE0DFA, "Quadro 1000M" }, // ErmaC
{ 0x10DE0DFA, "Quadro 1000M" },
{ 0x10DE0DFE, "GF108 ES" },
{ 0x10DE0DFF, "GF108 INT" },
// 0E00 - 0E0F
{ 0x10DE0E25, "D12U-50" },
// 0E30 - 0E3F
{ 0x10DE0E30, "GeForce GTX 470M" },
{ 0x10DE0E31, "GeForce GTX 485M" }, // ErmaC
{ 0x10DE0E31, "GeForce GTX 485M" },
{ 0x10DE0E38, "GF104GL" },
{ 0x10DE0E3A, "Quadro 3000M" }, // ErmaC
{ 0x10DE0E3B, "Quadro 4000M" }, // ErmaC
{ 0x10DE0E3A, "Quadro 3000M" },
{ 0x10DE0E3B, "Quadro 4000M" },
{ 0x10DE0E3E, "GF104-ES" },
{ 0x10DE0E3F, "GF104-INT" },
// 0E40 - 0E4F
{ 0x10DE1040, "GeForce GT 520" },
// 1050 - 105F
{ 0x10DE1050, "GeForce GT 520M" },
{ 0x10DE1051, "GeForce GT 520MX" }, // ErmaC
{ 0x10DE1054, "GeForce GT 410M" }, // ErmaC
{ 0x10DE1056, "NVS 4200M" }, // ErmaC
{ 0x10DE1057, "NVS 4200M" }, // ErmaC
{ 0x10DE1051, "GeForce GT 520MX" },
{ 0x10DE1054, "GeForce GT 410M" },
{ 0x10DE1056, "NVS 4200M" },
{ 0x10DE1057, "NVS 4200M" },
// 1060 - 106F
// 1070 - 107F
{ 0x10DE107F, "NVIDIA GF119-ES" }, // ErmaC
{ 0x10DE107F, "NVIDIA GF119-ES" },
// 1080 - 108F
{ 0x10DE1080, "GeForce GTX 580" },
{ 0x10DE1081, "GeForce GTX 570" },
{ 0x10DE1082, "GeForce GTX 560 Ti" },
{ 0x10DE1083, "D13U" },
{ 0x10DE1084, "GeForce GTX 560" }, // ErmaC
{ 0x10DE1086, "GeForce GTX 570" }, // ErmaC
{ 0x10DE1087, "GeForce GTX 560 Ti-448" }, // ErmaC
{ 0x10DE1084, "GeForce GTX 560" },
{ 0x10DE1086, "GeForce GTX 570" },
{ 0x10DE1087, "GeForce GTX 560 Ti-448" },
{ 0x10DE1088, "GeForce GTX 590" },
{ 0x10DE1089, "GeForce GTX 580" }, // ErmaC
{ 0x10DE108B, "GeForce GTX 590" }, // ErmaC
{ 0x10DE1089, "GeForce GTX 580" },
{ 0x10DE108B, "GeForce GTX 590" },
// 1090 - 109F
{ 0x10DE1091, "Tesla M2090" }, // ErmaC
{ 0x10DE1091, "Tesla M2090" },
{ 0x10DE1098, "D13U" },
{ 0x10DE109A, "Quadro 5010M" }, // ErmaC
{ 0x10DE109B, "Quadro 7000" }, // ErmaC
{ 0x10DE109A, "Quadro 5010M" },
{ 0x10DE109B, "Quadro 7000" },
// 10A0 - 10AF
// 10B0 - 10BF
// 10C0 - 10CF
{ 0x10DE10C0, "GeForce 9300 GS" }, // ErmaC
{ 0x10DE10C0, "GeForce 9300 GS" },
{ 0x10DE10C3, "GeForce 8400 GS" },
{ 0x10DE10C5, "GeForce 405" }, // ErmaC
{ 0x10DE10C5, "GeForce 405" },
// 10D0 - 10DF
{ 0x10DE10D8, "NVS 300" }, // ErmaC
{ 0x10DE10D8, "NVS 300" },
// 1200 -
{ 0x10DE1200, "GeForce GTX 560 Ti" },
{ 0x10DE1201, "GeForce GTX 560" }, // ErmaC
{ 0x10DE1241, "GeForce GT 545" }, // ErmaC
{ 0x10DE1243, "GeForce GT 545" }, // ErmaC
{ 0x10DE1201, "GeForce GTX 560" },
{ 0x10DE1241, "GeForce GT 545" },
{ 0x10DE1243, "GeForce GT 545" },
{ 0x10DE1244, "GeForce GTX 550 Ti" },
{ 0x10DE1245, "GeForce GTS 450" },
{ 0x10DE1251, "GeForce GTX 560M" }, // ErmaC
{ 0x10DE1251, "GeForce GTX 560M" },
};
static uint16_t swap16(uint16_t x)
vram_size *= REG32(NVC0_MEM_CTRLR_COUNT);
}
// Workaround for 9600M GT, GT 420/430/440 & GT 525M
// Workaround for 9600M GT, GT 210/420/430/440 & GT 525M
switch (nvda_dev->device_id)
{
case 0x0649: vram_size = 512*1024*1024; break;// 9600M GT
case 0x0A65: vram_size = 1024*1024*1024; break; // GT 210
case 0x0DE0: vram_size = 1024*1024*1024; break; // GT 440
case 0x0DE1: vram_size = 1024*1024*1024; break; // GT 430
case 0x0DE2: vram_size = 1024*1024*1024; break; // GT 420
devprop_add_value(device, "VRAM,totalsize", (uint8_t*)&videoRam, 4);
devprop_add_value(device, "model", (uint8_t*)model, strlen(model) + 1);
devprop_add_value(device, "rom-revision", (uint8_t*)biosVersion, strlen(biosVersion) + 1);
//devprop_add_value(device, "@1,connector-type", connector_type_1, 4); // fixme
//devprop_add_value(device, "@0,display-cfg", display_cfg_0, 4);
//devprop_add_value(device, "@1,display-cfg", display_cfg_1, 4);
devprop_add_value(device, "NVPM", default_NVPM, NVPM_LEN);
devprop_add_value(device, "@0,display-cfg", default_dcfg_0, DCFG0_LEN);
devprop_add_value(device, "@1,display-cfg", default_dcfg_1, DCFG1_LEN);
branches/ErmaC/Trunk/i386/libsaio/ati.c
233233
234234
235235
236
237
236
237
238238
239239
240240
......
243243
244244
245245
246
247246
248247
249
250248
251249
252250
253
254251
255
256252
257
258253
259
260254
261
262255
263
264256
265
266257
267258
268259
......
270261
271262
272263
273
274264
275265
276266
277267
278268
279
280269
281
270
282271
283
284272
285273
286
287274
288275
289276
290
291277
292278
293279
294280
295281
296
297282
298283
299284
300285
301
302286
303
304287
305288
306289
307290
308
309291
310
311292
312
313293
314294
315295
316296
317297
318
319298
320
321299
322300
323
324301
325302
326303
327
328304
329305
330306
331307
332308
333
334309
335310
336
337311
338312
339
340313
341314
342315
343
344316
345
346317
347318
348
349319
350320
351321
352322
353
354323
355324
356
357325
358326
359327
360328
361
362329
363
364330
365331
366332
367333
368334
369
370335
371336
372337
373338
374
375339
376340
377341
378342
379
380343
381344
382
383
345
346
384347
385348
386349
387
388350
389351
390
391352
353
392354
393355
394356
395357
396
397
398358
399
400359
401
402360
403
404361
405
406362
407
408363
409364
410365
411366
412367
413368
414
415369
416370
417371
......
419373
420374
421375
422
423376
424
425377
426
427378
428379
429380
430381
431382
432
433383
434384
435
436385
437386
438387
439
440388
441389
442
443390
444391
445392
446393
447394
448
449395
450396
451397
452
453398
454399
455400
456
457401
458
459402
460403
461404
......
466409
467410
468411
469
470412
471413
472
473414
474
475415
476
477416
478417
479418
480419
481420
482
483421
484
485422
486
487423
488
489424
490425
491426
492
493427
494
495428
496
497429
498430
499431
......
502434
503435
504436
505
437
506438
507439
508440
509441
510442
511443
512
513
514444
515
516445
517
518
446
519447
520448
521
522449
523
450
524451
525
526
452
527453
528454
529455
530
456
457
531458
459
460
532461
533
462
534463
535464
536
537465
466
538467
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
468
469
470
471
556472
557
473
474
475
476
477
478
479
480
481
558482
559483
560484
......
562486
563487
564488
565
566489
567490
568
569
491
570492
571
572493
573494
574495
575496
576497
577498
578
579499
580
581500
582501
583502
584
585503
586504
587505
588506
589
507
508
590509
591
592
510
511
593512
594513
595514
596
597515
598516
599
517
600518
601519
602520
603
604521
605522
606523
524
525
607526
608
609
610
611527
612528
613529
614530
615531
616
617
618
532
533
534
535
619536
620
621
622
537
538
539
623540
624
625
541
542
626543
627544
628
545
629546
630547
631
632548
633
634549
635550
636
637
638
551
552
639553
640
641554
642555
643556
644557
645
646
558
559
647560
648
561
649562
650563
651564
652
565
566
653567
654568
655
569
656570
657571
658572
659
660573
574
575
576
661577
662
663
664
665
666
667
668
669
578
670579
671
672
673
674580
675581
676
582
677583
584
678585
679
586
680587
681588
682
589
683590
684
591
592
685593
686
687
594
688595
689596
690597
691598
692
599
693600
694601
695602
696603
697604
698
605
699606
700
607
701608
702
703
609
610
611
704612
705613
706614
707615
708
709
616
617
710618
711
712
619
713620
621
622
623
714624
715
625
716626
717627
718
719
628
629
720630
721
631
722632
723
724
725
726
633
634
635
636
727637
728
729
638
639
730640
731641
732
642
733643
644
734645
735646
736
737
738
647
648
739649
740
650
651
652
741653
742
743
654
655
744656
657
658
659
745660
746
661
747662
748
749
663
664
750665
751666
752
753667
668
754669
755670
756671
......
760675
761676
762677
763
764
765
678
679
680
681
766682
767683
768684
769
685
770686
687
771688
689
690
691
772692
773
693
774694
775695
776
696
697
698
777699
778700
779701
......
781703
782704
783705
784
785
706
786707
708
709
787710
788711
789712
......
793716
794717
795718
719
720
796721
797
722
798723
799724
800725
801
726
802727
803728
804729
{ 0x9400,0x25521002, CHIP_FAMILY_R600,"ATI Radeon HD 2900 XT",kNull},
{ 0x9400,0x30001002, CHIP_FAMILY_R600,"ATI Radeon HD 2900 PRO",kNull},
{ 0x9440,0x0851174B, CHIP_FAMILY_RV770,"ATI Radeon HD 4870",kMotmot}, // ErmaC
{ 0x9440,0x114A174B, CHIP_FAMILY_RV770,"Sapphire Radeon HD4870 Vapor-X",kCardinal}, // ErmaC
{ 0x9440,0x0851174B, CHIP_FAMILY_RV770,"ATI Radeon HD 4870",kMotmot},
{ 0x9440,0x114A174B, CHIP_FAMILY_RV770,"Sapphire Radeon HD4870 Vapor-X",kCardinal},
{ 0x9440,0x24401682, CHIP_FAMILY_RV770,"ATI Radeon HD 4870",kMotmot},
{ 0x9440,0x24411682, CHIP_FAMILY_RV770,"ATI Radeon HD 4870",kMotmot},
{ 0x9440,0x24441682, CHIP_FAMILY_RV770,"ATI Radeon HD 4870",kMotmot},
{ 0x9441,0x24401682, CHIP_FAMILY_RV770,"ATI Radeon HD 4870 X2",kMotmot},
{ 0x9442,0x080110B0, CHIP_FAMILY_RV770,"ATI Radeon HD 4850",kMotmot},
{ 0x9442,0x24701682, CHIP_FAMILY_RV770,"ATI Radeon HD 4850",kMotmot},
{ 0x9442,0x24711682, CHIP_FAMILY_RV770,"ATI Radeon HD 4850",kMotmot},
{ 0x9442,0xE104174B, CHIP_FAMILY_RV770,"ATI Radeon HD 4850",kMotmot},
{ 0x944A,0x30001043, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot},
{ 0x944A,0x30001458, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot},
{ 0x944A,0x30001462, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot},
{ 0x944A,0x30001545, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot},
{ 0x944A,0x30001682, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot},
{ 0x944A,0x3000174B, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot},
{ 0x944A,0x30001787, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot},
{ 0x944A,0x300017AF, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot},
{ 0x944C,0x24801682, CHIP_FAMILY_RV770,"ATI Radeon HD 4830",kMotmot},
{ 0x944E,0x3260174B, CHIP_FAMILY_RV770,"ATI Radeon HD 4810 Series",kMotmot},
{ 0x944E,0x3261174B, CHIP_FAMILY_RV770,"ATI Radeon HD 4810 series",kMotmot},
{ 0x944E,0x30001787, CHIP_FAMILY_RV770,"ATI Radeon HD 4730 Series",kMotmot},
{ 0x944E,0x30101787, CHIP_FAMILY_RV770,"ATI Radeon HD 4810 Series",kMotmot},
{ 0x944E,0x31001787, CHIP_FAMILY_RV770,"ATI Radeon HD 4820",kMotmot},
{ 0x9480,0x3628103C, CHIP_FAMILY_RV730,"ATI Radeon HD 4650M",kGliff},
{ 0x9480,0x9035104D, CHIP_FAMILY_RV730,"ATI Radeon HD 4650M",kGliff},
{ 0x9490,0x4710174B, CHIP_FAMILY_RV730,"ATI Radeon HD 4710",kNull},
{ 0x9490,0x20031787, CHIP_FAMILY_RV730,"ATI Radeon HD 4670",kFlicker},
{ 0x9490,0x30501787, CHIP_FAMILY_RV730,"ATI Radeon HD 4710",kNull},
{ 0x9490,0x300017AF, CHIP_FAMILY_RV730,"ATI Radeon HD 4710",kNull},
{ 0x9498,0x21CF1458, CHIP_FAMILY_RV730,"ATI Radeon HD 4600 Series",kNull},
{ 0x9498,0x24511682, CHIP_FAMILY_RV730,"ATI Radeon HD 4650",kNull},
{ 0x9498,0x24521682, CHIP_FAMILY_RV730,"ATI Radeon HD 4650",kNull},
{ 0x9498,0x24541682, CHIP_FAMILY_RV730,"ATI Radeon HD 4650",kNull},
{ 0x9498,0x29331682, CHIP_FAMILY_RV730,"ATI Radeon HD 4670",kNull},
{ 0x9498,0x29341682, CHIP_FAMILY_RV730,"ATI Radeon HD 4670",kNull},
{ 0x9498,0x30501787, CHIP_FAMILY_RV730,"ATI Radeon HD 4700",kNull},
{ 0x9498,0x31001787, CHIP_FAMILY_RV730,"ATI Radeon HD 4720",kNull},
{ 0x94B3,0x0D001002, CHIP_FAMILY_RV740,"ATI Radeon HD 4770",kFlicker},
{ 0x94B3,0x29001682, CHIP_FAMILY_RV740,"ATI Radeon HD 4770",kFlicker},
{ 0x94B3,0x1170174B, CHIP_FAMILY_RV740,"ATI Radeon HD 4770",kFlicker},
{ 0x94C1,0x0D021002, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 XT",kNull},
{ 0x94C1,0x10021002, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 Pro",kNull},
{ 0x94C1,0x0D021028, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 XT",kNull},
{ 0x94C1,0x21741458, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 XT",kNull},
{ 0x94C1,0x10331462, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 XT",kNull},
{ 0x94C1,0x10401462, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 XT",kNull},
{ 0x94C1,0x11101462, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 XT",kNull},
{ 0x94C3,0x03421002, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 PRO",kNull},
{ 0x94C3,0x30001025, CHIP_FAMILY_RV610,"ATI Radeon HD 2350 Series",kNull},
{ 0x94C3,0x03021028, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 PRO",kNull},
{ 0x94C3,0x04021028, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 PRO",kNull},
{ 0x94C3,0x216A1458, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 PRO",kNull},
{ 0x94C3,0x21721458, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 PRO",kNull},
{ 0x94C3,0x30001458, CHIP_FAMILY_RV610,"ATI Radeon HD 3410",kNull},
{ 0x94C3,0x10321462, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 PRO",kNull},
{ 0x94C3,0x10411462, CHIP_FAMILY_RV610,"ATI Radeon HD 2400",kNull},
{ 0x94C3,0x11041462, CHIP_FAMILY_RV610,"ATI Radeon HD 2400",kNull},
{ 0x94C3,0x11051462, CHIP_FAMILY_RV610,"ATI Radeon HD 2400",kNull},
{ 0x94C3,0x30001462, CHIP_FAMILY_RV610,"ATI Radeon HD 3410",kNull},
{ 0x94C3,0x2247148C, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 LE",kNull},
{ 0x94C3,0x3000148C, CHIP_FAMILY_RV610,"ATI Radeon HD 2350 Series",kNull},
{ 0x94C3,0x30001642, CHIP_FAMILY_RV610,"ATI Radeon HD 3410",kNull},
{ 0x94C3,0x37161642, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 PRO",kNull},
{ 0x94C3,0x3000174B, CHIP_FAMILY_RV610,"ATI Radeon HD 2350 Series",kNull},
{ 0x94C3,0xE370174B, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 PRO",kNull},
{ 0x94C3,0xE400174B, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 PRO",kNull},
{ 0x94C3,0x203817AF, CHIP_FAMILY_RV610,"ATI Radeon HD 2400",kNull},
{ 0x94C3,0x22471787, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 LE",kNull},
{ 0x94C3,0x30001787, CHIP_FAMILY_RV610,"ATI Radeon HD 2350 Series",kNull},
{ 0x94C3,0x01011A93, CHIP_FAMILY_RV610,"Qimonda Radeon HD 2400 PRO",kNull},
{ 0x9501,0x25421002, CHIP_FAMILY_RV670,"ATI Radeon HD 3870",kNull},
{ 0x9501,0x30001002, CHIP_FAMILY_RV670,"ATI Radeon HD 3690",kNull},
{ 0x9501,0x3000174B, CHIP_FAMILY_RV670,"Sapphire Radeon HD 3690",kNull},
{ 0x9501,0x4750174B, CHIP_FAMILY_RV670,"ATI Radeon HD 4750",kNull},
{ 0x9501,0x30001787, CHIP_FAMILY_RV670,"ATI Radeon HD 3690",kNull},
{ 0x9505,0x25421002, CHIP_FAMILY_RV670,"ATI Radeon HD 3850",kNull},
{ 0x9505,0x30001002, CHIP_FAMILY_RV670,"ATI Radeon HD 3690",kNull},
{ 0x9505,0x30011043, CHIP_FAMILY_RV670,"ATI Radeon HD 4730",kNull},
{ 0x9505,0x3000148C, CHIP_FAMILY_RV670,"ATI Radeon HD 3850",kNull},
{ 0x9505,0x3001148C, CHIP_FAMILY_RV670,"ATI Radeon HD 4730",kNull},
{ 0x9505,0x3002148C, CHIP_FAMILY_RV670,"ATI Radeon HD 4730",kNull},
{ 0x9505,0x3003148C, CHIP_FAMILY_RV670,"ATI Radeon HD 4750",kNull},
{ 0x9505,0x3004148C, CHIP_FAMILY_RV670,"ATI Radeon HD 4750",kNull},
{ 0x9505,0x3000174B, CHIP_FAMILY_RV670,"Sapphire Radeon HD 3690",kNull},
{ 0x9505,0x3001174B, CHIP_FAMILY_RV670,"ATI Radeon HD 4750",kNull},
{ 0x9505,0x3010174B, CHIP_FAMILY_RV670,"ATI Radeon HD 4750",kNull},
{ 0x9505,0x4730174B, CHIP_FAMILY_RV670,"ATI Radeon HD 4730",kNull},
{ 0x9505,0x30001787, CHIP_FAMILY_RV670,"ATI Radeon HD 3690",kNull},
{ 0x9505,0x301017AF, CHIP_FAMILY_RV670,"ATI Radeon HD 4750",kNull},
{ 0x9540,0x4590174B, CHIP_FAMILY_RV710,"ATI Radeon HD 4590",kNull},
{ 0x9540,0x30501787, CHIP_FAMILY_RV710,"ATI Radeon HD 4590",kNull},
{ 0x954F,0x16131462, CHIP_FAMILY_RV710,"ATI Radeon HD 4550",kNull}, // ErmaC
{ 0x954F,0x20081787, CHIP_FAMILY_RV710,"ATI Radeon HD 4350",kNull}, // ErmaC
{ 0x954F,0x16131462, CHIP_FAMILY_RV710,"ATI Radeon HD 4550",kNull},
{ 0x954F,0x20081787, CHIP_FAMILY_RV710,"ATI Radeon HD 4350",kNull},
{ 0x954F,0x29201682, CHIP_FAMILY_RV710,"ATI Radeon HD 4550",kNull},
{ 0x954F,0x29211682, CHIP_FAMILY_RV710,"ATI Radeon HD 4550",kNull},
{ 0x954F,0x30901682, CHIP_FAMILY_RV710,"XFX Radeon HD 4570",kNull},
{ 0x954F,0x30501787, CHIP_FAMILY_RV710,"ATI Radeon HD 4450",kNull},
{ 0x954F,0x31001787, CHIP_FAMILY_RV710,"ATI Radeon HD 4520",kNull},
{ 0x954F,0x3000174B, CHIP_FAMILY_RV710,"ATI Radeon HD 4520",kNull},
{ 0x954F,0x301017AF, CHIP_FAMILY_RV710,"ATI Radeon HD 4450",kNull},
{ 0x954F,0x4450174B, CHIP_FAMILY_RV710,"ATI Radeon HD 4450",kNull},
{ 0x954F,0x4570174B, CHIP_FAMILY_RV710,"Sapphire Radeon HD 4570",kNull},
{ 0x954F,0xE990174B, CHIP_FAMILY_RV710,"Sapphire Radeon HD 4350",kNull},
{ 0x954F,0x301017AF, CHIP_FAMILY_RV710,"ATI Radeon HD 4450",kNull},
{ 0x9552,0x04341028, CHIP_FAMILY_RV710,"ATI Mobility Radeon 4330",kShrike},
{ 0x9552,0x308B103C, CHIP_FAMILY_RV710,"ATI Mobility Radeon HD 4300 Series",kShrike},
{ 0x9552,0x3000148C, CHIP_FAMILY_RV710,"ATI Radeon HD 4300/4500 Series",kNull},
{ 0x9552,0x3000174B, CHIP_FAMILY_RV710,"ATI Radeon HD 4300/4500 Series",kNull},
{ 0x9552,0x30001787, CHIP_FAMILY_RV710,"ATI Radeon HD 4300/4500 Series",kNull},
{ 0x9552,0x300017AF, CHIP_FAMILY_RV710,"ATI Radeon HD 4300/4500 Series",kNull},
{ 0x9553,0x18751043, CHIP_FAMILY_RV710,"ATI Mobility Radeon HD 4570",kShrike},
{ 0x9553,0x1B321043, CHIP_FAMILY_RV710,"ATI Mobility Radeon HD 4570",kShrike},
{ 0x9581,0x95811002, CHIP_FAMILY_RV630,"ATI Radeon HD 3600 Series",kNull},
{ 0x9581,0x3000148C, CHIP_FAMILY_RV630,"ATI Radeon HD 3600 Series",kNull},
{ 0x9583,0x3000148C, CHIP_FAMILY_RV630,"ATI Radeon HD 3600 Series",kNull},
{ 0x9588,0x01021A93, CHIP_FAMILY_RV630,"Qimonda Radeon HD 2600 XT",kNull},
{ 0x9589,0x30001462, CHIP_FAMILY_RV630,"ATI Radeon HD 3610",kNull},
{ 0x9589,0x0E41174B, CHIP_FAMILY_RV630,"ATI Radeon HD 3600 Series",kNull},
{ 0x9589,0x30001787, CHIP_FAMILY_RV630,"ATI Radeon HD 3600 Series",kNull},
{ 0x9589,0x01001A93, CHIP_FAMILY_RV630,"Qimonda Radeon HD 2600 PRO",kNull},
{ 0x9591,0x2303148C, CHIP_FAMILY_RV635,"ATI Radeon HD 3600 Series",kNull},
{ 0x9598,0xB3831002, CHIP_FAMILY_RV635,"ATI All-in-Wonder HD",kNull},
{ 0x9598,0x30001043, CHIP_FAMILY_RV635,"ATI Radeon HD 3730",kNull},
{ 0x9598,0x30011043, CHIP_FAMILY_RV635,"ATI Radeon HD 4570",kNull},
{ 0x9598,0x3000148C, CHIP_FAMILY_RV635,"ATI Radeon HD 3730",kNull},
{ 0x9598,0x3001148C, CHIP_FAMILY_RV635,"ATI Radeon HD 4580",kNull},
{ 0x9598,0x3031148C, CHIP_FAMILY_RV635,"ATI Radeon HD 4570",kNull},
{ 0x9598,0x30001545, CHIP_FAMILY_RV635,"VisionTek Radeon HD 2600 XT",kNull},
{ 0x9598,0x30011545, CHIP_FAMILY_RV635,"VisionTek Radeon HD 2600 Pro",kNull},
{ 0x9598,0x3000174B, CHIP_FAMILY_RV635,"Sapphire Radeon HD 3730",kNull},
{ 0x9598,0x3001174B, CHIP_FAMILY_RV635,"Sapphire Radeon HD 3750",kNull},
{ 0x9598,0x4570174B, CHIP_FAMILY_RV635,"ATI Radeon HD 4570",kNull},
{ 0x9598,0x4580174B, CHIP_FAMILY_RV635,"ATI Radeon HD 4580",kNull},
{ 0x9598,0x4610174B, CHIP_FAMILY_RV635,"ATI Radeon HD 4610",kNull},
{ 0x9598,0x300117AF, CHIP_FAMILY_RV635,"ATI Radeon HD 3750",kNull},
{ 0x9598,0x301017AF, CHIP_FAMILY_RV635,"ATI Radeon HD 4570",kNull},
{ 0x9598,0x301117AF, CHIP_FAMILY_RV635,"ATI Radeon HD 4580",kNull},
{ 0x9598,0x30501787, CHIP_FAMILY_RV635,"ATI Radeon HD 4610",kNull},
{ 0x95C0,0x3000148C, CHIP_FAMILY_RV620,"ATI Radeon HD 3550",kNull},
{ 0x95C0,0xE3901745, CHIP_FAMILY_RV620,"ATI Radeon HD 3550",kNull},
{ 0x95C0,0x3000174B, CHIP_FAMILY_RV620,"Sapphire Radeon HD 3550",kNull},
{ 0x95C0,0x3002174B, CHIP_FAMILY_RV620,"ATI Radeon HD 3570",kNull},
{ 0x95C0,0x3020174B, CHIP_FAMILY_RV620,"ATI Radeon HD 4250",kNull},
{ 0x95C5,0x3003148C, CHIP_FAMILY_RV620,"ATI Radeon HD 4250",kNull},
{ 0x95C5,0x3032148C, CHIP_FAMILY_RV620,"ATI Radeon HD 4250",kNull},
{ 0x95C5,0x3033148C, CHIP_FAMILY_RV620,"ATI Radeon HD 4230",kNull},
{ 0x95C5,0x3010174B, CHIP_FAMILY_RV620,"ATI Radeon HD 4250",kNull},
{ 0x95C5,0x4250174B, CHIP_FAMILY_RV620,"ATI Radeon HD 4250",kNull},
{ 0x95C5,0x30501787, CHIP_FAMILY_RV620,"ATI Radeon HD 4250",kNull},
{ 0x95C5,0x301017AF, CHIP_FAMILY_RV620,"ATI Radeon HD 4230",kNull},
{ 0x95C5,0x01041A93, CHIP_FAMILY_RV620,"Qimonda Radeon HD 3450",kNull},
{ 0x95C5,0x01051A93, CHIP_FAMILY_RV620,"Qimonda Radeon HD 3450",kNull},
/* Evergreen */
{ 0x6898,0x0B001002, CHIP_FAMILY_CYPRESS,"ATI Radeon HD 5870",kZonalis},
{ 0x6898,0x032E1043, CHIP_FAMILY_CYPRESS,"ATI Radeon HD 5870",kUakari},
{ 0x6898,0x00D0106B, CHIP_FAMILY_CYPRESS,"ATI Radeon HD 5870",kLangur},
{ 0x6898,0xE140174B, CHIP_FAMILY_CYPRESS,"ATI Radeon HD 5870",kUakari},
{ 0x6898,0x29611682, CHIP_FAMILY_CYPRESS,"ATI Radeon HD 5870",kUakari},
{ 0x6899,0x21E41458, CHIP_FAMILY_CYPRESS,"ATI Radeon HD 5850",kUakari},
{ 0x6899,0xE140174B, CHIP_FAMILY_CYPRESS,"ATI Radeon HD 5850",kUakari},
{ 0x6899,0xE174174B, CHIP_FAMILY_CYPRESS,"ATI Sapphire Radeon HD 5850",kUakari},
{ 0x6899,0x200A1787, CHIP_FAMILY_CYPRESS,"ATI Radeon HD 5850",kUakari},
{ 0x6899,0x22901787, CHIP_FAMILY_CYPRESS,"ATI Radeon HD 5850",kUakari},
{ 0x689C,0x30201682, CHIP_FAMILY_HEMLOCK,"ATI Radeon HD 5970",kUakari},
{ 0x68A0,0x043A1028, CHIP_FAMILY_BROADWAY,"ATI Mobility Radeon HD 5870",kNomascus}, // ErmaC
{ 0x68A0,0x043A1028, CHIP_FAMILY_CYPRESS,"ATI Mobility Radeon HD 5870",kNomascus},
{ 0x68A1,0x144D103C, CHIP_FAMILY_CYPRESS,"ATI Mobility Radeon HD 5850",kNomascus},
{ 0x68A1,0x1522103C, CHIP_FAMILY_CYPRESS,"ATI Mobility Radeon HD 5850",kHoolock},
{ 0x68A8,0x050E1025, CHIP_FAMILY_CYPRESS,"AMD Radeon HD 6850M",kUakari},
{ 0x68BA,0x174B1482, CHIP_FAMILY_JUNIPER,"ATI Sapphire Radeon HD 6770",kVervet}, // ErmaC
{ 0x68B8,0x00CF106B, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770",kHoolock},
{ 0x68B8,0x21D71458, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770",kVervet},
{ 0x68B8,0x21F61458, CHIP_FAMILY_JUNIPER,"GigaByte HD5770 R577SL-1GD",kVervet}, // ErmaC
{ 0x68B8,0x21F61458, CHIP_FAMILY_JUNIPER,"GigaByte HD5770 R577SL-1GD",kVervet},
{ 0x68B8,0x29901682, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770",kVervet},
{ 0x68B8,0x29911682, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770",kVervet},
{ 0x68B8,0x1482174B, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770",kVervet},
{ 0x68B8,0xE144174B, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770",kHoolock}, // ErmaC
{ 0x68B8,0xE144174B, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770",kHoolock},
{ 0x68B8,0xE147174B, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770",kVervet},
{ 0x68B8,0x200A1787, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770",kVervet}, // ErmaC
{ 0x68B8,0x200A1787, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770",kVervet},
{ 0x68B8,0x200B1787, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770",kVervet},
{ 0x68B8,0x22881787, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770",kVervet},
{ 0x68BE,0x22881787, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5750",kVervet}, // ErmaC
{ 0x68BA,0x174B1482, CHIP_FAMILY_JUNIPER,"ATI Sapphire Radeon HD 6770",kVervet},
{ 0x68BA,0x31501682, CHIP_FAMILY_JUNIPER,"AMD Radeon HD 6770",kVervet},
{ 0x68BE,0x22881787, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5750",kVervet},
{ 0x68BF,0x220E1458, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 6750",kVervet},
{ 0x68BF,0x31401682, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 6750",kVervet}, // ErmaC
{ 0x68BF,0x31401682, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 6750",kVervet},
{ 0x68C0,0x1594103C, CHIP_FAMILY_REDWOOD,"AMD Radeon HD 6570M",kNull},
{ 0x68C0,0x392717AA, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5730",kNull},
{ 0x68C0,0x395217AA, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5730",kNull},
{ 0x68C0,0x395217AA, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5730",kNull}, // ErmaC
{ 0x68C1,0x02051025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull}, // ErmaC
{ 0x68C1,0x02961025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull}, // ErmaC
{ 0x68C1,0x030A1025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull}, // ErmaC
{ 0x68C1,0x033D1025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull}, // ErmaC
{ 0x68C1,0x033E1025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull}, // ErmaC
{ 0x68C1,0x03471025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull}, // ErmaC
{ 0x68C1,0x03561025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull}, // ErmaC
{ 0x68C1,0x03581025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull}, // ErmaC
{ 0x68C1,0x035A1025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull}, // ErmaC
{ 0x68C1,0x035C1025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull}, // ErmaC
{ 0x68C1,0x03641025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull}, // ErmaC
{ 0x68C1,0x03791025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull}, // ErmaC
{ 0x68C1,0x037E1025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull}, // ErmaC
{ 0x68C1,0x03821025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull}, // ErmaC
{ 0x68C1,0x02051025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull},
{ 0x68C1,0x02961025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull},
{ 0x68C1,0x030A1025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull},
{ 0x68C1,0x033D1025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull},
{ 0x68C1,0x033E1025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5650",kNull},
{ 0x68C1,0x03471025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull},
{ 0x68C1,0x03561025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull},
{ 0x68C1,0x03581025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull},
{ 0x68C1,0x035A1025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull},
{ 0x68C1,0x035C1025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull},
{ 0x68C1,0x03641025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull},
{ 0x68C1,0x03791025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull},
{ 0x68C1,0x037E1025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull},
{ 0x68C1,0x03821025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull},
{ 0x68C1,0x9071104D, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5650",kEulemur},
{ 0x68C8,0x2306103C, CHIP_FAMILY_REDWOOD,"ATI FirePro V4800 (FireGL)",kNull},
{ 0x68D8,0x03561043, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5670",kBaboon},
{ 0x68D8,0x21D91458, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5670",kBaboon},
{ 0x68D8,0x5690174B, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5690",kNull},
{ 0x68D8,0x5730174B, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5730",kNull},
{ 0x68D8,0xE151174B, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5670",kEulemur},
{ 0x68D8,0xE151174B, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5670",kEulemur},
{ 0x68D8,0x30001787, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5730",kNull},
{ 0x68D8,0x301017AF, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5730",kNull},
{ 0x68D8,0x301117AF, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5690",kNull},
{ 0x68D9,0x301017AF, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5630",kNull},
{ 0x68DA,0x5630174B, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5630",kNull},
{ 0x68DA,0x30001787, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5630",kNull},
{ 0x68DA,0x301017AF, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5630",kNull},
{ 0x68E0,0x04561028, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5470M",kEulemur},
{ 0x68E0,0x1433103C, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5470M",kEulemur},
{ 0x68E1,0x1426103C, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5430M",kEulemur},
{ 0x68F9,0x010E1002, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5450",kEulemur}, // ErmaC
{ 0x68E4,0x1426103C, CHIP_FAMILY_CEDAR,"AMD Radeon HD 6370M",kNull},
{ 0x68E4,0x397917AA, CHIP_FAMILY_CEDAR,"AMD Radeon HD 6370M",kNull},
{ 0x68F9,0x03741043, CHIP_FAMILY_CEDAR,"ASUS EAH5450", kEulemur}, // ErmaC
{ 0x68F9,0x010E1002, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5450",kEulemur},
{ 0x68F9,0x03741043, CHIP_FAMILY_CEDAR,"ASUS EAH5450",kEulemur},
{ 0x68F9,0x5470174B, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5470",kNull},
{ 0x68F9,0x5490174B, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5490",kNull},
{ 0x68F9,0x5530174B, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5530",kNull},
{ 0x68F9,0x20091787, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5450",kEulemur},
{ 0x68F9,0x22911787, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5450",kEulemur},
{ 0x68F9,0x23401462, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5450",kEulemur}, // ErmaC
{ 0x68F9,0x23401462, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5450",kEulemur},
{ 0x68F9,0x30001787, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5470",kNull},
{ 0x68F9,0x30011787, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5530",kNull},
{ 0x68F9,0x30021787, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5490",kNull},
{ 0x68F9,0x301117AF, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5470",kNull},
{ 0x68F9,0x301217AF, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5490",kNull},
{ 0x68F9,0x301317AF, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5470",kNull},
{ 0x68F9,0xE145174B, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5450",kEulemur},
{ 0x68F9,0xE153174B, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5450",kEulemur},
{ 0x68F9,0xE145174B, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5450",kEulemur}, // ErmaC
{ 0x68F9,0xE153174B, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5450",kEulemur}, // ErmaC
/* Northen Islands */
{ 0x6718,0x0B001002, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6970",kNull},
{ 0x6718,0x67181002, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6970",kNull},
{ 0x6718,0x31301682, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6970",kNull},
{ 0x6719,0x0B001002, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6950",kGibba}, // ErmaC
{ 0x6719,0x186B174B, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6950",kNull}, // ErmaC
{ 0x6719,0x20101787, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6950",kGibba}, // ErmaC
{ 0x6719,0x0B001002, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6950",kGibba},
{ 0x6719,0x186B174B, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6950",kNull},
{ 0x6719,0x20101787, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6950",kGibba},
{ 0x6719,0x21FD1458, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6950",kGibba},
{ 0x671D,0x10020B2A, CHIP_FAMILY_ANTILLES,"AMD Radeon HD 6990",kNull}, // ErmaC
{ 0x671D,0x10021B2A, CHIP_FAMILY_ANTILLES,"AMD Radeon HD 6990",kNull}, // ErmaC
{ 0x671D,0x16823160, CHIP_FAMILY_ANTILLES,"AMD Radeon HD 6990",kNull}, // ErmaC
{ 0x671D,0x10020B2A, CHIP_FAMILY_ANTILLES,"AMD Radeon HD 6990",kNull},
{ 0x671D,0x10021B2A, CHIP_FAMILY_ANTILLES,"AMD Radeon HD 6990",kNull},
{ 0x671D,0x16823160, CHIP_FAMILY_ANTILLES,"AMD Radeon HD 6990",kNull},
{ 0x6720,0x04901028, CHIP_FAMILY_BARTS,"AMD Radeon HD 6970M",kNull}, // ErmaC
{ 0x6720,0x04BA1028, CHIP_FAMILY_BARTS,"AMD Radeon HD 6970M",kElodea}, // ErmaC
{ 0x6720,0x04901028, CHIP_FAMILY_BARTS,"AMD Radeon HD 6970M",kElodea},
{ 0x6720,0x04BA1028, CHIP_FAMILY_BARTS,"AMD Radeon HD 6970M",kElodea},
{ 0x6738,0x00D01002, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed},
{ 0x6738,0x174B174B, CHIP_FAMILY_BARTS,"Sapphire Radeon HD6870",kBulrushes}, // ErmaC
{ 0x6738,0x174B174B, CHIP_FAMILY_BARTS,"Sapphire Radeon HD6870",kBulrushes},
{ 0x6738,0x21FA1002, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed},
{ 0x6738,0x67381002, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed},
{ 0x6738,0x21FA1458, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed},
{ 0x6738,0x31031682, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed},
{ 0x6738,0x31041682, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed},
{ 0x6738,0x31071682, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed}, // ErmaC
{ 0x6738,0x31081682, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed}, // ErmaC ?? kJuncus ??
{ 0x6738,0x31071682, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed},
{ 0x6738,0x31081682, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed}, // ?? kJuncus ??
{ 0x6738,0xE178174B, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed},
{ 0x6738,0x20101787, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed},
{ 0x6738,0x23051787, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed},
{ 0x6739,0xAA881002, CHIP_FAMILY_BARTS,"AMD Radeon HD 6850",kDuckweed},
{ 0x6739,0x03B41043, CHIP_FAMILY_BARTS,"AMD Radeon HD 6850",kDuckweed}, // ErmaC
{ 0x6739,0x21F81458, CHIP_FAMILY_BARTS,"AMD Radeon HD 6850",kBulrushes}, // ErmaC
{ 0x6739,0x03B41043, CHIP_FAMILY_BARTS,"AMD Radeon HD 6850",kDuckweed},
{ 0x6739,0x21F81458, CHIP_FAMILY_BARTS,"AMD Radeon HD 6850",kBulrushes},
{ 0x6739,0x24411462, CHIP_FAMILY_BARTS,"AMD Radeon HD 6850",kDuckweed},
{ 0x6739,0x31101682, CHIP_FAMILY_BARTS,"AMD Radeon HD 6850",kDuckweed},
{ 0x6739,0x31101682, CHIP_FAMILY_BARTS,"AMD Radeon HD 6850",kDuckweed},
{ 0x6739,0x67391002, CHIP_FAMILY_BARTS,"AMD Radeon HD 6850",kDuckweed},
{ 0x6739,0xE177174B, CHIP_FAMILY_BARTS,"AMD Radeon HD 6850",kDuckweed},
{ 0x6740,0x1D121043, CHIP_FAMILY_TURKS,"AMD Radeon HD 6730M",kNull}, // ErmaC
{ 0x6740,0x1D121043, CHIP_FAMILY_TURKS,"AMD Radeon HD 6730M",kNull},
{ 0x6740,0x1631103C, CHIP_FAMILY_TURKS,"AMD FirePro M5950",kNull},
{ 0x6740,0x1657103C, CHIP_FAMILY_TURKS,"AMD Radeon HD 6770M",kNull},
{ 0x6740,0x165A103C, CHIP_FAMILY_TURKS,"AMD Radeon HD 6770M",kNull},
{ 0x6740,0x3388103C, CHIP_FAMILY_TURKS,"AMD Radeon HD 6770M",kNull}, // ErmaC
{ 0x6740,0x3388103C, CHIP_FAMILY_TURKS,"AMD Radeon HD 6770M",kNull},
{ 0x6741,0x050E1025, CHIP_FAMILY_TURKS,"AMD Radeon HD 6650M",kNull},
{ 0x6741,0x05131025, CHIP_FAMILY_TURKS,"AMD Radeon HD 6650M",kNull},
{ 0x6741,0x1646103C, CHIP_FAMILY_TURKS,"AMD Radeon HD 6750M",kNull},
{ 0x6741,0x1688103C, CHIP_FAMILY_TURKS,"AMD Radeon HD 7690M",kNull},
{ 0x6741,0x358D103C, CHIP_FAMILY_TURKS,"AMD Radeon HD 6630M/6650M/6750M",kNull},
{ 0x6741,0x9080104D, CHIP_FAMILY_TURKS,"AMD Radeon HD 6630M",kNull},
{ 0x6741,0x1688103C, CHIP_FAMILY_TURKS,"AMD Radeon HD 7690M",kNull}, // ErmaC
{ 0x6741,0x358D103C, CHIP_FAMILY_TURKS,"AMD Radeon HD 6630M/6650M/6750M",kNull}, // ErmaC
{ 0x6741,0x9080104D, CHIP_FAMILY_TURKS,"AMD Radeon HD 6630M",kNull},
{ 0x6758,0x67581002, CHIP_FAMILY_TURKS,"AMD Radeon HD 6670",kBulrushes},
{ 0x6758,0x00121028, CHIP_FAMILY_TURKS,"AMD Radeon HD 6670",kBulrushes},
{ 0x6758,0x22051458, CHIP_FAMILY_TURKS,"AMD Radeon HD 6670",kBulrushes},
{ 0x6758,0xE194174B, CHIP_FAMILY_TURKS,"AMD Radeon HD 6670",kBulrushes},
{ 0x6758,0x31811682, CHIP_FAMILY_TURKS,"AMD Radeon HD 6670",kBulrushes},
{ 0x6758,0x31831682, CHIP_FAMILY_TURKS,"AMD Radeon HD 6670",kBulrushes},
{ 0x6758,0x67581002, CHIP_FAMILY_TURKS,"AMD Radeon HD 6670",kBulrushes},
{ 0x6758,0xE1941746, CHIP_FAMILY_TURKS,"AMD Radeon HD 6670",kBulrushes},
{ 0x6758,0xE194174B, CHIP_FAMILY_TURKS,"AMD Radeon HD 6670",kBulrushes},
{ 0x6759,0x20121787, CHIP_FAMILY_TURKS,"AMD Radeon HD 6570",kPithecia}, // ErmaC
{ 0x6759,0x20121787, CHIP_FAMILY_TURKS,"AMD Radeon HD 6570",kPithecia},
{ 0x6759,0xE193174B, CHIP_FAMILY_TURKS,"AMD Radeon HD 6570",kNull},
{ 0x6760,0x04CC1028, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6490M",kNull},
{ 0x6760,0x00031179, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6450M",kNull},
{ 0x6760,0x11790003, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6450M",kNull}, // ErmaC
{ 0x6760,0x00031179, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6450M",kNull},
{ 0x6760,0x04CC1028, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6490M",kNull},
{ 0x6760,0x165A103C, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6470M",kNull},
{ 0x6760,0x167D103C, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6470M",kNull}, // ErmaC
{ 0x6760,0x167D103C, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6470M",kNull},
{ 0x6760,0x1CB21043, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6470M",kNull},
{ 0x6779,0x64501092, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6450",kBulrushes},
{ 0x6779,0xE164174B, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6450",kBulrushes},
{ 0x6779,0xE180174B, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6450",kPithecia}, // ErmaC
{ 0x6779,0xE180174B, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6450",kPithecia},
/* standard/default models */
{ 0x9400,0x00000000, CHIP_FAMILY_R600,"ATI Radeon HD 2900 XT",kNull},
{ 0x9405,0x00000000, CHIP_FAMILY_R600,"ATI Radeon HD 2900 GT",kNull},
{ 0x9440,0x00000000, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot},
{ 0x9440,0x00000000, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot},
{ 0x9441,0x00000000, CHIP_FAMILY_RV770,"ATI Radeon HD 4870 X2",kMotmot},
{ 0x9442,0x00000000, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot},
{ 0x9442,0x00000000, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot},
{ 0x9443,0x00000000, CHIP_FAMILY_RV770,"ATI Radeon HD 4850 X2",kMotmot},
{ 0x944C,0x00000000, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot},
{ 0x944E,0x00000000, CHIP_FAMILY_RV770,"ATI Radeon HD 4700 Series",kMotmot},
{ 0x944A,0x00000000, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot},
{ 0x944C,0x00000000, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot},
{ 0x944E,0x00000000, CHIP_FAMILY_RV740,"ATI Radeon HD 4700 Series",kMotmot},
{ 0x9450,0x00000000, CHIP_FAMILY_RV770,"AMD FireStream 9270",kMotmot},
{ 0x9452,0x00000000, CHIP_FAMILY_RV770,"AMD FireStream 9250",kMotmot},
{ 0x9460,0x00000000, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot},
{ 0x9462,0x00000000, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot},
{ 0x9460,0x00000000, CHIP_FAMILY_RV790,"ATI Radeon HD 4800 Series",kMotmot},
{ 0x9462,0x00000000, CHIP_FAMILY_RV790,"ATI Radeon HD 4800 Series",kMotmot},
{ 0x9490,0x00000000, CHIP_FAMILY_RV730,"ATI Radeon HD 4600 Series",kFlicker},
{ 0x9498,0x00000000, CHIP_FAMILY_RV730,"ATI Radeon HD 4600 Series",kFlicker},
{ 0x9480,0x00000000, CHIP_FAMILY_RV730,"ATI Mobility Radeon HD 4650 Series",kGliff},
{ 0x9490,0x00000000, CHIP_FAMILY_RV730,"ATI Radeon HD 4600 Series",kFlicker},
{ 0x9498,0x00000000, CHIP_FAMILY_RV730,"ATI Radeon HD 4600 Series",kFlicker},
{ 0x94B3,0x00000000, CHIP_FAMILY_RV740,"ATI Radeon HD 4770",kFlicker},
{ 0x94B4,0x00000000, CHIP_FAMILY_RV740,"ATI Radeon HD 4700 Series",kFlicker},
{ 0x94B4,0x00000000, CHIP_FAMILY_RV740,"ATI Radeon HD 4700 Series",kFlicker},
{ 0x94B5,0x00000000, CHIP_FAMILY_RV740,"ATI Radeon HD 4770",kFlicker},
{ 0x94C1,0x00000000, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 Series",kIago},
{ 0x94C3,0x00000000, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 Series",kIago},
{ 0x94C1,0x00000000, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 Series",kIago},
{ 0x94C3,0x00000000, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 Series",kIago},
{ 0x94C7,0x00000000, CHIP_FAMILY_RV610,"ATI Radeon HD 2350",kIago},
{ 0x94CC,0x00000000, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 Series",kIago},
{ 0x94CC,0x00000000, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 Series",kIago},
{ 0x9501,0x00000000, CHIP_FAMILY_RV670,"ATI Radeon HD 3800 Series",kMegalodon},
{ 0x9505,0x00000000, CHIP_FAMILY_RV670,"ATI Radeon HD 3800 Series",kMegalodon},
{ 0x9507,0x00000000, CHIP_FAMILY_RV670,"ATI Radeon HD 3830",kMegalodon},
{ 0x950F,0x00000000, CHIP_FAMILY_RV670,"ATI Radeon HD 3870 X2",kMegalodon},
{ 0x9501,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 3800 Series",kMegalodon},
{ 0x9505,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 3800 Series",kMegalodon},
{ 0x9507,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 3830",kMegalodon},
{ 0x950F,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 3870 X2",kMegalodon},
{ 0x9513,0x00000000, CHIP_FAMILY_RV670,"ATI Radeon HD 3850 X2",kMegalodon},
{ 0x9519,0x00000000, CHIP_FAMILY_RV670,"AMD FireStream 9170",kMegalodon},
{ 0x9513,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 3850 X2",kMegalodon},
{ 0x9519,0x00000000, CHIP_FAMILY_RV630,"AMD FireStream 9170",kMegalodon},
{ 0x9540,0x00000000, CHIP_FAMILY_RV710,"ATI Radeon HD 4550",kNull},
{ 0x954F,0x00000000, CHIP_FAMILY_RV710,"ATI Radeon HD 4300/4500 Series",kNull},
{ 0x954F,0x00000000, CHIP_FAMILY_RV710,"ATI Radeon HD 4300/4500 Series",kNull},
{ 0x9552,0x00000000, CHIP_FAMILY_RV710,"ATI Radeon HD 4300/4500 Series",kShrike},
{ 0x9553,0x00000000, CHIP_FAMILY_RV710,"ATI Mobility Radeon HD 4500/5100 Series",kShrike },
{ 0x9588,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 2600 XT",kLamna},
{ 0x9589,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 2600 PRO",kLamna},
{ 0x958A,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 2600 X2 Series",kLamna},
{ 0x9581,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 3600 Series",kNull},
{ 0x9583,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 3600 Series",kNull},
{ 0x9598,0x00000000, CHIP_FAMILY_RV635,"ATI Radeon HD 3600 Series",kMegalodon},
{ 0x9588,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 2600 XT",kNull},
{ 0x9589,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 3610 Series",kNull},
{ 0x958A,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 2600 X2 Series",kLamna},
{ 0x95C0,0x00000000, CHIP_FAMILY_RV620,"ATI Radeon HD 3400 Series",kIago},
{ 0x95C5,0x00000000, CHIP_FAMILY_RV620,"ATI Radeon HD 3400 Series",kIago},
{ 0x9591,0x00000000, CHIP_FAMILY_RV635,"ATI Radeon HD 3600 Series",kNull},
{ 0x9598,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 3600 Series",kMegalodon},
{ 0x95C0,0x00000000, CHIP_FAMILY_RV610,"ATI Radeon HD 3400 Series",kIago},
{ 0x95C5,0x00000000, CHIP_FAMILY_RV610,"ATI Radeon HD 3400 Series",kIago},
/* IGP */
{ 0x9610,0x00000000, CHIP_FAMILY_RS780,"ATI Radeon HD 3200 Graphics",kNull},
{ 0x9610,0x00000000, CHIP_FAMILY_RS780,"ATI Radeon HD 3200 Graphics",kNull},
{ 0x9611,0x00000000, CHIP_FAMILY_RS780,"ATI Radeon 3100 Graphics",kNull},
{ 0x9614,0x00000000, CHIP_FAMILY_RS780,"ATI Radeon HD 3300 Graphics",kNull},
{ 0x9616,0x00000000, CHIP_FAMILY_RS780,"AMD 760G",kNull},
{ 0x9614,0x00000000, CHIP_FAMILY_RS780,"ATI Radeon HD 3300 Graphics",kNull},
{ 0x9616,0x00000000, CHIP_FAMILY_RS780,"ATI Radeon 3000 Graphics",kNull},
{ 0x9710,0x00000000, CHIP_FAMILY_RS880,"ATI Radeon HD 4200",kNull},
{ 0x9715,0x00000000, CHIP_FAMILY_RS880,"ATI Radeon HD 4250",kNull},
{ 0x9714,0x00000000, CHIP_FAMILY_RS880,"ATI Radeon HD 4290",kNull},
{ 0x9715,0x00000000, CHIP_FAMILY_RS880,"ATI Radeon HD 4250",kNull},
/* Evergreen */
{ 0x688D,0x00000000, CHIP_FAMILY_CYPRESS,"AMD FireStream 9350",kUakari},
{ 0x689C,0x00000000, CHIP_FAMILY_HEMLOCK,"ATI Radeon HD 5900 Series",kUakari},
{ 0x689E,0x00000000, CHIP_FAMILY_CYPRESS,"ATI Radeon HD 5800 Series",kUakari},
{ 0x68A0,0x00000000, CHIP_FAMILY_BROADWAY,"ATI Mobility Radeon HD 5800 Series",kNomascus}, // ErmaC
{ 0x68A1,0x00000000, CHIP_FAMILY_BROADWAY,"ATI Mobility Radeon HD 5800 Series",kNull}, // ErmaC
{ 0x68B0,0x00000000, CHIP_FAMILY_BROADWAY,"ATI Mobility Radeon HD 5800 Series",kNull}, // ErmaC
{ 0x68A0,0x00000000, CHIP_FAMILY_CYPRESS,"ATI Mobility Radeon HD 5800 Series",kNomascus}, // CHIP_FAMILY_BROADWAY ??
{ 0x68A1,0x00000000, CHIP_FAMILY_CYPRESS,"ATI Mobility Radeon HD 5800 Series",kNomascus}, // CHIP_FAMILY_BROADWAY ??
{ 0x68A8,0x00000000, CHIP_FAMILY_CYPRESS,"AMD Mobility Radeon HD 6800 Series",kUakari},
{ 0x68B0,0x00000000, CHIP_FAMILY_CYPRESS,"ATI Mobility Radeon HD 5800 Series",kNull}, // CHIP_FAMILY_BROADWAY ??
{ 0x68B8,0x00000000, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5700 Series",kVervet},
{ 0x68B9,0x00000000, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5600 Series",kVervet},
{ 0x68BA,0x00000000, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 6770 Series",kVervet},
{ 0x68BA,0x00000000, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 6700 Series",kVervet},
{ 0x68BE,0x00000000, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5700 Series",kVervet},
{ 0x68BF,0x00000000, CHIP_FAMILY_JUNIPER,"AMD Radeon HD 6700 Series",kVervet},
{ 0x68C0,0x00000000, CHIP_FAMILY_REDWOOD,"AMD Radeon HD 6570M/5700 Series",kNull},
{ 0x68C1,0x00000000, CHIP_FAMILY_REDWOOD,"AMD Radeon HD 6500M/5600/5700 Series",kNull},
{ 0x68D8,0x00000000, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5600 Series",kBaboon},
{ 0x68D9,0x00000000, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5500 Series",kBaboon},
{ 0x68D9,0x00000000, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5500/5600 Series",kBaboon},
{ 0x68DA,0x00000000, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5500 Series",kBaboon},
{ 0x68E4,0x00000000, CHIP_FAMILY_CEDAR,"ATI Radeon HD 6370M Series",kNull},
{ 0x68E0,0x00000000, CHIP_FAMILY_CEDAR,"ATI Mobility Radeon HD 5400 Series",kEulemur},
{ 0x68E1,0x00000000, CHIP_FAMILY_CEDAR,"ATI Mobility Radeon HD 5400 Series",kEulemur},
{ 0x68E4,0x00000000, CHIP_FAMILY_CEDAR,"ATI Radeon HD 6300M Series",kNull},
{ 0x68F9,0x00000000, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5400 Series",kNull},
{ 0x6718,0x00000000, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6970 Series",kNull},
{ 0x6719,0x00000000, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6950 Series",kGibba},
{ 0x671D,0x00000000, CHIP_FAMILY_ANTILLES,"AMD Radeon HD 6900 Series",kNull}, // ErmaC
{ 0x671F,0x00000000, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6900 Series",kNull}, // ErmaC
{ 0x671D,0x00000000, CHIP_FAMILY_ANTILLES,"AMD Radeon HD 6900 Series",kNull},
{ 0x671F,0x00000000, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6900 Series",kNull},
{ 0x6720,0x00000000, CHIP_FAMILY_BARTS,"AMD Radeon HD 6900M Series",kNull},
{ 0x6738,0x00000000, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870 Series",kDuckweed},
{ 0x6740,0x00000000, CHIP_FAMILY_TURKS,"AMD Radeon HD 6700M Series",kNull},
{ 0x6741,0x00000000, CHIP_FAMILY_TURKS,"AMD Radeon HD 6600M/6700M Series",kNull},
{ 0x6750,0x00000000, CHIP_FAMILY_TURKS,"AMD Radeon HD 6600A Series",kNull},
{ 0x6758,0x00000000, CHIP_FAMILY_TURKS,"AMD Radeon HD 6670 Series",kBulrushes},
{ 0x6759,0x00000000, CHIP_FAMILY_TURKS,"AMD Radeon HD 6500 Series",kNull},
{ 0x6759,0x00000000, CHIP_FAMILY_TURKS,"AMD Radeon HD 6570/7570 Series",kNull},
{ 0x6760,0x00000000, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6400M Series",kNull},
{ 0x6761,0x00000000, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6430M Series",kNull},
{ 0x6770,0x00000000, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6400 Series",kNull},
{ 0x6779,0x00000000, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6450 Series",kBulrushes},
branches/ErmaC/Trunk/package/OptionalSettings/KernelFlags.txt
2929
3030
3131
32
3233
List@Singleusermode:Kernel Flags=-s
List@Ignorecaches:Kernel Flags=-f
List@Npci:Kernel Flags=npci=0x2000
List@Npci3:Kernel Flags=npci=0x3000
List@Darkwake:Kernel Flags=darkwake=0
branches/ErmaC/Trunk/package/Resources/nl.lproj/Description.html
1515
1616
1717
18
18
1919
2020
2121
22
23
22
23
2424
25
26
27
25
26
27
2828
29
29
3030
31
31
3232
3333
34
34
3535
3636
3737
</style>
</head>
<body>
<p class="p1">Chameleon is een combinatie van verschillende boot loader componenten. Het is gebaseerd op de fake EFI implementatie van David Elliott die toegevoegd is aan Apple's boot-123 project.</p>
<p class="p1">Chameleon is een combinatie van verschillende bootloader componenten. Het is gebaseerd op de fake EFI implementatie van David Elliott die toegevoegd is aan Apple's boot-123 project.</p>
<p class="p2"><br></p>
<p class="p1">Nieuwe functies in Chameleon 2.0.</p>
<p class="p2"><br></p>
<p class="p1">- Volledig aanpasbare GUI, zodat de Darwin Bootloader een mooier uiterlijk krijgt.</p>
<p class="p1">- Het booten van retail DVD's door direct een ramdisk image te laden zonder hulp van extra programma's.</p>
<p class="p1">- Volledig aanpasbare GUI, zodat de Darwin Bootloader een ander uiterlijk krijgt.</p>
<p class="p1">- Het booten van retail DVD's door direct een image te laden zonder hulp van externe programma's.</p>
<p class="p1">- Slaapstand. Geniet van het hervatten van Mac OS X met een preview image.</p>
<p class="p1">- Het negeren van het SMBIOS zodat de standaard SMBIOS waarden aangepast kunnen worden.</p>
<p class="p1">- Het negeren van de DSDT zodat er een aangepaste verbeterde DSDT kan worden gebruikt om bepaalde problemen op te lossen.</p>
<p class="p1">- Device Property Injection via device-properties string.</p>
<p class="p1">- Het passeren van de SMBIOS zodat de standaard SMBIOS waarden aangepast kunnen worden.</p>
<p class="p1">- Het passeren van de DSDT zodat er een aangepaste verbeterde DSDT kan worden gebruikt om bepaalde problemen op te lossen.</p>
<p class="p1">- Device Property Injectie via device-properties string.</p>
<p class="p1">- Hybride boot0 / boot1h voor MBR en GPT gepartitioneerde schijven.</p>
<p class="p1">- automatische FSB detectie code, zelfs voor recente AMD processoren.</p>
<p class="p1">- Automatische FSB detectie code, zelfs voor recente AMD processors.</p>
<p class="p1">- Apple Software RAID ondersteuning.</p>
<p class="p1">- Nvidia &amp; ATI/AMD graphische kaart autodetectie.</p>
<p class="p1">- Nvidia &amp; ATI/AMD grafische kaart autodetectie.</p>
<p class="p1">- Module ondersteuning</p>
<p class="p1">- Geheugen detectie overgenomen van memtest86: <a href="http://www.memtest.org/"><span class="s1">http://www.memtest.org</span></a></p>
<p class="p1">- Automatisch P-State's &amp; C-State's aangemaakt voor automatisch stroombeheer.</p>
<p class="p1">- Automatisch P-State's &amp; C-State's aangemaakt voor zelf aangestuurd stroombeheer.</p>
<p class="p1">- Bericht logboek.</p>
<p class="p3"><br></p>
<p class="p1">De code is vrijgegeven onder versie 2 van de Gnu Public License.</p>
branches/ErmaC/Trunk/package/Resources/nl.lproj/Conclusion.rtfd/TXT.rtf
1111
1212
1313
14
15
14
15
1616
1717
1818
\cf2 @LOG_FILENAME@\cf3 is geschreven\
naar de root van de door u gekozen partitie.\
\
\cf0 Alstublieft \cf4 lees het\cf0 document om te zien of de installatie\
goed verlopen is en bewaar het als registratie.\
\cf0 Alstublieft \cf4 raadpleeg\cf0 het document om te zien of\
de installatie goed verlopen is en bewaar het ter naslag.\
\cf4 \
\
\
branches/ErmaC/Trunk/package/Resources/ro.lproj/Description.html
1515
1616
1717
18
18
1919
20
20
2121
22
23
24
25
26
27
28
29
30
31
32
33
34
35
22
23
24
25
26
27
28
29
30
31
32
33
34
35
3636
37
37
3838
3939
4040
</style>
</head>
<body>
<p class="p1">Chameleon is a boot loader built using a combination of components which evolved from the development of David Elliott's fake EFI implementation added to Apple's boot-132 project.</p>
<p class="p1">Chameleon este un bootloader cu elemente combinate, derivat din implementarea fake EFI a lui David Elliott si proiectul Apple's boot-132.</p>
<p class="p2"><br></p>
<p class="p1">Chameleon v2 is extended with many features. For example:</p>
<p class="p1">Chameleon v2 ofera un numar de facilitati, cum ar fi:</p>
<p class="p2"><br></p>
<p class="p1">- Fully customizable GUI to bring some color to the Darwin Bootloader.</p>
<p class="p1">- Load a ramdisk to directly boot retail DVDs without additional programs.</p>
<p class="p1">- Hibernation. Enjoy resuming your Mac OS X with a preview image.</p>
<p class="p1">- SMBIOS override to modify the factory SMBIOS values.</p>
<p class="p1">- DSDT override to use a modified fixed DSDT which can solve several issues.</p>
<p class="p1">- Device Property Injection via device-properties string.</p>
<p class="p1">- hybrid boot0 / boot1h for MBR and GPT partitioned disks.</p>
<p class="p1">- Automatic FSB detection code even for recent AMD CPUs.</p>
<p class="p1">- Apple Software RAID support.</p>
<p class="p1">- Nvidia &amp; ATI/AMD Graphics Card Enabler.</p>
<p class="p1">- Module support</p>
<p class="p1">- Memory detection adapted from memtest86: <a href="http://www.memtest.org/"><span class="s1">http://www.memtest.org</span></a></p>
<p class="p1">- Automatic P-State &amp; C-State generation for native power management.</p>
<p class="p1">- Message logging.</p>
<p class="p1">- Interfata grafica complet modificabila dupa preferintele userului.</p>
<p class="p1">- RamDisk pentru boot cu versiuni retail Mac OS X.</p>
<p class="p1">- Hibernare folosind imaginea de hibernare.</p>
<p class="p1">- SMBIOS modificabil pentru a extinde compatibilitatea cu diferite computere.</p>
<p class="p1">- DSDT modificabil, oferind avantajul de a corecta posibilele incompatibilitati hardware.</p>
<p class="p1">- Injectare de proprietati pentru diferite hardware-uri.</p>
<p class="p1">- boot0 / boot1h hibrid, pentru partiti MBR precum si GPT.</p>
<p class="p1">- FSB detectabil automat, chiar si pentru procesoare AMD noi.</p>
<p class="p1">- Suport nativ RAID in OS X.</p>
<p class="p1">- Activare mod video pentru nVidia si ATI/AMD.</p>
<p class="p1">- Suport pentru module</p>
<p class="p1">- Detectare automata a memoriei bazata pe memtest86: <a href="http://www.memtest.org/"><span class="s1">http://www.memtest.org</span></a></p>
<p class="p1">- Generare automata P-states si C-states pentru management al energiei.</p>
<p class="p1">- Logare mesaje.</p>
<p class="p3"><br></p>
<p class="p1">The code is released under version 2 of the Gnu Public License.</p>
<p class="p1">Acest cod este acoperit de versiunea 2 a Gnu Public License.</p>
<p class="p4"><span class="s2"><a href="http://forge.voodooprojects.org/p/chameleon/">http://forge.voodooprojects.org/p/chameleon</a></span></p>
<p class="p2"><br></p>
<p class="p4"><span class="s3">FAQ's: <a href="http://forum.voodooprojects.org/index.php/topic,754.0.html"><span class="s2">http://forum.voodooprojects.org/index.php/topic,754.0.html</span></a></span></p>
branches/ErmaC/Trunk/package/Resources/ro.lproj/Welcome.rtfd/TXT.rtf
1717
1818
1919
20
20
2121
2222
2323
2424
25
25
2626
2727
2828
2929
3030
31
31
3232
3333
3434
......
3636
3737
3838
39
39
4040
4141
4242
......
4444
4545
4646
47
47
4848
4949
5050
5151
5252
53
53
\fs28 \cf0 \
\pard\ri0\qc
\cf2 Do not install to an Apple Macintosh computer\
\cf2 Nu instalati acest software pe un computer Apple Macintosh\
\pard\ri0\qc
\cf0 \
\pard\ri0\ql\qnatural
\fs24 \cf0 Developers :
\fs24 \cf0 Developeri :
\fs20 %DEVELOP%
\fs24 \
\fs18 \
\fs24 Thanks to :
\fs24 Multumiri :
\fs20 %CREDITS%
\fs24 \
\pard\tx360\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
\b0\fs18 \cf0 \
\pard\ri0\ql\qnatural
\b\fs24 \cf0 Package :
\b\fs24 \cf0 Pachet :
\fs20 %PKGDEV%
\b0\fs30 \
\pard\tx360\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\fs20 \cf0 Copyright \'a9 2011-2012
\b \cf3 Translated by : ???\
\b \cf3 Tradus de : RvXtm\
\pard\tx360\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
\b0\fs18 \cf0 \
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\b\fs20 \cf4 This package was builded by: %WHOBUILD%}
\b\fs20 \cf4 Pachet compilat de: %WHOBUILD%}
branches/ErmaC/Trunk/package/Resources/ro.lproj/Conclusion.rtfd/TXT.rtf
77
88
99
10
11
12
10
11
12
1313
14
15
14
15
1616
1717
1818
......
2626
2727
2828
29
29
\f0\b\fs28 \cf0 \
\
The scripts have completed and a file\
named \cf2 @LOG_FILENAME@\cf3 has been\
written to the root of your chosen partition.\
Scripturiile au fost executate iar un fisier\
numit \cf2 @LOG_FILENAME@\cf3 a fost salvat in\
directorul principal al partitiei selectate.\
\
\cf0 Please \cf4 read it\cf0 to find out if the installation was\
successful and keep it for a record of what was done.\
\cf0 Va rugam \cf4 sa il cititi\cf0 pentru a afla daca instalarea a fost\
facuta cu succes si pentru a tine evidenta modificariilor facute.\
\cf4 \
\
\
\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\b \cf6 This package was builded by: %WHOBUILD%}
\b \cf6 Pachet compilat de: %WHOBUILD%}
branches/ErmaC/Trunk/package/buildpkg.sh
6060
6161
6262
63
63
6464
6565
6666
declare -r CHAMELEON_CREDITS=$(awk "NR==10{print;exit}" ${PKGROOT}/../CREDITS)
declare -r CHAMELEON_PKGDEV=$(awk "NR==14{print;exit}" ${PKGROOT}/../CREDITS)
declare -r CHAMELEON_CPRYEAR=$(awk "NR==18{print;exit}" ${PKGROOT}/../CREDITS)
if [[ $(whoami | awk '{print $1}' | cut -d ":" -f3) == "cmorton" ]];then
if [[ $(whoami | awk '{print $1}' | cut -d ":" -f3) == "admin" ]];then
declare -r CHAMELEON_WHOBUILD="VoodooLabs BuildBot"
else
declare -r CHAMELEON_WHOBUILD=$(whoami | awk '{print $1}' | cut -d ":" -f3)
branches/ErmaC/Trunk/Make.rules
1010
1111
1212
13
13
1414
1515
1616
endif
AS = as
LD = ld
CC = cc
CC = gcc
CPP = g++
PAX = /bin/pax
NASM = $(shell which nasm) -p $(SRCROOT)/autoconf.inc
branches/ErmaC/Modules/Chameleon.xcodeproj/project.pbxproj
744744
745745
746746
747
747
748748
749749
750750
......
12991299
13001300
13011301
1302
1303
1304
1305
13061302
13071303
13081304
......
13281324
13291325
13301326
1327
1328
1329
1330
13311331
13321332
13331333
......
15061506
15071507
15081508
1509
15091510
15101511
15111512
......
26722673
26732674
26742675
2675
26762676
26772677
26782678
......
35933593
35943594
35953595
3596
3597
3598
3599
3600
3601
3602
3603
35963604
35973605
35983606
A354B634149514DE00D81AA5 /* MountESP.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = MountESP.sh; sourceTree = "<group>"; };
A354B635149514DE00D81AA5 /* patch */ = {isa = PBXFileReference; lastKnownFileType = file; path = patch; sourceTree = "<group>"; };
A354B636149514DE00D81AA5 /* SetActivePartition.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = SetActivePartition.sh; sourceTree = "<group>"; };
A354B637149514DE00D81AA5 /* UnMountEFIvolumes.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = UnMountEFIvolumes.sh; sourceTree = "<group>"; };
A354B637149514DE00D81AA5 /* UnMountEFIvolumes.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = Scripts.templates/UnMount/UnMountEFIvolumes.sh; sourceTree = "<group>"; };
A354B638149514DE00D81AA5 /* WriteChameleonStage0.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = WriteChameleonStage0.sh; sourceTree = "<group>"; };
A354B639149514DE00D81AA5 /* WriteChameleonStage1.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = WriteChameleonStage1.sh; sourceTree = "<group>"; };
A354B63A149514DE00D81AA5 /* WriteChameleonStage2.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = WriteChameleonStage2.sh; sourceTree = "<group>"; };
B4189A2214BFBF5600ED5B0B /* Cconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Cconfig; sourceTree = "<group>"; };
B4189A2314BFBF7200ED5B0B /* Cconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Cconfig; sourceTree = "<group>"; };
B4189A2414BFBFD100ED5B0B /* Cconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Cconfig; sourceTree = "<group>"; };
B43E407614EE869700CD79F9 /* device_hfsplus_ml_o.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = device_hfsplus_ml_o.png; sourceTree = "<group>"; };
B43E407714EE869800CD79F9 /* device_hfsplus_ml.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = device_hfsplus_ml.png; sourceTree = "<group>"; };
B43E407814EE869A00CD79F9 /* device_hfsraid_ml_o.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = device_hfsraid_ml_o.png; sourceTree = "<group>"; };
B43E407914EE869C00CD79F9 /* device_hfsraid_ml.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = device_hfsraid_ml.png; sourceTree = "<group>"; };
B4189A3414BFC26400ED5B0B /* ati.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ati.c; path = ATiGraphicsEnabler/ati.c; sourceTree = "<group>"; };
B4189A3514BFC26400ED5B0B /* ati.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ati.h; path = ATiGraphicsEnabler/ati.h; sourceTree = "<group>"; };
B4189A3614BFC26400ED5B0B /* ATiGraphicsEnabler.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ATiGraphicsEnabler.c; path = ATiGraphicsEnabler/ATiGraphicsEnabler.c; sourceTree = "<group>"; };
B4189A5214BFC2F700ED5B0B /* NVIDIAGraphicsEnabler.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = NVIDIAGraphicsEnabler.c; path = NVIDIAGraphicsEnabler/NVIDIAGraphicsEnabler.c; sourceTree = "<group>"; };
B4189A5314BFC2F700ED5B0B /* Readme.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = Readme.txt; path = NVIDIAGraphicsEnabler/Readme.txt; sourceTree = "<group>"; };
B4189A5714BFC39700ED5B0B /* GraphicsEnablerModules.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = GraphicsEnablerModules.txt; sourceTree = "<group>"; };
B43E407614EE869700CD79F9 /* device_hfsplus_ml_o.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = device_hfsplus_ml_o.png; sourceTree = "<group>"; };
B43E407714EE869800CD79F9 /* device_hfsplus_ml.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = device_hfsplus_ml.png; sourceTree = "<group>"; };
B43E407814EE869A00CD79F9 /* device_hfsraid_ml_o.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = device_hfsraid_ml_o.png; sourceTree = "<group>"; };
B43E407914EE869C00CD79F9 /* device_hfsraid_ml.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = device_hfsraid_ml.png; sourceTree = "<group>"; };
B442B8C514BE6C7A00EEF9D4 /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = ar; path = ar.lproj/License.rtf; sourceTree = "<group>"; };
B442B8C614BE6C7A00EEF9D4 /* ar */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = ar; path = ar.lproj/Conclusion.rtfd; sourceTree = "<group>"; };
B442B8C714BE6C7A00EEF9D4 /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = ar; path = ar.lproj/Description.html; sourceTree = "<group>"; };
B4AABE5C14C3B8D70055ECD1 /* InstallTheme */,
364E0DE314BCFB7A00F55E58 /* Post */,
364E0DE514BCFB7A00F55E58 /* Pre */,
B49B8D2614FC6E87000327FF /* UnMount */,
);
name = Scripts.templates;
sourceTree = "<group>";
A354B634149514DE00D81AA5 /* MountESP.sh */,
A354B635149514DE00D81AA5 /* patch */,
A354B636149514DE00D81AA5 /* SetActivePartition.sh */,
A354B637149514DE00D81AA5 /* UnMountEFIvolumes.sh */,
A354B638149514DE00D81AA5 /* WriteChameleonStage0.sh */,
A354B639149514DE00D81AA5 /* WriteChameleonStage1.sh */,
A354B63A149514DE00D81AA5 /* WriteChameleonStage2.sh */,
name = lxdialog;
sourceTree = "<group>";
};
B49B8D2614FC6E87000327FF /* UnMount */ = {
isa = PBXGroup;
children = (
A354B637149514DE00D81AA5 /* UnMountEFIvolumes.sh */,
);
name = UnMount;
sourceTree = "<group>";
};
B4AABE5814C3B8B90055ECD1 /* AddOption */ = {
isa = PBXGroup;
children = (
branches/ErmaC/Modules/i386/modules/NVIDIAGraphicsEnabler/nvidia.c
8686
8787
8888
89
90
91
92
8993
9094
9195
9296
97
98
99
100
93101
94102
95103
96104
97105
98106
107
108
109
110
111
112
113
99114
115
100116
101117
102118
......
407423
408424
409425
410
426
411427
412428
413429
......
447463
448464
449465
450
466
451467
452468
453
469
454470
455471
456472
......
458474
459475
460476
461
477
462478
463479
464480
......
488504
489505
490506
491
507
492508
493509
494510
......
519535
520536
521537
522
538
523539
524540
525541
......
537553
538554
539555
540
556
541557
542558
543559
544560
545561
546
562
547563
548564
549565
......
570586
571587
572588
573
589
574590
575591
576592
......
593609
594610
595611
596
612
597613
598614
599615
......
613629
614630
615631
616
617
632
633
618634
619635
620636
......
642658
643659
644660
645
646
661
662
647663
648664
649665
......
653669
654670
655671
656
672
657673
658674
659675
......
678694
679695
680696
681
697
682698
683
699
684700
685701
686702
......
721737
722738
723739
724
740
725741
726742
727743
728
744
729745
730746
731747
......
755771
756772
757773
758
759
774
775
760776
761777
762778
763779
764
780
765781
766
782
767783
768784
769785
......
772788
773789
774790
775
776
791
792
777793
778794
779795
780796
781797
782798
783
784
785
786
799
800
801
802
787803
788
804
789805
790806
791807
......
798814
799815
800816
801
817
802818
803
804
819
820
805821
806822
807823
......
840856
841857
842858
843
844
845
859
860
861
862
846863
847864
848
865
849866
850867
851868
852869
853870
854
855
856
871
872
873
857874
858
859
875
876
860877
861
878
862879
863
864
880
881
865882
866883
867884
868
885
869886
870
887
871888
872
889
873890
874891
875
876
877
892
893
894
878895
879896
880
897
881898
882899
883900
......
12591276
12601277
12611278
1262
1279
12631280
12641281
12651282
1283
12661284
12671285
12681286
1269
1287
1288
12701289
12711290
12721291
......
15161535
15171536
15181537
1538
1539
1540
1541
15191542
15201543
15211544
const char *nvidia_device_type_0[]={ "@0,device_type", "display" };
const char *nvidia_device_type_1[]={ "@1,device_type", "display" };
const char *nvidia_device_type[]={ "device_type","NVDA,Parent" };
/*
TODO: http://forge.voodooprojects.org/p/chameleon/issues/193/
const char *nvidia_device_type[]={ "device_type","NVDA,Child" };
*/
const char *nvidia_name_0[]={ "@0,name","NVDA,Display-A" };
const char *nvidia_name_1[]={ "@1,name","NVDA,Display-B" };
const char *nvidia_slot_name[]={ "AAPL,slot-name", "Slot-1" };
// uint8_t display_cfg_0[]={0x03, 0x01, 0x03, 0x00};
// uint8_t display_cfg_1[]={0xff, 0xff, 0x00, 0x01};
// uint8_t connector_type_1[] ={0x00, 0x08, 0x00, 0x00};
static uint8_t default_NVCAP[]= {
0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a,
0x00, 0x00, 0x00, 0x00
};
static uint8_t default_NVPM[]= {
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00
};
#define NVCAP_LEN ( sizeof(default_NVCAP) / sizeof(uint8_t) )
#define NVPM_LEN ( sizeof(default_NVPM) / sizeof(uint8_t) )
static uint8_t default_dcfg_0[]={0xff, 0xff, 0xff, 0xff};
static uint8_t default_dcfg_1[]={0xff, 0xff, 0xff, 0xff};
{ 0x10DE05E2, "GeForce GTX 260" },
{ 0x10DE05E3, "GeForce GTX 285" },
{ 0x10DE05E6, "GeForce GTX 275" },
{ 0x10DE05E7, "Tesla C1060" }, // ErmaC
{ 0x10DE05E7, "Tesla C1060" },
{ 0x10DE05EA, "GeForce GTX 260" },
{ 0x10DE05EB, "GeForce GTX 295" },
{ 0x10DE05ED, "Quadroplex 2200 D2" },
{ 0x10DE061B, "Quadro VX 200" },
{ 0x10DE061C, "Quadro FX 3600M" },
{ 0x10DE061D, "Quadro FX 2800M" },
{ 0x10DE061E, "Quadro FX 3700M" }, // ErmaC
{ 0x10DE061E, "Quadro FX 3700M" },
{ 0x10DE061F, "Quadro FX 3800M" },
// 0620 - 062F
{ 0x10DE0621, "GeForce GT 230" }, // ErmaC
{ 0x10DE0621, "GeForce GT 230" },
{ 0x10DE0622, "GeForce 9600 GT" },
{ 0x10DE0623, "GeForce 9600 GS" },
{ 0x10DE0625, "GeForce 9600 GSO 512"},
{ 0x10DE0627, "GeForce GT 140" },
{ 0x10DE0628, "GeForce 9800M GTS" },
{ 0x10DE062A, "GeForce 9700M GTS" },
{ 0x10DE062B, "GeForce 9800M GS" }, // ErmaC
{ 0x10DE062B, "GeForce 9800M GS" },
{ 0x10DE062C, "GeForce 9800M GTS" },
{ 0x10DE062D, "GeForce 9600 GT" },
{ 0x10DE062E, "GeForce 9600 GT" },
{ 0x10DE0652, "GeForce GT 130M" },
{ 0x10DE0653, "GeForce GT 120M" },
{ 0x10DE0654, "GeForce GT 220M" },
{ 0x10DE0655, "GeForce GT 120" }, // ErmaC
{ 0x10DE0655, "GeForce GT 120" },
{ 0x10DE0656, "GeForce 9650 S" },
{ 0x10DE0658, "Quadro FX 380" },
{ 0x10DE0659, "Quadro FX 580" },
{ 0x10DE06DD, "Quadro 4000" },
{ 0x10DE06DE, "Tesla M2050" },// TODO: sub-device id: 0x0846
{ 0x10DE06DE, "Tesla M2070" },// TODO: sub-device id: ?
{ 0x10DE06DF, "Tesla M2070-Q" }, // ErmaC
{ 0x10DE06DF, "Tesla M2070-Q" },
// 0x10DE06DE also applies to misc S2050, X2070, M2050, M2070
// 06E0 - 06EF
{ 0x10DE06E0, "GeForce 9300 GE" },
{ 0x10DE06EC, "GeForce G 105M" },
{ 0x10DE06EF, "GeForce G 103M" },
// 06F0 - 06FF
{ 0x10DE06F1, "GeForce G105M" }, // ErmaC
{ 0x10DE06F1, "GeForce G105M" },
{ 0x10DE06F8, "Quadro NVS 420" },
{ 0x10DE06F9, "Quadro FX 370 LP" },
{ 0x10DE06FA, "Quadro NVS 450" },
{ 0x10DE06FB, "Quadro FX 370M" },
{ 0x10DE06FD, "Quadro NVS 295" },
{ 0x10DE06FF, "HICx16 + Graphics" }, // ErmaC
{ 0x10DE06FF, "HICx16 + Graphics" },
// 0700 - 070F
// 0710 - 071F
// 0720 - 072F
// 0820 - 082F
// 0830 - 083F
// 0840 - 084F
{ 0x10DE0840, "GeForce 8200M" }, // ErmaC
{ 0x10DE0840, "GeForce 8200M" },
{ 0x10DE0844, "GeForce 9100M G" },
{ 0x10DE0845, "GeForce 8200M G" },
{ 0x10DE0846, "GeForce 9200" },
{ 0x10DE0866, "GeForce 9400M G" },
{ 0x10DE0867, "GeForce 9400" },
{ 0x10DE0868, "nForce 760i SLI" },
{ 0x10DE0869, "GeForce 9400" }, // ErmaC
{ 0x10DE0869, "GeForce 9400" },
{ 0x10DE086A, "GeForce 9400" },
{ 0x10DE086C, "GeForce 9300 / nForce 730i" },
{ 0x10DE086D, "GeForce 9200" },
// 0880 - 088F
// 0890 - 089F
// 08A0 - 08AF
{ 0x10DE08A0, "GeForce 320M" }, // ErmaC
{ 0x10DE08A4, "GeForce 320M" }, // ErmaC
{ 0x10DE08A0, "GeForce 320M" },
{ 0x10DE08A4, "GeForce 320M" },
// 08B0 - 08BF
// 08C0 - 08CF
// 08D0 - 08DF
{ 0x10DE0A20, "GeForce GT220" },
{ 0x10DE0A22, "GeForce 315" },
{ 0x10DE0A23, "GeForce 210" },
{ 0x10DE0A26, "GeForce 405" }, // ErmaC
{ 0x10DE0A27, "GeForce 405" }, // ErmaC
{ 0x10DE0A26, "GeForce 405" },
{ 0x10DE0A27, "GeForce 405" },
{ 0x10DE0A28, "GeForce GT 230M" },
{ 0x10DE0A29, "GeForce GT 330M" },
{ 0x10DE0A2A, "GeForce GT 230M" },
// 0A30 - 0A3F
{ 0x10DE0A34, "GeForce GT 240M" },
{ 0x10DE0A35, "GeForce GT 325M" },
{ 0x10DE0A38, "Quadro 400" }, // ErmaC
{ 0x10DE0A38, "Quadro 400" },
{ 0x10DE0A3C, "Quadro FX 880M" },
// 0A40 - 0A4F
// 0A50 - 0A5F
{ 0x10DE0A73, "GeForce 305M" },
{ 0x10DE0A74, "GeForce G210M" },
{ 0x10DE0A75, "GeForce G310M" },
{ 0x10DE0A76, "ION" }, // ErmaC
{ 0x10DE0A76, "ION" },
{ 0x10DE0A78, "Quadro FX 380 LP" },
{ 0x10DE0A7A, "GeForce 315M" }, // ErmaC
{ 0x10DE0A7A, "GeForce 315M" },
{ 0x10DE0A7C, "Quadro FX 380M" },
// 0A80 - 0A8F
// 0A90 - 0A9F
{ 0x10DE0CA2, "GeForce GT 320" },
{ 0x10DE0CA3, "GeForce GT 240" },
{ 0x10DE0CA4, "GeForce GT 340" },
{ 0x10DE0CA5, "GeForce GT 220" }, // ErmaC
{ 0x10DE0CA5, "GeForce GT 220" },
{ 0x10DE0CA7, "GeForce GT 330" },
{ 0x10DE0CA8, "GeForce GTS 260M" },
{ 0x10DE0CA9, "GeForce GTS 250M" },
{ 0x10DE0CAC, "GeForce GT 220" }, // ErmaC
{ 0x10DE0CAC, "GeForce GT 220" },
{ 0x10DE0CAF, "GeForce GT 335M" },
// 0CB0 - 0CBF
{ 0x10DE0CB0, "GeForce GTS 350M" },
{ 0x10DE0DC5, "GeForce GTS 450" },
{ 0x10DE0DC6, "GeForce GTS 450" },
{ 0x10DE0DCA, "GF10x" },
{ 0x10DE0DCD, "GeForce GT 555M" }, // ErmaC
{ 0x10DE0DCE, "GeForce GT 555M" }, // ErmaC
{ 0x10DE0DCD, "GeForce GT 555M" },
{ 0x10DE0DCE, "GeForce GT 555M" },
// 0DD0 - 0DDF
{ 0x10DE0DD1, "GeForce GTX 460M" },
{ 0x10DE0DD2, "GeForce GT 445M" },
{ 0x10DE0DD3, "GeForce GT 435M" },
{ 0x10DE0DD6, "GeForce GT 550M" }, // ErmaC
{ 0x10DE0DD6, "GeForce GT 550M" },
{ 0x10DE0DD8, "Quadro 2000" },
{ 0x10DE0DDA, "Quadro 2000M" }, // ErmaC
{ 0x10DE0DDA, "Quadro 2000M" },
{ 0x10DE0DDE, "GF106-ES" },
{ 0x10DE0DDF, "GF106-INT" },
// 0DE0 - 0DEF
{ 0x10DE0DE2, "GeForce GT 420" },
{ 0x10DE0DE5, "GeForce GT 530" },
{ 0x10DE0DEB, "GeForce GT 555M" },
{ 0x10DE0DEC, "GeForce GT 525M" }, // ErmaC
{ 0x10DE0DED, "GeForce GT 520M" }, // ErmaC
{ 0x10DE0DEC, "GeForce GT 525M" },
{ 0x10DE0DED, "GeForce GT 520M" },
{ 0x10DE0DEE, "GeForce GT 415M" },
// 0DF0 - 0DFF
{ 0x10DE0DF0, "GeForce GT 425M" },
{ 0x10DE0DF1, "GeForce GT 420M" },
{ 0x10DE0DF2, "GeForce GT 435M" },
{ 0x10DE0DF3, "GeForce GT 420M" },
{ 0x10DE0DF4, "GeForce GT 540M" }, // ErmaC
{ 0x10DE0DF5, "GeForce GT 525M" }, // ErmaC
{ 0x10DE0DF6, "GeForce GT 550M" }, // ErmaC
{ 0x10DE0DF7, "GeForce GT 520M" }, // ErmaC
{ 0x10DE0DF4, "GeForce GT 540M" },
{ 0x10DE0DF5, "GeForce GT 525M" },
{ 0x10DE0DF6, "GeForce GT 550M" },
{ 0x10DE0DF7, "GeForce GT 520M" },
{ 0x10DE0DF8, "Quadro 600" },
{ 0x10DE0DFA, "Quadro 1000M" }, // ErmaC
{ 0x10DE0DFA, "Quadro 1000M" },
{ 0x10DE0DFE, "GF108 ES" },
{ 0x10DE0DFF, "GF108 INT" },
// 0E00 - 0E0F
{ 0x10DE0E25, "D12U-50" },
// 0E30 - 0E3F
{ 0x10DE0E30, "GeForce GTX 470M" },
{ 0x10DE0E31, "GeForce GTX 485M" }, // ErmaC
{ 0x10DE0E31, "GeForce GTX 485M" },
{ 0x10DE0E38, "GF104GL" },
{ 0x10DE0E3A, "Quadro 3000M" }, // ErmaC
{ 0x10DE0E3B, "Quadro 4000M" }, // ErmaC
{ 0x10DE0E3A, "Quadro 3000M" },
{ 0x10DE0E3B, "Quadro 4000M" },
{ 0x10DE0E3E, "GF104-ES" },
{ 0x10DE0E3F, "GF104-INT" },
// 0E40 - 0E4F
{ 0x10DE1040, "GeForce GT 520" },
// 1050 - 105F
{ 0x10DE1050, "GeForce GT 520M" },
{ 0x10DE1054, "GeForce GT 410M" }, // ErmaC
{ 0x10DE1056, "NVS 4200M" }, // ErmaC
{ 0x10DE1057, "NVS 4200M" }, // ErmaC
{ 0x10DE1051, "GeForce GT 520MX" },
{ 0x10DE1054, "GeForce GT 410M" },
{ 0x10DE1056, "NVS 4200M" },
{ 0x10DE1057, "NVS 4200M" },
// 1060 - 106F
// 1070 - 107F
{ 0x10DE107F, "NVIDIA GF119-ES" }, // ErmaC
{ 0x10DE107F, "NVIDIA GF119-ES" },
// 1080 - 108F
{ 0x10DE1080, "GeForce GTX 580" },
{ 0x10DE1081, "GeForce GTX 570" },
{ 0x10DE1082, "GeForce GTX 560 Ti" },
{ 0x10DE1083, "D13U" },
{ 0x10DE1084, "GeForce GTX 560" }, // ErmaC
{ 0x10DE1086, "GeForce GTX 570" }, // ErmaC
{ 0x10DE1087, "GeForce GTX 560 Ti-448" }, // ErmaC
{ 0x10DE1084, "GeForce GTX 560" },
{ 0x10DE1086, "GeForce GTX 570" },
{ 0x10DE1087, "GeForce GTX 560 Ti-448" },
{ 0x10DE1088, "GeForce GTX 590" },
{ 0x10DE1089, "GeForce GTX 580" }, // ErmaC
{ 0x10DE108B, "GeForce GTX 590" }, // ErmaC
{ 0x10DE1089, "GeForce GTX 580" },
{ 0x10DE108B, "GeForce GTX 590" },
// 1090 - 109F
{ 0x10DE1091, "Tesla M2090" }, // ErmaC
{ 0x10DE1091, "Tesla M2090" },
{ 0x10DE1098, "D13U" },
{ 0x10DE109A, "Quadro 5010M" }, // ErmaC
{ 0x10DE109B, "Quadro 7000" }, // ErmaC
{ 0x10DE109A, "Quadro 5010M" },
{ 0x10DE109B, "Quadro 7000" },
// 10A0 - 10AF
// 10B0 - 10BF
// 10C0 - 10CF
{ 0x10DE10C0, "GeForce 9300 GS" }, // ErmaC
{ 0x10DE10C0, "GeForce 9300 GS" },
{ 0x10DE10C3, "GeForce 8400 GS" },
{ 0x10DE10C5, "GeForce 405" }, // ErmaC
{ 0x10DE10C5, "GeForce 405" },
// 10D0 - 10DF
{ 0x10DE10D8, "NVS 300" }, // ErmaC
{ 0x10DE10D8, "NVS 300" },
// 1200 -
{ 0x10DE1200, "GeForce GTX 560 Ti" },
{ 0x10DE1201, "GeForce GTX 560" }, // ErmaC
{ 0x10DE1241, "GeForce GT 545" }, // ErmaC
{ 0x10DE1243, "GeForce GT 545" }, // ErmaC
{ 0x10DE1201, "GeForce GTX 560" },
{ 0x10DE1241, "GeForce GT 545" },
{ 0x10DE1243, "GeForce GT 545" },
{ 0x10DE1244, "GeForce GTX 550 Ti" },
{ 0x10DE1245, "GeForce GTS 450" },
{ 0x10DE1251, "GeForce GTX 560M" }, // ErmaC
{ 0x10DE1251, "GeForce GTX 560M" },
};
static uint16_t swap16(uint16_t x)
vram_size *= REG32(NVC0_MEM_CTRLR_COUNT);
}
// Workaround for 9600M GT, GT 420/430/440 & GT 525M
// Workaround for 9600M GT, GT 210/420/430/440 & GT 525M
switch (nvda_dev->device_id)
{
case 0x0649: vram_size = 512*1024*1024; break;// 9600M GT
case 0x0A65: vram_size = 1024*1024*1024; break; // GT 210
case 0x0DE0: vram_size = 1024*1024*1024; break; // GT 440
case 0x0DE1: vram_size = 1024*1024*1024; break; // GT 430
case 0x0DE2: vram_size = 1024*1024*1024; break; // GT 420
case 0x0DEC: vram_size = 1024*1024*1024; break; // GT 525M
case 0x0DEC: vram_size = 1024*1024*1024; break; // GT 525M 0DEC
case 0x0DF5: vram_size = 1024*1024*1024; break; // GT 525M 0DF5
default: break;
}
devprop_add_value(device, "VRAM,totalsize", (uint8_t*)&videoRam, 4);
devprop_add_value(device, "model", (uint8_t*)model, strlen(model) + 1);
devprop_add_value(device, "rom-revision", (uint8_t*)biosVersion, strlen(biosVersion) + 1);
//devprop_add_value(device, "@1,connector-type", connector_type_1, 4); // fixme
//devprop_add_value(device, "@0,display-cfg", display_cfg_0, 4);
//devprop_add_value(device, "@1,display-cfg", display_cfg_1, 4);
devprop_add_value(device, "NVPM", default_NVPM, NVPM_LEN);
devprop_add_value(device, "@0,display-cfg", default_dcfg_0, DCFG0_LEN);
devprop_add_value(device, "@1,display-cfg", default_dcfg_1, DCFG1_LEN);
branches/ErmaC/Modules/i386/modules/AMDGraphicsEnabler/ati.c
5050
5151
5252
53
5453
54
5555
5656
5757
......
240240
241241
242242
243
244
243
244
245245
246246
247247
......
250250
251251
252252
253
254253
255254
256
257255
258256
259257
260
261258
262
263259
264
265260
266
267261
268
269262
270
271263
272
273264
274265
275266
......
277268
278269
279270
280
281271
282272
283273
284274
285275
286
287276
288
277
289278
290
291279
292280
293
294281
295282
296283
297
298284
299285
300286
301287
302288
303
304289
305290
306291
307292
308
309293
310
311294
312295
313296
314297
315
316298
317
318299
319
320300
321301
322302
323303
324304
325
326305
327
328306
329307
330
331308
332309
333310
334
335311
336312
337313
338314
339315
340
341316
342317
343
344318
345319
346
347320
348321
349322
350
351323
352
353324
354325
355
356326
357327
358328
359329
360
361330
362331
363
364332
365333
366334
367335
368
369336
370
371337
372338
373339
374340
375341
376
377342
378343
379344
380345
381
382346
383347
384348
385349
386
387350
388351
389
390
352
353
391354
392355
393356
394
395357
396358
397
398359
360
399361
400362
401363
402364
403
404
405365
406
407366
408
409367
410
411368
412
413369
414
415370
416371
417372
418373
419374
420375
421
422376
423377
424378
......
426380
427381
428382
429
430383
431
432384
433
434385
435386
436387
437388
438389
439
440390
441391
442
443392
444393
445394
446
447395
448396
449
450397
451398
452399
453400
454401
455
456402
457403
458404
459
460405
461406
462407
463
464408
465
466409
467410
468411
......
473416
474417
475418
476
477419
478420
479
480421
481
482422
483
484423
485424
486425
487426
488427
489
490428
491
492429
493
494430
495
496431
497432
498433
499
500434
501
502435
503
504436
505437
506438
......
509441
510442
511443
512
444
513445
514
446
515447
516448
517449
518450
519
520
521451
522
523452
524
525
453
526454
527455
528
529456
530
457
531458
532
533
459
534460
535461
536462
537
463
464
538465
466
467
539468
469
540470
541471
542
543472
473
544474
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
475
476
477
478
562479
563
480
481
482
483
484
485
486
487
488
564489
565490
566491
......
568493
569494
570495
571
572496
573497
574498
575
576499
577
578500
579501
580502
581503
582504
583505
584
585506
586
587507
588508
589509
590
591510
592511
593512
594513
595
514
515
596516
597
598
517
518
599519
600520
601521
602
603522
604523
605
524
606525
607526
608527
609
610528
611529
612530
531
532
613533
614
615
616
617534
618535
619536
620537
621538
622
623
624
539
540
541
542
625543
626
627
628
544
545
546
629547
630
631
548
549
632550
633551
634
552
635553
636554
637
638555
639
640556
641557
642
643
644
558
559
645560
646
647561
648562
649563
650564
651
652
565
566
653567
654
568
655569
656570
657571
658
572
573
659574
660575
576
661577
662578
663579
664
665580
581
582
583
666584
667
668
669
670
671
672
585
673586
674
675
676
677587
678588
679
589
680590
591
681592
593
682594
683595
684
596
685597
686
598
599
687600
688
689
601
690602
691603
692604
605
606
693607
694
695
696608
697609
698610
......
701613
702614
703615
616
704617
705
618
706619
707620
708621
709622
710
711
623
624
712625
626
627
713628
714629
715630
......
722637
723638
724639
725
726
727
728
640
641
642
643
729644
730
731
645
646
732647
733648
734649
735650
651
736652
737653
738
739
654
655
656
657
658
740659
741660
742
661
662
743663
744
745
664
665
746666
747667
748668
749669
750670
751
671
752672
753673
754
755674
675
756676
757677
758678
......
762682
763683
764684
765
766
767
685
686
687
688
768689
769690
770691
771
692
772693
694
773695
696
697
698
774699
775
700
776701
777702
778
703
704
705
779706
780707
781708
......
783710
784711
785712
786
787
713
788714
715
716
789717
790718
791719
......
795723
796724
797725
726
727
798728
799
729
800730
801731
802732
803
733
804734
805735
806736
......
14121342
14131343
14141344
1415
1345
1346
14161347
14171348
14181349
CHIP_FAMILY_RV710,
CHIP_FAMILY_RV730,
CHIP_FAMILY_RV740,
CHIP_FAMILY_RV772,
CHIP_FAMILY_RV770,
CHIP_FAMILY_RV772,
CHIP_FAMILY_RV790,
/* Evergreen */
CHIP_FAMILY_CEDAR,
{ 0x9400,0x25521002, CHIP_FAMILY_R600,"ATI Radeon HD 2900 XT",kNull, 0 },
{ 0x9400,0x30001002, CHIP_FAMILY_R600,"ATI Radeon HD 2900 PRO",kNull, 0 },
{ 0x9440,0x0851174B, CHIP_FAMILY_RV770,"ATI Radeon HD 4870",kMotmot, 0 }, // ErmaC
{ 0x9440,0x114A174B, CHIP_FAMILY_RV770,"Sapphire Radeon HD4870 Vapor-X",kCardinal, 0 }, // ErmaC
{ 0x9440,0x0851174B, CHIP_FAMILY_RV770,"ATI Radeon HD 4870",kMotmot, 0 },
{ 0x9440,0x114A174B, CHIP_FAMILY_RV770,"Sapphire Radeon HD4870 Vapor-X",kCardinal, 0 },
{ 0x9440,0x24401682, CHIP_FAMILY_RV770,"ATI Radeon HD 4870",kMotmot, 0 },
{ 0x9440,0x24411682, CHIP_FAMILY_RV770,"ATI Radeon HD 4870",kMotmot, 0 },
{ 0x9440,0x24441682, CHIP_FAMILY_RV770,"ATI Radeon HD 4870",kMotmot, 0 },
{ 0x9441,0x24401682, CHIP_FAMILY_RV770,"ATI Radeon HD 4870 X2",kMotmot, 0 },
{ 0x9442,0x080110B0, CHIP_FAMILY_RV770,"ATI Radeon HD 4850",kMotmot, 0 },
{ 0x9442,0x24701682, CHIP_FAMILY_RV770,"ATI Radeon HD 4850",kMotmot, 0 },
{ 0x9442,0x24711682, CHIP_FAMILY_RV770,"ATI Radeon HD 4850",kMotmot, 0 },
{ 0x9442,0xE104174B, CHIP_FAMILY_RV770,"ATI Radeon HD 4850",kMotmot, 0 },
{ 0x944A,0x30001043, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot, 0 },
{ 0x944A,0x30001458, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot, 0 },
{ 0x944A,0x30001462, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot, 0 },
{ 0x944A,0x30001545, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot, 0 },
{ 0x944A,0x30001682, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot, 0 },
{ 0x944A,0x3000174B, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot, 0 },
{ 0x944A,0x30001787, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot, 0 },
{ 0x944A,0x300017AF, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot, 0 },
{ 0x944C,0x24801682, CHIP_FAMILY_RV770,"ATI Radeon HD 4830",kMotmot, 0 },
{ 0x944E,0x3260174B, CHIP_FAMILY_RV770,"ATI Radeon HD 4810 Series",kMotmot, 0 },
{ 0x944E,0x3261174B, CHIP_FAMILY_RV770,"ATI Radeon HD 4810 series",kMotmot, 0 },
{ 0x944E,0x30001787, CHIP_FAMILY_RV770,"ATI Radeon HD 4730 Series",kMotmot, 0 },
{ 0x944E,0x30101787, CHIP_FAMILY_RV770,"ATI Radeon HD 4810 Series",kMotmot, 0 },
{ 0x944E,0x31001787, CHIP_FAMILY_RV770,"ATI Radeon HD 4820",kMotmot, 0 },
{ 0x9480,0x3628103C, CHIP_FAMILY_RV730,"ATI Radeon HD 4650M",kGliff, 0 },
{ 0x9480,0x9035104D, CHIP_FAMILY_RV730,"ATI Radeon HD 4650M",kGliff, 0 },
{ 0x9490,0x4710174B, CHIP_FAMILY_RV730,"ATI Radeon HD 4710",kNull, 0 },
{ 0x9490,0x20031787, CHIP_FAMILY_RV730,"ATI Radeon HD 4670",kFlicker, 0 },
{ 0x9490,0x30501787, CHIP_FAMILY_RV730,"ATI Radeon HD 4710",kNull, 0 },
{ 0x9490,0x300017AF, CHIP_FAMILY_RV730,"ATI Radeon HD 4710",kNull, 0 },
{ 0x9498,0x21CF1458, CHIP_FAMILY_RV730,"ATI Radeon HD 4600 Series",kNull, 0 },
{ 0x9498,0x24511682, CHIP_FAMILY_RV730,"ATI Radeon HD 4650",kNull, 0 },
{ 0x9498,0x24521682, CHIP_FAMILY_RV730,"ATI Radeon HD 4650",kNull, 0 },
{ 0x9498,0x24541682, CHIP_FAMILY_RV730,"ATI Radeon HD 4650",kNull, 0 },
{ 0x9498,0x29331682, CHIP_FAMILY_RV730,"ATI Radeon HD 4670",kNull, 0 },
{ 0x9498,0x29341682, CHIP_FAMILY_RV730,"ATI Radeon HD 4670",kNull, 0 },
{ 0x9498,0x30501787, CHIP_FAMILY_RV730,"ATI Radeon HD 4700",kNull, 0 },
{ 0x9498,0x31001787, CHIP_FAMILY_RV730,"ATI Radeon HD 4720",kNull, 0 },
{ 0x94B3,0x0D001002, CHIP_FAMILY_RV740,"ATI Radeon HD 4770",kFlicker, 0 },
{ 0x94B3,0x29001682, CHIP_FAMILY_RV740,"ATI Radeon HD 4770",kFlicker, 0 },
{ 0x94B3,0x1170174B, CHIP_FAMILY_RV740,"ATI Radeon HD 4770",kFlicker, 0 },
{ 0x94C1,0x0D021002, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 XT",kNull, 0 },
{ 0x94C1,0x10021002, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 Pro",kNull, 0 },
{ 0x94C1,0x0D021028, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 XT",kNull, 0 },
{ 0x94C1,0x21741458, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 XT",kNull, 0 },
{ 0x94C1,0x10331462, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 XT",kNull, 0 },
{ 0x94C1,0x10401462, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 XT",kNull, 0 },
{ 0x94C1,0x11101462, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 XT",kNull, 0 },
{ 0x94C3,0x03421002, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 PRO",kNull, 0 },
{ 0x94C3,0x30001025, CHIP_FAMILY_RV610,"ATI Radeon HD 2350 Series",kNull, 0 },
{ 0x94C3,0x03021028, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 PRO",kNull, 0 },
{ 0x94C3,0x04021028, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 PRO",kNull, 0 },
{ 0x94C3,0x216A1458, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 PRO",kNull, 0 },
{ 0x94C3,0x21721458, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 PRO",kNull, 0 },
{ 0x94C3,0x30001458, CHIP_FAMILY_RV610,"ATI Radeon HD 3410",kNull, 0 },
{ 0x94C3,0x10321462, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 PRO",kNull, 0 },
{ 0x94C3,0x10411462, CHIP_FAMILY_RV610,"ATI Radeon HD 2400",kNull, 0 },
{ 0x94C3,0x11041462, CHIP_FAMILY_RV610,"ATI Radeon HD 2400",kNull, 0 },
{ 0x94C3,0x11051462, CHIP_FAMILY_RV610,"ATI Radeon HD 2400",kNull, 0 },
{ 0x94C3,0x30001462, CHIP_FAMILY_RV610,"ATI Radeon HD 3410",kNull, 0 },
{ 0x94C3,0x2247148C, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 LE",kNull, 0 },
{ 0x94C3,0x3000148C, CHIP_FAMILY_RV610,"ATI Radeon HD 2350 Series",kNull, 0 },
{ 0x94C3,0x30001642, CHIP_FAMILY_RV610,"ATI Radeon HD 3410",kNull, 0 },
{ 0x94C3,0x37161642, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 PRO",kNull, 0 },
{ 0x94C3,0x3000174B, CHIP_FAMILY_RV610,"ATI Radeon HD 2350 Series",kNull, 0 },
{ 0x94C3,0xE370174B, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 PRO",kNull, 0 },
{ 0x94C3,0xE400174B, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 PRO",kNull, 0 },
{ 0x94C3,0x203817AF, CHIP_FAMILY_RV610,"ATI Radeon HD 2400",kNull, 0 },
{ 0x94C3,0x22471787, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 LE",kNull, 0 },
{ 0x94C3,0x30001787, CHIP_FAMILY_RV610,"ATI Radeon HD 2350 Series",kNull, 0 },
{ 0x94C3,0x01011A93, CHIP_FAMILY_RV610,"Qimonda Radeon HD 2400 PRO",kNull, 0 },
{ 0x9501,0x25421002, CHIP_FAMILY_RV670,"ATI Radeon HD 3870",kNull, 0 },
{ 0x9501,0x30001002, CHIP_FAMILY_RV670,"ATI Radeon HD 3690",kNull, 0 },
{ 0x9501,0x3000174B, CHIP_FAMILY_RV670,"Sapphire Radeon HD 3690",kNull, 0 },
{ 0x9501,0x4750174B, CHIP_FAMILY_RV670,"ATI Radeon HD 4750",kNull, 0 },
{ 0x9501,0x30001787, CHIP_FAMILY_RV670,"ATI Radeon HD 3690",kNull, 0 },
{ 0x9505,0x25421002, CHIP_FAMILY_RV670,"ATI Radeon HD 3850",kNull, 0 },
{ 0x9505,0x30001002, CHIP_FAMILY_RV670,"ATI Radeon HD 3690",kNull, 0 },
{ 0x9505,0x30011043, CHIP_FAMILY_RV670,"ATI Radeon HD 4730",kNull, 0 },
{ 0x9505,0x3000148C, CHIP_FAMILY_RV670,"ATI Radeon HD 3850",kNull, 0 },
{ 0x9505,0x3001148C, CHIP_FAMILY_RV670,"ATI Radeon HD 4730",kNull, 0 },
{ 0x9505,0x3002148C, CHIP_FAMILY_RV670,"ATI Radeon HD 4730",kNull, 0 },
{ 0x9505,0x3003148C, CHIP_FAMILY_RV670,"ATI Radeon HD 4750",kNull, 0 },
{ 0x9505,0x3004148C, CHIP_FAMILY_RV670,"ATI Radeon HD 4750",kNull, 0 },
{ 0x9505,0x3000174B, CHIP_FAMILY_RV670,"Sapphire Radeon HD 3690",kNull, 0 },
{ 0x9505,0x3001174B, CHIP_FAMILY_RV670,"ATI Radeon HD 4750",kNull, 0 },
{ 0x9505,0x3010174B, CHIP_FAMILY_RV670,"ATI Radeon HD 4750",kNull, 0 },
{ 0x9505,0x4730174B, CHIP_FAMILY_RV670,"ATI Radeon HD 4730",kNull, 0 },
{ 0x9505,0x30001787, CHIP_FAMILY_RV670,"ATI Radeon HD 3690",kNull, 0 },
{ 0x9505,0x301017AF, CHIP_FAMILY_RV670,"ATI Radeon HD 4750",kNull, 0 },
{ 0x9540,0x4590174B, CHIP_FAMILY_RV710,"ATI Radeon HD 4590",kNull, 0 },
{ 0x9540,0x30501787, CHIP_FAMILY_RV710,"ATI Radeon HD 4590",kNull, 0 },
{ 0x954F,0x16131462, CHIP_FAMILY_RV710,"ATI Radeon HD 4550",kNull, 0 }, // ErmaC
{ 0x954F,0x20081787, CHIP_FAMILY_RV710,"ATI Radeon HD 4350",kNull, 0 }, // ErmaC
{ 0x954F,0x16131462, CHIP_FAMILY_RV710,"ATI Radeon HD 4550",kNull, 0 },
{ 0x954F,0x20081787, CHIP_FAMILY_RV710,"ATI Radeon HD 4350",kNull, 0 },
{ 0x954F,0x29201682, CHIP_FAMILY_RV710,"ATI Radeon HD 4550",kNull, 0 },
{ 0x954F,0x29211682, CHIP_FAMILY_RV710,"ATI Radeon HD 4550",kNull, 0 },
{ 0x954F,0x30901682, CHIP_FAMILY_RV710,"XFX Radeon HD 4570",kNull, 0 },
{ 0x954F,0x30501787, CHIP_FAMILY_RV710,"ATI Radeon HD 4450",kNull, 0 },
{ 0x954F,0x31001787, CHIP_FAMILY_RV710,"ATI Radeon HD 4520",kNull, 0 },
{ 0x954F,0x3000174B, CHIP_FAMILY_RV710,"ATI Radeon HD 4520",kNull, 0 },
{ 0x954F,0x301017AF, CHIP_FAMILY_RV710,"ATI Radeon HD 4450",kNull, 0 },
{ 0x954F,0x4450174B, CHIP_FAMILY_RV710,"ATI Radeon HD 4450",kNull, 0 },
{ 0x954F,0x4570174B, CHIP_FAMILY_RV710,"Sapphire Radeon HD 4570",kNull, 0 },
{ 0x954F,0xE990174B, CHIP_FAMILY_RV710,"Sapphire Radeon HD 4350",kNull, 0 },
{ 0x954F,0x301017AF, CHIP_FAMILY_RV710,"ATI Radeon HD 4450",kNull, 0 },
{ 0x9552,0x04341028, CHIP_FAMILY_RV710,"ATI Mobility Radeon 4330",kShrike, 0 },
{ 0x9552,0x308B103C, CHIP_FAMILY_RV710,"ATI Mobility Radeon HD 4300 Series",kShrike, 0 },
{ 0x9552,0x3000148C, CHIP_FAMILY_RV710,"ATI Radeon HD 4300/4500 Series",kNull, 0 },
{ 0x9552,0x3000174B, CHIP_FAMILY_RV710,"ATI Radeon HD 4300/4500 Series",kNull, 0 },
{ 0x9552,0x30001787, CHIP_FAMILY_RV710,"ATI Radeon HD 4300/4500 Series",kNull, 0 },
{ 0x9552,0x300017AF, CHIP_FAMILY_RV710,"ATI Radeon HD 4300/4500 Series",kNull, 0 },
{ 0x9553,0x18751043, CHIP_FAMILY_RV710,"ATI Mobility Radeon HD 4570",kShrike, 0 },
{ 0x9553,0x1B321043, CHIP_FAMILY_RV710,"ATI Mobility Radeon HD 4570",kShrike, 0 },
{ 0x9581,0x95811002, CHIP_FAMILY_RV630,"ATI Radeon HD 3600 Series",kNull, 0 },
{ 0x9581,0x3000148C, CHIP_FAMILY_RV630,"ATI Radeon HD 3600 Series",kNull, 0 },
{ 0x9583,0x3000148C, CHIP_FAMILY_RV630,"ATI Radeon HD 3600 Series",kNull, 0 },
{ 0x9588,0x01021A93, CHIP_FAMILY_RV630,"Qimonda Radeon HD 2600 XT",kNull, 0 },
{ 0x9589,0x30001462, CHIP_FAMILY_RV630,"ATI Radeon HD 3610",kNull, 0 },
{ 0x9589,0x0E41174B, CHIP_FAMILY_RV630,"ATI Radeon HD 3600 Series",kNull, 0 },
{ 0x9589,0x30001787, CHIP_FAMILY_RV630,"ATI Radeon HD 3600 Series",kNull, 0 },
{ 0x9589,0x01001A93, CHIP_FAMILY_RV630,"Qimonda Radeon HD 2600 PRO",kNull, 0 },
{ 0x9591,0x2303148C, CHIP_FAMILY_RV635,"ATI Radeon HD 3600 Series",kNull, 0 },
{ 0x9598,0xB3831002, CHIP_FAMILY_RV635,"ATI All-in-Wonder HD",kNull, 0 },
{ 0x9598,0x30001043, CHIP_FAMILY_RV635,"ATI Radeon HD 3730",kNull, 0 },
{ 0x9598,0x30011043, CHIP_FAMILY_RV635,"ATI Radeon HD 4570",kNull, 0 },
{ 0x9598,0x3000148C, CHIP_FAMILY_RV635,"ATI Radeon HD 3730",kNull, 0 },
{ 0x9598,0x3001148C, CHIP_FAMILY_RV635,"ATI Radeon HD 4580",kNull, 0 },
{ 0x9598,0x3031148C, CHIP_FAMILY_RV635,"ATI Radeon HD 4570",kNull, 0 },
{ 0x9598,0x30001545, CHIP_FAMILY_RV635,"VisionTek Radeon HD 2600 XT",kNull, 0 },
{ 0x9598,0x30011545, CHIP_FAMILY_RV635,"VisionTek Radeon HD 2600 Pro",kNull, 0 },
{ 0x9598,0x3000174B, CHIP_FAMILY_RV635,"Sapphire Radeon HD 3730",kNull, 0 },
{ 0x9598,0x3001174B, CHIP_FAMILY_RV635,"Sapphire Radeon HD 3750",kNull, 0 },
{ 0x9598,0x4570174B, CHIP_FAMILY_RV635,"ATI Radeon HD 4570",kNull, 0 },
{ 0x9598,0x4580174B, CHIP_FAMILY_RV635,"ATI Radeon HD 4580",kNull, 0 },
{ 0x9598,0x4610174B, CHIP_FAMILY_RV635,"ATI Radeon HD 4610",kNull, 0 },
{ 0x9598,0x300117AF, CHIP_FAMILY_RV635,"ATI Radeon HD 3750",kNull, 0 },
{ 0x9598,0x301017AF, CHIP_FAMILY_RV635,"ATI Radeon HD 4570",kNull, 0 },
{ 0x9598,0x301117AF, CHIP_FAMILY_RV635,"ATI Radeon HD 4580",kNull, 0 },
{ 0x9598,0x30501787, CHIP_FAMILY_RV635,"ATI Radeon HD 4610",kNull, 0 },
{ 0x95C0,0x3000148C, CHIP_FAMILY_RV620,"ATI Radeon HD 3550",kNull, 0 },
{ 0x95C0,0xE3901745, CHIP_FAMILY_RV620,"ATI Radeon HD 3550",kNull, 0 },
{ 0x95C0,0x3000174B, CHIP_FAMILY_RV620,"Sapphire Radeon HD 3550",kNull, 0 },
{ 0x95C0,0x3002174B, CHIP_FAMILY_RV620,"ATI Radeon HD 3570",kNull, 0 },
{ 0x95C0,0x3020174B, CHIP_FAMILY_RV620,"ATI Radeon HD 4250",kNull, 0 },
{ 0x95C5,0x3003148C, CHIP_FAMILY_RV620,"ATI Radeon HD 4250",kNull, 0 },
{ 0x95C5,0x3032148C, CHIP_FAMILY_RV620,"ATI Radeon HD 4250",kNull, 0 },
{ 0x95C5,0x3033148C, CHIP_FAMILY_RV620,"ATI Radeon HD 4230",kNull, 0 },
{ 0x95C5,0x3010174B, CHIP_FAMILY_RV620,"ATI Radeon HD 4250",kNull, 0 },
{ 0x95C5,0x4250174B, CHIP_FAMILY_RV620,"ATI Radeon HD 4250",kNull, 0 },
{ 0x95C5,0x30501787, CHIP_FAMILY_RV620,"ATI Radeon HD 4250",kNull, 0 },
{ 0x95C5,0x301017AF, CHIP_FAMILY_RV620,"ATI Radeon HD 4230",kNull, 0 },
{ 0x95C5,0x01041A93, CHIP_FAMILY_RV620,"Qimonda Radeon HD 3450",kNull, 0 },
{ 0x95C5,0x01051A93, CHIP_FAMILY_RV620,"Qimonda Radeon HD 3450",kNull, 0 },
/* Evergreen */
{ 0x6898,0x0B001002, CHIP_FAMILY_CYPRESS,"ATI Radeon HD 5870",kZonalis, 0 },
{ 0x6898,0x032E1043, CHIP_FAMILY_CYPRESS,"ATI Radeon HD 5870",kUakari, 0 },
{ 0x6898,0x00D0106B, CHIP_FAMILY_CYPRESS,"ATI Radeon HD 5870",kLangur, 0 },
{ 0x6898,0xE140174B, CHIP_FAMILY_CYPRESS,"ATI Radeon HD 5870",kUakari, 0 },
{ 0x6898,0x29611682, CHIP_FAMILY_CYPRESS,"ATI Radeon HD 5870",kUakari, 0 },
{ 0x6899,0x21E41458, CHIP_FAMILY_CYPRESS,"ATI Radeon HD 5850",kUakari, 0 },
{ 0x6899,0xE140174B, CHIP_FAMILY_CYPRESS,"ATI Radeon HD 5850",kUakari, 0 },
{ 0x6899,0xE174174B, CHIP_FAMILY_CYPRESS,"ATI Sapphire Radeon HD 5850",kUakari, 0 },
{ 0x6899,0x200A1787, CHIP_FAMILY_CYPRESS,"ATI Radeon HD 5850",kUakari, 0 },
{ 0x6899,0x22901787, CHIP_FAMILY_CYPRESS,"ATI Radeon HD 5850",kUakari, 0 },
{ 0x689C,0x30201682, CHIP_FAMILY_HEMLOCK,"ATI Radeon HD 5970",kUakari, 0 },
{ 0x68A0,0x043A1028,CHIP_FAMILY_BROADWAY,"ATI Mobility Radeon HD 5870",kNomascus, 0 }, // ErmaC
{ 0x68A0,0x043A1028, CHIP_FAMILY_CYPRESS,"ATI Mobility Radeon HD 5870",kNomascus, 0 },
{ 0x68A1,0x144D103C,CHIP_FAMILY_CYPRESS,"ATI Mobility Radeon HD 5850",kNomascus, 0 },
{ 0x68A1,0x144D103C, CHIP_FAMILY_CYPRESS,"ATI Mobility Radeon HD 5850",kNomascus, 0 },
{ 0x68A1,0x1522103C, CHIP_FAMILY_CYPRESS,"ATI Mobility Radeon HD 5850",kHoolock, 0 },
{ 0x68A8,0x050E1025, CHIP_FAMILY_CYPRESS,"AMD Radeon HD 6850M",kUakari, 0 },
{ 0x68BA,0x174B1482, CHIP_FAMILY_JUNIPER,"ATI Sapphire Radeon HD 6770",kVervet, 0 }, // ErmaC
{ 0x68B8,0x00CF106B, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770",kHoolock, 0 },
{ 0x68B8,0x21D71458, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770",kVervet, 0 },
{ 0x68B8,0x21F61458, CHIP_FAMILY_JUNIPER,"GigaByte HD5770 R577SL-1GD",kVervet, 0 }, // ErmaC
{ 0x68B8,0x21F61458, CHIP_FAMILY_JUNIPER,"GigaByte HD5770 R577SL-1GD",kVervet, 0 },
{ 0x68B8,0x29901682, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770",kVervet, 0 },
{ 0x68B8,0x29911682, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770",kVervet, 0 },
{ 0x68B8,0x1482174B, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770",kVervet, 0 },
{ 0x68B8,0xE144174B, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770",kHoolock, 0 }, // ErmaC
{ 0x68B8,0xE144174B, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770",kHoolock, 0 },
{ 0x68B8,0xE147174B, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770",kVervet, 0 },
{ 0x68B8,0x200A1787, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770",kVervet, 0 }, // ErmaC
{ 0x68B8,0x200A1787, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770",kVervet, 0 },
{ 0x68B8,0x200B1787, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770",kVervet, 0 },
{ 0x68B8,0x22881787, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770",kVervet, 0 },
{ 0x68BE,0x22881787, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5750",kVervet, 0 }, // ErmaC
{ 0x68BA,0x174B1482, CHIP_FAMILY_JUNIPER,"ATI Sapphire Radeon HD 6770",kVervet, 0 },
{ 0x68BA,0x31501682, CHIP_FAMILY_JUNIPER,"AMD Radeon HD 6770",kVervet, 0 },
{ 0x68BE,0x22881787, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5750",kVervet, 0 },
{ 0x68BF,0x220E1458, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 6750",kVervet, 0 },
{ 0x68BF,0x31401682, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 6750",kVervet, 0 },
{ 0x68C0,0x1594103C, CHIP_FAMILY_REDWOOD,"AMD Radeon HD 6570M",kNull, 0 },
{ 0x68C0,0x392717AA, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5730",kNull, 0 },
{ 0x68C0,0x395217AA, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5730",kNull, 0 },
{ 0x68C0,0x395217AA, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5730",kNull, 0 }, // ErmaC
{ 0x68C1,0x02051025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 }, // ErmaC
{ 0x68C1,0x02961025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 }, // ErmaC
{ 0x68C1,0x030A1025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 }, // ErmaC
{ 0x68C1,0x033D1025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 }, // ErmaC
{ 0x68C1,0x033E1025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 }, // ErmaC
{ 0x68C1,0x03471025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 }, // ErmaC
{ 0x68C1,0x03561025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 }, // ErmaC
{ 0x68C1,0x03581025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 }, // ErmaC
{ 0x68C1,0x035A1025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 }, // ErmaC
{ 0x68C1,0x035C1025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 }, // ErmaC
{ 0x68C1,0x03641025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 }, // ErmaC
{ 0x68C1,0x03791025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 }, // ErmaC
{ 0x68C1,0x037E1025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 }, // ErmaC
{ 0x68C1,0x03821025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 }, // ErmaC
{ 0x68C1,0x02051025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 },
{ 0x68C1,0x02961025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 },
{ 0x68C1,0x030A1025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 },
{ 0x68C1,0x033D1025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 },
{ 0x68C1,0x033E1025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5650",kNull, 0 },
{ 0x68C1,0x03471025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 },
{ 0x68C1,0x03561025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 },
{ 0x68C1,0x03581025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 },
{ 0x68C1,0x035A1025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 },
{ 0x68C1,0x035C1025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 },
{ 0x68C1,0x03641025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 },
{ 0x68C1,0x03791025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 },
{ 0x68C1,0x037E1025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 },
{ 0x68C1,0x03821025, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5750",kNull, 0 },
{ 0x68C1,0x9071104D, CHIP_FAMILY_REDWOOD,"ATI Mobility Radeon HD 5650",kEulemur, 0 },
{ 0x68C8,0x2306103C, CHIP_FAMILY_REDWOOD,"ATI FirePro V4800 (FireGL)",kNull, 0 },
{ 0x68D8,0x03561043, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5670",kBaboon, 0 },
{ 0x68D8,0x21D91458, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5670",kBaboon, 0 },
{ 0x68D8,0x5690174B, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5690",kNull, 0 },
{ 0x68D8,0x5730174B, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5730",kNull, 0 },
{ 0x68D8,0xE151174B, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5670",kEulemur, 0 },
{ 0x68D8,0x30001787, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5730",kNull, 0 },
{ 0x68D8,0x301017AF, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5730",kNull, 0 },
{ 0x68D8,0x301117AF, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5690",kNull, 0 },
{ 0x68D9,0x301017AF, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5630",kNull, 0 },
{ 0x68DA,0x5630174B, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5630",kNull, 0 },
{ 0x68DA,0x30001787, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5630",kNull, 0 },
{ 0x68DA,0x301017AF, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5630",kNull, 0 },
{ 0x68E0,0x04561028, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5470M",kEulemur, 0 },
{ 0x68E0,0x1433103C, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5470M",kEulemur, 0 },
{ 0x68E1,0x1426103C, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5430M",kEulemur, 0 },
{ 0x68F9,0x010E1002, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5450",kEulemur, 0 }, // ErmaC
{ 0x68E4,0x1426103C, CHIP_FAMILY_CEDAR,"AMD Radeon HD 6370M",kNull, 0 },
{ 0x68E4,0x397917AA, CHIP_FAMILY_CEDAR,"AMD Radeon HD 6370M",kNull, 0 },
{ 0x68F9,0x03741043, CHIP_FAMILY_CEDAR,"ASUS EAH5450", kEulemur, 0 }, // ErmaC
{ 0x68F9,0x010E1002, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5450",kEulemur, 0 },
{ 0x68F9,0x03741043, CHIP_FAMILY_CEDAR,"ASUS EAH5450",kEulemur, 0 },
{ 0x68F9,0x5470174B, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5470",kNull, 0 },
{ 0x68F9,0x5490174B, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5490",kNull, 0 },
{ 0x68F9,0x5530174B, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5530",kNull, 0 },
{ 0x68F9,0x20091787, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5450",kEulemur, 0 },
{ 0x68F9,0x22911787, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5450",kEulemur, 0 },
{ 0x68F9,0x23401462, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5450",kEulemur, 0 }, // ErmaC
{ 0x68F9,0x23401462, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5450",kEulemur, 0 },
{ 0x68F9,0x30001787, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5470",kNull, 0 },
{ 0x68F9,0x30011787, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5530",kNull, 0 },
{ 0x68F9,0x30021787, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5490",kNull, 0 },
{ 0x68F9,0x301117AF, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5470",kNull, 0 },
{ 0x68F9,0x301217AF, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5490",kNull, 0 },
{ 0x68F9,0x301317AF, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5470",kNull, 0 },
{ 0x68F9,0xE145174B, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5450",kEulemur, 0 },
{ 0x68F9,0xE153174B, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5450",kEulemur, 0 },
{ 0x68F9,0xE145174B, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5450",kEulemur, 0 }, // ErmaC
{ 0x68F9,0xE153174B, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5450",kEulemur, 0 }, // ErmaC
/* Northen Islands */
{ 0x6718,0x0B001002, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6970",kNull, 0 },
{ 0x6718,0x67181002, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6970",kNull, 0 },
{ 0x6718,0x31301682, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6970",kNull, 0 },
{ 0x6719,0x0B001002, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6950",kGibba, 0 }, // ErmaC
{ 0x6719,0x186B174B, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6950",kNull, 0 }, // ErmaC
{ 0x6719,0x20101787, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6950",kGibba, 0 }, // ErmaC
{ 0x6719,0x0B001002, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6950",kGibba, 0 },
{ 0x6719,0x186B174B, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6950",kNull, 0 },
{ 0x6719,0x20101787, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6950",kGibba, 0 },
{ 0x6719,0x21FD1458, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6950",kGibba, 0 },
{ 0x671D,0x10020B2A, CHIP_FAMILY_ANTILLES,"AMD Radeon HD 6990",kNull, 0 }, // ErmaC
{ 0x671D,0x10021B2A, CHIP_FAMILY_ANTILLES,"AMD Radeon HD 6990",kNull, 0 }, // ErmaC
{ 0x671D,0x16823160, CHIP_FAMILY_ANTILLES,"AMD Radeon HD 6990",kNull, 0 }, // ErmaC
{ 0x671D,0x10020B2A, CHIP_FAMILY_ANTILLES,"AMD Radeon HD 6990",kNull, 0 },
{ 0x671D,0x10021B2A, CHIP_FAMILY_ANTILLES,"AMD Radeon HD 6990",kNull, 0 },
{ 0x671D,0x16823160, CHIP_FAMILY_ANTILLES,"AMD Radeon HD 6990",kNull, 0 },
{ 0x6720,0x04901028, CHIP_FAMILY_BARTS,"AMD Radeon HD 6970M",kNull, 0 }, // ErmaC
{ 0x6720,0x04BA1028, CHIP_FAMILY_BARTS,"AMD Radeon HD 6970M",kElodea, 0 }, // ErmaC
{ 0x6720,0x04901028, CHIP_FAMILY_BARTS,"AMD Radeon HD 6970M",kElodea, 0 },
{ 0x6720,0x04BA1028, CHIP_FAMILY_BARTS,"AMD Radeon HD 6970M",kElodea, 0 },
{ 0x6738,0x00D01002, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed, 0 },
{ 0x6738,0x174B174B, CHIP_FAMILY_BARTS,"Sapphire Radeon HD6870",kBulrushes, 0 }, // ErmaC
{ 0x6738,0x174B174B, CHIP_FAMILY_BARTS,"Sapphire Radeon HD6870",kBulrushes, 0 },
{ 0x6738,0x21FA1002, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed, 0 },
{ 0x6738,0x67381002, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed, 0 },
{ 0x6738,0x21FA1458, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed, 0 },
{ 0x6738,0x31031682, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed, 0 },
{ 0x6738,0x31041682, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed, 0 },
{ 0x6738,0x31071682, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed, 0 }, // ErmaC
{ 0x6738,0x31081682, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed, 0 }, // ErmaC ?? kJuncus ??
{ 0x6738,0x31071682, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed, 0 },
{ 0x6738,0x31081682, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed, 0 }, // ?? kJuncus ??
{ 0x6738,0xE178174B, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed, 0 },
{ 0x6738,0x20101787, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed, 0 },
{ 0x6738,0x23051787, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870",kDuckweed, 0 },
{ 0x6739,0xAA881002, CHIP_FAMILY_BARTS,"AMD Radeon HD 6850",kDuckweed, 0 },
{ 0x6739,0x03B41043, CHIP_FAMILY_BARTS,"AMD Radeon HD 6850",kDuckweed, 0 }, // ErmaC
{ 0x6739,0x21F81458, CHIP_FAMILY_BARTS,"AMD Radeon HD 6850",kBulrushes, 0 }, // ErmaC
{ 0x6739,0x03B41043, CHIP_FAMILY_BARTS,"AMD Radeon HD 6850",kDuckweed, 0 },
{ 0x6739,0x21F81458, CHIP_FAMILY_BARTS,"AMD Radeon HD 6850",kBulrushes, 0 },
{ 0x6739,0x24411462, CHIP_FAMILY_BARTS,"AMD Radeon HD 6850",kDuckweed, 0 },
{ 0x6739,0x31101682, CHIP_FAMILY_BARTS,"AMD Radeon HD 6850",kDuckweed, 0 },
{ 0x6739,0x31101682, CHIP_FAMILY_BARTS,"AMD Radeon HD 6850",kDuckweed, 0 },
{ 0x6739,0x67391002, CHIP_FAMILY_BARTS,"AMD Radeon HD 6850",kDuckweed, 0 },
{ 0x6739,0xE177174B, CHIP_FAMILY_BARTS,"AMD Radeon HD 6850",kDuckweed, 0 },
{ 0x6740,0x1D121043, CHIP_FAMILY_TURKS,"AMD Radeon HD 6730M",kNull, 0 }, // ErmaC
{ 0x6740,0x1D121043, CHIP_FAMILY_TURKS,"AMD Radeon HD 6730M",kNull, 0 },
{ 0x6740,0x1631103C, CHIP_FAMILY_TURKS,"AMD FirePro M5950",kNull, 0 },
{ 0x6740,0x1657103C, CHIP_FAMILY_TURKS,"AMD Radeon HD 6770M",kNull, 0 },
{ 0x6740,0x165A103C, CHIP_FAMILY_TURKS,"AMD Radeon HD 6770M",kNull, 0 },
{ 0x6740,0x3388103C, CHIP_FAMILY_TURKS,"AMD Radeon HD 6770M",kNull, 0 },
{ 0x6741,0x050E1025, CHIP_FAMILY_TURKS,"AMD Radeon HD 6650M",kNull, 0 },
{ 0x6741,0x05131025, CHIP_FAMILY_TURKS,"AMD Radeon HD 6650M",kNull, 0 },
{ 0x6741,0x1646103C, CHIP_FAMILY_TURKS,"AMD Radeon HD 6750M",kNull, 0 },
{ 0x6741,0x1688103C, CHIP_FAMILY_TURKS,"AMD Radeon HD 7690M",kNull, 0 },
{ 0x6741,0x358D103C, CHIP_FAMILY_TURKS,"AMD Radeon HD 6630M/6650M/6750M",kNull, 0 },
{ 0x6741,0x9080104D, CHIP_FAMILY_TURKS,"AMD Radeon HD 6630M",kNull, 0 },
{ 0x6741,0x358D103C, CHIP_FAMILY_TURKS,"AMD Radeon HD 6630M/6650M/6750M",kNull, 0 }, // ErmaC
{ 0x6741,0x9080104D, CHIP_FAMILY_TURKS,"AMD Radeon HD 6630M",kNull, 0 },
{ 0x6758,0x67581002, CHIP_FAMILY_TURKS,"AMD Radeon HD 6670",kBulrushes, 0 },
{ 0x6758,0x00121028, CHIP_FAMILY_TURKS,"AMD Radeon HD 6670",kBulrushes, 0 },
{ 0x6758,0x22051458, CHIP_FAMILY_TURKS,"AMD Radeon HD 6670",kBulrushes, 0 },
{ 0x6758,0xE194174B, CHIP_FAMILY_TURKS,"AMD Radeon HD 6670",kBulrushes, 0 },
{ 0x6758,0x31811682, CHIP_FAMILY_TURKS,"AMD Radeon HD 6670",kBulrushes, 0 },
{ 0x6758,0x31831682, CHIP_FAMILY_TURKS,"AMD Radeon HD 6670",kBulrushes, 0 },
{ 0x6758,0x67581002, CHIP_FAMILY_TURKS,"AMD Radeon HD 6670",kBulrushes, 0 },
{ 0x6758,0xE1941746, CHIP_FAMILY_TURKS,"AMD Radeon HD 6670",kBulrushes, 0 },
{ 0x6758,0xE194174B, CHIP_FAMILY_TURKS,"AMD Radeon HD 6670",kBulrushes, 0 },
{ 0x6759,0x20121787, CHIP_FAMILY_TURKS,"AMD Radeon HD 6570",kPithecia, 0 },
{ 0x6759,0xE193174B, CHIP_FAMILY_TURKS,"AMD Radeon HD 6570",kNull, 0 },
{ 0x6760,0x04CC1028, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6490M",kNull, 0 },
{ 0x6760,0x00031179, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6450M",kNull, 0 },
{ 0x6760,0x11790003, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6450M",kNull, 0 }, // ErmaC
{ 0x6760,0x00031179, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6450M",kNull, 0 },
{ 0x6760,0x04CC1028, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6490M",kNull, 0 },
{ 0x6760,0x165A103C, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6470M",kNull, 0 },
{ 0x6760,0x167D103C, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6470M",kNull, 0 }, // ErmaC
{ 0x6760,0x167D103C, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6470M",kNull, 0 },
{ 0x6760,0x1CB21043, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6470M",kNull, 0 },
{ 0x6779,0x64501092, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6450",kBulrushes, 0 },
{ 0x6779,0xE164174B, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6450",kBulrushes, 0 },
{ 0x6779,0xE180174B, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6450",kPithecia, 0 },
{ 0x6779,0xE164174B, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6450",kBulrushes, 0 },
/* standard/default models */
{ 0x9400,0x00000000, CHIP_FAMILY_R600,"ATI Radeon HD 2900 XT",kNull, 0 },
{ 0x9405,0x00000000, CHIP_FAMILY_R600,"ATI Radeon HD 2900 GT",kNull, 0 },
{ 0x9441,0x00000000, CHIP_FAMILY_RV770,"ATI Radeon HD 4870 X2",kMotmot, 0 },
{ 0x9442,0x00000000, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot, 0 },
{ 0x9443,0x00000000, CHIP_FAMILY_RV770,"ATI Radeon HD 4850 X2",kMotmot, 0 },
{ 0x944A,0x00000000, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot, 0 },
{ 0x944C,0x00000000, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot, 0 },
{ 0x944E,0x00000000, CHIP_FAMILY_RV770,"ATI Radeon HD 4700 Series",kMotmot, 0 },
{ 0x944E,0x00000000, CHIP_FAMILY_RV740,"ATI Radeon HD 4700 Series",kMotmot, 0 },
{ 0x9450,0x00000000, CHIP_FAMILY_RV770,"AMD FireStream 9270",kMotmot, 0 },
{ 0x9452,0x00000000, CHIP_FAMILY_RV770,"AMD FireStream 9250",kMotmot, 0 },
{ 0x9460,0x00000000, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot, 0 },
{ 0x9462,0x00000000, CHIP_FAMILY_RV770,"ATI Radeon HD 4800 Series",kMotmot, 0 },
{ 0x9460,0x00000000, CHIP_FAMILY_RV790,"ATI Radeon HD 4800 Series",kMotmot, 0 },
{ 0x9462,0x00000000, CHIP_FAMILY_RV790,"ATI Radeon HD 4800 Series",kMotmot, 0 },
{ 0x9480,0x00000000, CHIP_FAMILY_RV730,"ATI Mobility Radeon HD 4650 Series",kGliff, 0 },
{ 0x9490,0x00000000, CHIP_FAMILY_RV730,"ATI Radeon HD 4600 Series",kFlicker, 0 },
{ 0x9498,0x00000000, CHIP_FAMILY_RV730,"ATI Radeon HD 4600 Series",kFlicker, 0 },
{ 0x94C7,0x00000000, CHIP_FAMILY_RV610,"ATI Radeon HD 2350",kIago, 0 },
{ 0x94CC,0x00000000, CHIP_FAMILY_RV610,"ATI Radeon HD 2400 Series",kIago, 0 },
{ 0x9501,0x00000000, CHIP_FAMILY_RV670,"ATI Radeon HD 3800 Series",kMegalodon, 0 },
{ 0x9505,0x00000000, CHIP_FAMILY_RV670,"ATI Radeon HD 3800 Series",kMegalodon, 0 },
{ 0x9507,0x00000000, CHIP_FAMILY_RV670,"ATI Radeon HD 3830",kMegalodon, 0 },
{ 0x950F,0x00000000, CHIP_FAMILY_RV670,"ATI Radeon HD 3870 X2",kMegalodon, 0 },
{ 0x9501,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 3800 Series",kMegalodon, 0 },
{ 0x9505,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 3800 Series",kMegalodon, 0 },
{ 0x9507,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 3830",kMegalodon, 0 },
{ 0x950F,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 3870 X2",kMegalodon, 0 },
{ 0x9513,0x00000000, CHIP_FAMILY_RV670,"ATI Radeon HD 3850 X2",kMegalodon, 0 },
{ 0x9519,0x00000000, CHIP_FAMILY_RV670,"AMD FireStream 9170",kMegalodon, 0 },
{ 0x9513,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 3850 X2",kMegalodon, 0 },
{ 0x9519,0x00000000, CHIP_FAMILY_RV630,"AMD FireStream 9170",kMegalodon, 0 },
{ 0x9540,0x00000000, CHIP_FAMILY_RV710,"ATI Radeon HD 4550",kNull, 0 },
{ 0x954F,0x00000000, CHIP_FAMILY_RV710,"ATI Radeon HD 4300/4500 Series",kNull, 0 },
{ 0x9552,0x00000000, CHIP_FAMILY_RV710,"ATI Radeon HD 4300/4500 Series",kShrike, 0 },
{ 0x9553,0x00000000, CHIP_FAMILY_RV710,"ATI Mobility Radeon HD 4500/5100 Series",kShrike , 0 },
{ 0x9588,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 2600 XT",kLamna, 0 },
{ 0x9589,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 2600 PRO",kLamna, 0 },
{ 0x9581,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 3600 Series",kNull, 0 },
{ 0x9583,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 3600 Series",kNull, 0 },
{ 0x9588,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 2600 XT",kNull, 0 },
{ 0x9589,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 3610 Series",kNull, 0 },
{ 0x958A,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 2600 X2 Series",kLamna, 0 },
{ 0x9598,0x00000000, CHIP_FAMILY_RV635,"ATI Radeon HD 3600 Series",kMegalodon, 0 },
{ 0x9591,0x00000000, CHIP_FAMILY_RV635,"ATI Radeon HD 3600 Series",kNull, 0 },
{ 0x9598,0x00000000, CHIP_FAMILY_RV630,"ATI Radeon HD 3600 Series",kMegalodon, 0 },
{ 0x95C0,0x00000000, CHIP_FAMILY_RV620,"ATI Radeon HD 3400 Series",kIago, 0 },
{ 0x95C5,0x00000000, CHIP_FAMILY_RV620,"ATI Radeon HD 3400 Series",kIago, 0 },
{ 0x95C0,0x00000000, CHIP_FAMILY_RV610,"ATI Radeon HD 3400 Series",kIago, 0 },
{ 0x95C5,0x00000000, CHIP_FAMILY_RV610,"ATI Radeon HD 3400 Series",kIago, 0 },
/* IGP */
{ 0x9610,0x00000000, CHIP_FAMILY_RS780,"ATI Radeon HD 3200 Graphics",kNull, 0 },
{ 0x9611,0x00000000, CHIP_FAMILY_RS780,"ATI Radeon 3100 Graphics",kNull, 0 },
{ 0x9614,0x00000000, CHIP_FAMILY_RS780,"ATI Radeon HD 3300 Graphics",kNull, 0 },
{ 0x9616,0x00000000, CHIP_FAMILY_RS780,"AMD 760G",kNull, 0 },
{ 0x9616,0x00000000, CHIP_FAMILY_RS780,"ATI Radeon 3000 Graphics",kNull, 0 },
{ 0x9710,0x00000000, CHIP_FAMILY_RS880,"ATI Radeon HD 4200",kNull, 0 },
{ 0x9715,0x00000000, CHIP_FAMILY_RS880,"ATI Radeon HD 4250",kNull, 0 },
{ 0x9714,0x00000000, CHIP_FAMILY_RS880,"ATI Radeon HD 4290",kNull, 0 },
{ 0x9715,0x00000000, CHIP_FAMILY_RS880,"ATI Radeon HD 4250",kNull, 0 },
/* Evergreen */
{ 0x688D,0x00000000, CHIP_FAMILY_CYPRESS,"AMD FireStream 9350",kUakari, 0 },
{ 0x689C,0x00000000, CHIP_FAMILY_HEMLOCK,"ATI Radeon HD 5900 Series",kUakari, 0 },
{ 0x689E,0x00000000, CHIP_FAMILY_CYPRESS,"ATI Radeon HD 5800 Series",kUakari, 0 },
{ 0x68A0,0x00000000, CHIP_FAMILY_BROADWAY,"ATI Mobility Radeon HD 5800 Series",kNomascus, 0 }, // ErmaC
{ 0x68A1,0x00000000, CHIP_FAMILY_BROADWAY,"ATI Mobility Radeon HD 5800 Series",kNull, 0 }, // ErmaC
{ 0x68B0,0x00000000, CHIP_FAMILY_BROADWAY,"ATI Mobility Radeon HD 5800 Series",kNull, 0 }, // ErmaC
{ 0x68A0,0x00000000, CHIP_FAMILY_CYPRESS,"ATI Mobility Radeon HD 5800 Series",kNomascus, 0 }, // CHIP_FAMILY_BROADWAY ??
{ 0x68A1,0x00000000, CHIP_FAMILY_CYPRESS,"ATI Mobility Radeon HD 5800 Series",kNomascus, 0 }, // CHIP_FAMILY_BROADWAY ??
{ 0x68A8,0x00000000, CHIP_FAMILY_CYPRESS,"AMD Mobility Radeon HD 6800 Series",kUakari, 0 },
{ 0x68B0,0x00000000, CHIP_FAMILY_CYPRESS,"ATI Mobility Radeon HD 5800 Series",kNull, 0 }, // CHIP_FAMILY_BROADWAY ??
{ 0x68B8,0x00000000, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5700 Series",kVervet, 0 },
{ 0x68B9,0x00000000, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5600 Series",kVervet, 0 },
{ 0x68BA,0x00000000, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 6770 Series",kVervet, 0 },
{ 0x68BA,0x00000000, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 6700 Series",kVervet, 0 },
{ 0x68BE,0x00000000, CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5700 Series",kVervet, 0 },
{ 0x68BF,0x00000000, CHIP_FAMILY_JUNIPER,"AMD Radeon HD 6700 Series",kVervet, 0 },
{ 0x68C0,0x00000000, CHIP_FAMILY_REDWOOD,"AMD Radeon HD 6570M/5700 Series",kNull, 0 },
{ 0x68C1,0x00000000, CHIP_FAMILY_REDWOOD,"AMD Radeon HD 6500M/5600/5700 Series",kNull, 0 },
{ 0x68D8,0x00000000, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5600 Series",kBaboon, 0 },
{ 0x68D9,0x00000000, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5500 Series",kBaboon, 0 },
{ 0x68D9,0x00000000, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5500/5600 Series",kBaboon, 0 },
{ 0x68DA,0x00000000, CHIP_FAMILY_REDWOOD,"ATI Radeon HD 5500 Series",kBaboon, 0 },
{ 0x68E4,0x00000000, CHIP_FAMILY_CEDAR,"ATI Radeon HD 6370M Series",kNull, 0 },
{ 0x68E0,0x00000000, CHIP_FAMILY_CEDAR,"ATI Mobility Radeon HD 5400 Series",kEulemur, 0 },
{ 0x68E1,0x00000000, CHIP_FAMILY_CEDAR,"ATI Mobility Radeon HD 5400 Series",kEulemur, 0 },
{ 0x68E4,0x00000000, CHIP_FAMILY_CEDAR,"ATI Radeon HD 6300M Series",kNull, 0 },
{ 0x68F9,0x00000000, CHIP_FAMILY_CEDAR,"ATI Radeon HD 5400 Series",kNull, 0 },
{ 0x6718,0x00000000, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6970 Series",kNull, 0 },
{ 0x6719,0x00000000, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6950 Series",kGibba, 0 },
{ 0x671D,0x00000000, CHIP_FAMILY_ANTILLES,"AMD Radeon HD 6900 Series",kNull, 0 }, // ErmaC
{ 0x671F,0x00000000, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6900 Series",kNull, 0 }, // ErmaC
{ 0x671D,0x00000000, CHIP_FAMILY_ANTILLES,"AMD Radeon HD 6900 Series",kNull, 0 },
{ 0x671F,0x00000000, CHIP_FAMILY_CAYMAN,"AMD Radeon HD 6900 Series",kNull, 0 },
{ 0x6720,0x00000000, CHIP_FAMILY_BARTS,"AMD Radeon HD 6900M Series",kNull, 0 },
{ 0x6738,0x00000000, CHIP_FAMILY_BARTS,"AMD Radeon HD 6870 Series",kDuckweed, 0 },
{ 0x6740,0x00000000, CHIP_FAMILY_TURKS,"AMD Radeon HD 6700M Series",kNull, 0 },
{ 0x6741,0x00000000, CHIP_FAMILY_TURKS,"AMD Radeon HD 6600M/6700M Series",kNull, 0 },
{ 0x6750,0x00000000, CHIP_FAMILY_TURKS,"AMD Radeon HD 6600A Series",kNull, 0 },
{ 0x6758,0x00000000, CHIP_FAMILY_TURKS,"AMD Radeon HD 6670 Series",kBulrushes, 0 },
{ 0x6759,0x00000000, CHIP_FAMILY_TURKS,"AMD Radeon HD 6500 Series",kNull, 0 },
{ 0x6759,0x00000000, CHIP_FAMILY_TURKS,"AMD Radeon HD 6570/7570 Series",kNull, 0 },
{ 0x6760,0x00000000, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6400M Series",kNull, 0 },
{ 0x6761,0x00000000, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6430M Series",kNull, 0 },
{ 0x6770,0x00000000, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6400 Series",kNull, 0 },
{ 0x6779,0x00000000, CHIP_FAMILY_CAICOS,"AMD Radeon HD 6450 Series",kBulrushes, 0 },
}
}
if (!card->info->device_id || !card->info->cfg_name)
//if (!card->info->device_id || !card->info->cfg_name)
if (!card->info->device_id)
{
printf("Unsupported card!\n");
return false;
branches/ErmaC/Modules/package/Scripts.templates/UnMount/UnMountEFIvolumes.sh
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
#!/bin/bash
echo "==============================================="
echo "Unmount all volumes named EFI"
# loop through and un-mount ALL mounted 'EFI' system partitions - Thanks kizwan
# Receives targetVolumeChosenByUser: To write install log to.
# Receives scriptDir: The location of the main script dir.
if [ "$#" -eq 2 ]; then
targetVolumeChosenByUser="$1"
scriptDir="$2"
# echo "DEBUG: passed argument for targetVolumeChosenByUser = $targetVolumeChosenByUser"
# echo "DEBUG: passed argument for scriptDir = $scriptDir"
else
echo "Error - wrong number of values passed" >&2
exit 9
fi
# Count of 5 exists incase for some reason /Volumes/EFI fails
# be unmounted in which case the loop would run forever.
attempts=1
while [ "$( df | grep EFI )" ] && [ $attempts -lt 5 ]; do
"$scriptDir"InstallLog.sh "${targetVolumeChosenByUser}" "Volume named 'EFI' is mounted..."
"$scriptDir"InstallLog.sh "${targetVolumeChosenByUser}" "Unmounting $( df | grep EFI | awk '{print $1}' )"
umount -f $( df | grep EFI | awk '{print $1}' )
(( attempts++ ))
done
if [ $attempts = 5 ]; then
"$scriptDir"InstallLog.sh "${targetVolumeChosenByUser}" "Failed to unmount 'EFI' System Partition."
exit 1
fi
exit 0
branches/ErmaC/Modules/package/OptionalSettings/KernelFlags.txt
2929
3030
3131
32
3233
List@Singleusermode:Kernel Flags=-s
List@Ignorecaches:Kernel Flags=-f
List@Npci:Kernel Flags=npci=0x2000
List@Npci3:Kernel Flags=npci=0x3000
List@Darkwake:Kernel Flags=darkwake=0
branches/ErmaC/Modules/package/Scripts/Sub/UnMountEFIvolumes.sh
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
#!/bin/bash
echo "==============================================="
echo "Unmount all volumes named EFI"
# loop through and un-mount ALL mounted 'EFI' system partitions - Thanks kizwan
# Receives targetVolumeChosenByUser: To write install log to.
# Receives scriptDir: The location of the main script dir.
if [ "$#" -eq 2 ]; then
targetVolumeChosenByUser="$1"
scriptDir="$2"
# echo "DEBUG: passed argument for targetVolumeChosenByUser = $targetVolumeChosenByUser"
# echo "DEBUG: passed argument for scriptDir = $scriptDir"
else
echo "Error - wrong number of values passed" >&2
exit 9
fi
# Count of 5 exists incase for some reason /Volumes/EFI fails
# be unmounted in which case the loop would run forever.
attempts=1
while [ "$( df | grep EFI )" ] && [ $attempts -lt 5 ]; do
"$scriptDir"InstallLog.sh "${targetVolumeChosenByUser}" "Volume named 'EFI' is mounted..."
"$scriptDir"InstallLog.sh "${targetVolumeChosenByUser}" "Unmounting $( df | grep EFI | awk '{print $1}' )"
umount -f $( df | grep EFI | awk '{print $1}' )
(( attempts++ ))
done
if [ $attempts = 5 ]; then
"$scriptDir"InstallLog.sh "${targetVolumeChosenByUser}" "Failed to unmount 'EFI' System Partition."
exit 1
fi
exit 0
branches/ErmaC/Modules/package/Resources/nl.lproj/Description.html
1515
1616
1717
18
18
1919
2020
2121
22
23
22
23
2424
25
26
27
25
26
27
2828
29
29
3030
31
31
3232
3333
34
34
3535
3636
3737
</style>
</head>
<body>
<p class="p1">Chameleon is een combinatie van verschillende boot loader componenten. Het is gebaseerd op de fake EFI implementatie van David Elliott die toegevoegd is aan Apple's boot-123 project.</p>
<p class="p1">Chameleon is een combinatie van verschillende bootloader componenten. Het is gebaseerd op de fake EFI implementatie van David Elliott die toegevoegd is aan Apple's boot-123 project.</p>
<p class="p2"><br></p>
<p class="p1">Nieuwe functies in Chameleon 2.0.</p>
<p class="p2"><br></p>
<p class="p1">- Volledig aanpasbare GUI, zodat de Darwin Bootloader een mooier uiterlijk krijgt.</p>
<p class="p1">- Het booten van retail DVD's door direct een ramdisk image te laden zonder hulp van extra programma's.</p>
<p class="p1">- Volledig aanpasbare GUI, zodat de Darwin Bootloader een ander uiterlijk krijgt.</p>
<p class="p1">- Het booten van retail DVD's door direct een image te laden zonder hulp van externe programma's.</p>
<p class="p1">- Slaapstand. Geniet van het hervatten van Mac OS X met een preview image.</p>
<p class="p1">- Het negeren van het SMBIOS zodat de standaard SMBIOS waarden aangepast kunnen worden.</p>
<p class="p1">- Het negeren van de DSDT zodat er een aangepaste verbeterde DSDT kan worden gebruikt om bepaalde problemen op te lossen.</p>
<p class="p1">- Device Property Injection via device-properties string.</p>
<p class="p1">- Het passeren van de SMBIOS zodat de standaard SMBIOS waarden aangepast kunnen worden.</p>
<p class="p1">- Het passeren van de DSDT zodat er een aangepaste verbeterde DSDT kan worden gebruikt om bepaalde problemen op te lossen.</p>
<p class="p1">- Device Property Injectie via device-properties string.</p>
<p class="p1">- Hybride boot0 / boot1h voor MBR en GPT gepartitioneerde schijven.</p>
<p class="p1">- automatische FSB detectie code, zelfs voor recente AMD processoren.</p>
<p class="p1">- Automatische FSB detectie code, zelfs voor recente AMD processors.</p>
<p class="p1">- Apple Software RAID ondersteuning.</p>
<p class="p1">- Nvidia &amp; ATI/AMD graphische kaart autodetectie.</p>
<p class="p1">- Nvidia &amp; ATI/AMD grafische kaart autodetectie.</p>
<p class="p1">- Module ondersteuning</p>
<p class="p1">- Geheugen detectie overgenomen van memtest86: <a href="http://www.memtest.org/"><span class="s1">http://www.memtest.org</span></a></p>
<p class="p1">- Automatisch P-State's &amp; C-State's aangemaakt voor automatisch stroombeheer.</p>
<p class="p1">- Automatisch P-State's &amp; C-State's aangemaakt voor zelf aangestuurd stroombeheer.</p>
<p class="p1">- Bericht logboek.</p>
<p class="p3"><br></p>
<p class="p1">De code is vrijgegeven onder versie 2 van de Gnu Public License.</p>
branches/ErmaC/Modules/package/Resources/nl.lproj/Conclusion.rtfd/TXT.rtf
1111
1212
1313
14
15
14
15
1616
1717
1818
\cf2 @LOG_FILENAME@\cf3 is geschreven\
naar de root van de door u gekozen partitie.\
\
\cf0 Alstublieft \cf4 lees het\cf0 document om te zien of de installatie\
goed verlopen is en bewaar het als registratie.\
\cf0 Alstublieft \cf4 raadpleeg\cf0 het document om te zien of\
de installatie goed verlopen is en bewaar het ter naslag.\
\cf4 \
\
\
branches/ErmaC/Modules/package/Resources/ro.lproj/Description.html
1515
1616
1717
18
18
1919
20
20
2121
22
23
24
25
26
27
28
29
30
31
32
33
34
35
22
23
24
25
26
27
28
29
30
31
32
33
34
35
3636
37
37
3838
3939
4040
</style>
</head>
<body>
<p class="p1">Chameleon is a boot loader built using a combination of components which evolved from the development of David Elliott's fake EFI implementation added to Apple's boot-132 project.</p>
<p class="p1">Chameleon este un bootloader cu elemente combinate, derivat din implementarea fake EFI a lui David Elliott si proiectul Apple's boot-132.</p>
<p class="p2"><br></p>
<p class="p1">Chameleon v2 is extended with many features. For example:</p>
<p class="p1">Chameleon v2 ofera un numar de facilitati, cum ar fi:</p>
<p class="p2"><br></p>
<p class="p1">- Fully customizable GUI to bring some color to the Darwin Bootloader.</p>
<p class="p1">- Load a ramdisk to directly boot retail DVDs without additional programs.</p>
<p class="p1">- Hibernation. Enjoy resuming your Mac OS X with a preview image.</p>
<p class="p1">- SMBIOS override to modify the factory SMBIOS values.</p>
<p class="p1">- DSDT override to use a modified fixed DSDT which can solve several issues.</p>
<p class="p1">- Device Property Injection via device-properties string.</p>
<p class="p1">- hybrid boot0 / boot1h for MBR and GPT partitioned disks.</p>
<p class="p1">- Automatic FSB detection code even for recent AMD CPUs.</p>
<p class="p1">- Apple Software RAID support.</p>
<p class="p1">- Nvidia &amp; ATI/AMD Graphics Card Enabler.</p>
<p class="p1">- Module support</p>
<p class="p1">- Memory detection adapted from memtest86: <a href="http://www.memtest.org/"><span class="s1">http://www.memtest.org</span></a></p>
<p class="p1">- Automatic P-State &amp; C-State generation for native power management.</p>
<p class="p1">- Message logging.</p>
<p class="p1">- Interfata grafica complet modificabila dupa preferintele userului.</p>
<p class="p1">- RamDisk pentru boot cu versiuni retail Mac OS X.</p>
<p class="p1">- Hibernare folosind imaginea de hibernare.</p>
<p class="p1">- SMBIOS modificabil pentru a extinde compatibilitatea cu diferite computere.</p>
<p class="p1">- DSDT modificabil, oferind avantajul de a corecta posibilele incompatibilitati hardware.</p>
<p class="p1">- Injectare de proprietati pentru diferite hardware-uri.</p>
<p class="p1">- boot0 / boot1h hibrid, pentru partiti MBR precum si GPT.</p>
<p class="p1">- FSB detectabil automat, chiar si pentru procesoare AMD noi.</p>
<p class="p1">- Suport nativ RAID in OS X.</p>
<p class="p1">- Activare mod video pentru nVidia si ATI/AMD.</p>
<p class="p1">- Suport pentru module</p>
<p class="p1">- Detectare automata a memoriei bazata pe memtest86: <a href="http://www.memtest.org/"><span class="s1">http://www.memtest.org</span></a></p>
<p class="p1">- Generare automata P-states si C-states pentru management al energiei.</p>
<p class="p1">- Logare mesaje.</p>
<p class="p3"><br></p>
<p class="p1">The code is released under version 2 of the Gnu Public License.</p>
<p class="p1">Acest cod este acoperit de versiunea 2 a Gnu Public License.</p>
<p class="p4"><span class="s2"><a href="http://forge.voodooprojects.org/p/chameleon/">http://forge.voodooprojects.org/p/chameleon</a></span></p>
<p class="p2"><br></p>
<p class="p4"><span class="s3">FAQ's: <a href="http://forum.voodooprojects.org/index.php/topic,754.0.html"><span class="s2">http://forum.voodooprojects.org/index.php/topic,754.0.html</span></a></span></p>
branches/ErmaC/Modules/package/Resources/ro.lproj/Welcome.rtfd/TXT.rtf
1717
1818
1919
20
20
2121
2222
2323
2424
25
25
2626
2727
2828
2929
3030
31
31
3232
3333
3434
......
3636
3737
3838
39
39
4040
4141
4242
......
4444
4545
4646
47
47
4848
4949
5050
5151
5252
53
53
\fs28 \cf0 \
\pard\ri0\qc
\cf2 Do not install to an Apple Macintosh computer\
\cf2 Nu instalati acest software pe un computer Apple Macintosh\
\pard\ri0\qc
\cf0 \
\pard\ri0\ql\qnatural
\fs24 \cf0 Developers :
\fs24 \cf0 Developeri :
\fs20 %DEVELOP%
\fs24 \
\fs18 \
\fs24 Thanks to :
\fs24 Multumiri :
\fs20 %CREDITS%
\fs24 \
\pard\tx360\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
\b0\fs18 \cf0 \
\pard\ri0\ql\qnatural
\b\fs24 \cf0 Package :
\b\fs24 \cf0 Pachet :
\fs20 %PKGDEV%
\b0\fs30 \
\pard\tx360\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
\fs20 \cf0 Copyright \'a9 2011-2012
\b \cf3 Translated by : ???\
\b \cf3 Tradus de : RvXtm\
\pard\tx360\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
\b0\fs18 \cf0 \
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\b\fs20 \cf4 This package was builded by: %WHOBUILD%}
\b\fs20 \cf4 Pachet compilat de: %WHOBUILD%}
branches/ErmaC/Modules/package/Resources/ro.lproj/Conclusion.rtfd/TXT.rtf
77
88
99
10
11
12
10
11
12
1313
14
15
14
15
1616
1717
1818
......
2626
2727
2828
29
29
\f0\b\fs28 \cf0 \
\
The scripts have completed and a file\
named \cf2 @LOG_FILENAME@\cf3 has been\
written to the root of your chosen partition.\
Scripturiile au fost executate iar un fisier\
numit \cf2 @LOG_FILENAME@\cf3 a fost salvat in\
directorul principal al partitiei selectate.\
\
\cf0 Please \cf4 read it\cf0 to find out if the installation was\
successful and keep it for a record of what was done.\
\cf0 Va rugam \cf4 sa il cititi\cf0 pentru a afla daca instalarea a fost\
facuta cu succes si pentru a tine evidenta modificariilor facute.\
\cf4 \
\
\
\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc
\b \cf6 This package was builded by: %WHOBUILD%}
\b \cf6 Pachet compilat de: %WHOBUILD%}
branches/ErmaC/Modules/package/buildpkg.sh
6464
6565
6666
67
67
6868
6969
7070
......
898898
899899
900900
901
902
901
902
903903
904904
905905
......
943943
944944
945945
946
946
947947
948948
949949
......
956956
957957
958958
959
959
960960
961961
962962
......
964964
965965
966966
967
967
968968
969969
970970
......
972972
973973
974974
975
975
976976
977977
978978
......
10461046
10471047
10481048
1049
1049
10501050
10511051
10521052
......
10561056
10571057
10581058
1059
1059
10601060
10611061
10621062
......
10811081
10821082
10831083
1084
1084
1085
1086
1087
1088
1089
1090
1091
10851092
10861093
10871094
declare -r CHAMELEON_CREDITS=$(awk "NR==10{print;exit}" ${PKGROOT}/../CREDITS)
declare -r CHAMELEON_PKGDEV=$(awk "NR==14{print;exit}" ${PKGROOT}/../CREDITS)
declare -r CHAMELEON_CPRYEAR=$(awk "NR==18{print;exit}" ${PKGROOT}/../CREDITS)
if [[ $(whoami | awk '{print $1}' | cut -d ":" -f3) == "cmorton" ]];then
if [[ $(whoami | awk '{print $1}' | cut -d ":" -f3) == "admin" ]];then
declare -r CHAMELEON_WHOBUILD="VoodooLabs BuildBot"
else
declare -r CHAMELEON_WHOBUILD=$(whoami | awk '{print $1}' | cut -d ":" -f3)
choiceId="Post"
mkdir -p ${PKG_BUILD_DIR}/${choiceId}/Root
addTemplateScripts --pkg-rootdir="${PKG_BUILD_DIR}/${choiceId}" ${choiceId}
cp -f ${PKGROOT}/Scripts/Sub/UnMountEFIvolumes.sh ${PKG_BUILD_DIR}/${choiceId}/Scripts
addTemplateScripts --pkg-rootdir="${PKG_BUILD_DIR}/${choiceId}" InstallerLog
addTemplateScripts --pkg-rootdir="${PKG_BUILD_DIR}/${choiceId}" UnMount
packageRefId=$(getPackageRefId "${packagesidentity}" "${choiceId}")
buildpackage "$packageRefId" "${choiceId}" "${PKG_BUILD_DIR}/${choiceId}" "/"
addChoice --start-visible="false" --start-selected="true" --pkg-refs="$packageRefId" "${choiceId}"
header+="auth=\"root\">\n"
header+="\t<payload installKBytes=\"${installedsize##* }\" numberOfFiles=\"${filecount##* }\"/>\n"
rm -R -f "${packagePath}/Temp"
#rm -R -f "${packagePath}/Temp" //blackosx commented out for now
[ -d "${packagePath}/Temp" ] || mkdir -m 777 "${packagePath}/Temp"
[ -d "${packagePath}/Root" ] && mkbom "${packagePath}/Root" "${packagePath}/Temp/Bom"
header+="\t</scripts>\n"
# Create the Script archive file (cpio format)
(cd "${packagePath}/Scripts" && find . -print | cpio -o -z -R 0:0 --format cpio > "${packagePath}/Temp/Scripts") 2>&1 | \
grep -vE '^[0-9]+\s+blocks?$' # to remove cpio stderr messages
grep -E '^[0-9]+\s+blocks?$' # to remove cpio stderr messages
fi
header+="</pkg-info>"
# Create the Payload file (cpio format)
(cd "${packagePath}/Root" && find . -print | cpio -o -z -R 0:0 --format cpio > "${packagePath}/Temp/Payload") 2>&1 | \
grep -vE '^[0-9]+\s+blocks?$' # to remove cpio stderr messages
grep -E '^[0-9]+\s+blocks?$' # to remove cpio stderr messages
# Create the package
(cd "${packagePath}/Temp" && xar -c -f "${packagePath}/../${packageName}.pkg" --compression none .)
# Add the package to the list of build packages
pkgrefs[${#pkgrefs[*]}]="\t<pkg-ref id=\"${packageRefId}\" installKBytes='${installedsize}' version='${CHAMELEON_VERSION}.0.0.${CHAMELEON_TIMESTAMP}'>#${packageName}.pkg</pkg-ref>"
rm -rf "${packagePath}"
#rm -rf "${packagePath}" //blackosx commented out for now
fi
}
declare -r distributionFilename="${packagename// /}-${CHAMELEON_VERSION}-r${CHAMELEON_REVISION}.pkg"
declare -r distributionFilePath="${distributionDestDir}/${distributionFilename}"
rm -f "${distributionDestDir}/${packagename// /}"*.pkg
#rm -f "${distributionDestDir}/${packagename// /}"*.pkg //blackosx commented out for now
mkdir -p "${PKG_BUILD_DIR}/${packagename}"
pkgdir="${PKG_BUILD_DIR}/${packagename}/${pkg}"
# expand individual packages
pkgutil --expand "${PKG_BUILD_DIR}/${pkg}" "$pkgdir"
rm -f "${PKG_BUILD_DIR}/${pkg}"
#rm -f "${PKG_BUILD_DIR}/${pkg}" //blackosx commented out for now
done
# Create the Distribution file
ditto --noextattr --noqtn "${PKGROOT}/Resources" "${PKG_BUILD_DIR}/${packagename}/Resources"
# CleanUp the directory
find "${PKG_BUILD_DIR}/${packagename}" \( -type d -name '.svn' \) -o -name '.DS_Store' -exec rm -rf {} \;
# this next line should work but it doesn't - not sure why.
#find "${PKG_BUILD_DIR}/${packagename}" \( -type d -name '.svn' \) -o -name '.DS_Store' -exec rm -rf {} \;
# instead, doing it this way works.
find "${PKG_BUILD_DIR}/${packagename}/Resources" -name ".svn" -type d -o -name ".DS_Store" -type f | while read component
do
rm -rf "${component}"
done
# Make substitutions for version, revision, stage, developers, credits, etc..
makeSubstitutions $( find "${PKG_BUILD_DIR}/${packagename}/Resources" -type f )
branches/ErmaC/Modules/Make.rules
1010
1111
1212
13
13
1414
1515
1616
endif
AS = as
LD = ld
CC = cc
CC = gcc
CPP = g++
PAX = /bin/pax
NASM = $(shell which nasm) -p $(SRCROOT)/autoconf.inc

Archive Download the corresponding diff file

Revision: 1836