Jump to content

Chameleon RC4 is out!


Poco
 Share

1,054 posts in this topic

Recommended Posts

OK fixed see below, what's next :)

 

Here's a prerelease 4 version RC5:

RC5pre4.tar.gz

 

This version already brings more nvidia gfx cards models and my new Rename Partition feature,

and with a little smbios manual edition for now for memory declaration, it's the most featured version I know :D

2 bugs to report, real this time :)

System-type was altered on me, my notebook provide correct value ootb (2), I think System-type shouldn't be affected unless is specified in com.apple.boot.plist.

Custom ECDT.aml was not loaded, isn't implemented yet?

Since we are on ACPI stuff if DropSSDT=yes is used custom SSDT, SSDT-0 to X can't be loaded anymore, this feature is required on some notebooks that provide wrong tables(a lot!), must drop them all and load good one.

Also add the feature to drop any table that has no use for OS X, eg DropOEMX or so...

And please, please I need to load/replace any known ACPI table(for my tests...).

 

Thanks!

Link to comment
Share on other sites

WOW, nice work rekursor.

 

I would like to recommend something cosmetic. In the graphics.c (of boot2) line 1248, change printf(string); into verbose(string); to disable the spinning cursor (throbber). I still get a blinking cursor though, which I can't trace in the code!

 

Also, in the preference pane, what is the purpose of the "Use GUI". Removing the theme folder automatically disables the GUI since Asere's first modification. Another thing is the sleep button. Is it really needed?

 

Tell me what you think

 

Thanks in advance

Link to comment
Share on other sites

Custom ECDT.aml was not loaded, isn't implemented yet?

Since we are on ACPI stuff if DropSSDT=yes is used custom SSDT, SSDT-0 to X can't be loaded anymore, this feature is required on some notebooks that provide wrong tables(a lot!), must drop them all and load good one.

Also add the feature to drop any table that has no use for OS X, eg DropOEMX or so...

And please, please I need to load/replace any known ACPI table(for my tests...).

 

Thanks!

 

Agree;)

Link to comment
Share on other sites

2 bugs to report, real this time :P

System-type was altered on me, my notebook provide correct value ootb (2), I think System-type shouldn't be affected unless is specified in com.apple.boot.plist.

Custom ECDT.aml was not loaded, isn't implemented yet?

Good point for System type, I will make sure it is not forced by default.

For custom ECDT, I have to see with my team, sure it can be done and will be done but I had to troubleshoot our changes first to get a chance to have people happily testing this future version.

so +1 here too, we are on it.

 

 

WOW, nice work rekursor.

 

I would like to recommend something cosmetic. In the graphics.c (of boot2) line 1248, change printf(string); into verbose(string); to disable the spinning cursor (throbber). I still get a blinking cursor though, which I can't trace in the code!

 

Also, in the preference pane, what is the purpose of the "Use GUI". Removing the theme folder automatically disables the GUI since Asere's first modification. Another thing is the sleep button. Is it really needed?

 

Tell me what you think

 

Thanks in advance

Thanks, I changed the printf to verbose, for the GUI, I need to be able to force no gui my testing use but I agree it could be removed from the pref panel, for the sleep button, it is not really necessary indeed but I sometimes I let the pref panel open during my sessions and found convenient to have a one click direct access to sleep while developing.

 

 

Since we are on ACPI stuff if DropSSDT=yes is used custom SSDT, SSDT-0 to X can't be loaded anymore, this feature is required on some notebooks that provide wrong tables(a lot!), must drop them all and load good one.

How did it work for you before ?

Link to comment
Share on other sites

Hi rek, a question. Preamble: today i decided to try a different bootloader, bootthink, and i noticed that allows the possibility to boot with dvd.

So, i wondered if it was possible to add the same type of option in chameleon also.

I know the reason why it has not been done in the past but I wonder if now it were possible;)

 

Hi man :P

 

Edit: from usb pen, I have forgotten this particular;)

