Sorry, but I'm not sure that I understand your patch. Here some info how I see it:
There are two issues with this vbios patching:
1. unlock vbios - you must unlock vbios shadow area (0xC.0000 - 0xD.0000) for writing in order to be able to change vbios in RAM
2. patch vbios in RAM - change some existing mode with data suitable for your monitor
I do not know much about point 2, but know something about point 1. Original code was not able to unlock vbios on newer systems. I have added patch to enable that for Sandy and Ivy Bridge procs. First gen. Core procs are a bit more complicated.
We found some solution when doing the same thing in Clover boot manager. We found out that desktop Core i3,5,7 XXX procs (I call them 1st gen) contain System Address Decoder (SAS) PCI device (part of proc), available at Bus ff or 7f or 3f, Device 0, Func 1, and that SAS device contains PAM registers at 40h-46h for unlocking legacy shadowed areas.
Code for that is attached, but warning: this code is not tested. Compiles fine, but I do not have such proc and can not test if it works from Chameleon.
Includes also solution for LGA-2011 socket procs, where SAS is at Bus X, Dev 12, Func 6 and PAm regs are also at 40h-46h. And X for bus can be found by reading Bus 0, Dev 5, Func 0, reg CPUBUSNO at 108h, bits 15:8.
Regarding mobile Core 1st gen procs - I could not find in their documentation how to access those PAM registers for unlocking vbios, so this thing is unknown.
Anyway, this attached Resolution module should print some debug which can be accessed later from OSX with bdmesg. Like this:
Resolution:
Parse Edid: descriptor block 0 is timing descriptor Best mode: 1920x1080x32
core proc 2nd, 3rd gen identified
Detected chipset/proc id (DRAM controller): 01008086
VBios: ATI, BT_ATI_2
vbios unlocked
Patching: BT_ATI_2 Parse Edid: descriptor block 0 is timing descriptor
Edid detailed timing descriptor found: 1920x1080
vbios mode 0 patched!
It will test if vbios is really unlocked by trying to change it and will print "vbios unlocked" if this part is done.
That's the best I can do. I can help with this point 1. unlock vbios, but can not help with point 2.