Jump to content
AndrewK2685

Mac OS X on Toshiba Satellite A300 laptop PSAGCE with ATI Mobility Radeon HD 3650 (DevID 0x9591)

1 post in this topic

Recommended Posts

Hello everyone!

 

OK I know this is a relatively ancient system, but here it is:

I was having some free time in the summer and thought of giving my old Toshiba Satellite A300 (PSAGCE) a second try

in installing Mac OS X El Capitan with Clover. Generally, I think that this is a good hackintosh-candidate laptop, apart from

its Mobility Radeon HD 3650 GPU (DevID 0x9591).

 

So, I tried to follow-up guides from bcc9, mucha, slice and vlada on ATI kext patching to enable the internal LVDS display

and see what will happen. I started with the two scripts decoding the VGA Bios. My results were the following:

 

Radeon_bios_decode:

 

ATOM BIOS Rom:

            SubsystemVendorID: 0x1179 SubsystemID: 0xff1c

            IOBaseAddress: 0x5000

            Filename: 28109C.bin 

            BIOS Bootup Message:

Tosh_IEC_Potomac_M86_DDR2 M86 GDDR2_16Mx16 128bit 256MB 600e/500m          

 

PCI ID: 1002:9591

Connector at index 0

            Type [@offset 45056]: VGA (1)

            Encoder [@offset 45060]: INTERNAL_KLDSCP_DAC1 (0x15)

            i2cid [@offset 45146]: 0x90, OSX senseid: 0x1

Connector at index 1

            Type [@offset 45066]: LVDS (7)

            Encoder [@offset 45070]: INTERNAL_KLDSCP_LVTMA (0x1f)

            i2cid [@offset 45169]: 0x14, OSX senseid: 0x5

Connector at index 2

            Type [@offset 45076]: HDMI-A (11)

            Encoder [@offset 45080]: INTERNAL_UNIPHY (0x1e)

            i2cid [@offset 45192]: 0x91, OSX senseid: 0x2

Connector at index 3

            Type [@offset 45086]: 9 pin DIN (9)

            Encoder [@offset 45090]: INTERNAL_KLDSCP_DAC2 (0x16)

 

Redsock_bios_decode:

 

28109C.bin  :

 

Tosh_IEC_Potomac_M86_DDR2 M86 GDDR2_16Mx16 128bit 256MB 600e/500m          

 

Subsystem Vendor ID: 1179

       Subsystem ID: ff1c

Object Header Structure Size: 266

Connector Object Table Offset: 46

Router Object Table Offset: 0

Encoder Object Table Offset: ce

Display Path Table Offset: 10

Connector Object Id [5] which is [VGA]

            encoder obj id [0x15] which is [iNTERNAL_KLDSCP_DAC1 (osx txmit 0x00 enc 0x10?)] linkb: false

Connector Object Id [14] which is [LVDS]

            encoder obj id [0x1f] which is [iNTERNAL_KLDSCP_LVTMA] linkb: false

Connector Object Id [12] which is [HDMI_TYPE_A]

            encoder obj id [0x1e] which is [iNTERNAL_UNIPHY (osx txmit 0x10 [duallink 0x0] enc 0x0)] linkb: false

Connector Object Id [15] which is [DIN]

            encoder obj id [0x16] which is [iNTERNAL_KLDSCP_DAC2] linkb: false

 

As you can see, the Bios decode scripts point out this structure:

 

CRTC1>DIG2>UNIPHY_KLDSKP_LVTMA>LVDS (SenseID 05 ???)

CRTC2>DAC>DAC A>VGA (SenseID 01)

CRTC2>DIG1>UNIPHY_A>HDMI (SenseID 02)

CRTC2>DAC>DAC B>S-Video

 

So, I tried to create a custom framebuffer string for each output:

 

VGA

10000000100000000001000000100101

 

LVDS

02000000400000000901000010010205

 

HDMI

00080000000200000001000010000302

 

I injected the LVDS and VGA strings for AMD3800Controller.kext in Clover. This resulted in black screen in LVDS

(nothing was showing up in system info as well), but the VGA was successfully detected and enabled. [FIRST WIN! :D ]

 

I tested it with the single monitor setting in BIOS (in previous tests with Chameleon, the change in this setting gave me

different results, I don’t know why, but they were weird - e.g. LVDS was showing up as a second VGA monitor with the

same characteristics as the VGA monitor connected when both outputs were enabled in BIOS! Apparently, Clover uses

only single monitor setting - even when LVDS+VGA setting is selected in BIOS, when Clover shows up, one monitor is off).

 

What was strange, was the i2cid value of LVDS (0x14). Doing some search for it, I found a thread from 0xdeadbeef

