Contribute
Register

[Guide] Alternative to the minStolenSize patch with 32mb DVMT-prealloc

I spent my full day to searching google about dvmt 32mb bois nothing find

only found this by firewolf / Austere-j for 64mb bois and 96 128 mb

<dict>

<key>Comment</key>

<string>Disable minStolenSize check for 10.14 Beta 1 (by FireWoilf/Austere.J)</string>

<key>Disabled</key>

<true/>

<key>Find</key>

<data>

dkZI/wW6SAg=

</data>

<key>MatchOS</key>

<string>10.14.x</string>

<key>Name</key>

<string>com.apple.driver.AppleIntelKBLGraphicsFramebuffer</string>

<key>Replace</key>

<data>

60ZI/wW6SAg=

</data>

</dict>
only you are making patch for 32mb limit bois
I request to you make this patch I couldn't change my dedicated video ram using guide for dvmt 64mb or 96 128

Disabling the minStolenSize check is different from patching for 32mb.
It will take some time, but someone will eventually reverse the new ig-platform-id handling code.
 
any solution for this situation

For Mojave (Beta1) Try:
Code:
Name: com.apple.driver.AppleIntelKBLGraphicsFramebuffer
Find: 00006002 890D2773 0800BE00 005001
Replace: 00003001 890D2773 0800BE00 009000
 

Attachments

  • DVMT 0x591B0000 32 MB (Mojave).png
    DVMT 0x591B0000 32 MB (Mojave).png
    591.5 KB · Views: 210
Last edited:
The next two 32-bit items are the framebuffer memory size and the cursor bytes size.

I wanted to post a short tutorial on using Intel FB-Patcher for patching DVMT based on your first post. But it appears the terminology you use doesn't correspond with the IntelFramebuffer.bt file I use for FB-Patcher (see the attached screenshot to see what I mean).

Do you know why that is?
 

Attachments

  • DVMT.png
    DVMT.png
    193.3 KB · Views: 236
Last edited:
I wanted to post a short tutorial on using Intel FB-Patcher for patching DVMT based on your first post. But it appears the terminology you use doesn't correspond with the IntelFramebuffer.bt file I use for FB-Patcher (see the attached screenshot to see what I mean).

Do you know why that is?

I did not use the IntelFramebuffer.bt file when I wrote this guide.
It probably didn't exist at the time...
 
I did not use the IntelFramebuffer.bt file when I wrote this guide.
It probably didn't exist at the time...

According to IntelFramebuffer.bt cursor memory is calculated as follows:
Code:
fStolenMemorySize (You call "Framebuffer")
fFramebufferMemorySize (You call "Cursor")
fUnifiedMemorySize (VRAM)
totalStolenMem = fStolenMemorySize * fFBMemoryCount + fFramebufferMemorySize + 0x100000 (1 MB)
totalCursorMem = fPipeCount * 0x80000 (32 KB)
overallMem = totalCursorMem + totalStolenMem + fPortCount * 0x1000 (1 KB)

So I'm wondering if you should change "Framebuffer" to "Stolen" and "Cursor" to "Framebuffer" in your guide? Either that or I'll just explain the discrepancy. Either way according to your guide DVMT-prealloc = fStolenMemorySize + fFramebufferMemorySize. Not sure if I need to add the 1 MB on the end to that? Do you think I should add this value to my app?
 
Last edited:
According to IntelFramebuffer.bt cursor memory is calculated as follows:
Code:
fStolenMemorySize (You call "Framebuffer")
fFramebufferMemorySize (You call "Cursor")
fUnifiedMemorySize (VRAM)
totalStolenMem = fStolenMemorySize * fFBMemoryCount + fFramebufferMemorySize + 0x100000 (1 MB)
totalCursorMem = fPipeCount * 0x80000 (32 KB)
overallMem = totalCursorMem + totalStolenMem + fPortCount * 0x1000 (1 KB)

So I'm wondering if you should change "Framebuffer" to "Stolen" and "Cursor" to "Framebuffer" in your guide? Either that or I'll just explain the discrepancy. Either way according to your guide DVMT-prealloc = fStolenMemorySize + fFramebufferMemorySize. Not sure if I need to add the 1 MB on the end to that? Do you think I should add this value to my app?

I'm not going to bother changing anything in this guide.
My terms came from blog posts by PikeRAlpha from a while back.
The guide works as written, so no reason to make any edits.

I did notice some time ago, that you could not use the full DVMT-prealloc for framebuffer+cursor sizes,... that you always needed to leave a little bit free as a fudge factor. Not sure if it is 1mb or something else.
 
I'm not going to bother changing anything in this guide.
My terms came from blog posts by PikeRAlpha from a while back.
The guide works as written, so no reason to make any edits.

I did notice some time ago, that you could not use the full DVMT-prealloc for framebuffer+cursor sizes,... that you always needed to leave a little bit free as a fudge factor. Not sure if it is 1mb or something else.

Okay, that makes sense. Yeah I wasn't sure if it was worth changing everything. I've made a post on my app thread to explain the differences.
 
any solution for this situation

For Mojave (Beta2) Try:
Code:
Name: com.apple.driver.AppleIntelKBLGraphicsFramebuffer
Find: 00006002 BA000050 01
Replace: 00003001 BA000090 00
 

Attachments

  • DVMT 0x591B0000 32 MB (Mojave Beta2).png
    DVMT 0x591B0000 32 MB (Mojave Beta2).png
    584.3 KB · Views: 125
For Mojave (Beta2) Try:
Code:
Name: com.apple.driver.AppleIntelKBLGraphicsFramebuffer
Find: 00006002 BA000050 01
Replace: 00003001 BA000090 00

ig-platform-id table being initialized by kext startup code, I guess...
 
ig-platform-id table being initialized by kext startup code, I guess...

Yeah the data is no longer in nice structs so it's going to be more difficult to support. Unfortunately I don't think I will be able to update FB-Patcher to support Mojave.
 

Attachments

  • fbmojave.png
    fbmojave.png
    804 KB · Views: 145
Back
Top