Chameleon

Chameleon Commit Details

Date:2011-05-20 08:36:19 (12 years 11 months ago)
Author:Azimutz
Commit:842
Parents: 841
Message:Merge trunk (r827/828/829). Update xcodeproj.
Changes:
D/branches/azimutz/Chazi/i386/modules/Memory/mem.h
D/branches/azimutz/Chazi/i386/modules/Memory/mem.c
M/branches/azimutz/Chazi/i386/libsaio/smbios_getters.h
M/branches/azimutz/Chazi/i386/libsaio/acpi_patcher.c
M/branches/azimutz/Chazi
M/branches/azimutz/Chazi/Chameleon.xcodeproj/project.pbxproj
M/branches/azimutz/Chazi/i386/modules/Memory/spd.c
M/branches/azimutz/Chazi/i386/libsaio/cpu.c
M/branches/azimutz/Chazi/i386/libsaio/fake_efi.c
M/branches/azimutz/Chazi/i386/libsaio/platform.h
M/branches/azimutz/Chazi/i386/libsaio/smbios_getters.c
M/branches/azimutz/Chazi/i386/boot2/boot.h
M/branches/azimutz/Chazi/i386/libsaio/cpu.h
M/branches/azimutz/Chazi/i386/libsaio/smbios.c

File differences

branches/azimutz/Chazi/Chameleon.xcodeproj/project.pbxproj
77
88
99
10
1110
1211
1312
1413
15
16
1714
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
18241
19242
20243
......
79302
80303
81304
82
83305
84306
85307
......
106328
107329
108330
109
110
111331
112332
113333
114334
115335
116
117
118336
119337
120338
......
125343
126344
127345
128
129
130346
131347
132348
......
138354
139355
140356
141
142
143357
144358
145359
......
292506
293507
294508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
295846
296847
297848
......
315866
316867
317868
869
318870
319871
320872
......
438990
439991
440992
441
442
443993
444994
445995
......
4581008
4591009
4601010
461
462
4631011
4641012
4651013
......
4701018
4711019
4721020
473
474
4751021
4761022
4771023
4781024
4791025
480
481
4821026
4831027
4841028
......
4891033
4901034
4911035
492
493
4941036
4951037
4961038
......
5061048
5071049
5081050
509
510
5111051
5121052
5131053
objects = {
/* Begin PBXFileReference section */
012E60F7137AC68F00E35218 /* ati_reg.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ati_reg.h; sourceTree = "<group>"; };
012E60F8137AC68F00E35218 /* smbios_decode.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = smbios_decode.c; sourceTree = "<group>"; };
012E60F9137AC68F00E35218 /* smbios_getters.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = smbios_getters.c; sourceTree = "<group>"; };
012E60FA137AC68F00E35218 /* smbios_getters.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = smbios_getters.h; sourceTree = "<group>"; };
012E60FB137AC68F00E35218 /* smbios.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = smbios.c; sourceTree = "<group>"; };
0172D0DC11FB66820030222E /* dram_controllers.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = dram_controllers.h; sourceTree = "<group>"; };
0172D0DD11FB66820030222E /* dram_controllers.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dram_controllers.c; sourceTree = "<group>"; };
019DFBAF11FB94090013E8CC /* MEMTEST86_LICENSE */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = MEMTEST86_LICENSE; sourceTree = "<group>"; };
032B502F13863B9900CA6C31 /* ati.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ati.c; sourceTree = "<group>"; };
032B503013863B9900CA6C31 /* ati_reg.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ati_reg.h; sourceTree = "<group>"; };
032B503113863B9900CA6C31 /* GraphicsEnabler.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = GraphicsEnabler.c; sourceTree = "<group>"; };
032B503213863B9900CA6C31 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = "<group>"; };
032B503313863B9900CA6C31 /* nvidia.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = nvidia.c; sourceTree = "<group>"; };
032B503413863B9900CA6C31 /* nvidia.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = nvidia.h; sourceTree = "<group>"; };
032B503613863B9900CA6C31 /* ati.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ati.c; sourceTree = "<group>"; };
032B503713863B9900CA6C31 /* ati.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ati.h; sourceTree = "<group>"; };
032B503813863B9900CA6C31 /* gma.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = gma.c; sourceTree = "<group>"; };
032B503913863B9900CA6C31 /* gma.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = gma.h; sourceTree = "<group>"; };
032B503A13863B9900CA6C31 /* GraphicsEnablerLegacy.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = GraphicsEnablerLegacy.c; sourceTree = "<group>"; };
032B503B13863B9900CA6C31 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = "<group>"; };
032B503C13863B9900CA6C31 /* nvidia.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = nvidia.c; sourceTree = "<group>"; };
032B503D13863B9900CA6C31 /* nvidia.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = nvidia.h; sourceTree = "<group>"; };
032B503E13863B9900CA6C31 /* pci.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = pci.h; sourceTree = "<group>"; };
032B504013863B9900CA6C31 /* HelloWorld.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HelloWorld.cpp; sourceTree = "<group>"; };
032B504213863B9900CA6C31 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = "<group>"; };
032B504413863B9900CA6C31 /* HPET.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = HPET.c; sourceTree = "<group>"; };
032B504513863B9900CA6C31 /* hpet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hpet.h; sourceTree = "<group>"; };
032B504613863B9900CA6C31 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = "<group>"; };
032B504813863B9900CA6C31 /* modules */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = modules; sourceTree = "<group>"; };
032B504913863B9900CA6C31 /* types.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = types.h; sourceTree = "<group>"; };
032B504B13863B9900CA6C31 /* kernel_patcher.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = kernel_patcher.c; sourceTree = "<group>"; };
032B504C13863B9900CA6C31 /* kernel_patcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = kernel_patcher.h; sourceTree = "<group>"; };
032B504D13863B9900CA6C31 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = "<group>"; };
032B504F13863B9900CA6C31 /* __ashldi3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = __ashldi3.c; sourceTree = "<group>"; };
032B505013863B9900CA6C31 /* __ashrdi3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = __ashrdi3.c; sourceTree = "<group>"; };
032B505113863B9900CA6C31 /* __clzsi2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = __clzsi2.c; sourceTree = "<group>"; };
032B505213863B9900CA6C31 /* __divdi3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = __divdi3.c; sourceTree = "<group>"; };
032B505313863B9900CA6C31 /* __divsi3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = __divsi3.c; sourceTree = "<group>"; };
032B505413863B9900CA6C31 /* __lshrdi3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = __lshrdi3.c; sourceTree = "<group>"; };
032B505513863B9900CA6C31 /* __moddi3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = __moddi3.c; sourceTree = "<group>"; };
032B505613863B9900CA6C31 /* __modsi3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = __modsi3.c; sourceTree = "<group>"; };
032B505713863B9900CA6C31 /* __udivdi3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = __udivdi3.c; sourceTree = "<group>"; };
032B505813863B9900CA6C31 /* __udivmoddi4.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = __udivmoddi4.c; sourceTree = "<group>"; };
032B505913863B9900CA6C31 /* __udivmodsi4.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = __udivmodsi4.c; sourceTree = "<group>"; };
032B505A13863B9900CA6C31 /* __udivsi3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = __udivsi3.c; sourceTree = "<group>"; };
032B505B13863B9900CA6C31 /* __umoddi3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = __umoddi3.c; sourceTree = "<group>"; };
032B505C13863B9900CA6C31 /* __umodsi3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = __umodsi3.c; sourceTree = "<group>"; };
032B505D13863B9900CA6C31 /* atexit.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = atexit.c; sourceTree = "<group>"; };
032B505E13863B9900CA6C31 /* atexit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = atexit.h; sourceTree = "<group>"; };
032B505F13863B9900CA6C31 /* atoi.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = atoi.c; sourceTree = "<group>"; };
032B506013863B9900CA6C31 /* atol.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = atol.c; sourceTree = "<group>"; };
032B506113863B9900CA6C31 /* atoll.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = atoll.c; sourceTree = "<group>"; };
032B506213863B9900CA6C31 /* atox.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = atox.c; sourceTree = "<group>"; };
032B506313863B9900CA6C31 /* bsearch.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = bsearch.c; sourceTree = "<group>"; };
032B506413863B9900CA6C31 /* calloc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = calloc.c; sourceTree = "<group>"; };
032B506513863B9900CA6C31 /* exit.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = exit.c; sourceTree = "<group>"; };
032B506613863B9900CA6C31 /* jrand48.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jrand48.c; sourceTree = "<group>"; };
032B506713863B9900CA6C31 /* klibc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = klibc.c; sourceTree = "<group>"; };
032B506813863B9900CA6C31 /* LICENSE */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = LICENSE; sourceTree = "<group>"; };
032B506913863B9900CA6C31 /* limits.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = limits.h; sourceTree = "<group>"; };
032B506A13863B9900CA6C31 /* lrand48.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = lrand48.c; sourceTree = "<group>"; };
032B506B13863B9900CA6C31 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = "<group>"; };
032B506C13863B9900CA6C31 /* memccpy.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = memccpy.c; sourceTree = "<group>"; };
032B506D13863B9900CA6C31 /* memchr.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = memchr.c; sourceTree = "<group>"; };
032B506E13863B9900CA6C31 /* memmem.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = memmem.c; sourceTree = "<group>"; };
032B506F13863B9900CA6C31 /* memmove.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = memmove.c; sourceTree = "<group>"; };
032B507013863B9900CA6C31 /* memrchr.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = memrchr.c; sourceTree = "<group>"; };
032B507113863B9900CA6C31 /* memswap.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = memswap.c; sourceTree = "<group>"; };
032B507213863B9900CA6C31 /* mrand48.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = mrand48.c; sourceTree = "<group>"; };
032B507313863B9900CA6C31 /* nrand48.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = nrand48.c; sourceTree = "<group>"; };
032B507413863B9900CA6C31 /* onexit.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = onexit.c; sourceTree = "<group>"; };
032B507513863B9900CA6C31 /* qsort.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = qsort.c; sourceTree = "<group>"; };
032B507613863B9900CA6C31 /* Readme.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Readme.txt; sourceTree = "<group>"; };
032B507713863B9900CA6C31 /* seed48.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = seed48.c; sourceTree = "<group>"; };
032B507813863B9900CA6C31 /* sha1hash.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sha1hash.c; sourceTree = "<group>"; };
032B507913863B9900CA6C31 /* snprintf.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = snprintf.c; sourceTree = "<group>"; };
032B507A13863B9900CA6C31 /* srand48.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = srand48.c; sourceTree = "<group>"; };
032B507B13863B9900CA6C31 /* sscanf.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sscanf.c; sourceTree = "<group>"; };
032B507C13863B9900CA6C31 /* strcasecmp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = strcasecmp.c; sourceTree = "<group>"; };
032B507D13863B9900CA6C31 /* strdup.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = strdup.c; sourceTree = "<group>"; };
032B507E13863B9900CA6C31 /* strlcat.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = strlcat.c; sourceTree = "<group>"; };
032B507F13863B9900CA6C31 /* strncasecmp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = strncasecmp.c; sourceTree = "<group>"; };
032B508013863B9900CA6C31 /* strndup.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = strndup.c; sourceTree = "<group>"; };
032B508113863B9900CA6C31 /* strnlen.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = strnlen.c; sourceTree = "<group>"; };
032B508213863B9900CA6C31 /* strntoimax.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = strntoimax.c; sourceTree = "<group>"; };
032B508313863B9900CA6C31 /* strntoumax.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = strntoumax.c; sourceTree = "<group>"; };
032B508413863B9900CA6C31 /* strpbrk.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = strpbrk.c; sourceTree = "<group>"; };
032B508513863B9900CA6C31 /* strsep.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = strsep.c; sourceTree = "<group>"; };
032B508613863B9900CA6C31 /* strtoimax.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = strtoimax.c; sourceTree = "<group>"; };
032B508713863B9900CA6C31 /* strtok.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = strtok.c; sourceTree = "<group>"; };
032B508813863B9900CA6C31 /* strtok_r.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = strtok_r.c; sourceTree = "<group>"; };
032B508913863B9900CA6C31 /* strtol.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = strtol.c; sourceTree = "<group>"; };
032B508A13863B9900CA6C31 /* strtoll.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = strtoll.c; sourceTree = "<group>"; };
032B508B13863B9900CA6C31 /* strtotimespec.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = strtotimespec.c; sourceTree = "<group>"; };
032B508C13863B9900CA6C31 /* strtotimeval.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = strtotimeval.c; sourceTree = "<group>"; };
032B508D13863B9900CA6C31 /* strtotimex.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = strtotimex.c; sourceTree = "<group>"; };
032B508E13863B9900CA6C31 /* strtoul.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = strtoul.c; sourceTree = "<group>"; };
032B508F13863B9900CA6C31 /* strtoull.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = strtoull.c; sourceTree = "<group>"; };
032B509013863B9900CA6C31 /* strtoumax.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = strtoumax.c; sourceTree = "<group>"; };
032B509113863B9900CA6C31 /* strtox.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = strtox.c; sourceTree = "<group>"; };
032B509213863B9900CA6C31 /* strxspn.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = strxspn.c; sourceTree = "<group>"; };
032B509313863B9900CA6C31 /* strxspn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = strxspn.h; sourceTree = "<group>"; };
032B509413863B9900CA6C31 /* version */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = version; sourceTree = "<group>"; };
032B509513863B9900CA6C31 /* vsnprintf.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = vsnprintf.c; sourceTree = "<group>"; };
032B509613863B9900CA6C31 /* vsscanf.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = vsscanf.c; sourceTree = "<group>"; };
032B509713863B9900CA6C31 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = "<group>"; };
032B509813863B9900CA6C31 /* MakeInc.dir */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = MakeInc.dir; sourceTree = "<group>"; };
032B509A13863B9900CA6C31 /* dram_controllers.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dram_controllers.c; sourceTree = "<group>"; };
032B509B13863B9900CA6C31 /* dram_controllers.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = dram_controllers.h; sourceTree = "<group>"; };
032B509C13863B9900CA6C31 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = "<group>"; };
032B509F13863B9900CA6C31 /* Memory.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = Memory.c; sourceTree = "<group>"; };
032B50A013863B9900CA6C31 /* spd.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = spd.c; sourceTree = "<group>"; };
032B50A113863B9900CA6C31 /* spd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = spd.h; sourceTree = "<group>"; };
032B50A213863B9900CA6C31 /* Modules.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Modules.txt; sourceTree = "<group>"; };
032B50A413863B9900CA6C31 /* 915resolution.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = 915resolution.c; sourceTree = "<group>"; };
032B50A513863B9900CA6C31 /* 915resolution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = 915resolution.h; sourceTree = "<group>"; };
032B50A613863B9900CA6C31 /* edid.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = edid.c; sourceTree = "<group>"; };
032B50A813863B9900CA6C31 /* edid.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = edid.h; sourceTree = "<group>"; };
032B50A913863B9900CA6C31 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = "<group>"; };
032B50AA13863B9900CA6C31 /* Readme.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Readme.txt; sourceTree = "<group>"; };
032B50AB13863B9900CA6C31 /* Resolution.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = Resolution.c; sourceTree = "<group>"; };
032B50AC13863B9900CA6C31 /* shortatombios.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = shortatombios.h; sourceTree = "<group>"; };
032B50AE13863B9900CA6C31 /* abi.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = abi.cpp; sourceTree = "<group>"; };
032B50AF13863B9900CA6C31 /* algorithm.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = algorithm.cpp; sourceTree = "<group>"; };
032B50B013863B9900CA6C31 /* associative_base.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = associative_base.cpp; sourceTree = "<group>"; };
032B50B113863B9900CA6C31 /* bitset.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = bitset.cpp; sourceTree = "<group>"; };
032B50B213863B9900CA6C31 /* char_traits.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = char_traits.cpp; sourceTree = "<group>"; };
032B50B313863B9900CA6C31 /* complex.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = complex.cpp; sourceTree = "<group>"; };
032B50B413863B9900CA6C31 /* del_op.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = del_op.cpp; sourceTree = "<group>"; };
032B50B513863B9900CA6C31 /* del_opnt.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = del_opnt.cpp; sourceTree = "<group>"; };
032B50B613863B9900CA6C31 /* del_opv.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = del_opv.cpp; sourceTree = "<group>"; };
032B50B713863B9900CA6C31 /* del_opvnt.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = del_opvnt.cpp; sourceTree = "<group>"; };
032B50B813863B9900CA6C31 /* deque.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = deque.cpp; sourceTree = "<group>"; };
032B50B913863B9900CA6C31 /* eh_alloc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = eh_alloc.cpp; sourceTree = "<group>"; };
032B50BA13863B9900CA6C31 /* eh_globals.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = eh_globals.cpp; sourceTree = "<group>"; };
032B50BB13863B9900CA6C31 /* exception.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = exception.cpp; sourceTree = "<group>"; };
032B50BC13863B9900CA6C31 /* fstream.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = fstream.cpp; sourceTree = "<group>"; };
032B50BD13863B9900CA6C31 /* func_exception.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = func_exception.cpp; sourceTree = "<group>"; };
032B50BF13863B9900CA6C31 /* algorithm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = algorithm; sourceTree = "<group>"; };
032B50C013863B9900CA6C31 /* associative_base */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = associative_base; sourceTree = "<group>"; };
032B50C113863B9900CA6C31 /* basic_definitions */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = basic_definitions; sourceTree = "<group>"; };
032B50C213863B9900CA6C31 /* bitset */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = bitset; sourceTree = "<group>"; };
032B50C313863B9900CA6C31 /* cassert */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = cassert; sourceTree = "<group>"; };
032B50C413863B9900CA6C31 /* cctype */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = cctype; sourceTree = "<group>"; };
032B50C513863B9900CA6C31 /* cerrno */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = cerrno; sourceTree = "<group>"; };
032B50C613863B9A00CA6C31 /* cfloat */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = cfloat; sourceTree = "<group>"; };
032B50C713863B9A00CA6C31 /* char_traits */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = char_traits; sourceTree = "<group>"; };
032B50C813863B9A00CA6C31 /* climits */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = climits; sourceTree = "<group>"; };
032B50C913863B9A00CA6C31 /* clocale */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = clocale; sourceTree = "<group>"; };
032B50CA13863B9A00CA6C31 /* cmath */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = cmath; sourceTree = "<group>"; };
032B50CB13863B9A00CA6C31 /* complex */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = complex; sourceTree = "<group>"; };
032B50CC13863B9A00CA6C31 /* csetjmp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = csetjmp; sourceTree = "<group>"; };
032B50CD13863B9A00CA6C31 /* csignal */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = csignal; sourceTree = "<group>"; };
032B50CE13863B9A00CA6C31 /* cstdarg */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = cstdarg; sourceTree = "<group>"; };
032B50CF13863B9A00CA6C31 /* cstddef */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = cstddef; sourceTree = "<group>"; };
032B50D013863B9A00CA6C31 /* cstdio */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = cstdio; sourceTree = "<group>"; };
032B50D113863B9A00CA6C31 /* cstdlib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = cstdlib; sourceTree = "<group>"; };
032B50D213863B9A00CA6C31 /* cstring */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = cstring; sourceTree = "<group>"; };
032B50D313863B9A00CA6C31 /* ctime */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = ctime; sourceTree = "<group>"; };
032B50D413863B9A00CA6C31 /* cwchar */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = cwchar; sourceTree = "<group>"; };
032B50D513863B9A00CA6C31 /* cwctype */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = cwctype; sourceTree = "<group>"; };
032B50D613863B9A00CA6C31 /* deque */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = deque; sourceTree = "<group>"; };
032B50D713863B9A00CA6C31 /* exception */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = exception; sourceTree = "<group>"; };
032B50D813863B9A00CA6C31 /* fstream */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = fstream; sourceTree = "<group>"; };
032B50D913863B9A00CA6C31 /* func_exception */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = func_exception; sourceTree = "<group>"; };
032B50DA13863B9A00CA6C31 /* functional */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = functional; sourceTree = "<group>"; };
032B50DB13863B9A00CA6C31 /* iomanip */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = iomanip; sourceTree = "<group>"; };
032B50DC13863B9A00CA6C31 /* ios */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = ios; sourceTree = "<group>"; };
032B50DD13863B9A00CA6C31 /* iosfwd */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = iosfwd; sourceTree = "<group>"; };
032B50DE13863B9A00CA6C31 /* iostream */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = iostream; sourceTree = "<group>"; };
032B50DF13863B9A00CA6C31 /* istream */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = istream; sourceTree = "<group>"; };
032B50E013863B9A00CA6C31 /* istream_helpers */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = istream_helpers; sourceTree = "<group>"; };
032B50E113863B9A00CA6C31 /* iterator */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = iterator; sourceTree = "<group>"; };
032B50E213863B9A00CA6C31 /* iterator_base */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = iterator_base; sourceTree = "<group>"; };
032B50E313863B9A00CA6C31 /* limits */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = limits; sourceTree = "<group>"; };
032B50E413863B9A00CA6C31 /* list */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = list; sourceTree = "<group>"; };
032B50E513863B9A00CA6C31 /* locale */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = locale; sourceTree = "<group>"; };
032B50E613863B9A00CA6C31 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = "<group>"; };
032B50E713863B9A00CA6C31 /* map */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = map; sourceTree = "<group>"; };
032B50E813863B9A00CA6C31 /* map.old */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = map.old; sourceTree = "<group>"; };
032B50E913863B9A00CA6C31 /* memory */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = memory; sourceTree = "<group>"; };
032B50EA13863B9A00CA6C31 /* new */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = new; sourceTree = "<group>"; };
032B50EB13863B9A00CA6C31 /* numeric */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = numeric; sourceTree = "<group>"; };
032B50EC13863B9A00CA6C31 /* ostream */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = ostream; sourceTree = "<group>"; };
032B50ED13863B9A00CA6C31 /* ostream_helpers */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = ostream_helpers; sourceTree = "<group>"; };
032B50EE13863B9A00CA6C31 /* queue */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = queue; sourceTree = "<group>"; };
032B50EF13863B9A00CA6C31 /* set */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = set; sourceTree = "<group>"; };
032B50F013863B9A00CA6C31 /* set.old */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = set.old; sourceTree = "<group>"; };
032B50F113863B9A00CA6C31 /* sstream */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = sstream; sourceTree = "<group>"; };
032B50F213863B9A00CA6C31 /* stack */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = stack; sourceTree = "<group>"; };
032B50F313863B9A00CA6C31 /* stdexcept */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = stdexcept; sourceTree = "<group>"; };
032B50F413863B9A00CA6C31 /* streambuf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = streambuf; sourceTree = "<group>"; };
032B50F513863B9A00CA6C31 /* string */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = string; sourceTree = "<group>"; };
032B50F613863B9A00CA6C31 /* string_iostream */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = string_iostream; sourceTree = "<group>"; };
032B50F713863B9A00CA6C31 /* support */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = support; sourceTree = "<group>"; };
032B50F813863B9A00CA6C31 /* system_configuration.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = system_configuration.h; sourceTree = "<group>"; };
032B50F913863B9A00CA6C31 /* type_traits */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = type_traits; sourceTree = "<group>"; };
032B50FA13863B9A00CA6C31 /* typeinfo */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = typeinfo; sourceTree = "<group>"; };
032B50FB13863B9A00CA6C31 /* types */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = types; sourceTree = "<group>"; };
032B50FC13863B9A00CA6C31 /* unwind-cxx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "unwind-cxx.h"; sourceTree = "<group>"; };
032B50FD13863B9A00CA6C31 /* utility */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = utility; sourceTree = "<group>"; };
032B50FE13863B9A00CA6C31 /* valarray */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = valarray; sourceTree = "<group>"; };
032B50FF13863B9A00CA6C31 /* vector */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = vector; sourceTree = "<group>"; };
032B510013863B9A00CA6C31 /* iomanip.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = iomanip.cpp; sourceTree = "<group>"; };
032B510113863B9A00CA6C31 /* ios.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ios.cpp; sourceTree = "<group>"; };
032B510213863B9A00CA6C31 /* iostream.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = iostream.cpp; sourceTree = "<group>"; };
032B510313863B9A00CA6C31 /* istream.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = istream.cpp; sourceTree = "<group>"; };
032B510413863B9A00CA6C31 /* iterator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = iterator.cpp; sourceTree = "<group>"; };
032B510513863B9A00CA6C31 /* limits.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = limits.cpp; sourceTree = "<group>"; };
032B510613863B9A00CA6C31 /* list.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = list.cpp; sourceTree = "<group>"; };
032B510713863B9A00CA6C31 /* locale.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = locale.cpp; sourceTree = "<group>"; };
032B510813863B9A00CA6C31 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = "<group>"; };
032B510913863B9A00CA6C31 /* map.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = map.cpp; sourceTree = "<group>"; };
032B510A13863B9A00CA6C31 /* new_handler.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = new_handler.cpp; sourceTree = "<group>"; };
032B510B13863B9A00CA6C31 /* new_op.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = new_op.cpp; sourceTree = "<group>"; };
032B510C13863B9A00CA6C31 /* new_opnt.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = new_opnt.cpp; sourceTree = "<group>"; };
032B510D13863B9A00CA6C31 /* new_opv.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = new_opv.cpp; sourceTree = "<group>"; };
032B510E13863B9A00CA6C31 /* new_opvnt.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = new_opvnt.cpp; sourceTree = "<group>"; };
032B510F13863B9A00CA6C31 /* numeric.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = numeric.cpp; sourceTree = "<group>"; };
032B511013863B9A00CA6C31 /* ostream.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ostream.cpp; sourceTree = "<group>"; };
032B511113863B9A00CA6C31 /* queue.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = queue.cpp; sourceTree = "<group>"; };
032B511213863B9A00CA6C31 /* Readme.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Readme.txt; sourceTree = "<group>"; };
032B511313863B9A00CA6C31 /* set.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = set.cpp; sourceTree = "<group>"; };
032B511413863B9A00CA6C31 /* sstream.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sstream.cpp; sourceTree = "<group>"; };
032B511513863B9A00CA6C31 /* stack.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = stack.cpp; sourceTree = "<group>"; };
032B511613863B9A00CA6C31 /* stdexcept.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = stdexcept.cpp; sourceTree = "<group>"; };
032B511713863B9A00CA6C31 /* streambuf.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = streambuf.cpp; sourceTree = "<group>"; };
032B511813863B9A00CA6C31 /* string.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = string.cpp; sourceTree = "<group>"; };
032B511913863B9A00CA6C31 /* support.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = support.cpp; sourceTree = "<group>"; };
032B511A13863B9A00CA6C31 /* typeinfo.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = typeinfo.cpp; sourceTree = "<group>"; };
032B511B13863B9A00CA6C31 /* uClibc++.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "uClibc++.c"; sourceTree = "<group>"; };
032B511C13863B9A00CA6C31 /* utility.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = utility.cpp; sourceTree = "<group>"; };
032B511D13863B9A00CA6C31 /* valarray.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = valarray.cpp; sourceTree = "<group>"; };
032B511E13863B9A00CA6C31 /* vector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = vector.cpp; sourceTree = "<group>"; };
1D145307137073F40050C0CD /* bootargs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = bootargs.h; sourceTree = "<group>"; };
1D2A1AF513743A2600787720 /* bootargs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = bootargs.h; sourceTree = "<group>"; };
65ED53931204B83200B22507 /* disk.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = disk.h; sourceTree = "<group>"; };
B0056D2711F3868000754B65 /* acpi_patcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = acpi_patcher.h; sourceTree = "<group>"; };
B0056D2811F3868000754B65 /* allocate.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = allocate.c; sourceTree = "<group>"; };
B0056D2911F3868000754B65 /* asm.s */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = asm.s; sourceTree = "<group>"; };
B0056D2A11F3868000754B65 /* ati.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ati.c; sourceTree = "<group>"; };
B0056D2C11F3868000754B65 /* bios.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = bios.h; sourceTree = "<group>"; };
B0056D2D11F3868000754B65 /* bios.s */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = bios.s; sourceTree = "<group>"; };
B0056D2E11F3868000754B65 /* biosfn.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = biosfn.c; sourceTree = "<group>"; };
B0056D4311F3868000754B65 /* hfs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hfs.h; sourceTree = "<group>"; };
B0056D4411F3868000754B65 /* hfs_CaseTables.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hfs_CaseTables.h; sourceTree = "<group>"; };
B0056D4511F3868000754B65 /* hfs_compare.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = hfs_compare.c; sourceTree = "<group>"; };
B0056D4611F3868000754B65 /* hpet.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = hpet.c; sourceTree = "<group>"; };
B0056D4711F3868000754B65 /* hpet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hpet.h; sourceTree = "<group>"; };
B0056D4811F3868000754B65 /* io_inline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = io_inline.h; sourceTree = "<group>"; };
B0056D4911F3868000754B65 /* libsaio.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = libsaio.h; sourceTree = "<group>"; };
B0056D4A11F3868000754B65 /* load.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = load.c; sourceTree = "<group>"; };
B0056D4B11F3868000754B65 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = "<group>"; };
B0056D4C11F3868000754B65 /* md5c.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = md5c.c; sourceTree = "<group>"; };
B0056D4D11F3868000754B65 /* mem.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = mem.c; sourceTree = "<group>"; };
B0056D4E11F3868000754B65 /* mem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mem.h; sourceTree = "<group>"; };
B0056D4F11F3868000754B65 /* memvendors.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = memvendors.h; sourceTree = "<group>"; };
B0056D5011F3868000754B65 /* misc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = misc.c; sourceTree = "<group>"; };
B0056D5111F3868000754B65 /* msdos.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = msdos.c; sourceTree = "<group>"; };
B0056D5611F3868000754B65 /* ntfs.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ntfs.c; sourceTree = "<group>"; };
B0056D5711F3868000754B65 /* ntfs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ntfs.h; sourceTree = "<group>"; };
B0056D5811F3868000754B65 /* ntfs_private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ntfs_private.h; sourceTree = "<group>"; };
B0056D5911F3868000754B65 /* nvidia.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = nvidia.c; sourceTree = "<group>"; };
B0056D5A11F3868000754B65 /* nvidia.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = nvidia.h; sourceTree = "<group>"; };
B0056D5B11F3868000754B65 /* pci.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = pci.c; sourceTree = "<group>"; };
B0056D5C11F3868000754B65 /* pci.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = pci.h; sourceTree = "<group>"; };
B0056D5D11F3868000754B65 /* pci_root.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = pci_root.c; sourceTree = "<group>"; };
B0056D6311F3868000754B65 /* saio_types.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = saio_types.h; sourceTree = "<group>"; };
B0056D6411F3868000754B65 /* sl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sl.h; sourceTree = "<group>"; };
B0056D6511F3868000754B65 /* SMBIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SMBIOS.h; sourceTree = "<group>"; };
B0056D6811F3868000754B65 /* spd.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = spd.c; sourceTree = "<group>"; };
B0056D6911F3868000754B65 /* spd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = spd.h; sourceTree = "<group>"; };
B0056D6A11F3868000754B65 /* stringTable.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = stringTable.c; sourceTree = "<group>"; };
B0056D6B11F3868000754B65 /* sys.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sys.c; sourceTree = "<group>"; };
B0056D6C11F3868000754B65 /* table.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = table.c; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXGroup section */
032B502D13863B9900CA6C31 /* modules */ = {
isa = PBXGroup;
children = (
032B502E13863B9900CA6C31 /* GraphicsEnabler */,
032B503513863B9900CA6C31 /* GraphicsEnablerLegacy */,
032B503F13863B9900CA6C31 /* HelloWorld */,
032B504313863B9900CA6C31 /* HPET */,
032B504713863B9900CA6C31 /* include */,
032B504A13863B9900CA6C31 /* KernelPatcher */,
032B504E13863B9900CA6C31 /* klibc */,
032B509713863B9900CA6C31 /* Makefile */,
032B509813863B9900CA6C31 /* MakeInc.dir */,
032B509913863B9900CA6C31 /* Memory */,
032B50A213863B9900CA6C31 /* Modules.txt */,
032B50A313863B9900CA6C31 /* Resolution */,
032B50AD13863B9900CA6C31 /* uClibc++ */,
);
path = modules;
sourceTree = "<group>";
};
032B502E13863B9900CA6C31 /* GraphicsEnabler */ = {
isa = PBXGroup;
children = (
032B502F13863B9900CA6C31 /* ati.c */,
032B503013863B9900CA6C31 /* ati_reg.h */,
032B503113863B9900CA6C31 /* GraphicsEnabler.c */,
032B503213863B9900CA6C31 /* Makefile */,
032B503313863B9900CA6C31 /* nvidia.c */,
032B503413863B9900CA6C31 /* nvidia.h */,
);
path = GraphicsEnabler;
sourceTree = "<group>";
};
032B503513863B9900CA6C31 /* GraphicsEnablerLegacy */ = {
isa = PBXGroup;
children = (
032B503613863B9900CA6C31 /* ati.c */,
032B503713863B9900CA6C31 /* ati.h */,
032B503813863B9900CA6C31 /* gma.c */,
032B503913863B9900CA6C31 /* gma.h */,
032B503A13863B9900CA6C31 /* GraphicsEnablerLegacy.c */,
032B503B13863B9900CA6C31 /* Makefile */,
032B503C13863B9900CA6C31 /* nvidia.c */,
032B503D13863B9900CA6C31 /* nvidia.h */,
032B503E13863B9900CA6C31 /* pci.h */,
);
path = GraphicsEnablerLegacy;
sourceTree = "<group>";
};
032B503F13863B9900CA6C31 /* HelloWorld */ = {
isa = PBXGroup;
children = (
032B504013863B9900CA6C31 /* HelloWorld.cpp */,
032B504113863B9900CA6C31 /* include */,
032B504213863B9900CA6C31 /* Makefile */,
);
path = HelloWorld;
sourceTree = "<group>";
};
032B504113863B9900CA6C31 /* include */ = {
isa = PBXGroup;
children = (
);
path = include;
sourceTree = "<group>";
};
032B504313863B9900CA6C31 /* HPET */ = {
isa = PBXGroup;
children = (
032B504413863B9900CA6C31 /* HPET.c */,
032B504513863B9900CA6C31 /* hpet.h */,
032B504613863B9900CA6C31 /* Makefile */,
);
path = HPET;
sourceTree = "<group>";
};
032B504713863B9900CA6C31 /* include */ = {
isa = PBXGroup;
children = (
032B504813863B9900CA6C31 /* modules */,
032B504913863B9900CA6C31 /* types.h */,
);
path = include;
sourceTree = "<group>";
};
032B504A13863B9900CA6C31 /* KernelPatcher */ = {
isa = PBXGroup;
children = (
032B504B13863B9900CA6C31 /* kernel_patcher.c */,
032B504C13863B9900CA6C31 /* kernel_patcher.h */,
032B504D13863B9900CA6C31 /* Makefile */,
);
path = KernelPatcher;
sourceTree = "<group>";
};
032B504E13863B9900CA6C31 /* klibc */ = {
isa = PBXGroup;
children = (
032B504F13863B9900CA6C31 /* __ashldi3.c */,
032B505013863B9900CA6C31 /* __ashrdi3.c */,
032B505113863B9900CA6C31 /* __clzsi2.c */,
032B505213863B9900CA6C31 /* __divdi3.c */,
032B505313863B9900CA6C31 /* __divsi3.c */,
032B505413863B9900CA6C31 /* __lshrdi3.c */,
032B505513863B9900CA6C31 /* __moddi3.c */,
032B505613863B9900CA6C31 /* __modsi3.c */,
032B505713863B9900CA6C31 /* __udivdi3.c */,
032B505813863B9900CA6C31 /* __udivmoddi4.c */,
032B505913863B9900CA6C31 /* __udivmodsi4.c */,
032B505A13863B9900CA6C31 /* __udivsi3.c */,
032B505B13863B9900CA6C31 /* __umoddi3.c */,
032B505C13863B9900CA6C31 /* __umodsi3.c */,
032B505D13863B9900CA6C31 /* atexit.c */,
032B505E13863B9900CA6C31 /* atexit.h */,
032B505F13863B9900CA6C31 /* atoi.c */,
032B506013863B9900CA6C31 /* atol.c */,
032B506113863B9900CA6C31 /* atoll.c */,
032B506213863B9900CA6C31 /* atox.c */,
032B506313863B9900CA6C31 /* bsearch.c */,
032B506413863B9900CA6C31 /* calloc.c */,
032B506513863B9900CA6C31 /* exit.c */,
032B506613863B9900CA6C31 /* jrand48.c */,
032B506713863B9900CA6C31 /* klibc.c */,
032B506813863B9900CA6C31 /* LICENSE */,
032B506913863B9900CA6C31 /* limits.h */,
032B506A13863B9900CA6C31 /* lrand48.c */,
032B506B13863B9900CA6C31 /* Makefile */,
032B506C13863B9900CA6C31 /* memccpy.c */,
032B506D13863B9900CA6C31 /* memchr.c */,
032B506E13863B9900CA6C31 /* memmem.c */,
032B506F13863B9900CA6C31 /* memmove.c */,
032B507013863B9900CA6C31 /* memrchr.c */,
032B507113863B9900CA6C31 /* memswap.c */,
032B507213863B9900CA6C31 /* mrand48.c */,
032B507313863B9900CA6C31 /* nrand48.c */,
032B507413863B9900CA6C31 /* onexit.c */,
032B507513863B9900CA6C31 /* qsort.c */,
032B507613863B9900CA6C31 /* Readme.txt */,
032B507713863B9900CA6C31 /* seed48.c */,
032B507813863B9900CA6C31 /* sha1hash.c */,
032B507913863B9900CA6C31 /* snprintf.c */,
032B507A13863B9900CA6C31 /* srand48.c */,
032B507B13863B9900CA6C31 /* sscanf.c */,
032B507C13863B9900CA6C31 /* strcasecmp.c */,
032B507D13863B9900CA6C31 /* strdup.c */,
032B507E13863B9900CA6C31 /* strlcat.c */,
032B507F13863B9900CA6C31 /* strncasecmp.c */,
032B508013863B9900CA6C31 /* strndup.c */,
032B508113863B9900CA6C31 /* strnlen.c */,
032B508213863B9900CA6C31 /* strntoimax.c */,
032B508313863B9900CA6C31 /* strntoumax.c */,
032B508413863B9900CA6C31 /* strpbrk.c */,
032B508513863B9900CA6C31 /* strsep.c */,
032B508613863B9900CA6C31 /* strtoimax.c */,
032B508713863B9900CA6C31 /* strtok.c */,
032B508813863B9900CA6C31 /* strtok_r.c */,
032B508913863B9900CA6C31 /* strtol.c */,
032B508A13863B9900CA6C31 /* strtoll.c */,
032B508B13863B9900CA6C31 /* strtotimespec.c */,
032B508C13863B9900CA6C31 /* strtotimeval.c */,
032B508D13863B9900CA6C31 /* strtotimex.c */,
032B508E13863B9900CA6C31 /* strtoul.c */,
032B508F13863B9900CA6C31 /* strtoull.c */,
032B509013863B9900CA6C31 /* strtoumax.c */,
032B509113863B9900CA6C31 /* strtox.c */,
032B509213863B9900CA6C31 /* strxspn.c */,
032B509313863B9900CA6C31 /* strxspn.h */,
032B509413863B9900CA6C31 /* version */,
032B509513863B9900CA6C31 /* vsnprintf.c */,
032B509613863B9900CA6C31 /* vsscanf.c */,
);
path = klibc;
sourceTree = "<group>";
};
032B509913863B9900CA6C31 /* Memory */ = {
isa = PBXGroup;
children = (
032B509A13863B9900CA6C31 /* dram_controllers.c */,
032B509B13863B9900CA6C31 /* dram_controllers.h */,
032B509C13863B9900CA6C31 /* Makefile */,
032B509F13863B9900CA6C31 /* Memory.c */,
032B50A013863B9900CA6C31 /* spd.c */,
032B50A113863B9900CA6C31 /* spd.h */,
);
path = Memory;
sourceTree = "<group>";
};
032B50A313863B9900CA6C31 /* Resolution */ = {
isa = PBXGroup;
children = (
032B50A413863B9900CA6C31 /* 915resolution.c */,
032B50A513863B9900CA6C31 /* 915resolution.h */,
032B50A613863B9900CA6C31 /* edid.c */,
032B50A713863B9900CA6C31 /* include */,
032B50A913863B9900CA6C31 /* Makefile */,
032B50AA13863B9900CA6C31 /* Readme.txt */,
032B50AB13863B9900CA6C31 /* Resolution.c */,
032B50AC13863B9900CA6C31 /* shortatombios.h */,
);
path = Resolution;
sourceTree = "<group>";
};
032B50A713863B9900CA6C31 /* include */ = {
isa = PBXGroup;
children = (
032B50A813863B9900CA6C31 /* edid.h */,
);
path = include;
sourceTree = "<group>";
};
032B50AD13863B9900CA6C31 /* uClibc++ */ = {
isa = PBXGroup;
children = (
032B50AE13863B9900CA6C31 /* abi.cpp */,
032B50AF13863B9900CA6C31 /* algorithm.cpp */,
032B50B013863B9900CA6C31 /* associative_base.cpp */,
032B50B113863B9900CA6C31 /* bitset.cpp */,
032B50B213863B9900CA6C31 /* char_traits.cpp */,
032B50B313863B9900CA6C31 /* complex.cpp */,
032B50B413863B9900CA6C31 /* del_op.cpp */,
032B50B513863B9900CA6C31 /* del_opnt.cpp */,
032B50B613863B9900CA6C31 /* del_opv.cpp */,
032B50B713863B9900CA6C31 /* del_opvnt.cpp */,
032B50B813863B9900CA6C31 /* deque.cpp */,
032B50B913863B9900CA6C31 /* eh_alloc.cpp */,
032B50BA13863B9900CA6C31 /* eh_globals.cpp */,
032B50BB13863B9900CA6C31 /* exception.cpp */,
032B50BC13863B9900CA6C31 /* fstream.cpp */,
032B50BD13863B9900CA6C31 /* func_exception.cpp */,
032B50BE13863B9900CA6C31 /* include */,
032B510013863B9A00CA6C31 /* iomanip.cpp */,
032B510113863B9A00CA6C31 /* ios.cpp */,
032B510213863B9A00CA6C31 /* iostream.cpp */,
032B510313863B9A00CA6C31 /* istream.cpp */,
032B510413863B9A00CA6C31 /* iterator.cpp */,
032B510513863B9A00CA6C31 /* limits.cpp */,
032B510613863B9A00CA6C31 /* list.cpp */,
032B510713863B9A00CA6C31 /* locale.cpp */,
032B510813863B9A00CA6C31 /* Makefile */,
032B510913863B9A00CA6C31 /* map.cpp */,
032B510A13863B9A00CA6C31 /* new_handler.cpp */,
032B510B13863B9A00CA6C31 /* new_op.cpp */,
032B510C13863B9A00CA6C31 /* new_opnt.cpp */,
032B510D13863B9A00CA6C31 /* new_opv.cpp */,
032B510E13863B9A00CA6C31 /* new_opvnt.cpp */,
032B510F13863B9A00CA6C31 /* numeric.cpp */,
032B511013863B9A00CA6C31 /* ostream.cpp */,
032B511113863B9A00CA6C31 /* queue.cpp */,
032B511213863B9A00CA6C31 /* Readme.txt */,
032B511313863B9A00CA6C31 /* set.cpp */,
032B511413863B9A00CA6C31 /* sstream.cpp */,
032B511513863B9A00CA6C31 /* stack.cpp */,
032B511613863B9A00CA6C31 /* stdexcept.cpp */,
032B511713863B9A00CA6C31 /* streambuf.cpp */,
032B511813863B9A00CA6C31 /* string.cpp */,
032B511913863B9A00CA6C31 /* support.cpp */,
032B511A13863B9A00CA6C31 /* typeinfo.cpp */,
032B511B13863B9A00CA6C31 /* uClibc++.c */,
032B511C13863B9A00CA6C31 /* utility.cpp */,
032B511D13863B9A00CA6C31 /* valarray.cpp */,
032B511E13863B9A00CA6C31 /* vector.cpp */,
);
path = "uClibc++";
sourceTree = "<group>";
};
032B50BE13863B9900CA6C31 /* include */ = {
isa = PBXGroup;
children = (
032B50BF13863B9900CA6C31 /* algorithm */,
032B50C013863B9900CA6C31 /* associative_base */,
032B50C113863B9900CA6C31 /* basic_definitions */,
032B50C213863B9900CA6C31 /* bitset */,
032B50C313863B9900CA6C31 /* cassert */,
032B50C413863B9900CA6C31 /* cctype */,
032B50C513863B9900CA6C31 /* cerrno */,
032B50C613863B9A00CA6C31 /* cfloat */,
032B50C713863B9A00CA6C31 /* char_traits */,
032B50C813863B9A00CA6C31 /* climits */,
032B50C913863B9A00CA6C31 /* clocale */,
032B50CA13863B9A00CA6C31 /* cmath */,
032B50CB13863B9A00CA6C31 /* complex */,
032B50CC13863B9A00CA6C31 /* csetjmp */,
032B50CD13863B9A00CA6C31 /* csignal */,
032B50CE13863B9A00CA6C31 /* cstdarg */,
032B50CF13863B9A00CA6C31 /* cstddef */,
032B50D013863B9A00CA6C31 /* cstdio */,
032B50D113863B9A00CA6C31 /* cstdlib */,
032B50D213863B9A00CA6C31 /* cstring */,
032B50D313863B9A00CA6C31 /* ctime */,
032B50D413863B9A00CA6C31 /* cwchar */,
032B50D513863B9A00CA6C31 /* cwctype */,
032B50D613863B9A00CA6C31 /* deque */,
032B50D713863B9A00CA6C31 /* exception */,
032B50D813863B9A00CA6C31 /* fstream */,
032B50D913863B9A00CA6C31 /* func_exception */,
032B50DA13863B9A00CA6C31 /* functional */,
032B50DB13863B9A00CA6C31 /* iomanip */,
032B50DC13863B9A00CA6C31 /* ios */,
032B50DD13863B9A00CA6C31 /* iosfwd */,
032B50DE13863B9A00CA6C31 /* iostream */,
032B50DF13863B9A00CA6C31 /* istream */,
032B50E013863B9A00CA6C31 /* istream_helpers */,
032B50E113863B9A00CA6C31 /* iterator */,
032B50E213863B9A00CA6C31 /* iterator_base */,
032B50E313863B9A00CA6C31 /* limits */,
032B50E413863B9A00CA6C31 /* list */,
032B50E513863B9A00CA6C31 /* locale */,
032B50E613863B9A00CA6C31 /* Makefile */,
032B50E713863B9A00CA6C31 /* map */,
032B50E813863B9A00CA6C31 /* map.old */,
032B50E913863B9A00CA6C31 /* memory */,
032B50EA13863B9A00CA6C31 /* new */,
032B50EB13863B9A00CA6C31 /* numeric */,
032B50EC13863B9A00CA6C31 /* ostream */,
032B50ED13863B9A00CA6C31 /* ostream_helpers */,
032B50EE13863B9A00CA6C31 /* queue */,
032B50EF13863B9A00CA6C31 /* set */,
032B50F013863B9A00CA6C31 /* set.old */,
032B50F113863B9A00CA6C31 /* sstream */,
032B50F213863B9A00CA6C31 /* stack */,
032B50F313863B9A00CA6C31 /* stdexcept */,
032B50F413863B9A00CA6C31 /* streambuf */,
032B50F513863B9A00CA6C31 /* string */,
032B50F613863B9A00CA6C31 /* string_iostream */,
032B50F713863B9A00CA6C31 /* support */,
032B50F813863B9A00CA6C31 /* system_configuration.h */,
032B50F913863B9A00CA6C31 /* type_traits */,
032B50FA13863B9A00CA6C31 /* typeinfo */,
032B50FB13863B9A00CA6C31 /* types */,
032B50FC13863B9A00CA6C31 /* unwind-cxx.h */,
032B50FD13863B9A00CA6C31 /* utility */,
032B50FE13863B9A00CA6C31 /* valarray */,
032B50FF13863B9A00CA6C31 /* vector */,
);
path = include;
sourceTree = "<group>";
};
08FB7794FE84155DC02AAC07 /* Chameleon */ = {
isa = PBXGroup;
children = (
B0056CE511F3868000754B65 /* i386 */ = {
isa = PBXGroup;
children = (
032B502D13863B9900CA6C31 /* modules */,
B0056CE611F3868000754B65 /* boot0 */,
B0056CEA11F3868000754B65 /* boot1 */,
B0056CF211F3868000754B65 /* boot2 */,
B00F494A11F6089500B1D7C5 /* aml_generator.c */,
B00F494911F6089500B1D7C5 /* aml_generator.h */,
B0056D2911F3868000754B65 /* asm.s */,
012E60F7137AC68F00E35218 /* ati_reg.h */,
B0056D2A11F3868000754B65 /* ati.c */,
B0056D2C11F3868000754B65 /* bios.h */,
B0056D2D11F3868000754B65 /* bios.s */,
B0056D2E11F3868000754B65 /* biosfn.c */,
B0056D3A11F3868000754B65 /* device_tree.h */,
B0056D3B11F3868000754B65 /* disk.c */,
65ED53931204B83200B22507 /* disk.h */,
0172D0DC11FB66820030222E /* dram_controllers.h */,
0172D0DD11FB66820030222E /* dram_controllers.c */,
B0056D3C11F3868000754B65 /* efi.h */,
B0056D3D11F3868000754B65 /* ext2fs.c */,
B0056D3E11F3868000754B65 /* ext2fs.h */,
B0056D4311F3868000754B65 /* hfs.h */,
B0056D4411F3868000754B65 /* hfs_CaseTables.h */,
B0056D4511F3868000754B65 /* hfs_compare.c */,
B0056D4611F3868000754B65 /* hpet.c */,
B0056D4711F3868000754B65 /* hpet.h */,
B0056D4811F3868000754B65 /* io_inline.h */,
B0056D4911F3868000754B65 /* libsaio.h */,
B0056D4A11F3868000754B65 /* load.c */,
B0056D4B11F3868000754B65 /* Makefile */,
B0056D4C11F3868000754B65 /* md5c.c */,
B0056D4D11F3868000754B65 /* mem.c */,
B0056D4E11F3868000754B65 /* mem.h */,
B0056D4F11F3868000754B65 /* memvendors.h */,
B0056D5011F3868000754B65 /* misc.c */,
B0056D5111F3868000754B65 /* msdos.c */,
B0056D5611F3868000754B65 /* ntfs.c */,
B0056D5711F3868000754B65 /* ntfs.h */,
B0056D5811F3868000754B65 /* ntfs_private.h */,
B0056D5911F3868000754B65 /* nvidia.c */,
B0056D5A11F3868000754B65 /* nvidia.h */,
B0056D5B11F3868000754B65 /* pci.c */,
B0056D5C11F3868000754B65 /* pci.h */,
B0056D5D11F3868000754B65 /* pci_root.c */,
012E60F9137AC68F00E35218 /* smbios_getters.c */,
012E60FA137AC68F00E35218 /* smbios_getters.h */,
012E60FB137AC68F00E35218 /* smbios.c */,
B0056D6811F3868000754B65 /* spd.c */,
B0056D6911F3868000754B65 /* spd.h */,
B0056D6A11F3868000754B65 /* stringTable.c */,
B0056D6B11F3868000754B65 /* sys.c */,
B0056D6C11F3868000754B65 /* table.c */,
branches/azimutz/Chazi/i386/libsaio/smbios_getters.h
1010
1111
1212
13
14
1315
1416
1517
#define SMBIOS_RANGE_START 0x000F0000
#define SMBIOS_RANGE_END 0x000FFFFF
#define NOT_AVAILABLE"N/A"
typedef enum {
kSMBString,
kSMBByte,
branches/azimutz/Chazi/i386/libsaio/acpi_patcher.c
549549
550550
551551
552
553
552554
553
554555
555
556556
557557
558558
case CPU_MODEL_NEHALEM_EX:
case CPU_MODEL_WESTMERE:
case CPU_MODEL_WESTMERE_EX:
case CPU_MODEL_SANDY:
case CPU_MODEL_SANDY_XEON:
{
// Seems it always contains maximum multiplier value (with turbo, that's what we need)...
maximum.Control = rdmsr64(MSR_IA32_PERF_STATUS) & 0xff;
minimum.Control = (rdmsr64(MSR_PLATFORM_INFO) >> 40) & 0xff;
verbose("P-States: min 0x%x, max 0x%x\n", minimum.Control, maximum.Control);
branches/azimutz/Chazi/i386/libsaio/cpu.c
66
77
88
9
910
1011
1112
......
9293
9394
9495
95
96
97
96
97
98
99
100
98101
99
102
103
100104
101105
102106
......
126130
127131
128132
129
130
131
133
132134
133135
136
137
138
139
140
141
142
143
144
134145
135146
136147
......
196207
197208
198209
210
199211
200212
201
202
213
214
215
216
217
218
219
220
221
203222
204
205
206
223
224
225
226
207227
208
209
228
229
210230
211231
212
213
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
214250
215251
216252
217
218
253
254
219255
220
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
221288
222289
223290
224291
225
292
226293
227
294
228295
229296
230297
//#include "libsaio.h"
#include "platform.h"
#include "cpu.h"
#include "boot.h"
#ifndef DEBUG_CPU
#define DEBUG_CPU 0
void scan_cpu(PlatformInfo_t *p)
{
uint64_ttscFrequency, fsbFrequency, cpuFrequency;
uint64_tmsr, flex_ratio;
uint8_tmaxcoef, maxdiv, currcoef, currdiv;
const char *newratio;
intlen, myfsb;
uint8_tmaxcoef, maxdiv, currcoef, bus_ratio_max, bus_ratio_min, currdiv;
uint32_tmax_ratio, min_ratio;
uint64_ttscFrequency, fsbFrequency, cpuFrequency, msr, flex_ratio;
maxcoef = maxdiv = currcoef = currdiv = 0;
max_ratio = min_ratio = myfsb = bus_ratio_min = 0;
maxcoef = maxdiv = bus_ratio_max = currcoef = currdiv = 0;
/* get cpuid values */
do_cpuid(0x00000000, p->CPU.CPUID[CPUID_0]);
p->CPU.Family= bitfield(p->CPU.CPUID[CPUID_1][0], 11, 8);
p->CPU.ExtModel= bitfield(p->CPU.CPUID[CPUID_1][0], 19, 16);
p->CPU.ExtFamily= bitfield(p->CPU.CPUID[CPUID_1][0], 27, 20);
p->CPU.NoThreads= bitfield(p->CPU.CPUID[CPUID_1][1], 23, 16);
p->CPU.NoCores= bitfield(p->CPU.CPUID[CPUID_4][0], 31, 26) + 1;
p->CPU.Model += (p->CPU.ExtModel << 4);
if (p->CPU.Vendor == 0x756E6547 /* Intel */ && p->CPU.Family == 0x06 && p->CPU.Model >= 0x1a){
msr = rdmsr64(MSR_CORE_THREAD_COUNT);// Undocumented MSR in Nehalem and newer CPUs
p->CPU.NoCores= bitfield((uint32_t)msr, 31, 16);// Using undocumented MSR to get actual values
p->CPU.NoThreads= bitfield((uint32_t)msr, 15, 0);// Using undocumented MSR to get actual values
} else {
p->CPU.NoThreads= bitfield(p->CPU.CPUID[CPUID_1][1], 23, 16);// Use previous method for Cores and Threads
p->CPU.NoCores= bitfield(p->CPU.CPUID[CPUID_4][0], 31, 26) + 1;
}
/* get brand string (if supported) */
/* Copyright: from Apple's XNU cpuid.c */
if (p->CPU.CPUID[CPUID_80][0] > 0x80000004) {
cpuFrequency = 0;
if ((p->CPU.Vendor == 0x756E6547 /* Intel */) && ((p->CPU.Family == 0x06) || (p->CPU.Family == 0x0f))) {
int intelCPU = p->CPU.Model;
if ((p->CPU.Family == 0x06 && p->CPU.Model >= 0x0c) || (p->CPU.Family == 0x0f && p->CPU.Model >= 0x03)) {
/* Nehalem CPU model */
if (p->CPU.Family == 0x06 && (p->CPU.Model == 0x1a || p->CPU.Model == 0x1e
|| p->CPU.Model == 0x1f || p->CPU.Model == 0x25 || p->CPU.Model == 0x2c)) {
if (p->CPU.Family == 0x06 && (p->CPU.Model == CPU_MODEL_NEHALEM ||
p->CPU.Model == CPU_MODEL_FIELDS ||
p->CPU.Model == CPU_MODEL_DALES ||
p->CPU.Model == CPU_MODEL_DALES_32NM ||
p->CPU.Model == CPU_MODEL_WESTMERE ||
p->CPU.Model == CPU_MODEL_NEHALEM_EX ||
p->CPU.Model == CPU_MODEL_WESTMERE_EX ||
p->CPU.Model == CPU_MODEL_SANDY ||
p->CPU.Model == CPU_MODEL_SANDY_XEON)) {
msr = rdmsr64(MSR_PLATFORM_INFO);
//DBG("msr(%d): platform_info %08x\n", __LINE__, msr & 0xffffffff);
DBG("MSR_PLATFORM_INFO (0xCE): 0x%08X%08X\n", (uint32_t)(msr >> 32), (uint32_t)msr);
currcoef = (msr >> 8) & 0xff;
DBG("msr(%d): platform_info %08x\n", __LINE__, msr & 0xffffffff);
//kabylDBG("MSR_PLATFORM_INFO (0xCE): 0x%08X%08X\n", (uint32_t)(msr >> 32), (uint32_t)msr);
bus_ratio_max = (msr >> 8) & 0xff;
bus_ratio_min = (msr >> 40) & 0xff; //valv: not sure about this one (Remarq.1)
msr = rdmsr64(MSR_FLEX_RATIO);
//DBG("msr(%d): flex_ratio %08x\n", __LINE__, msr & 0xffffffff);
DBG("MSR_FLEX_RATIO (0x194): 0x%08X%08X\n", (uint32_t)(msr >> 32), (uint32_t)msr);
DBG("msr(%d): flex_ratio %08x\n", __LINE__, msr & 0xffffffff);
//kabylDBG("MSR_FLEX_RATIO (0x194): 0x%08X%08X\n", (uint32_t)(msr >> 32), (uint32_t)msr);
if ((msr >> 16) & 0x01) {
flex_ratio = (msr >> 8) & 0xff;
if (currcoef > flex_ratio) {
currcoef = flex_ratio;
/* bcc9: at least on the gigabyte h67ma-ud2h,
where the cpu multipler can't be changed to
allow overclocking, the flex_ratio msr has unexpected (to OSX)
contents. These contents cause mach_kernel to
fail to compute the bus ratio correctly, instead
causing the system to crash since tscGranularity
is inadvertently set to 0.
*/
if (flex_ratio == 0) {
/* Clear bit 16 (evidently the
presence bit) */
wrmsr64(MSR_FLEX_RATIO, (msr & 0xFFFFFFFFFFFEFFFFULL));
msr = rdmsr64(MSR_FLEX_RATIO);
verbose("Unusable flex ratio detected. Patched MSR now %08x\n", msr & 0xffffffff);
} else {
if (bus_ratio_max > flex_ratio) {
bus_ratio_max = flex_ratio;
}
}
}
if (currcoef) {
fsbFrequency = (tscFrequency / currcoef);
if (bus_ratio_max) {
fsbFrequency = (tscFrequency / bus_ratio_max);
}
cpuFrequency = tscFrequency;
//valv: Turbo Ratio Limit
if ((intelCPU != 0x2e) && (intelCPU != 0x2f)) {
msr = rdmsr64(MSR_TURBO_RATIO_LIMIT);
cpuFrequency = bus_ratio_max * fsbFrequency;
max_ratio = bus_ratio_max * 10;
} else {
cpuFrequency = tscFrequency;
}
if ((getValueForKey(kBusRatioKey, &newratio, &len, &bootInfo->bootConfig)) && (len <= 4)) {
max_ratio = atoi(newratio);
max_ratio = (max_ratio * 10);
if (len >= 3) max_ratio = (max_ratio + 5);
verbose("Bus-Ratio: min=%d, max=%s\n", bus_ratio_min, newratio);
// extreme overclockers may love 320 ;)
if ((max_ratio >= min_ratio) && (max_ratio <= 320)) {
cpuFrequency = (fsbFrequency * max_ratio) / 10;
if (len >= 3) maxdiv = 1;
else maxdiv = 0;
} else {
max_ratio = (bus_ratio_max * 10);
}
}
//valv: to be uncommented if Remarq.1 didn't stick
/*if(bus_ratio_max > 0) bus_ratio = flex_ratio;*/
p->CPU.MaxRatio = max_ratio;
p->CPU.MinRatio = min_ratio;
myfsb = fsbFrequency / 1000000;
verbose("Sticking with [BCLK: %dMhz, Bus-Ratio: %d]\n", myfsb, max_ratio);
currcoef = bus_ratio_max;
} else {
msr = rdmsr64(MSR_IA32_PERF_STATUS);
//Azi: __FILE__ %d, __LINE__ %d, __FUNCTION__ %s
//msglog("%s - %d\n", __FUNCTION__, __LINE__);
//DBG("msr(%d): ia32_perf_stat 0x%08x\n", __LINE__, msr & 0xffffffff);
DBG("msr(%d): ia32_perf_stat 0x%08x\n", __LINE__, msr & 0xffffffff);
//Azi: 0x00000F2700000F27
DBG("MSR_IA32_PERF_STATUS (0x198): 0x%08X%08X\n", (uint32_t)(msr >> 32), (uint32_t)msr);
//kabylDBG("MSR_IA32_PERF_STATUS (0x198): 0x%08X%08X\n", (uint32_t)(msr >> 32), (uint32_t)msr);
currcoef = (msr >> 8) & 0x1f;
/* Non-integer bus ratio for the max-multi*/
maxdiv = (msr >> 46) & 0x01;
branches/azimutz/Chazi/i386/libsaio/platform.h
3636
3737
3838
39
3940
41
4042
4143
4244
......
127129
128130
129131
132
133
130134
131135
132136
#define CPU_MODEL_FIELDS0x1E// Lynnfield, Clarksfield, Jasper
#define CPU_MODEL_DALES0x1F// Havendale, Auburndale
#define CPU_MODEL_DALES_32NM0x25// Clarkdale, Arrandale
#define CPU_MODEL_SANDY0x2a// Sandy bridge
#define CPU_MODEL_WESTMERE0x2C// Gulftown, Westmere-EP, Westmere-WS
#define CPU_MODEL_SANDY_XEON0x2D
#define CPU_MODEL_NEHALEM_EX0x2E
#define CPU_MODEL_WESTMERE_EX0x2F
uint64_tTSCFrequency;// TSC Frequency Hz
uint64_tFSBFrequency;// FSB Frequency Hz
uint64_tCPUFrequency;// CPU Frequency Hz
uint32_tMaxRatio;// Max Bus Ratio
uint32_tMinRatio;// Min Bus Ratio
charBrandString[48];// 48 Byte Branding String
uint32_tCPUID[CPUID_MAX][4];// CPUID 0..4, 80..81 Raw Values
} CPU;
branches/azimutz/Chazi/i386/libsaio/smbios.c
101101
102102
103103
104
105
106
107
104108
105109
106110
......
346350
347351
348352
353
354
355
356
357
358
359
349360
350361
351362
......
385396
386397
387398
388
399
389400
390401
391402
#define kDefaultiMacNehalem"iMac11,1"
#define kDefaultiMacNehalemBIOSVersion" IM111.88Z.0034.B00.0802091538"
#define kDefaultiMacNehalemBoardProduct"Mac-F2268DAE"
// defaults for an iMac12,1
#define kDefaultiMacSandy"iMac12,1"
#define kDefaultiMacSandyBIOSVersion" IM121.88Z.0047.B00.1102091756"
#define kDefaultiMacSandyBoardProduct"Mac-F2268DAE" // find value ??
// defaults for a Mac Pro
#define kDefaultMacProFamily"MacPro"
defaultBaseBoard.product= kDefaultiMacNehalemBoardProduct;
break;
case CPU_MODEL_SANDY:
case CPU_MODEL_SANDY_XEON:
defaultBIOSInfo.version= kDefaultiMacSandyBIOSVersion;
defaultSystemInfo.productName= kDefaultiMacSandy;
defaultSystemInfo.family= kDefaultiMacFamily;
defaultBaseBoard.product= kDefaultiMacSandyBoardProduct; // ??
break;
case CPU_MODEL_NEHALEM:
case CPU_MODEL_NEHALEM_EX:
defaultBIOSInfo.version= kDefaultMacProNehalemBIOSVersion;
}
}
/* Used for SM*_N smbios.plist keys */
/* Used for SM*n smbios.plist keys */
bool getSMBValueForKey(SMBStructHeader *structHeader, const char *keyString, const char **string, returnType *value)
{
static int idx = -1;
branches/azimutz/Chazi/i386/libsaio/cpu.h
2020
2121
2222
23
2324
2425
2526
27
2628
2729
2830
#define MSR_IA32_PERF_CONTROL0x199
#define MSR_IA32_EXT_CONFIG0x00EE
#define MSR_FLEX_RATIO0x194
#define MSR_TURBO_RATIO_LIMIT0x1AD
#defineMSR_PLATFORM_INFO0xCE
#define K8_FIDVID_STATUS0xC0010042
#define K10_COFVID_STATUS0xC0010071
#define MSR_CORE_THREAD_COUNT0x35// Undocumented
//#define DEFAULT_FSB100000 // for now, hardcoding 100MHz for old CPUs - disabled
branches/azimutz/Chazi/i386/libsaio/fake_efi.c
761761
762762
763763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
764796
765797
766798
......
773805
774806
775807
776
808
777809
778810
779811
......
793825
794826
795827
828
829
796830
797831
798832
}
}
/**
what for ??
**/
void saveOriginalSMBIOS(void)
{
Node *node;
SMBEntryPoint *origeps;
void *tableAddress;
node = DT__FindNode("/efi/platform", false);
if (!node)
{
verbose("/efi/platform node not found\n");
return;
}
origeps = getSmbios(SMBIOS_ORIGINAL);
if (!origeps)
{
return;
}
tableAddress = (void *)AllocateKernelMemory(origeps->dmi.tableLength);
if (!tableAddress)
{
return;
}
memcpy(tableAddress, (void *)origeps->dmi.tableAddress, origeps->dmi.tableLength);
DT__AddProperty(node, "SMBIOS", origeps->dmi.tableLength, tableAddress);
}
/*
* Entrypoint from boot.c
*/
setup_pci_devs(root_pci_dev);
readSMBIOSInfo(getSmbios(SMBIOS_ORIGINAL));
// load smbios.plist file if any
//setupSmbiosConfigFile("SMBIOS.plist");
scan_mem();
// Initialize the device tree
setupEfiDeviceTree();
saveOriginalSMBIOS();
// Add configuration table entries to both the services table and the device tree
setupEfiConfigurationTable();
}
branches/azimutz/Chazi/i386/libsaio/smbios_getters.c
4848
4949
5050
51
52
5153
5254
5355
......
155157
156158
157159
160
161
158162
159163
160164
......
242246
243247
244248
245
246
247
249
250
251
248252
249253
250254
......
258262
259263
260264
261
262
265
263266
264267
265268
266269
267270
268
269
270
271
272
273
271274
272275
273276
......
281284
282285
283286
284
287
285288
286289
287290
288291
289292
290
291
292
293
294
295
293296
294297
295298
return false;
case 0x19:// Intel Core i5 650 @3.20 Ghz
case CPU_MODEL_SANDY:// Intel Core i5, i7 LGA1155 sandy bridge
case CPU_MODEL_SANDY_XEON:
case CPU_MODEL_NEHALEM:// Intel Core i7 LGA1366 (45nm)
case CPU_MODEL_FIELDS:// Intel Core i5, i7 LGA1156 (45nm)
case CPU_MODEL_DALES:// Intel Core i5, i7 LGA1156 (45nm) ???
value->word = 0x0701;// Core i7
return true;
case CPU_MODEL_SANDY:// Intel Core i3, i5, i7 LGA1155 sandy bridge
case CPU_MODEL_SANDY_XEON:
case CPU_MODEL_DALES_32NM:// Intel Core i3, i5, i7 LGA1156 (32nm) (Clarkdale, Arrandale)
if (strstr(Platform.CPU.BrandString, "Core(TM) i3"))
value->word = 0x901;// Core i3
}
}
return false;
//value->string = "N/A";
//return true;
//return false;
value->string = NOT_AVAILABLE;
return true;
}
bool getSMBMemoryDeviceSerialNumber(returnType *value)
map = Platform.DMI.DIMM[idx];
if (Platform.RAM.DIMM[map].InUse && strlen(Platform.RAM.DIMM[map].SerialNo) > 0)
{
DBG("name = %s, map=%d, RAM Detected SerialNo[%d]='%s'\n", name ? name : "",
map, idx, Platform.RAM.DIMM[map].SerialNo);
DBG("map=%d, RAM Detected SerialNo[%d]='%s'\n", map, idx, Platform.RAM.DIMM[map].SerialNo);
value->string = Platform.RAM.DIMM[map].SerialNo;
return true;
}
}
return false;
//value->string = "N/A";
//return true;
//return false;
value->string = NOT_AVAILABLE;
return true;
}
bool getSMBMemoryDevicePartNumber(returnType *value)
map = Platform.DMI.DIMM[idx];
if (Platform.RAM.DIMM[map].InUse && strlen(Platform.RAM.DIMM[map].PartNo) > 0)
{
DBG("Ram Detected PartNo[%d]='%s'\n", idx, Platform.RAM.DIMM[map].PartNo);
DBG("map=%d, RAM Detected PartNo[%d]='%s'\n", map, idx, Platform.RAM.DIMM[map].PartNo);
value->string = Platform.RAM.DIMM[map].PartNo;
return true;
}
}
return false;
//value->string = "N/A";
//return true;
//return false;
value->string = NOT_AVAILABLE;
return true;
}
branches/azimutz/Chazi/i386/boot2/boot.h
144144
145145
146146
147
147148
148149
149150
#define kEHCIhardKey "EHCIhard" // usb.cgetBoolFK- ??
#define kUHCIresetKey "UHCIreset" // usb.cgetBoolFK
#define kLegacyOffKey "USBLegacyOff" // usb.cgetBoolFK
#define kBusRatioKey "busratio" // cpu.cgetValFK
/*
* Flags to the booter and/or kernel - these end with "Flag".
branches/azimutz/Chazi/i386/modules/Memory/mem.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
/*
* Copyright 2010 AsereBLN. All rights reserved. <aserebln@googlemail.com>
*
* mem.c - obtain system memory information
*/
#include "libsaio.h"
#include "pci.h"
#include "platform.h"
#include "cpu.h"
#include "mem.h"
#include "smbios_patcher.h"
#ifndef DEBUG_MEM
#define DEBUG_MEM 0
#endif
#if DEBUG_MEM
#define DBG(x...)printf(x)
#else
#define DBG(x...)
#endif
#define DC(c) (c >= 0x20 && c < 0x7f ? (char) c : '.')
#define STEP 16
void dumpPhysAddr(const char * title, void * a, int len)
{
int i,j;
u_int8_t* ad = (u_int8_t*) a;
char buffer[80];
char str[16];
if(ad==NULL) return;
printf("%s addr=0x%08x len=%04d\n",title ? title : "Dump of ", a, len);
printf("Ofs-00-01-02-03-04-05-06-07-08-09-0A-0B-0C-0D-0E-0F ASCII\n");
i = (len/STEP)*STEP;
for (j=0; j < i; j+=STEP)
{
printf("%02x: %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c\n",
j,
ad[j], ad[j+1], ad[j+2], ad[j+3] , ad[j+4], ad[j+5], ad[j+6], ad[j+7],
ad[j+8], ad[j+9], ad[j+10], ad[j+11] , ad[j+12], ad[j+13], ad[j+14], ad[j+15],
DC(ad[j]), DC(ad[j+1]), DC(ad[j+2]), DC(ad[j+3]) , DC(ad[j+4]), DC(ad[j+5]), DC(ad[j+6]), DC(ad[j+7]),
DC(ad[j+8]), DC(ad[j+9]), DC(ad[j+10]), DC(ad[j+11]) , DC(ad[j+12]), DC(ad[j+13]), DC(ad[j+14]), DC(ad[j+15])
);
}
if (len%STEP==0) return;
sprintf(buffer,"%02x:", i);
for (j=0; j < STEP; j++) {
if (j<(len%STEP))
sprintf(str, " %02x", ad[i+j]);
else
strcpy(str, " " );
strncat(buffer, str, sizeof(buffer));
}
strncat(buffer," ", sizeof(buffer));
for (j=0; j < (len%STEP); j++) {
sprintf(str, "%c", DC(ad[i+j]));
strncat(buffer, str, sizeof(buffer));
}
printf("%s\n",buffer);
}
void dumpAllTablesOfType(int i)
{
char title[32];
struct DMIHeader * dmihdr;
for(dmihdr = FindFirstDmiTableOfType(i, 4);
dmihdr;
dmihdr = FindNextDmiTableOfType(i, 4)) {
sprintf(title,"Table (type %d) :" , i);
dumpPhysAddr(title, dmihdr, dmihdr->length+32);
}
}
const char * getDMIString(struct DMIHeader * dmihdr, uint8_t strNum)
{
const char * ret =NULL;
const char * startAddr = (const char *) dmihdr;
const char * limit = NULL;
if (!dmihdr || dmihdr->length<4 || strNum==0) return NULL;
startAddr += dmihdr->length;
limit = startAddr + 256;
for(; strNum; strNum--) {
if ((*startAddr)==0 && *(startAddr+1)==0) break;
if (*startAddr && strNum<=1) {
ret = startAddr; // current str
break;
}
while(*startAddr && startAddr<limit) startAddr++;
if (startAddr==limit) break; // no terminator found
else if((*startAddr==0) && *(startAddr+1)==0) break;
else startAddr++;
}
return ret;
}
void scan_memory(PlatformInfo_t *p)
{
int i=0;
struct DMIHeader * dmihdr = NULL;
struct DMIMemoryModuleInfo* memInfo[MAX_RAM_SLOTS]; // 6
struct DMIPhysicalMemoryArray* physMemArray; // 16
struct DMIMemoryDevice* memDev[MAX_RAM_SLOTS]; //17
/* We mainly don't use obsolete tables 5,6 because most of computers don't handle it anymore */
Platform.DMI.MemoryModules = 0;
/* Now lets peek info rom table 16,17 as for some bios, table 5 & 6 are not used */
physMemArray = (struct DMIPhysicalMemoryArray*) FindFirstDmiTableOfType(16, 4);
Platform.DMI.MaxMemorySlots = physMemArray ? physMemArray->numberOfMemoryDevices : 0;
i = 0;
for(dmihdr = FindFirstDmiTableOfType(17, 4);
dmihdr;
dmihdr = FindNextDmiTableOfType(17, 4) ) {
memDev[i] = (struct DMIMemoryDevice*) dmihdr;
if (memDev[i]->size !=0 ) Platform.DMI.MemoryModules++;
if (memDev[i]->speed>0) Platform.RAM.DIMM[i].Frequency = memDev[i]->speed; // take it here for now but we'll check spd and dmi table 6 as well
i++;
}
// for table 6, we only have a look at the current speed
i = 0;
for(dmihdr = FindFirstDmiTableOfType(6, 4);
dmihdr;
dmihdr = FindNextDmiTableOfType(6, 4) ) {
memInfo[i] = (struct DMIMemoryModuleInfo*) dmihdr;
if (memInfo[i]->currentSpeed > Platform.RAM.DIMM[i].Frequency)
Platform.RAM.DIMM[i].Frequency = memInfo[i]->currentSpeed; // favor real overclocked speed if any
i++;
}
#if 0
dumpAllTablesOfType(17);
getc();
#endif
}
branches/azimutz/Chazi/i386/modules/Memory/mem.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/*
* Copyright 2010 AsereBLN. All rights reserved. <aserebln@googlemail.com>
*
* mem.h
*/
#ifndef __LIBSAIO_MEM_H
#define __LIBSAIO_MEM_H
#include "platform.h"
extern void scan_memory(PlatformInfo_t *);
#endif/* __LIBSAIO_MEM_H */
branches/azimutz/Chazi/i386/modules/Memory/spd.c
237237
238238
239239
240
241240
242241
243242
}
return strdup(asciiPartNo);
return NULL;
}
int mapping []= {0,2,1,3,4,6,5,7,8,10,9,11};

Archive Download the corresponding diff file

Revision: 842