Jump to content
14 posts in this topic

Recommended Posts

I installed MAC OSX on my Sony SZ and found problem that there is no convenient way to make dual-boot Vista+OSX.

 

currently, there are two methods where we can expect improvements but both are half-functional:

1) Acronis OS Selector can boot OSX but still doesn't see Vista partitions (i couldn't make it see any of my Vista partitions). Actually, at the first installation Acronis found my Vista partitions. But for some reason (i don't remember) i uninstalled it. Any subsequent installations of Acronis didn't let me boot Vista.

2) Using Vista bootloader with chain0 trick. Unfortunately, after choosing OSX partition in Vista bootloader you will have to choose this partition again in darwin OSX loader which is very annoying.

 

I decided to improve second method because almost everything is reachable.

The idea is simple:

-chain0 should make OSX partition active before pass control to darwin loader.

-mbr should make Vista partition active when computer restarts.

 

After that you will need to choose OSX partition in Vista bootloader only once, and whole process of OSX loading will be more convenient and natural :)

 

in attachment you may find modified chain0 loader and startup code for MBR.

note about MBR:

 

you have to read YOUR OWN MBR first (from your hard drive) and then replace startup code by mine. Only 418 bytes of MBR (counting from beginning) should be updated!!

After update you may replace your MBR on hard disk.

 

NOTE: IT'S NOT FOR NEWBIES! YOU HAVE TO UNDERSTAND WHAT ARE YOU'RE DOING! OTHERWISE YOU MAY LOOSE ALL YOUR PARTITIONS!

 

addition note:

my MBR code expects Vista bootable partition to be a first partition of hard drive.

If your vista bootable partition is 2,3 or 4 then patch MBR as following:

you have to change byte at offset 0x28:

 

partition1: 0xBE

partition2: 0xCE

partition3: 0xDE

partition4: 0xEE

 

 

 

P.S: I would be glad if someone will make user-friendly installer for my modifications and will share to community.

bootosx.zip

  • Interesting, I know someone here (JPopes?) who'd be interested in that; I remember a similar effort by fyi a long time ago (/edit: well, ok, not the same, but similar spirit of hacking chain0);
  • Another alternative to the original redundancy problem is to use the darwin bootloader to boot both osx and vista.
  • For problems with Acronis OS Selector and Vista, if updating to 10.0.2160 didn't help, you may still try my little trick;

In any case, great effort, might save headaches for some, especially when/if, as you say, someone can make an installer/backup utility out of it.

1) fyi's method is to overcome "HFS+ Partition error", but it doesn't eliminate choosing OSX partitiona twice while booting.

2) correct me if i'm wrong, but as far as i know darwin will load OSX by default always and there is no way to tell to darwin load vista by default.

3) there is one important (for me at least) thing i achieve in my method: Hibernate in vista is working. I don't remember about XP, but Vista looks into MBR before hibernate. If active partition is not vista's (for example if we're using darwin bootloader) then hibernate will not happen. vista will just lock computer and will remain in login screen.

If hibernate is not required then it's possible to use just standard chain0, only MBR has to be corrected (only one byte to change from value 7C to EB) to let start vista boot loader regardless active partition flag. And then mark OSX partition as active :(

 

your advise about AOSS looks interesting. I use v10.0.2160 and tricks with placing XP files into root didn't help me before. Well, may be i did something wrong. I will try your instruction step by step.

1) he could have continued, but I think he later concentrated on promoting spfdisk (or smthing like that);

2) the darwin bootloader will load the active (primary) partition by default; if you use it as primary bootloader, it will load its associated osx. Unless, of course, you do something about it (many have asked for this in the past, and i don't have the skills);

3) ah! well, that would surely help those who need that. I don't personally use hibernation, but one question comes: if one uses grub, and loads vista/xp with makeactive option, would hibernation then function properly?

 

In fact, what's your view on grub (or wingrub): it can make osx active before loading its bootloader, and can make vista/xp/... the default os to boot. Would you consider this a good free alternative to your method?

(of course lately wingrub official wiki went almost totally chinese in language, which is unfortunate)

 

The aoss trick I gave was pre-2160, when 2117 didn't see vista at all; 2160 was supposed to solve that problem, but some still don't have success it seems. Don't know if the little trick will help.

update about AOSS:

trick with XP files doesn't work with build 2160. Yes, they added vista "support". But in fact their "support" doesn't work with vista at all. And at the same time old detection of NT-like systems stoped to work on vista partitions.

So, in short: build 2160 doesn't work at all. and there is no way (currently) to let it see vista partitions.

I don't know about build 2117 (i don't have it), but i found build 2089 in my archive which works fine with vista partitions. Trick with XP files works on this build :whistle:

 

What i don't like in AOSS is long time of booting.. message "Loading Acronis bootloader".... waiting... message "Press ESC/F6..." waiting.. oh.. so slow..

 

Another problem with AOSS i found: i have 2 vistas (32 and 64), but only one vista bootloader exists which is on vista32 partition. When i tried to load vista64 it transfered me back to vista32 loader which by default loaded vista32. I had to copy vista bootloader to vista64 partition and had to deal with bcdedit to completely split two partitions in BCD data file (after copy from vista32 to vista64 vista loader still thought all configs are on vista32 partition).

 

