Snow Leopard (compilación beta 10a380) en placa EP35-DS3r (parte 1)
NOTA PREVIA: este artículo está referido a este hardware; conviene actualizar la BIOS a la versión F4 en la que Gigabyte ha renovado la sección AHCI que ahora es 1.20 y el arranque en modo AHCI es mucho más rápido que en BIOS anteriores.
Para los que tengan una placa base similar a la mía (Gigabyte EP35-DS3r rev. 2.1) y quieran probar Snow Leopard (SL en adelante) comento los detalles más significativos de la instalación teniendo en cuenta que se trata de un SO en versión beta todavía y que además no está diseñado para nuestros PCs.
Pre-instalación (preparación en 10.5)
He usado SL compilación 10a380 sobre un disco duro diferente (HFS+ con GUID) al que tengo con 10.5. En BIOS tengo:
– dispositivos SATA como AHCI (error al instalar en modo no AHCI)
– controladora IDE desactivada
– HPET de 64 bits activado
Se prepara un archivo DSDT.aml básico (sin audio ni vídeo) en el que se hacen 2 modificaciones:
Ajuste de Roisoft para que los discos no se muestren en el escritorio con el icono de carpeta o de discos externos, se trata de inyectar el ID del chipset ICH9r en la sección correspondiente al dispositivo IDE1 en el archivo DSDT para que sea reconocido como ESB2 AHCI de forma que SL reconozca los discos duros como internos. Este es el código que he puesto inmediatamente debajo de la línea correspondiente al dispositivo IDE1:
Method (_DSM, 4, NotSerialized) { Store (Package (0x02) { “device-id”, Buffer (0x04) { 0x81, 0x26, 0x00, 0x00 // ESB2 AHCI ID, ICH9R se detecta como ESB2 } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) }
Ajuste de Stellarola para evitar que la CMOS del BIOS se desconfigure tras cada uso de SL, hay que modificar ligeramente la sección del dispositivo RTC que en mi caso queda así:
Device (RTC) { Name (_HID, EisaId (“PNP0B00”)) Name (ATT0, ResourceTemplate () { IO (Decode16, 0x0070, // Range Minimum 0x0070, // Range Maximum 0x00, // Alignment 0x02, // Length ANTES ERA 4 }) Name (ATT1, ResourceTemplate () { IO (Decode16, 0x0070, // Range Minimum 0x0070, // Range Maximum 0x00, // Alignment 0x04, // Length ) }) Method (_CRS, 0, NotSerialized) { If (LGreaterEqual (OSFX, 0x03)) { If (HPTF) { Return (ATT1) } Else { Return (ATT0) } } Else { Return (ATT0) } } }
Se puede preparar con la aplicación EFIStudio un archivo com.apple.Boot.plist con la cadena EFi correspondiente a la tarjeta gráfica (9800GT 1gb en mi caso) para tener aceleración gráfica en SL.
Instalación (desde 10.5)
La instalación se realiza desde macOS 10.5 Leopard:
- mostrar archivos invisibles
- doble clic en (DVD es el DVD de Snow Leopard) /Volumes/DVD/System/Installation/Packages/OSinstall.mpkg
- elegir disco de SL como destino y esperar a que termine la instalación
- aplicar Chameleon 1 o 2:
4a. Chameleon1 con soporte para SL de Aquamac (no parchea SMBIOS y no muestra algunas informaciones en Perfil de Sistema)
4b. Chameleon2 con PC_EFi 10 de Netkas (permite parchear SMBIOS y todo se muestra bien en Perfil de Sistema) - aplicar algunas extensiones de 64 bits: AppleDecrypt, Disabler, OpenHaltRestart y PlatformUUID (en /S/L/E, no en /Extra)
- se puede borrar AppleIntelCPUPowerManagement pero al tener DSDT y Disabler no es necesario
- copiar DSDT.aml o bien a la raíz del volumen de SL (Chameleon 1 de Aquamac) o bien a la carpeta /Extra (Chameleon 2 + PCEfi 10)
- copiar com.apple.Boot.plist con la cadena gráfica bien a su sitio habitual (Chameleon 1 de Aquamac) o bien a la carpeta /Extra (Chameleon 2 + PCEfi 10).
Post-instalación (desde SL)
- el primer disco de arranque en BIOS ha de ser SL, no funciona bien arrancar el disco de 10.5 para elegir el de SL en el menú de Chameleon
- si se usa Chameleon1 de Aquamac, SL sólo arranca bien con kernel y extensiones en modo de 32 bits (arranque con el modificador -x32 en el prompt de Darwin)
- si se usa Chameleon2, SL arranca bien con kernel y extensiones en modo de 64 bits (arranque con el modificador -x64 en el prompt de Darwin) aunque es posible arrancar en modo 32 bits con el modificador -x32
- a pesar del inconveniente de la falta de información en Perfil de Sistema parece arrancar y funcionar mejor con Chameleon1 en modo 32 que con Chameleon2 en modo 64 (los test de GeekBench 64 y de Xbench arrojan valores idénticos en ambos modos)
- si el arranque en modo 64 no llega a completarse por no llegar a cargar dsmos.kext (se para en «Waiting for DSMOS…») puede ser que el desencriptador que se usa (dsmos o AppleDecrypt) no está bien compilado para 64, entonces conviene borrar ése e instalar otro
- a los pocos minutos de tener el sistema en marcha sale un Kernel Panic que parece estar relacionado con mdworker, se soluciona desactivando mdworker, borrando o moviendo
/System/Library/LaunchDaemons/com.apple.metadata.mds.plist
aunque se pierde la capacidad de indexar el contenido del disco en el arranque y Spotlight puede fallar - es conveniente reparar permisos de la carpeta Extensiones con la herramienta de Cvad «Kext Utility for Leopard y Snow«
- también es conveniente recrear la caché de extensiones (que en SL está en diferente sitio que en 10.5) con este comando en Terminal (todo el comando va en una sola línea): sudo kextcache -v 1 -t -l -m /System/Library/Caches/com.apple.kext.caches/Startup/Extensions.mkext /System/Library/Extensions
Nota: si la ejecución de este comando da errores con los kext que se han instalado a mano hay que darles a esos kext los permisos adecuados (propietario root:wheel o también 0:0) antes de volverlo a ejecutar - la Ethernet funciona bien (no he probado TimeMachine pero sí compartir archivos con otro Mac)
- en el primer arranque no funciona la reparación de permisos con Utilidad de Discos ni Actualización de software pero a partir del 2º se puede acceder a las actualizaciones del sistema con 2 nuevas compilaciones de SL más recientes que la 10a380 y la reparación de permisos funciona bien
- si el sistema funciona bien se puede instalar la extensión VoodooHDA de 64 bits, en mi caso da sonido correcto al chip ALC889a aunque con errores en System.log
- el reposo no funciona, el sistema no despierta bien y hay que reiniciar a mano (he probado con los modos hibernate 0 y 3 y con la opción de “Reiniciar automáticamente tras un corte de suministro” y sin ella).
NOTA: los archivos a que hago referencia se descargan desde distintos sitios de Internet, es cuestión de buscarlos (como orientación propongo los nombres de Applesana y Roisoft, Laszlo en ProjectSnow, SaCleoCheater en InfiniteMac, Aquamac en ProjectSnow, Stellarola, etc.).
AVISO: las instrucciones y propuestas de esta página se proporcionan sin garantía de ningún tipo a la hora de llevarlas a la práctica. Lo que ha funcionado bien en mi caso pudiera no hacerlo en el tuyo.