Link to comment
Share on other sites

Hi rek, a question. Preamble: today i decided to try a different bootloader, bootthink, and i noticed that allows the possibility to boot with dvd.

So, i wondered if it was possible to add the same type of option in chameleon also.

I know the reason why it has not been done in the past but I wonder if now it were possible;)

As usual, I am open and would be glad to consider with my team this kind of feature, please put it as a wishlist and we'll see what we can do :P

For now, my objectives are to provide a stable trunk to our users, while also keeping our promises to implement important functionalities like ssdt loading.

Once we have a stable RC5, (and I need all of you for that first completely public and collaborative work :D,

we'll start a new development branch to go even further !

Thanks to all of you for making chameleon better, you're feedback is crucial, and we are on the good path ...

Link to comment
Share on other sites

As usual, I am open and would be glad to consider with my team this kind of feature, please put it as a wishlist and we'll see what we can do :P

Thanks again for your work Rekursor and while you mentioned a wishlist, if anybody has an idea for Chameleon's future development and is unsure how to submit it, then one place is in the 'Feature Request' section on voodooprojects' forum.

Link to comment
Share on other sites

As usual, I am open and would be glad to consider with my team this kind of feature, please put it as a wishlist and we'll see what we can do :P

 

Done;)

 

For now, my objectives are to provide a stable trunk to our users, while also keeping our promises to implement important functionalities like ssdt loading.

Once we have a stable RC5, (and I need all of you for that first completely public and collaborative work :),

we'll start a new development branch to go even further !

Thanks to all of you for making chameleon better, you're feedback is crucial, and we are on the good path ...

 

Thanks to you for great work :D

Link to comment
Share on other sites

Good point for System type, I will make sure it is not forced by default.

For custom ECDT, I have to see with my team, sure it can be done and will be done but I had to troubleshoot our changes first to get a chance to have people happily testing this future version.

so +1 here too, we are on it.

Thanks waiting to be implemented.

 

How did it work for you before ?

Well this was never worked right... If DropSSDT was used(on some case must be even if SSDT data is added in DSDT) I have to spam my DSDT with all SSDT data, this is wrong b/c we should do it as apple does, they have depending on how sata controller is set(ahci for OS X, ide for the rest) 2 DSDT versions: first with just 1 SATA in DSDT (DSDT + SSDT-X aka SataAhci) and second with SATA and SSAT in DSDT( DSDT + SSDT-x1 and SSDT-x2 aka SataPrim and SataSec) plus rest of SSDT-xyz tables :D

Link to comment
Share on other sites

Well this was never worked right... If DropSSDT was used(on some case must be even if SSDT data is added in DSDT) I have to spam my DSDT with all SSDT data, this is wrong b/c we should do it as apple does, they have depending on how sata controller is set(ahci for OS X, ide for the rest) 2 DSDT versions: first with just 1 SATA in DSDT (DSDT + SSDT-X aka SataAhci) and second with SATA and SSAT in DSDT( DSDT + SSDT-x1 and SSDT-x2 aka SataPrim and SataSec) plus rest of SSDT-xyz tables :D

Ok I made the changes for SystemType, that will only be written if ovveriden.

 

Now lets try to understand and specify a minimum scenario for SSDT loading in the case that DropSST=y:

 

First we must care about if a forced DSDT full path has been specified (was the pb smith had in his first tries) and take it for the DSDT path as is.

Then we have the case where no DSDT path was set where we run our usual DSDT search algorithm to find this file.

In the latter case, the file has to be named DSDT.aml and be in one of the / /Extra or bt(0,0)/Extra directory.

 

Now a first idea to implement correctly the acpi tables loading would be:

 

Whatever the path was hardcoded in the DSDT option or was automatically found, we extract the path part of the DSDT file that has been successfully found and we run a loop to enumerate all other acpi files in the same directory.

