Boot-132 y Leopard retail en placa P35-DS3R

miliuco

Activo
(Hardware utilizado: el de la firma, comentarios ampliados aquí.

El proyecto Boot-132 está pensado para arrancar un Hackintosh desde un DVD original de Leopard (no modificado como los que hemos usado habitualmente de JaS, Kalyway, etc.), cosa que hasta ahora resultaba imposible, e instalar Leopard desde ese DVD original.

El proyecto ha de agradecer sobre todo a:
- Dave Eliott: idea inicial que permite utilizar el DVD original de Leopard, mezclando conceptos de los proyectos Chameleon y Boot-Dfe
- proyecto Chameleon, versión mejorada del emulador de EFi de Netkas
- Kabyl: mejora del arranque poniendo en una carpeta separada las extensiones necesarias para el hardware
- Bumby: CD de arranque con Syslinux y una forma de preparar la ISO de ese CD de arranque
- ToH, HMBT,Superhai, STiCKpIN y otros: pruebas y propuestas de mejora

En esencia el proyecto busca arrancar el PC desde un CD con Syslinux y las extensiones básicas necesarias que se cargan en memoria, quitar el CD con Syslinux, poner el DVD de Leopard e iniciar la instalación desde ahí.

Existe abundante información sobre todo ésto tanto en los foros de Insanely Mac como en los de Applesana y en otros sitios. Y aunque se han propuesto métodos para crear uno mismo el CD de arranque (incluso memorias USB de arranque) con las extensiones requeridas yo voy a comentar mi experiencia partiendo de una ISO ya preparada para las placas con chipset P35, esta ISO se encuentra en los hilos dedicados a este asunto (sobre todo el titulado "Recopilacion Swap cds para instalar nativo Mac OS X") y otros.

Preparación y software requerido

- imagen de CD con Boot-132 llamada "
Entrar or Registrarse para completar la lectura
" o similar para grabar el CD de arranque (algunos recomiendan grabarlo a muy baja velocidad, 1x o 2x, para evitar un mensaje de error con el archivo com.apple.Boot.plist cuando se arranca desde ese CD)
- instalador de Chameleon para disco duro, se descarga desde la propia página del proyecto
- archivo dsmos.kext necesario para desencriptar binarios y poder arrancar aplicaciones (en su lugar se puede usar la extensión AppleDecrypt.kext que realiza la misma función, se supone que mejor al ser una opción más moderna)
- Gigabyte P35 Control Center de ~pcwiz
- paquete CHUD.pkg que se saca de las XCode Tools de Apple
- EFI Studio de Inside para instalar la tarjeta gráfica 8800GT mediante cadena EFi
- DVD original de Leopard, en mi caso he utilizado un DVD de doble capa que contiene Leopard 10.5.4

Pasos de la instalación

- preparar una memoria USB formateada para Mac con: instalador de Chameleon / Gigabyte P35 Control Center de ~pcwiz / paquete CHUD de XCOde Tools / dsmos.kext o AppleDecrypt.kext / EFI Studio de Inside / Kext Helper b7 para facilitar la instalación de extensiones

- arrancar el PC desde el CD con Boot-132, elegir la opción de instalar Leopard, esperar a que se detenga el prompt, cambiar el CD por el DVD de Leopard, pulsar INTRO 2 veces y comienza el programa de instalación de Mac OS X

- la instalación termina con el mensaje de error de que no ha sido posible hacer que el disco duro sea disco de arranque, se ignora el mensaje y se reinicia de nuevo desde el CD con Boot-132

- elegir la opción de Arrancar un sistema Leopard y esperar a que aparezca el escritorio de Mac OS X

- es posible que el sistema se instale y arranque con aceleración gráfica pues la tarjeta 8800GT es parcialmente reconocida con el driver incorporado en el CD con Boot-132 pero si se mira en Perfil de Sistema se ve que es reconocida como Unknown NVidia con sólo 256mb

- insertar la memoria USB para instalar los componentes

- Chameleon se instala simplemente seleccionando la partición adecuada en que se ha instalado Leopard

- usar Kext Helper b7 para instalar dsmos.kext o AppleDecrypt.kext

- borrar la extensión AppleIntelCPUPowerManegement.kext

- ejecutar GigabyteP35CC para instalar los controladores que hacen falta (audio, SATA, AppleACPIPlatform, onecore de Ovov y AppleSMBIOSEFi) y CHUD.pkg que es necesario para que funcione el parche para el apagado correcto:


- usar EFi Studio para escribir la cadena de la tarjeta gráfica en com.apple.Boot.plist:

- reparar los permisos en el disco de Leopard antes de reiniciar

- se reinicia el PC arrancando esta vez sin el CD con Boot-132.

Información del procesador en Acerca de este Mac

Es posible modificar la información errónea del procesador en Acerca de este Mac

Error 35 "CFGetHostUUIDString: unable to determine UUID for host"

Para corregir los mensajes de error 35 "CFGetHostUUIDString: unable to determine UUID for host" he usado la propuesta de sneosx86:

- hacer copia de seguridad de /Library/Preferences/SystemConfiguration/NetworkInterfaces.plist

- abrir /Library/Preferences/SystemConfiguration/NetworkInterfaces.plist

- buscar la última entrada con este texto:

<string>Ethernet</string>
</dict>

- añadir despés de ella este otro texto:

<dict>
<key>BSD Name</key>
<string>en3</string>
<key>IOBuiltin</key>
<false/>
<key>IOInterfaceType</key>
<integer>6</integer>
<key>IOInterfaceUnit</key>
<integer>3</integer>
<key>IOLocation</key>
<string></string>
<key>IOMACAddress</key>
<data>
ABbPoF5V
</data>
<key>IOPathMatch</key>
<string>IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/P0P3@1C,2/IOPCI2PCIBridge/pci14e4,4311@0/AirPort_Brcm43xx/IO80211Interface</string>
<key>SCNetworkInterfaceType</key>
<string>IEEE80211</string>
</dict>

- guardar y reiniciar el PC

Otras formas de corregir los mensajes de error 35 "CFGetHostUUIDString: unable to determine UUID for host":

- usar una cadena GFX EFi para el adaptador Ethernet

- instalar SMBIOSResolver.kext de Superhai en lugar de AppleSMBIOSEfi instalado por Control Center de ~pcwiz.

Comentarios después de la instalación

La aparición de los CDs de arranque con Boot-132 ha supuesto un cambio importante en el mundo Osx86 y a todos nos atrae la idea de instalar Leopard desde un DVD original no modificado. Pero en hardware como el mío no es posible tener un sistema con Leopard idéntico al de los Mac si bien los cambios que han de hacerse son mínimos aunque afectan a varios archivos básicos del sistema operativo: AppleACPIPlatform, AppleSMBIOS, controlador SATA, etc. Y las actualizaciones directas desde Apple (Software Update) no siempre serán posibles tal cual. Sin embargo el avance es muy grande y el contenido de un Hackintosh se puede diferenciar muy poco del de un verdadero Mac.

El rendimiento del sistema, incluidos test XBench y Geekbench, es idéntico al del sistema instalado desde el DVD de Jas al modo clásico. Se observa disminución evidente e incluso desaparición de los errores que aparecen al reparar permisos. El PC apaga, reinicia y suspende correctamente (funcionan ambos modos S1 y S3 de la BIOS).
 

miliuco

Activo
Supongo que el audio de la tuya es diferente. Si es ALC888 en vez de ALC889a, el Control Center de ~pcwiz tiene ambos controladores (te da a elegir cuando instalas el driver de audio). Por lo demás, veo pocas diferencias como para sospechar que no puedas usar este método.
 

pablo_iniesta

New member
Todo perfecto menos el apagado.

Pues como reza el título... va todo perfecto (por lo que te doy un millon de gracias) menos el apagado que la ultima vez me a salido un kernel panic.
No se como hacerlo, tengo instalado los parche que instale con la aplicacion de pcwiz y la grafica una 8600gt con los drivers nviject v.5.
Si se te ocurre alguna idea soy todo oidos y estoy deseando dejar el equipo perfecto ya :).
Un saludo, Gracias por tu excelente trabajo miliuco.