pointing that Radeon_Bios_Decode script may return wrong values about SenseID.

http://www.insanelymac.com/forum/topic/255199-editing-personalities-in-older-ati-framebuffers-iago-friends/

 

Also, an old thread from YannickD about this laptop on Leopard suggests that this laptop has a LVDS which behaves like

a DVI in a way (I didn’t actually understand that to be honest). So, I decided to do some trial and error tests on SenseID

and ATY-ControlFlag values of the framebuffer (I was considering Transmitter and Encoder values as well, but on HD3000

these are hardwired, so it wouldn’t make much difference). Also tried to change some settings in Clover

(Rename my GPU from OVGA to IGPU in DSDT and play with Load VBIOS and Inject EDID options in Clover).

http://www.insanelymac.com/forum/topic/149872-ati-moblity-radeon-hd-3650-on-ideneb-13/

 

After some (not too many to be honest! :D) tests (mainly brute-force attack on framebuffer values and change of options)

I found out a setting which successfully worked on LVDS!!! My internal monitor is successfully detected and I can have

the basic 2D functions for it (resolution & colour change)! [sECOND WIN! :w00t: ]

 

What did work was the default SenseID of the framebuffer (11 instead of 05) AND the ATY-ControlFlag for DVI

(1402 instead of 4000 - others for DVI might work as well!) PLUS the options in Clover (Rename in IGPU for DSDT,

Load VBIOS and Inject EDID, which are usual Clover settings for laptops). When tried both LVDS and VGA, both

monitors were correctly detected and working! The only strange thing was that the GPU was detected as an

ATI Radeon HD4330M instead of Mobility HD3650.

 

Now the bad things…

I can’t enable QE/CI acceleration, even though the DevID 9591 is included by default in ATIRadeonX2000.kext.

Apparently, the kext is loaded, but returns zero values. This is the second computer that I cannot enable because

of the damn ATIRadeonX2000.kext :wallbash: - YannickD says that after Snow Leopard Apple removed some

detection routines with fixed values. Has anyone here found any clues about ATI Acceleration kexts and their values?

 

I tested different controllers as well to see if I can get the acceleration. Results were the same for AMD2400Controller.kext,

AMD2600Controller.kext and AMD3800Controller.kext, but on AMD4600Controller.kext the system crashed and rebooted

before showing anything.

 

Finally, I tested the HDMI string. The result was that the monitor was successfully detected and its properties were correctly

showed up in Mac OS X, but the monitor was showing nothing (black screen). Since HD3650 can drive up to two different

outputs, maybe a special switch must be enabled for the output, or might be a transmitter-encoder issue (don’t know - didn’t

have the time to search more for it, as I was focused on the internal monitor, but it seems something minor).

This was for the Video only - I have not tested the HDMI Audio

 

To sum up

The framebuffer working was:

 

VGA (successfully detected and enabled - no QE/CI)

10000000100000000001000000100101

 

LVDS (successfully detected and enabled - DIFFERENT VALUES FROM SCRIPTS IN BOLD - no QE/CI)

02000000140200000901000010010211

 

HDMI (successfully detected but showed nothing in monitor - no QE/CI)

00080000000200000001000010000302

 

S-Video - not tested

 

Load VBIOS, Inject EDID and Rename from OVGA to IGPU in DSDT were essential for the monitors to work.

 

I tested these settings across different versions of Mac OS X as well, and got the same results.

I can try them on Sierra as well, but I think results will be the same.

 

Bottomline

I think there is a need to do further search about framebuffer string values and their meaning.

 - IF they do not function for you DO NOT BLINDLY TRUST THEM - ESPECIALLY IF YOU GET BLACK SCREEN!!!!!!!!!

 

Also, it would be very good if someone could tear down the acceleration kexts (especially the ATIRadeonX2000.kext)

Anyone??? Please???

 

Thant’s all folks and sorry for my long thread!

Share this post


