Index: branches/ErmaC/Trunk/Chameleon.xcodeproj/project.pbxproj =================================================================== --- branches/ErmaC/Trunk/Chameleon.xcodeproj/project.pbxproj (revision 1725) +++ branches/ErmaC/Trunk/Chameleon.xcodeproj/project.pbxproj (revision 1726) @@ -651,6 +651,25 @@ 6DBAFFC313B0D4590047ED33 /* ufsmount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ufsmount.h; sourceTree = ""; }; 6DBAFFC413B0D4590047ED33 /* unistd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = unistd.h; sourceTree = ""; }; 6DBAFFC513B0D4590047ED33 /* unwind.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = unwind.h; sourceTree = ""; }; + A354B6271495124F00D81AA5 /* ESPpostinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = ESPpostinstall; sourceTree = ""; }; + A354B6281495124F00D81AA5 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; + A354B6291495124F00D81AA5 /* preinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = preinstall; sourceTree = ""; }; + A354B62A1495124F00D81AA5 /* Standardpostinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = Standardpostinstall; sourceTree = ""; }; + A354B62C149514DE00D81AA5 /* CheckDiskMicrocode.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = CheckDiskMicrocode.sh; sourceTree = ""; }; + A354B62D149514DE00D81AA5 /* CheckFatType.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = CheckFatType.sh; sourceTree = ""; }; + A354B62E149514DE00D81AA5 /* CheckGRUBLinuxLoader.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = CheckGRUBLinuxLoader.sh; sourceTree = ""; }; + A354B62F149514DE00D81AA5 /* CheckPartitionScheme.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = CheckPartitionScheme.sh; sourceTree = ""; }; + A354B630149514DE00D81AA5 /* CheckPreviousChameleon.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = CheckPreviousChameleon.sh; sourceTree = ""; }; + A354B631149514DE00D81AA5 /* CheckProceed.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = CheckProceed.sh; sourceTree = ""; }; + A354B632149514DE00D81AA5 /* CheckWindowsDiskSignature.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = CheckWindowsDiskSignature.sh; sourceTree = ""; }; + A354B633149514DE00D81AA5 /* InstallLog.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = InstallLog.sh; sourceTree = ""; }; + A354B634149514DE00D81AA5 /* MountESP.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = MountESP.sh; sourceTree = ""; }; + A354B635149514DE00D81AA5 /* patch */ = {isa = PBXFileReference; lastKnownFileType = file; path = patch; sourceTree = ""; }; + A354B636149514DE00D81AA5 /* SetActivePartition.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = SetActivePartition.sh; sourceTree = ""; }; + A354B637149514DE00D81AA5 /* UnMountEFIvolumes.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = UnMountEFIvolumes.sh; sourceTree = ""; }; + A354B638149514DE00D81AA5 /* WriteChameleonStage0.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = WriteChameleonStage0.sh; sourceTree = ""; }; + A354B639149514DE00D81AA5 /* WriteChameleonStage1.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = WriteChameleonStage1.sh; sourceTree = ""; }; + A354B63A149514DE00D81AA5 /* WriteChameleonStage2.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = WriteChameleonStage2.sh; sourceTree = ""; }; A3561C731413FD7800E9B51E /* auto.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = auto.c; sourceTree = ""; }; A3561C741413FD7800E9B51E /* auto.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = auto.h; sourceTree = ""; }; A3561C751413FD7800E9B51E /* Cconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Cconfig; sourceTree = ""; }; @@ -951,49 +970,6 @@ 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 = ""; }; @@ -2350,6 +2326,39 @@ path = ufs; sourceTree = ""; }; + A354B6261495124F00D81AA5 /* Main */ = { + isa = PBXGroup; + children = ( + A354B6271495124F00D81AA5 /* ESPpostinstall */, + A354B6281495124F00D81AA5 /* postinstall */, + A354B6291495124F00D81AA5 /* preinstall */, + A354B62A1495124F00D81AA5 /* Standardpostinstall */, + ); + path = Main; + sourceTree = ""; + }; + A354B62B149514DE00D81AA5 /* Sub */ = { + isa = PBXGroup; + children = ( + A354B62C149514DE00D81AA5 /* CheckDiskMicrocode.sh */, + A354B62D149514DE00D81AA5 /* CheckFatType.sh */, + A354B62E149514DE00D81AA5 /* CheckGRUBLinuxLoader.sh */, + A354B62F149514DE00D81AA5 /* CheckPartitionScheme.sh */, + A354B630149514DE00D81AA5 /* CheckPreviousChameleon.sh */, + A354B631149514DE00D81AA5 /* CheckProceed.sh */, + A354B632149514DE00D81AA5 /* CheckWindowsDiskSignature.sh */, + A354B633149514DE00D81AA5 /* InstallLog.sh */, + A354B634149514DE00D81AA5 /* MountESP.sh */, + A354B635149514DE00D81AA5 /* patch */, + A354B636149514DE00D81AA5 /* SetActivePartition.sh */, + A354B637149514DE00D81AA5 /* UnMountEFIvolumes.sh */, + A354B638149514DE00D81AA5 /* WriteChameleonStage0.sh */, + A354B639149514DE00D81AA5 /* WriteChameleonStage1.sh */, + A354B63A149514DE00D81AA5 /* WriteChameleonStage2.sh */, + ); + path = Sub; + sourceTree = ""; + }; A3561C721413FD7800E9B51E /* fdisk */ = { isa = PBXGroup; children = ( @@ -2706,421 +2715,12 @@ A3F1F20D141B9B0D00DDA709 /* Scripts */ = { isa = PBXGroup; children = ( - A3F1F20E141B9B0D00DDA709 /* Advanced */, - A3F1F231141B9B0D00DDA709 /* BaseOptions */, - A3F1F24A141B9B0D00DDA709 /* EFI */, - A3F1F24C141B9B0D00DDA709 /* Keymaps */, - A3F1F24E141B9B0D00DDA709 /* Post */, - A3F1F250141B9B0D00DDA709 /* Resolutions */, - A3F1F265141B9B0D00DDA709 /* Standard */, + A354B6261495124F00D81AA5 /* Main */, + A354B62B149514DE00D81AA5 /* Sub */, ); 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 = ( @@ -3550,7 +3150,7 @@ 08FB7793FE84155DC02AAC07 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0410; + LastUpgradeCheck = 0420; }; buildConfigurationList = 1DEB919308733D9F0010E9CD /* Build configuration list for PBXProject "Chameleon" */; compatibilityVersion = "Xcode 3.2"; Index: branches/ErmaC/Trunk/i386/libsaio/nvidia.c =================================================================== --- branches/ErmaC/Trunk/i386/libsaio/nvidia.c (revision 1725) +++ branches/ErmaC/Trunk/i386/libsaio/nvidia.c (revision 1726) @@ -400,7 +400,7 @@ { 0x10DE05E2, "GeForce GTX 260" }, { 0x10DE05E3, "GeForce GTX 285" }, { 0x10DE05E6, "GeForce GTX 275" }, - { 0x10DE05E7, "Tesla C1060" }, + { 0x10DE05E7, "Tesla C1060" }, // ErmaC { 0x10DE05EA, "GeForce GTX 260" }, { 0x10DE05EB, "GeForce GTX 295" }, { 0x10DE05ED, "Quadroplex 2200 D2" }, @@ -440,10 +440,10 @@ { 0x10DE061B, "Quadro VX 200" }, { 0x10DE061C, "Quadro FX 3600M" }, { 0x10DE061D, "Quadro FX 2800M" }, - { 0x10DE061E, "Quadro FX 3700M" }, + { 0x10DE061E, "Quadro FX 3700M" }, // ErmaC { 0x10DE061F, "Quadro FX 3800M" }, // 0620 - 062F - { 0x10DE0621, "GeForce GT 230" }, + { 0x10DE0621, "GeForce GT 230" }, // ErmaC { 0x10DE0622, "GeForce 9600 GT" }, { 0x10DE0623, "GeForce 9600 GS" }, { 0x10DE0625, "GeForce 9600 GSO 512"}, @@ -451,7 +451,7 @@ { 0x10DE0627, "GeForce GT 140" }, { 0x10DE0628, "GeForce 9800M GTS" }, { 0x10DE062A, "GeForce 9700M GTS" }, - { 0x10DE062B, "GeForce 9800M GS" }, + { 0x10DE062B, "GeForce 9800M GS" }, // ErmaC { 0x10DE062C, "GeForce 9800M GTS" }, { 0x10DE062D, "GeForce 9600 GT" }, { 0x10DE062E, "GeForce 9600 GT" }, @@ -481,7 +481,7 @@ { 0x10DE0652, "GeForce GT 130M" }, { 0x10DE0653, "GeForce GT 120M" }, { 0x10DE0654, "GeForce GT 220M" }, - { 0x10DE0655, "GeForce GT 120" }, + { 0x10DE0655, "GeForce GT 120" }, // ErmaC { 0x10DE0656, "GeForce 9650 S" }, { 0x10DE0658, "Quadro FX 380" }, { 0x10DE0659, "Quadro FX 580" }, @@ -512,7 +512,7 @@ { 0x10DE06DD, "Quadro 4000" }, { 0x10DE06DE, "Tesla M2050" }, // TODO: sub-device id: 0x0846 { 0x10DE06DE, "Tesla M2070" }, // TODO: sub-device id: ? - { 0x10DE06DF, "Tesla M2070-Q" }, + { 0x10DE06DF, "Tesla M2070-Q" }, // ErmaC // 0x10DE06DE also applies to misc S2050, X2070, M2050, M2070 // 06E0 - 06EF { 0x10DE06E0, "GeForce 9300 GE" }, @@ -530,13 +530,13 @@ { 0x10DE06EC, "GeForce G 105M" }, { 0x10DE06EF, "GeForce G 103M" }, // 06F0 - 06FF - { 0x10DE06F1, "GeForce G105M" }, + { 0x10DE06F1, "GeForce G105M" }, // ErmaC { 0x10DE06F8, "Quadro NVS 420" }, { 0x10DE06F9, "Quadro FX 370 LP" }, { 0x10DE06FA, "Quadro NVS 450" }, { 0x10DE06FB, "Quadro FX 370M" }, { 0x10DE06FD, "Quadro NVS 295" }, - { 0x10DE06FF, "HICx16 + Graphics" }, + { 0x10DE06FF, "HICx16 + Graphics" }, // ErmaC // 0700 - 070F // 0710 - 071F // 0720 - 072F @@ -563,7 +563,7 @@ // 0820 - 082F // 0830 - 083F // 0840 - 084F - { 0x10DE0840, "GeForce 8200M" }, + { 0x10DE0840, "GeForce 8200M" }, // ErmaC { 0x10DE0844, "GeForce 9100M G" }, { 0x10DE0845, "GeForce 8200M G" }, { 0x10DE0846, "GeForce 9200" }, @@ -586,7 +586,7 @@ { 0x10DE0866, "GeForce 9400M G" }, { 0x10DE0867, "GeForce 9400" }, { 0x10DE0868, "nForce 760i SLI" }, - { 0x10DE0869, "GeForce 9400" }, + { 0x10DE0869, "GeForce 9400" }, // ErmaC { 0x10DE086A, "GeForce 9400" }, { 0x10DE086C, "GeForce 9300 / nForce 730i" }, { 0x10DE086D, "GeForce 9200" }, @@ -606,8 +606,8 @@ // 0880 - 088F // 0890 - 089F // 08A0 - 08AF - { 0x10DE08A0, "GeForce 320M" }, - { 0x10DE08A4, "GeForce 320M" }, + { 0x10DE08A0, "GeForce 320M" }, // ErmaC + { 0x10DE08A4, "GeForce 320M" }, // ErmaC // 08B0 - 08BF // 08C0 - 08CF // 08D0 - 08DF @@ -635,8 +635,8 @@ { 0x10DE0A20, "GeForce GT220" }, { 0x10DE0A22, "GeForce 315" }, { 0x10DE0A23, "GeForce 210" }, - { 0x10DE0A26, "GeForce 405" }, - { 0x10DE0A27, "GeForce 405" }, + { 0x10DE0A26, "GeForce 405" }, // ErmaC + { 0x10DE0A27, "GeForce 405" }, // ErmaC { 0x10DE0A28, "GeForce GT 230M" }, { 0x10DE0A29, "GeForce GT 330M" }, { 0x10DE0A2A, "GeForce GT 230M" }, @@ -646,7 +646,7 @@ // 0A30 - 0A3F { 0x10DE0A34, "GeForce GT 240M" }, { 0x10DE0A35, "GeForce GT 325M" }, - { 0x10DE0A38, "Quadro 400" }, + { 0x10DE0A38, "Quadro 400" }, // ErmaC { 0x10DE0A3C, "Quadro FX 880M" }, // 0A40 - 0A4F // 0A50 - 0A5F @@ -671,9 +671,9 @@ { 0x10DE0A73, "GeForce 305M" }, { 0x10DE0A74, "GeForce G210M" }, { 0x10DE0A75, "GeForce G310M" }, - { 0x10DE0A76, "ION" }, + { 0x10DE0A76, "ION" }, // ErmaC { 0x10DE0A78, "Quadro FX 380 LP" }, - { 0x10DE0A7A, "GeForce 315M" }, + { 0x10DE0A7A, "GeForce 315M" }, // ErmaC { 0x10DE0A7C, "Quadro FX 380M" }, // 0A80 - 0A8F // 0A90 - 0A9F @@ -714,11 +714,11 @@ { 0x10DE0CA2, "GeForce GT 320" }, { 0x10DE0CA3, "GeForce GT 240" }, { 0x10DE0CA4, "GeForce GT 340" }, - { 0x10DE0CA5, "GeForce GT 220" }, + { 0x10DE0CA5, "GeForce GT 220" }, // ErmaC { 0x10DE0CA7, "GeForce GT 330" }, { 0x10DE0CA8, "GeForce GTS 260M" }, { 0x10DE0CA9, "GeForce GTS 250M" }, - { 0x10DE0CAC, "GeForce GT 220" }, + { 0x10DE0CAC, "GeForce GT 220" }, // ErmaC { 0x10DE0CAF, "GeForce GT 335M" }, // 0CB0 - 0CBF { 0x10DE0CB0, "GeForce GTS 350M" }, @@ -749,14 +749,14 @@ { 0x10DE0DC6, "GeForce GTS 450" }, { 0x10DE0DCA, "GF10x" }, // 0DD0 - 0DDF - { 0x10DE0DCD, "GeForce GT 555M" }, - { 0x10DE0DCE, "GeForce GT 555M" }, + { 0x10DE0DCD, "GeForce GT 555M" }, // ErmaC + { 0x10DE0DCE, "GeForce GT 555M" }, // ErmaC { 0x10DE0DD1, "GeForce GTX 460M" }, { 0x10DE0DD2, "GeForce GT 445M" }, { 0x10DE0DD3, "GeForce GT 435M" }, - { 0x10DE0DD6, "GeForce GT 550M" }, + { 0x10DE0DD6, "GeForce GT 550M" }, // ErmaC { 0x10DE0DD8, "Quadro 2000" }, - { 0x10DE0DDA, "Quadro 2000M" }, + { 0x10DE0DDA, "Quadro 2000M" }, // ErmaC { 0x10DE0DDE, "GF106-ES" }, { 0x10DE0DDF, "GF106-INT" }, // 0DE0 - 0DEF @@ -765,20 +765,20 @@ { 0x10DE0DE2, "GeForce GT 420" }, { 0x10DE0DE5, "GeForce GT 530" }, { 0x10DE0DEB, "GeForce GT 555M" }, - { 0x10DE0DEC, "GeForce GT 525M" }, - { 0x10DE0DED, "GeForce GT 520M" }, + { 0x10DE0DEC, "GeForce GT 525M" }, // ErmaC + { 0x10DE0DED, "GeForce GT 520M" }, // ErmaC { 0x10DE0DEE, "GeForce GT 415M" }, // 0DF0 - 0DFF { 0x10DE0DF0, "GeForce GT 425M" }, { 0x10DE0DF1, "GeForce GT 420M" }, { 0x10DE0DF2, "GeForce GT 435M" }, { 0x10DE0DF3, "GeForce GT 420M" }, - { 0x10DE0DF4, "GeForce GT 540M" }, - { 0x10DE0DF5, "GeForce GT 525M" }, - { 0x10DE0DF6, "GeForce GT 550M" }, - { 0x10DE0DF7, "GeForce GT 520M" }, + { 0x10DE0DF4, "GeForce GT 540M" }, // ErmaC + { 0x10DE0DF5, "GeForce GT 525M" }, // ErmaC + { 0x10DE0DF6, "GeForce GT 550M" }, // ErmaC + { 0x10DE0DF7, "GeForce GT 520M" }, // ErmaC { 0x10DE0DF8, "Quadro 600" }, - { 0x10DE0DFA, "Quadro 1000M" }, + { 0x10DE0DFA, "Quadro 1000M" }, // ErmaC { 0x10DE0DFE, "GF108 ES" }, { 0x10DE0DFF, "GF108 INT" }, // 0E00 - 0E0F @@ -791,10 +791,10 @@ { 0x10DE0E25, "D12U-50" }, // 0E30 - 0E3F { 0x10DE0E30, "GeForce GTX 470M" }, - { 0x10DE0E31, "GeForce GTX 485M" }, + { 0x10DE0E31, "GeForce GTX 485M" }, // ErmaC { 0x10DE0E38, "GF104GL" }, - { 0x10DE0E3A, "Quadro 3000M" }, - { 0x10DE0E3B, "Quadro 4000M" }, + { 0x10DE0E3A, "Quadro 3000M" }, // ErmaC + { 0x10DE0E3B, "Quadro 4000M" }, // ErmaC { 0x10DE0E3E, "GF104-ES" }, { 0x10DE0E3F, "GF104-INT" }, // 0E40 - 0E4F @@ -833,43 +833,44 @@ { 0x10DE1040, "GeForce GT 520" }, // 1050 - 105F { 0x10DE1050, "GeForce GT 520M" }, + { 0x10DE1054, "GeForce GT 410M" }, // ErmaC + { 0x10DE1056, "NVS 4200M" }, // ErmaC + { 0x10DE1057, "NVS 4200M" }, // ErmaC // 1060 - 106F // 1070 - 107F // 1080 - 108F - { 0x10DE1054, "GeForce GT 410M" }, - { 0x10DE1056, "NVS 4200M" }, - { 0x10DE1057, "NVS 4200M" }, - { 0x10DE107F, "NVIDIA GF119-ES" }, + { 0x10DE107F, "NVIDIA GF119-ES" }, // ErmaC { 0x10DE1080, "GeForce GTX 580" }, { 0x10DE1081, "GeForce GTX 570" }, { 0x10DE1082, "GeForce GTX 560 Ti" }, { 0x10DE1083, "D13U" }, - { 0x10DE1084, "GeForce GTX 560" }, - { 0x10DE1086, "GeForce GTX 570" }, + { 0x10DE1084, "GeForce GTX 560" }, // ErmaC + { 0x10DE1086, "GeForce GTX 570" }, // ErmaC + { 0x10DE1087, "GeForce GTX 560 Ti-448" }, // ErmaC { 0x10DE1088, "GeForce GTX 590" }, - { 0x10DE1089, "GeForce GTX 580" }, - { 0x10DE108B, "GeForce GTX 590" }, // Subsystem Id: 1043 8391 + { 0x10DE1089, "GeForce GTX 580" }, // ErmaC + { 0x10DE108B, "GeForce GTX 590" }, // ErmaC // 1090 - 109F - { 0x10DE1091, "Tesla M2090" }, + { 0x10DE1091, "Tesla M2090" }, // ErmaC { 0x10DE1098, "D13U" }, - { 0x10DE109A, "Quadro 5010M" }, - { 0x10DE109B, "Quadro 7000" }, + { 0x10DE109A, "Quadro 5010M" }, // ErmaC + { 0x10DE109B, "Quadro 7000" }, // ErmaC // 10A0 - 10AF // 10B0 - 10BF // 10C0 - 10CF - { 0x10DE10C0, "GeForce 9300 GS" }, + { 0x10DE10C0, "GeForce 9300 GS" }, // ErmaC { 0x10DE10C3, "GeForce 8400 GS" }, - { 0x10DE10C5, "GeForce 405" }, + { 0x10DE10C5, "GeForce 405" }, // ErmaC // 10D0 - 10DF - { 0x10DE10D8, "NVS 300" }, + { 0x10DE10D8, "NVS 300" }, // ErmaC // 1200 - { 0x10DE1200, "GeForce GTX 560 Ti" }, - { 0x10DE1201, "GeForce GTX 560" }, - { 0x10DE1241, "GeForce GT 545" }, - { 0x10DE1243, "GeForce GT 545" }, + { 0x10DE1201, "GeForce GTX 560" }, // ErmaC + { 0x10DE1241, "GeForce GT 545" }, // ErmaC + { 0x10DE1243, "GeForce GT 545" }, // ErmaC { 0x10DE1244, "GeForce GTX 550 Ti" }, { 0x10DE1245, "GeForce GTS 450" }, - { 0x10DE1251, "GeForce GTX 560M" }, + { 0x10DE1251, "GeForce GTX 560M" }, // ErmaC }; static uint16_t swap16(uint16_t x) Index: branches/ErmaC/Trunk/i386/libsaio/ati.c =================================================================== --- branches/ErmaC/Trunk/i386/libsaio/ati.c (revision 1725) +++ branches/ErmaC/Trunk/i386/libsaio/ati.c (revision 1726) @@ -53,6 +53,7 @@ CHIP_FAMILY_HEMLOCK, CHIP_FAMILY_JUNIPER, CHIP_FAMILY_REDWOOD, + CHIP_FAMILY_BROADWAY, /* Northern Islands */ CHIP_FAMILY_ANTILLES, CHIP_FAMILY_BARTS, @@ -95,6 +96,7 @@ "Hemlock", "Juniper", "Redwood", + "Broadway", /* Northern Islands */ "Antilles", "Barts", @@ -378,6 +380,7 @@ { 0x9540, 0x30501787, CHIP_FAMILY_RV710, "ATI Radeon HD 4590", kNull }, { 0x954F, 0x16131462, CHIP_FAMILY_RV710, "ATI Radeon HD 4550", kNull }, // ErmaC + { 0x954F, 0x20081787, CHIP_FAMILY_RV710, "ATI Radeon HD 4350", kNull }, // ErmaC { 0x954F, 0x29201682, CHIP_FAMILY_RV710, "ATI Radeon HD 4550", kNull }, { 0x954F, 0x29211682, CHIP_FAMILY_RV710, "ATI Radeon HD 4550", kNull }, { 0x954F, 0x30901682, CHIP_FAMILY_RV710, "XFX Radeon HD 4570", kNull }, @@ -489,6 +492,8 @@ { 0x6899, 0xE140174B, CHIP_FAMILY_CYPRESS, "ATI Radeon HD 5850", kUakari }, + { 0x6899, 0xE174174B, CHIP_FAMILY_CYPRESS, "ATI Sapphire Radeon HD 5850", kUakari }, + { 0x6899, 0x200A1787, CHIP_FAMILY_CYPRESS, "ATI Radeon HD 5850", kUakari }, { 0x6899, 0x22901787, CHIP_FAMILY_CYPRESS, "ATI Radeon HD 5850", kUakari }, @@ -497,6 +502,8 @@ { 0x689C, 0x30201682, CHIP_FAMILY_HEMLOCK, "ATI Radeon HD 5970", kUakari }, + { 0x68A0, 0x043A1028, CHIP_FAMILY_BROADWAY, "ATI Mobility Radeon HD 5870", kNull }, // ErmaC + { 0x68A1, 0x144D103C, CHIP_FAMILY_CYPRESS, "ATI Mobility Radeon HD 5850", kNomascus }, { 0x68A1, 0x1522103C, CHIP_FAMILY_CYPRESS, "ATI Mobility Radeon HD 5850", kHoolock }, @@ -521,6 +528,8 @@ { 0x68B8, 0x200B1787, CHIP_FAMILY_JUNIPER, "ATI Radeon HD 5770", kVervet }, { 0x68B8, 0x22881787, CHIP_FAMILY_JUNIPER, "ATI Radeon HD 5770", kVervet }, + { 0x68BE, 0x22881787, CHIP_FAMILY_JUNIPER, "ATI Radeon HD 5750", kVervet }, // ErmaC + { 0x68BF, 0x220E1458, CHIP_FAMILY_JUNIPER, "ATI Radeon HD 6750", kVervet }, { 0x68C0, 0x1594103C, CHIP_FAMILY_REDWOOD, "AMD Radeon HD 6570M", kNull }, @@ -529,6 +538,21 @@ { 0x68C0, 0x395217AA, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5730", kNull }, // ErmaC + { 0x68C1, 0x02051025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull }, // ErmaC + { 0x68C1, 0x02961025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull }, // ErmaC + { 0x68C1, 0x030A1025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull }, // ErmaC + { 0x68C1, 0x033D1025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull }, // ErmaC + { 0x68C1, 0x033E1025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull }, // ErmaC + { 0x68C1, 0x03471025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull }, // ErmaC + { 0x68C1, 0x03561025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull }, // ErmaC + { 0x68C1, 0x03581025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull }, // ErmaC + { 0x68C1, 0x035A1025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull }, // ErmaC + { 0x68C1, 0x035C1025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull }, // ErmaC + { 0x68C1, 0x03641025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull }, // ErmaC + { 0x68C1, 0x03791025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull }, // ErmaC + { 0x68C1, 0x037E1025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull }, // ErmaC + { 0x68C1, 0x03821025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull }, // ErmaC + { 0x68C1, 0x033E1025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5650", kNull }, { 0x68C1, 0x9071104D, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5650", kEulemur }, @@ -591,15 +615,16 @@ { 0x6719, 0x0B001002, CHIP_FAMILY_CAYMAN, "AMD Radeon HD 6950", kNull }, // ErmaC { 0x6719, 0x186B174B, CHIP_FAMILY_CAYMAN, "AMD Radeon HD 6950", kNull }, // ErmaC + { 0x6719, 0x20101787, CHIP_FAMILY_CAYMAN, "AMD Radeon HD 6970", kNull }, // ErmaC { 0x671D, 0x10020B2A, CHIP_FAMILY_ANTILLES, "AMD Radeon HD 6990", kNull }, // ErmaC { 0x671D, 0x10021B2A, CHIP_FAMILY_ANTILLES, "AMD Radeon HD 6990", kNull }, // ErmaC { 0x671D, 0x16823160, CHIP_FAMILY_ANTILLES, "AMD Radeon HD 6990", kNull }, // ErmaC - { 0x6720, 0x04BA1028, CHIP_FAMILY_BARTS, "AMD Radeon HD 6970m", kElodea }, + { 0x6720, 0x04BA1028, CHIP_FAMILY_BARTS, "AMD Radeon HD 6970m", kElodea }, // ErmaC { 0x6738, 0x00D01002, CHIP_FAMILY_BARTS, "AMD Radeon HD 6870", kDuckweed }, - { 0x6738, 0x174B174B, CHIP_FAMILY_BARTS, "Sapphire Radeon HD6870", kDuckweed }, // ErmaC + { 0x6738, 0x174B174B, CHIP_FAMILY_BARTS, "Sapphire Radeon HD6870", kBulrushes }, // ErmaC { 0x6738, 0x21FA1002, CHIP_FAMILY_BARTS, "AMD Radeon HD 6870", kDuckweed }, { 0x6738, 0x67381002, CHIP_FAMILY_BARTS, "AMD Radeon HD 6870", kDuckweed }, @@ -608,17 +633,18 @@ { 0x6738, 0x31031682, CHIP_FAMILY_BARTS, "AMD Radeon HD 6870", kDuckweed }, { 0x6738, 0x31041682, CHIP_FAMILY_BARTS, "AMD Radeon HD 6870", kDuckweed }, { 0x6738, 0x31071682, CHIP_FAMILY_BARTS, "AMD Radeon HD 6870", kDuckweed }, // ErmaC - { 0x6738, 0x31081682, CHIP_FAMILY_BARTS, "AMD Radeon HD 6870", kDuckweed }, // ErmaC + { 0x6738, 0x31081682, CHIP_FAMILY_BARTS, "AMD Radeon HD 6870", kDuckweed }, // ErmaC ?? kJuncus ?? { 0x6738, 0xE178174B, CHIP_FAMILY_BARTS, "AMD Radeon HD 6870", kDuckweed }, { 0x6738, 0x20101787, CHIP_FAMILY_BARTS, "AMD Radeon HD 6870", kDuckweed }, { 0x6738, 0x23051787, CHIP_FAMILY_BARTS, "AMD Radeon HD 6870", kDuckweed }, - { 0x6739, 0x67391002, CHIP_FAMILY_BARTS, "AMD Radeon HD 6850", kDuckweed }, - { 0x6739, 0x21F81458, CHIP_FAMILY_BARTS, "AMD Radeon HD 6850", kDuckweed }, // ErmaC ?? kBulrushes ?? + { 0x6739, 0x03B41043, CHIP_FAMILY_BARTS, "AMD Radeon HD 6850", kDuckweed }, // ErmaC + { 0x6739, 0x21F81458, CHIP_FAMILY_BARTS, "AMD Radeon HD 6850", kBulrushes }, // ErmaC { 0x6739, 0x24411462, CHIP_FAMILY_BARTS, "AMD Radeon HD 6850", kDuckweed }, { 0x6739, 0x31101682, CHIP_FAMILY_BARTS, "AMD Radeon HD 6850", kDuckweed }, + { 0x6739, 0x67391002, CHIP_FAMILY_BARTS, "AMD Radeon HD 6850", kDuckweed }, { 0x6739, 0xE177174B, CHIP_FAMILY_BARTS, "AMD Radeon HD 6850", kDuckweed }, { 0x6740, 0x1D121043, CHIP_FAMILY_TURKS, "AMD Radeon HD 6730M", kNull }, // ErmaC @@ -647,6 +673,8 @@ { 0x6760, 0x04CC1028, CHIP_FAMILY_CAICOS, "AMD Radeon HD 6490M", kNull }, + { 0x6760, 0x167D103C, CHIP_FAMILY_CAICOS, "AMD Radeon HD 6490M", kNull }, // ErmaC + { 0x6760, 0x1CB21043, CHIP_FAMILY_CAICOS, "AMD Radeon HD 6470M", kNull }, { 0x6779, 0x64501092, CHIP_FAMILY_CAICOS, "AMD Radeon HD 6450", kBulrushes }, @@ -722,6 +750,10 @@ { 0x689C, 0x00000000, CHIP_FAMILY_HEMLOCK, "ATI Radeon HD 5900 Series", kUakari }, { 0x689E, 0x00000000, CHIP_FAMILY_CYPRESS, "ATI Radeon HD 5800 Series", kUakari }, + { 0x68A0, 0x00000000, CHIP_FAMILY_BROADWAY, "ATI Mobility Radeon HD 5800 Series", kNull }, // ErmaC + { 0x68A1, 0x00000000, CHIP_FAMILY_BROADWAY, "ATI Mobility Radeon HD 5800 Series", kNull }, // ErmaC + { 0x68B0, 0x00000000, CHIP_FAMILY_BROADWAY, "ATI Mobility Radeon HD 5800 Series", kNull }, // ErmaC + { 0x68B8, 0x00000000, CHIP_FAMILY_JUNIPER, "ATI Radeon HD 5700 Series", kVervet }, { 0x68B9, 0x00000000, CHIP_FAMILY_JUNIPER, "ATI Radeon HD 5600 Series", kVervet }, { 0x68BE, 0x00000000, CHIP_FAMILY_JUNIPER, "ATI Radeon HD 5700 Series", kVervet }, @@ -736,8 +768,8 @@ { 0x6718, 0x00000000, CHIP_FAMILY_CAYMAN, "AMD Radeon HD 6970 Series", kNull }, { 0x6719, 0x00000000, CHIP_FAMILY_CAYMAN, "AMD Radeon HD 6950 Series", kNull }, - { 0x671D, 0x00000000, CHIP_FAMILY_ANTILLES, "AMD Radeon HD 6900 Series", kNull }, - { 0x671F, 0x00000000, CHIP_FAMILY_CAYMAN, "AMD Radeon HD 6900 Series", kNull }, + { 0x671D, 0x00000000, CHIP_FAMILY_ANTILLES, "AMD Radeon HD 6900 Series", kNull }, // ErmaC + { 0x671F, 0x00000000, CHIP_FAMILY_CAYMAN, "AMD Radeon HD 6900 Series", kNull }, // ErmaC { 0x6720, 0x00000000, CHIP_FAMILY_BARTS, "AMD Radeon HD 6900M Series", kNull }, Index: branches/ErmaC/Trunk/i386/boot2/gui.c =================================================================== --- branches/ErmaC/Trunk/i386/boot2/gui.c (revision 1725) +++ branches/ErmaC/Trunk/i386/boot2/gui.c (revision 1726) @@ -1365,11 +1365,15 @@ int i = 0; int width = 0; int max_width = 0; + int height = font->height; // calculate the width in pixels for (i=0; i < strlen(text); i++) { if (text[i] == '\n') + { width = 0; + height += font->height; + } else if (text[i] == '\t') width += TAB_PIXELS_WIDTH; else @@ -1383,11 +1387,8 @@ } p.x = ( p.x - ( max_width / 2 ) ); - p.y = ( p.y - ( font->height / 2 ) ); + p.y = ( p.y - ( height / 2 ) ); - if ( p.x == -6 ) - p.x = 0; - drawStr(text, font, blendInto, p); } Index: branches/ErmaC/Trunk/i386/boot2/gui.h =================================================================== --- branches/ErmaC/Trunk/i386/boot2/gui.h (revision 1725) +++ branches/ErmaC/Trunk/i386/boot2/gui.h (revision 1726) @@ -144,6 +144,7 @@ void updateVRAM(); +position_t drawChar(unsigned char ch, font_t *font, pixmap_t *blendInto, position_t p); void drawStr(char *ch, font_t *font, pixmap_t *blendInto, position_t p); void drawStrCenteredAt(char *ch, font_t *font, pixmap_t *blendInto, position_t p); Index: branches/ErmaC/Trunk/package/Scripts/Main/Standardpostinstall =================================================================== --- branches/ErmaC/Trunk/package/Scripts/Main/Standardpostinstall (revision 1725) +++ branches/ErmaC/Trunk/package/Scripts/Main/Standardpostinstall (revision 1726) @@ -43,7 +43,7 @@ then targetVolume="/Volumes/"$( ls -1F /Volumes | sed -n 's:@$::p' ) else - targetVolume="$3" + targetVolume="$3" fi @@ -55,6 +55,8 @@ targetResources="${targetVolume}/usr/local/bin/" +updateStage1=1 # by default update partition boot sector + echo "===============================================" echo "DEBUG: display script variables" echo "*******************************" @@ -87,115 +89,111 @@ if [ ${returnValue} = 0 ]; then # OK to proceed - # Does a GRUB or Linux loader already exist in the disk's MBR? # The script returns 1 if yes, 0 if no. - "$scriptDir"CheckGRUBLinuxLoader.sh "${targetDisk}" "${targetVolume}" "${scriptDir}" - returnValue=$? - if [ ${returnValue} = 0 ]; then - # OK to proceed - - - # check for a 4-byte Windows disk signature in the disk's MBR. - # the following script returns 1 if a Windows disk signature exists, and 0 if not. - - "$scriptDir"CheckWindowsDiskSignature.sh "${targetDisk}" "${targetVolume}" "${scriptDir}" - diskSigCheck=$? - - + diskupdate=$? + if [ ${diskupdate} -ne 0 ]; then + "$scriptDir"InstallLog.sh "${targetVolume}" "Found an existing GRUB/LILO bootloader in the MBR." + "$scriptDir"InstallLog.sh "${targetVolume}" "MBR and partition boot sector will not be modified." + updateStage1=0 + else # check for existing bootloaders in the disk's MBR # and find out if we can write the Chameleon boot files. # the following script returns 0 if we can proceed # with writing the boot files, and 1 for not. - "$scriptDir"CheckDiskMicrocode.sh "${targetDisk}" "${diskSigCheck}" "${targetVolume}" "${scriptDir}" diskupdate=$? + fi - # check the format of the selected partition. - # result should be either hfs or msdos - # Should really check to make sure! + # check for a 4-byte Windows disk signature in the disk's MBR. + # the following script returns 1 if a Windows disk signature exists, and 0 if not. + "$scriptDir"CheckWindowsDiskSignature.sh "${targetDisk}" "${targetVolume}" "${scriptDir}" + diskSigCheck=$? - targetFormat=$( fstyp "$targetDevice" ) - - # check the partition scheme used for the selected disk. - # the following script returns 1 if GPT - # the following script returns 2 if GPT/MBR - # the following script returns 3 if MBR + # check the format of the selected partition. + # result should be either hfs or msdos + # Should really check to make sure! + targetFormat=$( fstyp "$targetDevice" ) + + + # check the partition scheme used for the selected disk. + # the following script returns 1 if GPT + # the following script returns 2 if GPT/MBR + # the following script returns 3 if MBR + # the following script returns 0 if nothing + "$scriptDir"CheckPartitionScheme.sh "${targetDisk}" "${targetVolume}" "${scriptDir}" + partitionScheme=$? + if [ ${partitionScheme} = 3 ]; then + # If MBR partition scheme then check for FAT16 or FAT32 + + # the following script returns 1 if FAT16 + # the following script returns 2 if FAT32 # the following script returns 0 if nothing + "$scriptDir"CheckFatType.sh "${targetDeviceRaw}" "${targetVolume}" "${scriptDir}" + fatType=$? + fi - "$scriptDir"CheckPartitionScheme.sh "${targetDisk}" "${targetVolume}" "${scriptDir}" - partitionScheme=$? - if [ ${partitionScheme} = 3 ]; then - # If MBR partition scheme then check for FAT16 or FAT32 + if [ "${fatType}" = 1 ] && [ "${partitionScheme}" = 3 ]; then + # Write error to Chameleon_Error_Log file + "$scriptDir"InstallLog.sh "${targetVolume}" "FAIL: Cannot install to a device using FAT16" + else + # Continue if the selected device is not a FAT16 format device - # the following script returns 1 if FAT16 - # the following script returns 2 if FAT32 - # the following script returns 0 if nothing + # Append a line break to the installer log + "$scriptDir"InstallLog.sh "${targetVolume}" "LineBreak" - "$scriptDir"CheckFatType.sh "${targetDeviceRaw}" "${targetVolume}" "${scriptDir}" - fatType=$? + if [ ${diskupdate} -eq 0 ]; then + # Write the stage 0 loader to the MBR + "$scriptDir"WriteChameleonStage0.sh "${diskSigCheck}" "${stage0Loader}" "${stage0LoaderDualBoot}" "${targetDisk}" "${targetResources}" "${targetVolume}" "${scriptDir}" + else + "$scriptDir"InstallLog.sh "${targetVolume}" "Stage 0 loader not written to ${targetDisk}." fi - if [ "${fatType}" = 1 ] && [ "${partitionScheme}" = 3 ]; then - # Write error to Chameleon_Error_Log file - "$scriptDir"InstallLog.sh "${targetVolume}" "FAIL: Cannot install to a device using FAT16" + if [ ${updateStage1} -eq 1 ]; then + # Write the stage 1 loader to the partition boot sector + "$scriptDir"WriteChameleonStage1.sh "${targetFormat}" "${stage1LoaderHFS}" "${stage1LoaderFAT}" "${3}" "${targetDeviceRaw}" "${targetVolume}" "${scriptDir}" else - # Continue if the selected device is not a FAT16 format device + "$scriptDir"InstallLog.sh "${targetVolume}" "Partition boot sector not written to ${targetDevice}." + fi - # Append a line break to the installer log - "$scriptDir"InstallLog.sh "${targetVolume}" "LineBreak" + # Write the stage 2 loader to the root of the selected partition + "$scriptDir"WriteChameleonStage2.sh "${stage2Loader}" "${3}" "${targetDevice}" "${targetVolume}" "${scriptDir}" - if [ ${diskupdate} = "0" ]; then - - # Write the stage 0 loader to the MBR - "$scriptDir"WriteChameleonStage0.sh "${diskSigCheck}" "${stage0Loader}" "${stage0LoaderDualBoot}" "${targetDisk}" "${targetResources}" "${targetVolume}" "${scriptDir}" - else - "$scriptDir"InstallLog.sh "${targetVolume}" "Stage 0 loader not written to ${targetDisk}." - fi - # Write the stage 1 loader to the partition boot sector - "$scriptDir"WriteChameleonStage1.sh "${targetFormat}" "${stage1LoaderHFS}" "${stage1LoaderFAT}" "${3}" "${targetDeviceRaw}" "${targetVolume}" "${scriptDir}" + # Next we look to check for existing Chameleon installations. + # But as it will check /Volumes/EFI for the stage 2 loader, + # we need to make sure it's mounted. - # Write the stage 2 loader to the root of the selected partition - "$scriptDir"WriteChameleonStage2.sh "${stage2Loader}" "${3}" "${targetDevice}" "${targetVolume}" "${scriptDir}" + # Tell the user what's going on. + "$scriptDir"InstallLog.sh "${targetVolume}" "LineBreak" + "$scriptDir"InstallLog.sh "${targetVolume}" "About to check your disk for previous installations" + "$scriptDir"InstallLog.sh "${targetVolume}" "which involves checking the EFI system partition if" + "$scriptDir"InstallLog.sh "${targetVolume}" "appropriate for this disk." + # Unmount ALL mounted volumes named EFI. + # Returns 0=success, 1=fail + "$scriptDir"UnMountEFIvolumes.sh "${targetVolume}" "${scriptDir}" + returnValue=$? + if [ ${returnValue} = 0 ]; then + # OK to proceed - # Next we look to check for existing Chameleon installations. - # But as it will check /Volumes/EFI for the stage 2 loader, - # we need to make sure it's mounted. - - # Tell the user what's going on. - "$scriptDir"InstallLog.sh "${targetVolume}" "LineBreak" - "$scriptDir"InstallLog.sh "${targetVolume}" "About to check your disk for previous installations" - "$scriptDir"InstallLog.sh "${targetVolume}" "which involves checking the EFI system partition if" - "$scriptDir"InstallLog.sh "${targetVolume}" "appropriate for this disk." - - # Unmount ALL mounted volumes named EFI. - # Returns 0=success, 1=fail - - "$scriptDir"UnMountEFIvolumes.sh "${targetVolume}" "${scriptDir}" - returnValue=$? - if [ ${returnValue} = 0 ]; then - # OK to proceed - - if [ ${partitionScheme} = 1 ] || [ ${partitionScheme} = 2 ]; then - # Mount the EFI system partition - "$scriptDir"MountESP.sh "${targetDisk}" "${targetVolume}" "${scriptDir}" - fi - - # Check for another existing Chameleon installation on the same disk - "$scriptDir"CheckPreviousChameleon.sh "${targetDisk}" "${targetDeviceRaw}" "${targetDevice}" "${targetVolume}" "${scriptDir}" + if [ ${partitionScheme} = 1 ] || [ ${partitionScheme} = 2 ]; then + # Mount the EFI system partition + "$scriptDir"MountESP.sh "${targetDisk}" "${targetVolume}" "${scriptDir}" fi - # Append a line break to the installer log - "$scriptDir"InstallLog.sh "${targetVolume}" "LineBreak" - - # Set the active partition ONLY if Windows is not installed - "$scriptDir"SetActivePartition.sh "${diskSigCheck}" "${targetDiskRaw}" "${targetSlice}" "${targetVolume}" "${scriptDir}" + # Check for another existing Chameleon installation on the same disk + "$scriptDir"CheckPreviousChameleon.sh "${targetDisk}" "${targetDeviceRaw}" "${targetDevice}" "${targetVolume}" "${scriptDir}" fi + + # Append a line break to the installer log + "$scriptDir"InstallLog.sh "${targetVolume}" "LineBreak" + + # Set the active partition ONLY if Windows is not installed + "$scriptDir"SetActivePartition.sh "${diskSigCheck}" "${targetDiskRaw}" "${targetSlice}" "${targetVolume}" "${scriptDir}" fi fi Index: branches/ErmaC/Trunk/package/Scripts/Sub/CheckGRUBLinuxLoader.sh =================================================================== --- branches/ErmaC/Trunk/package/Scripts/Sub/CheckGRUBLinuxLoader.sh (revision 1725) +++ branches/ErmaC/Trunk/package/Scripts/Sub/CheckGRUBLinuxLoader.sh (revision 1726) @@ -36,7 +36,6 @@ diskmicrocodetypeid=${diskmicrocodetype[${diskmicrocodetypecounter}]#*,} if [ ! "${diskmicrocode}" = "${diskmicrocode/${diskmicrocodetypeid}/}" ]; then echo "${diskmicrocodetype[${diskmicrocodetypecounter}]%,*} found." - "$scriptDir"InstallLog.sh "${targetVolume}" "FAIL: Found an exisitng GRUB/LILO bootloader in the MBR." exit 1 #else #echo "DEBUG: Didn't find a match for ${diskmicrocodetype[${diskmicrocodetypecounter}]%,*}" Index: branches/ErmaC/Trunk/package/buildpkg.sh =================================================================== --- branches/ErmaC/Trunk/package/buildpkg.sh (revision 1725) +++ branches/ErmaC/Trunk/package/buildpkg.sh (revision 1726) @@ -194,12 +194,24 @@ } fi # - + # Warning Keylayout module need additional files if [ -e ${1%/*}/i386/modules/Keylayout.dylib ]; then { - mkdir -p ${1}/Keylayout/Root - ditto --noextattr --noqtn ${1%/*}/i386/modules/Keylayout.dylib ${1}/Keylayout/Root - echo " [BUILD] Keylayout " - buildpackage "${1}/Keylayout" "/$chamTemp/Extra/modules" "" "start_selected=\"false\"" >/dev/null 2>&1 + mkdir -p ${1}/Keylayout/Root/Extra/{modules,Keymaps} + mkdir -p ${1}/Keylayout/Root/usr/local/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/local/bin + buildpackage "${1}/Keylayout" "/" "" "start_selected=\"true\"" >/dev/null 2>&1 } fi @@ -208,7 +220,7 @@ } else { - echo " -= no modules to include =-" + echo " -= no modules to include =-" } fi # End build Modules packages Index: branches/ErmaC/Modules/Chameleon.xcodeproj/project.pbxproj =================================================================== --- branches/ErmaC/Modules/Chameleon.xcodeproj/project.pbxproj (revision 1725) +++ branches/ErmaC/Modules/Chameleon.xcodeproj/project.pbxproj (revision 1726) @@ -651,6 +651,25 @@ 6DBAFFC313B0D4590047ED33 /* ufsmount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ufsmount.h; sourceTree = ""; }; 6DBAFFC413B0D4590047ED33 /* unistd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = unistd.h; sourceTree = ""; }; 6DBAFFC513B0D4590047ED33 /* unwind.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = unwind.h; sourceTree = ""; }; + A354B6271495124F00D81AA5 /* ESPpostinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = ESPpostinstall; sourceTree = ""; }; + A354B6281495124F00D81AA5 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = postinstall; sourceTree = ""; }; + A354B6291495124F00D81AA5 /* preinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = preinstall; sourceTree = ""; }; + A354B62A1495124F00D81AA5 /* Standardpostinstall */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = Standardpostinstall; sourceTree = ""; }; + A354B62C149514DE00D81AA5 /* CheckDiskMicrocode.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = CheckDiskMicrocode.sh; sourceTree = ""; }; + A354B62D149514DE00D81AA5 /* CheckFatType.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = CheckFatType.sh; sourceTree = ""; }; + A354B62E149514DE00D81AA5 /* CheckGRUBLinuxLoader.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = CheckGRUBLinuxLoader.sh; sourceTree = ""; }; + A354B62F149514DE00D81AA5 /* CheckPartitionScheme.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = CheckPartitionScheme.sh; sourceTree = ""; }; + A354B630149514DE00D81AA5 /* CheckPreviousChameleon.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = CheckPreviousChameleon.sh; sourceTree = ""; }; + A354B631149514DE00D81AA5 /* CheckProceed.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = CheckProceed.sh; sourceTree = ""; }; + A354B632149514DE00D81AA5 /* CheckWindowsDiskSignature.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = CheckWindowsDiskSignature.sh; sourceTree = ""; }; + A354B633149514DE00D81AA5 /* InstallLog.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = InstallLog.sh; sourceTree = ""; }; + A354B634149514DE00D81AA5 /* MountESP.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = MountESP.sh; sourceTree = ""; }; + A354B635149514DE00D81AA5 /* patch */ = {isa = PBXFileReference; lastKnownFileType = file; path = patch; sourceTree = ""; }; + A354B636149514DE00D81AA5 /* SetActivePartition.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = SetActivePartition.sh; sourceTree = ""; }; + A354B637149514DE00D81AA5 /* UnMountEFIvolumes.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = UnMountEFIvolumes.sh; sourceTree = ""; }; + A354B638149514DE00D81AA5 /* WriteChameleonStage0.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = WriteChameleonStage0.sh; sourceTree = ""; }; + A354B639149514DE00D81AA5 /* WriteChameleonStage1.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = WriteChameleonStage1.sh; sourceTree = ""; }; + A354B63A149514DE00D81AA5 /* WriteChameleonStage2.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = WriteChameleonStage2.sh; sourceTree = ""; }; A3561C731413FD7800E9B51E /* auto.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = auto.c; sourceTree = ""; }; A3561C741413FD7800E9B51E /* auto.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = auto.h; sourceTree = ""; }; A3561C751413FD7800E9B51E /* Cconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Cconfig; sourceTree = ""; }; @@ -951,49 +970,6 @@ 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 = ""; }; @@ -2350,6 +2326,39 @@ path = ufs; sourceTree = ""; }; + A354B6261495124F00D81AA5 /* Main */ = { + isa = PBXGroup; + children = ( + A354B6271495124F00D81AA5 /* ESPpostinstall */, + A354B6281495124F00D81AA5 /* postinstall */, + A354B6291495124F00D81AA5 /* preinstall */, + A354B62A1495124F00D81AA5 /* Standardpostinstall */, + ); + path = Main; + sourceTree = ""; + }; + A354B62B149514DE00D81AA5 /* Sub */ = { + isa = PBXGroup; + children = ( + A354B62C149514DE00D81AA5 /* CheckDiskMicrocode.sh */, + A354B62D149514DE00D81AA5 /* CheckFatType.sh */, + A354B62E149514DE00D81AA5 /* CheckGRUBLinuxLoader.sh */, + A354B62F149514DE00D81AA5 /* CheckPartitionScheme.sh */, + A354B630149514DE00D81AA5 /* CheckPreviousChameleon.sh */, + A354B631149514DE00D81AA5 /* CheckProceed.sh */, + A354B632149514DE00D81AA5 /* CheckWindowsDiskSignature.sh */, + A354B633149514DE00D81AA5 /* InstallLog.sh */, + A354B634149514DE00D81AA5 /* MountESP.sh */, + A354B635149514DE00D81AA5 /* patch */, + A354B636149514DE00D81AA5 /* SetActivePartition.sh */, + A354B637149514DE00D81AA5 /* UnMountEFIvolumes.sh */, + A354B638149514DE00D81AA5 /* WriteChameleonStage0.sh */, + A354B639149514DE00D81AA5 /* WriteChameleonStage1.sh */, + A354B63A149514DE00D81AA5 /* WriteChameleonStage2.sh */, + ); + path = Sub; + sourceTree = ""; + }; A3561C721413FD7800E9B51E /* fdisk */ = { isa = PBXGroup; children = ( @@ -2706,421 +2715,12 @@ A3F1F20D141B9B0D00DDA709 /* Scripts */ = { isa = PBXGroup; children = ( - A3F1F20E141B9B0D00DDA709 /* Advanced */, - A3F1F231141B9B0D00DDA709 /* BaseOptions */, - A3F1F24A141B9B0D00DDA709 /* EFI */, - A3F1F24C141B9B0D00DDA709 /* Keymaps */, - A3F1F24E141B9B0D00DDA709 /* Post */, - A3F1F250141B9B0D00DDA709 /* Resolutions */, - A3F1F265141B9B0D00DDA709 /* Standard */, + A354B6261495124F00D81AA5 /* Main */, + A354B62B149514DE00D81AA5 /* Sub */, ); 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 = ( @@ -3550,7 +3150,7 @@ 08FB7793FE84155DC02AAC07 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0410; + LastUpgradeCheck = 0420; }; buildConfigurationList = 1DEB919308733D9F0010E9CD /* Build configuration list for PBXProject "Chameleon" */; compatibilityVersion = "Xcode 3.2"; Index: branches/ErmaC/Modules/i386/boot0/boot0md.s =================================================================== --- branches/ErmaC/Modules/i386/boot0/boot0md.s (revision 1725) +++ branches/ErmaC/Modules/i386/boot0/boot0md.s (revision 1726) @@ -530,8 +530,8 @@ call load ; read GPT Array pop si ; SI = address of GPT Array pop bx ; BX = size of GUID Partition Array entry - ;jc error - jc .exit + ;jc error + jc .exit ; dmazar's change to continue disk scanning if encountering invalid LBA. ; ; Walk through GUID Partition Table Array @@ -605,8 +605,8 @@ mov bx, kBoot0LoadAddr call load ;jc error - or dl, dl ; to set flag Z=0 - jc .exit + or dl, dl ; to set flag Z=0 ; dmazar's change to continue disk scanning if encountering invalid LBA. + jc .exit ; dmazar's change to continue disk scanning if encountering invalid LBA. or dh, dh jz .checkBootSignature Index: branches/ErmaC/Modules/i386/boot2/gui.c =================================================================== --- branches/ErmaC/Modules/i386/boot2/gui.c (revision 1725) +++ branches/ErmaC/Modules/i386/boot2/gui.c (revision 1726) @@ -1365,11 +1365,15 @@ int i = 0; int width = 0; int max_width = 0; + int height = font->height; // calculate the width in pixels for (i=0; i < strlen(text); i++) { if (text[i] == '\n') + { width = 0; + height += font->height; + } else if (text[i] == '\t') width += TAB_PIXELS_WIDTH; else @@ -1383,11 +1387,8 @@ } p.x = ( p.x - ( max_width / 2 ) ); - p.y = ( p.y - ( font->height / 2 ) ); + p.y = ( p.y - ( height / 2 ) ); - if ( p.x == -6 ) - p.x = 0; - drawStr(text, font, blendInto, p); } Index: branches/ErmaC/Modules/i386/boot2/gui.h =================================================================== --- branches/ErmaC/Modules/i386/boot2/gui.h (revision 1725) +++ branches/ErmaC/Modules/i386/boot2/gui.h (revision 1726) @@ -144,6 +144,7 @@ void updateVRAM(); +position_t drawChar(unsigned char ch, font_t *font, pixmap_t *blendInto, position_t p); void drawStr(char *ch, font_t *font, pixmap_t *blendInto, position_t p); void drawStrCenteredAt(char *ch, font_t *font, pixmap_t *blendInto, position_t p); Index: branches/ErmaC/Modules/i386/modules/NVIDIAGraphicsEnabler/nvidia.c =================================================================== --- branches/ErmaC/Modules/i386/modules/NVIDIAGraphicsEnabler/nvidia.c (revision 1725) +++ branches/ErmaC/Modules/i386/modules/NVIDIAGraphicsEnabler/nvidia.c (revision 1726) @@ -407,7 +407,7 @@ { 0x10DE05E2, "GeForce GTX 260" }, { 0x10DE05E3, "GeForce GTX 285" }, { 0x10DE05E6, "GeForce GTX 275" }, - { 0x10DE05E7, "Tesla C1060" }, + { 0x10DE05E7, "Tesla C1060" }, // ErmaC { 0x10DE05EA, "GeForce GTX 260" }, { 0x10DE05EB, "GeForce GTX 295" }, { 0x10DE05ED, "Quadroplex 2200 D2" }, @@ -447,10 +447,10 @@ { 0x10DE061B, "Quadro VX 200" }, { 0x10DE061C, "Quadro FX 3600M" }, { 0x10DE061D, "Quadro FX 2800M" }, - { 0x10DE061E, "Quadro FX 3700M" }, + { 0x10DE061E, "Quadro FX 3700M" }, // ErmaC { 0x10DE061F, "Quadro FX 3800M" }, // 0620 - 062F - { 0x10DE0621, "GeForce GT 230" }, + { 0x10DE0621, "GeForce GT 230" }, // ErmaC { 0x10DE0622, "GeForce 9600 GT" }, { 0x10DE0623, "GeForce 9600 GS" }, { 0x10DE0625, "GeForce 9600 GSO 512"}, @@ -458,7 +458,7 @@ { 0x10DE0627, "GeForce GT 140" }, { 0x10DE0628, "GeForce 9800M GTS" }, { 0x10DE062A, "GeForce 9700M GTS" }, - { 0x10DE062B, "GeForce 9800M GS" }, + { 0x10DE062B, "GeForce 9800M GS" }, // ErmaC { 0x10DE062C, "GeForce 9800M GTS" }, { 0x10DE062D, "GeForce 9600 GT" }, { 0x10DE062E, "GeForce 9600 GT" }, @@ -488,7 +488,7 @@ { 0x10DE0652, "GeForce GT 130M" }, { 0x10DE0653, "GeForce GT 120M" }, { 0x10DE0654, "GeForce GT 220M" }, - { 0x10DE0655, "GeForce GT 120" }, + { 0x10DE0655, "GeForce GT 120" }, // ErmaC { 0x10DE0656, "GeForce 9650 S" }, { 0x10DE0658, "Quadro FX 380" }, { 0x10DE0659, "Quadro FX 580" }, @@ -519,7 +519,7 @@ { 0x10DE06DD, "Quadro 4000" }, { 0x10DE06DE, "Tesla M2050" }, // TODO: sub-device id: 0x0846 { 0x10DE06DE, "Tesla M2070" }, // TODO: sub-device id: ? - { 0x10DE06DF, "Tesla M2070-Q" }, + { 0x10DE06DF, "Tesla M2070-Q" }, // ErmaC // 0x10DE06DE also applies to misc S2050, X2070, M2050, M2070 // 06E0 - 06EF { 0x10DE06E0, "GeForce 9300 GE" }, @@ -537,13 +537,13 @@ { 0x10DE06EC, "GeForce G 105M" }, { 0x10DE06EF, "GeForce G 103M" }, // 06F0 - 06FF - { 0x10DE06F1, "GeForce G105M" }, + { 0x10DE06F1, "GeForce G105M" }, // ErmaC { 0x10DE06F8, "Quadro NVS 420" }, { 0x10DE06F9, "Quadro FX 370 LP" }, { 0x10DE06FA, "Quadro NVS 450" }, { 0x10DE06FB, "Quadro FX 370M" }, { 0x10DE06FD, "Quadro NVS 295" }, - { 0x10DE06FF, "HICx16 + Graphics" }, + { 0x10DE06FF, "HICx16 + Graphics" }, // ErmaC // 0700 - 070F // 0710 - 071F // 0720 - 072F @@ -570,7 +570,7 @@ // 0820 - 082F // 0830 - 083F // 0840 - 084F - { 0x10DE0840, "GeForce 8200M" }, + { 0x10DE0840, "GeForce 8200M" }, // ErmaC { 0x10DE0844, "GeForce 9100M G" }, { 0x10DE0845, "GeForce 8200M G" }, { 0x10DE0846, "GeForce 9200" }, @@ -593,7 +593,7 @@ { 0x10DE0866, "GeForce 9400M G" }, { 0x10DE0867, "GeForce 9400" }, { 0x10DE0868, "nForce 760i SLI" }, - { 0x10DE0869, "GeForce 9400" }, + { 0x10DE0869, "GeForce 9400" }, // ErmaC { 0x10DE086A, "GeForce 9400" }, { 0x10DE086C, "GeForce 9300 / nForce 730i" }, { 0x10DE086D, "GeForce 9200" }, @@ -613,8 +613,8 @@ // 0880 - 088F // 0890 - 089F // 08A0 - 08AF - { 0x10DE08A0, "GeForce 320M" }, - { 0x10DE08A4, "GeForce 320M" }, + { 0x10DE08A0, "GeForce 320M" }, // ErmaC + { 0x10DE08A4, "GeForce 320M" }, // ErmaC // 08B0 - 08BF // 08C0 - 08CF // 08D0 - 08DF @@ -642,8 +642,8 @@ { 0x10DE0A20, "GeForce GT220" }, { 0x10DE0A22, "GeForce 315" }, { 0x10DE0A23, "GeForce 210" }, - { 0x10DE0A26, "GeForce 405" }, - { 0x10DE0A27, "GeForce 405" }, + { 0x10DE0A26, "GeForce 405" }, // ErmaC + { 0x10DE0A27, "GeForce 405" }, // ErmaC { 0x10DE0A28, "GeForce GT 230M" }, { 0x10DE0A29, "GeForce GT 330M" }, { 0x10DE0A2A, "GeForce GT 230M" }, @@ -653,7 +653,7 @@ // 0A30 - 0A3F { 0x10DE0A34, "GeForce GT 240M" }, { 0x10DE0A35, "GeForce GT 325M" }, - { 0x10DE0A38, "Quadro 400" }, + { 0x10DE0A38, "Quadro 400" }, // ErmaC { 0x10DE0A3C, "Quadro FX 880M" }, // 0A40 - 0A4F // 0A50 - 0A5F @@ -678,9 +678,9 @@ { 0x10DE0A73, "GeForce 305M" }, { 0x10DE0A74, "GeForce G210M" }, { 0x10DE0A75, "GeForce G310M" }, - { 0x10DE0A76, "ION" }, + { 0x10DE0A76, "ION" }, // ErmaC { 0x10DE0A78, "Quadro FX 380 LP" }, - { 0x10DE0A7A, "GeForce 315M" }, + { 0x10DE0A7A, "GeForce 315M" }, // ErmaC { 0x10DE0A7C, "Quadro FX 380M" }, // 0A80 - 0A8F // 0A90 - 0A9F @@ -721,11 +721,11 @@ { 0x10DE0CA2, "GeForce GT 320" }, { 0x10DE0CA3, "GeForce GT 240" }, { 0x10DE0CA4, "GeForce GT 340" }, - { 0x10DE0CA5, "GeForce GT 220" }, + { 0x10DE0CA5, "GeForce GT 220" }, // ErmaC { 0x10DE0CA7, "GeForce GT 330" }, { 0x10DE0CA8, "GeForce GTS 260M" }, { 0x10DE0CA9, "GeForce GTS 250M" }, - { 0x10DE0CAC, "GeForce GT 220" }, + { 0x10DE0CAC, "GeForce GT 220" }, // ErmaC { 0x10DE0CAF, "GeForce GT 335M" }, // 0CB0 - 0CBF { 0x10DE0CB0, "GeForce GTS 350M" }, @@ -756,14 +756,14 @@ { 0x10DE0DC6, "GeForce GTS 450" }, { 0x10DE0DCA, "GF10x" }, // 0DD0 - 0DDF - { 0x10DE0DCD, "GeForce GT 555M" }, - { 0x10DE0DCE, "GeForce GT 555M" }, + { 0x10DE0DCD, "GeForce GT 555M" }, // ErmaC + { 0x10DE0DCE, "GeForce GT 555M" }, // ErmaC { 0x10DE0DD1, "GeForce GTX 460M" }, { 0x10DE0DD2, "GeForce GT 445M" }, { 0x10DE0DD3, "GeForce GT 435M" }, - { 0x10DE0DD6, "GeForce GT 550M" }, + { 0x10DE0DD6, "GeForce GT 550M" }, // ErmaC { 0x10DE0DD8, "Quadro 2000" }, - { 0x10DE0DDA, "Quadro 2000M" }, + { 0x10DE0DDA, "Quadro 2000M" }, // ErmaC { 0x10DE0DDE, "GF106-ES" }, { 0x10DE0DDF, "GF106-INT" }, // 0DE0 - 0DEF @@ -772,20 +772,20 @@ { 0x10DE0DE2, "GeForce GT 420" }, { 0x10DE0DE5, "GeForce GT 530" }, { 0x10DE0DEB, "GeForce GT 555M" }, - { 0x10DE0DEC, "GeForce GT 525M" }, - { 0x10DE0DED, "GeForce GT 520M" }, + { 0x10DE0DEC, "GeForce GT 525M" }, // ErmaC + { 0x10DE0DED, "GeForce GT 520M" }, // ErmaC { 0x10DE0DEE, "GeForce GT 415M" }, // 0DF0 - 0DFF { 0x10DE0DF0, "GeForce GT 425M" }, { 0x10DE0DF1, "GeForce GT 420M" }, { 0x10DE0DF2, "GeForce GT 435M" }, { 0x10DE0DF3, "GeForce GT 420M" }, - { 0x10DE0DF4, "GeForce GT 540M" }, - { 0x10DE0DF5, "GeForce GT 525M" }, - { 0x10DE0DF6, "GeForce GT 550M" }, - { 0x10DE0DF7, "GeForce GT 520M" }, + { 0x10DE0DF4, "GeForce GT 540M" }, // ErmaC + { 0x10DE0DF5, "GeForce GT 525M" }, // ErmaC + { 0x10DE0DF6, "GeForce GT 550M" }, // ErmaC + { 0x10DE0DF7, "GeForce GT 520M" }, // ErmaC { 0x10DE0DF8, "Quadro 600" }, - { 0x10DE0DFA, "Quadro 1000M" }, + { 0x10DE0DFA, "Quadro 1000M" }, // ErmaC { 0x10DE0DFE, "GF108 ES" }, { 0x10DE0DFF, "GF108 INT" }, // 0E00 - 0E0F @@ -798,10 +798,10 @@ { 0x10DE0E25, "D12U-50" }, // 0E30 - 0E3F { 0x10DE0E30, "GeForce GTX 470M" }, - { 0x10DE0E31, "GeForce GTX 485M" }, + { 0x10DE0E31, "GeForce GTX 485M" }, // ErmaC { 0x10DE0E38, "GF104GL" }, - { 0x10DE0E3A, "Quadro 3000M" }, - { 0x10DE0E3B, "Quadro 4000M" }, + { 0x10DE0E3A, "Quadro 3000M" }, // ErmaC + { 0x10DE0E3B, "Quadro 4000M" }, // ErmaC { 0x10DE0E3E, "GF104-ES" }, { 0x10DE0E3F, "GF104-INT" }, // 0E40 - 0E4F @@ -837,46 +837,47 @@ // 1020 - 102F // 1030 - 103F // 1040 - 104F - { 0x10DE1040, "GeForce GT 520" }, + { 0x10DE1040, "GeForce GT 520" }, // 1050 - 105F { 0x10DE1050, "GeForce GT 520M" }, + { 0x10DE1054, "GeForce GT 410M" }, // ErmaC + { 0x10DE1056, "NVS 4200M" }, // ErmaC + { 0x10DE1057, "NVS 4200M" }, // ErmaC // 1060 - 106F // 1070 - 107F // 1080 - 108F - { 0x10DE1054, "GeForce GT 410M" }, - { 0x10DE1056, "NVS 4200M" }, - { 0x10DE1057, "NVS 4200M" }, - { 0x10DE107F, "NVIDIA GF119-ES" }, + { 0x10DE107F, "NVIDIA GF119-ES" }, // ErmaC { 0x10DE1080, "GeForce GTX 580" }, { 0x10DE1081, "GeForce GTX 570" }, { 0x10DE1082, "GeForce GTX 560 Ti" }, { 0x10DE1083, "D13U" }, - { 0x10DE1084, "GeForce GTX 560" }, - { 0x10DE1086, "GeForce GTX 570" }, + { 0x10DE1084, "GeForce GTX 560" }, // ErmaC + { 0x10DE1086, "GeForce GTX 570" }, // ErmaC + { 0x10DE1087, "GeForce GTX 560 Ti-448" }, // ErmaC { 0x10DE1088, "GeForce GTX 590" }, - { 0x10DE1089, "GeForce GTX 580" }, - { 0x10DE108B, "GeForce GTX 590" }, // Subsystem Id: 1043 8391 + { 0x10DE1089, "GeForce GTX 580" }, // ErmaC + { 0x10DE108B, "GeForce GTX 590" }, // ErmaC // 1090 - 109F - { 0x10DE1091, "Tesla M2090" }, + { 0x10DE1091, "Tesla M2090" }, // ErmaC { 0x10DE1098, "D13U" }, - { 0x10DE109A, "Quadro 5010M" }, - { 0x10DE109B, "Quadro 7000" }, + { 0x10DE109A, "Quadro 5010M" }, // ErmaC + { 0x10DE109B, "Quadro 7000" }, // ErmaC // 10A0 - 10AF // 10B0 - 10BF // 10C0 - 10CF - { 0x10DE10C0, "GeForce 9300 GS" }, + { 0x10DE10C0, "GeForce 9300 GS" }, // ErmaC { 0x10DE10C3, "GeForce 8400 GS" }, - { 0x10DE10C5, "GeForce 405" }, + { 0x10DE10C5, "GeForce 405" }, // ErmaC // 10D0 - 10DF - { 0x10DE10D8, "NVS 300" }, + { 0x10DE10D8, "NVS 300" }, // ErmaC // 1200 - { 0x10DE1200, "GeForce GTX 560 Ti" }, - { 0x10DE1201, "GeForce GTX 560" }, - { 0x10DE1241, "GeForce GT 545" }, - { 0x10DE1243, "GeForce GT 545" }, + { 0x10DE1201, "GeForce GTX 560" }, // ErmaC + { 0x10DE1241, "GeForce GT 545" }, // ErmaC + { 0x10DE1243, "GeForce GT 545" }, // ErmaC { 0x10DE1244, "GeForce GTX 550 Ti" }, { 0x10DE1245, "GeForce GTS 450" }, - { 0x10DE1251, "GeForce GTX 560M" }, + { 0x10DE1251, "GeForce GTX 560M" }, // ErmaC }; static uint16_t swap16(uint16_t x) Index: branches/ErmaC/Modules/i386/modules/AMDGraphicsEnabler/ati.c =================================================================== --- branches/ErmaC/Modules/i386/modules/AMDGraphicsEnabler/ati.c (revision 1725) +++ branches/ErmaC/Modules/i386/modules/AMDGraphicsEnabler/ati.c (revision 1726) @@ -59,6 +59,7 @@ CHIP_FAMILY_HEMLOCK, CHIP_FAMILY_JUNIPER, CHIP_FAMILY_REDWOOD, + CHIP_FAMILY_BROADWAY, /* Northern Islands */ CHIP_FAMILY_ANTILLES, CHIP_FAMILY_BARTS, @@ -101,6 +102,7 @@ "Hemlock", "Juniper", "Redwood", + "Broadway", /* Northern Islands */ "Antilles", "Barts", @@ -123,9 +125,9 @@ static card_config_t card_configs[] = { {NULL, 0}, {"Alopias", 2}, - {"Alouatta", 4}, + {"Alouatta", 4}, {"Baboon", 3}, - {"Cardinal", 2}, + {"Cardinal", 2}, {"Caretta", 1}, {"Colobus", 2}, {"Douc", 2}, @@ -134,17 +136,17 @@ {"Galago", 2}, {"Gliff", 3}, {"Hoolock", 3}, - {"Hypoprion", 2}, + {"Hypoprion", 2}, {"Iago", 2}, {"Kakapo", 3}, {"Kipunji", 4}, {"Lamna", 2}, {"Langur", 3}, - {"Megalodon", 3}, + {"Megalodon", 3}, {"Motmot", 2}, - {"Nomascus", 5}, - {"Orangutan", 2}, - {"Peregrine", 2}, + {"Nomascus", 5}, + {"Orangutan", 2}, + {"Peregrine", 2}, {"Quail", 3}, {"Raven", 3}, {"Shrike", 3}, @@ -153,19 +155,19 @@ {"Uakari", 4}, {"Vervet", 4}, {"Zonalis", 6}, - {"Pithecia", 3}, - {"Bulrushes", 6}, + {"Pithecia", 3}, + {"Bulrushes", 6}, {"Cattail", 4}, - {"Hydrilla", 5}, - {"Duckweed", 4}, + {"Hydrilla", 5}, + {"Duckweed", 4}, {"Fanwort", 4}, {"Elodea", 5}, {"Kudzu", 2}, {"Gibba", 5}, {"Lotus", 3}, {"Ipomoea", 3}, - {"Mangabey", 2}, - {"Muskgrass", 4}, + {"Mangabey", 2}, + {"Muskgrass", 4}, {"Juncus", 4} }; @@ -220,10 +222,10 @@ } config_name_t; typedef struct { - uint16_t device_id; - uint32_t subsys_id; + uint16_t device_id; + uint32_t subsys_id; chip_family_t chip_family; - const char *model_name; + const char *model_name; config_name_t cfg_name; uint8_t max_ports; } radeon_card_info_t; @@ -385,6 +387,7 @@ { 0x9540, 0x30501787, CHIP_FAMILY_RV710, "ATI Radeon HD 4590", kNull , 0 }, { 0x954F, 0x16131462, CHIP_FAMILY_RV710, "ATI Radeon HD 4550", kNull , 0 }, // ErmaC + { 0x954F, 0x20081787, CHIP_FAMILY_RV710, "ATI Radeon HD 4350", kNull , 0 }, // ErmaC { 0x954F, 0x29201682, CHIP_FAMILY_RV710, "ATI Radeon HD 4550", kNull , 0 }, { 0x954F, 0x29211682, CHIP_FAMILY_RV710, "ATI Radeon HD 4550", kNull , 0 }, { 0x954F, 0x30901682, CHIP_FAMILY_RV710, "XFX Radeon HD 4570", kNull , 0 }, @@ -496,6 +499,8 @@ { 0x6899, 0xE140174B, CHIP_FAMILY_CYPRESS, "ATI Radeon HD 5850", kUakari , 0 }, + { 0x6899, 0xE174174B, CHIP_FAMILY_CYPRESS, "ATI Sapphire Radeon HD 5850", kUakari , 0 }, + { 0x6899, 0x200A1787, CHIP_FAMILY_CYPRESS, "ATI Radeon HD 5850", kUakari , 0 }, { 0x6899, 0x22901787, CHIP_FAMILY_CYPRESS, "ATI Radeon HD 5850", kUakari , 0 }, @@ -504,6 +509,8 @@ { 0x689C, 0x30201682, CHIP_FAMILY_HEMLOCK, "ATI Radeon HD 5970", kUakari , 0 }, + { 0x68A0, 0x043A1028, CHIP_FAMILY_BROADWAY, "ATI Mobility Radeon HD 5870", kNull , 0 }, // ErmaC + { 0x68A1, 0x144D103C, CHIP_FAMILY_CYPRESS, "ATI Mobility Radeon HD 5850", kNomascus , 0 }, { 0x68A1, 0x1522103C, CHIP_FAMILY_CYPRESS, "ATI Mobility Radeon HD 5850", kHoolock , 0 }, @@ -513,7 +520,7 @@ { 0x68B8, 0x00CF106B, CHIP_FAMILY_JUNIPER, "ATI Radeon HD 5770", kHoolock , 0 }, - { 0x68B8, 0x145821f6, CHIP_FAMILY_JUNIPER, "GigaByte HD5770 R577SL-1GD", kVervet , 0 }, // ErmaC + { 0x68B8, 0x21f61458, CHIP_FAMILY_JUNIPER, "GigaByte HD5770 R577SL-1GD", kVervet , 0 }, // ErmaC { 0x68B8, 0x29901682, CHIP_FAMILY_JUNIPER, "ATI Radeon HD 5770", kVervet , 0 }, { 0x68B8, 0x29911682, CHIP_FAMILY_JUNIPER, "ATI Radeon HD 5770", kVervet , 0 }, @@ -528,12 +535,31 @@ { 0x68B8, 0x200B1787, CHIP_FAMILY_JUNIPER, "ATI Radeon HD 5770", kVervet , 0 }, { 0x68B8, 0x22881787, CHIP_FAMILY_JUNIPER, "ATI Radeon HD 5770", kVervet , 0 }, + { 0x68BE, 0x22881787, CHIP_FAMILY_JUNIPER, "ATI Radeon HD 5750", kVervet , 0 }, // ErmaC + { 0x68BF, 0x220E1458, CHIP_FAMILY_JUNIPER, "ATI Radeon HD 6750", kVervet , 0 }, { 0x68C0, 0x1594103C, CHIP_FAMILY_REDWOOD, "AMD Radeon HD 6570M", kNull , 0 }, { 0x68C0, 0x392717AA, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5730", kNull , 0 }, + { 0x68C0, 0x395217AA, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5730", kNull , 0 }, // ErmaC + + { 0x68C1, 0x02051025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull , 0 }, // ErmaC + { 0x68C1, 0x02961025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull , 0 }, // ErmaC + { 0x68C1, 0x030A1025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull , 0 }, // ErmaC + { 0x68C1, 0x033D1025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull , 0 }, // ErmaC + { 0x68C1, 0x033E1025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull , 0 }, // ErmaC + { 0x68C1, 0x03471025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull , 0 }, // ErmaC + { 0x68C1, 0x03561025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull , 0 }, // ErmaC + { 0x68C1, 0x03581025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull , 0 }, // ErmaC + { 0x68C1, 0x035A1025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull , 0 }, // ErmaC + { 0x68C1, 0x035C1025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull , 0 }, // ErmaC + { 0x68C1, 0x03641025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull , 0 }, // ErmaC + { 0x68C1, 0x03791025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull , 0 }, // ErmaC + { 0x68C1, 0x037E1025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull , 0 }, // ErmaC + { 0x68C1, 0x03821025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5750", kNull , 0 }, // ErmaC + { 0x68C1, 0x033E1025, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5650", kNull , 0 }, { 0x68C1, 0x9071104D, CHIP_FAMILY_REDWOOD, "ATI Mobility Radeon HD 5650", kEulemur , 0 }, @@ -567,8 +593,10 @@ { 0x68E1, 0x1426103C, CHIP_FAMILY_CEDAR, "ATI Radeon HD 5430M", kEulemur , 0 }, - { 0x68F9, 0x03741043, CHIP_FAMILY_CEDAR, "ASUS EAH5450", kNull , 0 }, // ErmaC + { 0x68F9, 0x010E1002, CHIP_FAMILY_CEDAR, "ATI Radeon HD 5450", kNull , 0 }, // ErmaC + { 0x68F9, 0x03741043, CHIP_FAMILY_CEDAR, "ASUS EAH5450", kNull , 0 }, // ErmaC + { 0x68F9, 0x5470174B, CHIP_FAMILY_CEDAR, "ATI Radeon HD 5470", kNull , 0 }, { 0x68F9, 0x5490174B, CHIP_FAMILY_CEDAR, "ATI Radeon HD 5490", kNull , 0 }, { 0x68F9, 0x5530174B, CHIP_FAMILY_CEDAR, "ATI Radeon HD 5530", kNull , 0 }, @@ -584,8 +612,8 @@ { 0x68F9, 0x301217AF, CHIP_FAMILY_CEDAR, "ATI Radeon HD 5490", kNull , 0 }, { 0x68F9, 0x301317AF, CHIP_FAMILY_CEDAR, "ATI Radeon HD 5470", kNull , 0 }, + { 0x68F9, 0xE145174B, CHIP_FAMILY_CEDAR, "ATI Radeon HD 5450", kEulemur , 0 }, // ErmaC { 0x68F9, 0xE153174B, CHIP_FAMILY_CEDAR, "ATI Radeon HD 5450", kEulemur , 0 }, // ErmaC - { 0x68F9, 0xE145174B, CHIP_FAMILY_CEDAR, "ATI Radeon HD 5450", kEulemur , 0 }, // ErmaC /* Northen Islands */ { 0x6718, 0x0B001002, CHIP_FAMILY_CAYMAN, "AMD Radeon HD 6970", kNull , 0 }, @@ -594,15 +622,16 @@ { 0x6719, 0x0B001002, CHIP_FAMILY_CAYMAN, "AMD Radeon HD 6950", kNull , 0 }, // ErmaC { 0x6719, 0x186B174B, CHIP_FAMILY_CAYMAN, "AMD Radeon HD 6950", kNull , 0 }, // ErmaC + { 0x6719, 0x20101787, CHIP_FAMILY_CAYMAN, "AMD Radeon HD 6970", kNull , 0 }, // ErmaC { 0x671D, 0x10020B2A, CHIP_FAMILY_ANTILLES, "AMD Radeon HD 6990", kNull , 0 }, // ErmaC { 0x671D, 0x10021B2A, CHIP_FAMILY_ANTILLES, "AMD Radeon HD 6990", kNull , 0 }, // ErmaC { 0x671D, 0x16823160, CHIP_FAMILY_ANTILLES, "AMD Radeon HD 6990", kNull , 0 }, // ErmaC - { 0x6720, 0x04BA1028, CHIP_FAMILY_BARTS, "AMD Radeon HD 6970m", kElodea , 0 }, + { 0x6720, 0x04BA1028, CHIP_FAMILY_BARTS, "AMD Radeon HD 6970m", kElodea , 0 }, // ErmaC { 0x6738, 0x00D01002, CHIP_FAMILY_BARTS, "AMD Radeon HD 6870", kDuckweed , 0 }, - { 0x6738, 0x174B174B, CHIP_FAMILY_BARTS, "Sapphire Radeon HD6870", kDuckweed , 0 }, // ErmaC + { 0x6738, 0x174B174B, CHIP_FAMILY_BARTS, "Sapphire Radeon HD6870", kBulrushes , 0 }, // ErmaC { 0x6738, 0x21FA1002, CHIP_FAMILY_BARTS, "AMD Radeon HD 6870", kDuckweed , 0 }, { 0x6738, 0x67381002, CHIP_FAMILY_BARTS, "AMD Radeon HD 6870", kDuckweed , 0 }, @@ -611,19 +640,21 @@ { 0x6738, 0x31031682, CHIP_FAMILY_BARTS, "AMD Radeon HD 6870", kDuckweed , 0 }, { 0x6738, 0x31041682, CHIP_FAMILY_BARTS, "AMD Radeon HD 6870", kDuckweed , 0 }, { 0x6738, 0x31071682, CHIP_FAMILY_BARTS, "AMD Radeon HD 6870", kDuckweed , 0 }, // ErmaC - { 0x6738, 0x31081682, CHIP_FAMILY_BARTS, "AMD Radeon HD 6870", kDuckweed , 0 }, // ErmaC + { 0x6738, 0x31081682, CHIP_FAMILY_BARTS, "AMD Radeon HD 6870", kDuckweed , 0 }, // ErmaC ?? kJuncus ?? { 0x6738, 0xE178174B, CHIP_FAMILY_BARTS, "AMD Radeon HD 6870", kDuckweed , 0 }, { 0x6738, 0x20101787, CHIP_FAMILY_BARTS, "AMD Radeon HD 6870", kDuckweed , 0 }, { 0x6738, 0x23051787, CHIP_FAMILY_BARTS, "AMD Radeon HD 6870", kDuckweed , 0 }, - { 0x6739, 0x67391002, CHIP_FAMILY_BARTS, "AMD Radeon HD 6850", kDuckweed , 0 }, - { 0x6739, 0x21F81458, CHIP_FAMILY_BARTS, "AMD Radeon HD 6850", kDuckweed , 0 }, // ErmaC ?? kBulrushes ?? + { 0x6739, 0x03B41043, CHIP_FAMILY_BARTS, "AMD Radeon HD 6850", kDuckweed , 0 }, // ErmaC + { 0x6739, 0x21F81458, CHIP_FAMILY_BARTS, "AMD Radeon HD 6850", kBulrushes , 0 }, // ErmaC { 0x6739, 0x24411462, CHIP_FAMILY_BARTS, "AMD Radeon HD 6850", kDuckweed , 0 }, { 0x6739, 0x31101682, CHIP_FAMILY_BARTS, "AMD Radeon HD 6850", kDuckweed , 0 }, + { 0x6739, 0x67391002, CHIP_FAMILY_BARTS, "AMD Radeon HD 6850", kDuckweed , 0 }, { 0x6739, 0xE177174B, CHIP_FAMILY_BARTS, "AMD Radeon HD 6850", kDuckweed , 0 }, + { 0x6740, 0x1D121043, CHIP_FAMILY_TURKS, "AMD Radeon HD 6730M", kNull , 0 }, // ErmaC { 0x6740, 0x1657103C, CHIP_FAMILY_TURKS, "AMD Radeon HD 6770M", kNull , 0 }, { 0x6740, 0x165A103C, CHIP_FAMILY_TURKS, "AMD Radeon HD 6770M", kNull , 0 }, @@ -649,6 +680,8 @@ { 0x6760, 0x04CC1028, CHIP_FAMILY_CAICOS, "AMD Radeon HD 6490M", kNull , 0 }, + { 0x6760, 0x167D103C, CHIP_FAMILY_CAICOS, "AMD Radeon HD 6490M", kNull , 0 }, // ErmaC + { 0x6760, 0x1CB21043, CHIP_FAMILY_CAICOS, "AMD Radeon HD 6470M", kNull , 0 }, { 0x6779, 0x64501092, CHIP_FAMILY_CAICOS, "AMD Radeon HD 6450", kBulrushes , 0 }, @@ -724,6 +757,10 @@ { 0x689C, 0x00000000, CHIP_FAMILY_HEMLOCK, "ATI Radeon HD 5900 Series", kUakari , 0 }, { 0x689E, 0x00000000, CHIP_FAMILY_CYPRESS, "ATI Radeon HD 5800 Series", kUakari , 0 }, + { 0x68A0, 0x00000000, CHIP_FAMILY_BROADWAY, "ATI Mobility Radeon HD 5800 Series", kNull , 0 }, // ErmaC + { 0x68A1, 0x00000000, CHIP_FAMILY_BROADWAY, "ATI Mobility Radeon HD 5800 Series", kNull , 0 }, // ErmaC + { 0x68B0, 0x00000000, CHIP_FAMILY_BROADWAY, "ATI Mobility Radeon HD 5800 Series", kNull , 0 }, // ErmaC + { 0x68B8, 0x00000000, CHIP_FAMILY_JUNIPER, "ATI Radeon HD 5700 Series", kVervet , 0 }, { 0x68B9, 0x00000000, CHIP_FAMILY_JUNIPER, "ATI Radeon HD 5600 Series", kVervet , 0 }, { 0x68BE, 0x00000000, CHIP_FAMILY_JUNIPER, "ATI Radeon HD 5700 Series", kVervet , 0 }, @@ -738,8 +775,8 @@ { 0x6718, 0x00000000, CHIP_FAMILY_CAYMAN, "AMD Radeon HD 6970 Series", kNull , 0 }, { 0x6719, 0x00000000, CHIP_FAMILY_CAYMAN, "AMD Radeon HD 6950 Series", kNull , 0 }, - { 0x671D, 0x00000000, CHIP_FAMILY_ANTILLES, "AMD Radeon HD 6900 Series", kNull , 0 }, - { 0x671F, 0x00000000, CHIP_FAMILY_CAYMAN, "AMD Radeon HD 6900 Series", kNull , 0 }, + { 0x671D, 0x00000000, CHIP_FAMILY_ANTILLES, "AMD Radeon HD 6900 Series", kNull , 0 }, // ErmaC + { 0x671F, 0x00000000, CHIP_FAMILY_CAYMAN, "AMD Radeon HD 6900 Series", kNull , 0 }, // ErmaC { 0x6720, 0x00000000, CHIP_FAMILY_BARTS, "AMD Radeon HD 6900M Series", kNull , 0 }, Index: branches/ErmaC/Modules/package/Scripts/Main/Standardpostinstall =================================================================== --- branches/ErmaC/Modules/package/Scripts/Main/Standardpostinstall (revision 1725) +++ branches/ErmaC/Modules/package/Scripts/Main/Standardpostinstall (revision 1726) @@ -43,7 +43,7 @@ then targetVolume="/Volumes/"$( ls -1F /Volumes | sed -n 's:@$::p' ) else - targetVolume="$3" + targetVolume="$3" fi @@ -55,6 +55,8 @@ targetResources="${targetVolume}/usr/local/bin/" +updateStage1=1 # by default update partition boot sector + echo "===============================================" echo "DEBUG: display script variables" echo "*******************************" @@ -87,115 +89,111 @@ if [ ${returnValue} = 0 ]; then # OK to proceed - # Does a GRUB or Linux loader already exist in the disk's MBR? # The script returns 1 if yes, 0 if no. - "$scriptDir"CheckGRUBLinuxLoader.sh "${targetDisk}" "${targetVolume}" "${scriptDir}" - returnValue=$? - if [ ${returnValue} = 0 ]; then - # OK to proceed - - - # check for a 4-byte Windows disk signature in the disk's MBR. - # the following script returns 1 if a Windows disk signature exists, and 0 if not. - - "$scriptDir"CheckWindowsDiskSignature.sh "${targetDisk}" "${targetVolume}" "${scriptDir}" - diskSigCheck=$? - - + diskupdate=$? + if [ ${diskupdate} -ne 0 ]; then + "$scriptDir"InstallLog.sh "${targetVolume}" "Found an existing GRUB/LILO bootloader in the MBR." + "$scriptDir"InstallLog.sh "${targetVolume}" "MBR and partition boot sector will not be modified." + updateStage1=0 + else # check for existing bootloaders in the disk's MBR # and find out if we can write the Chameleon boot files. # the following script returns 0 if we can proceed # with writing the boot files, and 1 for not. - "$scriptDir"CheckDiskMicrocode.sh "${targetDisk}" "${diskSigCheck}" "${targetVolume}" "${scriptDir}" diskupdate=$? + fi - # check the format of the selected partition. - # result should be either hfs or msdos - # Should really check to make sure! + # check for a 4-byte Windows disk signature in the disk's MBR. + # the following script returns 1 if a Windows disk signature exists, and 0 if not. + "$scriptDir"CheckWindowsDiskSignature.sh "${targetDisk}" "${targetVolume}" "${scriptDir}" + diskSigCheck=$? - targetFormat=$( fstyp "$targetDevice" ) - - # check the partition scheme used for the selected disk. - # the following script returns 1 if GPT - # the following script returns 2 if GPT/MBR - # the following script returns 3 if MBR + # check the format of the selected partition. + # result should be either hfs or msdos + # Should really check to make sure! + targetFormat=$( fstyp "$targetDevice" ) + + + # check the partition scheme used for the selected disk. + # the following script returns 1 if GPT + # the following script returns 2 if GPT/MBR + # the following script returns 3 if MBR + # the following script returns 0 if nothing + "$scriptDir"CheckPartitionScheme.sh "${targetDisk}" "${targetVolume}" "${scriptDir}" + partitionScheme=$? + if [ ${partitionScheme} = 3 ]; then + # If MBR partition scheme then check for FAT16 or FAT32 + + # the following script returns 1 if FAT16 + # the following script returns 2 if FAT32 # the following script returns 0 if nothing + "$scriptDir"CheckFatType.sh "${targetDeviceRaw}" "${targetVolume}" "${scriptDir}" + fatType=$? + fi - "$scriptDir"CheckPartitionScheme.sh "${targetDisk}" "${targetVolume}" "${scriptDir}" - partitionScheme=$? - if [ ${partitionScheme} = 3 ]; then - # If MBR partition scheme then check for FAT16 or FAT32 + if [ "${fatType}" = 1 ] && [ "${partitionScheme}" = 3 ]; then + # Write error to Chameleon_Error_Log file + "$scriptDir"InstallLog.sh "${targetVolume}" "FAIL: Cannot install to a device using FAT16" + else + # Continue if the selected device is not a FAT16 format device - # the following script returns 1 if FAT16 - # the following script returns 2 if FAT32 - # the following script returns 0 if nothing + # Append a line break to the installer log + "$scriptDir"InstallLog.sh "${targetVolume}" "LineBreak" - "$scriptDir"CheckFatType.sh "${targetDeviceRaw}" "${targetVolume}" "${scriptDir}" - fatType=$? + if [ ${diskupdate} -eq 0 ]; then + # Write the stage 0 loader to the MBR + "$scriptDir"WriteChameleonStage0.sh "${diskSigCheck}" "${stage0Loader}" "${stage0LoaderDualBoot}" "${targetDisk}" "${targetResources}" "${targetVolume}" "${scriptDir}" + else + "$scriptDir"InstallLog.sh "${targetVolume}" "Stage 0 loader not written to ${targetDisk}." fi - if [ "${fatType}" = 1 ] && [ "${partitionScheme}" = 3 ]; then - # Write error to Chameleon_Error_Log file - "$scriptDir"InstallLog.sh "${targetVolume}" "FAIL: Cannot install to a device using FAT16" + if [ ${updateStage1} -eq 1 ]; then + # Write the stage 1 loader to the partition boot sector + "$scriptDir"WriteChameleonStage1.sh "${targetFormat}" "${stage1LoaderHFS}" "${stage1LoaderFAT}" "${3}" "${targetDeviceRaw}" "${targetVolume}" "${scriptDir}" else - # Continue if the selected device is not a FAT16 format device + "$scriptDir"InstallLog.sh "${targetVolume}" "Partition boot sector not written to ${targetDevice}." + fi - # Append a line break to the installer log - "$scriptDir"InstallLog.sh "${targetVolume}" "LineBreak" + # Write the stage 2 loader to the root of the selected partition + "$scriptDir"WriteChameleonStage2.sh "${stage2Loader}" "${3}" "${targetDevice}" "${targetVolume}" "${scriptDir}" - if [ ${diskupdate} = "0" ]; then - - # Write the stage 0 loader to the MBR - "$scriptDir"WriteChameleonStage0.sh "${diskSigCheck}" "${stage0Loader}" "${stage0LoaderDualBoot}" "${targetDisk}" "${targetResources}" "${targetVolume}" "${scriptDir}" - else - "$scriptDir"InstallLog.sh "${targetVolume}" "Stage 0 loader not written to ${targetDisk}." - fi - # Write the stage 1 loader to the partition boot sector - "$scriptDir"WriteChameleonStage1.sh "${targetFormat}" "${stage1LoaderHFS}" "${stage1LoaderFAT}" "${3}" "${targetDeviceRaw}" "${targetVolume}" "${scriptDir}" + # Next we look to check for existing Chameleon installations. + # But as it will check /Volumes/EFI for the stage 2 loader, + # we need to make sure it's mounted. - # Write the stage 2 loader to the root of the selected partition - "$scriptDir"WriteChameleonStage2.sh "${stage2Loader}" "${3}" "${targetDevice}" "${targetVolume}" "${scriptDir}" + # Tell the user what's going on. + "$scriptDir"InstallLog.sh "${targetVolume}" "LineBreak" + "$scriptDir"InstallLog.sh "${targetVolume}" "About to check your disk for previous installations" + "$scriptDir"InstallLog.sh "${targetVolume}" "which involves checking the EFI system partition if" + "$scriptDir"InstallLog.sh "${targetVolume}" "appropriate for this disk." + # Unmount ALL mounted volumes named EFI. + # Returns 0=success, 1=fail + "$scriptDir"UnMountEFIvolumes.sh "${targetVolume}" "${scriptDir}" + returnValue=$? + if [ ${returnValue} = 0 ]; then + # OK to proceed - # Next we look to check for existing Chameleon installations. - # But as it will check /Volumes/EFI for the stage 2 loader, - # we need to make sure it's mounted. - - # Tell the user what's going on. - "$scriptDir"InstallLog.sh "${targetVolume}" "LineBreak" - "$scriptDir"InstallLog.sh "${targetVolume}" "About to check your disk for previous installations" - "$scriptDir"InstallLog.sh "${targetVolume}" "which involves checking the EFI system partition if" - "$scriptDir"InstallLog.sh "${targetVolume}" "appropriate for this disk." - - # Unmount ALL mounted volumes named EFI. - # Returns 0=success, 1=fail - - "$scriptDir"UnMountEFIvolumes.sh "${targetVolume}" "${scriptDir}" - returnValue=$? - if [ ${returnValue} = 0 ]; then - # OK to proceed - - if [ ${partitionScheme} = 1 ] || [ ${partitionScheme} = 2 ]; then - # Mount the EFI system partition - "$scriptDir"MountESP.sh "${targetDisk}" "${targetVolume}" "${scriptDir}" - fi - - # Check for another existing Chameleon installation on the same disk - "$scriptDir"CheckPreviousChameleon.sh "${targetDisk}" "${targetDeviceRaw}" "${targetDevice}" "${targetVolume}" "${scriptDir}" + if [ ${partitionScheme} = 1 ] || [ ${partitionScheme} = 2 ]; then + # Mount the EFI system partition + "$scriptDir"MountESP.sh "${targetDisk}" "${targetVolume}" "${scriptDir}" fi - # Append a line break to the installer log - "$scriptDir"InstallLog.sh "${targetVolume}" "LineBreak" - - # Set the active partition ONLY if Windows is not installed - "$scriptDir"SetActivePartition.sh "${diskSigCheck}" "${targetDiskRaw}" "${targetSlice}" "${targetVolume}" "${scriptDir}" + # Check for another existing Chameleon installation on the same disk + "$scriptDir"CheckPreviousChameleon.sh "${targetDisk}" "${targetDeviceRaw}" "${targetDevice}" "${targetVolume}" "${scriptDir}" fi + + # Append a line break to the installer log + "$scriptDir"InstallLog.sh "${targetVolume}" "LineBreak" + + # Set the active partition ONLY if Windows is not installed + "$scriptDir"SetActivePartition.sh "${diskSigCheck}" "${targetDiskRaw}" "${targetSlice}" "${targetVolume}" "${scriptDir}" fi fi Index: branches/ErmaC/Modules/package/Scripts/Sub/CheckGRUBLinuxLoader.sh =================================================================== --- branches/ErmaC/Modules/package/Scripts/Sub/CheckGRUBLinuxLoader.sh (revision 1725) +++ branches/ErmaC/Modules/package/Scripts/Sub/CheckGRUBLinuxLoader.sh (revision 1726) @@ -36,7 +36,6 @@ diskmicrocodetypeid=${diskmicrocodetype[${diskmicrocodetypecounter}]#*,} if [ ! "${diskmicrocode}" = "${diskmicrocode/${diskmicrocodetypeid}/}" ]; then echo "${diskmicrocodetype[${diskmicrocodetypecounter}]%,*} found." - "$scriptDir"InstallLog.sh "${targetVolume}" "FAIL: Found an exisitng GRUB/LILO bootloader in the MBR." exit 1 #else #echo "DEBUG: Didn't find a match for ${diskmicrocodetype[${diskmicrocodetypecounter}]%,*}" Index: branches/ErmaC/Modules/package/buildpkg.sh =================================================================== --- branches/ErmaC/Modules/package/buildpkg.sh (revision 1725) +++ branches/ErmaC/Modules/package/buildpkg.sh (revision 1726) @@ -198,12 +198,25 @@ } fi # - + # Warning Keylayout module need additional files if [ -e ${1%/*}/i386/modules/Keylayout.dylib ]; then { - mkdir -p ${1}/Keylayout/Root - ditto --noextattr --noqtn ${1%/*}/i386/modules/Keylayout.dylib ${1}/Keylayout/Root + mkdir -p ${1}/Keylayout/Root/Extra/{modules,Keymaps} + mkdir -p ${1}/Keylayout/Root/usr/local/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/local/bin echo " [BUILD] Keylayout " - buildpackage "${1}/Keylayout" "/$chamTemp/Extra/modules" "" "start_selected=\"false\"" >/dev/null 2>&1 + buildpackage "${1}/Keylayout" "/" "" "start_selected=\"true\"" >/dev/null 2>&1 } fi # - @@ -248,7 +261,7 @@ } else { - echo " -= no modules to include =-" + echo " -= no modules to include =-" } fi # End build Modules packages