Matthew82 Posted December 14, 2016 Share Posted December 14, 2016 Thank You...I will try today. Can you check did I understand You correct Link to original and mod bios https://www.dropbox.com/sh/5fd30qe3gta8ikt/AAA-ba4ln8Q-9mIxik6A0HJoa?dl=0 Link to comment Share on other sites More sharing options...
okrasit Posted December 14, 2016 Share Posted December 14, 2016 Thank You...I will try today. Can you check did I understand You correct Link to original and mod bios https://www.dropbox.com/sh/5fd30qe3gta8ikt/AAA-ba4ln8Q-9mIxik6A0HJoa?dl=0 Yes! Use atiwinflash to write that to the card's flash ic. Link to comment Share on other sites More sharing options...
Matthew82 Posted December 14, 2016 Share Posted December 14, 2016 Working great Thank You one more time 1 Link to comment Share on other sites More sharing options...
Tusskan Posted December 14, 2016 Share Posted December 14, 2016 For example: https://www.techpowerup.com/vgabios/152284/asus-r9290x-4096-131206 It's pci-id is 67b0:1002 At offset 0x230: 00000220 43 10 6C 04 2C 02 1C A0 C2 A0 A0 00 50 43 49 52 C.l.,.......PCIR 00000230 02 10 B0 67 00 00 18 00 00 00 00 03 80 00 29 0F ...g..........). 00000240 00 00 00 00 41 4D 44 20 41 54 4F 4D 42 49 4F 53 ....AMD ATOMBIOS replace B0 67 with something that doesn't match e.g. B5 67 And the EFI blob at offset 0x10020 00010000 55 AA 71 00 F1 0E 00 00 0B 00 64 86 01 00 00 00 U.q.......d..... 00010010 00 00 00 00 00 00 58 00 1C 00 00 00 50 43 49 52 ......X.....PCIR 00010020 02 10 B0 67 00 00 18 00 00 00 00 03 71 00 00 00 ...g........q... Same thing B0 67 -> B5 67 Flash it to the card and you'll lose boot screen but it'll work with Sierra. which screen output i'll lose, mac boot or the UEFI, Ami going to be able to select which system to boot to from F12 list? Link to comment Share on other sites More sharing options...
okrasit Posted December 14, 2016 Share Posted December 14, 2016 which screen output i'll lose, mac boot or the UEFI, Ami going to be able to select which system to boot to from F12 list? You'll have black screen until the macOS driver loads. Link to comment Share on other sites More sharing options...
okrasit Posted December 15, 2016 Share Posted December 15, 2016 SLgCAAAAAQAAAEiJQ1THQ3wIAAAA SLgEAAAAAQAAAEiJQ1THQ3wgAAAA D0LIiYuAAAAARIizmQAAAESIcyA= kJCQiYuAAAAARIizmQAAAESIcyA= 6EmF/v++SAEAAEyJ9w== 6HMCAQC+SAEAAEyJ9w== In hex: 48 B8 02 00 00 00 01 00 00 00 48 89 43 54 C7 43 7C 08 00 00 00 48 B8 04 00 00 00 01 00 00 00 48 89 43 54 C7 43 7C 20 00 00 00 0F 42 C8 89 8B 80 00 00 00 44 88 B3 99 00 00 00 44 88 73 20 90 90 90 89 8B 80 00 00 00 44 88 B3 99 00 00 00 44 88 73 20 E8 49 85 FE FF BE 48 01 00 00 4C 89 F7 E8 73 02 01 00 BE 48 01 00 00 4C 89 F7 Here are shorter patches that hopefully survive updates! 4 Link to comment Share on other sites More sharing options...
cdrhoek Posted December 15, 2016 Share Posted December 15, 2016 Are you patching the AMDRadeonX4100 directly, or are you using the patch kext function in Clover? I'm hoping this will work on a FuryX also. Link to comment Share on other sites More sharing options...
okrasit Posted December 15, 2016 Share Posted December 15, 2016 Are you patching the AMDRadeonX4100 directly, or are you using the patch kext function in Clover? I'm hoping this will work on a FuryX also. I'm patching the kext directly, it should work with FuryX as it's exactly the same config as nano. Link to comment Share on other sites More sharing options...
Brumbaer Posted December 15, 2016 Author Share Posted December 15, 2016 Tried Clover didn't work, had to patch the kext. Link to comment Share on other sites More sharing options...
okrasit Posted December 15, 2016 Share Posted December 15, 2016 Tried Clover didn't work, had to patch the kext. Maybe the kext is loaded after root mount. Link to comment Share on other sites More sharing options...
cdrhoek Posted December 15, 2016 Share Posted December 15, 2016 Great work. I patched AMDRadeonX4100 with a hex editor. All 64 compute units are now enabled on my FuryX. GeekBench and Luxmark scores have almost doubled. Link to comment Share on other sites More sharing options...
okrasit Posted December 15, 2016 Share Posted December 15, 2016 Next step would be reversing the OpenGL driver. It seems that there are limitations set in! The patches survived the first update -> works with 10.12.3 pb! Link to comment Share on other sites More sharing options...
Fl0r!an Posted December 16, 2016 Share Posted December 16, 2016 Great work! I've adapted your patch for Polaris 10 GPUs, details and benchmarks are here: Of course credits belong to you for figuring this out, changing a few more bytes wasn't difficult when you know where to look. 3 Link to comment Share on other sites More sharing options...
okrasit Posted December 16, 2016 Share Posted December 16, 2016 Great work! I've adapted your patch for Polaris 10 GPUs, details and benchmarks are here: https://www.tonymacx86.com/threads/enable-all-cores-r9-fury-cards.209892/#post-1393445 Of course credits belong to you for figuring this out, changing a few more bytes wasn't difficult when you know where to look. Also, remember to enable PP_DisablePowerContainment in the controller kext (edit the Info.plist), it should be the same for 9500! You'll get 10-30% increase in performance! 1 Link to comment Share on other sites More sharing options...
Fl0r!an Posted December 16, 2016 Share Posted December 16, 2016 Next step would be reversing the OpenGL driver. It seems that there are limitations set in! Do you have any evidence for this? Just had a quick look, but I didn't find anything device specific except the assignment of the device name (e.g. "Baffin Unknown Prototype"). This looks purely cosmetic to me though, it's just a switch/case statement based on the device ID for setting up some strings. Link to comment Share on other sites More sharing options...
okrasit Posted December 16, 2016 Share Posted December 16, 2016 Do you have any evidence for this? Just had a quick look, but I didn't find anything device specific except the assignment of the device name (e.g. "Baffin Unknown Prototype"). This looks purely cosmetic to me though, it's just a switch/case statement based on the device ID for setting up some strings. Yes, that's exactly the point. The OpenGL API reports the same limits for all AMD GPUs, which isn't how it's supposed to be. Link to comment Share on other sites More sharing options...
MattsCreative Posted December 16, 2016 Share Posted December 16, 2016 Yes, that's exactly the point. The OpenGL API reports the same limits for all AMD GPUs, which isn't how it's supposed to be. have any other tips to make a gpu perform better my r9 290x is a bit behind http://imgur.com/a/RoA4x Link to comment Share on other sites More sharing options...
RemB Posted December 17, 2016 Share Posted December 17, 2016 For example: https://www.techpowerup.com/vgabios/152284/asus-r9290x-4096-131206 It's pci-id is 67b0:1002 At offset 0x230: 00000220 43 10 6C 04 2C 02 1C A0 C2 A0 A0 00 50 43 49 52 C.l.,.......PCIR 00000230 02 10 B0 67 00 00 18 00 00 00 00 03 80 00 29 0F ...g..........). 00000240 00 00 00 00 41 4D 44 20 41 54 4F 4D 42 49 4F 53 ....AMD ATOMBIOS replace B0 67 with something that doesn't match e.g. B5 67 And the EFI blob at offset 0x10020 00010000 55 AA 71 00 F1 0E 00 00 0B 00 64 86 01 00 00 00 U.q.......d..... 00010010 00 00 00 00 00 00 58 00 1C 00 00 00 50 43 49 52 ......X.....PCIR 00010020 02 10 B0 67 00 00 18 00 00 00 00 03 71 00 00 00 ...g........q... Same thing B0 67 -> B5 67 Flash it to the card and you'll lose boot screen but it'll work with Sierra. What do these two bytes (B0 67) mean? Why we change them? Link to comment Share on other sites More sharing options...
Tusskan Posted December 17, 2016 Share Posted December 17, 2016 What do these two bytes (B0 67) mean? Why we change them? those are the device ids in hex, changing them make the gpu's EFI in uninitialized state ( not only just EFI you may to consult gpgpu programmer to confirm this) , thus when the driver on osx loads it initializes the gpu... as in real macs. also this will make your 290X works 100% with sleep and wake. the only cons of this method, you get no screen output, also you won't be able to go to windows or linux if you're on a multiboot installations, a work around is to flip the vBIOS switch to the other rom so you can get screen output... beaware: doing this method of BIOS patching may bricks your card or get it out of warranty (to any gpu else not just r9s). Link to comment Share on other sites More sharing options...
RemB Posted December 17, 2016 Share Posted December 17, 2016 those are the device ids in hex, changing them make the gpu's EFI in uninitialized state ( not only just EFI you may to consult gpgpu programmer to confirm this) , thus when the driver on osx loads it initializes the gpu... as in real macs. also this will make your 290X works 100% with sleep and wake. the only cons of this method, you get no screen output, also you won't be able to go to windows or linux if you're on a multiboot installations, a work around is to flip the vBIOS switch to the other rom so you can get screen output... beaware: doing this method of BIOS patching may bricks your card or get it out of warranty (to any gpu else not just r9s). Interestingly, on real MAC too there is no boot screen until GPU initialization? Link to comment Share on other sites More sharing options...
Tusskan Posted December 17, 2016 Share Posted December 17, 2016 Interestingly, on real MAC too there is no boot screen until GPU initialization? Yeah only if the gpu card/model isn't shipped in real macs and isn't flashed with custom rom. you get no image to boot. that means if the R9 290X for example is flashed with Apple special vBIOS it'll boot showing output, means, you can select from boot menu which drive you want to boot to... Link to comment Share on other sites More sharing options...
RemB Posted December 17, 2016 Share Posted December 17, 2016 Yeah only if the gpu card/model isn't shipped in real macs and isn't flashed with custom rom. you get no image to boot. that means if the R9 290X for example is flashed with Apple special vBIOS it'll boot showing output, means, you can select from boot menu which drive you want to boot to... Whether there is for R9 290X special Apple vBios? Link to comment Share on other sites More sharing options...
Tusskan Posted December 17, 2016 Share Posted December 17, 2016 Whether there is for R9 290X special Apple vBios? unfortunatly there is no, only 5,6,7 series that have this rom and it is also not needed in hackintosh, in fact all these models doesn't have this issue ( IGPU enabled as primary). Link to comment Share on other sites More sharing options...
okrasit Posted December 17, 2016 Share Posted December 17, 2016 Whether there is for R9 290X special Apple vBios? I used to run my 290 (40cu) with 390X memory controller init & tighter timings! I think it was clocked at 1130/1500 or something like that.... It did Luxmark @~18k! Link to comment Share on other sites More sharing options...
MattsCreative Posted December 17, 2016 Share Posted December 17, 2016 I used to run my 290 (40cu) with 390X memory controller init & tighter timings! I think it was clocked at 1130/1500 or something like that.... It did Luxmark @~18k! 290x* you mean send me that bios please Link to comment Share on other sites More sharing options...
Recommended Posts