Než si tento hardware pořídíte, dočtěte tento happy-end do konce :)
Vše začal nápad distribuovat digitální televizi (DVB-T) na všechny počítače v naší domácí síti
a zároveň do televize.
Začal jsem se tedy pídit po možnostech. Jednou z nich je použití nějakého PVR software -
například MythTV, což je open source software, který
(samozřejmě s nějakým vhodným hardwarem) více než zastane několik domácích přístrojů, jako je
satelitní přijímač nebo digitální DVD rekordér. Výhodou tohoto řešení je univerzálnost (stroj s linuxem),
zajímavé funkce a také možnost oddělení frontendu a backendu (distribuovaná data). Nevýhodou pak
nutnost nějakého (dalšího) počítače.
Jako nejvhodnější hardware se jeví nějaký minipočítač formátu Mini-ITX postavený na platformě VIA EPIA,
nejlépe pouze s pasivním chlazením. To je ale dost drahá záležitost.
Řešením je X-BOX, hardware resp. herní konzole
od Microsoftu. Jde o X-BOX verze 1, na úpravě X-BOXu 360 se zatím pracuje.
Přestože se v souvislosti s provozováním Linuxu na X-BOXu mluví o "hackování", nejde o žádnou ilegální aktivitu. Provozovat open source software nebo upravovat legálně koupený hardware není nic špatného, naopak.
Jak jsem se dočetl na stránkách projektu Xbox-Linux, cituji:
YES - You can run Linux on your Xbox! YES - You can do it without a modchip! YES - You can do it without opening your Xbox!
A tak když jsem v electroworldu náhodou narazil na krabici s X-BOXem, neváhal jsem, a asi za 4500kč jsem ho koupil.
Nový X-BOX se dá koupit údajně i pod 4 tisíce.
Jak je známo, dokumentace se čte až když není jiná možnost, a tak jsem se trochu pozdě dozvěděl, že pro instalaci linuxu
budu potřebovat mimo jiné určitou X-BOXovou hru obsahující určitou chybu umožňující spustit Microsoftem nepodepsaný kód.
Hry, které podporuje projekt Xbox-Linux pro instalaci linuxu:
Další hra, která může být pro hack použita, i když ne přímo projektem Xbox-Linux, je Splinter Cell.
Ani jednu z nich jsem samozřejmě neměl, navíc jsem zjistil, že moje verze X-BOXu je 1.6 :(
Nejnovější verze X-BOXu s sebou nese několik omezení:
Jak jsem vyřešil tento problém já? S trochou štěstí jsem narazil na člověka se starší verzí a X-BOX jsem s ním vyměnil. On tím získal fungl nový kousek se zárukou, já verzi vhodnou pro Linux s jedním nefunkčním keypadem a zapůjčení hry Splinter Cell.
Ze zjevných důvodů chtěl Microsoft zabránit použití běžných PC periferií, z důvodů nízké ceny ale nemohli vyvíjet vše od
píky. Použili tedy upravené USB s vlastními konektory. Pro zapojení nějaké periferie jako je USB flash disk nebo USB
klávesnice je pak potřeba vyrobit si redukci z "MS USB" na "normální USB".
K výrobě jsem použil nefunkční keypad, od kterého jsem odstřihl kabel s konektorem, na jehož druhou stranu jsem napájel
samici klasického USB typu A. Více o této úpravě najdete zde:
http://www.xbox-linux.org/wiki/Xbox_Linux_USB_HOWTO
Jak jsem později zjistil, nefunkční keypad byl nefunkční pouze kvůli "inline release" konektorům. Po jejich odstřižení a
připojení klasické samičí koncovky USB typu A je možné připojit keypad k PC a po nainstalování
příslušných ovladačů funguje jako klasický joystick - akorát
má 7 os a až 24 tlačítek :)
Pro první hack jsem použil Softmod Installer Deluxe (4.5 Nknave Edition),
který narozdíl od Xbox-Linuxu podporuje také hru Splinter Cell. Pro přenos souborů na X-BOX posloužil digitální foťák HP
PhotoSmart 618, který je shodou okolností i na
seznamu kompatibilních zařízení. Kompatibilní flash disk lze tímto způsobem připojit k X-BOXu jako Microsoftí Media
card.
Trošku problém je, že MS používá jak pro disk tak pro paměťové karty souborový systém FATX, tedy
modifikovaný
FAT16/32. Pro uložení je potřeba nejdříve připojit USB storage k X-BOXu, kde se zformátuje a pak použít
například Action Replay software pro Windows. Bohužel i tento
software je potřeba
upravit, neboť je určený
pro USB paměti stejného výrobce.
Pokud kopírování gamesavů klaplo, stačí je v X-BOXu zkopírovat na disk a spustit pomocí odpovídající hry.
Alternativně by se gamesavy daly uložit v linuxu se skompilovaným modulem pro filesystem fatx, případně (asi nejjednodušší řešení) v live distru Xebianu.
Auto-Installer Deluxe (3.0) je balík různých utilit a dalšího software pro X-BOX. Mimo jiné obsahuje upravené dashboardy (prostředí pro spouštění her a další akce). Upravený dashboard zajistí bootování vlastních CD např. s linuxovými distribucemi. Hurá! :)
Instalace linuxové distribuce už je rutina. Já jsem si vybral distribuci Xebian (1.1.4), která vychází ze stabilního Debianu Sarge. Po vypálení ISO na CD a nabootování je možné ji nainstalovat na disk příkazem XBOXLinuxInstall.
Pokud chcete nainstalovat linux na celý pevný disk (a ne pouze na volné místo na konci disku nebo jako gamesave), je potřeba přeflashovat TSOP! - viz další bod...
Pro totální vymítění MS software a také pro využití celého disku linuxem je potřeba přeflashovat TSOP flash chip.
Flashování je možné pouze po HW úpravě motherboardu. Celá procedura je popsána na této stránce:
http://www.xbox-linux.org/wiki/TSOP_flashing_HOWTO
V mém případě šlo pájení celkem hladce, obě dvojice kontaktů jsou těsně u sebe a tak stačila kapka cínu. Po dalším rebootu vás přivítá
grafické rozhraní Cromwellu místo Microsoftího loga X-BOXu.
Pokud se vám povedlo flashnout Cromwell, můžete z CD/DVD nabootovat Xebian a spustit XBOXLinuxInstall - nainstalovat linux na celý disk. Ještě před instalací je vhodné v menu Cromwella unlocknout pevný disk (MS jinak používá jakési šifrování s klíčem, který je unikátní pro každý X-BOX), jinak tento disk nepřečtete v PC. Nezapomeňte také, že pro X-BOX je potřeba mimo jiné správný kernel.
Instalace MythTV je popsána zde:
http://www.xbox-linux.org/wiki/MythTV_on_Xebian_HOWTO
Výstup z lspci:
0000:00:00.0 Host bridge: nVidia Corporation: Unknown device 02a5 (rev a1) 0000:00:00.3 RAM memory: nVidia Corporation: Unknown device 02a6 (rev a1) 0000:00:01.0 ISA bridge: nVidia Corporation nForce ISA Bridge (rev d4) 0000:00:01.1 SMBus: nVidia Corporation nForce PCI System Management (rev d1) 0000:00:02.0 USB Controller: nVidia Corporation nForce USB Controller (rev d4) 0000:00:03.0 USB Controller: nVidia Corporation nForce USB Controller (rev d4) 0000:00:04.0 Ethernet controller: nVidia Corporation nForce Ethernet Controller (rev d2) 0000:00:05.0 Multimedia audio controller: nVidia Corporation: Unknown device 01b0 (rev d2) 0000:00:06.0 Multimedia audio controller: nVidia Corporation nForce Audio (rev d2) 0000:00:06.1 Modem: nVidia Corporation nForce AC'97 Modem Controller (rev d1) 0000:00:08.0 PCI bridge: nVidia Corporation nForce PCI-to-PCI bridge (rev d2) 0000:00:09.0 IDE interface: nVidia Corporation nForce IDE (rev d4) 0000:00:1e.0 PCI bridge: nVidia Corporation nForce AGP to PCI Bridge (rev a1) 0000:01:00.0 VGA compatible controller: nVidia Corporation: Unknown device 02a0 (rev a1)
Fotky, které jsem udělal, najdete v adresáři fotos.
(1) Xbox-Linux projekt
(2) Czech Xbox Pages
(3) Xbox-Scene
(4) llamma site
(5) MythTV