Jump to content


Photo

What Builds Linux For The Xbox?


  • Please log in to reply
15 replies to this topic

#1 MCM Domino

MCM Domino

    X-S Enthusiast

  • Members
  • 9 posts

Posted 26 April 2008 - 07:38 AM

What programming language do you have to use to build a linux installer for the xbox and xbox 360 for example: Krazy Tools NTSC and PAL what was that made in? because there's an Evolution X dashboard option and Unleashed X dashboard option as well. and for both of the dashboards there where .xbe files "evox.xbe" and "unleash.xbe" how where those made?

Basically what I'm asking is what programming language did he create the dashboard installe r and the two .xbe files?

and my third question is what does xbe stand for; Xbox Executable?

Edited by MCM Domino, 26 April 2008 - 07:38 AM.


#2 Movax

Movax

    X-S Freak

  • Members
  • PipPipPipPipPip
  • 1,520 posts
  • Xbox Version:v1.4
  • 360 version:none

Posted 26 April 2008 - 09:47 AM

Unleash and Evox dashboards are programmed in C/C++ and compiled using libraries from the XDK (xbox developement kit).

The exploits themselves are hacked gamesave files and likely programmed in x86 assembly. They then launch the dashboard (which is used as an installer.)

The Krayzie installer, etc, really have very little to do with linux other than the initial purpose of the exploits was to launch linux.

xbe does mean xbox executable.

This all pertians to xbox1. The linux launcher on the 360 works differently.


#3 MCM Domino

MCM Domino

    X-S Enthusiast

  • Members
  • 9 posts

Posted 26 April 2008 - 01:02 PM

QUOTE(Movax @ Apr 26 2008, 05:23 AM) View Post

Unleash and Evox dashboards are programmed in C/C++ and compiled using libraries from the XDK (xbox developement kit).

The exploits themselves are hacked gamesave files and likely programmed in x86 assembly. They then launch the dashboard (which is used as an installer.)

The Krayzie installer, etc, really have very little to do with linux other than the initial purpose of the exploits was to launch linux.

xbe does mean xbox executable.

This all pertians to xbox1. The linux launcher on the 360 works differently.

ah, ok thank you. Your post was very helpful! that's good news if it was made in C++ because I intend on learning that once I finish up learning PHP

but I have 2 more questions now when you say XDK do you mean the actualxbox dev kit(physical form) or like a piece of software that you install on your computer like a normal SDK how would you program using a XDL and C++?

and my last question(for now) is what is the x86 assembly language? could you give me a quick overview? I've never heard of it...

#4 Movax

Movax

    X-S Freak

  • Members
  • PipPipPipPipPip
  • 1,520 posts
  • Xbox Version:v1.4
  • 360 version:none

Posted 26 April 2008 - 03:23 PM

Well, to compile the program file, you would need the SDK. There is a component that installs on the xbox that aids development (XDK). Assembly is mnemonic code for machine language. http://en.wikipedia....sembly_language

Edited by Movax, 26 April 2008 - 03:23 PM.


#5 MCM Domino

MCM Domino

    X-S Enthusiast

  • Members
  • 9 posts

Posted 26 April 2008 - 05:59 PM

QUOTE(Movax @ Apr 26 2008, 10:59 AM) View Post

Well, to compile the program file, you would need the SDK. There is a component that installs on the xbox that aids development (XDK). Assembly is mnemonic code for machine language. http://en.wikipedia....sembly_language

so Assembly is like binary and hexadecimal and stuff?

#6 Movax

Movax

    X-S Freak

  • Members
  • PipPipPipPipPip
  • 1,520 posts
  • Xbox Version:v1.4
  • 360 version:none

Posted 26 April 2008 - 07:57 PM

It is a representation of machine code (the actual instructions that the CPU executes) which is binary, like everything in digital computing. Hexadecimal is just a representation of binary, as are mnemonics in assembly.

Edited by Movax, 26 April 2008 - 07:58 PM.


#7 MCM Domino

MCM Domino

    X-S Enthusiast

  • Members
  • 9 posts

Posted 27 April 2008 - 06:03 AM

QUOTE(Movax @ Apr 26 2008, 03:33 PM) View Post

It is a representation of machine code (the actual instructions that the CPU executes) which is binary, like everything in digital computing. Hexadecimal is just a representation of binary, as are mnemonics in assembly.

oh I see ok, so can x86 assembly content run on windows? (can I code in that language while on windows?) or do I have to go into system root or something?...

#8 Movax

Movax

    X-S Freak

  • Members
  • PipPipPipPipPip
  • 1,520 posts
  • Xbox Version:v1.4
  • 360 version:none