Now for each acpi file found, we should compare the name with an existing acpi table found in the system that we would normally load and replace this usual injection by the content of the file.

 

In order to make it as simple as possible while making all options possible,

we can use some of these acpi files (empty ones) to simulate an 'ignore' acpi table functionality.

It means that once the user decides to provide its own acpi tables, if he wants a complete control ; he must provide all these files.

 

if he wants to 'keep' the default injection or ignore one acpi table that is not automatically injected, then he must not provide the corresponding file.

 

If he wants to ignore an acpi file that is currently automatically injected, then he must provide an empty acpi table file so that the booter understand no override will be done with this acpi table.

 

What do you think about that folks ?

 

EDIT: another probably simpler variant would be:

Once DropDSDT=y is set, no other acpi table than dsdt is loaded, then it is the responsabilty of user to provide any other acpi table and no empty acpi tables would be needed.

It also means than more files with the same content as the one currently injected would be necessary, but it should be simpler to implement and easier for the end user to use ...

Link to comment
Share on other sites

IMHO the scenario is simple:

If DSDT.aml is found or other ACPI table(even is not found on default list) except SSDT.aml and/or SSDT-0.aml to SSDT-x.aml it will be replaced/added automate.

If DropSSDT=Yes is added in com.apple.boot.plis then all original SSDT.aml and/or SSDT-0.aml to SSDT-x.aml will be dropped and booter will look on default paths for replacement.

If DropOEMx=Yes is added where OEMx is the OEM table name that one will be dropped and booter will not look for replacement.

 

What do you think?

Link to comment
Share on other sites

IMHO the scenario is simple:

If DSDT.aml is found or other ACPI table(even is not found on default list) except SSDT.aml and/or SSDT-0.aml to SSDT-x.aml it will be replaced/added automate.

If DropSSDT=Yes is added in com.apple.boot.plis then all original SSDT.aml and/or SSDT-0.aml to SSDT-x.aml will be dropped and booter will look on default paths for replacement.

If DropOEMx=Yes is added where OEMx is the OEM table name that one will be dropped and booter will not look for replacement.

 

What do you think?

mmmm, looks like my second option except two things:

- you say look on all the defaults path for replacement, I would say _only_ on the PATH where the DSDT file was found, this path could be as mentioned earlier an absolute overriden path or an autodetected path.-

- (Again) a new option in the bootConfig file for preventing your OEMx table to load.

 

Thanks for the feedback!

Link to comment
Share on other sites

rek, about the oem tebles to load, boot think, the last version, load the slic table (soft mode). This, for which that don't would modded the bios can be a good thing for activation of seven and/or vista;)

 

For the future, rek, listen me, a possible to create a version for windows like boot think?

 

Hi;)

Link to comment
Share on other sites

rek, i have try the last prerc from svn but don't work for me. The verbose don't start, the pc is block before, after load the kext in extra. Repeat, don't start the verbose. Can you control?

 

This is the error:

 

Memory allocation error Addr= bx0 Size= 0xb5e00000 File device inject.c Line=246

 

System halted!

Link to comment
Share on other sites

rek, i have try the last prerc from svn but don't work for me. The verbose don't start, the pc is block before, after load the kext in extra. Repeat, don't start the verbose. Can you control?

 

This is the error:

God, you've been probably using it while I was making the last mods as requested !

 

Anyway, I fixed the SystemType (forced value even when no override is set) and also display cosmetics,

now you see the UUID nicely formatted whatever its source is, the format will be the same.

This is important to see and compare what other booter versions detect at boot time, so no doubt is possible now.

 

@diebuche, I didn't experiment that on my Win7 and it seems to be an old problem, we'll check that later.

 

@quien : I did not know that platformUUID can't be used with recent versions of chameleon,

but I would not regret it personally. It might have to do with the settings of UUID 'whatever happens',

maybe platformuuid.kext expect that a value was not set before...

 

Now here's the pre5:

(Sorry smith for the trouble I thought you would wait for a pre as it never last long before you can gauge the progress :))

 

