Jump to content

Zenith432

Zenith432

Member Since 21 Jun 2009
Offline Last Active A minute ago
*****

#2095252 Chameleon 2.3svn Official PKG Installer & Binaries

Posted by Zenith432 on 15 December 2014 - 01:35 PM

wartomato, Try the attached patch (relative to r2510), check if it solves your hang.   But the problem is the same, so I'll have to get to the code, I guess. Attached Files  patch_from_r2510.txt 2.09KB 6 downloads

#2095083 Workstation 11, Player 7 and Fusion 7 Mac OS X Unlocker 2

Posted by Zenith432 on 14 December 2014 - 06:07 PM

Need to add 'smc.version = 0' to the VMX file in order to resolve 'vmcore/vmm/main/physMem_monitor.c:1123'.

#2094861 Chameleon 2.3svn Official PKG Installer & Binaries

Posted by Zenith432 on 13 December 2014 - 08:52 PM

It's in diskScanBootVolumes(...) in libsaio/disk.c.  The only idea is to add lots of printfs (+pause()) in order to pinpoint the place where it hangs.  That's what I did to find it was hanging when trying to scan a USB stick with fat32 on it.  I didn't fully resolve that though - inistead used a workaround to prevent getOSVersion() from trying to read an msdos filesystem.  That particular hang doesn't happen anymore, so it was resolved though some change in the code.  The hang you're experiencing is something else.Question is now: what happens with /boot during this phase. I already tried to mimic this with for example Chimera 4.0.1, but Chimera works and does not do this...  Any ideas? - Any other patches to try? - Any commits to make? ...

#2093233 exFAT Volume Boot Record for Chameleon

Posted by Zenith432 on 08 December 2014 - 04:37 PM

I've updated the package at post #1 to version 1.0.4 that incorporates Micky1979's -u option from post #38, and uses xcrun in the Makefile to (hopefully) improve build issue in post #35 - should make it use SDK from Xcode folders instead of /System/Library/Frameworks or /usr/include.

#2092053 exFAT Volume Boot Record for Chameleon

Posted by Zenith432 on 04 December 2014 - 06:16 PM

More likely the script or Terminal had the exfat volume as its "current directory". You can run 'lsof | grep <volume name>' to see which process has it open. Anyway, I can add a 'force dismount' option to boot1-install, instead of doing diskutil umount -f. Is that useful? Finder was closed at this volume  (we can close programmatically all windows before lauch boot1-install ..if helpfull). So only Spotlight remain to check.. or lauch umout -f ..... before..

#2091877 exFAT Volume Boot Record for Chameleon

Posted by Zenith432 on 04 December 2014 - 07:23 AM

Do not use the -M switch by default with exfat. Do not use the -M switch by default with exfat. Do not use the -M switch by default with exfat. The normal action for boot1-install (without -M) is to dismount the filesystem, do the install, remount the filesystem. With "-M",  it installs while the filesystem is mounted. exfat's boot sector also serves as a "superblock" - which means it has 3 bytes that get rewritten during filesystem activity (dirty bit + percent used).This means the filesystem driver overwrites the boot sector when it syncs or dismounts the volume (such as when you reboot.)This means if you use "-M", the boot code gets clobbered, and the filesystem reports as corrupt because the checksum is wrong. So why did I put in the "-M" switch? The "-M" switch is only meant to be used if the filesystem cannot be dismounted when the system is running - in other words, for the root filesystem (which is always HFS+).  In HFS+, the boot...

#2091785 exFAT Volume Boot Record for Chameleon

Posted by Zenith432 on 03 December 2014 - 10:50 PM

Attached is a full implementation of exfat support for Chameleon's boot2 stage. With this code, Chameleon supports reading its configuration files and modules form an exfat partition.  Along with boot1x and revised boot0, Chameleon can fully reside on an exfat volume on either MBR or GPT. The patch is relative to revision 2510. Enjoy. Attached Files  exfat_from_r2510.patch.txt 33.29KB 9 downloads

#2090914 exFAT Volume Boot Record for Chameleon

Posted by Zenith432 on 01 December 2014 - 01:30 PM

"Type (Bundle)" is the value of kDADiskDescriptionVolumeKindKey, and it's the name of the bundle in /System/Library/Filesystems that is handling the volume.[+ there's grep -i :)]

#2090850 exFAT Volume Boot Record for Chameleon

Posted by Zenith432 on 01 December 2014 - 07:48 AM

For exfat, the kDADiskDescriptionVolumeKindKey in DiskArbitration should be 'exfat'.  If you run 'diskutil info disk2s1' you should see a line with 'Type: exfat' somewhere in there and can grep for that in a script.  There may be identifiable UUIDs in 'diskutil info' too. can be this a secure way in all scenario to know in advance if I have to use new boot files and your boot1-install, using exfat.util in the Chameleon's CheckFatType.sh script? 

#2090627 Chameleon 2.3svn Official PKG Installer & Binaries

Posted by Zenith432 on 30 November 2014 - 04:26 PM

That's not a boot0 hang.  The rotating bar hanging is in boot2 (/boot) in scanBootVolumes.  I've had this happen to me - it hung when trying to get the OSVersion from a FAT32 partition on a USB stick I had connected.  Attached is a patch I use for my hang.  Try applying it to r2510, build it and then use patched /boot see if it still hangs. Well... the third part happened. I can barely see boot0: done at startup, then entering the second stage and afterwards, well, the bar rotates and stops. That is the end of my boot sequence. This happens, if I install a built of Chameleon after 2468. 2468 just runs fine, like it always did.  Attached Files  patch.txt 901bytes 19 downloads

#2090611 Chameleon 2.3svn Official PKG Installer & Binaries

Posted by Zenith432 on 30 November 2014 - 03:08 PM

Not really.  If logical sector size is 512, calls to bios read 512-byte blocks.  Should be transparent.If you see message boot0: error on the screen it means it couldn't find a partition to boot from.  So clarify if using MBR or GPT, if you marked the partition active and installed boot1 on it.If you see message boot0: done, and then boot1: error then boot1 couldn't find /boot file on partition.If you don't see anything but blank screen and rotating bar - it means boot0, boot1 completed and /boot hung when scanning the disks.  It seems to be because of the 4k sector size thing??? - More importantly: What to do???  Micky1979s'  tool reads out: Physical sector size: 4096Logical sector size: 512

#2090421 exFAT Volume Boot Record for Chameleon

Posted by Zenith432 on 29 November 2014 - 07:25 PM

I've optimized boot0xg code to save space, and added back the feature to recognize EFI System Partition.It's packaged in 1.0.3, post #1.Full features of newest boot0xg summarized in post #7.boot0xg is now upward compatible with boot0 in that- it does everything boot0 does + recognize exFAT on MBR marked active + recognize exFAT+FAT32 on GPT typed as "Microsoft basic data". ErmaC: Since boot0xg now has all features of boot0, it's possible to replace boot0 with it instead of having separate variants.  [In clover it's the variant called boot0af.]

#2090315 exFAT Volume Boot Record for Chameleon

Posted by Zenith432 on 29 November 2014 - 11:24 AM

As Slice said, the errors are due to use of nasm 2.11.06.Attached is a patch to r2495 to make it build with Apple's nasm 0.98 and add boot1x to the Makefiles. PS: I suggest you add nasm -O3 optimization to boot0 Makefile as well.  It is the default in nasm 2.11.06, and I've used boot0 and boot0hfs successfully when optimized that way. Hi Zenith432 THX for for your continue effort in making the things better! I merge your "EXFAT boot support" (not completely) see commit 2495I'm not completely sure... and I have problem to build the boo1x.s (nasm version? no idea...)So I add it (boot1x.s) but is not called anywhere in any makefile.ErmaC Attached Files  fix_boot1x_mak_r2495.diff.txt 1.51KB 1 downloads

#2089571 exFAT Volume Boot Record for Chameleon

Posted by Zenith432 on 26 November 2014 - 07:39 PM

Ok, I prepared a variant of boot0 called boot0xgFor booting an exFAT partition stored in GPT. For booting exFAT from MBR can use regular boot0. What boot0xg boot is one of 1) any MBR partition marked as active.2) any HFS partition on MBR3) any HFS parition on GPT4) any exFAT or FAT32 parition on GPT classified as "Microsoft Basic Data" type (this is the normal kind.)5) Any FAT32 partition on GPT classified as "EFI System Partition" Functionality dropped from boot0- dropped printing of string 'test' to make some space for code. assemble with  nasm -DCONFIG_BOOT0_DEBUG=0 -DCONFIG_BOOT0_VERBOSE=1 -o boot0xg boot0xg.s EDIT: Attachment removed - boot0xg is now packaged with everything else in post #1.

#2089560 exFAT Volume Boot Record for Chameleon

Posted by Zenith432 on 26 November 2014 - 06:59 PM

Yes, sure - go ahead. For Clover to fully work with exFAT, its boot2 stage must be able read files from exFAT volume. Technical specs areboot1x expects boot0 to load 1024 bytes form exFAT partition, whether MBR or GPT.  Drive number passed in DL.  The partition offset is already stored in the bios parameter block in exFAT boot record, so no need for that. It loads /boot from the exFAT volume.  Max size of /boot is 512 * 1024 - 512 (to fit in addresses 0x20200 - 0xa0000). boot1-install detect volume type (exFAT, FAT32 or HFS+) and either For HFS+, store 1024 bytes of boot file template (boot1h) in sectors 0-1. For FAT32, store 512 bytes of boot file template (boot1f32), overwrite bytes 3 - 89 with existing FAT32 BPB. For exFAT, store 1024 bytes of boot file template (boot1x) and prepare VBR area (24 sectors total) according to spec. You can use custom templates as followsFor HFS+ boot file template must be 1024 bytes.For FAT32 boot file template must be 512...

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy