How do i make a ROM from scratch??? - myTouch 3G, Magic Android Development

Sup guys im sorry for such a noob question on a developer forum
but i was just wondering how to make one from scratch or modify one
especially for the MyTouch3G.
So far i've followed MLIGN's video on YouTube on
"How To: Set Up AndroidSDK and Sign Android ROMs"
http://www.youtube.com/watch?v=IqVCp3DHSkU
but idk what to do next or how to get started. So far i'm using
SenseHeroV1.4 with 10MB RAM hack and i sorta added the Nexus bootanimation.
anywayz i would greatly appreciate it if anyone can share some ideas/knowledge.
i kno if this question sounds stupid plz don't post anything negative.
i'm just trying to get started with making ROMs aiiite pz
GoogleTalk: [email protected] <---great way to get intouch wit me
or email
ps.i kinda went smiley crazy with the post sry. arghhh gotta get bak to studying for finals.

well, from what i understand, nobody actually builds their own ROM "from scratch"...
what I do know, is that the custom ROMs are built by modifying the existing ROMs, like android 1.5 (cupcake) and 1.6 (donut) and 2.0 (eclair) (somebody correct me if i'm wrong)
you get the source code for those ROMs, and you tweak them to your liking or design
the source codes are available, and often they are available as the customized versions for certain phones (i've seen the HERO eclair, for instance)
some people actually extract these ROMs from a phone and then manipulate it
without at least a good understanding of LINUX, this would be a monumental research assignment for you that i would say, could take years
good luck bro

Related

A noob needs a bitta HALP and minor decrypting :3

Well, I've recently got a Touch Pro from my brother and it's a lovely new thing to toy with, especially a windows based phone. Having owned other more 'simpler' phones, this is a lovely breath of fresh air :3 So I found out there are now better versions of Windows Mobile; 6.5. Well, anything better than 6.1 anyways.
So I cruised by the magical interwebs for a some info and I was redirected to these forums. Though only to be bombarded by a wall of [tags] that I honestly don't understand nor do I have a gist of. Basically; Lolwhut?
I've been searching around and I just need help with
|TP|6.5.5|WWE| ★ Energy Series (23554/21898) ★|Mar 30|★ Sense 2.1 / Titanium
I read the sticky, but sure, that's where stuff like the ROM or the language. In essence, I just wanna be able to distinguish what the fish it is that would be more suitable for my liking. Or at least the difference in them.
And also, could someone direct me to a very muchos dumbed down version?
P.S; Woot first post
Distinguish what fish it is? Well, I'm not so sure what you mean, but maybe you're talking about what the rom has to offer.
If so, then NRG posts a list of all the programs he use. Most of them are pretty self explanatory. I use the same ROM as above and I can tell you that they're all useful apps in one way shape or form.
Also, what is your main question in all this. Do you want help in how to flash a ROM? or do you need help trying to figure out which rom you like best?
Well, I just want to know how to differentiate the versions of releases by those chefs (as they're called I think) based on speed and stability.
In essence; yes, you can say that I do need help trying to figure out what's best.

[Q] Compile cyanogenmod for Backflip

Now that the Backflip's been rooted, I'm really hoping to get something fresher than 1.5 on this thing, and I'm not waiting for Moto's 2.1 update any longer. It seems like kernelzilla's made quite a bit of progress on a kernel
bit (dot) ly (slash) brWGPv (sorry, I'm new to XDA and can't post links yet)
Is there a way to download, incorporate this kernel, then compile and sign cyanogenmod to update the device? I'm new to hacking, but I'm comfortable around a command line, and I've written a couple Android apps myself.
I'm looking into that sort of thing right now, I've got lots of development experience but I'm new to kernel hacking too. I'm in the process of educating myself on the whole thing because I'm tired of waiting around when I'm smart enough to be actually making contributions to this. Kernelzilla suggested www.elinux.org and www.kernelnewbies.org as places to get educated on the linux kernel. The main problem is that with android your flashing and it can go horribly wrong, I'm playing with goldfish aka the emulator right now but it's not really the same. I'm actually thinking of switching to gentoo just to get some hands on experience that won't risk bricking anything lol
CM7 for backflip
brian515 said:
Now that the Backflip's been rooted, I'm really hoping to get something fresher than 1.5 on this thing, and I'm not waiting for Moto's 2.1 update any longer. It seems like kernelzilla's made quite a bit of progress on a kernel
bit (dot) ly (slash) brWGPv (sorry, I'm new to XDA and can't post links yet)
Is there a way to download, incorporate this kernel, then compile and sign cyanogenmod to update the device? I'm new to hacking, but I'm comfortable around a command line, and I've written a couple Android apps myself.
Click to expand...
Click to collapse
CyanogenMod is available for Backflip check my thread here.
Hit thanks if it helps ^_^

[Q] Porting the Honeycomb sdk - am i on the right track?

I understand that the sdk is nowhere near full featured, but now there are system dumps of the xoom, maybe helpful, right?
Well, i have never ported nor built a ROM before (done some theming and have no problem learning code). I came across these 2 port how-tos:
http://forum.xda-developers.com/showpost.php?p=11546129&postcount=76
http://android-dls.com/wiki/index.php?title=HOWTO:_Unpack,_Edit,_and_Re-Pack_Boot_Images
Is that all i really need to get HC to boot? The instructions seem extensive but not impossible or difficult.
Has anyone attempted this or gotten HC to boot on the g-tablet? I'm willing to take a crack at it if a dev could tell me whether i'm on the right track with the tutorials or do i need more knowledge.
When it comes to ROM building/porting, i gotta start somewhere. I've been around these forums for years and its about time I attempt to return the favor (hopefully without bricking my device lol)
Thanks in advance.
If this post needs to be moved, i'm sorry mods, but i figured this is strictly a development question.
Feel free to attempt it. There are people working on it and have come to the conclusion that source is needed plus a couple files from nvidia.
IMO porting the sdk is a complete waste of time tho. You would be much better starting off with a rom that will compile like froyo rather than starting with something that doesnt work yet
thebadfrog said:
Feel free to attempt it. There are people working on it and have come to the conclusion that source is needed plus a couple files from nvidia.
IMO porting the sdk is a complete waste of time tho. You would be much better starting off with a rom that will compile like froyo rather than starting with something that doesnt work yet
Click to expand...
Click to collapse
thanks for the insight. You're right, maybe froyo would be a good place to start so i could get used to the process on something that will compile. I'll probably give it shot in the next couple of days.
jump on the irc channel. freenode channel #tegratab. Lots of help and a willingness to help those that want to learn. I've compiled cm7 several times myself. Not my cup of tea but it was interesting.

Making Roms....

This maybe premature but I figured I would throw it out there; is there any devs who could tell me about the skill level or difficulty level of making new roms or tweaking existing roms? I'm learning about java programming and using j creator and eclipse. I'm still new but I'm a fast learner. I want to help out the charge community by keeping an active dev. I'm still a time away from that but want more insight..... Please no sarcastic remarks.... Thanks.
Sent from my SCH-I510 using XDA App
I'm attempting to start teaching myself this as well. The advice I've gotten is to start ofs theming. That way you can break open the apks and see what's inside, get a feel for how to change things and reassemble packages without doing any major work, and then expand from there. I'm in the process of changing jobs and cities, but I'm going to start playing around with things after I get settled.
a lot depends on what you want to do
developing for oem skin (touchwiz roms in this case) is a lot different than aosp
aosp requires a lot of java knowledge, and depending on the phone can be somewhat easy (nexus phones source will boot without changes) to nearly impossible (this phone)
touchwiz roms require some basic tools (7zip, smali/backsmali, apktool, rom kitchens or terminal knowledge) as well as some smali knowledge and countless hours of just figuring stuff out
many of us got our start as themers, from which you (over time) gain knowledge on rom layouts, where things are located, xml/smali editing, making update.zips and updater-scripts, and the like
you dont *need* to necessarily use linux to work on tw roms, but it certainly helps imo...although most of the tools out there work in windows too
my suggestion?: download a stock rom and download a heavily modded one of the same build (infiniti/gummycharged) and compare them with kdiff and decompile the apks to get an idea of what was changed
its a good starting point
Sweet, thanks for the advice. I am learning java pretty quick but realistically it would probably be a year before I'm proficient. I also just added computer programming as a minor. I would like another phone, the nexus obviously, but I need to chill on buying phones. I love aosp- if that was possible that would be great, but getting started anywhere is good. Thanks for your help fellas.... I'll keep you all posted here on my progress...
I know that the java language will help-but comparing will help me get acquainted with android. So far I've learned everything from forums so this is a new direction...
Sent from my SCH-I510 using XDA App
For those following who may want this information. I had a response from imnuts in RootzWiki where I posted this same question. Here's what he said as well. He complemented the answers already given- I also followed up on a list of software to help get started.
http://rootzwiki.com/topic/11184-new-roms/
Thx for starting up this thread. I'm actually lookin into rom dev as well and this thread has some great starting blocks in it +1 for u dude

New to Android ROM dev, have much kernel/driver development experience. Need protips

Hi, I started researching and messing with custom ROM/Kernel development 3 weeks ago. I've successfully compiled the kernel for my s5 neo Exynos 7580/MALI 200 (no hardware acceleration yet but I'm a kernel developer and reverse engineer so I can get that working given enough time, and have chosen all the apps I want to include in my first ROM. I made the ROM into and Odin flashable image and bricked my phone because I didn't adjust for the differences between the s7 and the s5 neo's power requirements. I bought 3 more S5 Neo's though, fixed the kernel, and all 3 devices have been 100% stable for 3 days with some minimal usage to test all the features. I am a kernel/driver developer, and as of now have taken over a dozen kernel MOD's from other people's kernels, and applied them to mine. There are more mods I could extract and apply, but I don't care to add them because I don't think they suit the goals of my ROM.
I would like to know things that aren't documented or easy to find that I will have to work with as I progress in the complexity of ROM development. So most of my ROM right now is apps I extracted from other ROMs and the play store and f-droid. But I am a coder and am working on my own settings app is suited for my ROM, including providing all the functionality of the root requiring apps I have installed now, also, I have about $80 of premium paid apps in my current setup, and want to put all the things they do into my custom settings app. I eventually plan on turning this into an android fork but for now, I'm starting out with baby steps to learn at a pace I can handle without overloading myself.
Please, any ROM/Kernel/App developers provide me any things you have learned from experience that I can't find on google and will be useful to know for my project.
Also, I have 2 questions. A) is UBER GCC better than Samsung eabi GNU compiler collection compilers?
B) Is deodexing really so good? because I've looked at the pros and cons and I don't think deodexing is worth the tradeoffs, but I feel like there's a reason almost every custom ROM does it. I know the tools to deodex ROM's don't work on Samsung android or other not AOSP based ROMS, but I already wrote a python script that deodex's my phone perfectly, I tried it, but I wasn't happy with the differences in response time and boot time and I believe it was causing a lot more memory to be used although I'm not sure why. Is deodexing better than I think it is, or is it just the cool thing to do for people who don't know how it really works?
Links, tips, polite criticisms, are all welcome. Also, this is my first post and I'm pretty sure these forums are the only place I can find people with the skill level to do these things well or at all.
I see some very knowledgeable people post here so I hope they find my post and reply with some tips. I tried the Freenode android channels and they are all plebs. They actually made fun of me for claiming I could make a custom ROM for this phone, they said it's impossible, and in 3 hours I had a screenshot of my about device showing my own compiled kernel running on my phone, no mods, just proof this been stuff is doable. Then I told them off about pretending to be experts but really knowing nothing and calling me a fool because they are too ignorant, then I left all 3 Freenode android channels and came here. In the channel for android ROM's and rooting, 99% of them were people who needed help rooting their phone or installing a custom ROM, not people I can learn from and grow to become a member of their community like I hope to do here.
if you didn't stop reading by now because of tl;dr, thanks for taking the time to read my post and please respond if you have helpful info. I've already read all the stuff I can find from google and these forums, I'm looking for the tips that aren't documented or that I may have written off as not important.
-zerorax, AKA Will O
Also if anyone wants to join forces to help me, I'm open to contributions and will give credit for them where it is due.

Categories

Resources