Index: branches/azimutz/trunkAutoResolution/Chameleon.xcodeproj/project.pbxproj =================================================================== --- branches/azimutz/trunkAutoResolution/Chameleon.xcodeproj/project.pbxproj (revision 1539) +++ branches/azimutz/trunkAutoResolution/Chameleon.xcodeproj/project.pbxproj (revision 1540) @@ -951,7 +951,6 @@ A3561CAF1414024C00E9B51E /* HelloWorld.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HelloWorld.cpp; sourceTree = ""; }; A3561CB11414024C00E9B51E /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = ""; }; A3561CB31414024C00E9B51E /* modules */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = modules; sourceTree = ""; }; - A3561CB61414024D00E9B51E /* test */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = test; sourceTree = ""; }; A3561CB81414024D00E9B51E /* __ashldi3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = __ashldi3.c; sourceTree = ""; }; A3561CB91414024D00E9B51E /* __ashrdi3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = __ashrdi3.c; sourceTree = ""; }; A3561CBA1414024D00E9B51E /* __clzsi2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = __clzsi2.c; sourceTree = ""; }; @@ -1150,7 +1149,122 @@ A3561D7F1414024D00E9B51E /* utility.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = utility.cpp; sourceTree = ""; }; A3561D801414024D00E9B51E /* valarray.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = valarray.cpp; sourceTree = ""; }; A3561D811414024D00E9B51E /* vector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = vector.cpp; sourceTree = ""; }; + A3561DA61414296600E9B51E /* Keylayout.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = Keylayout.c; sourceTree = ""; }; + A3561DA71414296600E9B51E /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = ""; }; + A3561DA81414296600E9B51E /* Cconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Cconfig; sourceTree = ""; }; + A35D216F141A73B000969AC0 /* cham-mklayout.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "cham-mklayout.c"; sourceTree = ""; }; + A35D2171141A73B000969AC0 /* mac-de.slt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "mac-de.slt"; sourceTree = ""; }; + A35D2172141A73B000969AC0 /* mac-es.slt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "mac-es.slt"; sourceTree = ""; }; + A35D2173141A73B000969AC0 /* mac-fr.slt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "mac-fr.slt"; sourceTree = ""; }; + A35D2174141A73B000969AC0 /* mac-it.slt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "mac-it.slt"; sourceTree = ""; }; + A35D2175141A73B000969AC0 /* mac-se.slt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "mac-se.slt"; sourceTree = ""; }; + A35D2176141A73B000969AC0 /* pc-fr.slt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "pc-fr.slt"; sourceTree = ""; }; + A35D2177141A73B000969AC0 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = ""; }; + A35D2178141A753E00969AC0 /* README */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = README; sourceTree = ""; }; + A35D2187141A75DC00969AC0 /* slimpkg.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = slimpkg.sh; sourceTree = ""; }; + A35D2188141A75DC00969AC0 /* buildpkg.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = buildpkg.sh; sourceTree = ""; }; + A35D2189141A75DC00969AC0 /* builddmg.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = builddmg.sh; sourceTree = ""; }; A360AA7D14136C1A00084D3F /* Make.rules */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Make.rules; sourceTree = ""; }; + A37D7D4A141B7C6F0069C38B /* background.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = background.tiff; sourceTree = ""; }; + A37D7D4C141B7C6F0069C38B /* de */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = de; path = de.lproj/Conclusion.rtfd; sourceTree = ""; }; + A37D7D4E141B7C6F0069C38B /* de */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = de; path = de.lproj/Description.html; sourceTree = ""; }; + A37D7D50141B7C6F0069C38B /* de */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = de; path = de.lproj/License.rtf; sourceTree = ""; }; + A37D7D52141B7C6F0069C38B /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/Localizable.strings; sourceTree = ""; }; + A37D7D54141B7C6F0069C38B /* de */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = de; path = de.lproj/Welcome.rtfd; sourceTree = ""; }; + A37D7D55141B7C6F0069C38B /* en */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = en; path = en.lproj/Conclusion.rtfd; sourceTree = ""; }; + A37D7D56141B7C6F0069C38B /* en */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = en; path = en.lproj/Description.html; sourceTree = ""; }; + A37D7D57141B7C6F0069C38B /* en */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = en; path = en.lproj/License.rtf; sourceTree = ""; }; + A37D7D58141B7C6F0069C38B /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Localizable.strings; sourceTree = ""; }; + A37D7D59141B7C6F0069C38B /* en */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = en; path = en.lproj/Welcome.rtfd; sourceTree = ""; }; + A37D7D5A141B7C6F0069C38B /* es */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = es; path = es.lproj/Conclusion.rtfd; sourceTree = ""; }; + A37D7D5B141B7C6F0069C38B /* es */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = es; path = es.lproj/Description.html; sourceTree = ""; }; + A37D7D5C141B7C6F0069C38B /* es */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = es; path = es.lproj/License.rtf; sourceTree = ""; }; + A37D7D5D141B7C6F0069C38B /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/Localizable.strings; sourceTree = ""; }; + A37D7D5E141B7C6F0069C38B /* es */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = es; path = es.lproj/Welcome.rtfd; sourceTree = ""; }; + A37D7D5F141B7C6F0069C38B /* fr */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = fr; path = fr.lproj/Conclusion.rtfd; sourceTree = ""; }; + A37D7D60141B7C6F0069C38B /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = fr; path = fr.lproj/Description.html; sourceTree = ""; }; + A37D7D61141B7C6F0069C38B /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = fr; path = fr.lproj/License.rtf; sourceTree = ""; }; + A37D7D62141B7C6F0069C38B /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/Localizable.strings; sourceTree = ""; }; + A37D7D63141B7C6F0069C38B /* fr */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = fr; path = fr.lproj/Welcome.rtfd; sourceTree = ""; }; + A37D7D64141B7C6F0069C38B /* hr-HR */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = "hr-HR"; path = "hr-HR.lproj/Conclusion.rtfd"; sourceTree = ""; }; + A37D7D65141B7C6F0069C38B /* hr-HR */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = "hr-HR"; path = "hr-HR.lproj/Description.html"; sourceTree = ""; }; + A37D7D66141B7C6F0069C38B /* hr-HR */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = "hr-HR"; path = "hr-HR.lproj/License.rtf"; sourceTree = ""; }; + A37D7D67141B7C6F0069C38B /* hr-HR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "hr-HR"; path = "hr-HR.lproj/Localizable.strings"; sourceTree = ""; }; + A37D7D68141B7C6F0069C38B /* hr-HR */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = "hr-HR"; path = "hr-HR.lproj/Welcome.rtfd"; sourceTree = ""; }; + A37D7D69141B7C6F0069C38B /* id */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = id; path = id.lproj/Conclusion.rtfd; sourceTree = ""; }; + A37D7D6A141B7C6F0069C38B /* id */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = id; path = id.lproj/Description.html; sourceTree = ""; }; + A37D7D6B141B7C6F0069C38B /* id */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = id; path = id.lproj/License.rtf; sourceTree = ""; }; + A37D7D6C141B7C6F0069C38B /* id */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = id; path = id.lproj/Localizable.strings; sourceTree = ""; }; + A37D7D6D141B7C6F0069C38B /* id */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = id; path = id.lproj/Welcome.rtfd; sourceTree = ""; }; + A37D7D6E141B7C6F0069C38B /* it */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = it; path = it.lproj/Conclusion.rtfd; sourceTree = ""; }; + A37D7D6F141B7C6F0069C38B /* it */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = it; path = it.lproj/Description.html; sourceTree = ""; }; + A37D7D70141B7C6F0069C38B /* it */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = it; path = it.lproj/License.rtf; sourceTree = ""; }; + A37D7D71141B7C6F0069C38B /* it */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/Localizable.strings; sourceTree = ""; }; + A37D7D72141B7C6F0069C38B /* it */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = it; path = it.lproj/Welcome.rtfd; sourceTree = ""; }; + A37D7D73141B7C6F0069C38B /* pl */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = pl; path = pl.lproj/Conclusion.rtfd; sourceTree = ""; }; + A37D7D74141B7C6F0069C38B /* pl */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = pl; path = pl.lproj/Description.html; sourceTree = ""; }; + A37D7D75141B7C6F0069C38B /* pl */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = pl; path = pl.lproj/License.rtf; sourceTree = ""; }; + A37D7D76141B7C6F0069C38B /* pl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pl; path = pl.lproj/Localizable.strings; sourceTree = ""; }; + A37D7D77141B7C6F0069C38B /* pl */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = pl; path = pl.lproj/Welcome.rtfd; sourceTree = ""; }; + A37D7D78141B7C6F0069C38B /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = "pt-BR"; path = "pt-BR.lproj/Conclusion.rtfd"; sourceTree = ""; }; + A37D7D79141B7C6F0069C38B /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = "pt-BR"; path = "pt-BR.lproj/Description.html"; sourceTree = ""; }; + A37D7D7A141B7C6F0069C38B /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = "pt-BR"; path = "pt-BR.lproj/License.rtf"; sourceTree = ""; }; + A37D7D7B141B7C6F0069C38B /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "pt-BR.lproj/Localizable.strings"; sourceTree = ""; }; + A37D7D7C141B7C6F0069C38B /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = "pt-BR"; path = "pt-BR.lproj/Welcome.rtfd"; sourceTree = ""; }; + A37D7D7D141B7C6F0069C38B /* pt-PT */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = "pt-PT"; path = "pt-PT.lproj/Conclusion.rtfd"; sourceTree = ""; }; + A37D7D7E141B7C6F0069C38B /* pt-PT */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = "pt-PT"; path = "pt-PT.lproj/Description.html"; sourceTree = ""; }; + A37D7D7F141B7C6F0069C38B /* pt-PT */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = "pt-PT"; path = "pt-PT.lproj/License.rtf"; sourceTree = ""; }; + A37D7D80141B7C6F0069C38B /* pt-PT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-PT"; path = "pt-PT.lproj/Localizable.strings"; sourceTree = ""; }; + A37D7D81141B7C6F0069C38B /* pt-PT */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = "pt-PT"; path = "pt-PT.lproj/Welcome.rtfd"; sourceTree = ""; }; + A37D7D82141B7C6F0069C38B /* sr */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = sr; path = sr.lproj/Conclusion.rtfd; sourceTree = ""; }; + A37D7D83141B7C6F0069C38B /* sr */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = sr; path = sr.lproj/Description.html; sourceTree = ""; }; + A37D7D84141B7C6F0069C38B /* sr */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = sr; path = sr.lproj/License.rtf; sourceTree = ""; }; + A37D7D85141B7C6F0069C38B /* sr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sr; path = sr.lproj/Localizable.strings; sourceTree = ""; }; + A37D7D86141B7C6F0069C38B /* sr */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = sr; path = sr.lproj/Welcome.rtfd; sourceTree = ""; }; + A3F1F210141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F212141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F214141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F216141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F218141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F21A141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F21C141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F21E141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F220141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F222141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F224141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F226141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F228141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F22A141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F22C141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F22E141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F230141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F233141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F235141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F237141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F239141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F23B141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F23D141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F23F141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F241141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F243141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F245141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F247141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F249141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F24B141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; + A3F1F24D141B9B0D00DDA709 /* postinstall.in */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall.in; sourceTree = ""; }; + A3F1F24F141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; + A3F1F252141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F254141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F256141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F258141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F25A141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F25C141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F25E141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F260141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F262141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F264141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F266141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; + A3F1F267141B9B3B00DDA709 /* Readme.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Readme.txt; sourceTree = ""; }; B0056CE711F3868000754B65 /* boot0.s */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = boot0.s; sourceTree = ""; }; B0056CE811F3868000754B65 /* chain0.s */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = chain0.s; sourceTree = ""; }; B0056CE911F3868000754B65 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = ""; }; @@ -1290,40 +1404,7 @@ B0056D8011F3868000754B65 /* coding_standards.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = coding_standards.txt; sourceTree = ""; }; B0056D8111F3868000754B65 /* CHANGES */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = CHANGES; sourceTree = ""; }; B0056D8211F3868000754B65 /* APPLE_LICENSE */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = APPLE_LICENSE; sourceTree = ""; }; - B0056D8411F3868000754B65 /* buildpkg */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = buildpkg; sourceTree = ""; }; B0056D8511F3868000754B65 /* Distribution */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = Distribution; sourceTree = ""; }; - B0056D8611F3868000754B65 /* fdisk */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.executable"; path = fdisk; sourceTree = ""; }; - B0056D8811F3868000754B65 /* AHCIPortInjector.kext */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.kernel-extension"; path = AHCIPortInjector.kext; sourceTree = ""; }; - B0056D8911F3868000754B65 /* ATAPortInjector.kext */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.kernel-extension"; path = ATAPortInjector.kext; sourceTree = ""; }; - B0056D8A11F3868000754B65 /* Disabler.kext */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.kernel-extension"; path = Disabler.kext; sourceTree = ""; }; - B0056D8B11F3868000754B65 /* IOAHCIBlockStorageInjector.kext */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.kernel-extension"; path = IOAHCIBlockStorageInjector.kext; sourceTree = ""; }; - B0056D8C11F3868000754B65 /* JMicronATAInjector.kext */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.kernel-extension"; path = JMicronATAInjector.kext; sourceTree = ""; }; - B0056D8E11F3868000754B65 /* background.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = background.tiff; sourceTree = ""; }; - B0056D9011F3868000754B65 /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = English; path = English.lproj/Description.html; sourceTree = ""; }; - B0056D9211F3868000754B65 /* English */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = English; path = English.lproj/License.rtf; sourceTree = ""; }; - B0056D9411F3868000754B65 /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/Localizable.strings; sourceTree = ""; }; - B0056D9611F3868000754B65 /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = English; path = English.lproj/Welcome.rtfd; sourceTree = ""; }; - B0056D9711F3868000754B65 /* French */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = French; path = French.lproj/Description.html; sourceTree = ""; }; - B0056D9811F3868000754B65 /* French */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = French; path = French.lproj/License.rtf; sourceTree = ""; }; - B0056D9911F3868000754B65 /* French */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = French; path = French.lproj/Localizable.strings; sourceTree = ""; }; - B0056D9A11F3868000754B65 /* German */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = German; path = German.lproj/Description.html; sourceTree = ""; }; - B0056D9B11F3868000754B65 /* German */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = German; path = German.lproj/License.rtf; sourceTree = ""; }; - B0056D9C11F3868000754B65 /* German */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = German; path = German.lproj/Localizable.strings; sourceTree = ""; }; - B0056D9D11F3868000754B65 /* Spanish */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = Spanish; path = Spanish.lproj/Description.html; sourceTree = ""; }; - B0056D9E11F3868000754B65 /* Spanish */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = Spanish; path = Spanish.lproj/License.rtf; sourceTree = ""; }; - B0056D9F11F3868000754B65 /* Spanish */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = Spanish; path = Spanish.lproj/Localizable.strings; sourceTree = ""; }; - B0056DA011F3868000754B65 /* Spanish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = Spanish; path = Spanish.lproj/Welcome.rtfd; sourceTree = ""; }; - B0056DA311F3868000754B65 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; - B0056DA511F3868000754B65 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; - B0056DA811F3868000754B65 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; - B0056DAA11F3868000754B65 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; - B0056DAC11F3868000754B65 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; - B0056DAE11F3868000754B65 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; - B0056DB011F3868000754B65 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; - B0056DB211F3868000754B65 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; - B0056DB411F3868000754B65 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; - B0056DB611F3868000754B65 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; - B0056DB811F3868000754B65 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; B0056DB911F3868000754B65 /* smbios.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = smbios.plist; sourceTree = ""; }; B0056DBD11F3868000754B65 /* background.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = background.png; sourceTree = ""; }; B0056DBE11F3868000754B65 /* boot.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = boot.png; sourceTree = ""; }; @@ -2909,19 +2990,15 @@ A3561CB41414024C00E9B51E /* Keylayout */ = { isa = PBXGroup; children = ( - A3561CB51414024C00E9B51E /* utils */, + A3F1F267141B9B3B00DDA709 /* Readme.txt */, + A35D216E141A73B000969AC0 /* layouts */, + A3561DA81414296600E9B51E /* Cconfig */, + A3561DA61414296600E9B51E /* Keylayout.c */, + A3561DA71414296600E9B51E /* Makefile */, ); path = Keylayout; sourceTree = ""; }; - A3561CB51414024C00E9B51E /* utils */ = { - isa = PBXGroup; - children = ( - A3561CB61414024D00E9B51E /* test */, - ); - path = utils; - sourceTree = ""; - }; A3561CB71414024D00E9B51E /* klibc */ = { isa = PBXGroup; children = ( @@ -3154,6 +3231,461 @@ path = include; sourceTree = ""; }; + A35D216E141A73B000969AC0 /* layouts */ = { + isa = PBXGroup; + children = ( + A35D216F141A73B000969AC0 /* cham-mklayout.c */, + A35D2170141A73B000969AC0 /* layouts-src */, + A35D2177141A73B000969AC0 /* Makefile */, + ); + path = layouts; + sourceTree = ""; + }; + A35D2170141A73B000969AC0 /* layouts-src */ = { + isa = PBXGroup; + children = ( + A35D2178141A753E00969AC0 /* README */, + A35D2171141A73B000969AC0 /* mac-de.slt */, + A35D2172141A73B000969AC0 /* mac-es.slt */, + A35D2173141A73B000969AC0 /* mac-fr.slt */, + A35D2174141A73B000969AC0 /* mac-it.slt */, + A35D2175141A73B000969AC0 /* mac-se.slt */, + A35D2176141A73B000969AC0 /* pc-fr.slt */, + ); + path = "layouts-src"; + sourceTree = ""; + }; + A37D7D49141B7C6F0069C38B /* Resources */ = { + isa = PBXGroup; + children = ( + A37D7D4A141B7C6F0069C38B /* background.tiff */, + A37D7D4B141B7C6F0069C38B /* Conclusion.rtfd */, + A37D7D4D141B7C6F0069C38B /* Description.html */, + A37D7D4F141B7C6F0069C38B /* License.rtf */, + A37D7D51141B7C6F0069C38B /* Localizable.strings */, + A37D7D53141B7C6F0069C38B /* Welcome.rtfd */, + ); + path = Resources; + sourceTree = ""; + }; + A3F1F20D141B9B0D00DDA709 /* Scripts */ = { + isa = PBXGroup; + children = ( + A3F1F20E141B9B0D00DDA709 /* Advanced */, + A3F1F231141B9B0D00DDA709 /* BaseOptions */, + A3F1F24A141B9B0D00DDA709 /* EFI */, + A3F1F24C141B9B0D00DDA709 /* Keymaps */, + A3F1F24E141B9B0D00DDA709 /* Post */, + A3F1F250141B9B0D00DDA709 /* Resolutions */, + A3F1F265141B9B0D00DDA709 /* Standard */, + ); + path = Scripts; + sourceTree = ""; + }; + A3F1F20E141B9B0D00DDA709 /* Advanced */ = { + isa = PBXGroup; + children = ( + A3F1F20F141B9B0D00DDA709 /* BootBanner */, + A3F1F211141B9B0D00DDA709 /* EHCIacquire */, + A3F1F213141B9B0D00DDA709 /* ForceHPET */, + A3F1F215141B9B0D00DDA709 /* ForceWake */, + A3F1F217141B9B0D00DDA709 /* GUI */, + A3F1F219141B9B0D00DDA709 /* LegacyLogo */, + A3F1F21B141B9B0D00DDA709 /* Npci */, + A3F1F21D141B9B0D00DDA709 /* QuietBoot */, + A3F1F21F141B9B0D00DDA709 /* ShowInfo */, + A3F1F221141B9B0D00DDA709 /* SMBIOSdefaults */, + A3F1F223141B9B0D00DDA709 /* UHCIreset */, + A3F1F225141B9B0D00DDA709 /* UseAtiROM */, + A3F1F227141B9B0D00DDA709 /* UseMemDetect */, + A3F1F229141B9B0D00DDA709 /* UseNvidiaROM */, + A3F1F22B141B9B0D00DDA709 /* VBIOS */, + A3F1F22D141B9B0D00DDA709 /* Wait */, + A3F1F22F141B9B0D00DDA709 /* Wake */, + ); + path = Advanced; + sourceTree = ""; + }; + A3F1F20F141B9B0D00DDA709 /* BootBanner */ = { + isa = PBXGroup; + children = ( + A3F1F210141B9B0D00DDA709 /* postinstall */, + ); + path = BootBanner; + sourceTree = ""; + }; + A3F1F211141B9B0D00DDA709 /* EHCIacquire */ = { + isa = PBXGroup; + children = ( + A3F1F212141B9B0D00DDA709 /* postinstall */, + ); + path = EHCIacquire; + sourceTree = ""; + }; + A3F1F213141B9B0D00DDA709 /* ForceHPET */ = { + isa = PBXGroup; + children = ( + A3F1F214141B9B0D00DDA709 /* postinstall */, + ); + path = ForceHPET; + sourceTree = ""; + }; + A3F1F215141B9B0D00DDA709 /* ForceWake */ = { + isa = PBXGroup; + children = ( + A3F1F216141B9B0D00DDA709 /* postinstall */, + ); + path = ForceWake; + sourceTree = ""; + }; + A3F1F217141B9B0D00DDA709 /* GUI */ = { + isa = PBXGroup; + children = ( + A3F1F218141B9B0D00DDA709 /* postinstall */, + ); + path = GUI; + sourceTree = ""; + }; + A3F1F219141B9B0D00DDA709 /* LegacyLogo */ = { + isa = PBXGroup; + children = ( + A3F1F21A141B9B0D00DDA709 /* postinstall */, + ); + path = LegacyLogo; + sourceTree = ""; + }; + A3F1F21B141B9B0D00DDA709 /* Npci */ = { + isa = PBXGroup; + children = ( + A3F1F21C141B9B0D00DDA709 /* postinstall */, + ); + path = Npci; + sourceTree = ""; + }; + A3F1F21D141B9B0D00DDA709 /* QuietBoot */ = { + isa = PBXGroup; + children = ( + A3F1F21E141B9B0D00DDA709 /* postinstall */, + ); + path = QuietBoot; + sourceTree = ""; + }; + A3F1F21F141B9B0D00DDA709 /* ShowInfo */ = { + isa = PBXGroup; + children = ( + A3F1F220141B9B0D00DDA709 /* postinstall */, + ); + path = ShowInfo; + sourceTree = ""; + }; + A3F1F221141B9B0D00DDA709 /* SMBIOSdefaults */ = { + isa = PBXGroup; + children = ( + A3F1F222141B9B0D00DDA709 /* postinstall */, + ); + path = SMBIOSdefaults; + sourceTree = ""; + }; + A3F1F223141B9B0D00DDA709 /* UHCIreset */ = { + isa = PBXGroup; + children = ( + A3F1F224141B9B0D00DDA709 /* postinstall */, + ); + path = UHCIreset; + sourceTree = ""; + }; + A3F1F225141B9B0D00DDA709 /* UseAtiROM */ = { + isa = PBXGroup; + children = ( + A3F1F226141B9B0D00DDA709 /* postinstall */, + ); + path = UseAtiROM; + sourceTree = ""; + }; + A3F1F227141B9B0D00DDA709 /* UseMemDetect */ = { + isa = PBXGroup; + children = ( + A3F1F228141B9B0D00DDA709 /* postinstall */, + ); + path = UseMemDetect; + sourceTree = ""; + }; + A3F1F229141B9B0D00DDA709 /* UseNvidiaROM */ = { + isa = PBXGroup; + children = ( + A3F1F22A141B9B0D00DDA709 /* postinstall */, + ); + path = UseNvidiaROM; + sourceTree = ""; + }; + A3F1F22B141B9B0D00DDA709 /* VBIOS */ = { + isa = PBXGroup; + children = ( + A3F1F22C141B9B0D00DDA709 /* postinstall */, + ); + path = VBIOS; + sourceTree = ""; + }; + A3F1F22D141B9B0D00DDA709 /* Wait */ = { + isa = PBXGroup; + children = ( + A3F1F22E141B9B0D00DDA709 /* postinstall */, + ); + path = Wait; + sourceTree = ""; + }; + A3F1F22F141B9B0D00DDA709 /* Wake */ = { + isa = PBXGroup; + children = ( + A3F1F230141B9B0D00DDA709 /* postinstall */, + ); + path = Wake; + sourceTree = ""; + }; + A3F1F231141B9B0D00DDA709 /* BaseOptions */ = { + isa = PBXGroup; + children = ( + A3F1F232141B9B0D00DDA709 /* arch */, + A3F1F234141B9B0D00DDA709 /* CSTUsingSystemIO */, + A3F1F236141B9B0D00DDA709 /* DropSSDT */, + A3F1F238141B9B0D00DDA709 /* EnableC2State */, + A3F1F23A141B9B0D00DDA709 /* EnableC3State */, + A3F1F23C141B9B0D00DDA709 /* EnableC4State */, + A3F1F23E141B9B0D00DDA709 /* EthernetBuiltIn */, + A3F1F240141B9B0D00DDA709 /* GenerateCStates */, + A3F1F242141B9B0D00DDA709 /* GeneratePStates */, + A3F1F244141B9B0D00DDA709 /* GraphicsEnabler */, + A3F1F246141B9B0D00DDA709 /* InstantMenu */, + A3F1F248141B9B0D00DDA709 /* RestartFix */, + ); + path = BaseOptions; + sourceTree = ""; + }; + A3F1F232141B9B0D00DDA709 /* arch */ = { + isa = PBXGroup; + children = ( + A3F1F233141B9B0D00DDA709 /* postinstall */, + ); + path = arch; + sourceTree = ""; + }; + A3F1F234141B9B0D00DDA709 /* CSTUsingSystemIO */ = { + isa = PBXGroup; + children = ( + A3F1F235141B9B0D00DDA709 /* postinstall */, + ); + path = CSTUsingSystemIO; + sourceTree = ""; + }; + A3F1F236141B9B0D00DDA709 /* DropSSDT */ = { + isa = PBXGroup; + children = ( + A3F1F237141B9B0D00DDA709 /* postinstall */, + ); + path = DropSSDT; + sourceTree = ""; + }; + A3F1F238141B9B0D00DDA709 /* EnableC2State */ = { + isa = PBXGroup; + children = ( + A3F1F239141B9B0D00DDA709 /* postinstall */, + ); + path = EnableC2State; + sourceTree = ""; + }; + A3F1F23A141B9B0D00DDA709 /* EnableC3State */ = { + isa = PBXGroup; + children = ( + A3F1F23B141B9B0D00DDA709 /* postinstall */, + ); + path = EnableC3State; + sourceTree = ""; + }; + A3F1F23C141B9B0D00DDA709 /* EnableC4State */ = { + isa = PBXGroup; + children = ( + A3F1F23D141B9B0D00DDA709 /* postinstall */, + ); + path = EnableC4State; + sourceTree = ""; + }; + A3F1F23E141B9B0D00DDA709 /* EthernetBuiltIn */ = { + isa = PBXGroup; + children = ( + A3F1F23F141B9B0D00DDA709 /* postinstall */, + ); + path = EthernetBuiltIn; + sourceTree = ""; + }; + A3F1F240141B9B0D00DDA709 /* GenerateCStates */ = { + isa = PBXGroup; + children = ( + A3F1F241141B9B0D00DDA709 /* postinstall */, + ); + path = GenerateCStates; + sourceTree = ""; + }; + A3F1F242141B9B0D00DDA709 /* GeneratePStates */ = { + isa = PBXGroup; + children = ( + A3F1F243141B9B0D00DDA709 /* postinstall */, + ); + path = GeneratePStates; + sourceTree = ""; + }; + A3F1F244141B9B0D00DDA709 /* GraphicsEnabler */ = { + isa = PBXGroup; + children = ( + A3F1F245141B9B0D00DDA709 /* postinstall */, + ); + path = GraphicsEnabler; + sourceTree = ""; + }; + A3F1F246141B9B0D00DDA709 /* InstantMenu */ = { + isa = PBXGroup; + children = ( + A3F1F247141B9B0D00DDA709 /* postinstall */, + ); + path = InstantMenu; + sourceTree = ""; + }; + A3F1F248141B9B0D00DDA709 /* RestartFix */ = { + isa = PBXGroup; + children = ( + A3F1F249141B9B0D00DDA709 /* postinstall */, + ); + path = RestartFix; + sourceTree = ""; + }; + A3F1F24A141B9B0D00DDA709 /* EFI */ = { + isa = PBXGroup; + children = ( + A3F1F24B141B9B0D00DDA709 /* postinstall */, + ); + path = EFI; + sourceTree = ""; + }; + A3F1F24C141B9B0D00DDA709 /* Keymaps */ = { + isa = PBXGroup; + children = ( + A3F1F24D141B9B0D00DDA709 /* postinstall.in */, + ); + path = Keymaps; + sourceTree = ""; + }; + A3F1F24E141B9B0D00DDA709 /* Post */ = { + isa = PBXGroup; + children = ( + A3F1F24F141B9B0D00DDA709 /* postinstall */, + ); + path = Post; + sourceTree = ""; + }; + A3F1F250141B9B0D00DDA709 /* Resolutions */ = { + isa = PBXGroup; + children = ( + A3F1F251141B9B0D00DDA709 /* 1024x600x32 */, + A3F1F253141B9B0D00DDA709 /* 1024x768x32 */, + A3F1F255141B9B0D00DDA709 /* 1280x1024x32 */, + A3F1F257141B9B0D00DDA709 /* 1280x800x32 */, + A3F1F259141B9B0D00DDA709 /* 1280x960x32 */, + A3F1F25B141B9B0D00DDA709 /* 1440x900x32 */, + A3F1F25D141B9B0D00DDA709 /* 1600x900x32 */, + A3F1F25F141B9B0D00DDA709 /* 1680x1050x32 */, + A3F1F261141B9B0D00DDA709 /* 1920x1080x32 */, + A3F1F263141B9B0D00DDA709 /* 1920x1200x32 */, + ); + path = Resolutions; + sourceTree = ""; + }; + A3F1F251141B9B0D00DDA709 /* 1024x600x32 */ = { + isa = PBXGroup; + children = ( + A3F1F252141B9B0D00DDA709 /* postinstall */, + ); + path = 1024x600x32; + sourceTree = ""; + }; + A3F1F253141B9B0D00DDA709 /* 1024x768x32 */ = { + isa = PBXGroup; + children = ( + A3F1F254141B9B0D00DDA709 /* postinstall */, + ); + path = 1024x768x32; + sourceTree = ""; + }; + A3F1F255141B9B0D00DDA709 /* 1280x1024x32 */ = { + isa = PBXGroup; + children = ( + A3F1F256141B9B0D00DDA709 /* postinstall */, + ); + path = 1280x1024x32; + sourceTree = ""; + }; + A3F1F257141B9B0D00DDA709 /* 1280x800x32 */ = { + isa = PBXGroup; + children = ( + A3F1F258141B9B0D00DDA709 /* postinstall */, + ); + path = 1280x800x32; + sourceTree = ""; + }; + A3F1F259141B9B0D00DDA709 /* 1280x960x32 */ = { + isa = PBXGroup; + children = ( + A3F1F25A141B9B0D00DDA709 /* postinstall */, + ); + path = 1280x960x32; + sourceTree = ""; + }; + A3F1F25B141B9B0D00DDA709 /* 1440x900x32 */ = { + isa = PBXGroup; + children = ( + A3F1F25C141B9B0D00DDA709 /* postinstall */, + ); + path = 1440x900x32; + sourceTree = ""; + }; + A3F1F25D141B9B0D00DDA709 /* 1600x900x32 */ = { + isa = PBXGroup; + children = ( + A3F1F25E141B9B0D00DDA709 /* postinstall */, + ); + path = 1600x900x32; + sourceTree = ""; + }; + A3F1F25F141B9B0D00DDA709 /* 1680x1050x32 */ = { + isa = PBXGroup; + children = ( + A3F1F260141B9B0D00DDA709 /* postinstall */, + ); + path = 1680x1050x32; + sourceTree = ""; + }; + A3F1F261141B9B0D00DDA709 /* 1920x1080x32 */ = { + isa = PBXGroup; + children = ( + A3F1F262141B9B0D00DDA709 /* postinstall */, + ); + path = 1920x1080x32; + sourceTree = ""; + }; + A3F1F263141B9B0D00DDA709 /* 1920x1200x32 */ = { + isa = PBXGroup; + children = ( + A3F1F264141B9B0D00DDA709 /* postinstall */, + ); + path = 1920x1200x32; + sourceTree = ""; + }; + A3F1F265141B9B0D00DDA709 /* Standard */ = { + isa = PBXGroup; + children = ( + A3F1F266141B9B0D00DDA709 /* postinstall */, + ); + path = Standard; + sourceTree = ""; + }; B0056CE511F3868000754B65 /* i386 */ = { isa = PBXGroup; children = ( @@ -3404,155 +3936,17 @@ B0056D8311F3868000754B65 /* package */ = { isa = PBXGroup; children = ( - B0056D8411F3868000754B65 /* buildpkg */, + A35D2187141A75DC00969AC0 /* slimpkg.sh */, + A35D2188141A75DC00969AC0 /* buildpkg.sh */, + A35D2189141A75DC00969AC0 /* builddmg.sh */, B0056D8511F3868000754B65 /* Distribution */, - B0056D8611F3868000754B65 /* fdisk */, - B0056D8711F3868000754B65 /* Kexts */, - B0056D8D11F3868000754B65 /* Resources */, - B0056DA111F3868000754B65 /* Scripts */, + A37D7D49141B7C6F0069C38B /* Resources */, + A3F1F20D141B9B0D00DDA709 /* Scripts */, B0056DB911F3868000754B65 /* smbios.plist */, ); path = package; sourceTree = ""; }; - B0056D8711F3868000754B65 /* Kexts */ = { - isa = PBXGroup; - children = ( - B0056D8811F3868000754B65 /* AHCIPortInjector.kext */, - B0056D8911F3868000754B65 /* ATAPortInjector.kext */, - B0056D8A11F3868000754B65 /* Disabler.kext */, - B0056D8B11F3868000754B65 /* IOAHCIBlockStorageInjector.kext */, - B0056D8C11F3868000754B65 /* JMicronATAInjector.kext */, - ); - path = Kexts; - sourceTree = ""; - }; - B0056D8D11F3868000754B65 /* Resources */ = { - isa = PBXGroup; - children = ( - B0056D8E11F3868000754B65 /* background.tiff */, - B0056D8F11F3868000754B65 /* Description.html */, - B0056D9111F3868000754B65 /* License.rtf */, - B0056D9311F3868000754B65 /* Localizable.strings */, - B0056D9511F3868000754B65 /* Welcome.rtfd */, - ); - path = Resources; - sourceTree = ""; - }; - B0056DA111F3868000754B65 /* Scripts */ = { - isa = PBXGroup; - children = ( - B0056DA211F3868000754B65 /* FAT */, - B0056DA411F3868000754B65 /* HFS */, - B0056DA611F3868000754B65 /* Options */, - B0056DB511F3868000754B65 /* Post */, - B0056DB711F3868000754B65 /* Standard */, - ); - path = Scripts; - sourceTree = ""; - }; - B0056DA211F3868000754B65 /* FAT */ = { - isa = PBXGroup; - children = ( - B0056DA311F3868000754B65 /* postinstall */, - ); - path = FAT; - sourceTree = ""; - }; - B0056DA411F3868000754B65 /* HFS */ = { - isa = PBXGroup; - children = ( - B0056DA511F3868000754B65 /* postinstall */, - ); - path = HFS; - sourceTree = ""; - }; - B0056DA611F3868000754B65 /* Options */ = { - isa = PBXGroup; - children = ( - B0056DA711F3868000754B65 /* EHCIacquire */, - B0056DA911F3868000754B65 /* EthernetBuiltIn */, - B0056DAB11F3868000754B65 /* ForceHPET */, - B0056DAD11F3868000754B65 /* ForceWake */, - B0056DAF11F3868000754B65 /* GraphicsEnabler */, - B0056DB111F3868000754B65 /* GUI */, - B0056DB311F3868000754B65 /* UHCIreset */, - ); - path = Options; - sourceTree = ""; - }; - B0056DA711F3868000754B65 /* EHCIacquire */ = { - isa = PBXGroup; - children = ( - B0056DA811F3868000754B65 /* postinstall */, - ); - path = EHCIacquire; - sourceTree = ""; - }; - B0056DA911F3868000754B65 /* EthernetBuiltIn */ = { - isa = PBXGroup; - children = ( - B0056DAA11F3868000754B65 /* postinstall */, - ); - path = EthernetBuiltIn; - sourceTree = ""; - }; - B0056DAB11F3868000754B65 /* ForceHPET */ = { - isa = PBXGroup; - children = ( - B0056DAC11F3868000754B65 /* postinstall */, - ); - path = ForceHPET; - sourceTree = ""; - }; - B0056DAD11F3868000754B65 /* ForceWake */ = { - isa = PBXGroup; - children = ( - B0056DAE11F3868000754B65 /* postinstall */, - ); - path = ForceWake; - sourceTree = ""; - }; - B0056DAF11F3868000754B65 /* GraphicsEnabler */ = { - isa = PBXGroup; - children = ( - B0056DB011F3868000754B65 /* postinstall */, - ); - path = GraphicsEnabler; - sourceTree = ""; - }; - B0056DB111F3868000754B65 /* GUI */ = { - isa = PBXGroup; - children = ( - B0056DB211F3868000754B65 /* postinstall */, - ); - path = GUI; - sourceTree = ""; - }; - B0056DB311F3868000754B65 /* UHCIreset */ = { - isa = PBXGroup; - children = ( - B0056DB411F3868000754B65 /* postinstall */, - ); - path = UHCIreset; - sourceTree = ""; - }; - B0056DB511F3868000754B65 /* Post */ = { - isa = PBXGroup; - children = ( - B0056DB611F3868000754B65 /* postinstall */, - ); - path = Post; - sourceTree = ""; - }; - B0056DB711F3868000754B65 /* Standard */ = { - isa = PBXGroup; - children = ( - B0056DB811F3868000754B65 /* postinstall */, - ); - path = Standard; - sourceTree = ""; - }; B0056DBA11F3868000754B65 /* artwork */ = { isa = PBXGroup; children = ( @@ -3750,6 +4144,17 @@ French, German, Spanish, + de, + en, + es, + fr, + "hr-HR", + id, + it, + pl, + "pt-BR", + "pt-PT", + sr, ); mainGroup = 08FB7794FE84155DC02AAC07 /* Chameleon */; projectDirPath = ""; @@ -3761,44 +4166,92 @@ /* End PBXProject section */ /* Begin PBXVariantGroup section */ - B0056D8F11F3868000754B65 /* Description.html */ = { + A37D7D4B141B7C6F0069C38B /* Conclusion.rtfd */ = { isa = PBXVariantGroup; children = ( - B0056D9011F3868000754B65 /* English */, - B0056D9711F3868000754B65 /* French */, - B0056D9A11F3868000754B65 /* German */, - B0056D9D11F3868000754B65 /* Spanish */, + A37D7D55141B7C6F0069C38B /* en */, + A37D7D4C141B7C6F0069C38B /* de */, + A37D7D5A141B7C6F0069C38B /* es */, + A37D7D5F141B7C6F0069C38B /* fr */, + A37D7D64141B7C6F0069C38B /* hr-HR */, + A37D7D69141B7C6F0069C38B /* id */, + A37D7D6E141B7C6F0069C38B /* it */, + A37D7D73141B7C6F0069C38B /* pl */, + A37D7D78141B7C6F0069C38B /* pt-BR */, + A37D7D7D141B7C6F0069C38B /* pt-PT */, + A37D7D82141B7C6F0069C38B /* sr */, ); + name = Conclusion.rtfd; + sourceTree = ""; + }; + A37D7D4D141B7C6F0069C38B /* Description.html */ = { + isa = PBXVariantGroup; + children = ( + A37D7D4E141B7C6F0069C38B /* de */, + A37D7D56141B7C6F0069C38B /* en */, + A37D7D5B141B7C6F0069C38B /* es */, + A37D7D60141B7C6F0069C38B /* fr */, + A37D7D65141B7C6F0069C38B /* hr-HR */, + A37D7D6A141B7C6F0069C38B /* id */, + A37D7D6F141B7C6F0069C38B /* it */, + A37D7D74141B7C6F0069C38B /* pl */, + A37D7D79141B7C6F0069C38B /* pt-BR */, + A37D7D7E141B7C6F0069C38B /* pt-PT */, + A37D7D83141B7C6F0069C38B /* sr */, + ); name = Description.html; sourceTree = ""; }; - B0056D9111F3868000754B65 /* License.rtf */ = { + A37D7D4F141B7C6F0069C38B /* License.rtf */ = { isa = PBXVariantGroup; children = ( - B0056D9211F3868000754B65 /* English */, - B0056D9811F3868000754B65 /* French */, - B0056D9B11F3868000754B65 /* German */, - B0056D9E11F3868000754B65 /* Spanish */, + A37D7D50141B7C6F0069C38B /* de */, + A37D7D57141B7C6F0069C38B /* en */, + A37D7D5C141B7C6F0069C38B /* es */, + A37D7D61141B7C6F0069C38B /* fr */, + A37D7D66141B7C6F0069C38B /* hr-HR */, + A37D7D6B141B7C6F0069C38B /* id */, + A37D7D70141B7C6F0069C38B /* it */, + A37D7D75141B7C6F0069C38B /* pl */, + A37D7D7A141B7C6F0069C38B /* pt-BR */, + A37D7D7F141B7C6F0069C38B /* pt-PT */, + A37D7D84141B7C6F0069C38B /* sr */, ); name = License.rtf; sourceTree = ""; }; - B0056D9311F3868000754B65 /* Localizable.strings */ = { + A37D7D51141B7C6F0069C38B /* Localizable.strings */ = { isa = PBXVariantGroup; children = ( - B0056D9411F3868000754B65 /* English */, - B0056D9911F3868000754B65 /* French */, - B0056D9C11F3868000754B65 /* German */, - B0056D9F11F3868000754B65 /* Spanish */, + A37D7D58141B7C6F0069C38B /* en */, + A37D7D52141B7C6F0069C38B /* de */, + A37D7D5D141B7C6F0069C38B /* es */, + A37D7D62141B7C6F0069C38B /* fr */, + A37D7D67141B7C6F0069C38B /* hr-HR */, + A37D7D6C141B7C6F0069C38B /* id */, + A37D7D71141B7C6F0069C38B /* it */, + A37D7D76141B7C6F0069C38B /* pl */, + A37D7D7B141B7C6F0069C38B /* pt-BR */, + A37D7D80141B7C6F0069C38B /* pt-PT */, + A37D7D85141B7C6F0069C38B /* sr */, ); name = Localizable.strings; sourceTree = ""; }; - B0056D9511F3868000754B65 /* Welcome.rtfd */ = { + A37D7D53141B7C6F0069C38B /* Welcome.rtfd */ = { isa = PBXVariantGroup; children = ( - B0056D9611F3868000754B65 /* English */, - B0056DA011F3868000754B65 /* Spanish */, + A37D7D59141B7C6F0069C38B /* en */, + A37D7D54141B7C6F0069C38B /* de */, + A37D7D5E141B7C6F0069C38B /* es */, + A37D7D63141B7C6F0069C38B /* fr */, + A37D7D68141B7C6F0069C38B /* hr-HR */, + A37D7D6D141B7C6F0069C38B /* id */, + A37D7D72141B7C6F0069C38B /* it */, + A37D7D77141B7C6F0069C38B /* pl */, + A37D7D7C141B7C6F0069C38B /* pt-BR */, + A37D7D81141B7C6F0069C38B /* pt-PT */, + A37D7D86141B7C6F0069C38B /* sr */, ); name = Welcome.rtfd; sourceTree = ""; Index: branches/azimutz/trunkAutoResolution/i386/libsaio/term.h =================================================================== --- branches/azimutz/trunkAutoResolution/i386/libsaio/term.h (revision 0) +++ branches/azimutz/trunkAutoResolution/i386/libsaio/term.h (revision 1540) @@ -0,0 +1,59 @@ +/* + * term.h + * Chameleon + * + * Created by JrCs on 30/08/11. + * Copyright 2011. All rights reserved. + * + */ + +#ifndef __LIBSAIO_TERM_H +#define __LIBSAIO_TERM_H + +#define ASCII_KEY_MASK 0x7f +#define ASCII_KEY(x) ((x & ASCII_KEY_MASK)) + +#define KEY_BKSP 0x0008 +#define KEY_TAB 0x0009 +#define KEY_ENTER 0x000d +#define KEY_ESC 0x001b +#define KEY_PRTSC 0x002a +#define KEY_LEFT 0x4b00 +#define KEY_RIGHT 0x4d00 +#define KEY_UP 0x4800 +#define KEY_DOWN 0x5000 +#define KEY_HOME 0x4700 +#define KEY_END 0x4f00 +#define KEY_CENTER 0x4c00 +#define KEY_INS 0x5200 +#define KEY_DEL 0x5300 +#define KEY_PGUP 0x4900 +#define KEY_PGDN 0x5100 +#define KEY_F1 0x3b00 +#define KEY_F2 0x3c00 +#define KEY_F3 0x3d00 +#define KEY_F4 0x3e00 +#define KEY_F5 0x3f00 +#define KEY_F6 0x4000 +#define KEY_F7 0x4100 +#define KEY_F8 0x4200 +#define KEY_F9 0x4300 +#define KEY_F10 0x4400 +#define KEY_F11 0x5700 +#define KEY_F12 0x5800 + +// Key code for input that shouldn't echoed back +#define KEY_NOECHO 0xff00 + +/* Bitmasks for modifier keys */ +#define STATUS_RSHIFT (1 << 0) +#define STATUS_LSHIFT (1 << 1) +#define STATUS_RCTRL (1 << 2) +#define STATUS_RALT (1 << 3) +#define STATUS_SCROLL (1 << 4) +#define STATUS_NUM (1 << 5) +#define STATUS_CAPS (1 << 6) +#define STATUS_LCTRL (1 << 8) +#define STATUS_LALT (1 << 9) + +#endif /* !__LIBSAIO_TERM_H */ Index: branches/azimutz/trunkAutoResolution/i386/libsaio/ati.c =================================================================== --- branches/azimutz/trunkAutoResolution/i386/libsaio/ati.c (revision 1539) +++ branches/azimutz/trunkAutoResolution/i386/libsaio/ati.c (revision 1540) @@ -314,9 +314,6 @@ { 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 }, @@ -398,8 +395,6 @@ { 0x9589, 0x30001462, CHIP_FAMILY_RV630, "ATI Radeon HD 3610", kNull }, - { 0x9589, 0x30001642, 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 }, @@ -480,7 +475,8 @@ { 0x689C, 0x30201682, CHIP_FAMILY_HEMLOCK, "ATI Radeon HD 5970", kUakari }, - { 0x68A1, 0x144D103C, CHIP_FAMILY_CYPRESS, "ATI Mobility Radeon HD 5800", 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 }, @@ -502,6 +498,7 @@ { 0x68C0, 0x392717AA, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5730", kNull }, { 0x68C1, 0x033E1025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5650", kNull }, + { 0x68C1, 0x9071104D, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5650", kEulemur }, { 0x68C8, 0x2306103C, CHIP_FAMILY_REDWOOD, "ATI FirePro V4800 (FireGL)", kNull }, @@ -561,14 +558,13 @@ { 0x6740, 0x1657103C, 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, 0x05131025, CHIP_FAMILY_TURKS, "AMD Radeon HD 6650M", kNull }, { 0x6741, 0x1646103C, CHIP_FAMILY_TURKS, "AMD Radeon HD 6750M", kNull }, - { 0x6741, 0x9080104D, CHIP_FAMILY_TURKS, "AMD Radeon HD 6630M", kNull }, + { 0x6741, 0x9080104D, CHIP_FAMILY_TURKS, "AMD Radeon HD 6630M", kNull }, - { 0x6741, 0x9080104D, CHIP_FAMILY_TURKS, "AMD Radeon HD 6630M", kNull, }, - { 0x6759, 0xE193174B, CHIP_FAMILY_TURKS, "AMD Radeon HD 6570", kNull }, + { 0x6760, 0x04CC1028, CHIP_FAMILY_RV730, "AMD Radeon HD 6490M", kNull }, { 0x6760, 0x1CB21043, CHIP_FAMILY_RV730, "AMD Radeon HD 6470M", kNull }, /* standard/default models */ @@ -1322,7 +1318,7 @@ // if none, if (!card->cfg_name) { - // use the device fb key on radeon_cards, to retrive the default name from card_configs. + // use cfg_name on radeon_cards, to retrive the default name from card_configs, card->cfg_name = card_configs[card->info->cfg_name].name; // and leave ports alone! // card->ports = card_configs[card->info->cfg_name].ports; @@ -1346,7 +1342,7 @@ } else// if (card->cfg_name > 0) // do we want 0 ports if fb is kNull or mistyped ? { - // else, match fb name with card_configs list and retrive default nr of ports. + // else, match cfg_name with card_configs list and retrive default nr of ports. for (i = 0; i < kCfgEnd; i++) if (strcmp(card->cfg_name, card_configs[i].name) == 0) card->ports = card_configs[i].ports; // default Index: branches/azimutz/trunkAutoResolution/i386/boot2/gui.c =================================================================== --- branches/azimutz/trunkAutoResolution/i386/boot2/gui.c (revision 1539) +++ branches/azimutz/trunkAutoResolution/i386/boot2/gui.c (revision 1540) @@ -9,6 +9,7 @@ */ #include "gui.h" +#include "term.h" #include "appleboot.h" #include "vers.h" #include "autoresolution.h" //Azi:autoresolution @@ -1625,15 +1626,15 @@ key = getchar(); - if( key == kUpArrowkey ) + if( key == KEY_UP ) if( currentline > 0 ) currentline--; - if( key == kDownArrowkey ) + if( key == KEY_DOWN ) if( lines > ( currentline + visiblelines ) ) currentline++; - if( key == kEscapeKey || key == 'q' || key == 'Q') + if( key == KEY_ESC || key == 'q' || key == 'Q') { gui.infobox.draw = false; gui.redraw = true; @@ -1783,7 +1784,7 @@ switch (key) { - case kUpArrowkey: // up arrow + case KEY_UP: // up arrow if (infoMenuSelection > 0) { if(!infoMenuNativeBoot && infoMenuSelection == INFOMENU_NATIVEBOOT_END + 1) @@ -1805,7 +1806,7 @@ } break; - case kDownArrowkey: // down arrow + case KEY_DOWN: // down arrow if (infoMenuSelection < infoMenuItemsCount - 1) { if(!infoMenuNativeBoot && infoMenuSelection == INFOMENU_NATIVEBOOT_START - 1) @@ -1817,7 +1818,7 @@ } break; - case kReturnKey: + case KEY_ENTER: key = 0; if( infoMenuSelection == MENU_SHOW_MEMORY_INFO ) showInfoBox( "Memory Info. Press q to quit.\n", getMemoryInfoString()); Index: branches/azimutz/trunkAutoResolution/i386/boot2/gui.h =================================================================== --- branches/azimutz/trunkAutoResolution/i386/boot2/gui.h (revision 1539) +++ branches/azimutz/trunkAutoResolution/i386/boot2/gui.h (revision 1540) @@ -38,19 +38,6 @@ VerticalLayout = 1 }; -enum { - kBackspaceKey = 0x08, - kTabKey = 0x09, - kReturnKey = '\r', - kEscapeKey = 0x1b, - kUpArrowkey = 0x4800, - kDownArrowkey = 0x5000, - kASCIIKeyMask = 0x7f, - kF2Key = 0x3c00, //Azi:autoresolution - kF5Key = 0x3f00, - kF10Key = 0x4400 -}; - /* * Menu item structure. */ Index: branches/azimutz/trunkAutoResolution/i386/boot2/options.c =================================================================== --- branches/azimutz/trunkAutoResolution/i386/boot2/options.c (revision 1539) +++ branches/azimutz/trunkAutoResolution/i386/boot2/options.c (revision 1540) @@ -27,6 +27,7 @@ #include "fdisk.h" #include "ramdisk.h" #include "gui.h" +#include "term.h" #include "embedded.h" #include "pci.h" #include "autoresolution.h" //Azi:autoresolution @@ -237,11 +238,11 @@ static void updateBootArgs( int key ) { - key &= kASCIIKeyMask; + key = ASCII_KEY(key); switch ( key ) { - case kBackspaceKey: + case KEY_BKSP: if ( gBootArgsPtr > gBootArgs ) { *--gBootArgsPtr = '\0'; @@ -929,7 +930,7 @@ } switch (key) { - case kReturnKey: + case KEY_ENTER: if (gui.menu.draw) { key=0; break; @@ -980,13 +981,13 @@ gBIOSDev = menuBVR->biosdev; break; - case kEscapeKey: + case KEY_ESC: clearBootArgs(); break; //Azi:autoresolution - Reapply the patch if Graphics Mode was incorrect // or EDID Info was insane. - case kF2Key: + case KEY_F2: if ((gAutoResolution == true) && useGUI && map ) { @@ -1070,7 +1071,7 @@ } break; - case kF5Key: + case KEY_F5: // New behavior: // Clear gBootVolume to restart the loop // if the user enabled rescanning the optical drive. @@ -1081,14 +1082,14 @@ } break; - case kF10Key: + case KEY_F10: gScanSingleDrive = false; scanDisks(gBIOSDev, &bvCount); gBootVolume = NULL; clearBootArgs(); break; - case kTabKey: + case KEY_TAB: // New behavior: // Switch between text & graphic interfaces // Only Permitted if started in graphics interface @@ -1562,8 +1563,8 @@ printf("Enter two-digit hexadecimal boot device [%02x]: ", bootdevice); do { key = getchar(); - switch (key & kASCIIKeyMask) { - case kBackspaceKey: + switch (ASCII_KEY(key)) { + case KEY_BKSP: if (digitsI > 0) { int x, y, t; getCursorPositionAndType(&x, &y, &t); @@ -1578,7 +1579,7 @@ } break; - case kReturnKey: + case KEY_ENTER: digits[digitsI] = '\0'; newbootdevice = strtol(digits, &end, 16); if (end == digits && *end == '\0') { @@ -1596,9 +1597,9 @@ break; default: - if (isxdigit(key & kASCIIKeyMask) && digitsI < 2) { - putchar(key & kASCIIKeyMask); - digits[digitsI++] = key & kASCIIKeyMask; + if (isxdigit(ASCII_KEY(key)) && digitsI < 2) { + putchar(ASCII_KEY(key)); + digits[digitsI++] = ASCII_KEY(key); } else { // TODO: Beep or something } @@ -1612,7 +1613,7 @@ bool promptForRescanOption(void) { printf("\nWould you like to enable media rescan option?\nPress ENTER to enable or any key to skip.\n"); - if (getchar() == kReturnKey) { + if (getchar() == KEY_ENTER) { return true; } else { return false; Index: branches/azimutz/trunkAutoResolution/i386/modules/MakeInc.dir =================================================================== --- branches/azimutz/trunkAutoResolution/i386/modules/MakeInc.dir (revision 1539) +++ branches/azimutz/trunkAutoResolution/i386/modules/MakeInc.dir (revision 1540) @@ -7,7 +7,6 @@ IMGSKELROOT = $(SRCROOT)/imgskel CDBOOT = ${IMGROOT}/usr/standalone/i386/cdboot - ifeq ($(BUILT_IN),yes) override OBJROOT = $(SRCROOT)/obj/i386/boot2_modules/$(DIR) override SYMROOT = $(SRCROOT)/obj/i386/ Index: branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/layouts-src/mac-es.slt =================================================================== --- branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/layouts-src/mac-es.slt (revision 0) +++ branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/layouts-src/mac-es.slt (revision 1540) @@ -0,0 +1,59 @@ +# Keycode Normal Shift Alt Shift+Alt + +# 1rst Row +keycode 0x02 = 1 VoidSymbol +keycode 0x03 = 2 ! +keycode 0x04 = 3 # +keycode 0x05 = 4 $ +keycode 0x06 = 5 % [ +keycode 0x07 = 6 / \ +keycode 0x08 = 7 & | +keycode 0x09 = 8 * +keycode 0x0a = 9 ( +keycode 0x0b = 0 ) +keycode 0x0c = minus underscore minus +keycode 0x0d = = + +keycode 0x0e = Backspace + +# 2nd Row +keycode 0x0f = Tab +keycode 0x10 = q Q +keycode 0x11 = w W +keycode 0x12 = e E +keycode 0x13 = r R +keycode 0x14 = t T +keycode 0x15 = y Y +keycode 0x16 = u U +keycode 0x17 = i I ^ +keycode 0x18 = o O +keycode 0x19 = p P +keycode 0x1a = VoidSymbol VoidSymbol +keycode 0x1b = ` VoidSymbol | + +# 3rd Row +keycode 0x1e = a A +keycode 0x1f = s S +keycode 0x20 = d D +keycode 0x21 = f F +keycode 0x22 = g G @ , +keycode 0x23 = h H +keycode 0x24 = j J +keycode 0x25 = k K +keycode 0x26 = l L +keycode 0x27 = VoidSymbol VoidSymbol ~ +keycode 0x28 = ; : +keycode 0x2b = ' " ] } + +# 4th Row +keycode 0x29 = < > [ { +keycode 0x2c = z Z +keycode 0x2d = x X +keycode 0x2e = c C +keycode 0x2f = v V +keycode 0x30 = b B +shift alt keycode 0x30 = < +keycode 0x31 = n N > > +keycode 0x32 = m M +keycode 0x33 = , VoidSymbol +keycode 0x34 = . ? +keycode 0x35 = VoidSymbol VoidSymbol Index: branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/layouts-src/mac-fr.slt =================================================================== --- branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/layouts-src/mac-fr.slt (revision 0) +++ branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/layouts-src/mac-fr.slt (revision 1540) @@ -0,0 +1,61 @@ +# Keycode Normal Shift Alt Shift+Alt + +# 1ère Ligne +keycode 0x02 = & 1 +keycode 0x03 = VoidSymbol 2 +keycode 0x04 = " 3 +keycode 0x05 = ' 4 +keycode 0x06 = ( 5 { [ +keycode 0x07 = VoidSymbol 6 +keycode 0x08 = VoidSymbol 7 +keycode 0x09 = ! 8 +keycode 0x0a = VoidSymbol 9 +keycode 0x0b = VoidSymbol 0 +keycode 0x0c = ) VoidSymbol } ] +keycode 0x0d = - _ +keycode 0x0e = Backspace + +# 2ème Ligne +keycode 0x0f = Tab +keycode 0x10 = a A +keycode 0x11 = z Z +keycode 0x12 = e E +keycode 0x13 = r R +keycode 0x14 = t T +keycode 0x15 = y Y +keycode 0x16 = u U +keycode 0x17 = i I +keycode 0x18 = o O +keycode 0x19 = p P +keycode 0x1a = ^ VoidSymbol +keycode 0x1b = $ * + +# 3ème Ligne +keycode 0x1e = q Q +keycode 0x1f = s S +keycode 0x20 = d D +keycode 0x21 = f F +keycode 0x22 = g G +keycode 0x23 = h H +keycode 0x24 = j J +keycode 0x25 = k K +keycode 0x26 = l L +shift alt keycode 0x26 = | +keycode 0x27 = m M +keycode 0x28 = VoidSymbol % +keycode 0x2b = ` VoidSymbol @ # + +# 4ème Ligne +keycode 0x29 = < > +keycode 0x2c = w W +keycode 0x2d = x X +keycode 0x2e = c C +keycode 0x2f = v V +keycode 0x30 = b B +keycode 0x31 = n N ~ +keycode 0x32 = , ? +keycode 0x33 = ; . +keycode 0x34 = : / +shift alt keycode 0x34 = \ +keycode 0x35 = = + + Index: branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/layouts-src/mac-se.slt =================================================================== --- branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/layouts-src/mac-se.slt (revision 0) +++ branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/layouts-src/mac-se.slt (revision 1540) @@ -0,0 +1,58 @@ +# Keycode Normal Shift Alt Shift+Alt + +# 1rst Row +keycode 0x02 = 1 ! +keycode 0x03 = 2 " +keycode 0x04 = 3 # +keycode 0x05 = 4 VoidSymbol $ +keycode 0x06 = 5 % +keycode 0x07 = 6 & +keycode 0x08 = 7 / | \ +keycode 0x09 = 8 ( [ { +keycode 0x0a = 9 ) ] } +keycode 0x0b = 0 = +keycode 0x0c = + ? +keycode 0x0d = VoidSymbol ` +keycode 0x0e = Backspace + +# 2nd Row +keycode 0x0f = Tab +keycode 0x10 = q Q +keycode 0x11 = w W +keycode 0x12 = e E +keycode 0x13 = r R +keycode 0x14 = t T +keycode 0x15 = y Y +keycode 0x16 = u U +keycode 0x17 = i I ^ +keycode 0x18 = o O +keycode 0x19 = p P +keycode 0x1a = VoidSymbol VoidSymbol VoidSymbol +keycode 0x1b = VoidSymbol ^ ~ ^ + +# 3rd Row +keycode 0x1e = a A +keycode 0x1f = s S +keycode 0x20 = d D +keycode 0x21 = f F +keycode 0x22 = g G , +keycode 0x23 = h H +keycode 0x24 = j J +keycode 0x25 = k K +keycode 0x26 = l L +keycode 0x27 = VoidSymbol VoidSymbol +keycode 0x28 = VoidSymbol VoidSymbol +keycode 0x2b = ' * @ ' + +# 4th Row +keycode 0x29 = < > [ { +keycode 0x2c = z Z +keycode 0x2d = x X +keycode 0x2e = c C +keycode 0x2f = v V +keycode 0x30 = b B +keycode 0x31 = n N +keycode 0x32 = m M +keycode 0x33 = , ; +keycode 0x34 = . : +keycode 0x35 = minus underscore Index: branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/layouts-src/mac-de.slt =================================================================== --- branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/layouts-src/mac-de.slt (revision 0) +++ branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/layouts-src/mac-de.slt (revision 1540) @@ -0,0 +1,58 @@ +# Keycode Normal Shift Alt Shift+Alt + +# 1rst Row +keycode 0x02 = 1 ! +keycode 0x03 = 2 " +keycode 0x04 = 3 VoidSymbol +keycode 0x05 = 4 $ +keycode 0x06 = 5 % [ +keycode 0x07 = 6 & ] +keycode 0x08 = 7 / | +keycode 0x09 = 8 ( { +keycode 0x0a = 9 ) } +keycode 0x0b = 0 = +keycode 0x0c = VoidSymbol ? +keycode 0x0d = VoidSymbol VoidSymbol +keycode 0x0e = Backspace + +# 2nd Row +keycode 0x0f = Tab +keycode 0x10 = q Q +keycode 0x11 = w W +keycode 0x12 = e E +keycode 0x13 = r R +keycode 0x14 = t T +keycode 0x15 = y Y +keycode 0x16 = u U +keycode 0x17 = i I +keycode 0x18 = o O +keycode 0x19 = p P +keycode 0x1a = VoidSymbol VoidSymbol +keycode 0x1b = + * + +# 3rd Row +keycode 0x1e = a A +keycode 0x1f = s S +keycode 0x20 = d D +keycode 0x21 = f F +keycode 0x22 = g G +keycode 0x23 = h H +keycode 0x24 = j J +keycode 0x25 = k K +keycode 0x26 = l L +keycode 0x27 = VoidSymbol VoidSymbol +keycode 0x28 = VoidSymbol VoidSymbol +keycode 0x2b = # ' + +# 4th Row +keycode 0x29 = < > +keycode 0x2c = y Y +keycode 0x2d = x X +keycode 0x2e = c C +keycode 0x2f = v V +keycode 0x30 = b B +keycode 0x31 = n N +keycode 0x32 = m M +keycode 0x33 = , ; +keycode 0x34 = . : +keycode 0x35 = minus underscore Index: branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/layouts-src/pc-fr.slt =================================================================== --- branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/layouts-src/pc-fr.slt (revision 0) +++ branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/layouts-src/pc-fr.slt (revision 1540) @@ -0,0 +1,58 @@ +# Keycode Normal Shift Alt Shift+Alt + +# 1ère Ligne +keycode 0x29 = < > +keycode 0x02 = & 1 +keycode 0x03 = VoidSymbol 2 ~ +keycode 0x04 = " 3 # +keycode 0x05 = ' 4 { +keycode 0x06 = ( 5 [ +keycode 0x07 = minus 6 | +keycode 0x08 = VoidSymbol 7 ` +keycode 0x09 = underscore 8 \ +keycode 0x0a = VoidSymbol 9 ^ +keycode 0x0b = VoidSymbol 0 @ +keycode 0x0c = ) VoidSymbol ] +keycode 0x0d = = + } +keycode 0x0e = Backspace + +# 2ème Ligne +keycode 0x0f = Tab +keycode 0x10 = a A +keycode 0x11 = z Z +keycode 0x12 = e E +keycode 0x13 = r R +keycode 0x14 = t T +keycode 0x15 = y Y +keycode 0x16 = u U +keycode 0x17 = i I +keycode 0x18 = o O +keycode 0x19 = p P +keycode 0x1a = ^ VoidSymbol +keycode 0x1b = $ VoidSymbol + +# 3ème Ligne +keycode 0x1e = q Q +keycode 0x1f = s S +keycode 0x20 = d D +keycode 0x21 = f F +keycode 0x22 = g G +keycode 0x23 = h H +keycode 0x24 = j J +keycode 0x25 = k K +keycode 0x26 = l L +keycode 0x27 = m M +keycode 0x28 = VoidSymbol % +keycode 0x2b = * VoidSymbol + +# 4ème Ligne +keycode 0x2c = w W +keycode 0x2d = x X +keycode 0x2e = c C +keycode 0x2f = v V +keycode 0x30 = b B +keycode 0x31 = n N +keycode 0x32 = , ? +keycode 0x33 = ; . +keycode 0x34 = : / +keycode 0x35 = ! VoidSymbol Index: branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/layouts-src/mac-it.slt =================================================================== --- branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/layouts-src/mac-it.slt (revision 0) +++ branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/layouts-src/mac-it.slt (revision 1540) @@ -0,0 +1,59 @@ +# Keycode Normal Shift Alt Shift+Alt + +# Prima riga +keycode 0x02 = ampersand one +keycode 0x03 = quotedbl two +keycode 0x04 = apostrophe three grave +keycode 0x05 = parenleft four braceleft bracketleft +keycode 0x06 = VoidSymbol five +keycode 0x07 = VoidSymbol six +keycode 0x08 = parenright seven braceright bracketright +keycode 0x09 = VoidSymbol eight +keycode 0x0a = VoidSymbol nine +keycode 0x0b = VoidSymbol zero +keycode 0x0c = minus underscore +keycode 0x0d = equal plus +keycode 0x0e = Backspace + +# Seconda riga +keycode 0x0f = Tab +keycode 0x10 = q Q +keycode 0x11 = z Z +keycode 0x12 = e E +keycode 0x13 = r R +keycode 0x14 = t T +keycode 0x15 = y Y +keycode 0x16 = u U +keycode 0x17 = i I +keycode 0x18 = o O +keycode 0x19 = p P +keycode 0x1a = VoidSymbol ^ +keycode 0x1b = $ * + +# Terza riga +keycode 0x1e = a A +keycode 0x1f = s S +keycode 0x20 = d D +keycode 0x21 = f F +keycode 0x22 = g G +keycode 0x23 = h H +keycode 0x24 = j J +keycode 0x25 = k K +keycode 0x26 = l L +keycode 0x27 = m M +keycode 0x28 = VoidSymbol % +keycode 0x2b = ` VoidSymbol @ # + +# Quarta riga +keycode 0x29 = < > +keycode 0x2c = w W +keycode 0x2d = x X +keycode 0x2e = c C +keycode 0x2f = v V +keycode 0x30 = b B +keycode 0x31 = n N ~ +keycode 0x32 = , ? +keycode 0x33 = ; . +shift alt keycode 0x33 = % +keycode 0x34 = : / | \ +keycode 0x35 = VoidSymbol ! Index: branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/layouts-src/README =================================================================== --- branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/layouts-src/README (revision 0) +++ branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/layouts-src/README (revision 1540) @@ -0,0 +1,2 @@ +You can create your own keylayout file with the cham-mklayout command with a +source file (*.slt) as input. \ No newline at end of file Index: branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/cham-mklayout.c =================================================================== --- branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/cham-mklayout.c (revision 0) +++ branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/cham-mklayout.c (revision 1540) @@ -0,0 +1,373 @@ +/* + * cham-mklayout.c + * Chameleon + * + * Created by JrCs on 30/08/11. + * Copyright 2011. All rights reserved. + * + */ + +#include +#include +#include +#include +#include +#include "stdint.h" +#include "term.h" +#include "keylayout.h" + +#define PACKAGE_NAME "chameleon" +#define PROGRAM_VERSION "1.0" + +static struct keyboard_layout default_layout = { + .keyboard_map = { + /* 0x00 */ 0, KEY_ESC, '1', '2', '3', '4', '5', '6', + /* 0x08 */ '7', '8', '9', '0', '-', '=', KEY_BKSP, KEY_TAB, + /* 0x10 */ 'q', 'w', 'e', 'r', 't', 'y', 'u', 'i', + /* 0x18 */ 'o', 'p', '[', ']', KEY_ENTER, 0, 'a', 's', + /* 0x20 */ 'd', 'f', 'g', 'h', 'j', 'k', 'l', ';', + /* 0x28 */ '\'', '`', 0, '\\', 'z', 'x', 'c', 'v', + /* 0x30 */ 'b', 'n', 'm', ',', '.', '/', 0, 0 + }, + .keyboard_map_shift = { + /* 0x00 */ 0, KEY_ESC, '!', '@', '#', '$', '%', '^', + /* 0x08 */ '&', '*', '(', ')', '_', '+', KEY_BKSP, 0, + /* 0x10 */ 'Q', 'W', 'E', 'R', 'T', 'Y', 'U', 'I', + /* 0x18 */ 'O', 'P', '{', '}', KEY_ENTER, 0, 'A', 'S', + /* 0x20 */ 'D', 'F', 'G', 'H', 'J', 'K', 'L', ':', + /* 0x28 */ '"', '~', 0, '|', 'Z', 'X', 'C', 'V', + /* 0x30 */ 'B', 'N', 'M', '<', '>', '?', 0, 0, + }, + .keyboard_map_alt = { + /* 0x00 */ 0, KEY_NOECHO, 0, 0, 0, 0, 0, 0, + /* 0x08 */ 0, 0, 0, 0, 0, 0, KEY_NOECHO, KEY_NOECHO, + /* 0x10 */ 0, 0, 0, 0, 0, 0, 0, 0, + /* 0x18 */ 0, 0, KEY_NOECHO, KEY_NOECHO, KEY_NOECHO, KEY_NOECHO, 0, 0, + /* 0x20 */ 0, 0, 0, 0, 0, 0, 0, KEY_NOECHO, + /* 0x28 */ KEY_NOECHO, KEY_NOECHO, KEY_NOECHO, KEY_NOECHO, 0, 0, 0, 0, + /* 0x30 */ 0, 0, 0, KEY_NOECHO, KEY_NOECHO, KEY_NOECHO, KEY_NOECHO, KEY_NOECHO, + }, +}; + +const char* program_name; + +static struct option options[] = { + {"input", required_argument, 0, 'i'}, + {"output", required_argument, 0, 'o'}, + {"keysyms", no_argument, 0, 'k'}, + {"help", no_argument, 0, 'h'}, + {"version", no_argument, 0, 'V'}, + {0, 0, 0, 0} +}; + +struct hash +{ + const char *keysym; + int code; +}; + +static struct hash keysym_to_code[] = { + {"BackSpace", KEY_BKSP}, + {"Tab", KEY_TAB}, + {"Linefeed", 0x000a}, + {"Space", 0x0020}, + {"Exclam", 0x0021}, + {"QuoteDbl", 0x0022}, + {"NumberSign", 0x0023}, + {"Dollar", 0x0024}, + {"Percent", 0x0025}, + {"Ampersand", 0x0026}, + {"Apostrophe", 0x0027}, + {"Parenleft", 0x0028}, + {"Parenright", 0x0029}, + {"Asterisk", 0x002a}, + {"Plus", 0x002b}, + {"Comma", 0x002c}, + {"Minus", 0x002d}, + {"Period", 0x002e}, + {"Slash", 0x002f}, + {"Zero", 0x0030}, + {"One", 0x0031}, + {"Two", 0x0032}, + {"Three", 0x0033}, + {"Four", 0x0034}, + {"Five", 0x0035}, + {"Six", 0x0036}, + {"Seven", 0x0037}, + {"Eight", 0x0038}, + {"Nine", 0x0039}, + {"Colon", 0x003a}, + {"SemiColon", 0x003b}, + {"Less", 0x003c}, + {"Equal", 0x003d}, + {"Greater", 0x003e}, + {"Question", 0x003f}, + {"At", 0x0040}, + {"BracketLeft", 0x005b}, + {"Backslash", 0x005c}, + {"BracketRight",0x005d}, + {"AsciiCircum", 0x005e}, + {"Underscore", 0x005f}, + {"Grave", 0x0060}, + {"BraceLeft", 0x007b}, + {"Bar", 0x007c}, + {"BraceRight", 0x007d}, + {"AsciiTilde", 0x007e}, + {"Enter", KEY_ENTER}, + {"Escape", KEY_ESC}, + {"PrintScreen", KEY_PRTSC}, + {"Left", KEY_LEFT}, + {"Right", KEY_RIGHT}, + {"Up", KEY_UP}, + {"Down", KEY_DOWN}, + {"Home", KEY_HOME}, + {"End", KEY_END}, + {"Center", KEY_CENTER}, + {"Insert", KEY_INS}, + {"Delete", KEY_DEL}, + {"PageUp", KEY_PGUP}, + {"PageDown", KEY_PGDN}, + {"F1", KEY_F1}, + {"F2", KEY_F2}, + {"F3", KEY_F3}, + {"F4", KEY_F4}, + {"F5", KEY_F5}, + {"F6", KEY_F6}, + {"F7", KEY_F7}, + {"F8", KEY_F8}, + {"F9", KEY_F9}, + {"F10", KEY_F10}, + {"F11", KEY_F11}, + {"F12", KEY_F12}, + {"VoidSymbol", KEY_NOECHO}, + {NULL, 0} +}; + + +static void usage (int status) { + if (status) + fprintf (stderr, "Try `%s --help' for more information.\n", program_name); + else + printf ("\ +Usage: %s [OPTIONS]\n\ + -i, --input set input filename.\n\ + -o, --output set output filename.\n\ + -k, --keysyms list recognized keysyms.\n\ + -h, --help display this message and exit.\n\ + -V, --version print version information and exit.\n\ +\n", program_name); + + exit (status); +} + +static void list_keysyms (void) { + int i; + for (i = 0; keysym_to_code[i].keysym != NULL; i++) { + printf("0x%04x\t %s\n", keysym_to_code[i].code, keysym_to_code[i].keysym); + } +} + +static int hash_lookup (const char *keysym, unsigned int *code) { + int i; + for (i = 0; keysym_to_code[i].keysym != NULL; i++) { + if (strcasecmp (keysym, keysym_to_code[i].keysym) == 0) { + *code = keysym_to_code[i].code; + return 0; + } + } + return -1; +} + +static int parse_keysym(const char* str, unsigned int *code) { + // Single character + if (strlen(str) == 1) { + *code=(unsigned char)(str[0]); + if (*code > ASCII_KEY_MASK) + return -1; + return 0; + } + + // Hex character code + if (sscanf(str, "0x%x", code)) + return 0; + + // Keysym + if (hash_lookup(str, code) == 0) + return 0; + + return -1; +} + +int parse_scancode(int linenum, char* code, unsigned int* scancode) { + + char* tmp; + errno = 0; // clear errno + + float parse_value = strtof(code, &tmp); + int rest = strlen(code) - ((void*) tmp - (void*)code); + if (rest != 0 || errno != 0) { + printf("Ignoring line %d: invalid scancode `%s'\n", linenum, code); + return -1; + } + + *scancode = parse_value; + + // Only the first scancodes can be translated + if (*scancode >= KEYBOARD_MAP_SIZE) { + printf("Ignoring line %d: invalid scancode 0x%02x. Scancode must be <= 0x%02x.\n", linenum, *scancode, + KEYBOARD_MAP_SIZE); + return -1; + } + return 0; +} + +void assign_keycode(int linenum, unsigned int scancode, const char* arg, uint16_t* map) { + unsigned int value; + if (parse_keysym(arg, &value) == -1) { + printf("Warning line %d (keycode 0x%02x): invalid symbol %s (must be a true ascii character)\n", + linenum, scancode, arg); + value = KEY_NOECHO; // VoidSymbol + } + map[scancode] = value; +} + +struct keyboard_layout* create_keylayout(FILE* in) { + char line[128], code[sizeof(line)]; + char arg1[sizeof(line)], arg2[sizeof(line)], arg3[sizeof(line)], + arg4[sizeof(line)]; + int n, linenum = 0; + unsigned int scancode; + + struct keyboard_layout* new_layout= malloc(sizeof(*new_layout)); + if (!new_layout) + return NULL; + + // Initialize new keybord layout + memcpy(new_layout, &default_layout, sizeof(*new_layout)); + + while(fgets(line, sizeof(line), in)) { + linenum++; + n = sscanf (line, "keycode %s = %s %s %s %s", code, arg1, arg2, arg3, arg4); + if (n > 1) { + if (parse_scancode(linenum, code, &scancode) == -1) + continue; + if (n >= 2) + assign_keycode(linenum, scancode, arg1, + new_layout->keyboard_map); + if (n >= 3) + assign_keycode(linenum, scancode, arg2, + new_layout->keyboard_map_shift); + if (n >= 4) + assign_keycode(linenum, scancode, arg3, + new_layout->keyboard_map_alt); + if (n >= 5) + assign_keycode(linenum, scancode, arg4, + new_layout->keyboard_map_shift_alt); + } else if (sscanf (line, "shift keycode %s = %s", code, arg1) == 2) { + if (parse_scancode(linenum, code, &scancode) == -1) + continue; + assign_keycode(linenum, scancode, arg1, + new_layout->keyboard_map_shift); + } else if (sscanf (line, "alt keycode %s = %s", code, arg1) == 2) { + if (parse_scancode(linenum, code, &scancode) == -1) + continue; + assign_keycode(linenum, scancode, arg1, + new_layout->keyboard_map_alt); + } else if (sscanf (line, "shift alt keycode %s = %s", code, arg1) == 2) { + if (parse_scancode(linenum, code, &scancode) == -1) + continue; + assign_keycode(linenum, scancode, arg1, + new_layout->keyboard_map_shift_alt); + } + } + return new_layout; +} + +void write_layout(struct keyboard_layout* layout, FILE* out) { + // Create the header + uint32_t version = KEYBOARD_LAYOUTS_VERSION; + fwrite(KEYBOARD_LAYOUTS_MAGIC, KEYBOARD_LAYOUTS_MAGIC_SIZE, 1, out); + fwrite(&version, 1, sizeof(version), out); + // Seek to start of layout + fseek(out, KEYBOARD_LAYOUTS_MAP_OFFSET, SEEK_SET); + // Write layout + fwrite(layout, sizeof(*layout), 1, out); +} + +void set_program_name(const char* arg) { + const char* last_slash; + last_slash = strrchr(arg, '/'); + program_name = (last_slash != NULL) ? last_slash + 1 : arg; +} + +int main (int argc, char *argv[]) { + int ch; + char *infile_name = NULL; + char *outfile_name = NULL; + FILE *in, *out; + + set_program_name (argv[0]); + + /* Check for options. */ + while ((ch = getopt_long (argc, argv, "i:o:hkV", options, 0)) != -1) { + switch (ch) { + case 'h': + usage (0); + break; + + case 'k': + list_keysyms(); + exit(0); + break; + + case 'i': + infile_name = optarg; + break; + + case 'o': + outfile_name = optarg; + break; + + case 'V': + printf ("%s v%s (%s)\n", program_name, PROGRAM_VERSION, PACKAGE_NAME); + return 0; + + default: + usage (1); + break; + } + } + + if (infile_name == NULL) { + fprintf(stderr, "You must specify an input file\n"); + usage(1); + } + + if (outfile_name == NULL) { + fprintf(stderr, "You must specify an output file\n"); + usage(1); + } + + in = fopen (infile_name, "r"); + if (!in) { + fprintf(stderr, "Couldn't open input file `%s': %s\n", + infile_name, strerror (errno)); + exit(1); + } + + out = fopen (outfile_name, "wb"); + if (!out) { + fprintf(stderr, "Couldn't open output file `%s': %s\n", + outfile_name, strerror (errno)); + exit(1); + } + + struct keyboard_layout* new_layout = create_keylayout(in); + if (new_layout) + write_layout(new_layout, out); + + fclose(out); + fclose(in); + + return 0; +} Index: branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/Makefile =================================================================== --- branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/Makefile (revision 0) +++ branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/layouts/Makefile (revision 1540) @@ -0,0 +1,56 @@ + +SRCROOT = $(abspath $(CURDIR)/../../../..) +OBJROOT = $(SRCROOT)/obj/i386/util +SYMROOT = $(SRCROOT)/sym/i386 +DSTROOT = $(SRCROOT)/dst/i386 +DOCROOT = $(SRCROOT)/doc +KEYMAPSROOT = $(SRCROOT)/Keymaps + +INC = -I$(SRCROOT)/i386/libsaio/ -I. -I.. + +OBJS = cham-mklayout.o32 cham-mklayout.o64 +OBJS := $(addprefix $(OBJROOT)/, $(OBJS)) + +MKLAYOUT = cham-mklayout +MKLAYOUT := $(addprefix $(SYMROOT)/, $(MKLAYOUT)) + +PROGRAMS = $(MKLAYOUT) + +LAYOUTS_SRC_DIR = layouts-src +KEYBOARD_LAYOUTS = $(patsubst $(LAYOUTS_SRC_DIR)/%.slt, $(KEYMAPSROOT)/%.lyt, \ + $(wildcard $(LAYOUTS_SRC_DIR)/*.slt)) + +DIRS_NEEDED = $(KEYMAPSROOT) + +include ${SRCROOT}/Make.rules + +all: $(DIRS_NEEDED) $(OBJROOT) $(SYMROOT) keymaps + +$(PROGRAMS): $(OBJS) + @echo "\t[LD32] $(@F)_32" + @$(CC) $(CFLAGS) $(LDFLAGS) $(DEFINES) $(INCLUDES) -arch i386 \ + -o $(SYMROOT)/$(@F)_32 $(OBJROOT)/$(@F).o32 + @echo "\t[LD64] $(@F)_64" + @$(CC) $(CFLAGS) $(LDFLAGS) $(DEFINES) $(INCLUDES) -arch x86_64 \ + -o $(SYMROOT)/$(@F)_64 $(OBJROOT)/$(@F).o64 + @echo "\t[LIPO] $(@F)" + @lipo -create -arch i386 $(SYMROOT)/$(@F)_32 -arch x86_64 $(SYMROOT)/$(@F)_64 \ + -output $(SYMROOT)/$(@F) + @$(RM) $(SYMROOT)/$(@F)_32 $(SYMROOT)/$(@F)_64 + +keymaps: $(KEYBOARD_LAYOUTS) + +$(KEYMAPSROOT)/%.lyt: $(LAYOUTS_SRC_DIR)/%.slt $(MKLAYOUT) + @echo "\t[LAYOUT] Creating keyboard layout: $*" + @$(MKLAYOUT) -i $< -o $@ + +#.PHONY layouts +clean-local: + @for o in $(OBJS); do if [ -f "$${o}" ];then echo "\t[RM] $${o}"; fi; done + @for p in $(PROGRAMS); do if [ -f "$${p}" ];then echo "\t[RM] $${p}"; fi; done + @for k in $(KEYBOARD_LAYOUTS); do if [ -f "$${k}" ];then echo "\t[RM] $${k}"; fi; done + @$(RM) -f $(PROGRAMS) $(OBJS) + +distclean-local: + @if [ -d "$(KEYMAPSROOT)" ];then echo "\t[RMDIR] $(KEYMAPSROOT)"; fi + @$(RM) -rf $(KEYMAPSROOT) Index: branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/Keylayout.c =================================================================== --- branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/Keylayout.c (revision 0) +++ branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/Keylayout.c (revision 1540) @@ -0,0 +1,131 @@ +/* + * Keymapper.c + * Chameleon + * + * Created by JrCs on 28/08/11. + * Copyright 2011. All rights reserved. + * + */ + +#include "libsaio.h" +#include "term.h" +#include "modules.h" +#include "Keylayout.h" +#include "bootstruct.h" + +#define kKeyboardLayout "KeyboardLayout" + +struct keyboard_layout *current_layout = NULL; + +int getchar_replacement() { + int code = bgetc(); + int status = readKeyboardShiftFlags(); + uint8_t scancode = code >> 8; + + // Special scancode sent when alt + some keys are pressed + if (scancode >= 0x78 && scancode <= 0x83) + scancode -= 0x76; + + if (scancode < KEYBOARD_MAP_SIZE && !(status & (STATUS_LCTRL| STATUS_RCTRL))) { + int key; + if ((status & (STATUS_LALT|STATUS_RALT)) && + (status & (STATUS_LSHIFT|STATUS_RSHIFT|STATUS_CAPS))) { + key=current_layout->keyboard_map_shift_alt[scancode]; + } + else if (status & (STATUS_LSHIFT|STATUS_RSHIFT|STATUS_CAPS)) + key=current_layout->keyboard_map_shift[scancode]; + else if (status & (STATUS_LALT|STATUS_RALT)) + key=current_layout->keyboard_map_alt[scancode]; + else + key=current_layout->keyboard_map[scancode]; + + if (key != 0) // do the mapping + code = key; + } + + if (ASCII_KEY(code) != 0) // if ascii not null return it + code = ASCII_KEY(code); + + //printf("Code: %04x\n",code); + return (code); +} + +static uint32_t load_keyboard_layout_file(const char *filename) { + int fd; + char magic[KEYBOARD_LAYOUTS_MAGIC_SIZE]; + uint32_t version; + + if ((fd = open_bvdev("bt(0,0)", filename, 0)) < 0) { + goto fail; // fail + } + + if (read(fd, magic, sizeof(magic)) != sizeof(magic)) { + printf("Can't find magic in keyboard layout file: %s\n", filename); + goto fail; + } + + if (memcmp (magic, KEYBOARD_LAYOUTS_MAGIC, KEYBOARD_LAYOUTS_MAGIC_SIZE) != 0) { + printf("Invalid magic code in keyboard layout file: %s\n", filename); + goto fail; + } + + if (read(fd, (char*) &version, sizeof(version)) != sizeof(version)) { + printf("Can't get version of keyboard layout file: %s\n", filename); + goto fail; + } + + if (version != KEYBOARD_LAYOUTS_VERSION) { + verbose("Bad version for keyboard layout file %s expected v%d found v%d\n", + filename, KEYBOARD_LAYOUTS_VERSION, version); + goto fail; + } + + if (current_layout) + free(current_layout); + + current_layout = malloc(sizeof(*current_layout)); + if (!current_layout) + goto fail; + + b_lseek(fd, KEYBOARD_LAYOUTS_MAP_OFFSET, 0); + + if (read(fd, (char*) current_layout, sizeof(*current_layout)) != sizeof(*current_layout)) { + printf("Wrong keyboard layout file %s size\n", filename); + goto fail; + } + + close(fd); + + return 1; + + fail: + + if (current_layout) { + free(current_layout); + current_layout = NULL; + } + return 0; +} + +void Keylayout_start() +{ + char layoutPath[512]; + const char *val; + int len; + + if (getValueForKey("KeyLayout", &val, &len, &bootInfo->chameleonConfig)) { + sprintf(layoutPath, "/Extra/Keymaps/%s", val); + // Add the extension if needed + if (len <= 4 || strcmp(val+len-4,".lyt") != 0) + strncat(layoutPath, ".lyt", sizeof(layoutPath)); + + if (!load_keyboard_layout_file(layoutPath)) { + printf("Can't load %s keyboard layout file. Keylayout will not be used !\n", + layoutPath); + sleep(2); + } else if (!replace_function("_getchar", &getchar_replacement)) { + printf("Can't replace function getchar: Keylayout module can't be used !\n"); + sleep(2); + } + } +} Index: branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/Cconfig =================================================================== --- branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/Cconfig (revision 0) +++ branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/Cconfig (revision 1540) @@ -0,0 +1,10 @@ +# +# Chameleon Modules +# + +config KEYLAYOUT_MODULE + tristate "Keylayout Module" + default m + ---help--- + Say Y here if you want to enable the use of this module. + Index: branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/Readme.txt =================================================================== --- branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/Readme.txt (revision 0) +++ branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/Readme.txt (revision 1540) @@ -0,0 +1,3 @@ +Module: Keylayout +Description: This module permits the user to define the keyboard key mappings +Dependencies: none Index: branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/Keylayout.h =================================================================== --- branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/Keylayout.h (revision 0) +++ branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/Keylayout.h (revision 1540) @@ -0,0 +1,29 @@ +/* + * Keylayout.h + * Chameleon + * + * Created by JrCs on 28/8/11. + * Copyright 2011. All rights reserved. + * + */ + + +#ifndef __KEYLAYOUT_H +#define __KEYLAYOUT_H + +#define KEYBOARD_LAYOUTS_MAGIC "CHAMLAYT" +#define KEYBOARD_LAYOUTS_MAGIC_SIZE (sizeof(KEYBOARD_LAYOUTS_MAGIC) - 1) +#define KEYBOARD_LAYOUTS_VERSION 3 +#define KEYBOARD_LAYOUTS_MAP_OFFSET 0x10 // 0x10 offset of the map in layout file + +#define KEYBOARD_MAP_SIZE 0x38 + +struct keyboard_layout +{ + uint16_t keyboard_map[KEYBOARD_MAP_SIZE]; + uint16_t keyboard_map_shift[KEYBOARD_MAP_SIZE]; + uint16_t keyboard_map_alt[KEYBOARD_MAP_SIZE]; + uint16_t keyboard_map_shift_alt[KEYBOARD_MAP_SIZE]; +}; + +#endif Index: branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/Makefile =================================================================== --- branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/Makefile (revision 0) +++ branches/azimutz/trunkAutoResolution/i386/modules/Keylayout/Makefile (revision 1540) @@ -0,0 +1,14 @@ +MODULE_NAME = Keylayout +MODULE_DESCRIPTION = This module provides keylayout functionality +MODULE_AUTHOR = "JrCs" +MODULE_VERSION = "1.2.0" +MODULE_COMPAT_VERSION = "1.2.0" +MODULE_START = $(MODULE_NAME)_start +MODULE_DEPENDENCIES = + +DIR = Keylayout +SUBDIRS += layouts + +MODULE_OBJS = Keylayout.o + +include ../MakeInc.dir Index: branches/azimutz/trunkAutoResolution/i386/modules/Cconfig =================================================================== --- branches/azimutz/trunkAutoResolution/i386/modules/Cconfig (revision 1539) +++ branches/azimutz/trunkAutoResolution/i386/modules/Cconfig (revision 1540) @@ -6,4 +6,5 @@ source "i386/modules/klibc/Cconfig" source "i386/modules/uClibcxx/Cconfig" source "i386/modules/HelloWorld/Cconfig" -endmenu \ No newline at end of file +source "i386/modules/Keylayout/Cconfig" +endmenu Index: branches/azimutz/trunkAutoResolution/i386/modules/Makefile =================================================================== --- branches/azimutz/trunkAutoResolution/i386/modules/Makefile (revision 1539) +++ branches/azimutz/trunkAutoResolution/i386/modules/Makefile (revision 1540) @@ -29,6 +29,10 @@ SUBDIRS += HelloWorld endif +ifdef CONFIG_KEYLAYOUT_MODULE +SUBDIRS += Keylayout +endif + CFLAGS= -O3 $(MORECPP) -arch i386 -g -static DEFINES= CONFIG = hd Index: branches/azimutz/trunkAutoResolution/package/Scripts/Keymaps/postinstall.in =================================================================== --- branches/azimutz/trunkAutoResolution/package/Scripts/Keymaps/postinstall.in (revision 0) +++ branches/azimutz/trunkAutoResolution/package/Scripts/Keymaps/postinstall.in (revision 1540) @@ -0,0 +1,34 @@ +#!/usr/bin/python +# Script to add Graphics_Mode for Chameleon boot loaders + +import sys +import os +import shutil + +vol = str(sys.argv[3]) +boot = "/Extra/org.chameleon.Boot.plist" +plist = vol + boot +if not os.path.exists(plist): + shutil.copy('/Library/Preferences/SystemConfiguration/com.apple.Boot.plist', plist) + +infile = open(plist, "r") +# check if Graphics_Mode has been written or not +KeyLayoutCheck = False + +body = "" + +for line in infile: + # if we finish the tags and haven't written KeyLayout Yet + if "" in line and KeyLayoutCheck == False: + line = " KeyLayout\n" + line += " @@KEYMAP@@\n" + line += "\n" + KeyLayoutCheck = True + + body += line + +infile.close() + +outfile = open(plist, "w") +outfile.write(body) +outfile.close() Property changes on: branches/azimutz/trunkAutoResolution/package/Scripts/Keymaps/postinstall.in ___________________________________________________________________ Added: svn:executable + * Index: branches/azimutz/trunkAutoResolution/package/Resources/pl.lproj/Localizable.strings =================================================================== --- branches/azimutz/trunkAutoResolution/package/Resources/pl.lproj/Localizable.strings (revision 1539) +++ branches/azimutz/trunkAutoResolution/package/Resources/pl.lproj/Localizable.strings (revision 1540) @@ -37,6 +37,9 @@ Source: http://cxx.uclibc.org/ Dependencies: klibc"; +"Keylayout_title" = "Keylayout"; +"Keylayout_description" = "This module permits the user to define the keyboard key mappings."; + // Utility "Utility_title" = "Narzdzia"; "Utility_description" = "Opcjonalne pliki przydatne w konfiguracji."; @@ -145,6 +148,28 @@ "UseMemDetect_title" = "UseMemDetect=No"; "UseMemDetect_description" = "WyBcza domy[lnie wBczone rozpoznawanie pamici RAM."; +// KeyLayout +"KeyLayout_title" = "KeyLayout"; +"KeyLayout_description" = "Set keylayout to use"; + +"mac-de_title" = "German Mac Keyboard"; +"mac-de_description" = "Use the keyboard layout for a German Mac keyboard"; + +"mac-es_title" = "Spanish Mac Keyboard"; +"mac-es_description" = "Use the keyboard layout for a Spanish Mac keyboard"; + +"mac-fr_title" = "French Mac Keyboard"; +"mac-fr_description" = "Use the keyboard layout for a French Mac keyboard"; + +"mac-it_title" = "Italian Mac Keyboard"; +"mac-it_description" = "Use the keyboard layout for an Italian Mac keyboard"; + +"mac-se_title" = "Swedish Mac Keyboard"; +"mac-se_description" = "Use the keyboard layout for a Swedish Mac keyboard"; + +"pc-fr_title" = "French PC Keyboard"; +"pc-fr_description" = "Use the keyboard layout for a French PC keyboard"; + // Resolution "Resolution_title" = "Rozdzielczo["; "Resolution_description" = "Ustaw rozdzielczo[ ekranu dla twojego monitora."; Index: branches/azimutz/trunkAutoResolution/package/Resources/id.lproj/Localizable.strings =================================================================== --- branches/azimutz/trunkAutoResolution/package/Resources/id.lproj/Localizable.strings (revision 1539) +++ branches/azimutz/trunkAutoResolution/package/Resources/id.lproj/Localizable.strings (revision 1540) @@ -36,6 +36,9 @@ Source: http://cxx.uclibc.org/ Dependencies: klibc"; +"Keylayout_title" = "Keylayout"; +"Keylayout_description" = "This module permits the user to define the keyboard key mappings."; + // Utility "Utility_title" = "Utility ; "Utility_description" =  Berkas tambahan untuk membantu pemasangan"; @@ -144,6 +147,28 @@ "UseMemDetect_title" = "UseMemDetect=No"; "UseMemDetect_description" =  Mematikan opsi pengenalan RAM yang secara otomatis dinyalakan. ; +// KeyLayout +"KeyLayout_title" = "KeyLayout"; +"KeyLayout_description" = "Set keylayout to use"; + +"mac-de_title" = "German Mac Keyboard"; +"mac-de_description" = "Use the keyboard layout for a German Mac keyboard"; + +"mac-es_title" = "Spanish Mac Keyboard"; +"mac-es_description" = "Use the keyboard layout for a Spanish Mac keyboard"; + +"mac-fr_title" = "French Mac Keyboard"; +"mac-fr_description" = "Use the keyboard layout for a French Mac keyboard"; + +"mac-it_title" = "Italian Mac Keyboard"; +"mac-it_description" = "Use the keyboard layout for an Italian Mac keyboard"; + +"mac-se_title" = "Swedish Mac Keyboard"; +"mac-se_description" = "Use the keyboard layout for a Swedish Mac keyboard"; + +"pc-fr_title" = "French PC Keyboard"; +"pc-fr_description" = "Use the keyboard layout for a French PC keyboard"; + // Resolution "Resolution_title" = "Resolusi ; "Resolution_description" =  Mengatur resolusi layar anda ; Index: branches/azimutz/trunkAutoResolution/package/Resources/it.lproj/Localizable.strings =================================================================== --- branches/azimutz/trunkAutoResolution/package/Resources/it.lproj/Localizable.strings (revision 1539) +++ branches/azimutz/trunkAutoResolution/package/Resources/it.lproj/Localizable.strings (revision 1540) @@ -36,6 +36,9 @@ Fonte: http://cxx.uclibc.org/ Dipendenze: klibc"; +"Keylayout_title" = "Mappatura tastiera"; +"Keylayout_description" = "Questo modulo permette all'utente di definire la mappatura della propria tastiera."; + // Utility "Utility_title" = "Utilitá"; "Utility_description" = "Utilitá per Chameleon"; @@ -144,6 +147,28 @@ "UseMemDetect_title" = "UseMemDetect=No"; "UseMemDetect_description" = "Disattiva il riconoscimento della RAM automatico."; +// KeyLayout +"KeyLayout_title" = "KeyLayout"; +"KeyLayout_description" = "Seleziona la mappatura da utilizzare"; + +"mac-de_title" = "Mappatura tastiera Tedesca MAC"; +"mac-de_description" = "Usa la mappatura della tastiera Tedesca per MAC"; + +"mac-es_title" = "Mappatura tastiera Spagnola MAC"; +"mac-es_description" = "Usa la mappatura della tastiera Spagnola per MAC"; + +"mac-fr_title" = "Mappatura tastiera Francese Mac"; +"mac-fr_description" = "Usa la mappatura della tastiera Francese per MAC"; + +"mac-it_title" = "Mappatura tastiera Italiana Mac"; +"mac-it_description" = "Usa la mappatura della tastiera Italiana per MAC"; + +"mac-se_title" = "Mappatura tastiera Svedese Mac"; +"mac-se_description" = "Usa la mappatura della tastiera Svedese per MAC"; + +"pc-fr_title" = "Mappatura tastiera Francese PC"; +"pc-fr_description" = "Usa la mappatura della tastiera Francese per PC"; + // Resolution "Resolution_title" = "Risoluzioni"; "Resolution_description" = "Imposta la risoluzione del tuo monitor"; Index: branches/azimutz/trunkAutoResolution/package/Resources/it.lproj/Welcome.rtfd/TXT.rtf =================================================================== --- branches/azimutz/trunkAutoResolution/package/Resources/it.lproj/Welcome.rtfd/TXT.rtf (revision 1539) +++ branches/azimutz/trunkAutoResolution/package/Resources/it.lproj/Welcome.rtfd/TXT.rtf (revision 1540) @@ -33,4 +33,4 @@ \pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural \fs26 \cf0 Copyright \'a9 2011 -\b \cf3 Italian translation: ErmaC e scrax} +\b \cf3 Tradotto da : ErmaC e scrax} Index: branches/azimutz/trunkAutoResolution/package/Resources/hr-HR.lproj/Localizable.strings =================================================================== --- branches/azimutz/trunkAutoResolution/package/Resources/hr-HR.lproj/Localizable.strings (revision 1539) +++ branches/azimutz/trunkAutoResolution/package/Resources/hr-HR.lproj/Localizable.strings (revision 1540) @@ -43,6 +43,9 @@ Izvor: http://cxx.uclibc.org/ Dependencies: klibc"; +"Keylayout_title" = "Keylayout"; +"Keylayout_description" = "This module permits the user to define the keyboard key mappings."; + // Utility "Utility_title" = "Korisno"; "Utility_description" = "Fajl izbornik za pomo pri instalaciji"; @@ -184,6 +187,28 @@ "UseMemDetect_description" = "Isklju uje omogueno automatsko RAM prepoznavanje."; +// KeyLayout +"KeyLayout_title" = "KeyLayout"; +"KeyLayout_description" = "Set keylayout to use"; + +"mac-de_title" = "German Mac Keyboard"; +"mac-de_description" = "Use the keyboard layout for a German Mac keyboard"; + +"mac-es_title" = "Spanish Mac Keyboard"; +"mac-es_description" = "Use the keyboard layout for a Spanish Mac keyboard"; + +"mac-fr_title" = "French Mac Keyboard"; +"mac-fr_description" = "Use the keyboard layout for a French Mac keyboard"; + +"mac-it_title" = "Italian Mac Keyboard"; +"mac-it_description" = "Use the keyboard layout for an Italian Mac keyboard"; + +"mac-se_title" = "Swedish Mac Keyboard"; +"mac-se_description" = "Use the keyboard layout for a Swedish Mac keyboard"; + +"pc-fr_title" = "French PC Keyboard"; +"pc-fr_description" = "Use the keyboard layout for a French PC keyboard"; + // Resolution "Resolution_title" = "Resolution"; "Resolution_description" = "Postavlja rezoluciju za vaa monitor"; Index: branches/azimutz/trunkAutoResolution/package/Resources/en.lproj/Localizable.strings =================================================================== --- branches/azimutz/trunkAutoResolution/package/Resources/en.lproj/Localizable.strings (revision 1539) +++ branches/azimutz/trunkAutoResolution/package/Resources/en.lproj/Localizable.strings (revision 1540) @@ -36,6 +36,9 @@ Source: http://cxx.uclibc.org/ Dependencies: klibc"; +"Keylayout_title" = "Keylayout"; +"Keylayout_description" = "This module permits the user to define the keyboard key mappings."; + // Utility "Utility_title" = "Utilities"; "Utility_description" = "Optional files to help setup"; @@ -144,6 +147,28 @@ "UseMemDetect_title" = "UseMemDetect=No"; "UseMemDetect_description" = "Disables the automatically enabled RAM recognition."; +// KeyLayout +"KeyLayout_title" = "KeyLayout"; +"KeyLayout_description" = "Set keylayout to use"; + +"mac-de_title" = "German Mac Keyboard"; +"mac-de_description" = "Use the keyboard layout for a German Mac keyboard"; + +"mac-es_title" = "Spanish Mac Keyboard"; +"mac-es_description" = "Use the keyboard layout for a Spanish Mac keyboard"; + +"mac-fr_title" = "French Mac Keyboard"; +"mac-fr_description" = "Use the keyboard layout for a French Mac keyboard"; + +"mac-it_title" = "Italian Mac Keyboard"; +"mac-it_description" = "Use the keyboard layout for an Italian Mac keyboard"; + +"mac-se_title" = "Swedish Mac Keyboard"; +"mac-se_description" = "Use the keyboard layout for a Swedish Mac keyboard"; + +"pc-fr_title" = "French PC Keyboard"; +"pc-fr_description" = "Use the keyboard layout for a French PC keyboard"; + // Resolution "Resolution_title" = "Resolution"; "Resolution_description" = "Set the screen resolution of your display"; Index: branches/azimutz/trunkAutoResolution/package/Resources/pt-BR.lproj/Localizable.strings =================================================================== --- branches/azimutz/trunkAutoResolution/package/Resources/pt-BR.lproj/Localizable.strings (revision 1539) +++ branches/azimutz/trunkAutoResolution/package/Resources/pt-BR.lproj/Localizable.strings (revision 1540) @@ -36,6 +36,9 @@ Fonte: http://cxx.uclibc.org/ Dependências: klibc"; +"Keylayout_title" = "Keylayout"; +"Keylayout_description" = "This module permit to define the mapping of keyboard keys."; + // Utility "Utility_title" = "Utilitários"; "Utility_description" = "Arquivos opcionais para ajudar na configuração"; @@ -144,6 +147,28 @@ "UseMemDetect_title" = "UseMemDetect=No"; "UseMemDetect_description" = "Desativa a identificação automática de memória RAM."; +// KeyLayout +"KeyLayout_title" = "KeyLayout"; +"KeyLayout_description" = "Set keylayout to use"; + +"mac-de_title" = "German Mac Keyboard"; +"mac-de_description" = "Use the keyboard layout for a German Mac keyboard"; + +"mac-es_title" = "Spanish Mac Keyboard"; +"mac-es_description" = "Use the keyboard layout for a Spanish Mac keyboard"; + +"mac-fr_title" = "French Mac Keyboard"; +"mac-fr_description" = "Use the keyboard layout for a French Mac keyboard"; + +"mac-it_title" = "Italian Mac Keyboard"; +"mac-it_description" = "Use the keyboard layout for an Italian Mac keyboard"; + +"mac-se_title" = "Swedish Mac Keyboard"; +"mac-se_description" = "Use the keyboard layout for a Swedish Mac keyboard"; + +"pc-fr_title" = "French PC Keyboard"; +"pc-fr_description" = "Use the keyboard layout for a French PC keyboard"; + // Resolution "Resolution_title" = "Resolução"; "Resolution_description" = "Configura a resolução da tela"; Index: branches/azimutz/trunkAutoResolution/package/Resources/pt-PT.lproj/Localizable.strings =================================================================== --- branches/azimutz/trunkAutoResolution/package/Resources/pt-PT.lproj/Localizable.strings (revision 1539) +++ branches/azimutz/trunkAutoResolution/package/Resources/pt-PT.lproj/Localizable.strings (revision 1540) @@ -36,6 +36,9 @@ Fonte: http://cxx.uclibc.org/ Dependências: klibc"; +"Keylayout_title" = "Keylayout"; +"Keylayout_description" = "This module permits the user to define the keyboard key mappings."; + // Utility "Utility_title" = "Utilitários"; "Utility_description" = "Arquivos opcionais para ajudar na configuração"; @@ -144,6 +147,28 @@ "UseMemDetect_title" = "UseMemDetect=No"; "UseMemDetect_description" = "Desactiva a identificação automática de memória RAM."; +// KeyLayout +"KeyLayout_title" = "KeyLayout"; +"KeyLayout_description" = "Set keylayout to use"; + +"mac-de_title" = "German Mac Keyboard"; +"mac-de_description" = "Use the keyboard layout for a German Mac keyboard"; + +"mac-es_title" = "Spanish Mac Keyboard"; +"mac-es_description" = "Use the keyboard layout for a Spanish Mac keyboard"; + +"mac-fr_title" = "French Mac Keyboard"; +"mac-fr_description" = "Use the keyboard layout for a French Mac keyboard"; + +"mac-it_title" = "Italian Mac Keyboard"; +"mac-it_description" = "Use the keyboard layout for an Italian Mac keyboard"; + +"mac-se_title" = "Swedish Mac Keyboard"; +"mac-se_description" = "Use the keyboard layout for a Swedish Mac keyboard"; + +"pc-fr_title" = "French PC Keyboard"; +"pc-fr_description" = "Use the keyboard layout for a French PC keyboard"; + // Resolution "Resolution_title" = "Resolução"; "Resolution_description" = "Configura a resolução do écran"; Index: branches/azimutz/trunkAutoResolution/package/Resources/sr.lproj/Localizable.strings =================================================================== --- branches/azimutz/trunkAutoResolution/package/Resources/sr.lproj/Localizable.strings (revision 1539) +++ branches/azimutz/trunkAutoResolution/package/Resources/sr.lproj/Localizable.strings (revision 1540) @@ -44,6 +44,9 @@ Izvor: http://cxx.uclibc.org/ Dependencies: klibc"; +"Keylayout_title" = "Keylayout"; +"Keylayout_description" = "This module permits the user to define the keyboard key mappings."; + // Utility "Utility_title" = "Korisno"; "Utility_description" = "Menij fajlovi za pomo pri instalaciji"; @@ -180,6 +183,28 @@ "UseMemDetect_description" = "Isklju uje omogueno automatsko RAM prepoznavanje."; +// KeyLayout +"KeyLayout_title" = "KeyLayout"; +"KeyLayout_description" = "Set keylayout to use"; + +"mac-de_title" = "German Mac Keyboard"; +"mac-de_description" = "Use the keyboard layout for a German Mac keyboard"; + +"mac-es_title" = "Spanish Mac Keyboard"; +"mac-es_description" = "Use the keyboard layout for a Spanish Mac keyboard"; + +"mac-fr_title" = "French Mac Keyboard"; +"mac-fr_description" = "Use the keyboard layout for a French Mac keyboard"; + +"mac-it_title" = "Italian Mac Keyboard"; +"mac-it_description" = "Use the keyboard layout for an Italian Mac keyboard"; + +"mac-se_title" = "Swedish Mac Keyboard"; +"mac-se_description" = "Use the keyboard layout for a Swedish Mac keyboard"; + +"pc-fr_title" = "French PC Keyboard"; +"pc-fr_description" = "Use the keyboard layout for a French PC keyboard"; + // Resolution "Resolution_title" = "Resolution"; "Resolution_description" = "Postavlja rezoluciju ekrana za vaa monitor"; Index: branches/azimutz/trunkAutoResolution/package/Resources/es.lproj/Localizable.strings =================================================================== --- branches/azimutz/trunkAutoResolution/package/Resources/es.lproj/Localizable.strings (revision 1539) +++ branches/azimutz/trunkAutoResolution/package/Resources/es.lproj/Localizable.strings (revision 1540) @@ -74,6 +74,12 @@ +"Keylayout_title" = "Keylayout"; + +"Keylayout_description" = "This module permits the user to define the keyboard key mappings."; + + + // Utility "Utility_title" = "Utilidades"; @@ -290,6 +296,50 @@ +// KeyLayout + +"KeyLayout_title" = "KeyLayout"; + +"KeyLayout_description" = "Set keylayout to use"; + + + +"mac-de_title" = "German Mac Keyboard"; + +"mac-de_description" = "Use the keyboard layout for a German Mac keyboard"; + + + +"mac-es_title" = "Spanish Mac Keyboard"; + +"mac-es_description" = "Use the keyboard layout for a Spanish Mac keyboard"; + + + +"mac-fr_title" = "French Mac Keyboard"; + +"mac-fr_description" = "Use the keyboard layout for a French Mac keyboard"; + + + +"mac-it_title" = "Italian Mac Keyboard"; + +"mac-it_description" = "Use the keyboard layout for an Italian Mac keyboard"; + + + +"mac-se_title" = "Swedish Mac Keyboard"; + +"mac-se_description" = "Use the keyboard layout for a Swedish Mac keyboard"; + + + +"pc-fr_title" = "French PC Keyboard"; + +"pc-fr_description" = "Use the keyboard layout for a French PC keyboard"; + + + // Resolution "Resolution_title" = "Resolución"; Index: branches/azimutz/trunkAutoResolution/package/Resources/fr.lproj/Description.html =================================================================== --- branches/azimutz/trunkAutoResolution/package/Resources/fr.lproj/Description.html (revision 0) +++ branches/azimutz/trunkAutoResolution/package/Resources/fr.lproj/Description.html (revision 1540) @@ -0,0 +1,32 @@ + + + + + + + + + +

Chameleon est une conbinaison de différent composants de boot loader.

+

Il est basé sur la "fake EFI" implémentation de David Elliott ajouté au projet  Apple's boot-132.

+


+

Chameleon à été amélioré avec les fonctions clé suivantes:

+


+

Les nouvelles fonctionnalités de Chameleon 2.0

+


+

- Interface graphique entierement customisable pour apporter un peu de couleur au Darwin Bootloader.

+

- Booter un DVD Retail en chargeant directement une image RAMDISK sans l'aide de programmes tierce.

+

- Hibernation:  Appréciez  l'affichage d'un apercu d'écran durant le démarrage  après mise en veille.

+

- SMBIOS override : pour modifier les valeur d'usines du SMBIOS.

+

- DSDT override : Utilisation d'un DSDT modifié pouvant résoudre quelques problemes .

+


+

- Device Property Injection via device-properties string dans boot.plist.

+

- Hybrid boot0 / boot1h pour disque dur partionnés en MBR et GPT .

+

- Détection du FSB automatique , mème pour les CPU AMD récents.

+

- Support du Apple Software RAID .

+


+

Pour des informations plus détaillées , visitez : http://chameleon.osx86.hu

+ + Index: branches/azimutz/trunkAutoResolution/package/Resources/fr.lproj/Localizable.strings =================================================================== --- branches/azimutz/trunkAutoResolution/package/Resources/fr.lproj/Localizable.strings (revision 0) +++ branches/azimutz/trunkAutoResolution/package/Resources/fr.lproj/Localizable.strings (revision 1540) @@ -0,0 +1,233 @@ +ÿþ// General +"Chameleon_title" = "Chameleon"; +"Chameleon_description" = "Chameleon requiert trois fichiers essentiels: +boot0 (Sur le MBR du disque) il est responsable du chargement de boot1. +boot1 (Sur le secteur de boot de la partition) pour trouver boot2. +boot2 (A la racine de la partition) pour charger le noyau etc."; + +"Standard_title" = "Standard"; +"Standard_description" = "Installe les fichiers de Chameleon à la racine de la partition sélectionnée en utilisant soit boot0 soit boot0md en fonction du système et sans détruire une installation de Windows existante."; + +"EFI_title" = "EFI"; +"EFI_description" = "Installe les fichiers de Chameleon dans la partition cachée EFI en utilisant soit boot0 soit boot0md en fonction du système et sans détruire une installation de Windows existante."; + +"noboot_title" = "Ne pas installer de Chargeur de Démarrage"; +"noboot_description" = "Utile si vous ne voulez installer que les Extras."; + +// Modules + +"Module_title" = "Modules Chameleon"; +"Module_description" = "Le système de modules intégrés à Chameleon permet à un utilisateur ou un développeur d'étendre les fonctionnalités de base de Chameleon sans remplacer le fichier de démarrage principal."; + +"klibc_title" = "klibc"; +"klibc_description" = "This module provides a standard c library for modules to link to if the library provided by chameleon is insufficient. +This is currently only used by the uClibc++ library. +Source: http://www.kernel.org/pub/linux/libs/klibc/"; + +"AutoReso_title" = "Resolution"; +"AutoReso_description" = "This module reads the edid information from the monitor attached to the main display. +The module is currently not integrated into trunk and has minimal uses as it stands. +Additionally, the module will patch the vesa modes available in pre intel hd graphics cards to provide proper resolution while booting."; + +"uClibc_title" = "uClibc++"; +"uClibc_description" = "This module provides a minimalistic c++ runtime library for use in other modules. +This does not provide functionality by itself, instead it is used to allow for the c++ language to be used in other modules. +Please note that rtti and exceptions has both been disabled. +Source: http://cxx.uclibc.org/ +Dependencies: klibc"; + +"Keylayout_title" = "Keylayout"; +"Keylayout_description" = "Ce module permet de changer le plan de codage du clavier."; + +// Utility +"Utility_title" = "Utilitaires"; +"Utility_description" = "Fichiers optionnels pour aider lors de l'installation"; + +"PrefPanel_title" = "Panneau de Préferences"; +"PrefPanel_description" = "Installe le Panneau de Préférences pour Chameleon."; + +"SMBIOSDefault_title" = "SMBIOS.plist"; +"SMBIOSDefault_description" = "Copie un exemple de smbios.plist dans /Extra/Configuration."; + +"Documentation_title" = "Documentation"; +"Documentation_description" = "Installe le manuel d'installation et d'utilisation de Chameleon"; + +// Options +"Options_title" = "Boot Options"; +"Options_description" = "Create an /Extra/org.chameleon.Boot.plist and select your desired options to control Chameleon's settings."; + +"arch_title" = "arch=i386"; +"arch_description" = "Boots the kernel in 32bit mode rather than the default 64bit mode."; + +"InstantMenu_title" = "InstantMenu=Yes"; +"InstantMenu_description" = "Display the partition selection screen without showing the timeout screen."; + +"QuietBoot_title" = "QuietBoot=Yes"; +"QuietBoot_description" = "Enable quiet boot mode (no messages or prompt)."; + +"RestartFix_title" = "RestartFix=No"; +"RestartFix_description" = "Disables the automatically enabled restart fix."; + +"ShowInfo_title" = "ShowInfo=No"; +"ShowInfo_description" = "Disables display of partition and resolution details."; + +"DropSSDT_title" = "DropSSDT=Yes"; +"DropSSDT_description" = "Discard the motherboard's built-in SSDT tables."; + +"EthernetBuiltIn_title" = "EthernetBuiltIn=Yes"; +"EthernetBuiltIn_description" = "ajoute EthernetBuiltIn=y au fichier com.apple.Boot.plist, cette option ajoutera 'built-in' a votre carte ethernet."; + +"GraphicsEnabler_title" = "GraphicsEnabler=Yes"; +"GraphicsEnabler_description" = "Enables the option to autodetect NVIDIA based GPUs and inject the correct info."; + +"EnableC2State_title" = "EnableC2State=Yes"; +"EnableC2State_description" = "Enable specific Processor power state, C2."; + +"EnableC3State_title" = "EnableC3State=Yes"; +"EnableC3State_description" = "Enable specific Processor power state, C3."; + +"EnableC4State_title" = "EnableC4State=Yes"; +"EnableC4State_description" = "Enable specific Processor power state, C4."; + +// Advanced +"Advanced_title" = "Advanced"; +"Advanced_description" = "Select your advanced desired options to control Chameleon's settings."; + +"Npci_title" = "npci=0x2000"; +"Npci_description" = "Set the flag npci=0x2000 for the Kernel Flags"; + +"BootBanner_title" = "BootBanner=No"; +"BootBanner_description" = "Hides Chameleon's boot banner in GUI."; + +"LegacyLogo_title" = "LegacyLogo=Yes"; +"LegacyLogo_description" = "Use the legacy (grey on white) apple logo on the boot screen rather than the boot.png in the theme."; + +"SMBIOSdefaults_title" = "SMBIOSdefaults=Yes"; +"SMBIOSdefaults_description" = "Enables SMBIOSdefaults options."; + +"UseAtiROM_title" = "UseAtiROM=Yes"; +"UseAtiROM_description" = "Enables UseAtiROM options."; + +"UseNvidiaROM_title" = "UseNvidiaROM=Yes"; +"UseNvidiaROM_description" = "Enables UseNvidiaROM options."; + +"Wait_title" = "Wait=Yes"; +"Wait_description" = "Pauses the boot process after Chameleon has finished it's setup then waits for a key press before it starts the mach kernel. Useful when combined with verbose boot for troubleshooting."; + +"Wake_title" = "Wake=Yes"; +"Wake_description" = "Attempts to load the sleep image saved from last hibernation."; + +"GUI_title" = "GUI=No"; +"GUI_description" = "Désactive l'interface graphique."; + +"VBIOS_title" = "VBIOS=Yes"; +"VBIOS_description" = "Enables VBIOS option"; + +"GenerateCStates_title" = "Generate C-States=Yes"; +"GenerateCStates_description" = "Enable auto generation of processor idle sleep states (C-States)."; + +"GeneratePStates_title" = "Generate P-States=Yes"; +"GeneratePStates_description" = "Enable auto generation of processor power performance states (P-States)."; + +"CSTUsingSystemIO_title" = "New - Generate C-States=Yes"; +"CSTUsingSystemIO_description" = "New C-State _CST generation method using SystemIO registers instead of FixedHW."; + +"ForceHPET_title" = "ForceHPET=Yes"; +"ForceHPET_description" = "ajoute ForceHPET=y to com.apple.Boot.plist, Cette option active HPET sur les chipsets intel,(pour les bios qui n'ont pas cette options)."; + +"ForceWake_title" = "ForceWake=Yes"; +"ForceWake_description" = "réveille forcé, (ajoute l'option ForceWake=y au fichier com.apple.Boot.plist)"; + +"EHCIacquire_title" = "EHCIacquire=Yes"; +"EHCIacquire_description" = "fixe certains problème de branchement usb a chaud et de reconnaissance usb2 !"; + +"UHCIreset_title" = "UHCIreset=Yes"; +"UHCIreset_description" = "fixe quelques rares problèmes de detection usb"; + +"UseMemDetect_title" = "UseMemDetect=No"; +"UseMemDetect_description" = "Disables the automatically enabled RAM recognition."; + +// KeyLayout +"KeyLayout_title" = "KeyLayout"; +"KeyLayout_description" = "Fixe le plan de codage du clavier à utiliser"; + +"mac-de_title" = "Clavier Mac Allemand"; +"mac-de_description" = "Utilise le plan de codage pour un clavier Mac Allemand"; + +"mac-fr_title" = "Clavier Mac Français"; +"mac-fr_description" = "Utilise le plan de codage pour un clavier Mac Français"; + +"mac-es_title" = "Clavier Mac Espagnol"; +"mac-es_description" = "Utilise le plan de codage pour un clavier Mac Espagnol"; + +"mac-it_title" = "Clavier Mac Italien"; +"mac-it_description" = "Utilise le plan de codage pour un clavier Mac Italien"; + +"mac-se_title" = "Clavier Mac Suédois"; +"mac-se_description" = "Utilise le plan de codage pour un clavier Mac Suédois"; + +"pc-fr_title" = "Clavier PC Keyboard"; +"pc-fr_description" = "Utilise le plan de codage pour un clavier PC Français"; + +// Resolution +"Resolution_title" = "Resolution"; +"Resolution_description" = "Set the screen resolution of your display"; + +"1024x600x32_title" = "1024x600x32"; +"1024x600x32_description" = "1024x600x32"; + +"1024x768x32_title" = "1024x768x32"; +"1024x768x32_description" = "1024x768x32"; + +"1280x800x32_title" = "1280x800x32"; +"1280x800x32_description" = "1280x800x32"; + +"1280x1024x32_title" = "1280x1024x32"; +"1280x1024x32_description" = "1280x1024x32"; + +"1280x960x32_title" = "1280x960x32"; +"1280x960x32_description" = "1280x960x32"; + +"1440x900x32_title" = "1440x900x32"; +"1440x900x32_description" = "1440x900x32"; + +"1600x900x32_title" = "1600x900x32"; +"1600x900x32_description" = "1600x900x32"; + +"1680x1050x32_title" = "1680x1050x32"; +"1680x1050x32_description" = "1680x1050x32"; + +"1920x1080x32_title" = "1920x1080x32"; +"1920x1080x32_description" = "1920x1080x32"; + +"1920x1200x32_title" = "1920x1200x32"; +"1920x1200x32_description" = "1920x1200x32"; + +// Themes +"Themes_title" = "Themes"; +"Themes_description" = "Une collection de themes samplé +More themes can be found at http://forum.voodooprojects.org/index.php/board,7.0.html"; + +"Embed_title" = "Embed"; +"Embed_description" = "A smaller simple version of the new default theme used when building a version of Chameleon which requires an embedded theme. "; + +"Legacy_title" = "Legacy"; +"Legacy_description" = "Chameleon's previous default theme"; + +"Default_title" = "Standard"; +"Default_description" = "Ce theme est codé directement dans le fichier Boot, inclu ici pour vous comme base de customisation."; + +// Extras +"Extras_title" = "Extras"; +"Extras_description" = "une collection d'addons utiles"; + +"SMBios_title" = "SMBIOS Override"; +"SMBios_description" = "Installe le fichier de configuration SMBIOS smbios.plist into Extra"; + +// Error strings +"ERROR_BOOTVOL" = "Ce logiciel doit être installé sur le volume de démmarrage."; +"ERROR_INSTALL" = "Ce volume ne remplit pas les conditions requises pour cette mise à jour."; + +"Newer_Package_Installed_message" = "Une version plus récente de Chameleon est déjà installée"; +"Intel_Mac_message" = "Ce logiciel ne peut être installé sur cette ordinateur."; + \ No newline at end of file Index: branches/azimutz/trunkAutoResolution/package/Resources/fr.lproj/Welcome.rtfd/TXT.rtf =================================================================== --- branches/azimutz/trunkAutoResolution/package/Resources/fr.lproj/Welcome.rtfd/TXT.rtf (revision 0) +++ branches/azimutz/trunkAutoResolution/package/Resources/fr.lproj/Welcome.rtfd/TXT.rtf (revision 1540) @@ -0,0 +1,36 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1038\cocoasubrtf360 +{\fonttbl\f0\fnil\fcharset0 LucidaGrande;} +{\colortbl;\red255\green255\blue255;\red65\green78\blue255;\red0\green0\blue255;} +\margl1440\margr1440\vieww11660\viewh12980\viewkind0 +\pard\ri0\qc + +\f0\b\fs72 \cf0 Chameleon +\fs50 \ + +\fs26 v%CHAMELEONVERSION% r%CHAMELEONREVISION% +\fs50 \ +\pard\ri0\ql\qnatural + +\fs26 \cf0 \ +\pard\ri0\qc + +\fs50 \cf2 %CHAMELEONSTAGE% +\fs26 \cf0 \ +\pard\ri0\ql\qnatural +\cf0 \ +D\'e9veloppeurs : %DEVELOP%\ +\ +Remerciements \'e0 : %CREDITS%\ +\pard\tx360\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural + +\b0\fs30 \cf0 \ +\pard\ri0\ql\qnatural + +\b\fs26 \cf0 Paquet r\'e9alis\'e9 par : %PKGDEV% +\b0\fs30 \ +\pard\tx360\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural + +\fs26 \cf0 Copyright \'a9 2011 +\b \cf3 Traduit par : jrcs} Index: branches/azimutz/trunkAutoResolution/package/Resources/fr.lproj/Conclusion.rtfd/TXT.rtf =================================================================== --- branches/azimutz/trunkAutoResolution/package/Resources/fr.lproj/Conclusion.rtfd/TXT.rtf (revision 0) +++ branches/azimutz/trunkAutoResolution/package/Resources/fr.lproj/Conclusion.rtfd/TXT.rtf (revision 1540) @@ -0,0 +1,34 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1038\cocoasubrtf350 +{\fonttbl\f0\fnil\fcharset0 LucidaGrande;} +{\colortbl;\red255\green255\blue255;\red65\green78\blue255;\red255\green0\blue0;} +\margl1440\margr1440\vieww11660\viewh12980\viewkind0 +\pard\ri0\qc + +\f0\b\fs72 \cf0 Chameleon +\fs50 \ + +\fs26 v%CHAMELEONVERSION% r%CHAMELEONREVISION% +\fs50 \ +\ +\cf2 %CHAMELEONSTAGE%\cf0 \ +\pard\ri0\ql\qnatural + +\fs26 \cf0 \ +\pard\ri0\qc + +\fs50 \cf3 Installation Termin\'e9e ! +\b0\fs26 \cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural + +\fs18 \cf0 \ +{\field{\*\fldinst{HYPERLINK "http://chameleon.osx86.hu/"}}{\fldrslt +\fs26 http://chameleon.osx86.hu/}} +\fs26 \ +{\field{\*\fldinst{HYPERLINK "http://forum.voodooprojects.org/index.php"}}{\fldrslt http://forum.voodooprojects.org/index.php}} +\b \ +\pard\tx360\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural + +\b0\fs30 \cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural + +\fs26 \cf0 Copyright \'a9 2011} Index: branches/azimutz/trunkAutoResolution/package/Resources/fr.lproj/License.rtf =================================================================== --- branches/azimutz/trunkAutoResolution/package/Resources/fr.lproj/License.rtf (revision 0) +++ branches/azimutz/trunkAutoResolution/package/Resources/fr.lproj/License.rtf (revision 1540) @@ -0,0 +1,350 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1038\cocoasubrtf350 +{\fonttbl\f0\fmodern\fcharset0 Courier-Bold;\f1\fmodern\fcharset0 Courier;} +{\colortbl;\red255\green255\blue255;} +\paperw12240\paperh15840\vieww22060\viewh18360\viewkind0 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural + +\f0\b\fs40 \cf0 APPLE PUBLIC SOURCE LICENSE \ + +\fs26 Version 2.0 - August 6, 2003\ +\ + +\f1\b0 Please read this License carefully before downloading this software. By downloading or using this software, you are agreeing to be bound by the terms of this License. If you do not or cannot agree to the terms of this License, please do not download or use the software.\ +\ +1. General; Definitions. This License applies to any program or other work which Apple Computer, Inc. ("Apple") makes publicly available and which contains a notice placed by Apple identifying such program or work as "Original Code" and stating that it is subject to the terms of this Apple Public Source License version 2.0 ("License"). As used in this License:\ +\ +1.1 "Applicable Patent Rights" mean: (a) in the case where Apple is the grantor of rights, (i) claims of patents that are now or hereafter acquired, owned by or assigned to Apple and (ii) that cover subject matter contained in the Original Code, but only to the extent necessary to use, reproduce and/or distribute the Original Code without infringement; and (b) in the case where You are the grantor of rights, (i) claims of patents that are now or hereafter acquired, owned by or assigned to You and (ii) that cover subject matter in Your Modifications, taken alone or in combination with Original Code.\ +\ +1.2 "Contributor" means any person or entity that creates or contributes to the creation of Modifications.\ +\ +1.3 "Covered Code" means the Original Code, Modifications, the combination of Original Code and any Modifications, and/or any respective portions thereof.\ +\ +1.4 "Externally Deploy" means: (a) to sublicense, distribute or otherwise make Covered Code available, directly or indirectly, to anyone other than You; and/or (b) to use Covered Code, alone or as part of a Larger Work, in any way to provide a service, including but not limited to delivery of content, through electronic communication with a client other than You.\ +\ +1.5 "Larger Work" means a work which combines Covered Code or portions thereof with code not governed by the terms of this License.\ +\ +1.6 "Modifications" mean any addition to, deletion from, and/or change\ +to, the substance and/or structure of the Original Code, any previous\ +Modifications, the combination of Original Code and any previous\ +Modifications, and/or any respective portions thereof. When code is\ +released as a series of files, a Modification is: (a) any addition to\ +or deletion from the contents of a file containing Covered Code;\ +and/or (b) any new file or other representation of computer program\ +statements that contains any part of Covered Code.\ +\ +1.7 "Original Code" means (a) the Source Code of a program or other\ +work as originally made available by Apple under this License,\ +including the Source Code of any updates or upgrades to such programs\ +or works made available by Apple under this License, and that has been\ +expressly identified by Apple as such in the header file(s) of such\ +work; and (b) the object code compiled from such Source Code and\ +originally made available by Apple under this License.\ +\ +1.8 "Source Code" means the human readable form of a program or other\ +work that is suitable for making modifications to it, including all\ +modules it contains, plus any associated interface definition files,\ +scripts used to control compilation and installation of an executable\ +(object code).\ +\ +1.9 "You" or "Your" means an individual or a legal entity exercising\ +rights under this License. For legal entities, "You" or "Your"\ +includes any entity which controls, is controlled by, or is under\ +common control with, You, where "control" means (a) the power, direct\ +or indirect, to cause the direction or management of such entity,\ +whether by contract or otherwise, or (b) ownership of fifty percent\ +(50%) or more of the outstanding shares or beneficial ownership of\ +such entity.\ +\ +2. Permitted Uses; Conditions & Restrictions. Subject to the terms\ +and conditions of this License, Apple hereby grants You, effective on\ +the date You accept this License and download the Original Code, a\ +world-wide, royalty-free, non-exclusive license, to the extent of\ +Apple's Applicable Patent Rights and copyrights covering the Original\ +Code, to do the following:\ +\ +2.1 Unmodified Code. You may use, reproduce, display, perform,\ +internally distribute within Your organization, and Externally Deploy\ +verbatim, unmodified copies of the Original Code, for commercial or\ +non-commercial purposes, provided that in each instance:\ +\ +(a) You must retain and reproduce in all copies of Original Code the\ +copyright and other proprietary notices and disclaimers of Apple as\ +they appear in the Original Code, and keep intact all notices in the\ +Original Code that refer to this License; and\ +\ +(b) You must include a copy of this License with every copy of Source\ +Code of Covered Code and documentation You distribute or Externally\ +Deploy, and You may not offer or impose any terms on such Source Code\ +that alter or restrict this License or the recipients' rights\ +hereunder, except as permitted under Section 6.\ +\ +2.2 Modified Code. You may modify Covered Code and use, reproduce,\ +display, perform, internally distribute within Your organization, and\ +Externally Deploy Your Modifications and Covered Code, for commercial\ +or non-commercial purposes, provided that in each instance You also\ +meet all of these conditions:\ +\ +(a) You must satisfy all the conditions of Section 2.1 with respect to\ +the Source Code of the Covered Code;\ +\ +(b) You must duplicate, to the extent it does not already exist, the\ +notice in Exhibit A in each file of the Source Code of all Your\ +Modifications, and cause the modified files to carry prominent notices\ +stating that You changed the files and the date of any change; and\ +\ +(c) If You Externally Deploy Your Modifications, You must make\ +Source Code of all Your Externally Deployed Modifications either\ +available to those to whom You have Externally Deployed Your\ +Modifications, or publicly available. Source Code of Your Externally\ +Deployed Modifications must be released under the terms set forth in\ +this License, including the license grants set forth in Section 3\ +below, for as long as you Externally Deploy the Covered Code or twelve\ +(12) months from the date of initial External Deployment, whichever is\ +longer. You should preferably distribute the Source Code of Your\ +Externally Deployed Modifications electronically (e.g. download from a\ +web site).\ +\ +2.3 Distribution of Executable Versions. In addition, if You\ +Externally Deploy Covered Code (Original Code and/or Modifications) in\ +object code, executable form only, You must include a prominent\ +notice, in the code itself as well as in related documentation,\ +stating that Source Code of the Covered Code is available under the\ +terms of this License with information on how and where to obtain such\ +Source Code.\ +\ +2.4 Third Party Rights. You expressly acknowledge and agree that\ +although Apple and each Contributor grants the licenses to their\ +respective portions of the Covered Code set forth herein, no\ +assurances are provided by Apple or any Contributor that the Covered\ +Code does not infringe the patent or other intellectual property\ +rights of any other entity. Apple and each Contributor disclaim any\ +liability to You for claims brought by any other entity based on\ +infringement of intellectual property rights or otherwise. As a\ +condition to exercising the rights and licenses granted hereunder, You\ +hereby assume sole responsibility to secure any other intellectual\ +property rights needed, if any. For example, if a third party patent\ +license is required to allow You to distribute the Covered Code, it is\ +Your responsibility to acquire that license before distributing the\ +Covered Code.\ +\ +3. Your Grants. In consideration of, and as a condition to, the\ +licenses granted to You under this License, You hereby grant to any\ +person or entity receiving or distributing Covered Code under this\ +License a non-exclusive, royalty-free, perpetual, irrevocable license,\ +under Your Applicable Patent Rights and other intellectual property\ +rights (other than patent) owned or controlled by You, to use,\ +reproduce, display, perform, modify, sublicense, distribute and\ +Externally Deploy Your Modifications of the same scope and extent as\ +Apple's licenses under Sections 2.1 and 2.2 above.\ +\ +4. Larger Works. You may create a Larger Work by combining Covered\ +Code with other code not governed by the terms of this License and\ +distribute the Larger Work as a single product. In each such instance,\ +You must make sure the requirements of this License are fulfilled for\ +the Covered Code or any portion thereof.\ +\ +5. Limitations on Patent License. Except as expressly stated in\ +Section 2, no other patent rights, express or implied, are granted by\ +Apple herein. Modifications and/or Larger Works may require additional\ +patent licenses from Apple which Apple may grant in its sole\ +discretion.\ +\ +6. Additional Terms. You may choose to offer, and to charge a fee for,\ +warranty, support, indemnity or liability obligations and/or other\ +rights consistent with the scope of the license granted herein\ +("Additional Terms") to one or more recipients of Covered Code.\ +However, You may do so only on Your own behalf and as Your sole\ +responsibility, and not on behalf of Apple or any Contributor. You\ +must obtain the recipient's agreement that any such Additional Terms\ +are offered by You alone, and You hereby agree to indemnify, defend\ +and hold Apple and every Contributor harmless for any liability\ +incurred by or claims asserted against Apple or such Contributor by\ +reason of any such Additional Terms.\ +\ +7. Versions of the License. Apple may publish revised and/or new\ +versions of this License from time to time. Each version will be given\ +a distinguishing version number. Once Original Code has been published\ +under a particular version of this License, You may continue to use it\ +under the terms of that version. You may also choose to use such\ +Original Code under the terms of any subsequent version of this\ +License published by Apple. No one other than Apple has the right to\ +modify the terms applicable to Covered Code created under this\ +License.\ +\ +8. NO WARRANTY OR SUPPORT. The Covered Code may contain in whole or in\ +part pre-release, untested, or not fully tested works. The Covered\ +Code may contain errors that could cause failures or loss of data, and\ +may be incomplete or contain inaccuracies. You expressly acknowledge\ +and agree that use of the Covered Code, or any portion thereof, is at\ +Your sole and entire risk. THE COVERED CODE IS PROVIDED "AS IS" AND\ +WITHOUT WARRANTY, UPGRADES OR SUPPORT OF ANY KIND AND APPLE AND\ +APPLE'S LICENSOR(S) (COLLECTIVELY REFERRED TO AS "APPLE" FOR THE\ +PURPOSES OF SECTIONS 8 AND 9) AND ALL CONTRIBUTORS EXPRESSLY DISCLAIM\ +ALL WARRANTIES AND/OR CONDITIONS, EXPRESS OR IMPLIED, INCLUDING, BUT\ +NOT LIMITED TO, THE IMPLIED WARRANTIES AND/OR CONDITIONS OF\ +MERCHANTABILITY, OF SATISFACTORY QUALITY, OF FITNESS FOR A PARTICULAR\ +PURPOSE, OF ACCURACY, OF QUIET ENJOYMENT, AND NONINFRINGEMENT OF THIRD\ +PARTY RIGHTS. APPLE AND EACH CONTRIBUTOR DOES NOT WARRANT AGAINST\ +INTERFERENCE WITH YOUR ENJOYMENT OF THE COVERED CODE, THAT THE\ +FUNCTIONS CONTAINED IN THE COVERED CODE WILL MEET YOUR REQUIREMENTS,\ +THAT THE OPERATION OF THE COVERED CODE WILL BE UNINTERRUPTED OR\ +ERROR-FREE, OR THAT DEFECTS IN THE COVERED CODE WILL BE CORRECTED. NO\ +ORAL OR WRITTEN INFORMATION OR ADVICE GIVEN BY APPLE, AN APPLE\ +AUTHORIZED REPRESENTATIVE OR ANY CONTRIBUTOR SHALL CREATE A WARRANTY.\ +You acknowledge that the Covered Code is not intended for use in the\ +operation of nuclear facilities, aircraft navigation, communication\ +systems, or air traffic control machines in which case the failure of\ +the Covered Code could lead to death, personal injury, or severe\ +physical or environmental damage.\ +\ +9. LIMITATION OF LIABILITY. TO THE EXTENT NOT PROHIBITED BY LAW, IN NO\ +EVENT SHALL APPLE OR ANY CONTRIBUTOR BE LIABLE FOR ANY INCIDENTAL,\ +SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES ARISING OUT OF OR RELATING\ +TO THIS LICENSE OR YOUR USE OR INABILITY TO USE THE COVERED CODE, OR\ +ANY PORTION THEREOF, WHETHER UNDER A THEORY OF CONTRACT, WARRANTY,\ +TORT (INCLUDING NEGLIGENCE), PRODUCTS LIABILITY OR OTHERWISE, EVEN IF\ +APPLE OR SUCH CONTRIBUTOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH\ +DAMAGES AND NOTWITHSTANDING THE FAILURE OF ESSENTIAL PURPOSE OF ANY\ +REMEDY. SOME JURISDICTIONS DO NOT ALLOW THE LIMITATION OF LIABILITY OF\ +INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS LIMITATION MAY NOT APPLY\ +TO YOU. In no event shall Apple's total liability to You for all\ +damages (other than as may be required by applicable law) under this\ +License exceed the amount of fifty dollars ($50.00).\ +\ +10. Trademarks. This License does not grant any rights to use the\ +trademarks or trade names "Apple", "Apple Computer", "Mac", "Mac OS",\ +"QuickTime", "QuickTime Streaming Server" or any other trademarks,\ +service marks, logos or trade names belonging to Apple (collectively\ +"Apple Marks") or to any trademark, service mark, logo or trade name\ +belonging to any Contributor. You agree not to use any Apple Marks in\ +or as part of the name of products derived from the Original Code or\ +to endorse or promote products derived from the Original Code other\ +than as expressly permitted by and in strict compliance at all times\ +with Apple's third party trademark usage guidelines which are posted\ +at http://www.apple.com/legal/guidelinesfor3rdparties.html.\ +\ +11. Ownership. Subject to the licenses granted under this License,\ +each Contributor retains all rights, title and interest in and to any\ +Modifications made by such Contributor. Apple retains all rights,\ +title and interest in and to the Original Code and any Modifications\ +made by or on behalf of Apple ("Apple Modifications"), and such Apple\ +Modifications will not be automatically subject to this License. Apple\ +may, at its sole discretion, choose to license such Apple\ +Modifications under this License, or on different terms from those\ +contained in this License or may choose not to license them at all.\ +\ +12. Termination.\ +\ +12.1 Termination. This License and the rights granted hereunder will\ +terminate:\ +\ +(a) automatically without notice from Apple if You fail to comply with\ +any term(s) of this License and fail to cure such breach within 30\ +days of becoming aware of such breach;\ +\ +(b) immediately in the event of the circumstances described in Section\ +13.5(b); or\ +\ +(c) automatically without notice from Apple if You, at any time during\ +the term of this License, commence an action for patent infringement\ +against Apple; provided that Apple did not first commence\ +an action for patent infringement against You in that instance.\ +\ +12.2 Effect of Termination. Upon termination, You agree to immediately\ +stop any further use, reproduction, modification, sublicensing and\ +distribution of the Covered Code. All sublicenses to the Covered Code\ +which have been properly granted prior to termination shall survive\ +any termination of this License. Provisions which, by their nature,\ +should remain in effect beyond the termination of this License shall\ +survive, including but not limited to Sections 3, 5, 8, 9, 10, 11,\ +12.2 and 13. No party will be liable to any other for compensation,\ +indemnity or damages of any sort solely as a result of terminating\ +this License in accordance with its terms, and termination of this\ +License will be without prejudice to any other right or remedy of\ +any party.\ +\ +13. Miscellaneous.\ +\ +13.1 Government End Users. The Covered Code is a "commercial item" as\ +defined in FAR 2.101. Government software and technical data rights in\ +the Covered Code include only those rights customarily provided to the\ +public as defined in this License. This customary commercial license\ +in technical data and software is provided in accordance with FAR\ +12.211 (Technical Data) and 12.212 (Computer Software) and, for\ +Department of Defense purchases, DFAR 252.227-7015 (Technical Data --\ +Commercial Items) and 227.7202-3 (Rights in Commercial Computer\ +Software or Computer Software Documentation). Accordingly, all U.S.\ +Government End Users acquire Covered Code with only those rights set\ +forth herein.\ +\ +13.2 Relationship of Parties. This License will not be construed as\ +creating an agency, partnership, joint venture or any other form of\ +legal association between or among You, Apple or any Contributor, and\ +You will not represent to the contrary, whether expressly, by\ +implication, appearance or otherwise.\ +\ +13.3 Independent Development. Nothing in this License will impair\ +Apple's right to acquire, license, develop, have others develop for\ +it, market and/or distribute technology or products that perform the\ +same or similar functions as, or otherwise compete with,\ +Modifications, Larger Works, technology or products that You may\ +develop, produce, market or distribute.\ +\ +13.4 Waiver; Construction. Failure by Apple or any Contributor to\ +enforce any provision of this License will not be deemed a waiver of\ +future enforcement of that or any other provision. Any law or\ +regulation which provides that the language of a contract shall be\ +construed against the drafter will not apply to this License.\ +\ +13.5 Severability. (a) If for any reason a court of competent\ +jurisdiction finds any provision of this License, or portion thereof,\ +to be unenforceable, that provision of the License will be enforced to\ +the maximum extent permissible so as to effect the economic benefits\ +and intent of the parties, and the remainder of this License will\ +continue in full force and effect. (b) Notwithstanding the foregoing,\ +if applicable law prohibits or restricts You from fully and/or\ +specifically complying with Sections 2 and/or 3 or prevents the\ +enforceability of either of those Sections, this License will\ +immediately terminate and You must immediately discontinue any use of\ +the Covered Code and destroy all copies of it that are in your\ +possession or control.\ +\ +13.6 Dispute Resolution. Any litigation or other dispute resolution\ +between You and Apple relating to this License shall take place in the\ +Northern District of California, and You and Apple hereby consent to\ +the personal jurisdiction of, and venue in, the state and federal\ +courts within that District with respect to this License. The\ +application of the United Nations Convention on Contracts for the\ +International Sale of Goods is expressly excluded.\ +\ +13.7 Entire Agreement; Governing Law. This License constitutes the\ +entire agreement between the parties with respect to the subject\ +matter hereof. This License shall be governed by the laws of the\ +United States and the State of California, except that body of\ +California law concerning conflicts of law.\ +\ +Where You are located in the province of Quebec, Canada, the following\ +clause applies: The parties hereby confirm that they have requested\ +that this License and all related documents be drafted in English. Les\ +parties ont exige que le present contrat et tous les documents\ +connexes soient rediges en anglais.\ +\ +EXHIBIT A.\ +\ +"Portions Copyright (c) 1999-2003 Apple Computer, Inc. All Rights\ +Reserved.\ +\ +This file contains Original Code and/or Modifications of Original Code\ +as defined in and that are subject to the Apple Public Source License\ +Version 2.0 (the 'License'). You may not use this file except in\ +compliance with the License. Please obtain a copy of the License at\ +http://www.opensource.apple.com/apsl/ and read it before using this\ +file.\ +\ +The Original Code and all software distributed under the License are\ +distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER\ +EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,\ +INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,\ +FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.\ +Please see the License for the specific language governing rights and\ +limitations under the License." } \ No newline at end of file Index: branches/azimutz/trunkAutoResolution/package/Resources/de.lproj/Localizable.strings =================================================================== --- branches/azimutz/trunkAutoResolution/package/Resources/de.lproj/Localizable.strings (revision 1539) +++ branches/azimutz/trunkAutoResolution/package/Resources/de.lproj/Localizable.strings (revision 1540) @@ -39,6 +39,9 @@ Quelldatei: http://cxx.uclibc.org/ Abhängigkeiten: klibc"; +"Keylayout_title" = "Keylayout"; +"Keylayout_description" = "This module permits the user to define the keyboard key mappings."; + // Utility "Utility_title" = "Nützliches"; "Utility_description" = "Optionale Bestandteile"; @@ -147,6 +150,28 @@ "UseMemDetect_title" = "Benutze MemDetect=Nein"; "UseMemDetect_description" = "Übergeht die automatische Erkennung des Arbeitsspeichers."; +// KeyLayout +"KeyLayout_title" = "KeyLayout"; +"KeyLayout_description" = "Set keylayout to use"; + +"mac-de_title" = "German Mac Keyboard"; +"mac-de_description" = "Use the keyboard layout for a German Mac keyboard"; + +"mac-es_title" = "Spanish Mac Keyboard"; +"mac-es_description" = "Use the keyboard layout for a Spanish Mac keyboard"; + +"mac-fr_title" = "French Mac Keyboard"; +"mac-fr_description" = "Use the keyboard layout for a French Mac keyboard"; + +"mac-it_title" = "Italian Mac Keyboard"; +"mac-it_description" = "Use the keyboard layout for an Italian Mac keyboard"; + +"mac-se_title" = "Swedish Mac Keyboard"; +"mac-se_description" = "Use the keyboard layout for a Swedish Mac keyboard"; + +"pc-fr_title" = "French PC Keyboard"; +"pc-fr_description" = "Use the keyboard layout for a French PC keyboard"; + // Resolution "Resolution_title" = "Bildschirmauflösung"; "Resolution_description" = "Setzt die Bildschirmauflösung für den Bootprozess."; Index: branches/azimutz/trunkAutoResolution/package/buildpkg.sh =================================================================== --- branches/azimutz/trunkAutoResolution/package/buildpkg.sh (revision 1539) +++ branches/azimutz/trunkAutoResolution/package/buildpkg.sh (revision 1540) @@ -47,9 +47,9 @@ rm -R -f "${1}" echo "" -echo -e $COL_BLACK" ----------------------------------"$COL_RESET -echo -e $COL_BLACK" Building $packagename Install Package"$COL_RESET -echo -e $COL_BLACK" ----------------------------------"$COL_RESET +echo -e $COL_CYAN" ----------------------------------"$COL_RESET +echo -e $COL_CYAN" Building $packagename Install Package"$COL_RESET +echo -e $COL_CYAN" ----------------------------------"$COL_RESET echo "" outline[$((outlinecount++))]="${indent[$xmlindent]}" @@ -117,6 +117,7 @@ # klibc.dylib # # Resolution.dylib # # uClibcxx.dylib # + # Keylayout.dylib # ############################### if [ "$(ls -A "${1%/*}/i386/modules")" ]; then { @@ -143,6 +144,27 @@ } fi # - + if [ -e ${1%/*}/i386/modules/Keylayout.dylib ]; then + { + mkdir -p ${1}/Keylayout/Root/Extra/{modules,Keymaps} + mkdir -p ${1}/Keylayout/Root/usr/bin + layout_src_dir="${1%/sym/*}/i386/modules/Keylayout/layouts/layouts-src" + if [ -d "$layout_src_dir" ];then + # Create a tar.gz from layout sources + (cd "$layout_src_dir"; \ + tar czf "${1}/Keylayout/Root/Extra/Keymaps/layouts-src.tar.gz" README *.slt) + fi + # Adding module + ditto --noextattr --noqtn ${1%/*}/i386/modules/Keylayout.dylib ${1}/Keylayout/Root/Extra/modules + # Adding Keymaps + ditto --noextattr --noqtn ${1%/sym/*}/Keymaps ${1}/Keylayout/Root/Extra/Keymaps + # Adding tools + ditto --noextattr --noqtn ${1%/*}/i386/cham-mklayout ${1}/Keylayout/Root/usr/bin + echo " [BUILD] Keylayout " + buildpackage "${1}/Keylayout" "/" "" "start_selected=\"true\"" >/dev/null 2>&1 + } + fi +# - if [ -e ${1%/*}/i386/modules/uClibcxx.dylib ]; then { mkdir -p ${1}/uClibc/Root @@ -225,6 +247,26 @@ done # End build base options packages + # build KeyLayout option packages + echo "================= Keymaps Options =================" + outline[$((outlinecount++))]="${indent[$xmlindent]}\t" + choices[$((choicescount++))]="\n\n" + ((xmlindent++)) + packagesidentity="org.chameleon.options.keylayout" + keymaps=($( find "${1%/sym/*}/Keymaps" -type f -depth 1 -name '*.lyt' | sed 's|.*/||;s|\.lyt||' )) + for (( i = 0 ; i < ${#keymaps[@]} ; i++ )) + do + mkdir -p "${1}/${keymaps[$i]}/Root/" + mkdir -p "${1}/${keymaps[$i]}/Scripts/" + sed "s/@@KEYMAP@@/${keymaps[$i]}/g" "${pkgroot}/Scripts/Keymaps/postinstall.in" > "${1}/${keymaps[$i]}/Scripts/postinstall" && \ + chmod +rx "${1}/${keymaps[$i]}/Scripts/postinstall" + echo " [BUILD] ${keymaps[$i]} " + buildpackage "${1}/${keymaps[$i]}" "/tmpcham" "" "start_selected=\"false\"" >/dev/null 2>&1 + done + ((xmlindent--)) + outline[$((outlinecount++))]="${indent[$xmlindent]}\t" + # End build KeyLayout option packages + # build resolution packages echo "================= Res. Options =================" outline[$((outlinecount++))]="${indent[$xmlindent]}\t" @@ -244,7 +286,7 @@ ((xmlindent--)) outline[$((outlinecount++))]="${indent[$xmlindent]}\t" # End build resolution packages - + # build Advanced packages echo "================= Adv. Options =================" outline[$((outlinecount++))]="${indent[$xmlindent]}\t" @@ -270,7 +312,7 @@ outline[$((outlinecount++))]="${indent[$xmlindent]}\t" # End build options packages - + # build theme packages echo "================= Themes =================" outline[$((outlinecount++))]="${indent[$xmlindent]}\t" @@ -460,17 +502,17 @@ echo "MD5 (${packagename// /}-${version}-r${revision}.pkg) = ${md5}" > "${1%/*}/${packagename// /}-${version}-r${revision}.pkg.md5" echo "" - echo -e $COL_BLACK" --------------------------"$COL_RESET - echo -e $COL_BLACK" Building process complete!"$COL_RESET - echo -e $COL_BLACK" --------------------------"$COL_RESET + echo -e $COL_GREEN" --------------------------"$COL_RESET + echo -e $COL_GREEN" Building process complete!"$COL_RESET + echo -e $COL_GREEN" --------------------------"$COL_RESET echo "" - echo -e $COL_BLACK" Build info." - echo -e $COL_BLACK" ===========" - echo -e $COL_BLUE" Package name: "$COL_BLACK"$packagename-${version}-r$revision.pkg"$COL_RESET - echo -e $COL_BLUE" MD5: "$COL_BLACK"$md5"$COL_RESET - echo -e $COL_BLUE" Version: "$COL_BLACK"$version"$COL_RESET - echo -e $COL_BLUE" Stage: "$COL_BLACK"$stage"$COL_RESET - echo -e $COL_BLUE" Date/Time: "$COL_BLACK"$builddate"$COL_RESET + echo -e $COL_GREEN" Build info." + echo -e $COL_GREEN" ===========" + echo -e $COL_BLUE" Package name: "$COL_RESET"$packagename-${version}-r$revision.pkg" + echo -e $COL_BLUE" MD5: "$COL_RESET"$md5" + echo -e $COL_BLUE" Version: "$COL_RESET"$version" + echo -e $COL_BLUE" Stage: "$COL_RESET"$stage" + echo -e $COL_BLUE" Date/Time: "$COL_RESET"$builddate" echo "" } Index: branches/azimutz/trunkAutoResolution/doc/BootHelp.txt =================================================================== --- branches/azimutz/trunkAutoResolution/doc/BootHelp.txt (revision 1539) +++ branches/azimutz/trunkAutoResolution/doc/BootHelp.txt (revision 1540) @@ -72,6 +72,9 @@ and /S/L/E/Extensions.mkext. Default is No but Yes if you use Lion on a Raid partition. + KeyLayout=keymap Use to change the keyboard mapping of the bootloader + (e.g. KeyLayout=mac-fr) + GraphicsEnabler=Yes|No Automatic device-properties generation for gfx cards. AtiConfig= Use a different card config, e.g. AtiConfig=Megalodon. AtiPorts= Specify the number of ports, e.g. AtiPorts=2. @@ -107,6 +110,8 @@ (C-States). GeneratePStates=Yes Enable auto generation of processor power performance states (P-States). + CSTUsingSystemIO=Yes New C-State _CST generation method using SystemIO + registers instead of FixedHW. EnableC2State=Yes Enable specific Processor power state, C2. EnableC3State=Yes Enable specific Processor power state, C3. Index: branches/azimutz/trunkAutoResolution/Makefile =================================================================== --- branches/azimutz/trunkAutoResolution/Makefile (revision 1539) +++ branches/azimutz/trunkAutoResolution/Makefile (revision 1540) @@ -81,6 +81,14 @@ ifdef CONFIG_BDMESG @cp -f ${SYMROOT}/i386/bdmesg ${IMGROOT}/usr/bin endif +ifdef CONFIG_KEYLAYOUT_MODULE + @cp -f ${SYMROOT}/i386/cham-mklayout ${IMGROOT}/usr/bin + @echo "\t[MKDIR] ${IMGROOT}/Extra/Keymaps" + @mkdir -p ${IMGROOT}/Extra/Keymaps + @echo "\t[CP] Keymaps ${IMGROOT}/Extra/Keymaps" + @cp -R -f "Keymaps"/* "${IMGROOT}/Extra/Keymaps/" +endif + @echo "\t[HDIUTIL] ${ISOIMAGE}" @hdiutil makehybrid -iso -joliet -hfs -hfs-volume-name \ ${CDLABEL} -eltorito-boot ${CDBOOT} -no-emul-boot -ov -o \ Property changes on: branches/azimutz/trunkAutoResolution ___________________________________________________________________ Modified: svn:mergeinfo Merged /trunk:r1517-1539 Index: branches/azimutz/trunkGraphicsEnablerModules/Chameleon.xcodeproj/project.pbxproj =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/Chameleon.xcodeproj/project.pbxproj (revision 1539) +++ branches/azimutz/trunkGraphicsEnablerModules/Chameleon.xcodeproj/project.pbxproj (revision 1540) @@ -679,7 +679,6 @@ A3561CAF1414024C00E9B51E /* HelloWorld.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HelloWorld.cpp; sourceTree = ""; }; A3561CB11414024C00E9B51E /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = ""; }; A3561CB31414024C00E9B51E /* modules */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = modules; sourceTree = ""; }; - A3561CB61414024D00E9B51E /* test */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = test; sourceTree = ""; }; A3561CB81414024D00E9B51E /* __ashldi3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = __ashldi3.c; sourceTree = ""; }; A3561CB91414024D00E9B51E /* __ashrdi3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = __ashrdi3.c; sourceTree = ""; }; A3561CBA1414024D00E9B51E /* __clzsi2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = __clzsi2.c; sourceTree = ""; }; @@ -878,7 +877,122 @@ A3561D7F1414024D00E9B51E /* utility.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = utility.cpp; sourceTree = ""; }; A3561D801414024D00E9B51E /* valarray.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = valarray.cpp; sourceTree = ""; }; A3561D811414024D00E9B51E /* vector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = vector.cpp; sourceTree = ""; }; + A3561DA61414296600E9B51E /* Keylayout.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = Keylayout.c; sourceTree = ""; }; + A3561DA71414296600E9B51E /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = ""; }; + A3561DA81414296600E9B51E /* Cconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Cconfig; sourceTree = ""; }; + A35D216F141A73B000969AC0 /* cham-mklayout.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "cham-mklayout.c"; sourceTree = ""; }; + A35D2171141A73B000969AC0 /* mac-de.slt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "mac-de.slt"; sourceTree = ""; }; + A35D2172141A73B000969AC0 /* mac-es.slt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "mac-es.slt"; sourceTree = ""; }; + A35D2173141A73B000969AC0 /* mac-fr.slt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "mac-fr.slt"; sourceTree = ""; }; + A35D2174141A73B000969AC0 /* mac-it.slt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "mac-it.slt"; sourceTree = ""; }; + A35D2175141A73B000969AC0 /* mac-se.slt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "mac-se.slt"; sourceTree = ""; }; + A35D2176141A73B000969AC0 /* pc-fr.slt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "pc-fr.slt"; sourceTree = ""; }; + A35D2177141A73B000969AC0 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = ""; }; + A35D2178141A753E00969AC0 /* README */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = README; sourceTree = ""; }; + A35D2187141A75DC00969AC0 /* slimpkg.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = slimpkg.sh; sourceTree = ""; }; + A35D2188141A75DC00969AC0 /* buildpkg.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = buildpkg.sh; sourceTree = ""; }; + A35D2189141A75DC00969AC0 /* builddmg.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = builddmg.sh; sourceTree = ""; }; A360AA7D14136C1A00084D3F /* Make.rules */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Make.rules; sourceTree = ""; }; + A37D7D4A141B7C6F0069C38B /* background.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = background.tiff; sourceTree = ""; }; + A37D7D4C141B7C6F0069C38B /* de */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = de; path = de.lproj/Conclusion.rtfd; sourceTree = ""; }; + A37D7D4E141B7C6F0069C38B /* de */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = de; path = de.lproj/Description.html; sourceTree = ""; }; + A37D7D50141B7C6F0069C38B /* de */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = de; path = de.lproj/License.rtf; sourceTree = ""; }; + A37D7D52141B7C6F0069C38B /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/Localizable.strings; sourceTree = ""; }; + A37D7D54141B7C6F0069C38B /* de */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = de; path = de.lproj/Welcome.rtfd; sourceTree = ""; }; + A37D7D55141B7C6F0069C38B /* en */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = en; path = en.lproj/Conclusion.rtfd; sourceTree = ""; }; + A37D7D56141B7C6F0069C38B /* en */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = en; path = en.lproj/Description.html; sourceTree = ""; }; + A37D7D57141B7C6F0069C38B /* en */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = en; path = en.lproj/License.rtf; sourceTree = ""; }; + A37D7D58141B7C6F0069C38B /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Localizable.strings; sourceTree = ""; }; + A37D7D59141B7C6F0069C38B /* en */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = en; path = en.lproj/Welcome.rtfd; sourceTree = ""; }; + A37D7D5A141B7C6F0069C38B /* es */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = es; path = es.lproj/Conclusion.rtfd; sourceTree = ""; }; + A37D7D5B141B7C6F0069C38B /* es */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = es; path = es.lproj/Description.html; sourceTree = ""; }; + A37D7D5C141B7C6F0069C38B /* es */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = es; path = es.lproj/License.rtf; sourceTree = ""; }; + A37D7D5D141B7C6F0069C38B /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/Localizable.strings; sourceTree = ""; }; + A37D7D5E141B7C6F0069C38B /* es */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = es; path = es.lproj/Welcome.rtfd; sourceTree = ""; }; + A37D7D5F141B7C6F0069C38B /* fr */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = fr; path = fr.lproj/Conclusion.rtfd; sourceTree = ""; }; + A37D7D60141B7C6F0069C38B /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = fr; path = fr.lproj/Description.html; sourceTree = ""; }; + A37D7D61141B7C6F0069C38B /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = fr; path = fr.lproj/License.rtf; sourceTree = ""; }; + A37D7D62141B7C6F0069C38B /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/Localizable.strings; sourceTree = ""; }; + A37D7D63141B7C6F0069C38B /* fr */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = fr; path = fr.lproj/Welcome.rtfd; sourceTree = ""; }; + A37D7D64141B7C6F0069C38B /* hr-HR */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = "hr-HR"; path = "hr-HR.lproj/Conclusion.rtfd"; sourceTree = ""; }; + A37D7D65141B7C6F0069C38B /* hr-HR */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = "hr-HR"; path = "hr-HR.lproj/Description.html"; sourceTree = ""; }; + A37D7D66141B7C6F0069C38B /* hr-HR */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = "hr-HR"; path = "hr-HR.lproj/License.rtf"; sourceTree = ""; }; + A37D7D67141B7C6F0069C38B /* hr-HR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "hr-HR"; path = "hr-HR.lproj/Localizable.strings"; sourceTree = ""; }; + A37D7D68141B7C6F0069C38B /* hr-HR */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = "hr-HR"; path = "hr-HR.lproj/Welcome.rtfd"; sourceTree = ""; }; + A37D7D69141B7C6F0069C38B /* id */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = id; path = id.lproj/Conclusion.rtfd; sourceTree = ""; }; + A37D7D6A141B7C6F0069C38B /* id */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = id; path = id.lproj/Description.html; sourceTree = ""; }; + A37D7D6B141B7C6F0069C38B /* id */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = id; path = id.lproj/License.rtf; sourceTree = ""; }; + A37D7D6C141B7C6F0069C38B /* id */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = id; path = id.lproj/Localizable.strings; sourceTree = ""; }; + A37D7D6D141B7C6F0069C38B /* id */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = id; path = id.lproj/Welcome.rtfd; sourceTree = ""; }; + A37D7D6E141B7C6F0069C38B /* it */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = it; path = it.lproj/Conclusion.rtfd; sourceTree = ""; }; + A37D7D6F141B7C6F0069C38B /* it */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = it; path = it.lproj/Description.html; sourceTree = ""; }; + A37D7D70141B7C6F0069C38B /* it */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = it; path = it.lproj/License.rtf; sourceTree = ""; }; + A37D7D71141B7C6F0069C38B /* it */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/Localizable.strings; sourceTree = ""; }; + A37D7D72141B7C6F0069C38B /* it */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = it; path = it.lproj/Welcome.rtfd; sourceTree = ""; }; + A37D7D73141B7C6F0069C38B /* pl */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = pl; path = pl.lproj/Conclusion.rtfd; sourceTree = ""; }; + A37D7D74141B7C6F0069C38B /* pl */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = pl; path = pl.lproj/Description.html; sourceTree = ""; }; + A37D7D75141B7C6F0069C38B /* pl */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = pl; path = pl.lproj/License.rtf; sourceTree = ""; }; + A37D7D76141B7C6F0069C38B /* pl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pl; path = pl.lproj/Localizable.strings; sourceTree = ""; }; + A37D7D77141B7C6F0069C38B /* pl */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = pl; path = pl.lproj/Welcome.rtfd; sourceTree = ""; }; + A37D7D78141B7C6F0069C38B /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = "pt-BR"; path = "pt-BR.lproj/Conclusion.rtfd"; sourceTree = ""; }; + A37D7D79141B7C6F0069C38B /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = "pt-BR"; path = "pt-BR.lproj/Description.html"; sourceTree = ""; }; + A37D7D7A141B7C6F0069C38B /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = "pt-BR"; path = "pt-BR.lproj/License.rtf"; sourceTree = ""; }; + A37D7D7B141B7C6F0069C38B /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "pt-BR.lproj/Localizable.strings"; sourceTree = ""; }; + A37D7D7C141B7C6F0069C38B /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = "pt-BR"; path = "pt-BR.lproj/Welcome.rtfd"; sourceTree = ""; }; + A37D7D7D141B7C6F0069C38B /* pt-PT */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = "pt-PT"; path = "pt-PT.lproj/Conclusion.rtfd"; sourceTree = ""; }; + A37D7D7E141B7C6F0069C38B /* pt-PT */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = "pt-PT"; path = "pt-PT.lproj/Description.html"; sourceTree = ""; }; + A37D7D7F141B7C6F0069C38B /* pt-PT */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = "pt-PT"; path = "pt-PT.lproj/License.rtf"; sourceTree = ""; }; + A37D7D80141B7C6F0069C38B /* pt-PT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-PT"; path = "pt-PT.lproj/Localizable.strings"; sourceTree = ""; }; + A37D7D81141B7C6F0069C38B /* pt-PT */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = "pt-PT"; path = "pt-PT.lproj/Welcome.rtfd"; sourceTree = ""; }; + A37D7D82141B7C6F0069C38B /* sr */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = sr; path = sr.lproj/Conclusion.rtfd; sourceTree = ""; }; + A37D7D83141B7C6F0069C38B /* sr */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = sr; path = sr.lproj/Description.html; sourceTree = ""; }; + A37D7D84141B7C6F0069C38B /* sr */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = sr; path = sr.lproj/License.rtf; sourceTree = ""; }; + A37D7D85141B7C6F0069C38B /* sr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sr; path = sr.lproj/Localizable.strings; sourceTree = ""; }; + A37D7D86141B7C6F0069C38B /* sr */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = sr; path = sr.lproj/Welcome.rtfd; sourceTree = ""; }; + A3F1F210141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F212141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F214141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F216141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F218141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F21A141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F21C141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F21E141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F220141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F222141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F224141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F226141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F228141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F22A141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F22C141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F22E141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F230141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F233141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F235141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F237141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F239141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F23B141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F23D141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F23F141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F241141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F243141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F245141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F247141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F249141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F24B141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; + A3F1F24D141B9B0D00DDA709 /* postinstall.in */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall.in; sourceTree = ""; }; + A3F1F24F141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; + A3F1F252141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F254141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F256141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F258141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F25A141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F25C141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F25E141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F260141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F262141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F264141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = postinstall; sourceTree = ""; }; + A3F1F266141B9B0D00DDA709 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; + A3F1F267141B9B3B00DDA709 /* Readme.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Readme.txt; sourceTree = ""; }; B0056CE711F3868000754B65 /* boot0.s */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = boot0.s; sourceTree = ""; }; B0056CE811F3868000754B65 /* chain0.s */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = chain0.s; sourceTree = ""; }; B0056CE911F3868000754B65 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = ""; }; @@ -1018,40 +1132,7 @@ B0056D8011F3868000754B65 /* coding_standards.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = coding_standards.txt; sourceTree = ""; }; B0056D8111F3868000754B65 /* CHANGES */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = CHANGES; sourceTree = ""; }; B0056D8211F3868000754B65 /* APPLE_LICENSE */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = APPLE_LICENSE; sourceTree = ""; }; - B0056D8411F3868000754B65 /* buildpkg */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = buildpkg; sourceTree = ""; }; B0056D8511F3868000754B65 /* Distribution */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = Distribution; sourceTree = ""; }; - B0056D8611F3868000754B65 /* fdisk */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.executable"; path = fdisk; sourceTree = ""; }; - B0056D8811F3868000754B65 /* AHCIPortInjector.kext */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.kernel-extension"; path = AHCIPortInjector.kext; sourceTree = ""; }; - B0056D8911F3868000754B65 /* ATAPortInjector.kext */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.kernel-extension"; path = ATAPortInjector.kext; sourceTree = ""; }; - B0056D8A11F3868000754B65 /* Disabler.kext */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.kernel-extension"; path = Disabler.kext; sourceTree = ""; }; - B0056D8B11F3868000754B65 /* IOAHCIBlockStorageInjector.kext */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.kernel-extension"; path = IOAHCIBlockStorageInjector.kext; sourceTree = ""; }; - B0056D8C11F3868000754B65 /* JMicronATAInjector.kext */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.kernel-extension"; path = JMicronATAInjector.kext; sourceTree = ""; }; - B0056D8E11F3868000754B65 /* background.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = background.tiff; sourceTree = ""; }; - B0056D9011F3868000754B65 /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = English; path = English.lproj/Description.html; sourceTree = ""; }; - B0056D9211F3868000754B65 /* English */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = English; path = English.lproj/License.rtf; sourceTree = ""; }; - B0056D9411F3868000754B65 /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/Localizable.strings; sourceTree = ""; }; - B0056D9611F3868000754B65 /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = English; path = English.lproj/Welcome.rtfd; sourceTree = ""; }; - B0056D9711F3868000754B65 /* French */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = French; path = French.lproj/Description.html; sourceTree = ""; }; - B0056D9811F3868000754B65 /* French */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = French; path = French.lproj/License.rtf; sourceTree = ""; }; - B0056D9911F3868000754B65 /* French */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = French; path = French.lproj/Localizable.strings; sourceTree = ""; }; - B0056D9A11F3868000754B65 /* German */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = German; path = German.lproj/Description.html; sourceTree = ""; }; - B0056D9B11F3868000754B65 /* German */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = German; path = German.lproj/License.rtf; sourceTree = ""; }; - B0056D9C11F3868000754B65 /* German */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = German; path = German.lproj/Localizable.strings; sourceTree = ""; }; - B0056D9D11F3868000754B65 /* Spanish */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = Spanish; path = Spanish.lproj/Description.html; sourceTree = ""; }; - B0056D9E11F3868000754B65 /* Spanish */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = Spanish; path = Spanish.lproj/License.rtf; sourceTree = ""; }; - B0056D9F11F3868000754B65 /* Spanish */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = Spanish; path = Spanish.lproj/Localizable.strings; sourceTree = ""; }; - B0056DA011F3868000754B65 /* Spanish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.rtfd; name = Spanish; path = Spanish.lproj/Welcome.rtfd; sourceTree = ""; }; - B0056DA311F3868000754B65 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; - B0056DA511F3868000754B65 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; - B0056DA811F3868000754B65 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; - B0056DAA11F3868000754B65 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; - B0056DAC11F3868000754B65 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; - B0056DAE11F3868000754B65 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; - B0056DB011F3868000754B65 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; - B0056DB211F3868000754B65 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; - B0056DB411F3868000754B65 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; - B0056DB611F3868000754B65 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; - B0056DB811F3868000754B65 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; B0056DB911F3868000754B65 /* smbios.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = smbios.plist; sourceTree = ""; }; B0056DBD11F3868000754B65 /* background.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = background.png; sourceTree = ""; }; B0056DBE11F3868000754B65 /* boot.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = boot.png; sourceTree = ""; }; @@ -2342,19 +2423,15 @@ A3561CB41414024C00E9B51E /* Keylayout */ = { isa = PBXGroup; children = ( - A3561CB51414024C00E9B51E /* utils */, + A3F1F267141B9B3B00DDA709 /* Readme.txt */, + A35D216E141A73B000969AC0 /* layouts */, + A3561DA81414296600E9B51E /* Cconfig */, + A3561DA61414296600E9B51E /* Keylayout.c */, + A3561DA71414296600E9B51E /* Makefile */, ); path = Keylayout; sourceTree = ""; }; - A3561CB51414024C00E9B51E /* utils */ = { - isa = PBXGroup; - children = ( - A3561CB61414024D00E9B51E /* test */, - ); - path = utils; - sourceTree = ""; - }; A3561CB71414024D00E9B51E /* klibc */ = { isa = PBXGroup; children = ( @@ -2587,6 +2664,461 @@ path = include; sourceTree = ""; }; + A35D216E141A73B000969AC0 /* layouts */ = { + isa = PBXGroup; + children = ( + A35D216F141A73B000969AC0 /* cham-mklayout.c */, + A35D2170141A73B000969AC0 /* layouts-src */, + A35D2177141A73B000969AC0 /* Makefile */, + ); + path = layouts; + sourceTree = ""; + }; + A35D2170141A73B000969AC0 /* layouts-src */ = { + isa = PBXGroup; + children = ( + A35D2178141A753E00969AC0 /* README */, + A35D2171141A73B000969AC0 /* mac-de.slt */, + A35D2172141A73B000969AC0 /* mac-es.slt */, + A35D2173141A73B000969AC0 /* mac-fr.slt */, + A35D2174141A73B000969AC0 /* mac-it.slt */, + A35D2175141A73B000969AC0 /* mac-se.slt */, + A35D2176141A73B000969AC0 /* pc-fr.slt */, + ); + path = "layouts-src"; + sourceTree = ""; + }; + A37D7D49141B7C6F0069C38B /* Resources */ = { + isa = PBXGroup; + children = ( + A37D7D4A141B7C6F0069C38B /* background.tiff */, + A37D7D4B141B7C6F0069C38B /* Conclusion.rtfd */, + A37D7D4D141B7C6F0069C38B /* Description.html */, + A37D7D4F141B7C6F0069C38B /* License.rtf */, + A37D7D51141B7C6F0069C38B /* Localizable.strings */, + A37D7D53141B7C6F0069C38B /* Welcome.rtfd */, + ); + path = Resources; + sourceTree = ""; + }; + A3F1F20D141B9B0D00DDA709 /* Scripts */ = { + isa = PBXGroup; + children = ( + A3F1F20E141B9B0D00DDA709 /* Advanced */, + A3F1F231141B9B0D00DDA709 /* BaseOptions */, + A3F1F24A141B9B0D00DDA709 /* EFI */, + A3F1F24C141B9B0D00DDA709 /* Keymaps */, + A3F1F24E141B9B0D00DDA709 /* Post */, + A3F1F250141B9B0D00DDA709 /* Resolutions */, + A3F1F265141B9B0D00DDA709 /* Standard */, + ); + path = Scripts; + sourceTree = ""; + }; + A3F1F20E141B9B0D00DDA709 /* Advanced */ = { + isa = PBXGroup; + children = ( + A3F1F20F141B9B0D00DDA709 /* BootBanner */, + A3F1F211141B9B0D00DDA709 /* EHCIacquire */, + A3F1F213141B9B0D00DDA709 /* ForceHPET */, + A3F1F215141B9B0D00DDA709 /* ForceWake */, + A3F1F217141B9B0D00DDA709 /* GUI */, + A3F1F219141B9B0D00DDA709 /* LegacyLogo */, + A3F1F21B141B9B0D00DDA709 /* Npci */, + A3F1F21D141B9B0D00DDA709 /* QuietBoot */, + A3F1F21F141B9B0D00DDA709 /* ShowInfo */, + A3F1F221141B9B0D00DDA709 /* SMBIOSdefaults */, + A3F1F223141B9B0D00DDA709 /* UHCIreset */, + A3F1F225141B9B0D00DDA709 /* UseAtiROM */, + A3F1F227141B9B0D00DDA709 /* UseMemDetect */, + A3F1F229141B9B0D00DDA709 /* UseNvidiaROM */, + A3F1F22B141B9B0D00DDA709 /* VBIOS */, + A3F1F22D141B9B0D00DDA709 /* Wait */, + A3F1F22F141B9B0D00DDA709 /* Wake */, + ); + path = Advanced; + sourceTree = ""; + }; + A3F1F20F141B9B0D00DDA709 /* BootBanner */ = { + isa = PBXGroup; + children = ( + A3F1F210141B9B0D00DDA709 /* postinstall */, + ); + path = BootBanner; + sourceTree = ""; + }; + A3F1F211141B9B0D00DDA709 /* EHCIacquire */ = { + isa = PBXGroup; + children = ( + A3F1F212141B9B0D00DDA709 /* postinstall */, + ); + path = EHCIacquire; + sourceTree = ""; + }; + A3F1F213141B9B0D00DDA709 /* ForceHPET */ = { + isa = PBXGroup; + children = ( + A3F1F214141B9B0D00DDA709 /* postinstall */, + ); + path = ForceHPET; + sourceTree = ""; + }; + A3F1F215141B9B0D00DDA709 /* ForceWake */ = { + isa = PBXGroup; + children = ( + A3F1F216141B9B0D00DDA709 /* postinstall */, + ); + path = ForceWake; + sourceTree = ""; + }; + A3F1F217141B9B0D00DDA709 /* GUI */ = { + isa = PBXGroup; + children = ( + A3F1F218141B9B0D00DDA709 /* postinstall */, + ); + path = GUI; + sourceTree = ""; + }; + A3F1F219141B9B0D00DDA709 /* LegacyLogo */ = { + isa = PBXGroup; + children = ( + A3F1F21A141B9B0D00DDA709 /* postinstall */, + ); + path = LegacyLogo; + sourceTree = ""; + }; + A3F1F21B141B9B0D00DDA709 /* Npci */ = { + isa = PBXGroup; + children = ( + A3F1F21C141B9B0D00DDA709 /* postinstall */, + ); + path = Npci; + sourceTree = ""; + }; + A3F1F21D141B9B0D00DDA709 /* QuietBoot */ = { + isa = PBXGroup; + children = ( + A3F1F21E141B9B0D00DDA709 /* postinstall */, + ); + path = QuietBoot; + sourceTree = ""; + }; + A3F1F21F141B9B0D00DDA709 /* ShowInfo */ = { + isa = PBXGroup; + children = ( + A3F1F220141B9B0D00DDA709 /* postinstall */, + ); + path = ShowInfo; + sourceTree = ""; + }; + A3F1F221141B9B0D00DDA709 /* SMBIOSdefaults */ = { + isa = PBXGroup; + children = ( + A3F1F222141B9B0D00DDA709 /* postinstall */, + ); + path = SMBIOSdefaults; + sourceTree = ""; + }; + A3F1F223141B9B0D00DDA709 /* UHCIreset */ = { + isa = PBXGroup; + children = ( + A3F1F224141B9B0D00DDA709 /* postinstall */, + ); + path = UHCIreset; + sourceTree = ""; + }; + A3F1F225141B9B0D00DDA709 /* UseAtiROM */ = { + isa = PBXGroup; + children = ( + A3F1F226141B9B0D00DDA709 /* postinstall */, + ); + path = UseAtiROM; + sourceTree = ""; + }; + A3F1F227141B9B0D00DDA709 /* UseMemDetect */ = { + isa = PBXGroup; + children = ( + A3F1F228141B9B0D00DDA709 /* postinstall */, + ); + path = UseMemDetect; + sourceTree = ""; + }; + A3F1F229141B9B0D00DDA709 /* UseNvidiaROM */ = { + isa = PBXGroup; + children = ( + A3F1F22A141B9B0D00DDA709 /* postinstall */, + ); + path = UseNvidiaROM; + sourceTree = ""; + }; + A3F1F22B141B9B0D00DDA709 /* VBIOS */ = { + isa = PBXGroup; + children = ( + A3F1F22C141B9B0D00DDA709 /* postinstall */, + ); + path = VBIOS; + sourceTree = ""; + }; + A3F1F22D141B9B0D00DDA709 /* Wait */ = { + isa = PBXGroup; + children = ( + A3F1F22E141B9B0D00DDA709 /* postinstall */, + ); + path = Wait; + sourceTree = ""; + }; + A3F1F22F141B9B0D00DDA709 /* Wake */ = { + isa = PBXGroup; + children = ( + A3F1F230141B9B0D00DDA709 /* postinstall */, + ); + path = Wake; + sourceTree = ""; + }; + A3F1F231141B9B0D00DDA709 /* BaseOptions */ = { + isa = PBXGroup; + children = ( + A3F1F232141B9B0D00DDA709 /* arch */, + A3F1F234141B9B0D00DDA709 /* CSTUsingSystemIO */, + A3F1F236141B9B0D00DDA709 /* DropSSDT */, + A3F1F238141B9B0D00DDA709 /* EnableC2State */, + A3F1F23A141B9B0D00DDA709 /* EnableC3State */, + A3F1F23C141B9B0D00DDA709 /* EnableC4State */, + A3F1F23E141B9B0D00DDA709 /* EthernetBuiltIn */, + A3F1F240141B9B0D00DDA709 /* GenerateCStates */, + A3F1F242141B9B0D00DDA709 /* GeneratePStates */, + A3F1F244141B9B0D00DDA709 /* GraphicsEnabler */, + A3F1F246141B9B0D00DDA709 /* InstantMenu */, + A3F1F248141B9B0D00DDA709 /* RestartFix */, + ); + path = BaseOptions; + sourceTree = ""; + }; + A3F1F232141B9B0D00DDA709 /* arch */ = { + isa = PBXGroup; + children = ( + A3F1F233141B9B0D00DDA709 /* postinstall */, + ); + path = arch; + sourceTree = ""; + }; + A3F1F234141B9B0D00DDA709 /* CSTUsingSystemIO */ = { + isa = PBXGroup; + children = ( + A3F1F235141B9B0D00DDA709 /* postinstall */, + ); + path = CSTUsingSystemIO; + sourceTree = ""; + }; + A3F1F236141B9B0D00DDA709 /* DropSSDT */ = { + isa = PBXGroup; + children = ( + A3F1F237141B9B0D00DDA709 /* postinstall */, + ); + path = DropSSDT; + sourceTree = ""; + }; + A3F1F238141B9B0D00DDA709 /* EnableC2State */ = { + isa = PBXGroup; + children = ( + A3F1F239141B9B0D00DDA709 /* postinstall */, + ); + path = EnableC2State; + sourceTree = ""; + }; + A3F1F23A141B9B0D00DDA709 /* EnableC3State */ = { + isa = PBXGroup; + children = ( + A3F1F23B141B9B0D00DDA709 /* postinstall */, + ); + path = EnableC3State; + sourceTree = ""; + }; + A3F1F23C141B9B0D00DDA709 /* EnableC4State */ = { + isa = PBXGroup; + children = ( + A3F1F23D141B9B0D00DDA709 /* postinstall */, + ); + path = EnableC4State; + sourceTree = ""; + }; + A3F1F23E141B9B0D00DDA709 /* EthernetBuiltIn */ = { + isa = PBXGroup; + children = ( + A3F1F23F141B9B0D00DDA709 /* postinstall */, + ); + path = EthernetBuiltIn; + sourceTree = ""; + }; + A3F1F240141B9B0D00DDA709 /* GenerateCStates */ = { + isa = PBXGroup; + children = ( + A3F1F241141B9B0D00DDA709 /* postinstall */, + ); + path = GenerateCStates; + sourceTree = ""; + }; + A3F1F242141B9B0D00DDA709 /* GeneratePStates */ = { + isa = PBXGroup; + children = ( + A3F1F243141B9B0D00DDA709 /* postinstall */, + ); + path = GeneratePStates; + sourceTree = ""; + }; + A3F1F244141B9B0D00DDA709 /* GraphicsEnabler */ = { + isa = PBXGroup; + children = ( + A3F1F245141B9B0D00DDA709 /* postinstall */, + ); + path = GraphicsEnabler; + sourceTree = ""; + }; + A3F1F246141B9B0D00DDA709 /* InstantMenu */ = { + isa = PBXGroup; + children = ( + A3F1F247141B9B0D00DDA709 /* postinstall */, + ); + path = InstantMenu; + sourceTree = ""; + }; + A3F1F248141B9B0D00DDA709 /* RestartFix */ = { + isa = PBXGroup; + children = ( + A3F1F249141B9B0D00DDA709 /* postinstall */, + ); + path = RestartFix; + sourceTree = ""; + }; + A3F1F24A141B9B0D00DDA709 /* EFI */ = { + isa = PBXGroup; + children = ( + A3F1F24B141B9B0D00DDA709 /* postinstall */, + ); + path = EFI; + sourceTree = ""; + }; + A3F1F24C141B9B0D00DDA709 /* Keymaps */ = { + isa = PBXGroup; + children = ( + A3F1F24D141B9B0D00DDA709 /* postinstall.in */, + ); + path = Keymaps; + sourceTree = ""; + }; + A3F1F24E141B9B0D00DDA709 /* Post */ = { + isa = PBXGroup; + children = ( + A3F1F24F141B9B0D00DDA709 /* postinstall */, + ); + path = Post; + sourceTree = ""; + }; + A3F1F250141B9B0D00DDA709 /* Resolutions */ = { + isa = PBXGroup; + children = ( + A3F1F251141B9B0D00DDA709 /* 1024x600x32 */, + A3F1F253141B9B0D00DDA709 /* 1024x768x32 */, + A3F1F255141B9B0D00DDA709 /* 1280x1024x32 */, + A3F1F257141B9B0D00DDA709 /* 1280x800x32 */, + A3F1F259141B9B0D00DDA709 /* 1280x960x32 */, + A3F1F25B141B9B0D00DDA709 /* 1440x900x32 */, + A3F1F25D141B9B0D00DDA709 /* 1600x900x32 */, + A3F1F25F141B9B0D00DDA709 /* 1680x1050x32 */, + A3F1F261141B9B0D00DDA709 /* 1920x1080x32 */, + A3F1F263141B9B0D00DDA709 /* 1920x1200x32 */, + ); + path = Resolutions; + sourceTree = ""; + }; + A3F1F251141B9B0D00DDA709 /* 1024x600x32 */ = { + isa = PBXGroup; + children = ( + A3F1F252141B9B0D00DDA709 /* postinstall */, + ); + path = 1024x600x32; + sourceTree = ""; + }; + A3F1F253141B9B0D00DDA709 /* 1024x768x32 */ = { + isa = PBXGroup; + children = ( + A3F1F254141B9B0D00DDA709 /* postinstall */, + ); + path = 1024x768x32; + sourceTree = ""; + }; + A3F1F255141B9B0D00DDA709 /* 1280x1024x32 */ = { + isa = PBXGroup; + children = ( + A3F1F256141B9B0D00DDA709 /* postinstall */, + ); + path = 1280x1024x32; + sourceTree = ""; + }; + A3F1F257141B9B0D00DDA709 /* 1280x800x32 */ = { + isa = PBXGroup; + children = ( + A3F1F258141B9B0D00DDA709 /* postinstall */, + ); + path = 1280x800x32; + sourceTree = ""; + }; + A3F1F259141B9B0D00DDA709 /* 1280x960x32 */ = { + isa = PBXGroup; + children = ( + A3F1F25A141B9B0D00DDA709 /* postinstall */, + ); + path = 1280x960x32; + sourceTree = ""; + }; + A3F1F25B141B9B0D00DDA709 /* 1440x900x32 */ = { + isa = PBXGroup; + children = ( + A3F1F25C141B9B0D00DDA709 /* postinstall */, + ); + path = 1440x900x32; + sourceTree = ""; + }; + A3F1F25D141B9B0D00DDA709 /* 1600x900x32 */ = { + isa = PBXGroup; + children = ( + A3F1F25E141B9B0D00DDA709 /* postinstall */, + ); + path = 1600x900x32; + sourceTree = ""; + }; + A3F1F25F141B9B0D00DDA709 /* 1680x1050x32 */ = { + isa = PBXGroup; + children = ( + A3F1F260141B9B0D00DDA709 /* postinstall */, + ); + path = 1680x1050x32; + sourceTree = ""; + }; + A3F1F261141B9B0D00DDA709 /* 1920x1080x32 */ = { + isa = PBXGroup; + children = ( + A3F1F262141B9B0D00DDA709 /* postinstall */, + ); + path = 1920x1080x32; + sourceTree = ""; + }; + A3F1F263141B9B0D00DDA709 /* 1920x1200x32 */ = { + isa = PBXGroup; + children = ( + A3F1F264141B9B0D00DDA709 /* postinstall */, + ); + path = 1920x1200x32; + sourceTree = ""; + }; + A3F1F265141B9B0D00DDA709 /* Standard */ = { + isa = PBXGroup; + children = ( + A3F1F266141B9B0D00DDA709 /* postinstall */, + ); + path = Standard; + sourceTree = ""; + }; B0056CE511F3868000754B65 /* i386 */ = { isa = PBXGroup; children = ( @@ -2815,155 +3347,17 @@ B0056D8311F3868000754B65 /* package */ = { isa = PBXGroup; children = ( - B0056D8411F3868000754B65 /* buildpkg */, + A35D2187141A75DC00969AC0 /* slimpkg.sh */, + A35D2188141A75DC00969AC0 /* buildpkg.sh */, + A35D2189141A75DC00969AC0 /* builddmg.sh */, B0056D8511F3868000754B65 /* Distribution */, - B0056D8611F3868000754B65 /* fdisk */, - B0056D8711F3868000754B65 /* Kexts */, - B0056D8D11F3868000754B65 /* Resources */, - B0056DA111F3868000754B65 /* Scripts */, + A37D7D49141B7C6F0069C38B /* Resources */, + A3F1F20D141B9B0D00DDA709 /* Scripts */, B0056DB911F3868000754B65 /* smbios.plist */, ); path = package; sourceTree = ""; }; - B0056D8711F3868000754B65 /* Kexts */ = { - isa = PBXGroup; - children = ( - B0056D8811F3868000754B65 /* AHCIPortInjector.kext */, - B0056D8911F3868000754B65 /* ATAPortInjector.kext */, - B0056D8A11F3868000754B65 /* Disabler.kext */, - B0056D8B11F3868000754B65 /* IOAHCIBlockStorageInjector.kext */, - B0056D8C11F3868000754B65 /* JMicronATAInjector.kext */, - ); - path = Kexts; - sourceTree = ""; - }; - B0056D8D11F3868000754B65 /* Resources */ = { - isa = PBXGroup; - children = ( - B0056D8E11F3868000754B65 /* background.tiff */, - B0056D8F11F3868000754B65 /* Description.html */, - B0056D9111F3868000754B65 /* License.rtf */, - B0056D9311F3868000754B65 /* Localizable.strings */, - B0056D9511F3868000754B65 /* Welcome.rtfd */, - ); - path = Resources; - sourceTree = ""; - }; - B0056DA111F3868000754B65 /* Scripts */ = { - isa = PBXGroup; - children = ( - B0056DA211F3868000754B65 /* FAT */, - B0056DA411F3868000754B65 /* HFS */, - B0056DA611F3868000754B65 /* Options */, - B0056DB511F3868000754B65 /* Post */, - B0056DB711F3868000754B65 /* Standard */, - ); - path = Scripts; - sourceTree = ""; - }; - B0056DA211F3868000754B65 /* FAT */ = { - isa = PBXGroup; - children = ( - B0056DA311F3868000754B65 /* postinstall */, - ); - path = FAT; - sourceTree = ""; - }; - B0056DA411F3868000754B65 /* HFS */ = { - isa = PBXGroup; - children = ( - B0056DA511F3868000754B65 /* postinstall */, - ); - path = HFS; - sourceTree = ""; - }; - B0056DA611F3868000754B65 /* Options */ = { - isa = PBXGroup; - children = ( - B0056DA711F3868000754B65 /* EHCIacquire */, - B0056DA911F3868000754B65 /* EthernetBuiltIn */, - B0056DAB11F3868000754B65 /* ForceHPET */, - B0056DAD11F3868000754B65 /* ForceWake */, - B0056DAF11F3868000754B65 /* GraphicsEnabler */, - B0056DB111F3868000754B65 /* GUI */, - B0056DB311F3868000754B65 /* UHCIreset */, - ); - path = Options; - sourceTree = ""; - }; - B0056DA711F3868000754B65 /* EHCIacquire */ = { - isa = PBXGroup; - children = ( - B0056DA811F3868000754B65 /* postinstall */, - ); - path = EHCIacquire; - sourceTree = ""; - }; - B0056DA911F3868000754B65 /* EthernetBuiltIn */ = { - isa = PBXGroup; - children = ( - B0056DAA11F3868000754B65 /* postinstall */, - ); - path = EthernetBuiltIn; - sourceTree = ""; - }; - B0056DAB11F3868000754B65 /* ForceHPET */ = { - isa = PBXGroup; - children = ( - B0056DAC11F3868000754B65 /* postinstall */, - ); - path = ForceHPET; - sourceTree = ""; - }; - B0056DAD11F3868000754B65 /* ForceWake */ = { - isa = PBXGroup; - children = ( - B0056DAE11F3868000754B65 /* postinstall */, - ); - path = ForceWake; - sourceTree = ""; - }; - B0056DAF11F3868000754B65 /* GraphicsEnabler */ = { - isa = PBXGroup; - children = ( - B0056DB011F3868000754B65 /* postinstall */, - ); - path = GraphicsEnabler; - sourceTree = ""; - }; - B0056DB111F3868000754B65 /* GUI */ = { - isa = PBXGroup; - children = ( - B0056DB211F3868000754B65 /* postinstall */, - ); - path = GUI; - sourceTree = ""; - }; - B0056DB311F3868000754B65 /* UHCIreset */ = { - isa = PBXGroup; - children = ( - B0056DB411F3868000754B65 /* postinstall */, - ); - path = UHCIreset; - sourceTree = ""; - }; - B0056DB511F3868000754B65 /* Post */ = { - isa = PBXGroup; - children = ( - B0056DB611F3868000754B65 /* postinstall */, - ); - path = Post; - sourceTree = ""; - }; - B0056DB711F3868000754B65 /* Standard */ = { - isa = PBXGroup; - children = ( - B0056DB811F3868000754B65 /* postinstall */, - ); - path = Standard; - sourceTree = ""; - }; B0056DBA11F3868000754B65 /* artwork */ = { isa = PBXGroup; children = ( @@ -3164,6 +3558,17 @@ French, German, Spanish, + de, + en, + es, + fr, + "hr-HR", + id, + it, + pl, + "pt-BR", + "pt-PT", + sr, ); mainGroup = 08FB7794FE84155DC02AAC07 /* Chameleon */; projectDirPath = ""; @@ -3175,44 +3580,92 @@ /* End PBXProject section */ /* Begin PBXVariantGroup section */ - B0056D8F11F3868000754B65 /* Description.html */ = { + A37D7D4B141B7C6F0069C38B /* Conclusion.rtfd */ = { isa = PBXVariantGroup; children = ( - B0056D9011F3868000754B65 /* English */, - B0056D9711F3868000754B65 /* French */, - B0056D9A11F3868000754B65 /* German */, - B0056D9D11F3868000754B65 /* Spanish */, + A37D7D55141B7C6F0069C38B /* en */, + A37D7D4C141B7C6F0069C38B /* de */, + A37D7D5A141B7C6F0069C38B /* es */, + A37D7D5F141B7C6F0069C38B /* fr */, + A37D7D64141B7C6F0069C38B /* hr-HR */, + A37D7D69141B7C6F0069C38B /* id */, + A37D7D6E141B7C6F0069C38B /* it */, + A37D7D73141B7C6F0069C38B /* pl */, + A37D7D78141B7C6F0069C38B /* pt-BR */, + A37D7D7D141B7C6F0069C38B /* pt-PT */, + A37D7D82141B7C6F0069C38B /* sr */, ); + name = Conclusion.rtfd; + sourceTree = ""; + }; + A37D7D4D141B7C6F0069C38B /* Description.html */ = { + isa = PBXVariantGroup; + children = ( + A37D7D4E141B7C6F0069C38B /* de */, + A37D7D56141B7C6F0069C38B /* en */, + A37D7D5B141B7C6F0069C38B /* es */, + A37D7D60141B7C6F0069C38B /* fr */, + A37D7D65141B7C6F0069C38B /* hr-HR */, + A37D7D6A141B7C6F0069C38B /* id */, + A37D7D6F141B7C6F0069C38B /* it */, + A37D7D74141B7C6F0069C38B /* pl */, + A37D7D79141B7C6F0069C38B /* pt-BR */, + A37D7D7E141B7C6F0069C38B /* pt-PT */, + A37D7D83141B7C6F0069C38B /* sr */, + ); name = Description.html; sourceTree = ""; }; - B0056D9111F3868000754B65 /* License.rtf */ = { + A37D7D4F141B7C6F0069C38B /* License.rtf */ = { isa = PBXVariantGroup; children = ( - B0056D9211F3868000754B65 /* English */, - B0056D9811F3868000754B65 /* French */, - B0056D9B11F3868000754B65 /* German */, - B0056D9E11F3868000754B65 /* Spanish */, + A37D7D50141B7C6F0069C38B /* de */, + A37D7D57141B7C6F0069C38B /* en */, + A37D7D5C141B7C6F0069C38B /* es */, + A37D7D61141B7C6F0069C38B /* fr */, + A37D7D66141B7C6F0069C38B /* hr-HR */, + A37D7D6B141B7C6F0069C38B /* id */, + A37D7D70141B7C6F0069C38B /* it */, + A37D7D75141B7C6F0069C38B /* pl */, + A37D7D7A141B7C6F0069C38B /* pt-BR */, + A37D7D7F141B7C6F0069C38B /* pt-PT */, + A37D7D84141B7C6F0069C38B /* sr */, ); name = License.rtf; sourceTree = ""; }; - B0056D9311F3868000754B65 /* Localizable.strings */ = { + A37D7D51141B7C6F0069C38B /* Localizable.strings */ = { isa = PBXVariantGroup; children = ( - B0056D9411F3868000754B65 /* English */, - B0056D9911F3868000754B65 /* French */, - B0056D9C11F3868000754B65 /* German */, - B0056D9F11F3868000754B65 /* Spanish */, + A37D7D58141B7C6F0069C38B /* en */, + A37D7D52141B7C6F0069C38B /* de */, + A37D7D5D141B7C6F0069C38B /* es */, + A37D7D62141B7C6F0069C38B /* fr */, + A37D7D67141B7C6F0069C38B /* hr-HR */, + A37D7D6C141B7C6F0069C38B /* id */, + A37D7D71141B7C6F0069C38B /* it */, + A37D7D76141B7C6F0069C38B /* pl */, + A37D7D7B141B7C6F0069C38B /* pt-BR */, + A37D7D80141B7C6F0069C38B /* pt-PT */, + A37D7D85141B7C6F0069C38B /* sr */, ); name = Localizable.strings; sourceTree = ""; }; - B0056D9511F3868000754B65 /* Welcome.rtfd */ = { + A37D7D53141B7C6F0069C38B /* Welcome.rtfd */ = { isa = PBXVariantGroup; children = ( - B0056D9611F3868000754B65 /* English */, - B0056DA011F3868000754B65 /* Spanish */, + A37D7D59141B7C6F0069C38B /* en */, + A37D7D54141B7C6F0069C38B /* de */, + A37D7D5E141B7C6F0069C38B /* es */, + A37D7D63141B7C6F0069C38B /* fr */, + A37D7D68141B7C6F0069C38B /* hr-HR */, + A37D7D6D141B7C6F0069C38B /* id */, + A37D7D72141B7C6F0069C38B /* it */, + A37D7D77141B7C6F0069C38B /* pl */, + A37D7D7C141B7C6F0069C38B /* pt-BR */, + A37D7D81141B7C6F0069C38B /* pt-PT */, + A37D7D86141B7C6F0069C38B /* sr */, ); name = Welcome.rtfd; sourceTree = ""; Index: branches/azimutz/trunkGraphicsEnablerModules/i386/libsaio/term.h =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/i386/libsaio/term.h (revision 0) +++ branches/azimutz/trunkGraphicsEnablerModules/i386/libsaio/term.h (revision 1540) @@ -0,0 +1,59 @@ +/* + * term.h + * Chameleon + * + * Created by JrCs on 30/08/11. + * Copyright 2011. All rights reserved. + * + */ + +#ifndef __LIBSAIO_TERM_H +#define __LIBSAIO_TERM_H + +#define ASCII_KEY_MASK 0x7f +#define ASCII_KEY(x) ((x & ASCII_KEY_MASK)) + +#define KEY_BKSP 0x0008 +#define KEY_TAB 0x0009 +#define KEY_ENTER 0x000d +#define KEY_ESC 0x001b +#define KEY_PRTSC 0x002a +#define KEY_LEFT 0x4b00 +#define KEY_RIGHT 0x4d00 +#define KEY_UP 0x4800 +#define KEY_DOWN 0x5000 +#define KEY_HOME 0x4700 +#define KEY_END 0x4f00 +#define KEY_CENTER 0x4c00 +#define KEY_INS 0x5200 +#define KEY_DEL 0x5300 +#define KEY_PGUP 0x4900 +#define KEY_PGDN 0x5100 +#define KEY_F1 0x3b00 +#define KEY_F2 0x3c00 +#define KEY_F3 0x3d00 +#define KEY_F4 0x3e00 +#define KEY_F5 0x3f00 +#define KEY_F6 0x4000 +#define KEY_F7 0x4100 +#define KEY_F8 0x4200 +#define KEY_F9 0x4300 +#define KEY_F10 0x4400 +#define KEY_F11 0x5700 +#define KEY_F12 0x5800 + +// Key code for input that shouldn't echoed back +#define KEY_NOECHO 0xff00 + +/* Bitmasks for modifier keys */ +#define STATUS_RSHIFT (1 << 0) +#define STATUS_LSHIFT (1 << 1) +#define STATUS_RCTRL (1 << 2) +#define STATUS_RALT (1 << 3) +#define STATUS_SCROLL (1 << 4) +#define STATUS_NUM (1 << 5) +#define STATUS_CAPS (1 << 6) +#define STATUS_LCTRL (1 << 8) +#define STATUS_LALT (1 << 9) + +#endif /* !__LIBSAIO_TERM_H */ Index: branches/azimutz/trunkGraphicsEnablerModules/i386/boot2/gui.c =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/i386/boot2/gui.c (revision 1539) +++ branches/azimutz/trunkGraphicsEnablerModules/i386/boot2/gui.c (revision 1540) @@ -9,6 +9,7 @@ */ #include "gui.h" +#include "term.h" #include "appleboot.h" #include "vers.h" @@ -1604,15 +1605,15 @@ key = getchar(); - if( key == kUpArrowkey ) + if( key == KEY_UP ) if( currentline > 0 ) currentline--; - if( key == kDownArrowkey ) + if( key == KEY_DOWN ) if( lines > ( currentline + visiblelines ) ) currentline++; - if( key == kEscapeKey || key == 'q' || key == 'Q') + if( key == KEY_ESC || key == 'q' || key == 'Q') { gui.infobox.draw = false; gui.redraw = true; @@ -1762,7 +1763,7 @@ switch (key) { - case kUpArrowkey: // up arrow + case KEY_UP: // up arrow if (infoMenuSelection > 0) { if(!infoMenuNativeBoot && infoMenuSelection == INFOMENU_NATIVEBOOT_END + 1) @@ -1784,7 +1785,7 @@ } break; - case kDownArrowkey: // down arrow + case KEY_DOWN: // down arrow if (infoMenuSelection < infoMenuItemsCount - 1) { if(!infoMenuNativeBoot && infoMenuSelection == INFOMENU_NATIVEBOOT_START - 1) @@ -1796,7 +1797,7 @@ } break; - case kReturnKey: + case KEY_ENTER: key = 0; if( infoMenuSelection == MENU_SHOW_MEMORY_INFO ) showInfoBox( "Memory Info. Press q to quit.\n", getMemoryInfoString()); Index: branches/azimutz/trunkGraphicsEnablerModules/i386/boot2/gui.h =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/i386/boot2/gui.h (revision 1539) +++ branches/azimutz/trunkGraphicsEnablerModules/i386/boot2/gui.h (revision 1540) @@ -38,18 +38,6 @@ VerticalLayout = 1 }; -enum { - kBackspaceKey = 0x08, - kTabKey = 0x09, - kReturnKey = '\r', - kEscapeKey = 0x1b, - kUpArrowkey = 0x4800, - kDownArrowkey = 0x5000, - kASCIIKeyMask = 0x7f, - kF5Key = 0x3f00, - kF10Key = 0x4400 -}; - /* * Menu item structure. */ Index: branches/azimutz/trunkGraphicsEnablerModules/i386/boot2/options.c =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/i386/boot2/options.c (revision 1539) +++ branches/azimutz/trunkGraphicsEnablerModules/i386/boot2/options.c (revision 1540) @@ -27,6 +27,7 @@ #include "fdisk.h" #include "ramdisk.h" #include "gui.h" +#include "term.h" #include "embedded.h" #include "pci.h" @@ -235,11 +236,11 @@ static void updateBootArgs( int key ) { - key &= kASCIIKeyMask; + key = ASCII_KEY(key); switch ( key ) { - case kBackspaceKey: + case KEY_BKSP: if ( gBootArgsPtr > gBootArgs ) { *--gBootArgsPtr = '\0'; @@ -927,7 +928,7 @@ } switch (key) { - case kReturnKey: + case KEY_ENTER: if (gui.menu.draw) { key=0; break; @@ -978,11 +979,11 @@ gBIOSDev = menuBVR->biosdev; break; - case kEscapeKey: + case KEY_ESC: clearBootArgs(); break; - case kF5Key: + case KEY_F5: // New behavior: // Clear gBootVolume to restart the loop // if the user enabled rescanning the optical drive. @@ -993,14 +994,14 @@ } break; - case kF10Key: + case KEY_F10: gScanSingleDrive = false; scanDisks(gBIOSDev, &bvCount); gBootVolume = NULL; clearBootArgs(); break; - case kTabKey: + case KEY_TAB: // New behavior: // Switch between text & graphic interfaces // Only Permitted if started in graphics interface @@ -1460,8 +1461,8 @@ printf("Enter two-digit hexadecimal boot device [%02x]: ", bootdevice); do { key = getchar(); - switch (key & kASCIIKeyMask) { - case kBackspaceKey: + switch (ASCII_KEY(key)) { + case KEY_BKSP: if (digitsI > 0) { int x, y, t; getCursorPositionAndType(&x, &y, &t); @@ -1476,7 +1477,7 @@ } break; - case kReturnKey: + case KEY_ENTER: digits[digitsI] = '\0'; newbootdevice = strtol(digits, &end, 16); if (end == digits && *end == '\0') { @@ -1494,9 +1495,9 @@ break; default: - if (isxdigit(key & kASCIIKeyMask) && digitsI < 2) { - putchar(key & kASCIIKeyMask); - digits[digitsI++] = key & kASCIIKeyMask; + if (isxdigit(ASCII_KEY(key)) && digitsI < 2) { + putchar(ASCII_KEY(key)); + digits[digitsI++] = ASCII_KEY(key); } else { // TODO: Beep or something } @@ -1510,7 +1511,7 @@ bool promptForRescanOption(void) { printf("\nWould you like to enable media rescan option?\nPress ENTER to enable or any key to skip.\n"); - if (getchar() == kReturnKey) { + if (getchar() == KEY_ENTER) { return true; } else { return false; Index: branches/azimutz/trunkGraphicsEnablerModules/i386/modules/MakeInc.dir =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/i386/modules/MakeInc.dir (revision 1539) +++ branches/azimutz/trunkGraphicsEnablerModules/i386/modules/MakeInc.dir (revision 1540) @@ -7,7 +7,6 @@ IMGSKELROOT = $(SRCROOT)/imgskel CDBOOT = ${IMGROOT}/usr/standalone/i386/cdboot - ifeq ($(BUILT_IN),yes) override OBJROOT = $(SRCROOT)/obj/i386/boot2_modules/$(DIR) override SYMROOT = $(SRCROOT)/obj/i386/ Index: branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/layouts-src/mac-es.slt =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/layouts-src/mac-es.slt (revision 0) +++ branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/layouts-src/mac-es.slt (revision 1540) @@ -0,0 +1,59 @@ +# Keycode Normal Shift Alt Shift+Alt + +# 1rst Row +keycode 0x02 = 1 VoidSymbol +keycode 0x03 = 2 ! +keycode 0x04 = 3 # +keycode 0x05 = 4 $ +keycode 0x06 = 5 % [ +keycode 0x07 = 6 / \ +keycode 0x08 = 7 & | +keycode 0x09 = 8 * +keycode 0x0a = 9 ( +keycode 0x0b = 0 ) +keycode 0x0c = minus underscore minus +keycode 0x0d = = + +keycode 0x0e = Backspace + +# 2nd Row +keycode 0x0f = Tab +keycode 0x10 = q Q +keycode 0x11 = w W +keycode 0x12 = e E +keycode 0x13 = r R +keycode 0x14 = t T +keycode 0x15 = y Y +keycode 0x16 = u U +keycode 0x17 = i I ^ +keycode 0x18 = o O +keycode 0x19 = p P +keycode 0x1a = VoidSymbol VoidSymbol +keycode 0x1b = ` VoidSymbol | + +# 3rd Row +keycode 0x1e = a A +keycode 0x1f = s S +keycode 0x20 = d D +keycode 0x21 = f F +keycode 0x22 = g G @ , +keycode 0x23 = h H +keycode 0x24 = j J +keycode 0x25 = k K +keycode 0x26 = l L +keycode 0x27 = VoidSymbol VoidSymbol ~ +keycode 0x28 = ; : +keycode 0x2b = ' " ] } + +# 4th Row +keycode 0x29 = < > [ { +keycode 0x2c = z Z +keycode 0x2d = x X +keycode 0x2e = c C +keycode 0x2f = v V +keycode 0x30 = b B +shift alt keycode 0x30 = < +keycode 0x31 = n N > > +keycode 0x32 = m M +keycode 0x33 = , VoidSymbol +keycode 0x34 = . ? +keycode 0x35 = VoidSymbol VoidSymbol Index: branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/layouts-src/mac-fr.slt =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/layouts-src/mac-fr.slt (revision 0) +++ branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/layouts-src/mac-fr.slt (revision 1540) @@ -0,0 +1,61 @@ +# Keycode Normal Shift Alt Shift+Alt + +# 1ère Ligne +keycode 0x02 = & 1 +keycode 0x03 = VoidSymbol 2 +keycode 0x04 = " 3 +keycode 0x05 = ' 4 +keycode 0x06 = ( 5 { [ +keycode 0x07 = VoidSymbol 6 +keycode 0x08 = VoidSymbol 7 +keycode 0x09 = ! 8 +keycode 0x0a = VoidSymbol 9 +keycode 0x0b = VoidSymbol 0 +keycode 0x0c = ) VoidSymbol } ] +keycode 0x0d = - _ +keycode 0x0e = Backspace + +# 2ème Ligne +keycode 0x0f = Tab +keycode 0x10 = a A +keycode 0x11 = z Z +keycode 0x12 = e E +keycode 0x13 = r R +keycode 0x14 = t T +keycode 0x15 = y Y +keycode 0x16 = u U +keycode 0x17 = i I +keycode 0x18 = o O +keycode 0x19 = p P +keycode 0x1a = ^ VoidSymbol +keycode 0x1b = $ * + +# 3ème Ligne +keycode 0x1e = q Q +keycode 0x1f = s S +keycode 0x20 = d D +keycode 0x21 = f F +keycode 0x22 = g G +keycode 0x23 = h H +keycode 0x24 = j J +keycode 0x25 = k K +keycode 0x26 = l L +shift alt keycode 0x26 = | +keycode 0x27 = m M +keycode 0x28 = VoidSymbol % +keycode 0x2b = ` VoidSymbol @ # + +# 4ème Ligne +keycode 0x29 = < > +keycode 0x2c = w W +keycode 0x2d = x X +keycode 0x2e = c C +keycode 0x2f = v V +keycode 0x30 = b B +keycode 0x31 = n N ~ +keycode 0x32 = , ? +keycode 0x33 = ; . +keycode 0x34 = : / +shift alt keycode 0x34 = \ +keycode 0x35 = = + + Index: branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/layouts-src/mac-se.slt =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/layouts-src/mac-se.slt (revision 0) +++ branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/layouts-src/mac-se.slt (revision 1540) @@ -0,0 +1,58 @@ +# Keycode Normal Shift Alt Shift+Alt + +# 1rst Row +keycode 0x02 = 1 ! +keycode 0x03 = 2 " +keycode 0x04 = 3 # +keycode 0x05 = 4 VoidSymbol $ +keycode 0x06 = 5 % +keycode 0x07 = 6 & +keycode 0x08 = 7 / | \ +keycode 0x09 = 8 ( [ { +keycode 0x0a = 9 ) ] } +keycode 0x0b = 0 = +keycode 0x0c = + ? +keycode 0x0d = VoidSymbol ` +keycode 0x0e = Backspace + +# 2nd Row +keycode 0x0f = Tab +keycode 0x10 = q Q +keycode 0x11 = w W +keycode 0x12 = e E +keycode 0x13 = r R +keycode 0x14 = t T +keycode 0x15 = y Y +keycode 0x16 = u U +keycode 0x17 = i I ^ +keycode 0x18 = o O +keycode 0x19 = p P +keycode 0x1a = VoidSymbol VoidSymbol VoidSymbol +keycode 0x1b = VoidSymbol ^ ~ ^ + +# 3rd Row +keycode 0x1e = a A +keycode 0x1f = s S +keycode 0x20 = d D +keycode 0x21 = f F +keycode 0x22 = g G , +keycode 0x23 = h H +keycode 0x24 = j J +keycode 0x25 = k K +keycode 0x26 = l L +keycode 0x27 = VoidSymbol VoidSymbol +keycode 0x28 = VoidSymbol VoidSymbol +keycode 0x2b = ' * @ ' + +# 4th Row +keycode 0x29 = < > [ { +keycode 0x2c = z Z +keycode 0x2d = x X +keycode 0x2e = c C +keycode 0x2f = v V +keycode 0x30 = b B +keycode 0x31 = n N +keycode 0x32 = m M +keycode 0x33 = , ; +keycode 0x34 = . : +keycode 0x35 = minus underscore Index: branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/layouts-src/mac-de.slt =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/layouts-src/mac-de.slt (revision 0) +++ branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/layouts-src/mac-de.slt (revision 1540) @@ -0,0 +1,58 @@ +# Keycode Normal Shift Alt Shift+Alt + +# 1rst Row +keycode 0x02 = 1 ! +keycode 0x03 = 2 " +keycode 0x04 = 3 VoidSymbol +keycode 0x05 = 4 $ +keycode 0x06 = 5 % [ +keycode 0x07 = 6 & ] +keycode 0x08 = 7 / | +keycode 0x09 = 8 ( { +keycode 0x0a = 9 ) } +keycode 0x0b = 0 = +keycode 0x0c = VoidSymbol ? +keycode 0x0d = VoidSymbol VoidSymbol +keycode 0x0e = Backspace + +# 2nd Row +keycode 0x0f = Tab +keycode 0x10 = q Q +keycode 0x11 = w W +keycode 0x12 = e E +keycode 0x13 = r R +keycode 0x14 = t T +keycode 0x15 = y Y +keycode 0x16 = u U +keycode 0x17 = i I +keycode 0x18 = o O +keycode 0x19 = p P +keycode 0x1a = VoidSymbol VoidSymbol +keycode 0x1b = + * + +# 3rd Row +keycode 0x1e = a A +keycode 0x1f = s S +keycode 0x20 = d D +keycode 0x21 = f F +keycode 0x22 = g G +keycode 0x23 = h H +keycode 0x24 = j J +keycode 0x25 = k K +keycode 0x26 = l L +keycode 0x27 = VoidSymbol VoidSymbol +keycode 0x28 = VoidSymbol VoidSymbol +keycode 0x2b = # ' + +# 4th Row +keycode 0x29 = < > +keycode 0x2c = y Y +keycode 0x2d = x X +keycode 0x2e = c C +keycode 0x2f = v V +keycode 0x30 = b B +keycode 0x31 = n N +keycode 0x32 = m M +keycode 0x33 = , ; +keycode 0x34 = . : +keycode 0x35 = minus underscore Index: branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/layouts-src/pc-fr.slt =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/layouts-src/pc-fr.slt (revision 0) +++ branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/layouts-src/pc-fr.slt (revision 1540) @@ -0,0 +1,58 @@ +# Keycode Normal Shift Alt Shift+Alt + +# 1ère Ligne +keycode 0x29 = < > +keycode 0x02 = & 1 +keycode 0x03 = VoidSymbol 2 ~ +keycode 0x04 = " 3 # +keycode 0x05 = ' 4 { +keycode 0x06 = ( 5 [ +keycode 0x07 = minus 6 | +keycode 0x08 = VoidSymbol 7 ` +keycode 0x09 = underscore 8 \ +keycode 0x0a = VoidSymbol 9 ^ +keycode 0x0b = VoidSymbol 0 @ +keycode 0x0c = ) VoidSymbol ] +keycode 0x0d = = + } +keycode 0x0e = Backspace + +# 2ème Ligne +keycode 0x0f = Tab +keycode 0x10 = a A +keycode 0x11 = z Z +keycode 0x12 = e E +keycode 0x13 = r R +keycode 0x14 = t T +keycode 0x15 = y Y +keycode 0x16 = u U +keycode 0x17 = i I +keycode 0x18 = o O +keycode 0x19 = p P +keycode 0x1a = ^ VoidSymbol +keycode 0x1b = $ VoidSymbol + +# 3ème Ligne +keycode 0x1e = q Q +keycode 0x1f = s S +keycode 0x20 = d D +keycode 0x21 = f F +keycode 0x22 = g G +keycode 0x23 = h H +keycode 0x24 = j J +keycode 0x25 = k K +keycode 0x26 = l L +keycode 0x27 = m M +keycode 0x28 = VoidSymbol % +keycode 0x2b = * VoidSymbol + +# 4ème Ligne +keycode 0x2c = w W +keycode 0x2d = x X +keycode 0x2e = c C +keycode 0x2f = v V +keycode 0x30 = b B +keycode 0x31 = n N +keycode 0x32 = , ? +keycode 0x33 = ; . +keycode 0x34 = : / +keycode 0x35 = ! VoidSymbol Index: branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/layouts-src/mac-it.slt =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/layouts-src/mac-it.slt (revision 0) +++ branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/layouts-src/mac-it.slt (revision 1540) @@ -0,0 +1,59 @@ +# Keycode Normal Shift Alt Shift+Alt + +# Prima riga +keycode 0x02 = ampersand one +keycode 0x03 = quotedbl two +keycode 0x04 = apostrophe three grave +keycode 0x05 = parenleft four braceleft bracketleft +keycode 0x06 = VoidSymbol five +keycode 0x07 = VoidSymbol six +keycode 0x08 = parenright seven braceright bracketright +keycode 0x09 = VoidSymbol eight +keycode 0x0a = VoidSymbol nine +keycode 0x0b = VoidSymbol zero +keycode 0x0c = minus underscore +keycode 0x0d = equal plus +keycode 0x0e = Backspace + +# Seconda riga +keycode 0x0f = Tab +keycode 0x10 = q Q +keycode 0x11 = z Z +keycode 0x12 = e E +keycode 0x13 = r R +keycode 0x14 = t T +keycode 0x15 = y Y +keycode 0x16 = u U +keycode 0x17 = i I +keycode 0x18 = o O +keycode 0x19 = p P +keycode 0x1a = VoidSymbol ^ +keycode 0x1b = $ * + +# Terza riga +keycode 0x1e = a A +keycode 0x1f = s S +keycode 0x20 = d D +keycode 0x21 = f F +keycode 0x22 = g G +keycode 0x23 = h H +keycode 0x24 = j J +keycode 0x25 = k K +keycode 0x26 = l L +keycode 0x27 = m M +keycode 0x28 = VoidSymbol % +keycode 0x2b = ` VoidSymbol @ # + +# Quarta riga +keycode 0x29 = < > +keycode 0x2c = w W +keycode 0x2d = x X +keycode 0x2e = c C +keycode 0x2f = v V +keycode 0x30 = b B +keycode 0x31 = n N ~ +keycode 0x32 = , ? +keycode 0x33 = ; . +shift alt keycode 0x33 = % +keycode 0x34 = : / | \ +keycode 0x35 = VoidSymbol ! Index: branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/layouts-src/README =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/layouts-src/README (revision 0) +++ branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/layouts-src/README (revision 1540) @@ -0,0 +1,2 @@ +You can create your own keylayout file with the cham-mklayout command with a +source file (*.slt) as input. \ No newline at end of file Index: branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/cham-mklayout.c =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/cham-mklayout.c (revision 0) +++ branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/cham-mklayout.c (revision 1540) @@ -0,0 +1,373 @@ +/* + * cham-mklayout.c + * Chameleon + * + * Created by JrCs on 30/08/11. + * Copyright 2011. All rights reserved. + * + */ + +#include +#include +#include +#include +#include +#include "stdint.h" +#include "term.h" +#include "keylayout.h" + +#define PACKAGE_NAME "chameleon" +#define PROGRAM_VERSION "1.0" + +static struct keyboard_layout default_layout = { + .keyboard_map = { + /* 0x00 */ 0, KEY_ESC, '1', '2', '3', '4', '5', '6', + /* 0x08 */ '7', '8', '9', '0', '-', '=', KEY_BKSP, KEY_TAB, + /* 0x10 */ 'q', 'w', 'e', 'r', 't', 'y', 'u', 'i', + /* 0x18 */ 'o', 'p', '[', ']', KEY_ENTER, 0, 'a', 's', + /* 0x20 */ 'd', 'f', 'g', 'h', 'j', 'k', 'l', ';', + /* 0x28 */ '\'', '`', 0, '\\', 'z', 'x', 'c', 'v', + /* 0x30 */ 'b', 'n', 'm', ',', '.', '/', 0, 0 + }, + .keyboard_map_shift = { + /* 0x00 */ 0, KEY_ESC, '!', '@', '#', '$', '%', '^', + /* 0x08 */ '&', '*', '(', ')', '_', '+', KEY_BKSP, 0, + /* 0x10 */ 'Q', 'W', 'E', 'R', 'T', 'Y', 'U', 'I', + /* 0x18 */ 'O', 'P', '{', '}', KEY_ENTER, 0, 'A', 'S', + /* 0x20 */ 'D', 'F', 'G', 'H', 'J', 'K', 'L', ':', + /* 0x28 */ '"', '~', 0, '|', 'Z', 'X', 'C', 'V', + /* 0x30 */ 'B', 'N', 'M', '<', '>', '?', 0, 0, + }, + .keyboard_map_alt = { + /* 0x00 */ 0, KEY_NOECHO, 0, 0, 0, 0, 0, 0, + /* 0x08 */ 0, 0, 0, 0, 0, 0, KEY_NOECHO, KEY_NOECHO, + /* 0x10 */ 0, 0, 0, 0, 0, 0, 0, 0, + /* 0x18 */ 0, 0, KEY_NOECHO, KEY_NOECHO, KEY_NOECHO, KEY_NOECHO, 0, 0, + /* 0x20 */ 0, 0, 0, 0, 0, 0, 0, KEY_NOECHO, + /* 0x28 */ KEY_NOECHO, KEY_NOECHO, KEY_NOECHO, KEY_NOECHO, 0, 0, 0, 0, + /* 0x30 */ 0, 0, 0, KEY_NOECHO, KEY_NOECHO, KEY_NOECHO, KEY_NOECHO, KEY_NOECHO, + }, +}; + +const char* program_name; + +static struct option options[] = { + {"input", required_argument, 0, 'i'}, + {"output", required_argument, 0, 'o'}, + {"keysyms", no_argument, 0, 'k'}, + {"help", no_argument, 0, 'h'}, + {"version", no_argument, 0, 'V'}, + {0, 0, 0, 0} +}; + +struct hash +{ + const char *keysym; + int code; +}; + +static struct hash keysym_to_code[] = { + {"BackSpace", KEY_BKSP}, + {"Tab", KEY_TAB}, + {"Linefeed", 0x000a}, + {"Space", 0x0020}, + {"Exclam", 0x0021}, + {"QuoteDbl", 0x0022}, + {"NumberSign", 0x0023}, + {"Dollar", 0x0024}, + {"Percent", 0x0025}, + {"Ampersand", 0x0026}, + {"Apostrophe", 0x0027}, + {"Parenleft", 0x0028}, + {"Parenright", 0x0029}, + {"Asterisk", 0x002a}, + {"Plus", 0x002b}, + {"Comma", 0x002c}, + {"Minus", 0x002d}, + {"Period", 0x002e}, + {"Slash", 0x002f}, + {"Zero", 0x0030}, + {"One", 0x0031}, + {"Two", 0x0032}, + {"Three", 0x0033}, + {"Four", 0x0034}, + {"Five", 0x0035}, + {"Six", 0x0036}, + {"Seven", 0x0037}, + {"Eight", 0x0038}, + {"Nine", 0x0039}, + {"Colon", 0x003a}, + {"SemiColon", 0x003b}, + {"Less", 0x003c}, + {"Equal", 0x003d}, + {"Greater", 0x003e}, + {"Question", 0x003f}, + {"At", 0x0040}, + {"BracketLeft", 0x005b}, + {"Backslash", 0x005c}, + {"BracketRight",0x005d}, + {"AsciiCircum", 0x005e}, + {"Underscore", 0x005f}, + {"Grave", 0x0060}, + {"BraceLeft", 0x007b}, + {"Bar", 0x007c}, + {"BraceRight", 0x007d}, + {"AsciiTilde", 0x007e}, + {"Enter", KEY_ENTER}, + {"Escape", KEY_ESC}, + {"PrintScreen", KEY_PRTSC}, + {"Left", KEY_LEFT}, + {"Right", KEY_RIGHT}, + {"Up", KEY_UP}, + {"Down", KEY_DOWN}, + {"Home", KEY_HOME}, + {"End", KEY_END}, + {"Center", KEY_CENTER}, + {"Insert", KEY_INS}, + {"Delete", KEY_DEL}, + {"PageUp", KEY_PGUP}, + {"PageDown", KEY_PGDN}, + {"F1", KEY_F1}, + {"F2", KEY_F2}, + {"F3", KEY_F3}, + {"F4", KEY_F4}, + {"F5", KEY_F5}, + {"F6", KEY_F6}, + {"F7", KEY_F7}, + {"F8", KEY_F8}, + {"F9", KEY_F9}, + {"F10", KEY_F10}, + {"F11", KEY_F11}, + {"F12", KEY_F12}, + {"VoidSymbol", KEY_NOECHO}, + {NULL, 0} +}; + + +static void usage (int status) { + if (status) + fprintf (stderr, "Try `%s --help' for more information.\n", program_name); + else + printf ("\ +Usage: %s [OPTIONS]\n\ + -i, --input set input filename.\n\ + -o, --output set output filename.\n\ + -k, --keysyms list recognized keysyms.\n\ + -h, --help display this message and exit.\n\ + -V, --version print version information and exit.\n\ +\n", program_name); + + exit (status); +} + +static void list_keysyms (void) { + int i; + for (i = 0; keysym_to_code[i].keysym != NULL; i++) { + printf("0x%04x\t %s\n", keysym_to_code[i].code, keysym_to_code[i].keysym); + } +} + +static int hash_lookup (const char *keysym, unsigned int *code) { + int i; + for (i = 0; keysym_to_code[i].keysym != NULL; i++) { + if (strcasecmp (keysym, keysym_to_code[i].keysym) == 0) { + *code = keysym_to_code[i].code; + return 0; + } + } + return -1; +} + +static int parse_keysym(const char* str, unsigned int *code) { + // Single character + if (strlen(str) == 1) { + *code=(unsigned char)(str[0]); + if (*code > ASCII_KEY_MASK) + return -1; + return 0; + } + + // Hex character code + if (sscanf(str, "0x%x", code)) + return 0; + + // Keysym + if (hash_lookup(str, code) == 0) + return 0; + + return -1; +} + +int parse_scancode(int linenum, char* code, unsigned int* scancode) { + + char* tmp; + errno = 0; // clear errno + + float parse_value = strtof(code, &tmp); + int rest = strlen(code) - ((void*) tmp - (void*)code); + if (rest != 0 || errno != 0) { + printf("Ignoring line %d: invalid scancode `%s'\n", linenum, code); + return -1; + } + + *scancode = parse_value; + + // Only the first scancodes can be translated + if (*scancode >= KEYBOARD_MAP_SIZE) { + printf("Ignoring line %d: invalid scancode 0x%02x. Scancode must be <= 0x%02x.\n", linenum, *scancode, + KEYBOARD_MAP_SIZE); + return -1; + } + return 0; +} + +void assign_keycode(int linenum, unsigned int scancode, const char* arg, uint16_t* map) { + unsigned int value; + if (parse_keysym(arg, &value) == -1) { + printf("Warning line %d (keycode 0x%02x): invalid symbol %s (must be a true ascii character)\n", + linenum, scancode, arg); + value = KEY_NOECHO; // VoidSymbol + } + map[scancode] = value; +} + +struct keyboard_layout* create_keylayout(FILE* in) { + char line[128], code[sizeof(line)]; + char arg1[sizeof(line)], arg2[sizeof(line)], arg3[sizeof(line)], + arg4[sizeof(line)]; + int n, linenum = 0; + unsigned int scancode; + + struct keyboard_layout* new_layout= malloc(sizeof(*new_layout)); + if (!new_layout) + return NULL; + + // Initialize new keybord layout + memcpy(new_layout, &default_layout, sizeof(*new_layout)); + + while(fgets(line, sizeof(line), in)) { + linenum++; + n = sscanf (line, "keycode %s = %s %s %s %s", code, arg1, arg2, arg3, arg4); + if (n > 1) { + if (parse_scancode(linenum, code, &scancode) == -1) + continue; + if (n >= 2) + assign_keycode(linenum, scancode, arg1, + new_layout->keyboard_map); + if (n >= 3) + assign_keycode(linenum, scancode, arg2, + new_layout->keyboard_map_shift); + if (n >= 4) + assign_keycode(linenum, scancode, arg3, + new_layout->keyboard_map_alt); + if (n >= 5) + assign_keycode(linenum, scancode, arg4, + new_layout->keyboard_map_shift_alt); + } else if (sscanf (line, "shift keycode %s = %s", code, arg1) == 2) { + if (parse_scancode(linenum, code, &scancode) == -1) + continue; + assign_keycode(linenum, scancode, arg1, + new_layout->keyboard_map_shift); + } else if (sscanf (line, "alt keycode %s = %s", code, arg1) == 2) { + if (parse_scancode(linenum, code, &scancode) == -1) + continue; + assign_keycode(linenum, scancode, arg1, + new_layout->keyboard_map_alt); + } else if (sscanf (line, "shift alt keycode %s = %s", code, arg1) == 2) { + if (parse_scancode(linenum, code, &scancode) == -1) + continue; + assign_keycode(linenum, scancode, arg1, + new_layout->keyboard_map_shift_alt); + } + } + return new_layout; +} + +void write_layout(struct keyboard_layout* layout, FILE* out) { + // Create the header + uint32_t version = KEYBOARD_LAYOUTS_VERSION; + fwrite(KEYBOARD_LAYOUTS_MAGIC, KEYBOARD_LAYOUTS_MAGIC_SIZE, 1, out); + fwrite(&version, 1, sizeof(version), out); + // Seek to start of layout + fseek(out, KEYBOARD_LAYOUTS_MAP_OFFSET, SEEK_SET); + // Write layout + fwrite(layout, sizeof(*layout), 1, out); +} + +void set_program_name(const char* arg) { + const char* last_slash; + last_slash = strrchr(arg, '/'); + program_name = (last_slash != NULL) ? last_slash + 1 : arg; +} + +int main (int argc, char *argv[]) { + int ch; + char *infile_name = NULL; + char *outfile_name = NULL; + FILE *in, *out; + + set_program_name (argv[0]); + + /* Check for options. */ + while ((ch = getopt_long (argc, argv, "i:o:hkV", options, 0)) != -1) { + switch (ch) { + case 'h': + usage (0); + break; + + case 'k': + list_keysyms(); + exit(0); + break; + + case 'i': + infile_name = optarg; + break; + + case 'o': + outfile_name = optarg; + break; + + case 'V': + printf ("%s v%s (%s)\n", program_name, PROGRAM_VERSION, PACKAGE_NAME); + return 0; + + default: + usage (1); + break; + } + } + + if (infile_name == NULL) { + fprintf(stderr, "You must specify an input file\n"); + usage(1); + } + + if (outfile_name == NULL) { + fprintf(stderr, "You must specify an output file\n"); + usage(1); + } + + in = fopen (infile_name, "r"); + if (!in) { + fprintf(stderr, "Couldn't open input file `%s': %s\n", + infile_name, strerror (errno)); + exit(1); + } + + out = fopen (outfile_name, "wb"); + if (!out) { + fprintf(stderr, "Couldn't open output file `%s': %s\n", + outfile_name, strerror (errno)); + exit(1); + } + + struct keyboard_layout* new_layout = create_keylayout(in); + if (new_layout) + write_layout(new_layout, out); + + fclose(out); + fclose(in); + + return 0; +} Index: branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/Makefile =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/Makefile (revision 0) +++ branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/layouts/Makefile (revision 1540) @@ -0,0 +1,56 @@ + +SRCROOT = $(abspath $(CURDIR)/../../../..) +OBJROOT = $(SRCROOT)/obj/i386/util +SYMROOT = $(SRCROOT)/sym/i386 +DSTROOT = $(SRCROOT)/dst/i386 +DOCROOT = $(SRCROOT)/doc +KEYMAPSROOT = $(SRCROOT)/Keymaps + +INC = -I$(SRCROOT)/i386/libsaio/ -I. -I.. + +OBJS = cham-mklayout.o32 cham-mklayout.o64 +OBJS := $(addprefix $(OBJROOT)/, $(OBJS)) + +MKLAYOUT = cham-mklayout +MKLAYOUT := $(addprefix $(SYMROOT)/, $(MKLAYOUT)) + +PROGRAMS = $(MKLAYOUT) + +LAYOUTS_SRC_DIR = layouts-src +KEYBOARD_LAYOUTS = $(patsubst $(LAYOUTS_SRC_DIR)/%.slt, $(KEYMAPSROOT)/%.lyt, \ + $(wildcard $(LAYOUTS_SRC_DIR)/*.slt)) + +DIRS_NEEDED = $(KEYMAPSROOT) + +include ${SRCROOT}/Make.rules + +all: $(DIRS_NEEDED) $(OBJROOT) $(SYMROOT) keymaps + +$(PROGRAMS): $(OBJS) + @echo "\t[LD32] $(@F)_32" + @$(CC) $(CFLAGS) $(LDFLAGS) $(DEFINES) $(INCLUDES) -arch i386 \ + -o $(SYMROOT)/$(@F)_32 $(OBJROOT)/$(@F).o32 + @echo "\t[LD64] $(@F)_64" + @$(CC) $(CFLAGS) $(LDFLAGS) $(DEFINES) $(INCLUDES) -arch x86_64 \ + -o $(SYMROOT)/$(@F)_64 $(OBJROOT)/$(@F).o64 + @echo "\t[LIPO] $(@F)" + @lipo -create -arch i386 $(SYMROOT)/$(@F)_32 -arch x86_64 $(SYMROOT)/$(@F)_64 \ + -output $(SYMROOT)/$(@F) + @$(RM) $(SYMROOT)/$(@F)_32 $(SYMROOT)/$(@F)_64 + +keymaps: $(KEYBOARD_LAYOUTS) + +$(KEYMAPSROOT)/%.lyt: $(LAYOUTS_SRC_DIR)/%.slt $(MKLAYOUT) + @echo "\t[LAYOUT] Creating keyboard layout: $*" + @$(MKLAYOUT) -i $< -o $@ + +#.PHONY layouts +clean-local: + @for o in $(OBJS); do if [ -f "$${o}" ];then echo "\t[RM] $${o}"; fi; done + @for p in $(PROGRAMS); do if [ -f "$${p}" ];then echo "\t[RM] $${p}"; fi; done + @for k in $(KEYBOARD_LAYOUTS); do if [ -f "$${k}" ];then echo "\t[RM] $${k}"; fi; done + @$(RM) -f $(PROGRAMS) $(OBJS) + +distclean-local: + @if [ -d "$(KEYMAPSROOT)" ];then echo "\t[RMDIR] $(KEYMAPSROOT)"; fi + @$(RM) -rf $(KEYMAPSROOT) Index: branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/Keylayout.c =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/Keylayout.c (revision 0) +++ branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/Keylayout.c (revision 1540) @@ -0,0 +1,131 @@ +/* + * Keymapper.c + * Chameleon + * + * Created by JrCs on 28/08/11. + * Copyright 2011. All rights reserved. + * + */ + +#include "libsaio.h" +#include "term.h" +#include "modules.h" +#include "Keylayout.h" +#include "bootstruct.h" + +#define kKeyboardLayout "KeyboardLayout" + +struct keyboard_layout *current_layout = NULL; + +int getchar_replacement() { + int code = bgetc(); + int status = readKeyboardShiftFlags(); + uint8_t scancode = code >> 8; + + // Special scancode sent when alt + some keys are pressed + if (scancode >= 0x78 && scancode <= 0x83) + scancode -= 0x76; + + if (scancode < KEYBOARD_MAP_SIZE && !(status & (STATUS_LCTRL| STATUS_RCTRL))) { + int key; + if ((status & (STATUS_LALT|STATUS_RALT)) && + (status & (STATUS_LSHIFT|STATUS_RSHIFT|STATUS_CAPS))) { + key=current_layout->keyboard_map_shift_alt[scancode]; + } + else if (status & (STATUS_LSHIFT|STATUS_RSHIFT|STATUS_CAPS)) + key=current_layout->keyboard_map_shift[scancode]; + else if (status & (STATUS_LALT|STATUS_RALT)) + key=current_layout->keyboard_map_alt[scancode]; + else + key=current_layout->keyboard_map[scancode]; + + if (key != 0) // do the mapping + code = key; + } + + if (ASCII_KEY(code) != 0) // if ascii not null return it + code = ASCII_KEY(code); + + //printf("Code: %04x\n",code); + return (code); +} + +static uint32_t load_keyboard_layout_file(const char *filename) { + int fd; + char magic[KEYBOARD_LAYOUTS_MAGIC_SIZE]; + uint32_t version; + + if ((fd = open_bvdev("bt(0,0)", filename, 0)) < 0) { + goto fail; // fail + } + + if (read(fd, magic, sizeof(magic)) != sizeof(magic)) { + printf("Can't find magic in keyboard layout file: %s\n", filename); + goto fail; + } + + if (memcmp (magic, KEYBOARD_LAYOUTS_MAGIC, KEYBOARD_LAYOUTS_MAGIC_SIZE) != 0) { + printf("Invalid magic code in keyboard layout file: %s\n", filename); + goto fail; + } + + if (read(fd, (char*) &version, sizeof(version)) != sizeof(version)) { + printf("Can't get version of keyboard layout file: %s\n", filename); + goto fail; + } + + if (version != KEYBOARD_LAYOUTS_VERSION) { + verbose("Bad version for keyboard layout file %s expected v%d found v%d\n", + filename, KEYBOARD_LAYOUTS_VERSION, version); + goto fail; + } + + if (current_layout) + free(current_layout); + + current_layout = malloc(sizeof(*current_layout)); + if (!current_layout) + goto fail; + + b_lseek(fd, KEYBOARD_LAYOUTS_MAP_OFFSET, 0); + + if (read(fd, (char*) current_layout, sizeof(*current_layout)) != sizeof(*current_layout)) { + printf("Wrong keyboard layout file %s size\n", filename); + goto fail; + } + + close(fd); + + return 1; + + fail: + + if (current_layout) { + free(current_layout); + current_layout = NULL; + } + return 0; +} + +void Keylayout_start() +{ + char layoutPath[512]; + const char *val; + int len; + + if (getValueForKey("KeyLayout", &val, &len, &bootInfo->chameleonConfig)) { + sprintf(layoutPath, "/Extra/Keymaps/%s", val); + // Add the extension if needed + if (len <= 4 || strcmp(val+len-4,".lyt") != 0) + strncat(layoutPath, ".lyt", sizeof(layoutPath)); + + if (!load_keyboard_layout_file(layoutPath)) { + printf("Can't load %s keyboard layout file. Keylayout will not be used !\n", + layoutPath); + sleep(2); + } else if (!replace_function("_getchar", &getchar_replacement)) { + printf("Can't replace function getchar: Keylayout module can't be used !\n"); + sleep(2); + } + } +} Index: branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/Cconfig =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/Cconfig (revision 0) +++ branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/Cconfig (revision 1540) @@ -0,0 +1,10 @@ +# +# Chameleon Modules +# + +config KEYLAYOUT_MODULE + tristate "Keylayout Module" + default m + ---help--- + Say Y here if you want to enable the use of this module. + Index: branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/Readme.txt =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/Readme.txt (revision 0) +++ branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/Readme.txt (revision 1540) @@ -0,0 +1,3 @@ +Module: Keylayout +Description: This module permits the user to define the keyboard key mappings +Dependencies: none Index: branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/Keylayout.h =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/Keylayout.h (revision 0) +++ branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/Keylayout.h (revision 1540) @@ -0,0 +1,29 @@ +/* + * Keylayout.h + * Chameleon + * + * Created by JrCs on 28/8/11. + * Copyright 2011. All rights reserved. + * + */ + + +#ifndef __KEYLAYOUT_H +#define __KEYLAYOUT_H + +#define KEYBOARD_LAYOUTS_MAGIC "CHAMLAYT" +#define KEYBOARD_LAYOUTS_MAGIC_SIZE (sizeof(KEYBOARD_LAYOUTS_MAGIC) - 1) +#define KEYBOARD_LAYOUTS_VERSION 3 +#define KEYBOARD_LAYOUTS_MAP_OFFSET 0x10 // 0x10 offset of the map in layout file + +#define KEYBOARD_MAP_SIZE 0x38 + +struct keyboard_layout +{ + uint16_t keyboard_map[KEYBOARD_MAP_SIZE]; + uint16_t keyboard_map_shift[KEYBOARD_MAP_SIZE]; + uint16_t keyboard_map_alt[KEYBOARD_MAP_SIZE]; + uint16_t keyboard_map_shift_alt[KEYBOARD_MAP_SIZE]; +}; + +#endif Index: branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/Makefile =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/Makefile (revision 0) +++ branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Keylayout/Makefile (revision 1540) @@ -0,0 +1,14 @@ +MODULE_NAME = Keylayout +MODULE_DESCRIPTION = This module provides keylayout functionality +MODULE_AUTHOR = "JrCs" +MODULE_VERSION = "1.2.0" +MODULE_COMPAT_VERSION = "1.2.0" +MODULE_START = $(MODULE_NAME)_start +MODULE_DEPENDENCIES = + +DIR = Keylayout +SUBDIRS += layouts + +MODULE_OBJS = Keylayout.o + +include ../MakeInc.dir Index: branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Cconfig =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Cconfig (revision 1539) +++ branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Cconfig (revision 1540) @@ -7,8 +7,9 @@ source "i386/modules/klibc/Cconfig" source "i386/modules/uClibcxx/Cconfig" source "i386/modules/HelloWorld/Cconfig" +source "i386/modules/Keylayout/Cconfig" source "i386/modules/AMDGraphicsEnabler/Cconfig" source "i386/modules/ATiGraphicsEnabler/Cconfig" source "i386/modules/IntelGraphicsEnabler/Cconfig" source "i386/modules/NVIDIAGraphicsEnabler/Cconfig" -endmenu \ No newline at end of file +endmenu Index: branches/azimutz/trunkGraphicsEnablerModules/i386/modules/AMDGraphicsEnabler/ati.c =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/i386/modules/AMDGraphicsEnabler/ati.c (revision 1539) +++ branches/azimutz/trunkGraphicsEnablerModules/i386/modules/AMDGraphicsEnabler/ati.c (revision 1540) @@ -321,9 +321,6 @@ { 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 }, @@ -405,8 +402,6 @@ { 0x9589, 0x30001462, CHIP_FAMILY_RV630, "ATI Radeon HD 3610", kNull , 0 }, - { 0x9589, 0x30001642, 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 }, @@ -414,7 +409,7 @@ { 0x9589, 0x01001A93, CHIP_FAMILY_RV630, "Qimonda Radeon HD 2600 PRO", kNull , 0 }, { 0x9591, 0x2303148C, CHIP_FAMILY_RV635, "ATI Radeon HD 3600 Series", kNull , 0 }, - //Azi: most of the 9598 are rv630, according to http://developer.amd.com/gpu_assets/ATI_Device_IDs_xxx_xx.txt + { 0x9598, 0xB3831002, CHIP_FAMILY_RV635, "ATI All-in-Wonder HD", kNull , 0 }, { 0x9598, 0x30001043, CHIP_FAMILY_RV635, "HD3730", kNull , 0 }, @@ -487,9 +482,10 @@ { 0x689C, 0x30201682, CHIP_FAMILY_HEMLOCK, "ATI Radeon HD 5970", kUakari , 0 }, - { 0x68A1, 0x144D103C, CHIP_FAMILY_CYPRESS, "ATI Mobility Radeon HD 5800", kNomascus , 0 }, // Oswaldini + { 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 }, // issue #89, Suxx + { 0x68A8, 0x050E1025, CHIP_FAMILY_CYPRESS, "AMD Radeon HD 6850M", kUakari , 0 }, { 0x68B8, 0x00CF106B, CHIP_FAMILY_JUNIPER, "ATI Radeon HD 5770", kHoolock , 0 }, @@ -504,14 +500,14 @@ { 0x68B8, 0x200B1787, CHIP_FAMILY_JUNIPER, "ATI Radeon HD 5770", kVervet , 0 }, { 0x68B8, 0x22881787, CHIP_FAMILY_JUNIPER, "ATI Radeon HD 5770", kVervet , 0 }, - { 0x68C0, 0x1594103C, CHIP_FAMILY_REDWOOD, "AMD Radeon HD 6570M", kNull , 0 }, // issue #91 + { 0x68C0, 0x1594103C, CHIP_FAMILY_REDWOOD, "AMD Radeon HD 6570M", kNull , 0 }, - { 0x68C0, 0x392717AA, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5730", kNull , 0 }, // BB - //Azi: from Slice { 0x100268C0, "ATI Radeon 5670 Series", "Galago"} - // http://www.insanelymac.com/forum/index.php?s=&showtopic=255866&view=findpost&p=1695482 + { 0x68C0, 0x392717AA, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5730", kNull , 0 }, + { 0x68C1, 0x033E1025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5650", 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 }, // ophtha72 + { 0x68C8, 0x2306103C, CHIP_FAMILY_REDWOOD, "ATI FirePro V4800 (FireGL)", kNull , 0 }, { 0x68D8, 0x03561043, CHIP_FAMILY_REDWOOD, "ATI Radeon HD 5670", kBaboon , 0 }, @@ -566,17 +562,16 @@ { 0x6739, 0x21F81458, CHIP_FAMILY_BARTS, "AMD Radeon HD 6850", kDuckweed , 0 }, - { 0x6740, 0x1657103C, CHIP_FAMILY_TURKS, "AMD Radeon HD 6770M", kNull , 0 }, // bebegoat + { 0x6740, 0x1657103C, CHIP_FAMILY_TURKS, "AMD Radeon HD 6770M", kNull , 0 }, - { 0x6741, 0x050E1025, CHIP_FAMILY_TURKS, "AMD Radeon HD 6650M", kNull , 0 }, // issue 121 - { 0x6741, 0x05131025, CHIP_FAMILY_TURKS, "AMD Radeon HD 6650M", kNull , 0 }, // Nai22 - - { 0x6741, 0x1646103C, CHIP_FAMILY_TURKS, "AMD Radeon HD 6750M", kNull , 0 }, // issue 88 - + { 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, 0x9080104D, CHIP_FAMILY_TURKS, "AMD Radeon HD 6630M", kNull , 0 }, { 0x6759, 0xE193174B, CHIP_FAMILY_TURKS, "AMD Radeon HD 6570", kNull , 0 }, + { 0x6760, 0x04CC1028, CHIP_FAMILY_RV730, "AMD Radeon HD 6490M", kNull , 0 }, { 0x6760, 0x1CB21043, CHIP_FAMILY_RV730, "AMD Radeon HD 6470M", kNull , 0 }, /* standard/default models */ Index: branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Makefile =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Makefile (revision 1539) +++ branches/azimutz/trunkGraphicsEnablerModules/i386/modules/Makefile (revision 1540) @@ -29,6 +29,10 @@ SUBDIRS += HelloWorld endif +ifdef CONFIG_KEYLAYOUT_MODULE +SUBDIRS += Keylayout +endif + ifdef CONFIG_ATIGRAPHICSENABLER_MODULE SUBDIRS += ATiGraphicsEnabler endif Index: branches/azimutz/trunkGraphicsEnablerModules/package/Scripts/Keymaps/postinstall.in =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/package/Scripts/Keymaps/postinstall.in (revision 0) +++ branches/azimutz/trunkGraphicsEnablerModules/package/Scripts/Keymaps/postinstall.in (revision 1540) @@ -0,0 +1,34 @@ +#!/usr/bin/python +# Script to add Graphics_Mode for Chameleon boot loaders + +import sys +import os +import shutil + +vol = str(sys.argv[3]) +boot = "/Extra/org.chameleon.Boot.plist" +plist = vol + boot +if not os.path.exists(plist): + shutil.copy('/Library/Preferences/SystemConfiguration/com.apple.Boot.plist', plist) + +infile = open(plist, "r") +# check if Graphics_Mode has been written or not +KeyLayoutCheck = False + +body = "" + +for line in infile: + # if we finish the tags and haven't written KeyLayout Yet + if "" in line and KeyLayoutCheck == False: + line = " KeyLayout\n" + line += " @@KEYMAP@@\n" + line += "\n" + KeyLayoutCheck = True + + body += line + +infile.close() + +outfile = open(plist, "w") +outfile.write(body) +outfile.close() Property changes on: branches/azimutz/trunkGraphicsEnablerModules/package/Scripts/Keymaps/postinstall.in ___________________________________________________________________ Added: svn:executable + * Index: branches/azimutz/trunkGraphicsEnablerModules/package/Resources/pl.lproj/Localizable.strings =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/package/Resources/pl.lproj/Localizable.strings (revision 1539) +++ branches/azimutz/trunkGraphicsEnablerModules/package/Resources/pl.lproj/Localizable.strings (revision 1540) @@ -37,6 +37,9 @@ Source: http://cxx.uclibc.org/ Dependencies: klibc"; +"Keylayout_title" = "Keylayout"; +"Keylayout_description" = "This module permits the user to define the keyboard key mappings."; + // Utility "Utility_title" = "Narzdzia"; "Utility_description" = "Opcjonalne pliki przydatne w konfiguracji."; @@ -145,6 +148,28 @@ "UseMemDetect_title" = "UseMemDetect=No"; "UseMemDetect_description" = "WyBcza domy[lnie wBczone rozpoznawanie pamici RAM."; +// KeyLayout +"KeyLayout_title" = "KeyLayout"; +"KeyLayout_description" = "Set keylayout to use"; + +"mac-de_title" = "German Mac Keyboard"; +"mac-de_description" = "Use the keyboard layout for a German Mac keyboard"; + +"mac-es_title" = "Spanish Mac Keyboard"; +"mac-es_description" = "Use the keyboard layout for a Spanish Mac keyboard"; + +"mac-fr_title" = "French Mac Keyboard"; +"mac-fr_description" = "Use the keyboard layout for a French Mac keyboard"; + +"mac-it_title" = "Italian Mac Keyboard"; +"mac-it_description" = "Use the keyboard layout for an Italian Mac keyboard"; + +"mac-se_title" = "Swedish Mac Keyboard"; +"mac-se_description" = "Use the keyboard layout for a Swedish Mac keyboard"; + +"pc-fr_title" = "French PC Keyboard"; +"pc-fr_description" = "Use the keyboard layout for a French PC keyboard"; + // Resolution "Resolution_title" = "Rozdzielczo["; "Resolution_description" = "Ustaw rozdzielczo[ ekranu dla twojego monitora."; Index: branches/azimutz/trunkGraphicsEnablerModules/package/Resources/id.lproj/Localizable.strings =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/package/Resources/id.lproj/Localizable.strings (revision 1539) +++ branches/azimutz/trunkGraphicsEnablerModules/package/Resources/id.lproj/Localizable.strings (revision 1540) @@ -36,6 +36,9 @@ Source: http://cxx.uclibc.org/ Dependencies: klibc"; +"Keylayout_title" = "Keylayout"; +"Keylayout_description" = "This module permits the user to define the keyboard key mappings."; + // Utility "Utility_title" = "Utility ; "Utility_description" =  Berkas tambahan untuk membantu pemasangan"; @@ -144,6 +147,28 @@ "UseMemDetect_title" = "UseMemDetect=No"; "UseMemDetect_description" =  Mematikan opsi pengenalan RAM yang secara otomatis dinyalakan. ; +// KeyLayout +"KeyLayout_title" = "KeyLayout"; +"KeyLayout_description" = "Set keylayout to use"; + +"mac-de_title" = "German Mac Keyboard"; +"mac-de_description" = "Use the keyboard layout for a German Mac keyboard"; + +"mac-es_title" = "Spanish Mac Keyboard"; +"mac-es_description" = "Use the keyboard layout for a Spanish Mac keyboard"; + +"mac-fr_title" = "French Mac Keyboard"; +"mac-fr_description" = "Use the keyboard layout for a French Mac keyboard"; + +"mac-it_title" = "Italian Mac Keyboard"; +"mac-it_description" = "Use the keyboard layout for an Italian Mac keyboard"; + +"mac-se_title" = "Swedish Mac Keyboard"; +"mac-se_description" = "Use the keyboard layout for a Swedish Mac keyboard"; + +"pc-fr_title" = "French PC Keyboard"; +"pc-fr_description" = "Use the keyboard layout for a French PC keyboard"; + // Resolution "Resolution_title" = "Resolusi ; "Resolution_description" =  Mengatur resolusi layar anda ; Index: branches/azimutz/trunkGraphicsEnablerModules/package/Resources/it.lproj/Localizable.strings =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/package/Resources/it.lproj/Localizable.strings (revision 1539) +++ branches/azimutz/trunkGraphicsEnablerModules/package/Resources/it.lproj/Localizable.strings (revision 1540) @@ -36,6 +36,9 @@ Fonte: http://cxx.uclibc.org/ Dipendenze: klibc"; +"Keylayout_title" = "Mappatura tastiera"; +"Keylayout_description" = "Questo modulo permette all'utente di definire la mappatura della propria tastiera."; + // Utility "Utility_title" = "Utilitá"; "Utility_description" = "Utilitá per Chameleon"; @@ -144,6 +147,28 @@ "UseMemDetect_title" = "UseMemDetect=No"; "UseMemDetect_description" = "Disattiva il riconoscimento della RAM automatico."; +// KeyLayout +"KeyLayout_title" = "KeyLayout"; +"KeyLayout_description" = "Seleziona la mappatura da utilizzare"; + +"mac-de_title" = "Mappatura tastiera Tedesca MAC"; +"mac-de_description" = "Usa la mappatura della tastiera Tedesca per MAC"; + +"mac-es_title" = "Mappatura tastiera Spagnola MAC"; +"mac-es_description" = "Usa la mappatura della tastiera Spagnola per MAC"; + +"mac-fr_title" = "Mappatura tastiera Francese Mac"; +"mac-fr_description" = "Usa la mappatura della tastiera Francese per MAC"; + +"mac-it_title" = "Mappatura tastiera Italiana Mac"; +"mac-it_description" = "Usa la mappatura della tastiera Italiana per MAC"; + +"mac-se_title" = "Mappatura tastiera Svedese Mac"; +"mac-se_description" = "Usa la mappatura della tastiera Svedese per MAC"; + +"pc-fr_title" = "Mappatura tastiera Francese PC"; +"pc-fr_description" = "Usa la mappatura della tastiera Francese per PC"; + // Resolution "Resolution_title" = "Risoluzioni"; "Resolution_description" = "Imposta la risoluzione del tuo monitor"; Index: branches/azimutz/trunkGraphicsEnablerModules/package/Resources/it.lproj/Welcome.rtfd/TXT.rtf =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/package/Resources/it.lproj/Welcome.rtfd/TXT.rtf (revision 1539) +++ branches/azimutz/trunkGraphicsEnablerModules/package/Resources/it.lproj/Welcome.rtfd/TXT.rtf (revision 1540) @@ -33,4 +33,4 @@ \pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural \fs26 \cf0 Copyright \'a9 2011 -\b \cf3 Italian translation: ErmaC e scrax} +\b \cf3 Tradotto da : ErmaC e scrax} Index: branches/azimutz/trunkGraphicsEnablerModules/package/Resources/hr-HR.lproj/Localizable.strings =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/package/Resources/hr-HR.lproj/Localizable.strings (revision 1539) +++ branches/azimutz/trunkGraphicsEnablerModules/package/Resources/hr-HR.lproj/Localizable.strings (revision 1540) @@ -43,6 +43,9 @@ Izvor: http://cxx.uclibc.org/ Dependencies: klibc"; +"Keylayout_title" = "Keylayout"; +"Keylayout_description" = "This module permits the user to define the keyboard key mappings."; + // Utility "Utility_title" = "Korisno"; "Utility_description" = "Fajl izbornik za pomo pri instalaciji"; @@ -184,6 +187,28 @@ "UseMemDetect_description" = "Isklju uje omogueno automatsko RAM prepoznavanje."; +// KeyLayout +"KeyLayout_title" = "KeyLayout"; +"KeyLayout_description" = "Set keylayout to use"; + +"mac-de_title" = "German Mac Keyboard"; +"mac-de_description" = "Use the keyboard layout for a German Mac keyboard"; + +"mac-es_title" = "Spanish Mac Keyboard"; +"mac-es_description" = "Use the keyboard layout for a Spanish Mac keyboard"; + +"mac-fr_title" = "French Mac Keyboard"; +"mac-fr_description" = "Use the keyboard layout for a French Mac keyboard"; + +"mac-it_title" = "Italian Mac Keyboard"; +"mac-it_description" = "Use the keyboard layout for an Italian Mac keyboard"; + +"mac-se_title" = "Swedish Mac Keyboard"; +"mac-se_description" = "Use the keyboard layout for a Swedish Mac keyboard"; + +"pc-fr_title" = "French PC Keyboard"; +"pc-fr_description" = "Use the keyboard layout for a French PC keyboard"; + // Resolution "Resolution_title" = "Resolution"; "Resolution_description" = "Postavlja rezoluciju za vaa monitor"; Index: branches/azimutz/trunkGraphicsEnablerModules/package/Resources/en.lproj/Localizable.strings =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/package/Resources/en.lproj/Localizable.strings (revision 1539) +++ branches/azimutz/trunkGraphicsEnablerModules/package/Resources/en.lproj/Localizable.strings (revision 1540) @@ -36,6 +36,9 @@ Source: http://cxx.uclibc.org/ Dependencies: klibc"; +"Keylayout_title" = "Keylayout"; +"Keylayout_description" = "This module permits the user to define the keyboard key mappings."; + // Utility "Utility_title" = "Utilities"; "Utility_description" = "Optional files to help setup"; @@ -144,6 +147,28 @@ "UseMemDetect_title" = "UseMemDetect=No"; "UseMemDetect_description" = "Disables the automatically enabled RAM recognition."; +// KeyLayout +"KeyLayout_title" = "KeyLayout"; +"KeyLayout_description" = "Set keylayout to use"; + +"mac-de_title" = "German Mac Keyboard"; +"mac-de_description" = "Use the keyboard layout for a German Mac keyboard"; + +"mac-es_title" = "Spanish Mac Keyboard"; +"mac-es_description" = "Use the keyboard layout for a Spanish Mac keyboard"; + +"mac-fr_title" = "French Mac Keyboard"; +"mac-fr_description" = "Use the keyboard layout for a French Mac keyboard"; + +"mac-it_title" = "Italian Mac Keyboard"; +"mac-it_description" = "Use the keyboard layout for an Italian Mac keyboard"; + +"mac-se_title" = "Swedish Mac Keyboard"; +"mac-se_description" = "Use the keyboard layout for a Swedish Mac keyboard"; + +"pc-fr_title" = "French PC Keyboard"; +"pc-fr_description" = "Use the keyboard layout for a French PC keyboard"; + // Resolution "Resolution_title" = "Resolution"; "Resolution_description" = "Set the screen resolution of your display"; Index: branches/azimutz/trunkGraphicsEnablerModules/package/Resources/pt-BR.lproj/Localizable.strings =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/package/Resources/pt-BR.lproj/Localizable.strings (revision 1539) +++ branches/azimutz/trunkGraphicsEnablerModules/package/Resources/pt-BR.lproj/Localizable.strings (revision 1540) @@ -36,6 +36,9 @@ Fonte: http://cxx.uclibc.org/ Dependências: klibc"; +"Keylayout_title" = "Keylayout"; +"Keylayout_description" = "This module permit to define the mapping of keyboard keys."; + // Utility "Utility_title" = "Utilitários"; "Utility_description" = "Arquivos opcionais para ajudar na configuração"; @@ -144,6 +147,28 @@ "UseMemDetect_title" = "UseMemDetect=No"; "UseMemDetect_description" = "Desativa a identificação automática de memória RAM."; +// KeyLayout +"KeyLayout_title" = "KeyLayout"; +"KeyLayout_description" = "Set keylayout to use"; + +"mac-de_title" = "German Mac Keyboard"; +"mac-de_description" = "Use the keyboard layout for a German Mac keyboard"; + +"mac-es_title" = "Spanish Mac Keyboard"; +"mac-es_description" = "Use the keyboard layout for a Spanish Mac keyboard"; + +"mac-fr_title" = "French Mac Keyboard"; +"mac-fr_description" = "Use the keyboard layout for a French Mac keyboard"; + +"mac-it_title" = "Italian Mac Keyboard"; +"mac-it_description" = "Use the keyboard layout for an Italian Mac keyboard"; + +"mac-se_title" = "Swedish Mac Keyboard"; +"mac-se_description" = "Use the keyboard layout for a Swedish Mac keyboard"; + +"pc-fr_title" = "French PC Keyboard"; +"pc-fr_description" = "Use the keyboard layout for a French PC keyboard"; + // Resolution "Resolution_title" = "Resolução"; "Resolution_description" = "Configura a resolução da tela"; Index: branches/azimutz/trunkGraphicsEnablerModules/package/Resources/pt-PT.lproj/Localizable.strings =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/package/Resources/pt-PT.lproj/Localizable.strings (revision 1539) +++ branches/azimutz/trunkGraphicsEnablerModules/package/Resources/pt-PT.lproj/Localizable.strings (revision 1540) @@ -36,6 +36,9 @@ Fonte: http://cxx.uclibc.org/ Dependências: klibc"; +"Keylayout_title" = "Keylayout"; +"Keylayout_description" = "This module permits the user to define the keyboard key mappings."; + // Utility "Utility_title" = "Utilitários"; "Utility_description" = "Arquivos opcionais para ajudar na configuração"; @@ -144,6 +147,28 @@ "UseMemDetect_title" = "UseMemDetect=No"; "UseMemDetect_description" = "Desactiva a identificação automática de memória RAM."; +// KeyLayout +"KeyLayout_title" = "KeyLayout"; +"KeyLayout_description" = "Set keylayout to use"; + +"mac-de_title" = "German Mac Keyboard"; +"mac-de_description" = "Use the keyboard layout for a German Mac keyboard"; + +"mac-es_title" = "Spanish Mac Keyboard"; +"mac-es_description" = "Use the keyboard layout for a Spanish Mac keyboard"; + +"mac-fr_title" = "French Mac Keyboard"; +"mac-fr_description" = "Use the keyboard layout for a French Mac keyboard"; + +"mac-it_title" = "Italian Mac Keyboard"; +"mac-it_description" = "Use the keyboard layout for an Italian Mac keyboard"; + +"mac-se_title" = "Swedish Mac Keyboard"; +"mac-se_description" = "Use the keyboard layout for a Swedish Mac keyboard"; + +"pc-fr_title" = "French PC Keyboard"; +"pc-fr_description" = "Use the keyboard layout for a French PC keyboard"; + // Resolution "Resolution_title" = "Resolução"; "Resolution_description" = "Configura a resolução do écran"; Index: branches/azimutz/trunkGraphicsEnablerModules/package/Resources/sr.lproj/Localizable.strings =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/package/Resources/sr.lproj/Localizable.strings (revision 1539) +++ branches/azimutz/trunkGraphicsEnablerModules/package/Resources/sr.lproj/Localizable.strings (revision 1540) @@ -44,6 +44,9 @@ Izvor: http://cxx.uclibc.org/ Dependencies: klibc"; +"Keylayout_title" = "Keylayout"; +"Keylayout_description" = "This module permits the user to define the keyboard key mappings."; + // Utility "Utility_title" = "Korisno"; "Utility_description" = "Menij fajlovi za pomo pri instalaciji"; @@ -180,6 +183,28 @@ "UseMemDetect_description" = "Isklju uje omogueno automatsko RAM prepoznavanje."; +// KeyLayout +"KeyLayout_title" = "KeyLayout"; +"KeyLayout_description" = "Set keylayout to use"; + +"mac-de_title" = "German Mac Keyboard"; +"mac-de_description" = "Use the keyboard layout for a German Mac keyboard"; + +"mac-es_title" = "Spanish Mac Keyboard"; +"mac-es_description" = "Use the keyboard layout for a Spanish Mac keyboard"; + +"mac-fr_title" = "French Mac Keyboard"; +"mac-fr_description" = "Use the keyboard layout for a French Mac keyboard"; + +"mac-it_title" = "Italian Mac Keyboard"; +"mac-it_description" = "Use the keyboard layout for an Italian Mac keyboard"; + +"mac-se_title" = "Swedish Mac Keyboard"; +"mac-se_description" = "Use the keyboard layout for a Swedish Mac keyboard"; + +"pc-fr_title" = "French PC Keyboard"; +"pc-fr_description" = "Use the keyboard layout for a French PC keyboard"; + // Resolution "Resolution_title" = "Resolution"; "Resolution_description" = "Postavlja rezoluciju ekrana za vaa monitor"; Index: branches/azimutz/trunkGraphicsEnablerModules/package/Resources/es.lproj/Localizable.strings =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/package/Resources/es.lproj/Localizable.strings (revision 1539) +++ branches/azimutz/trunkGraphicsEnablerModules/package/Resources/es.lproj/Localizable.strings (revision 1540) @@ -74,6 +74,12 @@ +"Keylayout_title" = "Keylayout"; + +"Keylayout_description" = "This module permits the user to define the keyboard key mappings."; + + + // Utility "Utility_title" = "Utilidades"; @@ -290,6 +296,50 @@ +// KeyLayout + +"KeyLayout_title" = "KeyLayout"; + +"KeyLayout_description" = "Set keylayout to use"; + + + +"mac-de_title" = "German Mac Keyboard"; + +"mac-de_description" = "Use the keyboard layout for a German Mac keyboard"; + + + +"mac-es_title" = "Spanish Mac Keyboard"; + +"mac-es_description" = "Use the keyboard layout for a Spanish Mac keyboard"; + + + +"mac-fr_title" = "French Mac Keyboard"; + +"mac-fr_description" = "Use the keyboard layout for a French Mac keyboard"; + + + +"mac-it_title" = "Italian Mac Keyboard"; + +"mac-it_description" = "Use the keyboard layout for an Italian Mac keyboard"; + + + +"mac-se_title" = "Swedish Mac Keyboard"; + +"mac-se_description" = "Use the keyboard layout for a Swedish Mac keyboard"; + + + +"pc-fr_title" = "French PC Keyboard"; + +"pc-fr_description" = "Use the keyboard layout for a French PC keyboard"; + + + // Resolution "Resolution_title" = "Resolución"; Index: branches/azimutz/trunkGraphicsEnablerModules/package/Resources/fr.lproj/Description.html =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/package/Resources/fr.lproj/Description.html (revision 0) +++ branches/azimutz/trunkGraphicsEnablerModules/package/Resources/fr.lproj/Description.html (revision 1540) @@ -0,0 +1,32 @@ + + + + + + + + + +

Chameleon est une conbinaison de différent composants de boot loader.

+

Il est basé sur la "fake EFI" implémentation de David Elliott ajouté au projet  Apple's boot-132.

+


+

Chameleon à été amélioré avec les fonctions clé suivantes:

+


+

Les nouvelles fonctionnalités de Chameleon 2.0

+


+

- Interface graphique entierement customisable pour apporter un peu de couleur au Darwin Bootloader.

+

- Booter un DVD Retail en chargeant directement une image RAMDISK sans l'aide de programmes tierce.

+

- Hibernation:  Appréciez  l'affichage d'un apercu d'écran durant le démarrage  après mise en veille.

+

- SMBIOS override : pour modifier les valeur d'usines du SMBIOS.

+

- DSDT override : Utilisation d'un DSDT modifié pouvant résoudre quelques problemes .

+


+

- Device Property Injection via device-properties string dans boot.plist.

+

- Hybrid boot0 / boot1h pour disque dur partionnés en MBR et GPT .

+

- Détection du FSB automatique , mème pour les CPU AMD récents.

+

- Support du Apple Software RAID .

+


+

Pour des informations plus détaillées , visitez : http://chameleon.osx86.hu

+ + Index: branches/azimutz/trunkGraphicsEnablerModules/package/Resources/fr.lproj/Localizable.strings =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/package/Resources/fr.lproj/Localizable.strings (revision 0) +++ branches/azimutz/trunkGraphicsEnablerModules/package/Resources/fr.lproj/Localizable.strings (revision 1540) @@ -0,0 +1,233 @@ +ÿþ// General +"Chameleon_title" = "Chameleon"; +"Chameleon_description" = "Chameleon requiert trois fichiers essentiels: +boot0 (Sur le MBR du disque) il est responsable du chargement de boot1. +boot1 (Sur le secteur de boot de la partition) pour trouver boot2. +boot2 (A la racine de la partition) pour charger le noyau etc."; + +"Standard_title" = "Standard"; +"Standard_description" = "Installe les fichiers de Chameleon à la racine de la partition sélectionnée en utilisant soit boot0 soit boot0md en fonction du système et sans détruire une installation de Windows existante."; + +"EFI_title" = "EFI"; +"EFI_description" = "Installe les fichiers de Chameleon dans la partition cachée EFI en utilisant soit boot0 soit boot0md en fonction du système et sans détruire une installation de Windows existante."; + +"noboot_title" = "Ne pas installer de Chargeur de Démarrage"; +"noboot_description" = "Utile si vous ne voulez installer que les Extras."; + +// Modules + +"Module_title" = "Modules Chameleon"; +"Module_description" = "Le système de modules intégrés à Chameleon permet à un utilisateur ou un développeur d'étendre les fonctionnalités de base de Chameleon sans remplacer le fichier de démarrage principal."; + +"klibc_title" = "klibc"; +"klibc_description" = "This module provides a standard c library for modules to link to if the library provided by chameleon is insufficient. +This is currently only used by the uClibc++ library. +Source: http://www.kernel.org/pub/linux/libs/klibc/"; + +"AutoReso_title" = "Resolution"; +"AutoReso_description" = "This module reads the edid information from the monitor attached to the main display. +The module is currently not integrated into trunk and has minimal uses as it stands. +Additionally, the module will patch the vesa modes available in pre intel hd graphics cards to provide proper resolution while booting."; + +"uClibc_title" = "uClibc++"; +"uClibc_description" = "This module provides a minimalistic c++ runtime library for use in other modules. +This does not provide functionality by itself, instead it is used to allow for the c++ language to be used in other modules. +Please note that rtti and exceptions has both been disabled. +Source: http://cxx.uclibc.org/ +Dependencies: klibc"; + +"Keylayout_title" = "Keylayout"; +"Keylayout_description" = "Ce module permet de changer le plan de codage du clavier."; + +// Utility +"Utility_title" = "Utilitaires"; +"Utility_description" = "Fichiers optionnels pour aider lors de l'installation"; + +"PrefPanel_title" = "Panneau de Préferences"; +"PrefPanel_description" = "Installe le Panneau de Préférences pour Chameleon."; + +"SMBIOSDefault_title" = "SMBIOS.plist"; +"SMBIOSDefault_description" = "Copie un exemple de smbios.plist dans /Extra/Configuration."; + +"Documentation_title" = "Documentation"; +"Documentation_description" = "Installe le manuel d'installation et d'utilisation de Chameleon"; + +// Options +"Options_title" = "Boot Options"; +"Options_description" = "Create an /Extra/org.chameleon.Boot.plist and select your desired options to control Chameleon's settings."; + +"arch_title" = "arch=i386"; +"arch_description" = "Boots the kernel in 32bit mode rather than the default 64bit mode."; + +"InstantMenu_title" = "InstantMenu=Yes"; +"InstantMenu_description" = "Display the partition selection screen without showing the timeout screen."; + +"QuietBoot_title" = "QuietBoot=Yes"; +"QuietBoot_description" = "Enable quiet boot mode (no messages or prompt)."; + +"RestartFix_title" = "RestartFix=No"; +"RestartFix_description" = "Disables the automatically enabled restart fix."; + +"ShowInfo_title" = "ShowInfo=No"; +"ShowInfo_description" = "Disables display of partition and resolution details."; + +"DropSSDT_title" = "DropSSDT=Yes"; +"DropSSDT_description" = "Discard the motherboard's built-in SSDT tables."; + +"EthernetBuiltIn_title" = "EthernetBuiltIn=Yes"; +"EthernetBuiltIn_description" = "ajoute EthernetBuiltIn=y au fichier com.apple.Boot.plist, cette option ajoutera 'built-in' a votre carte ethernet."; + +"GraphicsEnabler_title" = "GraphicsEnabler=Yes"; +"GraphicsEnabler_description" = "Enables the option to autodetect NVIDIA based GPUs and inject the correct info."; + +"EnableC2State_title" = "EnableC2State=Yes"; +"EnableC2State_description" = "Enable specific Processor power state, C2."; + +"EnableC3State_title" = "EnableC3State=Yes"; +"EnableC3State_description" = "Enable specific Processor power state, C3."; + +"EnableC4State_title" = "EnableC4State=Yes"; +"EnableC4State_description" = "Enable specific Processor power state, C4."; + +// Advanced +"Advanced_title" = "Advanced"; +"Advanced_description" = "Select your advanced desired options to control Chameleon's settings."; + +"Npci_title" = "npci=0x2000"; +"Npci_description" = "Set the flag npci=0x2000 for the Kernel Flags"; + +"BootBanner_title" = "BootBanner=No"; +"BootBanner_description" = "Hides Chameleon's boot banner in GUI."; + +"LegacyLogo_title" = "LegacyLogo=Yes"; +"LegacyLogo_description" = "Use the legacy (grey on white) apple logo on the boot screen rather than the boot.png in the theme."; + +"SMBIOSdefaults_title" = "SMBIOSdefaults=Yes"; +"SMBIOSdefaults_description" = "Enables SMBIOSdefaults options."; + +"UseAtiROM_title" = "UseAtiROM=Yes"; +"UseAtiROM_description" = "Enables UseAtiROM options."; + +"UseNvidiaROM_title" = "UseNvidiaROM=Yes"; +"UseNvidiaROM_description" = "Enables UseNvidiaROM options."; + +"Wait_title" = "Wait=Yes"; +"Wait_description" = "Pauses the boot process after Chameleon has finished it's setup then waits for a key press before it starts the mach kernel. Useful when combined with verbose boot for troubleshooting."; + +"Wake_title" = "Wake=Yes"; +"Wake_description" = "Attempts to load the sleep image saved from last hibernation."; + +"GUI_title" = "GUI=No"; +"GUI_description" = "Désactive l'interface graphique."; + +"VBIOS_title" = "VBIOS=Yes"; +"VBIOS_description" = "Enables VBIOS option"; + +"GenerateCStates_title" = "Generate C-States=Yes"; +"GenerateCStates_description" = "Enable auto generation of processor idle sleep states (C-States)."; + +"GeneratePStates_title" = "Generate P-States=Yes"; +"GeneratePStates_description" = "Enable auto generation of processor power performance states (P-States)."; + +"CSTUsingSystemIO_title" = "New - Generate C-States=Yes"; +"CSTUsingSystemIO_description" = "New C-State _CST generation method using SystemIO registers instead of FixedHW."; + +"ForceHPET_title" = "ForceHPET=Yes"; +"ForceHPET_description" = "ajoute ForceHPET=y to com.apple.Boot.plist, Cette option active HPET sur les chipsets intel,(pour les bios qui n'ont pas cette options)."; + +"ForceWake_title" = "ForceWake=Yes"; +"ForceWake_description" = "réveille forcé, (ajoute l'option ForceWake=y au fichier com.apple.Boot.plist)"; + +"EHCIacquire_title" = "EHCIacquire=Yes"; +"EHCIacquire_description" = "fixe certains problème de branchement usb a chaud et de reconnaissance usb2 !"; + +"UHCIreset_title" = "UHCIreset=Yes"; +"UHCIreset_description" = "fixe quelques rares problèmes de detection usb"; + +"UseMemDetect_title" = "UseMemDetect=No"; +"UseMemDetect_description" = "Disables the automatically enabled RAM recognition."; + +// KeyLayout +"KeyLayout_title" = "KeyLayout"; +"KeyLayout_description" = "Fixe le plan de codage du clavier à utiliser"; + +"mac-de_title" = "Clavier Mac Allemand"; +"mac-de_description" = "Utilise le plan de codage pour un clavier Mac Allemand"; + +"mac-fr_title" = "Clavier Mac Français"; +"mac-fr_description" = "Utilise le plan de codage pour un clavier Mac Français"; + +"mac-es_title" = "Clavier Mac Espagnol"; +"mac-es_description" = "Utilise le plan de codage pour un clavier Mac Espagnol"; + +"mac-it_title" = "Clavier Mac Italien"; +"mac-it_description" = "Utilise le plan de codage pour un clavier Mac Italien"; + +"mac-se_title" = "Clavier Mac Suédois"; +"mac-se_description" = "Utilise le plan de codage pour un clavier Mac Suédois"; + +"pc-fr_title" = "Clavier PC Keyboard"; +"pc-fr_description" = "Utilise le plan de codage pour un clavier PC Français"; + +// Resolution +"Resolution_title" = "Resolution"; +"Resolution_description" = "Set the screen resolution of your display"; + +"1024x600x32_title" = "1024x600x32"; +"1024x600x32_description" = "1024x600x32"; + +"1024x768x32_title" = "1024x768x32"; +"1024x768x32_description" = "1024x768x32"; + +"1280x800x32_title" = "1280x800x32"; +"1280x800x32_description" = "1280x800x32"; + +"1280x1024x32_title" = "1280x1024x32"; +"1280x1024x32_description" = "1280x1024x32"; + +"1280x960x32_title" = "1280x960x32"; +"1280x960x32_description" = "1280x960x32"; + +"1440x900x32_title" = "1440x900x32"; +"1440x900x32_description" = "1440x900x32"; + +"1600x900x32_title" = "1600x900x32"; +"1600x900x32_description" = "1600x900x32"; + +"1680x1050x32_title" = "1680x1050x32"; +"1680x1050x32_description" = "1680x1050x32"; + +"1920x1080x32_title" = "1920x1080x32"; +"1920x1080x32_description" = "1920x1080x32"; + +"1920x1200x32_title" = "1920x1200x32"; +"1920x1200x32_description" = "1920x1200x32"; + +// Themes +"Themes_title" = "Themes"; +"Themes_description" = "Une collection de themes samplé +More themes can be found at http://forum.voodooprojects.org/index.php/board,7.0.html"; + +"Embed_title" = "Embed"; +"Embed_description" = "A smaller simple version of the new default theme used when building a version of Chameleon which requires an embedded theme. "; + +"Legacy_title" = "Legacy"; +"Legacy_description" = "Chameleon's previous default theme"; + +"Default_title" = "Standard"; +"Default_description" = "Ce theme est codé directement dans le fichier Boot, inclu ici pour vous comme base de customisation."; + +// Extras +"Extras_title" = "Extras"; +"Extras_description" = "une collection d'addons utiles"; + +"SMBios_title" = "SMBIOS Override"; +"SMBios_description" = "Installe le fichier de configuration SMBIOS smbios.plist into Extra"; + +// Error strings +"ERROR_BOOTVOL" = "Ce logiciel doit être installé sur le volume de démmarrage."; +"ERROR_INSTALL" = "Ce volume ne remplit pas les conditions requises pour cette mise à jour."; + +"Newer_Package_Installed_message" = "Une version plus récente de Chameleon est déjà installée"; +"Intel_Mac_message" = "Ce logiciel ne peut être installé sur cette ordinateur."; + \ No newline at end of file Index: branches/azimutz/trunkGraphicsEnablerModules/package/Resources/fr.lproj/Welcome.rtfd/TXT.rtf =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/package/Resources/fr.lproj/Welcome.rtfd/TXT.rtf (revision 0) +++ branches/azimutz/trunkGraphicsEnablerModules/package/Resources/fr.lproj/Welcome.rtfd/TXT.rtf (revision 1540) @@ -0,0 +1,36 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1038\cocoasubrtf360 +{\fonttbl\f0\fnil\fcharset0 LucidaGrande;} +{\colortbl;\red255\green255\blue255;\red65\green78\blue255;\red0\green0\blue255;} +\margl1440\margr1440\vieww11660\viewh12980\viewkind0 +\pard\ri0\qc + +\f0\b\fs72 \cf0 Chameleon +\fs50 \ + +\fs26 v%CHAMELEONVERSION% r%CHAMELEONREVISION% +\fs50 \ +\pard\ri0\ql\qnatural + +\fs26 \cf0 \ +\pard\ri0\qc + +\fs50 \cf2 %CHAMELEONSTAGE% +\fs26 \cf0 \ +\pard\ri0\ql\qnatural +\cf0 \ +D\'e9veloppeurs : %DEVELOP%\ +\ +Remerciements \'e0 : %CREDITS%\ +\pard\tx360\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural + +\b0\fs30 \cf0 \ +\pard\ri0\ql\qnatural + +\b\fs26 \cf0 Paquet r\'e9alis\'e9 par : %PKGDEV% +\b0\fs30 \ +\pard\tx360\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural +\cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural + +\fs26 \cf0 Copyright \'a9 2011 +\b \cf3 Traduit par : jrcs} Index: branches/azimutz/trunkGraphicsEnablerModules/package/Resources/fr.lproj/Conclusion.rtfd/TXT.rtf =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/package/Resources/fr.lproj/Conclusion.rtfd/TXT.rtf (revision 0) +++ branches/azimutz/trunkGraphicsEnablerModules/package/Resources/fr.lproj/Conclusion.rtfd/TXT.rtf (revision 1540) @@ -0,0 +1,34 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1038\cocoasubrtf350 +{\fonttbl\f0\fnil\fcharset0 LucidaGrande;} +{\colortbl;\red255\green255\blue255;\red65\green78\blue255;\red255\green0\blue0;} +\margl1440\margr1440\vieww11660\viewh12980\viewkind0 +\pard\ri0\qc + +\f0\b\fs72 \cf0 Chameleon +\fs50 \ + +\fs26 v%CHAMELEONVERSION% r%CHAMELEONREVISION% +\fs50 \ +\ +\cf2 %CHAMELEONSTAGE%\cf0 \ +\pard\ri0\ql\qnatural + +\fs26 \cf0 \ +\pard\ri0\qc + +\fs50 \cf3 Installation Termin\'e9e ! +\b0\fs26 \cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural + +\fs18 \cf0 \ +{\field{\*\fldinst{HYPERLINK "http://chameleon.osx86.hu/"}}{\fldrslt +\fs26 http://chameleon.osx86.hu/}} +\fs26 \ +{\field{\*\fldinst{HYPERLINK "http://forum.voodooprojects.org/index.php"}}{\fldrslt http://forum.voodooprojects.org/index.php}} +\b \ +\pard\tx360\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural + +\b0\fs30 \cf0 \ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural + +\fs26 \cf0 Copyright \'a9 2011} Index: branches/azimutz/trunkGraphicsEnablerModules/package/Resources/fr.lproj/License.rtf =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/package/Resources/fr.lproj/License.rtf (revision 0) +++ branches/azimutz/trunkGraphicsEnablerModules/package/Resources/fr.lproj/License.rtf (revision 1540) @@ -0,0 +1,350 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1038\cocoasubrtf350 +{\fonttbl\f0\fmodern\fcharset0 Courier-Bold;\f1\fmodern\fcharset0 Courier;} +{\colortbl;\red255\green255\blue255;} +\paperw12240\paperh15840\vieww22060\viewh18360\viewkind0 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural + +\f0\b\fs40 \cf0 APPLE PUBLIC SOURCE LICENSE \ + +\fs26 Version 2.0 - August 6, 2003\ +\ + +\f1\b0 Please read this License carefully before downloading this software. By downloading or using this software, you are agreeing to be bound by the terms of this License. If you do not or cannot agree to the terms of this License, please do not download or use the software.\ +\ +1. General; Definitions. This License applies to any program or other work which Apple Computer, Inc. ("Apple") makes publicly available and which contains a notice placed by Apple identifying such program or work as "Original Code" and stating that it is subject to the terms of this Apple Public Source License version 2.0 ("License"). As used in this License:\ +\ +1.1 "Applicable Patent Rights" mean: (a) in the case where Apple is the grantor of rights, (i) claims of patents that are now or hereafter acquired, owned by or assigned to Apple and (ii) that cover subject matter contained in the Original Code, but only to the extent necessary to use, reproduce and/or distribute the Original Code without infringement; and (b) in the case where You are the grantor of rights, (i) claims of patents that are now or hereafter acquired, owned by or assigned to You and (ii) that cover subject matter in Your Modifications, taken alone or in combination with Original Code.\ +\ +1.2 "Contributor" means any person or entity that creates or contributes to the creation of Modifications.\ +\ +1.3 "Covered Code" means the Original Code, Modifications, the combination of Original Code and any Modifications, and/or any respective portions thereof.\ +\ +1.4 "Externally Deploy" means: (a) to sublicense, distribute or otherwise make Covered Code available, directly or indirectly, to anyone other than You; and/or (b) to use Covered Code, alone or as part of a Larger Work, in any way to provide a service, including but not limited to delivery of content, through electronic communication with a client other than You.\ +\ +1.5 "Larger Work" means a work which combines Covered Code or portions thereof with code not governed by the terms of this License.\ +\ +1.6 "Modifications" mean any addition to, deletion from, and/or change\ +to, the substance and/or structure of the Original Code, any previous\ +Modifications, the combination of Original Code and any previous\ +Modifications, and/or any respective portions thereof. When code is\ +released as a series of files, a Modification is: (a) any addition to\ +or deletion from the contents of a file containing Covered Code;\ +and/or (b) any new file or other representation of computer program\ +statements that contains any part of Covered Code.\ +\ +1.7 "Original Code" means (a) the Source Code of a program or other\ +work as originally made available by Apple under this License,\ +including the Source Code of any updates or upgrades to such programs\ +or works made available by Apple under this License, and that has been\ +expressly identified by Apple as such in the header file(s) of such\ +work; and (b) the object code compiled from such Source Code and\ +originally made available by Apple under this License.\ +\ +1.8 "Source Code" means the human readable form of a program or other\ +work that is suitable for making modifications to it, including all\ +modules it contains, plus any associated interface definition files,\ +scripts used to control compilation and installation of an executable\ +(object code).\ +\ +1.9 "You" or "Your" means an individual or a legal entity exercising\ +rights under this License. For legal entities, "You" or "Your"\ +includes any entity which controls, is controlled by, or is under\ +common control with, You, where "control" means (a) the power, direct\ +or indirect, to cause the direction or management of such entity,\ +whether by contract or otherwise, or (b) ownership of fifty percent\ +(50%) or more of the outstanding shares or beneficial ownership of\ +such entity.\ +\ +2. Permitted Uses; Conditions & Restrictions. Subject to the terms\ +and conditions of this License, Apple hereby grants You, effective on\ +the date You accept this License and download the Original Code, a\ +world-wide, royalty-free, non-exclusive license, to the extent of\ +Apple's Applicable Patent Rights and copyrights covering the Original\ +Code, to do the following:\ +\ +2.1 Unmodified Code. You may use, reproduce, display, perform,\ +internally distribute within Your organization, and Externally Deploy\ +verbatim, unmodified copies of the Original Code, for commercial or\ +non-commercial purposes, provided that in each instance:\ +\ +(a) You must retain and reproduce in all copies of Original Code the\ +copyright and other proprietary notices and disclaimers of Apple as\ +they appear in the Original Code, and keep intact all notices in the\ +Original Code that refer to this License; and\ +\ +(b) You must include a copy of this License with every copy of Source\ +Code of Covered Code and documentation You distribute or Externally\ +Deploy, and You may not offer or impose any terms on such Source Code\ +that alter or restrict this License or the recipients' rights\ +hereunder, except as permitted under Section 6.\ +\ +2.2 Modified Code. You may modify Covered Code and use, reproduce,\ +display, perform, internally distribute within Your organization, and\ +Externally Deploy Your Modifications and Covered Code, for commercial\ +or non-commercial purposes, provided that in each instance You also\ +meet all of these conditions:\ +\ +(a) You must satisfy all the conditions of Section 2.1 with respect to\ +the Source Code of the Covered Code;\ +\ +(b) You must duplicate, to the extent it does not already exist, the\ +notice in Exhibit A in each file of the Source Code of all Your\ +Modifications, and cause the modified files to carry prominent notices\ +stating that You changed the files and the date of any change; and\ +\ +(c) If You Externally Deploy Your Modifications, You must make\ +Source Code of all Your Externally Deployed Modifications either\ +available to those to whom You have Externally Deployed Your\ +Modifications, or publicly available. Source Code of Your Externally\ +Deployed Modifications must be released under the terms set forth in\ +this License, including the license grants set forth in Section 3\ +below, for as long as you Externally Deploy the Covered Code or twelve\ +(12) months from the date of initial External Deployment, whichever is\ +longer. You should preferably distribute the Source Code of Your\ +Externally Deployed Modifications electronically (e.g. download from a\ +web site).\ +\ +2.3 Distribution of Executable Versions. In addition, if You\ +Externally Deploy Covered Code (Original Code and/or Modifications) in\ +object code, executable form only, You must include a prominent\ +notice, in the code itself as well as in related documentation,\ +stating that Source Code of the Covered Code is available under the\ +terms of this License with information on how and where to obtain such\ +Source Code.\ +\ +2.4 Third Party Rights. You expressly acknowledge and agree that\ +although Apple and each Contributor grants the licenses to their\ +respective portions of the Covered Code set forth herein, no\ +assurances are provided by Apple or any Contributor that the Covered\ +Code does not infringe the patent or other intellectual property\ +rights of any other entity. Apple and each Contributor disclaim any\ +liability to You for claims brought by any other entity based on\ +infringement of intellectual property rights or otherwise. As a\ +condition to exercising the rights and licenses granted hereunder, You\ +hereby assume sole responsibility to secure any other intellectual\ +property rights needed, if any. For example, if a third party patent\ +license is required to allow You to distribute the Covered Code, it is\ +Your responsibility to acquire that license before distributing the\ +Covered Code.\ +\ +3. Your Grants. In consideration of, and as a condition to, the\ +licenses granted to You under this License, You hereby grant to any\ +person or entity receiving or distributing Covered Code under this\ +License a non-exclusive, royalty-free, perpetual, irrevocable license,\ +under Your Applicable Patent Rights and other intellectual property\ +rights (other than patent) owned or controlled by You, to use,\ +reproduce, display, perform, modify, sublicense, distribute and\ +Externally Deploy Your Modifications of the same scope and extent as\ +Apple's licenses under Sections 2.1 and 2.2 above.\ +\ +4. Larger Works. You may create a Larger Work by combining Covered\ +Code with other code not governed by the terms of this License and\ +distribute the Larger Work as a single product. In each such instance,\ +You must make sure the requirements of this License are fulfilled for\ +the Covered Code or any portion thereof.\ +\ +5. Limitations on Patent License. Except as expressly stated in\ +Section 2, no other patent rights, express or implied, are granted by\ +Apple herein. Modifications and/or Larger Works may require additional\ +patent licenses from Apple which Apple may grant in its sole\ +discretion.\ +\ +6. Additional Terms. You may choose to offer, and to charge a fee for,\ +warranty, support, indemnity or liability obligations and/or other\ +rights consistent with the scope of the license granted herein\ +("Additional Terms") to one or more recipients of Covered Code.\ +However, You may do so only on Your own behalf and as Your sole\ +responsibility, and not on behalf of Apple or any Contributor. You\ +must obtain the recipient's agreement that any such Additional Terms\ +are offered by You alone, and You hereby agree to indemnify, defend\ +and hold Apple and every Contributor harmless for any liability\ +incurred by or claims asserted against Apple or such Contributor by\ +reason of any such Additional Terms.\ +\ +7. Versions of the License. Apple may publish revised and/or new\ +versions of this License from time to time. Each version will be given\ +a distinguishing version number. Once Original Code has been published\ +under a particular version of this License, You may continue to use it\ +under the terms of that version. You may also choose to use such\ +Original Code under the terms of any subsequent version of this\ +License published by Apple. No one other than Apple has the right to\ +modify the terms applicable to Covered Code created under this\ +License.\ +\ +8. NO WARRANTY OR SUPPORT. The Covered Code may contain in whole or in\ +part pre-release, untested, or not fully tested works. The Covered\ +Code may contain errors that could cause failures or loss of data, and\ +may be incomplete or contain inaccuracies. You expressly acknowledge\ +and agree that use of the Covered Code, or any portion thereof, is at\ +Your sole and entire risk. THE COVERED CODE IS PROVIDED "AS IS" AND\ +WITHOUT WARRANTY, UPGRADES OR SUPPORT OF ANY KIND AND APPLE AND\ +APPLE'S LICENSOR(S) (COLLECTIVELY REFERRED TO AS "APPLE" FOR THE\ +PURPOSES OF SECTIONS 8 AND 9) AND ALL CONTRIBUTORS EXPRESSLY DISCLAIM\ +ALL WARRANTIES AND/OR CONDITIONS, EXPRESS OR IMPLIED, INCLUDING, BUT\ +NOT LIMITED TO, THE IMPLIED WARRANTIES AND/OR CONDITIONS OF\ +MERCHANTABILITY, OF SATISFACTORY QUALITY, OF FITNESS FOR A PARTICULAR\ +PURPOSE, OF ACCURACY, OF QUIET ENJOYMENT, AND NONINFRINGEMENT OF THIRD\ +PARTY RIGHTS. APPLE AND EACH CONTRIBUTOR DOES NOT WARRANT AGAINST\ +INTERFERENCE WITH YOUR ENJOYMENT OF THE COVERED CODE, THAT THE\ +FUNCTIONS CONTAINED IN THE COVERED CODE WILL MEET YOUR REQUIREMENTS,\ +THAT THE OPERATION OF THE COVERED CODE WILL BE UNINTERRUPTED OR\ +ERROR-FREE, OR THAT DEFECTS IN THE COVERED CODE WILL BE CORRECTED. NO\ +ORAL OR WRITTEN INFORMATION OR ADVICE GIVEN BY APPLE, AN APPLE\ +AUTHORIZED REPRESENTATIVE OR ANY CONTRIBUTOR SHALL CREATE A WARRANTY.\ +You acknowledge that the Covered Code is not intended for use in the\ +operation of nuclear facilities, aircraft navigation, communication\ +systems, or air traffic control machines in which case the failure of\ +the Covered Code could lead to death, personal injury, or severe\ +physical or environmental damage.\ +\ +9. LIMITATION OF LIABILITY. TO THE EXTENT NOT PROHIBITED BY LAW, IN NO\ +EVENT SHALL APPLE OR ANY CONTRIBUTOR BE LIABLE FOR ANY INCIDENTAL,\ +SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES ARISING OUT OF OR RELATING\ +TO THIS LICENSE OR YOUR USE OR INABILITY TO USE THE COVERED CODE, OR\ +ANY PORTION THEREOF, WHETHER UNDER A THEORY OF CONTRACT, WARRANTY,\ +TORT (INCLUDING NEGLIGENCE), PRODUCTS LIABILITY OR OTHERWISE, EVEN IF\ +APPLE OR SUCH CONTRIBUTOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH\ +DAMAGES AND NOTWITHSTANDING THE FAILURE OF ESSENTIAL PURPOSE OF ANY\ +REMEDY. SOME JURISDICTIONS DO NOT ALLOW THE LIMITATION OF LIABILITY OF\ +INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS LIMITATION MAY NOT APPLY\ +TO YOU. In no event shall Apple's total liability to You for all\ +damages (other than as may be required by applicable law) under this\ +License exceed the amount of fifty dollars ($50.00).\ +\ +10. Trademarks. This License does not grant any rights to use the\ +trademarks or trade names "Apple", "Apple Computer", "Mac", "Mac OS",\ +"QuickTime", "QuickTime Streaming Server" or any other trademarks,\ +service marks, logos or trade names belonging to Apple (collectively\ +"Apple Marks") or to any trademark, service mark, logo or trade name\ +belonging to any Contributor. You agree not to use any Apple Marks in\ +or as part of the name of products derived from the Original Code or\ +to endorse or promote products derived from the Original Code other\ +than as expressly permitted by and in strict compliance at all times\ +with Apple's third party trademark usage guidelines which are posted\ +at http://www.apple.com/legal/guidelinesfor3rdparties.html.\ +\ +11. Ownership. Subject to the licenses granted under this License,\ +each Contributor retains all rights, title and interest in and to any\ +Modifications made by such Contributor. Apple retains all rights,\ +title and interest in and to the Original Code and any Modifications\ +made by or on behalf of Apple ("Apple Modifications"), and such Apple\ +Modifications will not be automatically subject to this License. Apple\ +may, at its sole discretion, choose to license such Apple\ +Modifications under this License, or on different terms from those\ +contained in this License or may choose not to license them at all.\ +\ +12. Termination.\ +\ +12.1 Termination. This License and the rights granted hereunder will\ +terminate:\ +\ +(a) automatically without notice from Apple if You fail to comply with\ +any term(s) of this License and fail to cure such breach within 30\ +days of becoming aware of such breach;\ +\ +(b) immediately in the event of the circumstances described in Section\ +13.5(b); or\ +\ +(c) automatically without notice from Apple if You, at any time during\ +the term of this License, commence an action for patent infringement\ +against Apple; provided that Apple did not first commence\ +an action for patent infringement against You in that instance.\ +\ +12.2 Effect of Termination. Upon termination, You agree to immediately\ +stop any further use, reproduction, modification, sublicensing and\ +distribution of the Covered Code. All sublicenses to the Covered Code\ +which have been properly granted prior to termination shall survive\ +any termination of this License. Provisions which, by their nature,\ +should remain in effect beyond the termination of this License shall\ +survive, including but not limited to Sections 3, 5, 8, 9, 10, 11,\ +12.2 and 13. No party will be liable to any other for compensation,\ +indemnity or damages of any sort solely as a result of terminating\ +this License in accordance with its terms, and termination of this\ +License will be without prejudice to any other right or remedy of\ +any party.\ +\ +13. Miscellaneous.\ +\ +13.1 Government End Users. The Covered Code is a "commercial item" as\ +defined in FAR 2.101. Government software and technical data rights in\ +the Covered Code include only those rights customarily provided to the\ +public as defined in this License. This customary commercial license\ +in technical data and software is provided in accordance with FAR\ +12.211 (Technical Data) and 12.212 (Computer Software) and, for\ +Department of Defense purchases, DFAR 252.227-7015 (Technical Data --\ +Commercial Items) and 227.7202-3 (Rights in Commercial Computer\ +Software or Computer Software Documentation). Accordingly, all U.S.\ +Government End Users acquire Covered Code with only those rights set\ +forth herein.\ +\ +13.2 Relationship of Parties. This License will not be construed as\ +creating an agency, partnership, joint venture or any other form of\ +legal association between or among You, Apple or any Contributor, and\ +You will not represent to the contrary, whether expressly, by\ +implication, appearance or otherwise.\ +\ +13.3 Independent Development. Nothing in this License will impair\ +Apple's right to acquire, license, develop, have others develop for\ +it, market and/or distribute technology or products that perform the\ +same or similar functions as, or otherwise compete with,\ +Modifications, Larger Works, technology or products that You may\ +develop, produce, market or distribute.\ +\ +13.4 Waiver; Construction. Failure by Apple or any Contributor to\ +enforce any provision of this License will not be deemed a waiver of\ +future enforcement of that or any other provision. Any law or\ +regulation which provides that the language of a contract shall be\ +construed against the drafter will not apply to this License.\ +\ +13.5 Severability. (a) If for any reason a court of competent\ +jurisdiction finds any provision of this License, or portion thereof,\ +to be unenforceable, that provision of the License will be enforced to\ +the maximum extent permissible so as to effect the economic benefits\ +and intent of the parties, and the remainder of this License will\ +continue in full force and effect. (b) Notwithstanding the foregoing,\ +if applicable law prohibits or restricts You from fully and/or\ +specifically complying with Sections 2 and/or 3 or prevents the\ +enforceability of either of those Sections, this License will\ +immediately terminate and You must immediately discontinue any use of\ +the Covered Code and destroy all copies of it that are in your\ +possession or control.\ +\ +13.6 Dispute Resolution. Any litigation or other dispute resolution\ +between You and Apple relating to this License shall take place in the\ +Northern District of California, and You and Apple hereby consent to\ +the personal jurisdiction of, and venue in, the state and federal\ +courts within that District with respect to this License. The\ +application of the United Nations Convention on Contracts for the\ +International Sale of Goods is expressly excluded.\ +\ +13.7 Entire Agreement; Governing Law. This License constitutes the\ +entire agreement between the parties with respect to the subject\ +matter hereof. This License shall be governed by the laws of the\ +United States and the State of California, except that body of\ +California law concerning conflicts of law.\ +\ +Where You are located in the province of Quebec, Canada, the following\ +clause applies: The parties hereby confirm that they have requested\ +that this License and all related documents be drafted in English. Les\ +parties ont exige que le present contrat et tous les documents\ +connexes soient rediges en anglais.\ +\ +EXHIBIT A.\ +\ +"Portions Copyright (c) 1999-2003 Apple Computer, Inc. All Rights\ +Reserved.\ +\ +This file contains Original Code and/or Modifications of Original Code\ +as defined in and that are subject to the Apple Public Source License\ +Version 2.0 (the 'License'). You may not use this file except in\ +compliance with the License. Please obtain a copy of the License at\ +http://www.opensource.apple.com/apsl/ and read it before using this\ +file.\ +\ +The Original Code and all software distributed under the License are\ +distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER\ +EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,\ +INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,\ +FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.\ +Please see the License for the specific language governing rights and\ +limitations under the License." } \ No newline at end of file Index: branches/azimutz/trunkGraphicsEnablerModules/package/Resources/de.lproj/Localizable.strings =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/package/Resources/de.lproj/Localizable.strings (revision 1539) +++ branches/azimutz/trunkGraphicsEnablerModules/package/Resources/de.lproj/Localizable.strings (revision 1540) @@ -39,6 +39,9 @@ Quelldatei: http://cxx.uclibc.org/ Abhängigkeiten: klibc"; +"Keylayout_title" = "Keylayout"; +"Keylayout_description" = "This module permits the user to define the keyboard key mappings."; + // Utility "Utility_title" = "Nützliches"; "Utility_description" = "Optionale Bestandteile"; @@ -147,6 +150,28 @@ "UseMemDetect_title" = "Benutze MemDetect=Nein"; "UseMemDetect_description" = "Übergeht die automatische Erkennung des Arbeitsspeichers."; +// KeyLayout +"KeyLayout_title" = "KeyLayout"; +"KeyLayout_description" = "Set keylayout to use"; + +"mac-de_title" = "German Mac Keyboard"; +"mac-de_description" = "Use the keyboard layout for a German Mac keyboard"; + +"mac-es_title" = "Spanish Mac Keyboard"; +"mac-es_description" = "Use the keyboard layout for a Spanish Mac keyboard"; + +"mac-fr_title" = "French Mac Keyboard"; +"mac-fr_description" = "Use the keyboard layout for a French Mac keyboard"; + +"mac-it_title" = "Italian Mac Keyboard"; +"mac-it_description" = "Use the keyboard layout for an Italian Mac keyboard"; + +"mac-se_title" = "Swedish Mac Keyboard"; +"mac-se_description" = "Use the keyboard layout for a Swedish Mac keyboard"; + +"pc-fr_title" = "French PC Keyboard"; +"pc-fr_description" = "Use the keyboard layout for a French PC keyboard"; + // Resolution "Resolution_title" = "Bildschirmauflösung"; "Resolution_description" = "Setzt die Bildschirmauflösung für den Bootprozess."; Index: branches/azimutz/trunkGraphicsEnablerModules/package/buildpkg.sh =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/package/buildpkg.sh (revision 1539) +++ branches/azimutz/trunkGraphicsEnablerModules/package/buildpkg.sh (revision 1540) @@ -47,9 +47,9 @@ rm -R -f "${1}" echo "" -echo -e $COL_BLACK" ----------------------------------"$COL_RESET -echo -e $COL_BLACK" Building $packagename Install Package"$COL_RESET -echo -e $COL_BLACK" ----------------------------------"$COL_RESET +echo -e $COL_CYAN" ----------------------------------"$COL_RESET +echo -e $COL_CYAN" Building $packagename Install Package"$COL_RESET +echo -e $COL_CYAN" ----------------------------------"$COL_RESET echo "" outline[$((outlinecount++))]="${indent[$xmlindent]}" @@ -117,6 +117,7 @@ # klibc.dylib # # Resolution.dylib # # uClibcxx.dylib # + # Keylayout.dylib # ############################### if [ "$(ls -A "${1%/*}/i386/modules")" ]; then { @@ -143,6 +144,27 @@ } fi # - + if [ -e ${1%/*}/i386/modules/Keylayout.dylib ]; then + { + mkdir -p ${1}/Keylayout/Root/Extra/{modules,Keymaps} + mkdir -p ${1}/Keylayout/Root/usr/bin + layout_src_dir="${1%/sym/*}/i386/modules/Keylayout/layouts/layouts-src" + if [ -d "$layout_src_dir" ];then + # Create a tar.gz from layout sources + (cd "$layout_src_dir"; \ + tar czf "${1}/Keylayout/Root/Extra/Keymaps/layouts-src.tar.gz" README *.slt) + fi + # Adding module + ditto --noextattr --noqtn ${1%/*}/i386/modules/Keylayout.dylib ${1}/Keylayout/Root/Extra/modules + # Adding Keymaps + ditto --noextattr --noqtn ${1%/sym/*}/Keymaps ${1}/Keylayout/Root/Extra/Keymaps + # Adding tools + ditto --noextattr --noqtn ${1%/*}/i386/cham-mklayout ${1}/Keylayout/Root/usr/bin + echo " [BUILD] Keylayout " + buildpackage "${1}/Keylayout" "/" "" "start_selected=\"true\"" >/dev/null 2>&1 + } + fi +# - if [ -e ${1%/*}/i386/modules/uClibcxx.dylib ]; then { mkdir -p ${1}/uClibc/Root @@ -225,6 +247,26 @@ done # End build base options packages + # build KeyLayout option packages + echo "================= Keymaps Options =================" + outline[$((outlinecount++))]="${indent[$xmlindent]}\t" + choices[$((choicescount++))]="\n\n" + ((xmlindent++)) + packagesidentity="org.chameleon.options.keylayout" + keymaps=($( find "${1%/sym/*}/Keymaps" -type f -depth 1 -name '*.lyt' | sed 's|.*/||;s|\.lyt||' )) + for (( i = 0 ; i < ${#keymaps[@]} ; i++ )) + do + mkdir -p "${1}/${keymaps[$i]}/Root/" + mkdir -p "${1}/${keymaps[$i]}/Scripts/" + sed "s/@@KEYMAP@@/${keymaps[$i]}/g" "${pkgroot}/Scripts/Keymaps/postinstall.in" > "${1}/${keymaps[$i]}/Scripts/postinstall" && \ + chmod +rx "${1}/${keymaps[$i]}/Scripts/postinstall" + echo " [BUILD] ${keymaps[$i]} " + buildpackage "${1}/${keymaps[$i]}" "/tmpcham" "" "start_selected=\"false\"" >/dev/null 2>&1 + done + ((xmlindent--)) + outline[$((outlinecount++))]="${indent[$xmlindent]}\t" + # End build KeyLayout option packages + # build resolution packages echo "================= Res. Options =================" outline[$((outlinecount++))]="${indent[$xmlindent]}\t" @@ -244,7 +286,7 @@ ((xmlindent--)) outline[$((outlinecount++))]="${indent[$xmlindent]}\t" # End build resolution packages - + # build Advanced packages echo "================= Adv. Options =================" outline[$((outlinecount++))]="${indent[$xmlindent]}\t" @@ -270,7 +312,7 @@ outline[$((outlinecount++))]="${indent[$xmlindent]}\t" # End build options packages - + # build theme packages echo "================= Themes =================" outline[$((outlinecount++))]="${indent[$xmlindent]}\t" @@ -460,17 +502,17 @@ echo "MD5 (${packagename// /}-${version}-r${revision}.pkg) = ${md5}" > "${1%/*}/${packagename// /}-${version}-r${revision}.pkg.md5" echo "" - echo -e $COL_BLACK" --------------------------"$COL_RESET - echo -e $COL_BLACK" Building process complete!"$COL_RESET - echo -e $COL_BLACK" --------------------------"$COL_RESET + echo -e $COL_GREEN" --------------------------"$COL_RESET + echo -e $COL_GREEN" Building process complete!"$COL_RESET + echo -e $COL_GREEN" --------------------------"$COL_RESET echo "" - echo -e $COL_BLACK" Build info." - echo -e $COL_BLACK" ===========" - echo -e $COL_BLUE" Package name: "$COL_BLACK"$packagename-${version}-r$revision.pkg"$COL_RESET - echo -e $COL_BLUE" MD5: "$COL_BLACK"$md5"$COL_RESET - echo -e $COL_BLUE" Version: "$COL_BLACK"$version"$COL_RESET - echo -e $COL_BLUE" Stage: "$COL_BLACK"$stage"$COL_RESET - echo -e $COL_BLUE" Date/Time: "$COL_BLACK"$builddate"$COL_RESET + echo -e $COL_GREEN" Build info." + echo -e $COL_GREEN" ===========" + echo -e $COL_BLUE" Package name: "$COL_RESET"$packagename-${version}-r$revision.pkg" + echo -e $COL_BLUE" MD5: "$COL_RESET"$md5" + echo -e $COL_BLUE" Version: "$COL_RESET"$version" + echo -e $COL_BLUE" Stage: "$COL_RESET"$stage" + echo -e $COL_BLUE" Date/Time: "$COL_RESET"$builddate" echo "" } Index: branches/azimutz/trunkGraphicsEnablerModules/doc/BootHelp.txt =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/doc/BootHelp.txt (revision 1539) +++ branches/azimutz/trunkGraphicsEnablerModules/doc/BootHelp.txt (revision 1540) @@ -72,6 +72,9 @@ and /S/L/E/Extensions.mkext. Default is No but Yes if you use Lion on a Raid partition. + KeyLayout=keymap Use to change the keyboard mapping of the bootloader + (e.g. KeyLayout=mac-fr) + GraphicsEnabler=Yes|No Automatic device-properties generation for gfx cards. AtiConfig= Use a different card config, e.g. AtiConfig=Megalodon. AtiPorts= Specify the number of ports, e.g. AtiPorts=2. @@ -107,6 +110,8 @@ (C-States). GeneratePStates=Yes Enable auto generation of processor power performance states (P-States). + CSTUsingSystemIO=Yes New C-State _CST generation method using SystemIO + registers instead of FixedHW. EnableC2State=Yes Enable specific Processor power state, C2. EnableC3State=Yes Enable specific Processor power state, C3. Index: branches/azimutz/trunkGraphicsEnablerModules/Makefile =================================================================== --- branches/azimutz/trunkGraphicsEnablerModules/Makefile (revision 1539) +++ branches/azimutz/trunkGraphicsEnablerModules/Makefile (revision 1540) @@ -81,6 +81,14 @@ ifdef CONFIG_BDMESG @cp -f ${SYMROOT}/i386/bdmesg ${IMGROOT}/usr/bin endif +ifdef CONFIG_KEYLAYOUT_MODULE + @cp -f ${SYMROOT}/i386/cham-mklayout ${IMGROOT}/usr/bin + @echo "\t[MKDIR] ${IMGROOT}/Extra/Keymaps" + @mkdir -p ${IMGROOT}/Extra/Keymaps + @echo "\t[CP] Keymaps ${IMGROOT}/Extra/Keymaps" + @cp -R -f "Keymaps"/* "${IMGROOT}/Extra/Keymaps/" +endif + @echo "\t[HDIUTIL] ${ISOIMAGE}" @hdiutil makehybrid -iso -joliet -hfs -hfs-volume-name \ ${CDLABEL} -eltorito-boot ${CDBOOT} -no-emul-boot -ov -o \ Property changes on: branches/azimutz/trunkGraphicsEnablerModules ___________________________________________________________________ Modified: svn:mergeinfo Merged /trunk:r1517-1539