P.mi placa base es una ga-p35-ds4
 

Razza

New member
Wao!!

Wao Instalacion desde un DVD original?...sigo esperando el dia para comprar un chip Intel..DAMN, gracias por es dato mili...take care.
 

miliuco

Activo
Pablo_iniesta: sólo se me ocurren 2 posibilidades:

- instalar la tarjeta gráfica con la aplicación EFiStudio de Inside, tiene cadenas para la tarjeta 8600gt de 256 y de 512mb, se trata de arrancar la aplicación >> seleccionar tu modelo de gráfica >> pulsar Add device >> en la ventana nueva que aparece pulsas en Write to com.apple.Boot.plist >> escribes contraseña >> cierras la aplicación (antes de reiniciar borras la extensión NVInject)

- usar el kernel 9.2.0 speedstep de Toh junto con la extensión System.kext también en versión 9.2.0

Mira también en la BIOS, yo tengo desactivado C1E y EIST.

NOTA: Netkas ha sacado EFi9, basada en Chameleon, parece que mejora lo relacionado con la gestión de energía y los apagados:

- instalas Chameleon si no lo tienes ya (descarga desde la web del proyecto un instalador)
- decarga EFi9 desde el blog de Netkas
- EFi9 es un archivo boot que hay que copiar a la raíz / en substitución del que tiene idéntico nombre y que ha instalado Chameleon
- repara permisos y reinicia.
 

roisoft

New member
Otra cosa que podeis hacer para mejorar la gestión de energía es editar y corregir el DSDT de vuestras máquinas, aunque esto pueda parecer algo complejo, no lo es tanto si utilizais un patcher creado por fassl y usais el boot PC_EFI9 de netkas que implementa la posibilidad de leer un DSDT modificado, posibilidad añadida por mackerintel.

Si quereis usarlo en las placas GA-P35 tendreis que utilizar el patcher con la opción -newHPET, con esto conseguireis que la tan odiada extension AppleIntelCPU... sea cargada conjuntamente con el HPET y no habrá peligro de updatar a 10.5.6 directamente ya que tb se ha corregido la irq del nuevo AppleRTC.kext
(Tb funciona perfecto en Snow Leopard)

Se pueden conseguir muchas cosas editando y añadiendo/fijando el dsdt, por ejemplo el injectar la información de la gráfica o convertir el AzaliaAudio en HDEF, pudiendo cargar el vanilla AppleHDA.kext
 

miliuco

Activo
Roisoft: ya veo desde hace unas semanas que te has convertido en un verdadero experto en este asunto de la gestión de energía, DSDT y demás. Incluso con 10.5.6. Probaré lo que propones.
 

pablo_iniesta

New member
Muchas gracias

Pues la verdad es que llevo 1 semana, funcionando de maravilla con el Hack y "solucione" el problema cerrando sesion y luego dandole a apagar equipo, no es lo mas comodo pero tampoco es muy engorroso y asi hasta ahora me apaga el 100% de las veces pero, probare a hacer lo que dice roisoft para evitar el kernel panic al hacer el upgrade a la 10.5.5. (actualmente uso 10.4.5 por miedo a kernel panic y no saber solucionarlo)

Me regalo mi novia el keyboard wireless y el raton wireless y va todo de lujo... estoy muy contento con los resultados del hack, en parte gracias a miliuco.
Gracias a él y al resto de la gente que curra para que podamos disfrutar de este SO.
 

pablo_iniesta

New member
raisoft puedes explicar mas detenidamente como hacer lo del parche dst

Bueno como reza el titulo, si puede ser, me gustaria tener mas info acerca de lo que explica raisoft y la forma de hacerlo.
Perdon por el doble post
 

roisoft

New member
Salu2!

Con la ayuda de fassl, he conseguido finalmente hacer funcionar el audio sin strings ni injectores, añadiendo código al DSDT... os adjunto mi dsdt.dsl/aml para que le echeis un vistazo...

Los que quieran probarlo, teneis que buscar las entradas AZAL y cambiarlas por HDEF y añadir este código


Device (HDEF)
{
Name (_ADR, 0x001B0000)
Method (_PRW, 0, NotSerialized)
{
Return (Package (0x02)
{
0x0D,
0x05
})
}

Method (_DSM, 4, NotSerialized)
{
Store (Package (0x08)
{
"codec-id",
Buffer (0x04)
{
0x89, 0x08, 0xec, 0x10
},

"layout-id",
Buffer (0x04)
{

0x79, 0x03, 0x00, 0x00
},

"device-type",
Buffer (0x011)
{
"ALC889a"
},

"PinConfigurations",
Buffer (0x20)
{
/* 0000 */ 0x10, 0x44, 0x11, 0x01, 0x20, 0x14, 0x01, 0x01,
/* 0008 */ 0x40, 0x4C, 0x21, 0x02, 0x50, 0x34, 0x81, 0x01,
/* 0010 */ 0x60, 0x9C, 0xA1, 0x02, 0xF0, 0x61, 0x4B, 0x01
}

}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}

Method (DTGP, 5, NotSerialized)
{
If (LEqual (Arg0, Buffer (0x10)
{
/* 0000 */ 0xC6, 0xB7, 0xB5, 0xA0, 0x18, 0x13, 0x1C, 0x44,
/* 0008 */ 0xB0, 0xC9, 0xFE, 0x69, 0x5E, 0xAF, 0x94, 0x9B
}))
{
If (LEqual (Arg1, One))
{
If (LEqual (Arg2, Zero))
{
Store (Buffer (One)
{
0x03
}, Arg4)
Return (One)
}

If (LEqual (Arg2, One))
{
Return (One)
}
}
}
con esto cargareis el stock AppleHDA.kext pero solo funcionaran SPDIF y la line Out tendreis que enchufarlo en el mic in.
Para mapear correctamente las salidas tendreis que modelar los plist del AppleHDAcontroller y el AppleHDAPlatformdriver, The KING ha desarrollado una guía de como hacerlo, si tengo tiempo os haré una traducción. De todas formas adjunto los plist que he modelado.

Así es como tengo el asunto.

Ahora intentaré añadir la info de la gráfica para no tener que usar injectores ni strings , postearé los resultados...
 

chicalleje

New member
Salu2!

Con la ayuda de fassl, he conseguido finalmente hacer funcionar el audio sin strings ni injectores, añadiendo código al DSDT...

Muy bueno, espero se pueda hacer algo asi para un ADI1988b que tengo en mi equipo.

Queria preguntarte algo Roisoft: Hice una instalacion de Leo 10.5.5 segun tu guia https://www.osx86spain.com/107/14161/boot-chameleon-dfe-modificado-para-iniciar-particion-efi.html
¿Es posible implementar el patch DSDT?
Ya que leo que tanto el boot modificado de Makerintel como el de Netkas no soporta boot desde la particion EFI. O tengo que cambiar de sistema?

Gracias.
 

roisoft

New member
Ninguno es válido para la partición EFI, pero el nuevo chameleon está a punto de salir y añadirá todas estas nuevas opciones y será compatible con la partcición EFI...
 

roisoft

New member
Salu2!

Bueno pues al final he conseguido injectar código a través del dsdt y he podido cargar tanto el audio como la gráfica sin la necesidad de injectores o efistrings...


en cuanto tenga un rato les detallo un poco el proceso....
 

Xsagti

New member
Vaya crack!!!!!.

Con tus mensajes siempre me dan ganas de volver a instalar el Leopard. Pero por mala suerte no dispongo de tiempo. Cuando acabé unas faenas que tengo pendiente le voy a meter caña gracias a tus comentarios.
 
Arriba