Posted 27 April 2008 - 06:16 AM

Why do you think you want to program in assembly? No one really programs anything in assembly anymore, except for hacking binary files (programs) or maybe device drivers. It would take ages to program anything useful in assembly these days.

Edited by Movax, 27 April 2008 - 06:17 AM.


#9 MCM Domino

MCM Domino

    X-S Enthusiast

  • Members
  • 9 posts

Posted 27 April 2008 - 07:05 AM

QUOTE(Movax @ Apr 27 2008, 01:52 AM) View Post

Why do you think you want to program in assembly? No one really programs anything in assembly anymore, except for hacking binary files (programs) or maybe device drivers. It would take ages to program anything useful in assembly these days.

you said he possibly programmed the profile hack for the Linux installer in assembly. Is it possible to program them profile hack in any other programming language?

#10 Bomb Bloke

Bomb Bloke

    X-S Transcendental

  • Head Moderators
  • PipPipPipPipPipPipPipPipPipPip
  • 6,568 posts
  • Gender:Male
  • Location:Tasmania (AU)
  • Xbox Version:v1.0
  • 360 version:none

Posted 27 April 2008 - 07:26 AM

A softmod autoinstaller is made up of three main elements:

The patched save game. There are plenty of these available, no need to create another.

The dashboard. Again, lot of these exist already, no need to create another (though you will need to configure one to your exact needs).

The files required to install the softmod. These are usually stored in an archive file of some sort, and then extracted by the autoinstaller in order to actually mod the console.

You could build your own softmod installer pack just by repackaging the tools already available. There's no need to re-invent the wheel by coding everything from scratch.

However, I'm not sure what you're trying to achieve here... You want to create a softmod autoinstaller that sets Linux as the dashboard? Most Linux distros are way to big to be installed efficiently via a save game exploit. It's best to install a standard softmod and then have the X-Box boot one of the Linux install CDs already available.

#11 ldotsfan

ldotsfan

    X-S Messiah

  • Dev/Contributor
  • PipPipPipPipPipPipPip
  • 3,100 posts
  • Xbox Version:v1.1
  • 360 version:unknown

Posted 27 April 2008 - 09:08 AM

QUOTE(Bomb Bloke @ Apr 27 2008, 03:02 PM) View Post

You want to create a softmod autoinstaller that sets Linux as the dashboard?


That's basically describing chimp26. Mechassault gamesave hacked to run Linux in RAM and customized for disk cloning. There are also some leftover files for an UDE install which are not used. You can study chimp26 if that's what you are really interested in.


#12 MCM Domino

MCM Domino

    X-S Enthusiast

  • Members
  • 9 posts

Posted 27 April 2008 - 10:17 AM

QUOTE(Bomb Bloke @ Apr 27 2008, 03:02 AM) View Post

A softmod autoinstaller is made up of three main elements:

The patched save game. There are plenty of these available, no need to create another.

The dashboard. Again, lot of these exist already, no need to create another (though you will need to configure one to your exact needs).

The files required to install the softmod. These are usually stored in an archive file of some sort, and then extracted by the autoinstaller in order to actually mod the console.

You could build your own softmod installer pack just by repackaging the tools already available. There's no need to re-invent the wheel by coding everything from scratch.

However, I'm not sure what you're trying to achieve here... You want to create a softmod autoinstaller that sets Linux as the dashboard? Most Linux distros are way to big to be installed efficiently via a save game exploit. It's best to install a standard softmod and then have the X-Box boot one of the Linux install CDs already available.

I know there's no "need" to make anything but I want to.

and as for me acheiving something I hope for someone to answer my qestions instead of telling me not to worry about it because there are already softmod installers out there.

#13 Bomb Bloke

Bomb Bloke

    X-S Transcendental

  • Head Moderators
  • PipPipPipPipPipPipPipPipPipPip
  • 6,568 posts
  • Gender:Male
  • Location:Tasmania (AU)
  • Xbox Version:v1.0
  • 360 version:none

Posted 27 April 2008 - 11:44 AM

Ok, here's some answers:

You can program your exploit in any language you like... So long as you can find a compiler for your code.

PHP is an interpreted language, in that you write the source code and the computer translates it at run time. Most other language don't work that way, you need to compile the code to machine code in order for the computer to be able to execute it.

Now! At present there is no compiler available that creates save games that can be booted as programs. Why? Well, for starters, save games were never supposed to be bootable in the first place; the exploited saves available only work due to glitches in the games used to activate them.

Hence to create such a thing, you need to understand "low level" programming (what you refer to as "binary and stuff"). PHP is what you call a "high level" language - It's very easy for a human to read/write, but far from the actual code the computer ends up running.

