Jump to content

Inyección DSDT de geforce 9500GT (Solucionado)

- - - - -

  • Please log in to reply
46 replies to this topic

#21
Derty

Derty

    InsanelyMacaholic

  • Donators
  • 3,165 posts
  • Gender:Male
corregiste esto que dijo juanerson

Device (PEGP)
{
Name (_ADR, 0x00060000) si debe ser 2 o 3... y no seis
Device (GFX0)

mira esto.

http://www.insanelym...howtopic=215982

editado...juanerson.

#22
juanerson

juanerson

    InsanelyMac Legend

  • Local Moderators
  • 1,409 posts
  • Gender:Male
  • Location:Tru, Venezuela
En realidad no quise decir que debe ser 3, eso fue "en teoría" porque él necesita encontrar en su ioreg su propia dirección física (path real) que se corresponda con su puerto PCI-E. En ese caso debe reiniciar el S.O. sin ninguna inyección en la dsdt, tal como viene de fabrica y sólo usando el flag GraphicsEnabler para levantarla, luego en IORegistryExplorer tiene que buscar y anotar la dirección o ruta donde va a colocar su código hack. Por ejemplo, en mi ioreg la gráfica "integrada" es GFX0 (a la izquierda de la captura), ves el @2? igualmente el @20000 a la derecha? esa es la ruta o dirección, significa que es la ADR 0x00020000 valga la redundancia. Es de esa forma que debes proceder para inyectar la tuya, es decir en tu propia-exclusiva ruta de inyección. En fin, no se trata de un simple copy/paste de código desde una guía o ejemplo, se trata de colocar el código preciso en el lugar correcto para que funcione. No soy experto en esto de inyectar gráficas de sobremesa, pero sé que siempre ha sido así, y también sirve de la misma forma para cualquier otro dispositivo (device). Saludos.
Attached File  Captura_de_pantalla_2011_10_20_a_la_s__15.50.04.png   116.83KB   72 downloads

#23
pgsubuntu

pgsubuntu

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 228 posts
  • Gender:Male
  • Location:Argentina
Pongo algunos datos: (dsdt sin inyeccion de video + graphicsenabler=yes)

IOACPIPlane:/_SB/PCI0@180000/PEG1@10000/GFX0@0

dsdt con inyeccion de video:

Device (PEG1)
						{
							Name (_ADR, 0x00010000)
							Method (_PRW, 0, NotSerialized)
							{
								Return (Package (0x02)
								{
									0x0B,
									0x04
								})
							}
							Device (GFX0)
							{
								Name (_ADR, Zero)
								Method (_DSM, 4, NotSerialized)
								{


arriba del Device (PEG1) deberia estar el Device PCI0? porque no lo veo en mi dsdt:


Method (RATA, 1, NotSerialized)				{					CreateByteField (Arg0, Zero, CMDN)					Multiply (CMDN, 0x38, Local0)					CreateField (Arg0, 0x08, Local0, RETB)					Store (RETB, Debug)					Return (RETB)				}			}						Device (PEG1)						{							Name (_ADR, 0x00010000)							Method (_PRW, 0, NotSerialized)							{								Return (Package (0x02)								{									0x0B,									0x04								})							}							Device (GFX0)							{								Name (_ADR, Zero)								Method (_DSM, 4, NotSerialized)								{									Store (Package (0x1C)  									{


pero si esta mas arriba del dsdt... sera que ese es el error? mala inyeccion?


Alias (RSII, RSIG)		Alias (RSII, RSU1)		Alias (RSII, RSU2)		Alias (RSII, RSI1)		Alias (RSII, RSI2)		Alias (RSII, RSSA)		Alias (RSII, RSMA)		Device (PCI0)		{			Name (_HID, EisaId ("PNP0A03"))			Name (_ADR, 0x00180000)			Method (^BN00, 0, NotSerialized)			{				Return (Zero)			}			Method (_BBN, 0, NotSerialized)			{				Return (BN00 ())			}			Name (_UID, Zero)			Method (_PRT, 0, NotSerialized)			{				If (PICM)				{					Return (AR00)				}				Return (PR00)			}			Method (NPTS, 1, NotSerialized)			{			}			Method (NWAK, 1, NotSerialized)			{			}			Device (SBRG)			{				Name (_ADR, 0x00010000)				Method (SPTS, 1, NotSerialized



PD: Dejo una captura del dsdt editor para ver como esta inyectado el video:

Attached File  Captura_de_pantalla_2011_10_21_a_las_18.30.38.png   149.53KB   26 downloads

PD2: Ademas de desactivar la grafica desde chameleon, es necesario eliminar algunos de estos kext?

Attached File  Captura_de_pantalla_2011_10_21_a_las_18.42.41.png   19.73KB   21 downloads

Attached File  Captura_de_pantalla_2011_10_21_a_las_18.42.57.png   15.2KB   13 downloads

#24
juanerson

juanerson

    InsanelyMac Legend

  • Local Moderators
  • 1,409 posts
  • Gender:Male
  • Location:Tru, Venezuela

Pongo algunos datos: (dsdt sin inyeccion de video + graphicsenabler=yes)

IOACPIPlane:/_SB/PCI0@180000/PEG1@10000/GFX0@0

Bien Hermano te felicito por el avance, pero vamos por partes, ya que eso de arriba me llama la atención, porque proviene únicamente de la inyección de chameleon, que normalmente es acertada, precisa y confiable. Y suponiendo que en efecto es donde están todos los datos que necesitas (a la derecha) desde el ioreg. Entonces, partiendo de dicha información, en la dsdt de fábrica debes tener lo siguiente:

PCI0 con ruta ADR=0x000180000. La madre de todos los dispositivos PCI de la placa, es decir la raíz ACPIPCI.
PEG1 con ruta 10000. Este el es puerto PCI-E donde está conectada físicamente la tarjeta gráfica.
GFX0 con ruta 0 (o Zero). Esta es la ruta donde vas a inyectar el código hack: Method (_DSM, 4, NotSerialized) blablabla.

Ahora te pregunto yo a ti: Qué más necesitas? Si viendo el material que nos has subido, pareciera que tienes todo lo requerido a tu disposición. Vamos, que ya estás en la recta final. Y no sé si entiendo bien a que te refieres con "mala inyección"? Si tu mismo estás colocando el código, debes saber si esta correcto o no, eso es importante. Además Derty te ha proporcionado el suyo propio con datos e información de referencia suficientemente clara, de sólo sustituir unos datos.

P.D. De todas maneras, por favor sube tu ioreg en un .zip (sólo con el flag de chameleon) para echarle un vistazo.

#25
pgsubuntu

pgsubuntu

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 228 posts
  • Gender:Male
  • Location:Argentina
Aqui va mi ioregistry:

Attached File  IOREGISTRY.zip   344.04KB   8 downloads

Me explico:

El tema es que ya intente probar le DSDT con el código inyectado (desactivando la gráfica de chameleon) y no tuve aceleración de video. Por eso mis dudas con respecto al código. De todas formas como dices tu juanerson voy avanzando de a poco ya que es la primera vez que toco la edición del dsdt.

Otro dato no menos importante (creo) es que mi motherboard dispone de una placa integrada (Geforce 8200). El mother ASUS primero da la opción a elegir cual de los dos "leer" primero. Desde ya que es la Geforce 9500 la que esta seteada, pero puede la placa integrada generar conflicto a la hora de cargar la inyección DSDT? ...

#26
juanerson

juanerson

    InsanelyMac Legend

  • Local Moderators
  • 1,409 posts
  • Gender:Male
  • Location:Tru, Venezuela
Attached File  Captura_de_pantalla_2011_10_21_a_las_19.31.08.png   187.14KB   36 downloads
Ok, por favor analiza la captura de tu ioreg, porque la historia es muy diferente y en realidad así esta la cosa:

1) La 9500 GT esta siendo perfectamente reconocida e inyectada por el bootloader. Eso ya lo sabías.

2) En la dsdt de fábrica tienes para tu trabajo de inyección, la siguiente Device:

MXR0@10 = ADR 0x00100000. Este es el puerto PCI-E. Dentro de esta device deberás crear la que será la gráfica dedicada porque no existe. En ese sentido, por favor lee detenidamente la siguiente consideración:

display@0 = ADR Zero. Según tu ioreg esta será tu ruta para la inyección. Como te darás cuenta NO EXISTE la Device XYZW (ninguna pues). Por lo tanto con seguridad deberás crearla con un nombre acorde por ejemplo PEG0 o PEG2... NO le asignes el nombre de PEG1 porque esa si existe! pero debe corresponder bien sea a la gráfica integrada en la placa, o a una red ethernet integrada. Si observas en el ioreg la verás un poco más abajo a la izquierda cerca de los USB.

3) Para agregar todo el código en primer lugar tendrás que respetar ese @0 o Zero, porque es la dirección física de tu gráfica dedicada a nivel de dsdt. Entonces como orientación la idea general es que te quede algo similar a esto:
[codebox] Device (MXR0) // puerto PCI-E, aquí comienza
{
Name (_ADR, 0x00100000) // ruta @10 del puerto
...
... aquí va todo el código original que trae MXR0, y justo antes de su última llave de
... cierre creas la nueva device:

Device (PEG0) // comienzo de la gráfica dedicada
{
Name (_ADR, Zero) // ruta o dirección real-path @0 de la gráfica dedicada
Method (_DSM, 4, NotSerialized) // comienzo del hack
{
Store (Package ()
{
...
... aquí va todo el código hack, que al final termina con:

}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
} // fin del hack
} // fin de la gráfica dedicada
} // esta es la última llave de MXR0, aquí termina el dispositivo puerto PCI-E[/codebox]
Espero que te sirva de ayuda. Saludos.

#27
pgsubuntu

pgsubuntu

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 228 posts
  • Gender:Male
  • Location:Argentina
Estoy leyendo detenidamente tu respuesta, pero te aviso que el Device (PEG1) no estaba con el "dsdt de fabrica" o el que no tiene inyeccion grafica... eso se agrego luego de aplicar el parche de la geforce 9600gt con dsdt editor.

Seria mejor volver al dsdt limpio sin inyeccion y de ahi comenzar de nuevo con las pruebas?

#28
juanerson

juanerson

    InsanelyMac Legend

  • Local Moderators
  • 1,409 posts
  • Gender:Male
  • Location:Tru, Venezuela

Estoy leyendo detenidamente tu respuesta, pero te aviso que el Device (PEG1) no estaba con el "dsdt de fabrica" o el que no tiene inyeccion grafica... eso se agrego luego de aplicar el parche de la geforce 9600gt con dsdt editor.

Seria mejor volver al dsdt limpio sin inyeccion y de ahi comenzar de nuevo con las pruebas?

Correcto. Específicamente para la inyección de la gráfica es mejor comenzar desde cero, así el ioreg será más confiable.

#29
pgsubuntu

pgsubuntu

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 228 posts
  • Gender:Male
  • Location:Argentina
Dejo una captura del dsdt sin inyección: (el ioreg anterior estaba con la inyeccion grafica, por eso aparecia PEG1, abajo adjunto el que corresponde)

Queria saber esta bien el lugar donde sera inyectado el video.

Attached File  PASOAPASO.png   153.45KB   18 downloads

ioreg:

Attached File  IOREG.zip   360.11KB   2 downloads

PD: debo agregar el Device (GFX0) tambien?


PD2: Hice la prueba de inyección con Device (GFX0).

Device (PEG0) 
{
Name (_ADR, 0x00010000)
Device (GFX0)
{
Name (_ADR, Zero)
Name (_SUN, One)
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x1C)
{
"AAPL,slot-name",
Buffer (0x0D)
{
"PCI-E Slot-1"
},
"@0,compatible",
Buffer (0x0B)
{
"NVDA,NVMac"
},
"@0,device_type",
Buffer (0x08)
{
"display"
},
"@0,name",
Buffer (0x0F)
{
"NVDA,Display-A"
},
"@1,compatible",
Buffer (0x0B)
{
"NVDA,NVMac"
},
"@1,device_type",
Buffer (0x08)
{
"display"
},
"@1,name",
Buffer (0x0F)
{
"NVDA,Display-B"
},
"NVCAP",
Buffer (0x18)
{
/* 0000 */ 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00,
/* 0008 */ 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A,
/* 0010 */ 0x00, 0x00, 0x00, 0x00
},
"NVPM",
Buffer (0x20)
{
/* 0000 */ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0018 */ 0x00, 0x00, 0x00, 0x00
},
"VRAM,totalsize",
Buffer (0x04)
{
0x00, 0x00, 0x00, 0x20
},
"device_type",
Buffer (0x0D)
{
"NVDA,GeForce"
},
"model",
Buffer (0x10)
{
"GeForce 9500 GT"
},
"rom-revision",
Buffer (0x0F)
{
"62.94.36.00.00"
},
"reg",
Buffer (0x78)
{
/* 0000 */ 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x02, 0x02,
/* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0020 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
/* 0028 */ 0x14, 0x00, 0x02, 0x42, 0x00, 0x00, 0x00, 0x00,
/* 0030 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0038 */ 0x00, 0x00, 0x00, 0x10, 0x1C, 0x00, 0x02, 0x02,
/* 0040 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0048 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02,
/* 0050 */ 0x24, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00,
/* 0058 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0060 */ 0x80, 0x00, 0x00, 0x00, 0x30, 0x00, 0x02, 0x02,
/* 0068 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0070 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}
}
}
Device (BR11)

_linenums:0'>Device (MXR0) { Name (_ADR, 0x00100000) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x11, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR10) } Return (PR10) } <strong class='bbc'>Device (PEG0) { Name (_ADR, 0x00010000) Device (GFX0) { Name (_ADR, Zero) Name (_SUN, One) Method (_DSM, 4, NotSerialized) { Store (Package (0x1C) { "AAPL,slot-name", Buffer (0x0D) { "PCI-E Slot-1" }, "@0,compatible", Buffer (0x0B) { "NVDA,NVMac" }, "@0,device_type", Buffer (0x08) { "display" }, "@0,name", Buffer (0x0F) { "NVDA,Display-A" }, "@1,compatible", Buffer (0x0B) { "NVDA,NVMac" }, "@1,device_type", Buffer (0x08) { "display" }, "@1,name", Buffer (0x0F) { "NVDA,Display-B" }, "NVCAP", Buffer (0x18) { /* 0000 */ 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, /* 0008 */ 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, /* 0010 */ 0x00, 0x00, 0x00, 0x00 }, "NVPM", Buffer (0x20) { /* 0000 */ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0018 */ 0x00, 0x00, 0x00, 0x00 }, "VRAM,totalsize", Buffer (0x04) { 0x00, 0x00, 0x00, 0x20 }, "device_type", Buffer (0x0D) { "NVDA,GeForce" }, "model", Buffer (0x10) { "GeForce 9500 GT" }, "rom-revision", Buffer (0x0F) { "62.94.36.00.00" }, "reg", Buffer (0x78) { /* 0000 */ 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x02, 0x02, /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0020 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, /* 0028 */ 0x14, 0x00, 0x02, 0x42, 0x00, 0x00, 0x00, 0x00, /* 0030 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0038 */ 0x00, 0x00, 0x00, 0x10, 0x1C, 0x00, 0x02, 0x02, /* 0040 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0048 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, /* 0050 */ 0x24, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, /* 0058 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0060 */ 0x80, 0x00, 0x00, 0x00, 0x30, 0x00, 0x02, 0x02, /* 0068 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0070 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00 } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } } }</strong> Device (BR11)


con el siguiente error de compilacion:

Intel ACPI Component ArchitectureASL Optimizing Compiler version 20091214 [Dec 16 2009]Copyright © 2000 - 2009 Intel CorporationSupports ACPI Specification Revision 4.0/Users/pgsubuntu/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl 10778:     If (SS1)Error    4096 -                                          syntax error, unexpected PARSEOP_IF ^ /Users/pgsubuntu/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl 10819:             \_SB.PCI0.SBRG.SIOS (Arg0)Error    4064 -                                                                                 Object does not exist ^  (\_SB.PCI0.SBRG.SIOS)/Users/pgsubuntu/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl 10821:             \_SB.PCI0.SBRG.SPTS (Arg0)Error    4064 -                                                                                 Object does not exist ^  (\_SB.PCI0.SBRG.SPTS)/Users/pgsubuntu/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl 10826:         \_SB.PCI0.SBRG.SIOW (Arg0)Error    4064 -                                                                             Object does not exist ^  (\_SB.PCI0.SBRG.SIOW)/Users/pgsubuntu/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl 10828:         \_SB.PCI0.SBRG.SWAK (Arg0)Error    4064 -                                                                             Object does not exist ^  (\_SB.PCI0.SBRG.SWAK)ASL Input:  /Users/pgsubuntu/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl - 10862 lines, 411085 bytes, 5119 keywordsCompilation complete. 5 Errors, 0 Warnings, 0 Remarks, 0 Optimizations



PD3:
Probado sin Device (GFX0)

Sin errores de compilacion, pero sin aceleracion de video:

Intel ACPI Component Architecture
ASL Optimizing Compiler version 20091214 [Dec 16 2009]
Copyright (C) 2000 - 2009 Intel Corporation
Supports ACPI Specification Revision 4.0

ASL Input:  /Users/pgsubuntu/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl - 11890 lines, 411968 bytes, 5116 keywords
AML Output: /Users/pgsubuntu/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/./dsdt.aml - 44043 bytes, 1470 named objects, 3646 executable opcodes

Compilation complete. 0 Errors, 0 Warnings, 0 Remarks, 91 Optimizations


El código: (lo que esta en rojo fue quitado)


Device (PEG0) 
{
Name (_ADR, 0x00010000)
Device (GFX0)
{
Name (_ADR, Zero)
Name (_SUN, One)

Method (_DSM, 4, NotSerialized)
{
Store (Package (0x1C)
{
"AAPL,slot-name",
Buffer (0x0D)
{
"PCI-E Slot-1"
},
"@0,compatible",
Buffer (0x0B)
{
"NVDA,NVMac"
},
"@0,device_type",
Buffer (0x08)
{
"display"
},
"@0,name",
Buffer (0x0F)
{
"NVDA,Display-A"
},
"@1,compatible",
Buffer (0x0B)
{
"NVDA,NVMac"
},
"@1,device_type",
Buffer (0x08)
{
"display"
},
"@1,name",
Buffer (0x0F)
{
"NVDA,Display-B"
},
"NVCAP",
Buffer (0x18)
{
/* 0000 */ 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00,
/* 0008 */ 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A,
/* 0010 */ 0x00, 0x00, 0x00, 0x00
},
"NVPM",
Buffer (0x20)
{
/* 0000 */ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0018 */ 0x00, 0x00, 0x00, 0x00
},
"VRAM,totalsize",
Buffer (0x04)
{
0x00, 0x00, 0x00, 0x20
},
"device_type",
Buffer (0x0D)
{
"NVDA,GeForce"
},
"model",
Buffer (0x10)
{
"GeForce 9500 GT"
},
"rom-revision",
Buffer (0x0F)
{
"62.94.36.00.00"
},
"reg",
Buffer (0x78)
{
/* 0000 */ 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x02, 0x02,
/* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0020 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
/* 0028 */ 0x14, 0x00, 0x02, 0x42, 0x00, 0x00, 0x00, 0x00,
/* 0030 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0038 */ 0x00, 0x00, 0x00, 0x10, 0x1C, 0x00, 0x02, 0x02,
/* 0040 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0048 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02,
/* 0050 */ 0x24, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00,
/* 0058 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0060 */ 0x80, 0x00, 0x00, 0x00, 0x30, 0x00, 0x02, 0x02,
/* 0068 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0070 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}
}
}
Device (BR11)

_linenums:0'>Device (MXR0) { Name (_ADR, 0x00100000) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x11, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR10) } Return (PR10) } <strong class='bbc'>Device (PEG0) { Name (_ADR, 0x00010000) Device (GFX0) { Name (_ADR, Zero) Name (_SUN, One) Method (_DSM, 4, NotSerialized) { Store (Package (0x1C) { "AAPL,slot-name", Buffer (0x0D) { "PCI-E Slot-1" }, "@0,compatible", Buffer (0x0B) { "NVDA,NVMac" }, "@0,device_type", Buffer (0x08) { "display" }, "@0,name", Buffer (0x0F) { "NVDA,Display-A" }, "@1,compatible", Buffer (0x0B) { "NVDA,NVMac" }, "@1,device_type", Buffer (0x08) { "display" }, "@1,name", Buffer (0x0F) { "NVDA,Display-B" }, "NVCAP", Buffer (0x18) { /* 0000 */ 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, /* 0008 */ 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, /* 0010 */ 0x00, 0x00, 0x00, 0x00 }, "NVPM", Buffer (0x20) { /* 0000 */ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0018 */ 0x00, 0x00, 0x00, 0x00 }, "VRAM,totalsize", Buffer (0x04) { 0x00, 0x00, 0x00, 0x20 }, "device_type", Buffer (0x0D) { "NVDA,GeForce" }, "model", Buffer (0x10) { "GeForce 9500 GT" }, "rom-revision", Buffer (0x0F) { "62.94.36.00.00" }, "reg", Buffer (0x78) { /* 0000 */ 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x02, 0x02, /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0020 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, /* 0028 */ 0x14, 0x00, 0x02, 0x42, 0x00, 0x00, 0x00, 0x00, /* 0030 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0038 */ 0x00, 0x00, 0x00, 0x10, 0x1C, 0x00, 0x02, 0x02, /* 0040 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0048 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, /* 0050 */ 0x24, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, /* 0058 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0060 */ 0x80, 0x00, 0x00, 0x00, 0x30, 0x00, 0x02, 0x02, /* 0068 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0070 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00 } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } } }</strong> Device (BR11)


#30
juanerson

juanerson

    InsanelyMac Legend

  • Local Moderators
  • 1,409 posts
  • Gender:Male
  • Location:Tru, Venezuela
Que enredo tienes! El código esta mal estructurado porque no entiendes la secuencia lógica: llave que abre - llave que debe ser cerrada. Por cierto, MXR0 = PEG0 Ambos son lo mismo, es decir el puerto PCI-E. Y debes usar GFX0 como la gráfica. Entonces por favor sólo copia y pega en tu dsdt tal cual, incluso puedes dejar los comentarios que le he hecho, así que reemplaza lo que tienes actualmente, pon exactamente esto:
Device (MXR0) /*puerto PCI-E, aquí comienza, se pueden renombrar todas las declaraciones a PEG0*/    {        Name (_ADR, 0x00100000) /*ruta @10 del puerto*/                Method (_PRW, 0, NotSerialized)                {                    Return (GPRW (0x11, 0x04))                }                Method (_PRT, 0, NotSerialized)                {                    If (PICM)                    {                        Return (AR10)                    }                    Return (PR10)                }        Device (GFX0) /*comienzo de la gráfica dedicada*/        {            Name (_ADR, Zero) /*ruta o dirección real-path @0 de la gráfica dedicada*/            Name (_SUN, One) /*con esto se mostrará en el perfil del sistema asociada al puerto 1*/            Method (_DSM, 4, NotSerialized) /*comienzo del codigohack*/            {               Store (Package (0x1C)                   {				                               "AAPL,slot-name", 				                                Buffer (0x0D) 				                                { 				                                "PCI-E Slot-1" 				                                }, 				                                "@0,compatible", 				                                Buffer (0x0B) 				                                { 				                                    "NVDA,NVMac" 				                                }, 				                                "@0,device_type", 				                                Buffer (0x08) 				                                { 				                                    "display" 				                                }, 				                                "@0,name", 				                                Buffer (0x0F) 				                                { 				                                    "NVDA,Display-A" 				                                }, 				                                "@1,compatible", 				                                Buffer (0x0B) 				                                { 				                                    "NVDA,NVMac" 				                                }, 				                                "@1,device_type", 				                                Buffer (0x08)				                                { 				                                    "display" 				                                }, 				                                "@1,name", 				                                Buffer (0x0F) 				                                { 				                                    "NVDA,Display-B" 				                                }, 				                                "NVCAP", 				                                Buffer (0x18) 				                                { 				                                    /* 0000 */    0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 				                                    /* 0008 */    0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 				                                    /* 0010 */    0x00, 0x00, 0x00, 0x00 				                                }, 				                                "NVPM", 				                                Buffer (0x20) 				                                { 				                                    /* 0000 */    0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 				                                    /* 0008 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 				                                    /* 0010 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 				                                    /* 0018 */    0x00, 0x00, 0x00, 0x00 				                                }, 				                                "VRAM,totalsize", 				                                Buffer (0x04) 				                                { 				                                    0x00, 0x00, 0x00, 0x20 				                                }, 				                                "device_type", 				                                Buffer (0x0D) 				                                { 				                                    "NVDA,GeForce" 				                                }, 				                                "model", 				                                Buffer (0x10) 				                                { 				                                    "GeForce 9500 GT" 				                                }, 				                                "rom-revision", 				                                Buffer (0x0F) 				                                { 				                                    "62.94.36.00.00"				                                }, 				                                "reg", 				                                Buffer (0x78) 				                                { 				                                    /* 0000 */    0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 				                                    /* 0008 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 				                                    /* 0010 */    0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x02, 0x02, 				                                    /* 0018 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 				                                    /* 0020 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 				                                    /* 0028 */    0x14, 0x00, 0x02, 0x42, 0x00, 0x00, 0x00, 0x00, 				                                    /* 0030 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 				                                    /* 0038 */    0x00, 0x00, 0x00, 0x10, 0x1C, 0x00, 0x02, 0x02, 				                                    /* 0040 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 				                                    /* 0048 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 				                                    /* 0050 */    0x24, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 				                                    /* 0058 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 				                                    /* 0060 */    0x80, 0x00, 0x00, 0x00, 0x30, 0x00, 0x02, 0x02, 				                                    /* 0068 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 				                                    /* 0070 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00 				                                }                   }, Local0)               DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))               Return (Local0)            } /*fin del codigohack*/        } /*fin de la gráfica dedicada*/    } /*esta es la última llave de MXR0 o PEG0, aquí termina el dispositivo puerto PCI-E*/            Device (BR11)/*blablabla*/
Con eso no te dará errores de compilación. Al menos NO por culpa de ese código, que cumple con la secuencia lógica.

NOTA FINAL-DATO: Si aún continuas sin aceleración gráfica con el código de arriba, trata de aplicar la sencilla últimamente famosa corrección de zoliky que resuelve incompatibilidades con Lion 10.7.2, la famosa Black Screen, y que básicamente cubre una deficiencia de chameleon con dicha actualización, ya que el fix precisamente consiste en IGUALAR lo que brindaba el flag de chameleon, en un pequeño detalle (tal vez bug del bootloader), que fue perfectamente funcional hasta la 10.7.1. En pocas palabras al parecer GraphicsEnabler=Yes necesita una renovación para soportar la 10.7.2.

Sé bien que no tienes Lion, pero la idea general es COMPARAR ambos ioreg: Uno usando GraphicsEnabler, en comparación con el otro que obtienes sólo desde la DSDT (inyección), y tomar nota de las DIFERENCIAS para corregirlas/cubrirlas. En ese sentido, el dato que encontró zoliky se aprecia claramente en el ioreg a la derecha donde dice "device_type", incorrectamente ahora aparece como "NVDA,GeForce", el cual deberá ser reemplazado en la DSDT por "NVDA,Parent", así lo venía inyectando chameleon hasta la 10.7.1. Debes tener claro que es un sólo valor que se hará el cambio. Estoy seguro que verás ese dato en el código de arriba, porque todo indica que esta erróneo. Tal vez funciona bien para algunos, tal vez muchos ni siquiera se han dado cuenta si funcionaba o no porque usan el flag simultáneamente, el cual rompe cualquier inyección. En fin, el problema es común con las gráficas Nvidia y se hizo evidente con la llegada de la 10.7.2 según el link que coloqué. Por cierto, allí también señalan que se puede corregir a través de EFI String, yo prefiero la vía DSDT, porque con la gráfica inyectada no dependo del bootloader, o dependo menos. Saludos.

#31
pgsubuntu

pgsubuntu

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 228 posts
  • Gender:Male
  • Location:Argentina
Voy a copiar el código tal cual, lo que si aviso que no estoy con Lion, sino con Snow 10.6.7.

---

PD: Copié el código tal cual lo escribiste, incluso luego cambie:

"device_type",
Buffer (0x0D)
{
"NVDA,GeForce"
}


por


"device_type",
Buffer (0x0C)
{
"NVDA,Parent"
}


Device (MXR0) /*puerto PCI-E, aquí comienza, se pueden renombrar todas las declaraciones a PEG0*/
{
Name (_ADR, 0x00100000) /*ruta @10 del puerto*/
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x11, 0x04))
}
Method (_PRT, 0, NotSerialized)
{
If (PICM)
{
Return (AR10)
}
Return (PR10)
}
Device (GFX0) /*comienzo de la gráfica dedicada*/
{
Name (_ADR, Zero) /*ruta o dirección real-path @0 de la gráfica dedicada*/
Name (_SUN, One) /*con esto se mostrará en el perfil del sistema asociada al puerto 1*/
Method (_DSM, 4, NotSerialized) /*comienzo del codigohack*/
{
Store (Package (0x1C)
{
"AAPL,slot-name",
Buffer (0x0D)
{
"PCI-E Slot-1"
},
"@0,compatible",
Buffer (0x0B)
{
"NVDA,NVMac"
},
"@0,device_type",
Buffer (0x08)
{
"display"
},
"@0,name",
Buffer (0x0F)
{
"NVDA,Display-A"
},
"@1,compatible",
Buffer (0x0B)
{
"NVDA,NVMac"
},
"@1,device_type",
Buffer (0x08)
{
"display"
},
"@1,name",
Buffer (0x0F)
{
"NVDA,Display-B"
},
"NVCAP",
Buffer (0x18)
{
/* 0000 */ 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00,
/* 0008 */ 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A,
/* 0010 */ 0x00, 0x00, 0x00, 0x00
},
"NVPM",
Buffer (0x20)
{
/* 0000 */ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0018 */ 0x00, 0x00, 0x00, 0x00
},
"VRAM,totalsize",
Buffer (0x04)
{
0x00, 0x00, 0x00, 0x20
},
"device_type",
Buffer (0x0C)
{
"NVDA,Parent"
},
"model",
Buffer (0x10)
{
"GeForce 9500 GT"
},
"rom-revision",
Buffer (0x0F)
{
"62.94.36.00.00"
},
"reg",
Buffer (0x78)
{
/* 0000 */ 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x02, 0x02,
/* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0020 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
/* 0028 */ 0x14, 0x00, 0x02, 0x42, 0x00, 0x00, 0x00, 0x00,
/* 0030 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0038 */ 0x00, 0x00, 0x00, 0x10, 0x1C, 0x00, 0x02, 0x02,
/* 0040 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0048 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02,
/* 0050 */ 0x24, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00,
/* 0058 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0060 */ 0x80, 0x00, 0x00, 0x00, 0x30, 0x00, 0x02, 0x02,
/* 0068 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0070 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
} /*fin del codigohack*/
} /*fin de la gráfica dedicada*/
} /*esta es la última llave de MXR0 o PEG0, aquí termina el dispositivo puerto PCI-E*/
Device (BR11)
{
Name (_ADR, 0x00110000)
Method (_PRW, 0, NotSerialized)
_linenums:0'>Return (Zero) } } } } } Device (MXR0) /*puerto PCI-E, aquí comienza, se pueden renombrar todas las declaraciones a PEG0*/ { Name (_ADR, 0x00100000) /*ruta @10 del puerto*/ Method (_PRW, 0, NotSerialized) { Return (GPRW (0x11, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR10) } Return (PR10) } Device (GFX0) /*comienzo de la gráfica dedicada*/ { Name (_ADR, Zero) /*ruta o dirección real-path @0 de la gráfica dedicada*/ Name (_SUN, One) /*con esto se mostrará en el perfil del sistema asociada al puerto 1*/ Method (_DSM, 4, NotSerialized) /*comienzo del codigohack*/ { Store (Package (0x1C) { "AAPL,slot-name", Buffer (0x0D) { "PCI-E Slot-1" }, "@0,compatible", Buffer (0x0B) { "NVDA,NVMac" }, "@0,device_type", Buffer (0x08) { "display" }, "@0,name", Buffer (0x0F) { "NVDA,Display-A" }, "@1,compatible", Buffer (0x0B) { "NVDA,NVMac" }, "@1,device_type", Buffer (0x08) { "display" }, "@1,name", Buffer (0x0F) { "NVDA,Display-B" }, "NVCAP", Buffer (0x18) { /* 0000 */ 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, /* 0008 */ 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, /* 0010 */ 0x00, 0x00, 0x00, 0x00 }, "NVPM", Buffer (0x20) { /* 0000 */ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0018 */ 0x00, 0x00, 0x00, 0x00 }, "VRAM,totalsize", Buffer (0x04) { 0x00, 0x00, 0x00, 0x20 }, "device_type", Buffer (0x0C) { "NVDA,Parent" }, "model", Buffer (0x10) { "GeForce 9500 GT" }, "rom-revision", Buffer (0x0F) { "62.94.36.00.00" }, "reg", Buffer (0x78) { /* 0000 */ 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x02, 0x02, /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0020 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, /* 0028 */ 0x14, 0x00, 0x02, 0x42, 0x00, 0x00, 0x00, 0x00, /* 0030 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0038 */ 0x00, 0x00, 0x00, 0x10, 0x1C, 0x00, 0x02, 0x02, /* 0040 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0048 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, /* 0050 */ 0x24, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, /* 0058 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0060 */ 0x80, 0x00, 0x00, 0x00, 0x30, 0x00, 0x02, 0x02, /* 0068 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0070 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00 } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } /*fin del codigohack*/ } /*fin de la gráfica dedicada*/ } /*esta es la última llave de MXR0 o PEG0, aquí termina el dispositivo puerto PCI-E*/ Device (BR11) { Name (_ADR, 0x00110000) Method (_PRW, 0, NotSerialized)



Y me devuelve este error:



Intel ACPI Component ArchitectureASL Optimizing Compiler version 20091214 [Dec 16 2009]Copyright © 2000 - 2009 Intel CorporationSupports ACPI Specification Revision 4.0/Users/pgsubuntu/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl 10856: [*** iASL: Read error on source code temp file /Users/pgsubuntu/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.src ***]<strong class='bbc'>Error    4096 -                                          syntax error, unexpected $end ^ </strong>ASL Input:  /Users/pgsubuntu/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl - 10857 lines, 411201 bytes, 5117 keywordsCompilation complete. <strong class='bbc'>1 Errors</strong>, 0 Warnings, 0 Remarks, 0 Optimizations



Cuando lo compilo estoy con la gráfica acelerada por chameleon, eso no afecta en nada la compilación no?

PD2:

Buscando info sober ese error encuentro:

The error would seem to suggest that you are missing a closing brace } somewhere in your file.

Or maybe it's a missing opening brace, or an extra unneeded close, since it's an unexpected end error.



El error parece indicar que se echa en falta una llave de cierre} en el archivo.

O tal vez es una llave de apertura que faltan, o un cierre innecesarios extra, ya que es un error inesperado final.



Voy a ver si puede detectar el error con mi total inexperiencia en dsdt... :D .

Cualquier cosa comento. Saludos.

#32
juanerson

juanerson

    InsanelyMac Legend

  • Local Moderators
  • 1,409 posts
  • Gender:Male
  • Location:Tru, Venezuela
La versión de tu archivo desamblador/ compilador "iasl" es demasiado vieja 20091214 [Dec 16 2009] y tiene bugs que han sido corregidos a medida que van saliendo nuevas revisiones. Necesitas actualizar el archivo IASL. Te coloco el link al Thread Específico donde se puede descargar dicho archivo, siempre lo están actualizando para Mac OS X cada vez que INTEL lo hace para windows.

No sabes cómo actualizarlo? Súbeme tu dsdt (guárdalo como .dsl) con todo el código listo para compilarlo en mi máquina.

EDITADO:
Para editar el archivo dsdt siempre he usado y soy adicto a la aplicación DSDTSE 1.4.3 (instalada desde el .pkg), pero voy sustituyendo el desamblador/ compilador por el más reciente disponible gracias a los aportes del foro de mitch_de.

Para hacer la ctualización del archivo "iasl", la aplicación DSDTSE debe estar cerrada. Luego, específicamente en las dos (2) rutas donde sustituyo el archivo son:

/Users/juanerson/Library/Application\ Support/EvOSoftware/DSDT (aquí va una copia del nuevo iasl).

/Applications/DSDTSE.app (mostrar contenido del paquete) /Contents/Resources (aquí va otra copia). Listo.. Ábrela.

NOTA FINAL: es casi seguro que con este nuevo "iasl" te de 1 o 2 errores nuevos que son típicos de malas sumas hexadecimales (Invalid combination of Length and Min/Max) que no es capaz de encontrar tu antiguo desamblador/ complilador en tu DSDT. En ese caso por favor súbe el dsdt.dsl para hacer esas correcciones.

Para efectos de aprendizaje, se necesita una calculadora hexadecimal, incluso las hay en formato de Widget. Mira este ejemplo del error. Y por experiencia propia te digo que la fórmula correcta a aplicar es:

(Range Maximum - Range Minimum) + 1 = new Length. Es importante respetar los paréntesis.

#33
pgsubuntu

pgsubuntu

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 228 posts
  • Gender:Male
  • Location:Argentina
Subo mi dsdt sin video que me da 0 errores, o advertencias y 91 optimizaciones.

Attached File  dsdt_sin_video_cero_errores_.zip   34.3KB   3 downloads

Y de paso también mi IOREG guardado sin inyección y con la aceleración via chameleon:

Attached File  IOREG.zip   360.11KB   3 downloads


Voy a probar el link que me pasaste para ver si puedo actualizar el "iasl".

Saludos.

Cualquier cosa comento.


PD: uso el mismo EVO DSDT 1.4.3 para compilar, a veces edito el dsl desde TextEdit pero para compilar lo hago con EVO DSDT.

Attached File  Captura_de_pantalla_2011_10_23_a_las_14.35.34.png   45.04KB   6 downloads


PD2:

En el link que me dejaste no esta el archivo "iasl" pero si una aplicación llamada "iaslme" que tal vez intuyo sea para crear ese archivo.

Attached File  Captura_de_pantalla_2011_10_23_a_las_14.54.47.png   22.6KB   6 downloads

#34
juanerson

juanerson

    InsanelyMac Legend

  • Local Moderators
  • 1,409 posts
  • Gender:Male
  • Location:Tru, Venezuela
Ok, Por favor prueba con el dsdt.aml que te compilé, ESTA LISTO PARA USAR. Debe funcionar eso espero, así que por favor cuéntame otra historia. Luego súbeme otro oireg para ver los resultados sólo a través de inyección por DSDT. También te adjunto el último archivo compilador "iasl" que tengo (AML Disassembler version 20110623-64 [Aug 28 2011]) para que actualices el tuyo.

Attached Files



#35
pgsubuntu

pgsubuntu

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 228 posts
  • Gender:Male
  • Location:Argentina
Si querías otra historia aquí va ;) :

Aceleración sin opción gráfica en chameleon por vía DSDT.

Attached File  Captura_de_pantalla_2011_10_23_a_las_16.28.40.png   287.71KB   37 downloads


Habrá sido tema del archivo iasl desactualizado?

O realizaste una modificación al dsl? (..en breve lo reviso.)


Aquí dejo una copia del IOREG via DSDT.

Attached File  IOREG_DSDT_VIDEO_OK.zip   344.05KB   6 downloads


Muchas gracias Juanerson y Derty por su gran ayuda para lograr la inyección de la gráfica.


PD: Luego trataré de reemplazar el archivo iasl del DSDT SE así queda actualizado para futuros retoques al dsdt, porque ya veo que el día de mañana, cuando tenga una maquina Intel y quiera usar Lion con esta placa (geforce 9500gt), lo necesitaré.

Saludos amigos.


PD: Para quien este interesado dejo el cogido de inyeccion corregido por @Juanerson:


La placa es una Geforce 9500 GT 512MB DDR2 marca Sentey fabricada en China.. (me sorprende que no esté en la pagina oficial de Sentey, ya que no es la misma)


Device (PEG1) /*puerto PCI-E, aqui comienza, juanerson renombro todas las declaraciones de MXR0 a PEG1*/            {                Name (_ADR, 0x00100000) /*ruta @10 del puerto*/                Method (_PRW, 0, NotSerialized)                {                    Return (GPRW (0x11, 0x04))                }                Method (_PRT, 0, NotSerialized)                {                    If (PICM)                    {                        Return (AR10)                    }                    Return (PR10)                }        Device (GFX0) /*comienzo de la grafica dedicada*/        {            Name (_ADR, Zero) /*ruta o direccion real-path @0 de la grafica dedicada*/            Name (_SUN, One) /*con esto se mostrara en el perfil del sistema asociada al puerto 1*/            Method (_DSM, 4, NotSerialized) /*comienzo del codigohack*/            {               Store (Package ()                   {				                               "AAPL,slot-name", 				                                Buffer (0x0D) 				                                { 				                                "PCI-E Slot-1" 				                                }, 				                                "@0,compatible", 				                                Buffer (0x0B) 				                                { 				                                    "NVDA,NVMac" 				                                }, 				                                "@0,device_type", 				                                Buffer (0x08) 				                                { 				                                    "display" 				                                }, 				                                "@0,name", 				                                Buffer (0x0F) 				                                { 				                                    "NVDA,Display-A" 				                                }, 				                                "@1,compatible", 				                                Buffer (0x0B) 				                                { 				                                    "NVDA,NVMac" 				                                }, 				                                "@1,device_type", 				                                Buffer (0x08)				                                { 				                                    "display" 				                                }, 				                                "@1,name", 				                                Buffer (0x0F) 				                                { 				                                    "NVDA,Display-B" 				                                },                             "device-id", /*he agregado este porque parece importante registrar - ver ioreg chameleon*/                            Buffer (0x04)                            {                                0x40, 0x06, 0x00, 0x00                            }, 				                                "device_type", 				                                Buffer (0x0C) 				                                { 				                                    "NVDA,Parent" 				                                }, 				                                "model", 				                                Buffer (0x10) 				                                { 				                                    "GeForce 9500 GT" 				                                }, 				                                "NVCAP", 				                                Buffer (0x18) 				                                { 				                                    /* 0000 */    0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 				                                    /* 0008 */    0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 				                                    /* 0010 */    0x00, 0x00, 0x00, 0x00 				                                }, /*				                                "NVPM", // lo he comentado porque este valor parece innecesario segun el ioreg con chameleon				                                Buffer (0x20) 				                                { 				                                    / 0000 /    0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 				                                    / 0008 /    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 				                                    / 0010 /    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 				                                    / 0018 /    0x00, 0x00, 0x00, 0x00 				                                }, */				                                "reg", 				                                Buffer (0x78) 				                                { 				                                    /* 0000 */    0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 				                                    /* 0008 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 				                                    /* 0010 */    0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x02, 0x02, 				                                    /* 0018 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 				                                    /* 0020 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 				                                    /* 0028 */    0x14, 0x00, 0x02, 0x42, 0x00, 0x00, 0x00, 0x00, 				                                    /* 0030 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 				                                    /* 0038 */    0x00, 0x00, 0x00, 0x10, 0x1C, 0x00, 0x02, 0x02, 				                                    /* 0040 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 				                                    /* 0048 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 				                                    /* 0050 */    0x24, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 				                                    /* 0058 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 				                                    /* 0060 */    0x80, 0x00, 0x00, 0x00, 0x30, 0x00, 0x02, 0x02, 				                                    /* 0068 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 				                                    /* 0070 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00 				                                },                             "revision-id",                             Buffer (0x04)                            {                                0xA1, 0x00, 0x00, 0x00                            }, 				                                "rom-revision", 				                                Buffer (0x0F) 				                                { 				                                    "62.94.36.00.00"				                                },                             "subsystem-id",                             Buffer (0x04)                            {                                0x10, 0x00, 0x00, 0x00                            },                             "vendor-id",                             Buffer (0x04)                            {                                0xDE, 0x10, 0x00, 0x00                            }, 				                                "VRAM,totalsize", 				                                Buffer (0x04) 				                                { 				                                    0x00, 0x00, 0x00, 0x20 				                                }                   }, Local0)               DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))               Return (Local0)            } /*fin del codigohack*/        } /*fin de la grafica dedicada GFX0*/   } /*esta es la ultima llave de MXR0 renombrada a PEG1, aqui termina el dispositivo puerto PCI-E*/


#36
juanerson

juanerson

    InsanelyMac Legend

  • Local Moderators
  • 1,409 posts
  • Gender:Male
  • Location:Tru, Venezuela
Que bueno! Te felicito por el gran avance Hermano. El logro es la recompensa a tu constancia.

P.D. He comparado los dos (2) ioreg y estoy seguro que aunque esta bastante bien el resultado, también sé que el código puede mejorar un poco más, aún no siendo experto en el tema, y me refiero concretamente al control térmico o administración de energía de la gráfica (Power Management). El ioreg es la clave siempre y cuando se entienda y se aproveche la información que brinda. Por cierto, será ese valor "NVPM" que no me pareció necesario el que le dé el toque final a la inyección? Averígualo. Y Por favor si consigues hacerlos lo más exactos posibles ambos ioreg, te agradezco que comentes tu experiencia a su debido tiempo y actualices el código hack para que sirva de ayuda a tod@s. El foro en Español necesita este tipo de material. Saludos.

#37
LatinMcG

LatinMcG

    Insanely digesting DSDT

  • Members
  • PipPipPipPipPipPipPipPipPipPipPip
  • 2,509 posts
  • Gender:Male
  • Location:Tampa, Florida
chevere.. pero una pregunta.. que device id es tu 9500 ?

el id que usas en dsdt dice que es 9500.. pues porque tu id no funciona ? (usas el mismo id que tiene la carta ?)

#38
juanerson

juanerson

    InsanelyMac Legend

  • Local Moderators
  • 1,409 posts
  • Gender:Male
  • Location:Tru, Venezuela

chevere.. pero una pregunta.. que device id es tu 9500 ?

el id que usas en dsdt dice que es 9500.. pues porque tu id no funciona ? (usas el mismo id que tiene la carta ?)

Hola LatinMcG, por favor recibe un cordial saludo hermano. Bien, la "device-id" la he agregado a modo de aprendizaje, ya que mi intención fue que él comprendiera el código que se inyecta en comparación con lo que aparece en el .ioreg. Sólo eso. En ese sentido, puedo deducir de tu pregunta que estamos de acuerdo que dicho valor sobra y puede quitarlo sin problemas :) así como por ejemplo también la "revision-id", ya que ambos datos han sido detallados en el Post 1 como características físicas particulares de la tarjeta del compañero pgsubuntu. Espero tu comentario. Saludos.

#39
pgsubuntu

pgsubuntu

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 228 posts
  • Gender:Male
  • Location:Argentina
Buenas muchachos, sobre el valor "NVPM" lo tome "al voleo" ya que vi varios codigos de inyeccion de targetas nvidia (geforce 9400, 9600) que tenian ese valor y presentí que sería el mismo...

Sin dudas que tengo q afinar la inyeccion ya que la grafica si bien tiene aceleracion de video tiene sus "bugs", por ejemplo con algunos juegos que se ven solo pantalla negra y cuando por ejemplo si cambio la resolucion se queda en pantalla azul (si cierro sesion con shift+tecla win+Q y luego dos veces Enter vuelve a cargar la pantalla)

Voy a averiguar como sacar ese valor NVPM y creo que derty dejo unos links alli para ver. Saludos.

PD: tengo la máquina funcionando con windows 7 64 bit tambien. Podría afinar mas los datos desde ahi si es necesario... por ejemplo en hardware ids me sale:

PCI\VEN_10DE&DEV_0640&SUBSYS_00000000&REV_A1
PCI\VEN_10DE&DEV_0640&SUBSYS_00000000
PCI\VEN_10DE&DEV_0640&REV_A1
PCI\VEN_10DE&DEV_0640
PCI\VEN_10DE&DEV_0640&CC_030000
PCI\VEN_10DE&DEV_0640&CC_0300



Ademas la placa esta alojada en el "PCI-e (16x) 2" ya que en el primero hay un socalo libre PCI-e (1x)

PCI bus 2, device 0, function 0



#40
Derty

Derty

    InsanelyMacaholic

  • Donators
  • 3,165 posts
  • Gender:Male
impresionante...ajaja


puede que la placa sea tan mala que el bios sea un poco escueto y no tenga buen control de las operaciones del chip, y no este activado el power management.


baja un ioerg para windows y revisa si esta ahí o carga el nvpm.


si quieres probar.... borra esa parte del DSDT y el kext appleHWsensor y AppleGraphicsPowerManagement, a ver si te van los juegos.



juanerson, pgsubuntu, excelente, si que necesitamos esto en el foro español. gracias.





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy