Preview of AppleIntelFramebufferAzul.sh v3.0

AppleIntelFramebufferAzul.sh v2.5 is a nice script, but it is not enough for me. I want something that is a lot easier to use. Without having to use nano – or whatever you are using – to edit the frame buffer data in the script. That is not working for me, so here is a preview of the stuff that I have been working on, and by the time v3.0 is ready… then you will have this to work with:

AppleFramebufferAzul_v22

What would you like to do next?

[ 1 ] Change the platform-id
[ 2 ] Change the amount of BIOS-allocated memory
[ 3 ] Change the amount of frame buffer memory
[ 4 ] Change the amount of cursor bytes
[ 5 ] Change the amount of VRAM
[ 6 ] Change the backlight frequency
[ 7 ] Change backlight max
[ 8 ] Change port layout/configuration
[ 9 ] Launch nano with frame buffer data
[ G ] Generate Base64 data
[ P ] Patch AppleIntelFramebufferAzul.kext
[ U ] Undo frame buffer changes

Please choose the action to perform (Exit/1-9/G/P/U) ?

[ 1 ] – The supported platformIDs are:
——————————

[ 1] : 0x0c060000 – Haswell SDV Mobile GT1
[ 2] : 0x0c160000 – Haswell SDV Mobile GT2
[ 3] : 0x0c260000 – Haswell SDV Mobile GT3
[ 4] : 0x04060000 – Haswell Mobile GT1
[ 5] : 0x04160000 – Haswell Mobile GT2
[ 6] : 0x04260000 – Haswell Mobile GT3
[ 7] : 0x0d260000 – Haswell CRW Mobile GT3
[ 8] : 0x0a160000 – Haswell ULT Mobile GT2
[ 9] : 0x0a260000 – Haswell ULT Mobile GT3
[10] : 0x0a260005 – Haswell ULT Mobile GT3
[11] : 0x0a260006 – Haswell ULT Mobile GT3
[12] : 0x0a2e0008 – Haswell ULT E GT3
[13] : 0x0a16000c – Haswell ULT Mobile GT2
[14] : 0x0d260007 – Haswell CRW Mobile GT3
[15] : 0x0d220003 – Haswell CRW GT3
[16] : 0x0a2e000a – Haswell ULT E GT3
[17] : 0x0a26000a – Haswell ULT Mobile GT3
[18] : 0x0a2e000d – Haswell ULT E GT3
[19] : 0x0a26000d – Haswell ULT Mobile GT3
[20] : 0x04120004 – Haswell GT2
[21] : 0x0412000b – Haswell GT2
[22] : 0x0d260009 – Haswell CRW Mobile GT3

Please choose a target platform-id (Exit/1-22) ?

[ 2 ] – Change BIOS-allocated memory to:

[ ] 32 MB (current value)
[ 2 ] 64 MB
[ 3 ] 96 MB
[ 4 ] 128 MB
[ 5 ] 160 MB
[ 6 ] 192 MB
[ 7 ] 224 MB
[ 8 ] 256 MB
[ 9 ] 288 MB
[ 10 ] 320 MB
[ 11 ] 352 MB
[ 12 ] 384 MB
[ 13 ] 416 MB
[ 14 ] 448 MB
[ 15 ] 480 MB
[ 16 ] 512 MB

Please choose the amount of memory (Cancel/1-16) ?

[ 3 ] – Change framebuffer memory to:

[ ] 16 MB (current)
[ 2 ] 19 MB
[ 3 ] 24 MB
[ 4 ] 34 MB

Please choose the amount of memory you want (Cancel/1-4) ?

[ 4 ] – Change cursor bytes to:

[ ] 0 MB (current)
[ 2 ] 5 MB
[ 3 ] 6 MB
[ 4 ] 9 MB
[ 5 ] 15 MB
[ 6 ] 21 MB
[ 7 ] 34 MB

Please choose the amount of cursor bytes you want (Cancel/1-7) ?

[ 5 ] – Change Video Random Access Memory to:

[ 1 ] 256 MB
[ 2 ] 384 MB
[ 3 ] 768 MB
[ 4 ] 512 MB
[ ] 1024 MB (current)
[ 6 ] 1536 MB