RC5pre5.tar.gz

 

Thanks,

 

Concerning the specification, I'll let other folks here and in my team having the time to express their view,

Meanwhile if you have any other feedback (other than new features for RC5!)

I'll take them all :unsure:

Link to comment
Share on other sites

Works;)

 

 

Should now aim for greater speed possible for the verbose, aim for the fewest possible of cursor spin, act on apple intel cpu..., waiting for dsmos and the previous cause of shutdown to give the boot a sprint finish unparalleled

 

I believe that it is now necessary to optimize the most of this part :unsure:

Link to comment
Share on other sites

Wow busy busy. I look forward to the new acpi patch.

 

I added/enabled quickkeys for bootargs to behave a bit more mac like. I have some other options/variations for my own needs but have diffed a standard for anyone interested.

 

Bootargs keyboard shortcut

* F8 abort quiet mode, and display the menu.

* alt+f old safe mode

* shift+f ignore boot configuration file

* alt+s single user mode

* alt+v verbose

* alt+x 32 bit mode

 

 

 

quickargs.patch.zip --> update

Link to comment
Share on other sites

Wow busy busy. I look forward to the new acpi patch.

 

I added/enabled quickkeys for bootargs to behave a bit more mac like. I have some other options/variations for my own needs but have diffed a standard for anyone interested.

 

Bootargs keyboard shortcut

* F8 abort quiet mode, and display the menu.

* alt+f old safe mode

* shift+f ignore boot configuration file

* alt+s single user mode

* alt+v verbose

* alt+x 32 bit mode

 

 

 

quickargs.patch.zip

 

Great;)

Link to comment
Share on other sites

Wow busy busy. I look forward to the new acpi patch.

 

I added/enabled quickkeys for bootargs to behave a bit more mac like. I have some other options/variations for my own needs but have diffed a standard for anyone interested.

 

Bootargs keyboard shortcut

* F8 abort quiet mode, and display the menu.

* alt+f old safe mode

* shift+f ignore boot configuration file

* alt+s single user mode

* alt+v verbose

* alt+x 32 bit mode

 

 

 

quickargs.patch.zip

Looks great 18seven, is there any incompatibility / side effect that you might know about previous key shortcuts in chameleon ?

The acpi table feature needs more agreement on the specification,

once we know exactly what we want and how it should work, programming is not that a big deal, though it will be longer than a bug fix to do, it shouldn't be too long.

 

Thanks

Link to comment
Share on other sites

No conflicts that I can see. I was slightly concerned about the possibility modifier keys throwing safemode since I cannot spec them individually (would love to have the meta key escape quiet mode and just shift safeboot). However, I am certain it could be cleaned up/improved. I just added a debug key...

Link to comment
Share on other sites

No conflicts that I can see. I was slightly concerned about the possibility modifier keys throwing safemode since I cannot spec them individually (would love to have the meta key escape quiet mode and just shift safeboot). However, I am certain it could be cleaned up/improved. I just added a debug key...

 

Please send your new patch then and I will try to integrate it asap,

(I'm also helping my other chameleonApplications team at the same time,

while keeping an eye on users reports, so well yes I'm a bit busy :thumbsup_anim:)

 

but if you really want to help more,

please add sections looking like:

 

#define QUICK_KEYS_ENABLED 1

#if QUICK_KEYS_ENABLED

#else

#endif

 

So that anyone that would not like it could disable it easily without side effects.

 

Thanks for your work

Link to comment
Share on other sites

Anyway, I fixed the SystemType (forced value even when no override is set) and also display cosmetics,

Nope, still change mine, I got 01 with it ^_^

Booter is on usb stick booting my internal lappie hdd.

Something is still wrong...

Attached is original FACP extracted from windows, as you can see Sstem-type is (02) Mobile. acpi_facp.bin.zip

Link to comment
Share on other sites

 Share

×
×
  • Create New...