Ok, adding some info to the summary; i don't have a fix but i can explain what's going on:
- for some reason, when using boot0hfs, if there are FAT32 partitions
before the booter partition, the
first FAT32 partition is set as the booter partition,
bt(0,0). I confirmed this with a debug build.
Reading the comments on the code (boot0.s, #317)
In pass 1 we're going to find a HFS+ partition equipped with boot1h in its boot record
i'd say this shouldn't happen at all, as there's no
boot1h present on these partitions bootsector.
-
as the path used to load the themes stuff is bt(0,0)/blabla (at least the png's use it), we get no theme on this situation unless the booter has theme embedded.
- this is
only happening with FAT32 partitions; any other combination of
ntfs,
hfs,
ext or
ExFAT file systems works fine!
The reason why i also don't get the rest of the files loaded is because, i removed the
/Extra path (selected volume) from the checked ones on the booter i'm using; i'm testing loading files
only from booter partition, very successfully i must say
Solutions for this problem atm:
- using booter with theme embedded
- don't use FAT32 partitions before the booter partition or...
- use
ntfs for shared data partitions. FAT32 partitions can be easily converted to ntfs without data loss (if i'm not mistaken). They also can be read from most major OS'ses natively and don't have the file size limits of FAT32 file system.
That's it for boot0hfs...
BUT...
The other "bug" i mentioned before; i can't load the booter when it's installed to a Logical partition, with either
boot0 or
boot0hfs! Note that i'm talking about the
booter not a
system, those load fine.
I'm a bit confused at this; i'm calling it a bug because i recall doing a lot of multiboot on the MBR HD (before i bought the second only for GUID) and i'm pretty sure i did it on Logical partitions, to test the booter; all i'd do was change the Active partition.
I can be wrong as it was long time ago so, if someone has some info on this... shoot
I'm keeping my MBR HD available for tests for a while. Here is the layout atm (edited):
/dev/disk0
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *320.1 GB disk0
1: Windows_NTFS Windows 7 64.4 GB disk0s1
2: Linux 32.2 GB disk0s2
3: Apple_HFS test 8.6 GB disk0s3
4: Apple_HFS Hyperspace 214.8 GB disk0s4
p.s: It seems i've been saying some bs! I should have looked better at "open_bvdev"; went deeper on the booter code and it does check selected volume. Still, weird stuff is happening with some partition configurations/layouts.
Sorry about the bs
Think this needs another approach...