Please choose the amount of memory you want (Cancel/1-6) ?

[ 8 ] – Change port layout/configuration

[ 1 ] Change the frame buffer index
[ 2 ] Change the port nibble
[ 3 ] Change the pipe attribute
[ 4 ] Change the connector type
[ 5 ] Change the connector attribute

Please choose the action to perform (Back/1-5) ?

[ 8/1 ] – Change connector type for port 5 to:

[ 1 ] VGA connector
[ 2 ] LVDS connector
[ 3 ] eDP connector
[ 4 ] DVI connector
[ ] DisplayPort connector (current)
[ 6 ] HDMI connector

Please choose a connector type (Cancel/1-6) ?

[ G ] – Base64 representation of framebuffer Azul-0x0d220003.dat:
——————————————————————————–
MDMwMDIyMGQwMDAzMDMwMzAwMDAwMDAyMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDQwOTkxNDAwMDA5OTE0
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMTA1MTIwMDAwMDQwMDAwODcwMDAwMDAwMjA0MTQwMDAwMDQwMDAw
ODcwMDAwMDAwMzA2MTAwMDAwMDQwMDAwMTEwMDAwMDBmZjAwMDEwMDAxMDAwMDAwNDAwMDAwMDAwMjAw
MDAwMDAxMDEwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA=

Now it is time to write the sub-menu code to let us change the backlight frequency (6) and the backlight max (7), but pretty much everything is working. What I want with this preview is to ask for your help. Did I miss something? Is something wrong? If yes… now is the time to let me know.

Thanks for your help 😉

14 thoughts on “Preview of AppleIntelFramebufferAzul.sh v3.0

    • And it would be nice if you can Describe things like “cursor bytes” little bit more… And how to find right values. I know you have a script “IntelInfo” but i don’t understand atm how to find the right Values that we need to set 🙂

      But great work Pike 🙂
      Like Always 🙂

  1. not sure it quite relates, but does the intel reg dumper echo any values set by the frame buffer here? and if so, is it possible to get a reg dump from linux and use these values inn the script? i’m speaking if capri but it applies to azul as well i guess.

    • Most of the registers are programmed by the AppleIntelFramebuffer[Azul/Capri].kext but four you definitely should check, in both Linux and OS X are:

      BLC_PWM_CPU_CTL2………..: 0x80000000 (enable 1, pipe A)
      BLC_PWM_CPU_CTL…………: 0x00001312 (cycle 4882)
      BLC_PWM_PCH_CTL1………..: 0xa0000000 (enable 1, override 0, inverted polarity 1)
      BLC_PWM_PCH_CTL2………..: 0x13121312 (freq 4882, cycle 4882)

      Just to be sure that eye strain is a non issue.

      • you win, i don’t get the eye strain reference :\

        both the same values on the logs i have from linux and OS X. i copied and pasted from the terminal and logs. the linux one doesn’t have the bracketed text though.

  2. Hi Pike, I agree with Rama. It’ll be nice to have a detailed explanation of what these values mean. I have tried to patch my framebuffer for my Haswell i7 4510U but every time I try something the system then becomes unbeatable. As a average hack user, this is obviously due to a lack of understanding exactly what I’m doing. I have tried to read all the posts that you have made on the AppleIntelFramebufferAzul.kext since the commencement of your blog and one thing clear is that most of the posts are for those who already know what they are doing and just need the last piece to the puzzle. It is obviously time consuming for you to try and explain every single detail as the time can be better spent improving the script. Perhaps some of the frequenters to this blog can help in explaining how to correctly edit the framebuffer.

    Many thanks and keep up the good work.

  3. piker, is it possible to achieve the AirPplay mirroring using your patch, but not connect a display on HD4600? (using discrete graphics only)?

    On Mavericks + Z87 boards it was possible using a IGPlatformID = 04120004
    but on Z97 boards (Mavericks or Yosemite) it won’t works as it should. the mirror icon is enable, but it won’t play at all. Apple TV shows a freeze image or worst…

    I found a issue with a MEI (require frame buffer edits as everybody knows) but still won’t play as it should. it seems it require a little more.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s