I'm interesting in grub loader but unfortunately couldn't find any alive grub project which works on NTFS partition.. Can you give me any link?

Sorry to hear this about aoss 2160... and surprising since they should have testers. I hope DiskDirector itself handles vista's ntfs partitions better at least.

 

To reduce booting time in aoss, one has to disable loading cd driver; it's in the startup options of aoss. But still, not as fast as cli-type booters like darwin's or grub.

 

As for multi-vista, did you try hiding the first vista partition before installing the second vista? When I was testing out vista, i hid my win2k partition to protect its own boot files. Always have to do this in multi-window system (unless one wants it otherwise).

 

As for grub, usually it installs with a linux distribution; or you can check wingrub/grub4dos at sourceforge.

no problem with multi-vista. As i wrote before i already managed to split vista loaders. Both my vistas have separate boot loaders after manual work.

I tried wingrub with no luck.. I found even one instruction on web describing install of wingrub:

http://users.bigpond.net.au/hermanzone/p9.html

 

unfortunately that instruction is for pre-Vista loaders (2000/XP) using boot.ini.

I tried to use bcdedit to make grldr to load, but couldn't make it work.

From other sources i've read that bootmgr (vista's loader) can handle other loaders if their size is below 64KB. GRLDR has more than 100KB size. That's why i have error in loading grldr.

So, to say shortly: wingrub is NOT compatible with Vista loader.

 

I know, i can make linux/FAT partition to install GRUB, but.. Hey! it's just loader. I don't want to make separate partition just for loader..

 

So, currently i see only 2 real solutions for Vista+OSX:

1) Vista loader with my patches

2) AOSS with pre-2160 build.

 

P.S: i tried russian AOSS build 2161 - the same problem with vista partitions. So, still need to use old AOSS.

I think, after partitions have been found you may update AOSS to the latest version. But i don't see any new features in newer versions to do such update :D

 

P.P.S: I'm using Disk Director build 2160 on Vista. Works without problem if you don't try resize system partition. With system partition resize it wants to reboot and resize before OS loading, but actually it does nothing (at least on my notebook). So whole process canceled. I made bootable CD and then resized system partition booted from that disk.

[Just an update on AOSS 10.0.2160: tested it on Vista. It recognized and booted it. I tried to reproduce your situation by uninstalling aoss, cleaning-up leftover files, and reinstalled later: all went well again (all without the 2117 boot files trick).

Note: this was on a system with Vista alone, no other os. Also, installed both ways: once in a non-system partition, and another time in vista's own partition; both didn't have problems seeing/booting vista.]

 

/edited above to include further tests.

as i mentioned above, first time i installed AOSS, it recognized my both Vistas partitions. After some time i installed it again and it didn't find any vista on my HDD. I can't explain why, but that's fact. Actually, if you will look at Acronis forum then you will find many complaints about 2160 and ability to find vista partitions.

by the way, I remember i deleted file bootsect.bak from root of vista partition since i didn't need this file (and vista also doesn't use this file). May be this is source of AOSS problem. I couldn't re-create this file because i don't have it anymore and it had size more than 512bytes to be simple MBR sector.

 

try to delete AOSS completely then delete bootsect.bak from root of vista partition :P

Try to delete AOSS completely then delete bootsect.bak from root of vista partition
Did it, still can't reproduce the problem you're describing.

The bootsect.bak first 512bytes is the bootsector, the rest contains the strings "BOOTMGR" and "NTLDR" near the begining; i'll compare later with the boot files.

After reinstalling AOSS, this file didn't reappear, but this didn't cause problems.

well, i'm not a developer of AOSS.

Lucky you, you have no problem with AOSS :)

Actually, old version of AOSS is working fine for me. So, there is no problem with AOSS anymore.

I used AOSS a while but vista loader works better - it's much faster. I think i will back to my patch ;)

 

Thank you, cbmkgd, for discussion! ^_^

  • 4 weeks later...
I used AOSS a while but vista loader works better - it's much faster. I think i will back to my patch :)

Perhaps it might be easier to patch the boot loader (boot2) to select the default volume to be the native Mac one.

 

Edit boot-132/i386/lib/libsaio/sys.c and change in BVRef selectBootVolume( BVRef chain )

 

	for ( bvr = chain; bvr; bvr = bvr->next )
{
	if ( bvr->flags & kBVFlagNativeBoot ) bvr1 = bvr;
	if ( bvr->flags & kBVFlagPrimary )	bvr2 = bvr;
}

 

to

 

	for ( bvr = chain; bvr; bvr = bvr->next )
{
	if ( bvr->flags & kBVFlagNativeBoot ) bvr1 = bvr;
}

 

Then recompile and inject the code into the hard drive, e.g.

./startupfiletool /dev/rdisk1 boot-132/sym/i386/boot

 

I haven't tried this yet, but it might work.

 

Here is my compiled boot file if anyone wants to try: boot.zip

×
×
  • Create New...