I've decided to cook a rom. Cooking is such a silly word for it though (sorry but I mean really...)
Now here are my questions...
I've downloaded the 6.5 Kitchen that Josh has created. I'm a little fuddled (used to nsis and VB) so its a little odd thinking of things in a new way.
I want to get down in the dirt of the OS. I want to be able to change things at the very core, but there really is no guideline for 'what is what'. Its easy enough to include certain apps, and not others, but what about how windows functions? Where is the explanation of that?
Lets get this rom going. I'm sure its gonna be great. I'm used to creating large community based software projects (see http://www.mediaengine.org). I'm sure I can really get a good one going.
Please post with assistance on rom creation. I've googled and searched here, but I haven't found anything about what I want to learn.
You can change settings in the rgu files, pretty much the entire registry.
As for getting in and editing dll's and exe's, that's something I still need to learn.
What is this?
This is Taskbar Customizer! I have been watching several threads on customizing the taskbar icons and the end-results can be awesome. However, I keep running into several snags:
We have to replace DLLs with different versions which can potentially raise hell and may not work well on our different WM versions. Inconsistencies, incompatibilities, etc.
It's always one custom taskbar or the other, unless you manually customize, and I always want these icons from A, and those from B!
Manually customizing is a very tiresome job
There are no handy tools available for this specific purpose: "Nemo vir est qui mundum non reddat meliorem" (What man is a man who does not make the world better?)
And thus, I have decided such an application must be made. This is however easier said than done, and the primary problem is the best way to go at it and the information we need for it. Some icons are stored in resource DLLs, some are stored in BMPs, one resource DLL overrules the other, one image overrules the other, one package overrides the other. Different versions for different DPI's, etc.
What we need, is to figure out a proper system. I have thoughts about this, they are discussed further below.
Note that retrieving the right files from the device, patching them, un/resigning, putting them back, etc, is not an issue. Combinations of my own various tools do all this, and it will all be in Taskbar Customizer when done.
Who am I looking for?
Right now, I am mostly looking for the following people to join the discussion in this 'design phase' of Taskbar Customizer:
People with a lot of knowledge (and thus experience) in customizing the taskbar (tsowen and 12aon have already offered their full support, yay!)
People who may not be as knowledgeable but have multiple devices with different versions of WM and are willing to test and help research (and read well!)
Who we will need in the future (don't bother to post yet, just bookmark):
"Shredders" - people who can take the current taskbar packs, divide them into 'icon packs', and attribute the images to the right people
Testers
Who we definitely don't need at this stage:
Those who don't know what they are talking about meddling, asking questions we haven't arrived at yet, and generally be annoying
Anyone who can't call himself a dev and get away with it
My current thoughts on implementation
See next post.
Reference threads
These threads contain a wealth of useful information on the subject:
http://forum.xda-developers.com/showthread.php?t=424926 - FInixNOver (part 1/2)
http://forum.xda-developers.com/showthread.php?t=437307 - FInixNOver (part 2/2)
http://forum.xda-developers.com/showthread.php?p=3746654 - tsowen (the collection!)
http://forum.ppcgeeks.com/showthread.php?t=54514 - tsowen
http://forum.xda-developers.com/showthread.php?t=457173 - 12aon
http://forum.xda-developers.com/showthread.php?t=441829 - rickou26 (QVGA)
... and many more ... if you have some must-reads to suggest, please post them.
Notes
This is a full community project. It will never be a commercial thing. Full credit to all people involved. Let's make this **** happen!
Gotta say however, that the time I will have to spend on this project will be "hobby". As some of you may know I have many projects here on XDA, and also commercial projects that pay my rent. I will of course try to make the most of it with the time I have. However, a good functional release may be some time away.
Also, I've never started a 'design phase' thread before. I am complete unsure how well that work, or if the discussion will likely still be mostly in PM's, MSN, or through e-mail. Bare with us
Current implementation thoughts (June 8, '09)
Right! This is pretty half-assed attempt at structuring my thoughts.
First, see this image. I know, it ain't much to look at, what you see in this screenshot is a number of resources from tsowen and co's taskbar v2.1 lite set out against a (smaller) number of original files from the CDMA Rhodium ROM.
There are several issues worth pondering.
Full pack vs. Category pack
How to divide the icons from eachother. Do we use full "tsowen's Taskbar X" packs and then customize from there, or do we really divide into categories (better, but more work for devs?). For example "johnny's ActiveSync icon pack" and "harry's GSM icons". I would say that if the latter will be done, so should the former (but not the other way around). If we do make 'category packs' and selectors, it will take a lot of work to create these. We would need to very finely define which icon is what in which file.
If we do category, there should be careful though and research about which category to make and which icons belong to them.
Duplicates and various WM versions
Going through a lot of resource DLLs and the likes, and noticing (among others) tsowen's post about WM6.5 and various posts about different OEM packages, it seems there are many duplicates and overrides.
For example, on many HTC WM6 we have phcanoverbmp, which contains a lot of HTC customized images which override the shellres images. However in WM6.5 it seems shellres is used as primary again.
How can we best solve this? From what I have looked at myself, one could directly translate between various shellres icon id's and phcanoverbmp icon id's (this is true for multiple packages/resource DLLs IMHO). As example (these are fictional), shellres:1-10 may correspond to phcanoverbmp:41-50. So I think we should 'alias' them. If shellres:1 is changed, than we also change phcanoverbmp:41 (of course, assuming this file exists). I think that we should use shellres as base in this case.
Then ofcourse there is also direct file alias. Some ROMs have shellres, others have shellres.dll.<language-id>.mui. These should be defined as 'alias' also, and the application should look for whatever is actually on the device and patch that.
Now again is the question, how exactly do we do this? Would it be better to create a different 'name' for every icon? For example, wifi_on_no_network=shellres:20=phcanoverbmp:97, or could we better do phcanoverbmp:97=shellres:20 ? I personally think the former, but it will be more research and more work (but hopefully other people will help).
Some of these 'alias' will also include copying BMP or PNG files (like bluetooth icons).
Battery
Another point of thought is battery. Different packs have a different number of battery icons and require different drivers to be compatible. How do we solve this?
Saving and distributing
However we do the above, IMHO there should be a function to save your creation based on other people's 'packs' and/or your own custom icons so these can be posted on XDA (or geeks, or wherever) and then opened by Taskbar Customizer again so it will modify your device with this pack. The 'save' would then include the required data and icons and the 'load' would retrieve relevant files from your device, patch them, and put them back.
"Copyrights"
As obviously most of the customizers will release their packs to the world, royalties and such would be nonsense. However, I do think every pack should have a 'copyright' notice, and when you 'apply' your combinations of packs (or 'load' this from a pack somebody distributed) you should see a notice containing the names (and optionally donation links?) of all the people who contributed images and the final 'author' of the pack. If all the original packs for Taskbar Customizer just contain a simply one-liner about who made the icons, this can be automated.
Backup/restore
It goes without saying that any file and registry changes by the app should be backed up and able to be restored.
Notes
Please discuss and suggest about the above! But if you post please clearly describe what you are talking about, posting that you agree with my or somebody else's thoughts about it are also good, because this shows which idea has the best following. Offering detailed specifics is always welcome.
-- I'll take this one --
-- This one too! --
-- Last one, I promise --
I'm done for now
Oooh... Shiny...
I'm willing to help with development stuff...
And also testing stuff.
Reporting for duty! Okay I am in guys as well and will try to drag my bro 12aon as well, also maybe see if Crazylilboy, Darklord69, bilbobrian and FInixNOver just to name a few if they might want to help. Also I have a sperate Wm 6.5 taskbar thread as well http://forum.ppcgeeks.com/showthread.php?t=65911 for the one here I just combined the two and call them the collection which you have linked.
As I see it the process might be challenging due to ROM differences. Right now I find that WM 6.5 is be cooked many different ways and this is what is causing many conflicts with some of the custom icons.
Edit: Forgot my main guys from ppcgeeks Brock and gadgetfreak. I invited them, both have mad taskbar skills.
count me in! Ill do what i can
I could never turn down a good challenge. Fair warning, while I can blast my way through a dll, It's been a long, long time since I have done any coding, and that was Unix based GIS stuff. So with my backside sore from Tsowen's not so subtle kick in the pants to head over here, cound me in too!
AKA: Gadgetfreak
Good to see you guys here (seems our timezones are not very compatible, though )
Don't worry Gadgetfreak, I can do the coding, it's more the 'how do we pull it off part' that is the question. Obviously we want it to work for everybody regardless of ROMs and packages
Perhaps we should start with creating a breakdown of exactly which icon is what, so we can match the various locations they may be up with eachother? Also what are the exact differences between GSM and CDMA? So far as I see now that instead of phcanoverbmp cdma_rssi_ppc is used for connection icons... and in WM6.5 both go back to shellres again?
(edit) Also, where are the signal bars in GSM ?
(btw tsowen I just noticed in your v2.1 lite one of the 3G icons says E instead of 3G )
Example definitions file:
Code:
[alias]
shellres=shellres.%DPI%.dll,shellres.%DPI%.dll.%LANG%.mui
outres=outres.%DPI%.dll
tapres=tapres.%DPI%.dll
tshres=tshres.%DPI%.dll
notify=notify.dll.%LANG%.mui
[shellres]
4609=start:icon
4677=wifi:connected
4712=wifi:ani_connecting_01
4713=wifi:ani_connecting_02
4714=wifi:ani_connecting_03
4715=wifi:ani_connecting_04
4716=wifi:ani_connecting_05
4717=wifi:ani_connecting_06
4718=wifi:ani_connecting_07
4719=wifi:ani_connecting_08
4720=wifi:ani_connecting_09
4721=wifi:ani_connecting_10
5071=speaker:bluetooth_headphones
5072=speaker:on
5073=speaker:vibrate
5074=speaker:off
[HTCVolumeControl.dll]
129=speaker:on
130=speaker:off
131=speaker:vibrate
[phcanOverbmp.dll]
80=wifi:connected
81=wifi:ani_connecting_01
82=wifi:ani_connecting_02
83=wifi:ani_connecting_03
84=wifi:ani_connecting_04
85=wifi:ani_connecting_05
86=wifi:ani_connecting_06
87=wifi:ani_connecting_07
88=wifi:ani_connecting_08
89=wifi:ani_connecting_09
90=wifi:ani_connecting_10
160=speaker:on
161=speaker:vibrate
162=speaker:off
This is an example of how it could be done. Multiple values in multiple files have the same definition, so the program can detect if you override one, it will also have to do the others (obviously there will also have to be something for the bmp/png files occasionally used).
However, obviously it will take a lot of work to get every icon 'defined' like this (however I do think it is the best way), and careful examination of these icons actually belong together.
The test app I'm working on may help a little in this - see screenshot here - it's what I used to figure out the 'code' above.
Thoughts?
Impressed
I have to say I'm impressed that such an ambitious project is being undertaken. Whilst we all know developers on this site do an excellent job, their focus seems to be sometimes limited to new ROMS, or different Rom version etc......
I have recently posted something similar asking for some new apps and the like which are compatible with "any HTC Tocuh HD" configuration regardless of ROM, which I believe is exactly what you are intending to do.
I applaud each and every one of you for attempting this...if only I had some developmental skills to offer but sadly my only claim to fame is that I can use a Touch HD
This is exactly what I was looking for. If u need, me and my Kaiser are ready for testing.
Hi,
if you want I can send you the appropriate icon to QVGA, notably those of the battery and SIMpad
My TaskBar for QVGA -> http://forum.xda-developers.com/showthread.php?t=441829
@+
rickou26 said:
Hi,
if you want I can send you the appropriate icon to QVGA, notably those of the battery and SIMpad
My TaskBar for QVGA -> http://forum.xda-developers.com/showthread.php?t=441829
@+
Click to expand...
Click to collapse
Glad to have you with us When the time comes we'll definitely want the packs. I assume QVGA is 96 DPI and the icons are 16x16 for this?
Maybe there is an easier way to do this, ie in a complete taskbar replacement app, rather than an app to swap out the icons. I'm thinking that wisbar advanced does not swap any icons but replaces the entire taskbar. Just a thougt. no signing unsigning problem and all the images could just be jpg or png rather than .ico. You might just say "just use wisbar" but wisbar does all kinds of other things aswell, so an app that just replaced the taskbar would be much lighter on the system. It would hide the origional taskbar and draw in a whole new one. This would actually allow far more scope for much greater customisation.
I would definitely not call that an easier way to do it
As uniqueboy stated the application will have to be able to sign/unsign the dll's and some are in use such as the shellres so I am not sure how the program will temporary override this. Also another thing is the Diamond used the shellres.192.dll.0409.mui and the Touch pro uses the shellres.192.dll so the program would have to detect which one is being used. A list of all the icons is not hard and I can help work on the list the major dll's we are looking at are:
Code:
BT Discoverable.bmp
BT On Mode.bmp
BT Stereo Headset.bmp
CDMA_RSS_PPC.dll
GPS-icon.bmp
GPS-icon Mask.bmp
HTCVolumeControl.dll
notify.dll.0409.mui
outres.192.dll
pchanOvermbmp.dll
PictureMailRes.dll
shellres.192.dll
Stereo Headset.bmp
tapres.192.dll
tshers.192.dll
VoiceCmdRes.dll
WLMMessengerResources.192.dll
There are a few others for the Large Title Bar
Code:
LargeTitleBar.dll
HTCLTB.png
HTCLTB_320x240.png
notify.dll.0409.mui
NotificationManager.dll
MMSRes480x640.Dll
htcStartMenuService.dll
Chainfire said:
I would definitely not call that an easier way to do it
Click to expand...
Click to collapse
You definitely know best, but why not? I am thinking of a comparison with marshall's wait cursor app, the origional windows wait cursor images can just be replaced but it offers little scope compared to marshall's solution. Pre 6.5 roms could have transparent taskbars at last and some of the things which can't be customised such as the signal strength meter on gsm taskbars could be made nice and colourful, the X/OK button could also be changed and other indicators added such as memory or cpu activity.
Hi, as the title suggests. I'm overwhelmed with all the choices and would like to know where to search/start if I would want to fully customize my Touch HD, I've downloaded the manilla editor so far, and i see a few pages full of icons, themes, clocks etc. new manilla/old manilla, which I'm actually unsure about. I'm currently using the latest official HTC EU Blackstone rom, and am not sure weather it is worthwile upgrading it to something better, any suggestions ?, stabilty is what would be the deciding factor, or do I just just customize the existing 6.1 operating system with pimped out clocks /menus and themes ?, I'd like to be able to open calender and other WM menus without it looking like I'm stepping back in time as far as page layout and presentation, do I need a custom rom for this or is this just done with my existing rom, with a cab file ?. Oh, and is there any chance of me bricking the phone with messing around with these themes or is that just with reflashing the rom ?. I realise that some of these questions may seem obvious though, I'm a total noob at this, not stupid just a first timer. Any help would be much appreciated !!, Thanks in advance !!, Nick.
first, let me say welcome to the forms. like you, we were once in your shoes. my response is probably not what you want to hear, but i will give my opinion/suggestion anyway (thanks for reading).
my suggestion is to educate yourself on the common terms used in the forums (e.g., Manila, CFC, ROM, bootloader), browse/read the links in my signature, read the threads that will help you achieve your goals, read the stickies, ROM threads, etc. the info is there and it will take a while to absorb and understand. it's a bit unrealistic to think that we'll guide you through an entire process via posts to your help request thread. if you're willing to do the homework it will pay benefits (e.g., you'll be able to pimp/customize your device to your desire)!
since you have to start somewhere, pick a feature you want to learn/customize, read the stickies, understand the methods and tools (the first post of each tool thread contains reasonably good instructions), try it, once you've successfully completed the task move to the next subject (e.g., create manila backgrounds & icons and then move to flashing your device). if you run into problems ask for help in an appropriate thread/sticky and you'll likely get a faster response/answer.
in my opinion (and i'm not implying this is your perspective) to do the things you want to do can be overwhelming if you want to do it right now and quick. this my friend is a sure way to get yourself in trouble. if you're patient, you'll get there. members will help where they can.
you should also know that the moderators are trying to reign in the "help me/what's the best ROM/what's the best theme/how do i flash my device" threads that occur on a daily basis. so don't be disappointed if your thread is closed.
good luck and i hope you have fun along the way!
naa77 said:
Hi, as the title suggests. I'm overwhelmed with all the choices and would like to know where to search/start if I would want to fully customize my Touch HD, I've downloaded the manilla editor so far, and i see a few pages full of icons, themes, clocks etc. new manilla/old manilla, which I'm actually unsure about. I'm currently using the latest official HTC EU Blackstone rom, and am not sure weather it is worthwile upgrading it to something better, any suggestions ?, stabilty is what would be the deciding factor, or do I just just customize the existing 6.1 operating system with pimped out clocks /menus and themes ?, I'd like to be able to open calender and other WM menus without it looking like I'm stepping back in time as far as page layout and presentation, do I need a custom rom for this or is this just done with my existing rom, with a cab file ?. Oh, and is there any chance of me bricking the phone with messing around with these themes or is that just with reflashing the rom ?. I realise that some of these questions may seem obvious though, I'm a total noob at this, not stupid just a first timer. Any help would be much appreciated !!, Thanks in advance !!, Nick.
Click to expand...
Click to collapse
The first limiting/deciding factor on what and how much you can "pimp" your phone, is the rom you are using. You need to check which version you have (if stock it should be wm6.1 and then you also need to know what manila version you have.) To get your manila version, go to the Settings Tab in your manila and at the bottom under About it should show you (again on stock it may only be 1.xx)
You may want to start out with a few simple tweaks, such as adding taskbars and slider icons and a few wallpapers and clocks (most of which you can do via cabs available (these are then uninstallable). There are also some complete themes you can apply (even to stock) Dusk being one of them.
Taking a different slant, Id' probably spend a week flashing lots of different ROMs, to experience what's possible visually/program-wise. Try some 6.1s, some 6.5s, some Manilla 2.1s/2.5s/2.6(soon!) to see which types you favour, and many of the ROMs come with their own backgrounds/taskbars etc. etc.
You might find one that, with a little tweaking, is exactly what you want, or at least you might get some ideas for your own creation.
Good luck!
Hey Thanks !! , just needed a lil steering in the right direction. Will check out the links and have a go, (was just unsure about weather to go down the flash rom path first or change theme or touch flo first). I realised that there was a chance moderators could od deleted post but took the chance