Link to post
Share on other sites
Advertisement

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By IPN96
      Ciao mi scuso per il disturbo, io vorrei abilitare la mia scheda grafica Nvidia geforce gtx 950m per avere delle prestazioni migliori quando lavoro su after effect, la scheda Intel non è ha abbastanza memoria non so se sia possibile fare qualcosa, spero possiate aiutarmi, vi lascio delle info. 
      Sistema operativo Mac osx sierra 10.12.6 
      Modello laptop : Asus N551jx-cn043t
      Il resto è nella screen 
       
       

    • By Dakdot
      Hello everyone! Last week I received my Broadcom BCM94352Z (model DW1560) from Newegg, installed it into my Dell Inspiron 5558, and I can't get it to work in macOS 10.13.5. I thought that I might have received a knockoff, so I tried it in Linux Mint, and it recognized it as a BCM4352 and worked perfectly! I've tried almost everything I could find online and nothing is working (see below). Any help would be greatly appreciated!
       
      Methods I Tried:
      FakePCIID, FakePCIID_Broadcom_WiFi, BrcmPatchRAM2, BrcmFirmwareRepo
      I've also used AirportBrcmFixup and BrcmFirmwareData when injecting with Clover
      Laptop Specifications (Closest to MacBookAir 17,1, using SMBIOS for MacBook Pro 12,1)
      Intel Core i5-5250U
      Intel HD 6000 Graphics
      8GB RAM
      1 TB Hard Drive
      ALC3234 (apparently equivalent to ALC255 according to the net)
      Originally Intel Wireless, now BCM94352Z
    • By nysander
      Hello Guys,
       
      I am looking for tips on how can I patch my FrameBuffer to be able to use mobile ig-platform-id for HD 4600 Intel Graphics. ATM the only way to have recognized full resolution and memory (1,5GB) is to use 0x0d220008 desktop Haswell profile.
       
      Problem is that on this profile backlight patches do not work. I get blank screen during boot instead of apple logo.
       
      As RehabMan suggested in my debug topic, this is possible because of the fact that my laptop uses eDP to connect LCD, and that eDP is not fully supported. But as far as I've found T440 laptop's LCD is also connected via eDP and they work with backlight. 
       
      How can I debug / patch such situation? 
       
      I am new to hackintosh knowledge but want to make my laptop work so any suggestions and help is much appreciated. 
    • By GiorgioHeins
      Hello everybody, it’s been a long long time since my last post here on this forum, I’m having a lot of issues trying to activate my graphic card, the system recognizes the graphic card but there’s not full acceleration, clearly shows up its name as Intel graphics HD 3000 with only 4 MB of video ram.
       
      I would like to know how I could fix this problem or a least any suggestion about it. The reason I came to this site one more time is because I have no clue how to edit or patch a DSDt.aml file, I have clover bootloader and still  (seems to be easy but not for me LOL) so I don’t want to ruin the system once again.
       
      My configuration is
      OS macOS High Sierra 10.13
      SAMSUNG series 3 NP300E5C-A0US
      INTEL CORE i3 - 2370M 2.4 GHz
      INTEL GRAPHICS HD 3000 
      WiFi ATHEROS AR5B95
      MEMORY 6 GB DDR3
       
       
      Wifi works *** Sound Works ***Ethernet Works*** 
       
      Battery indicators and trackpad gestures are not working yet.
       
      Thank you guys in advance, I’ll keep myself reading and searching for any kind of solution for my laptop..
       
      See attachment
       
      bootlog.txt
      CLOVER.zip
      DSDT.aml



    • By M3G4DR01D
      Hello everyone, I have an Asus gl502vmk (i7 kabylake + GTX 1060 6 gb) laptop and I tried all the patches/kexts to get the brightness with fn keys/touchpad (I2C ELAN 1200 works with VooDoo I2C kext v1.0 but no gestures/preference pane)/Keyboard backlight to work but no success so far, any help would be appreciated, thanks in advance.
      [EDIT] (10/04/2018)
      Battery status now works, thanks to @RehabMan turned out to be incorrect SMBIOS (used iMac instead of Mbp) lol, but it drains crazy fast (~1.5 - 2 hours while on standby (all apps quited!), on windows 10 it lasts 4 - 5 hours, and on linux it lasts 6 ~ 7 hours!)
      And with VoodooI2C v2.0.1 + VoodooI2CHID kext and patched DSDT, the touchpad is now detected in the sys pref pane but still no input.
      Sound works with VoodooHDA v2.9.1, but the only issue is that the jack sense isn't working (the output device doesn't auto switch to headphone when connected)
       
      [EDIT 2] (11/04/2018)
      The system brightness now works thanks to @onejay09 but I have no brightness slider, and there are 4 extra brightness levels (brightness stops increasing after 12 levels)  and the brightness keys are not mapped correctly, plus the brightness decreases when I plug in the ac adapter, then increases if I unplug it???, the brightness level isn't also saved after reboot.
      battery still drains crazy fast (~1.5 - 2 hours, even with brightness at 50%, so apparently it is a power management issue).
      and I also have shutdowns while in sleep mode (I tried darkwake=10 and darkwake-0 and darkwake=no)
       
      P.S. I have uploaded my new report files, thanks!
       
      Latest report files (11/04/2018): https://www95.zippyshare.com/v/AMOpP0AY/file.html
×