Remove All Ads from XDA

XDA-developers ROMkitchen: cook your own ROMs

1,129 posts
Thanks Meter: 59
By Peter Poelman, Retired Administrator on 26th July 2003, 10:16 PM
Thread Deleted Email Thread
Announcing: ROMkitchen

Special Edition ROMs are soooo yesterday.... We're proud to unveil our largest project yet: ROMkitchen. Now you too can modify your ROM to contain precisely what you need. Create your personal ROM, based on the ROM you like.

Wanna see: Have a look at our showroom kitchen to see what we mean. As you can see the showroom kitchen shows the PPC2002 based 3.17.03 ROM released by O2, as well as the 4.00.05 Microsoft WM2003 test ROM. Neither of these ROMs is really present though: you need to download the scripts, include your own ROM images, and run the scripts on your own unix machine. But once you do, you and your friends can create ROMs to your heart's content.

Why didn't we just include these files and make it all work? Because we're not licensed to distribute these ROMs, that's why.

So now what?
  • Play around to see if you like it.
  • download all the files visible when logging in using FTP to username 'kitchen', password 'kitchen'.
  • Put them on your own unix machine, which should be capable of executing php scripts, and which should have a 'little' memory, disk and processing power left over. (We're afraid ROMkitchen wasn't built with resource-efficiency in mind.)
  • Add your own ROM files, see the readme files in the "data/00[...]/_/cfg" directories for details.

  • If you set up your ROMkitchen, make sure you only use it for yourself, and with ROMs you legally own. We're not responsible for abuses.
  • If you use an ftp-client which can ignore files which are newer on your side, you can regularly check for updates and always have the newest kitchen.
  • ROMkitchen does not yet support outputting self-extracting binaries a-la Jeff's exe. We're working on that.
  • ROMkitchen currently supports English language ROMs only. We're working on this too.
  • The welcome exe is back in ROMs made with it: a little too much hassle to make our own. So you'll have to go through the silly tutorial every cold-boot.
  • XDAunlock is missing still. (It will be incorporated, but most people will be making 4.00.05 ROMs, and it doesn't work on that anyway...)

How does it work?
The ROMkitchen consists of a number of php scripts that present the form with all the options to choose from, and which copy files ready for our 'mkrom' utility to process. If you take a look you can see the raw structure of the data that is presented and inserted into the ROM. We'll find some time soon to explain, but you can already learn quite a bit if you look at the files and directories carefully.
The Following 2 Users Say Thank You to Peter Poelman For This Useful Post: [ View ] Gift Peter Poelman Ad-Free
27th July 2003, 12:40 AM |#2  
kalex's Avatar
Senior Member
Thanks Meter: 6
xda-developers u are AWESOME

I'm going to try it as soon as i get home tonight. So all that is needed at first is a 2003 or 2002 image file?


27th July 2003, 05:47 AM |#3  
Thanks Meter: 0
This looks awesome

Is it possible to run this program on Cygwin ? I have configuered the Cygwin download to include Bash and Perl but can't find a reference to dd. I confess that although I have a reasonable amount of programming experience I have never used Unix before so don't even know how to invoke the scripts ops: so any help would be much appreciated.

27th July 2003, 06:56 AM |#4  
kalex's Avatar
Senior Member
Thanks Meter: 6
just uploaded everything to my unix box and tried to run from 4.00.05 directory. i also uploaded bootloader.nb0 and rom.nb1 files to the cfg directory. when i run ./ this is what i get:

[root@killer _]# ./
Usage: splitrom <romimage(s)> [options]
-wx xipchain where to write xipchain
-wo osrom where to write output image
-wb bitmap where to write bitmap
-wl bootloader where to write bootloader

-rl bootloader which bootloader to use for NBF
-n nbfinfotext what NBF header to use [ex: PW10A1-ENG-3.16-007]
-ri nbfinfofile or where to read NBF header info from
-wi nbfinfofile where to save NBF header info
-rx xipchain where to get xipchain from
-rb bitmap where to get bitmap from
-rm romsection@offset insert new romsection.

-ob offset where to find the bootup image
-oe offset the end of the desired os image ( default: 0x81f00000 )
-t NBF | B000FF | NB? | IMG type of result image (default is NB1)

also when i tried to convert the default.fdf file to default.reg i get error saying "unknown fdf file signature" and it creates a 0 byte default.reg file.

any help is appreciated. i know i'm asking too many questions, but same happened with ur mkrom tools and once i got answers from u i was able to build roms without any problems.


27th July 2003, 07:03 AM |#5  
Junior Member
Thanks Meter: 0
Hold on a tick, if you guys added one more feature it would go nova, however. Some features I would like to see is the ability to mix drinks, roll joints, cook dinner, and cure premature baldness/cancer.

It would also be nice if you could arrange for the program to be delivered to my house by the drunken, naked Chinese twins, Fok u and Fok me.

You guys are the bomb. Keep up the great work!

27th July 2003, 08:17 AM |#6  
Retired Admin
delft 52'00N 4'22E
Thanks Meter: 8

# Put them on your own unix machine, which should be capable of executing php scripts, ...

this implies that you should also have setup a webserver, for running the php scripts.

you will have to change the 'splitrom' commandline in depending on what source file you have.
it is not a configure all automatically script, just a guide, to what sort of is supposed to happen for setup.
27th July 2003, 09:21 AM |#7  
Eindhoven, The Netherlands
Thanks Meter: 0
Holy Cow, you guys are amazing....

This is just a short message to say I'm fighting with it as we speak. My friend's box does have PHP, this is good. I've already found that it needs two subdirs under its root ('download' and 'workspace') to be world-writeable. Took me a while to figure that one out. Haven't got it running yet though, this ROM thing is far less than intuitive. But I have the two ROMs which have all the other mumbo-jumbo done: 3.17.03 and 4.00.05, and I will get this to run, if it's the last thing I do.

Jeff (Just back from the U.S., up since 4 am, severe jetlag)
27th July 2003, 10:37 AM |#8  
Peter Poelman's Avatar
OP Retired Administrator
Thanks Meter: 59
Originally Posted by Jeff Summers

I've already found that it needs two subdirs under its root ('download' and 'workspace') to be world-writeable.

Whoops... I guess you're right, that should have been documented. The things you take for granted sometimes...

Thanks, and good luck...
27th July 2003, 12:10 PM |#9  
Riyadh, Saudi Arabia
Thanks Meter: 0
hey, you are doing a great job guys, keep it up.

welcome back Jeff Summers.

27th July 2003, 12:11 PM |#10  
Eindhoven, The Netherlands
Thanks Meter: 0
OK, here's the status:

I'm close, really close. It wouldn't detect my OS, the bash on the system I'm on is in /usr/local/bin instead of /bin and now it's complaining about a missing perl file. I'm working on it though...
27th July 2003, 12:30 PM |#11  
Retired Admin
delft 52'00N 4'22E
Thanks Meter: 8
probably you are missing

which is included with perl 5.8, but not with perl 5.6.*

if you don't have root access to you box, you can also install ( see the README for build instructions ) list-utils in your home directory, by editing the generated Makefile, and changing 'PREFIX=$(HOME)', and then adding
export PERL5LIB=$HOME/lib/perl5/site_perl/5.6.*
to your environment. ( with '*' your perl version )
Subscribe to Thread
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes