OpenBSD on an AppleTV 1st Gen
Introduced in 2006, the Apple TV is a mediaplayer for the big screen. Whereas later generations are locked down black boxes, literally, the first generation is an extremely hackable device. It is powered by an Intel Pentium M processor and originally shipped with a customized version of MacOS X Tiger.
Hardware
The modelnumber for the first generation Apple TV is A1218 and has the following specs:
Part | Description |
---|---|
CPU | 1 GHz Intel “Crofton” Pentium M |
GPU | Nvidia GeForce Go 7300 with 64 MB of VRAM |
Memory | 256 MB of 400 MHz DDR2 SDRAM |
Storage | 40 or 160 GB internal HDD |
Connectivity | BCM94321MC dual-band 802.11b/g and 802.11 draft-n WiFi |
The dimensions are 28 mm (height) x 200 mm (width) x 200 mm (depth). The original unit weighs 1,1 kilograms
Mods
CrystalHD
Broadcom BCM970012 and BCM970015 Crystal HD card boards can be installed in the Apple TVs mini PCIe slot as a replacement for the Broadcom BCM4321 wireless card. These boards enable some software to decode H.264 video content using a dedicated hardware decoder chip instead of software decoding H.264 using the main system CPU.
The standard Apple TV will handle software-decoding of SD and standard profile 720p content but the 1GHz CPU chokes on higher profile 720p and all 1080p content unless you spend many (many) hours painstakingly re-encoding videos. Even then the CPU is typically running at 90-100% during playback and you can expect dropped frames and stuttering during fast panning shots. With a Crystal HD decoder card installed and decoding offloaded from the system CPU the Apple TV is capable of playing all but the most challenging of 1080p content with the system CPU load peaking around 45-50%.