A Xenon Linux loader based on Xell by tmbinc(Felix Domke)
XeLL-Reloaded catches CPU threads, sets them up, loads an ELF file from either network (tftp), USB(fat/ext2fs), CDROM (ISO9660) or HDD(fat/ext2fs/xtaf), and launches it.
It's made to boot Linux, so it contains a flat device tree for Linux. However, it is able to load other ELF files as well, like applications based on LibXenon.
* Now based on LibXenon
* Supports the new Reset Glitch Hack - RGH. (xell-gggggg)
* XeLL-Reloaded is now divided in 2 stages:
- 1st Stage initializes most of the Hardware, uncompresses and executes 2nd Stage
- 2nd Stage (based on LibXenon) loads all required drivers and does the usual "XeLL tasks"
* XeLL can unzip & load gzipped files
* Support for HDMI, and properly switches NTSC/PAL on composite.
* All CPU Cores are active and ready to run at full speed.
* TinyEHCI is used, delivers full USB 2.0 speed when accessing mass storage media
* lwip network stack upgraded to v1.4 Final - It's faster and DHCP is improved.
* It can access the DVD-drive via DMA now: faster reading
* It's possible to reload into XeLL now when you are inside a LibXenon Application
* New HTTP web interface to retrieve nand dump.
* Improved hardware initialization now allows chain-loading.
* Supports upgrading with a 2-stage XeLL-Reloaded binary, named "updxell.bin"
* Infinite boot loop when looking for ELFs to execute.(no more rushing to get the live-cd in)
* Parses / decrypts keyvault
* Supports kboot.conf-type file
* Supports external initramfs
* Can pass a custom CMDLINE to linux kernel via kboot.conf
kboot.conf/initrd support - copyright (C) 2010-2011 Hector Martin "marcan" <hector@marcansoft.com>
* Shows a user controllable menu for the parsed bootentries
xell user prompt - by Georg Lukas "Ge0rg" <georg@op-co.de>
HOW TO USE
==============
XeLL Reloaded checks for ELF/UpdXeLL/Kboot-config or updflash.bin in the following order:
USB (FAT/EXT2FS)
DVD(ISO9660)
HDD(XTAF/FAT/EXT2FS): updxell.bin
kboot.conf
xenon.elf
xenon.z
vmlinux
updflash.bin
Network: updxell.bin
kboot.conf
xenon.elf
xenon.z
vmlinux
updflash.bin (It will find that file, but refuse to flash it!)
DHCP supplied bootfile-name
* XeLL takes bootserver from DHCP, if supplied. You can supply a static tftpserver ip via kboot.conf. If no tftpserver is found, it falls back to a static ip.
* no updflash support via tftp !
updflash.bin is a already remapped flashimage/nandimage. 16MB file for 16MB NAND and 64MB file for 64/256/512MB NAND.
updxell.bin is a renamed xell*.bin file. * Version depending on the used hack (JTAG XeLL: xell-1f (oldies) xell-2f (modern), RGH XeLL: xell-gggggg)
kboot.conf (modified for XeLL) is a configfile
General XeLL config: Set TFTP-Server, CPU-Speedup, videomode, NetConfig
Menu: Parses bootentries, shows a user controlable menu with XboxController/UART/IR Remote
It can parse bootarguments for linux kernels & can load initramfs/initrd
xenon.elf/xenon.z/vmlinux can be either gzipped or bare ELF32 binaries - LINUX or Homebrew
There's also a HTTP Server running while XeLL searches for executable binaries.
It can serve the CPUKey/DVDKey and the console's flashdump.
UPDATING XELL
=================
1. Rename the appropriate XeLL-binary to "updxell.bin".
2. Supply the updxell.bin file to XeLL via USB/DVD/HDD or TFTP
3. It should find the update and flash it
4. Reboot your Xbox and enjoy the fresh XeLL build
Troubleshooting:
updxell.bin doesn't get found / updxell process doesn't start:
--You have to rebuild your whole hackimage with a recent XeLL. From there on you can use the inbuilt update feature
updxell function reports that no XeLL binary was found in NAND:
--Either your XeLL in NAND is too old or it's not a XeLL Reloaded binary - You have to rebuild your whole hackimage with a recent XeLL.
FLASHING NAND
=================
1. Rename the new (already remapped) flashimage to "updflash.bin"
2. Supply the updflash.bin file to XeLL via USB/DVD/HDD
3. It should find the update and flash it
4. Reboot your Xbox and enjoy the new image
Troubleshooting:
XBox does not boot properly after flashing the NAND:
--Either your image wasn't properly remapped or you made something wrong while building the image
USING KBOOT.CONF
===================
1. Read and understand the kboot.conf.sample which is part of every XeLL release with kboot-support
2. Modify the file to your needs
3. Supply it, named as "kboot.conf, via USB/DVD/HDD or TFTP
4. Boot XeLL and wait till it loads the file and shows the menu
5. Navigate to the desired bootentry. You can do this in the following ways:
UART:
UP/DOWN to go up and down in the menu
ENTER to confirm your choice
C to cancel the menu
X360 Controller (1st):
DPAD-UP/DPAD-DOWN to go up and down in the menu
A to confirm your choice
B to cancel the menu
X360 Media Remote:
UP/DOWN to go up and down in the menu
OK to confirm your choice
Press the NUMBER of the desired bootentry to directly load it
B to cancel the menu
6. Let the bootentry load. Enjoy :)
Troubleshooting:
kboot.conf gets found but it doesn't show bootentries or autoloads a bootentry:
--Make sure timeout is set to something higher than 0
--Make sure you didn't forget the "" on the bootentry: label="kernelpath params"
--Also take care of using a texteditor which doesnt automatically break lines if they are too long (will break bootentries), also it shouldn't
modificate the encoding and lineendings of the config!