So say you learn the machine code specific to the X-Box. Without prior knowledge of assembly and the like (something only a small minority of programmers have), this'll take you quite some time. Then you can sit down and create an exploit which... already exists! A great achievement indeed. smile.gif

Ok! So next up, you create your Linux installer. This involves configuring a dashboard to setup a softmod, and then install Linux itself - This could actually be done really easily be editing Krazie's existing installer.

So what's the problem with that? Well, most Linux installers worth using are big. As in, at least a couple of hundred megabytes (intended to be loaded onto a CD). I'm not even sure Microsoft has created any memory cards that big, so odds are anyone who uses your autoinstaller will need to find a compatible USB drive to use instead.

Ok! So say you do all this and create a working autoinstaller for Linux. Well done. Of course, as soon as another version of your chosen Linux build gets released, your work is obsolete. smile.gif

What you should be doing is studying existing autoinstallers and softmods. Pull 'em apart, see how they work for yourself.

At the moment you're asking questions which, if fully answered, could fill books. It's kinda like explaining to grandma (who's never touched a computer) how to program PHP, if you get my drift... Where do you start?

#14 MCM Domino

MCM Domino

    X-S Enthusiast

  • Members
  • 9 posts

Posted 27 April 2008 - 06:54 PM

QUOTE(Bomb Bloke @ Apr 27 2008, 07:20 AM) View Post

Ok, here's some answers:

You can program your exploit in any language you like... So long as you can find a compiler for your code.

PHP is an interpreted language, in that you write the source code and the computer translates it at run time. Most other language don't work that way, you need to compile the code to machine code in order for the computer to be able to execute it.

Now! At present there is no compiler available that creates save games that can be booted as programs. Why? Well, for starters, save games were never supposed to be bootable in the first place; the exploited saves available only work due to glitches in the games used to activate them.

Hence to create such a thing, you need to understand "low level" programming (what you refer to as "binary and stuff"). PHP is what you call a "high level" language - It's very easy for a human to read/write, but far from the actual code the computer ends up running.

So say you learn the machine code specific to the X-Box. Without prior knowledge of assembly and the like (something only a small minority of programmers have), this'll take you quite some time. Then you can sit down and create an exploit which... already exists! A great achievement indeed. smile.gif

Ok! So next up, you create your Linux installer. This involves configuring a dashboard to setup a softmod, and then install Linux itself - This could actually be done really easily be editing Krazie's existing installer.

So what's the problem with that? Well, most Linux installers worth using are big. As in, at least a couple of hundred megabytes (intended to be loaded onto a CD). I'm not even sure Microsoft has created any memory cards that big, so odds are anyone who uses your autoinstaller will need to find a compatible USB drive to use instead.

Ok! So say you do all this and create a working autoinstaller for Linux. Well done. Of course, as soon as another version of your chosen Linux build gets released, your work is obsolete. smile.gif

What you should be doing is studying existing autoinstallers and softmods. Pull 'em apart, see how they work for yourself.

At the moment you're asking questions which, if fully answered, could fill books. It's kinda like explaining to grandma (who's never touched a computer) how to program PHP, if you get my drift... Where do you start?

ah, I see that was very informative and helpful! biggrin.gif thank you for sharing that information, I would have never thought you could boot an installer from a CD that's genius in my opinion. I know a friend that knows binary by heart I can ask him and I'm taking a computer science course in July of 2008 so hopefully I'll learn more about the Base 2 language and how to use it to build applications or execute commands. and thank you again.

but I have one final question. is the binary language usually different for everyone or most people depending on their hardware? especially if someone where to build thier own computer with custom hardware?

#15 Bomb Bloke

Bomb Bloke

    X-S Transcendental

  • Head Moderators
  • PipPipPipPipPipPipPipPipPipPip
  • 6,568 posts
  • Gender:Male
  • Location:Tasmania (AU)
  • Xbox Version:v1.0
  • 360 version:none

Posted 28 April 2008 - 04:13 AM

Esh, there's no need to quote my entire post... Especially since no one else has replied in between. blink.gif

Binary is a numeric system. If your friend knows how to count in binary, that doesn't mean he knows how to program in machine code. That's like saying someone who knows the english alphabet also knows how to spell.

This is especially true in that machine code written for one system will typically only work on that system. For example, you can't run a XBE on a PC, and you can't run a EXE on an X-Box (without the use of emulation software, which interprets the code at run time).

This is another reason why high level languages are so popular: You can use different compilers to convert them to machine code for different system types.

Typically people only program in machine code if they have to (say there isn't a compiler available for their system of choice) or if they want to create code that is very, very efficient (high level languages are easy to code with, but there's a penalty for that).




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users