Sau
một thời gian dài tìm hiểu, mình đã tổng hợp được một số cách mod lại
FW cho Symbian S60 V5 (5233, 5230, 5800, x6, statio,….). Hôm nay mình
xin chia sẻ những công cụ và cách thức tạo ra những FW vừa ý.

Topic này mang tính chất giới thiệu, vì vậy rất mong được sự đóng góp của mọi người trong diễn đàn!

Một vài khái niệm cơ bản:

Mod
(hay chỉnh sửa) hệ điều hành là can thiệp vào các tập tin/ thư mục hệ
thống để chỉnh sửa nó, làm nó khác đi (tốt hơn) so với hệ điều hành gốc
mà Nokia đã thiết lập.

Có nhiều cách Mod hệ điều hành như chỉnh sửa các file text (thực chất là file cấu hình) trong C:\(Z:\)private\10202be9, Patch với Rompatcher, Thêm file thực thi vào sys\bin, chỉnh sửa trực tiếp vào ROM rồi Flash,v..v.. và rất nhiều cách khác

Cook ROM
(hay Mod ROM, chế ROM, Cook Firmware,v..v..) là Mod/can thiệp trực tiếp
vào file Firmware để khi Flash (nôm na là chạy hệ điều hành) máy, chúng
ta có một hđh đã được Mod theo ý thích, ko phải làm thủ công lại mỗi
khi Flash/Hard Reset máy.

Thực hiện

Máy thử nghiệm: Nokia 5233

Bộ công cụ cần thiết: - [You must be registered and logged in to see this link.]
- [You must be registered and logged in to see this link.] ( hoặc [You must be registered and logged in to see this link.])
[You must be registered and logged in to see this link.] (bản này do mình tự cook, ưu điểm là tận dụng tối đa sức mạnh hệ thống, rất nhanh và nhiều hiệu ứng đẹp )

1. Hack Firmware:

Cài đặt Nokia PC Suit


Cài đặt JAFSetup_1.98.62


Copy
toàn bộ các file trong FW-goc-cua-5233 vào C:\Program
Files\Nokia\Phoenix\Products\RM-625 (phần gạch chân nếu chưa có thì bạn
tạo các Folder tương ứng) (chú ý: đây là FW dành riêng cho 5233-BB, với
các máy khác bạn có thể dùng Navifirm V3.0 để tải về)


Giải nén Nokia Editor


Bc 1:
Trong giao diện Nokia Editor, chọn Open rồi dẫn đến file C:\Program
Files\Nokia\Phoenix\Products\RM-625RM-625_21.1.004_prd.rofs2.V20 (nên
sao lưu file này ra chỗ khác trước), nhấp nút Open rồi nhấp Extract để
giải nén file RM-625_21.1.004_prd.rofs2.V20 (thường được gọi tắt là
rofs2). Sau khi chương trình giải nén xong sẽ có giao diện như sau và
các file được giải nén lưu trong thư mục NokiaEditor Beta7\rofs2:

hướng dẫn mod/cook Firmware cho S60 V5 toàn tập. 1

Bc 2: Trong folder bo-cong-cu-cook-FW, các bạn cài đặt Teracopy (chương trình sẽ hỗ trợ cho bạn rất nhiều trong việc Cook firmware)

Bc 3:
Trong folder bo-cong-cu-cook-FW, giải nén file RomPatcherPlus_2.3.rar
sẽ được 3 thư mục (private, resource, sys). Chép 3 thư mục đó vào thư
mục rofs2. Xong ấn Repack trong giao diện Nokia Editor 0.7 để đóng gói
lại. Sau khi chương trình đóng gói xong sẽ có giao diện như sau và sẽ
có thêm 1 file REB- RM-625_21.1.004_prd.rofs2.V20 trong thư mục
NokiaEditor Beta7. Sửa tên file đó bằng cách xóa đi "REB-", ta được RM-625_21.1.004_prd.rofs2.V20. Chép đè file này vào C:\Program Files\Nokia\Phoenix\Products\RM-625

hướng dẫn mod/cook Firmware cho S60 V5 toàn tập. 2

hướng dẫn mod/cook Firmware cho S60 V5 toàn tập. 3
Bc 4:
Tiếp đến là cài đặt (còn gọi là flash) firmware sau khi được cook (còn
gọi là CFW - Cooked Firmware, trong trường hợp này bạn đã và đang cook
file hack vào firmware). Chú ý: trước khi flash firmware, máy tính của
bạn phải được cài Nokia PC Suit (hoặc Nokia Ovi Suite) và kết nối điện
thoại

bạn có thể tìm hiểu thêm về cách flash FW [You must be registered and logged in to see this link.]

Bc 5:
Giải nén file Patches.rar trong bo-cong-cu-cook-FW.rar vào thẻ nhớ. Mục
Ứng dụng trong điện thoại sẽ có thêm chương trình Rompatcher. Bạn bật
nó lên vào apply các patch Open4all và InstallServer bằng cách nhấp đôi
vào chúng. Nếu các patch đã được apply sẽ đổi sang màu xanh lá

hướng dẫn mod/cook Firmware cho S60 V5 toàn tập. 4
2. Thêm ứng dụng vào firmware:

Việc thêm các ứng dụng vào FW có tác dụng giữ nguyên những gì ta đã cài đặt mặc dù ta có thực hiện hardreset!

Bc 1: Chọn ứng dụng cần thêm. List ứng dụng có thể cho vào FW
- Bộ patches gồm 30 file rmp
- Ứng dụng App uid viewer
- Ứng dụng Auto Installer
- Ứng dụng BT Switch
- Ứng dụng Bat Unistaller
- Ứng dụng x-plore
- Ứng dụng Free Unrar
- Ứng dụng Google Maps 4.1
- Ứng dụng Kill Me
- Ứng dụng Mem Check
- Ứng dụng Panoman
- Ứng dụng Phonetorch 2.0
- Ứng dụng Screensnap
- Ứng dụng Youtube
- Ứng dụng Pocket Sensor VH by kienvp
- Offscreen Checkers
- Offscreen Minesweeper
- Skyfire:
- Mobilesigner
- i-Nigma
- Smartlight
- Lightsignalplus
- The Pencil
- SMSdiary
- Handytaskman
- Freeunrar
- Gravity
- Plantasks
- RescoViewer
- Autorama
- Photobrowser
- NetworkSwitcher
- LightCtrl
- Nokia custom dict
- Minispeaker
- Jbaktaskmanr1.18
- Airport touch
- Marble maze
- Solitaire s60 1.1
- Nokia mapsiseditor
- Symsmb4.0
- Video editor
- Battery life 1.15
- ActiveFile V1.44
- Viva Conversation
- Greencharging



Có thể còn các chương trình khác nữa, nếu bạn có phát hiện thì báo cho mình biết để update nhé

Bc 2: Giải nén rofs2 như ở Phần 1 bên trên
Bc 3: Giải nén file vừa tải về. Chép các thư mục vừa giải nén vào thư mục rofs2
Bc 4: Nén lại file Rofs2 rồi flash.

Chú ý: Đa
phần chúng được bung từ file .sis ra. Ngoài các chương trình trong hình
trên, còn có các chương trình khác có thể cook vào firmware nhưng chúng
hiển thị dưới dạng file .sis, chưa được bung sẵn. Sau đây mình sẽ hướng
dẫn các bạn cách bung 1 file .sis nhanh chóng để cho vào firmware:


Bc 1: Mở file Sisware 4.7 trong bo-cong-cu-cook FW và cài đặt. (Chú ý: sau khi cài đặt không được nâng cấp lên phiên bản 4.8 dù có hiện bảng thông báo nâng cấp).
Bc 2: Chạy Sisware và Open file .sis cần bung

hướng dẫn mod/cook Firmware cho S60 V5 toàn tập. 5

Bc 3: Vào Extras ->Configurations, Bỏ chọn dấu check ở dòng "Prompt to sign..." rồi nhấn OK

hướng dẫn mod/cook Firmware cho S60 V5 toàn tập. 6
Bc 4: Vào Tool -> Extract SIS File -> Extract All File để bung file Sis ra
Bc 5: Chọn View All từ bảng mới hiện ra để hiển thị các file vừa bung. Các file .sis vừa bung sẽ được lưu trong C:\Program Files\CequenzeTech\SISWare4.7\bin\

hướng dẫn mod/cook Firmware cho S60 V5 toàn tập. 7
Bc 6: Chép các file vừa bung vào thư mục Rofs2.

3. Cài đặt các mod đơn giản vào firmware:

Thay đổi hình Gif và âm thanh lúc khởi động máy


Bc1: bạn vào theo đường dẫn sau: \private\10202be9\101F8763.txt
Code của 101F8763.txt:
cenrep
version 1
[owner]
0x100058F4
[defaultmeta]
0
[platsec]
cap_rd=alwayspass cap_wr=WriteDeviceData
[Main]
0x2 int 6 0 cap_rd=alwayspass cap_wr=alwaysfail
0x3 string "z:\\boot\\startup.mp3"
.................
0xD string "z:\\boot\\startup.gif"
.................



Bc2:
cái chỗ bôi đen là đường dẫn bạn cop file âm thanh và file hình vào
(chú ý: tên âm thanh và hình phải đúng khuôn mẫu trên nhé! )

Thay đổi âm lượng khởi động


Bc1: bạn vào theo đường dẫn sau: \private\10202be9\101F8763.txt
Code
cenrep
version 1
[owner]
0x100058F4
[defaultmeta]
0
[platsec]
cap_rd=alwayspass cap_wr=WriteDeviceData
[Main]
0x2 int 8 0 cap_rd=alwayspass cap_wr=alwaysfail
..............



Bc2: trên dòng “0x2 int 8 0 cap_rd=alwayspass cap_wr=alwaysfail” bạn có thể thay đổi số 80 bằng các giá trị nguyên từ 00 cho đến 99

Sửa lỗi rung phản hồi V5


Bc1: bạn vào theo đường dẫn sau: \private\10202be9\2000B494.txt
Bc2: copy đoạn code này vào file
Code:
cenrep
version 1
[owner]
0x2000B494
[defaultmeta]
16777216
[platsec]
cap_rd=alwayspass cap_wr=WriteDeviceData
[Main]
0x1 int 2 16777216 cap_rd=alwayspass cap_wr=WriteDeviceData
0x2 int 0 16777216 cap_rd=alwayspass cap_wr=WriteDeviceData
0x11 int 1 0 cap_rd=alwayspass cap_wr=alwaysfail
0x12 int 50 0 cap_rd=alwayspass cap_wr=alwaysfail
0x20 int 40 0 cap_rd=alwayspass cap_wr=alwaysfail
0x21 int 10 0 cap_rd=alwayspass cap_wr=alwaysfail
0x22 int 40 0 cap_rd=alwayspass cap_wr=alwaysfail
0x23 int 20 0 cap_rd=alwayspass cap_wr=alwaysfail
0x24 int 15 0 cap_rd=alwayspass cap_wr=alwaysfail
0x25 int 30 0 cap_rd=alwayspass cap_wr=alwaysfail
0x26 int 100 0 cap_rd=alwayspass cap_wr=alwaysfail
0x27 int 50 0 cap_rd=alwayspass cap_wr=alwaysfail
0x28 int 10 0 cap_rd=alwayspass cap_wr=alwaysfail
0x29 int 10 0 cap_rd=alwayspass cap_wr=alwaysfail
0x2a int 5 0 cap_rd=alwayspass cap_wr=alwaysfail
0x2b int 15 0 cap_rd=alwayspass cap_wr=alwaysfail
0x40 int 1100 0 cap_rd=alwayspass cap_wr=alwaysfail
0x41 int 1100 0 cap_rd=alwayspass cap_wr=alwaysfail
0x42 int 1100 0 cap_rd=alwayspass cap_wr=alwaysfail
0x43 int 10 0 cap_rd=alwayspass cap_wr=alwaysfail
0x44 int 10 0 cap_rd=alwayspass cap_wr=alwaysfail
0x45 int 10 0 cap_rd=alwayspass cap_wr=alwaysfail
0x46 int 20 0 cap_rd=alwayspass cap_wr=alwaysfail
0x47 int 40 0 cap_rd=alwayspass cap_wr=alwaysfail
0x48 int 60 0 cap_rd=alwayspass cap_wr=alwaysfail
0x49 int 1100 0 cap_rd=alwayspass cap_wr=alwaysfail
0x4a int 1100 0 cap_rd=alwayspass cap_wr=alwaysfail
0x4b int 1100 0 cap_rd=alwayspass cap_wr=alwaysfail
0x4c int 10 0 cap_rd=alwayspass cap_wr=alwaysfail
0x4d int 10 0 cap_rd=alwayspass cap_wr=alwaysfail
0x4e int 10 0 cap_rd=alwayspass cap_wr=alwaysfail
0x4f int 10 0 cap_rd=alwayspass cap_wr=alwaysfail
0x50 int 25 0 cap_rd=alwayspass cap_wr=alwaysfail
0x51 int 40 0 cap_rd=alwayspass cap_wr=alwaysfail
0x60 int 1002 0 cap_rd=alwayspass cap_wr=alwaysfail
0x61 int 1002 0 cap_rd=alwayspass cap_wr=alwaysfail
0x62 int 1002 0 cap_rd=alwayspass cap_wr=alwaysfail
0x63 int 1002 0 cap_rd=alwayspass cap_wr=alwaysfail
0x64 int 1002 0 cap_rd=alwayspass cap_wr=alwaysfail
0x65 int 1002 0 cap_rd=alwayspass cap_wr=alwaysfail
0x80 string "z:\\System\\Sounds\\Digital\\ui-pen_down04.wav" 0 cap_rd=alwayspass cap_wr=alwaysfail
0x81 string "z:\\System\\Sounds\\Digital\\ui-pen_down04.wav" 0 cap_rd=alwayspass cap_wr=alwaysfail
0x82 string "z:\\System\\Sounds\\Digital\\ui-pen_down04.wav" 0 cap_rd=alwayspass cap_wr=alwaysfail
0x83 int 10 0 cap_rd=alwayspass cap_wr=alwaysfail
0x84 int 30 0 cap_rd=alwayspass cap_wr=alwaysfail
0x85 int 50 0 cap_rd=alwayspass cap_wr=alwaysfail
0x86 string "z:\\System\\Sounds\\Digital\\ui-pen_down04.wav" 0 cap_rd=alwayspass cap_wr=alwaysfail
0x87 string "z:\\System\\Sounds\\Digital\\ui-pen_down04.wav" 0 cap_rd=alwayspass
cap_wr=alwaysfail
0x88 string "z:\\System\\Sounds\\Digital\\ui-pen_down04.wav" 0 cap_rd=alwayspass cap_wr=alwaysfail
0x89 int 5 0 cap_rd=alwayspass cap_wr=alwaysfail
0x8a int 10 0 cap_rd=alwayspass cap_wr=alwaysfail
0x8b int 25 0 cap_rd=alwayspass cap_wr=alwaysfa
il

Chuyển cache từ bộ nhớ máy sang thẻ nhớ


Bc1: bạn vào theo đường dẫn sau: \private\10202be9\101F8557.txt
Bc2: xóa toàn bộ code trong file .txt
Bc3: copy đoạn code sau vào file .txt rồi lưu lại

Code:
cenrep
version 1
[defaultmeta]
0
[platsec]

[Main]
0x1 int 1 0 cap_rd=alwayspass cap_wr=alwaysfail
0x2 int 4096000 0 cap_rd=alwayspass cap_wr=alwaysfail
0x3 string "e:\\system\\cache" 0 cap_rd=alwayspass cap_wr=alwaysfail
0x4 string "e:\\system\\cache" 0 cap_rd=alwayspass cap_wr=alwaysfail
0x5 int 300000 0 cap_rd=alwayspass cap_wr=alwaysfail
0x6 string "http://host53.nokia-boston.com/Cache_OpCache/Op_Menu.xhtml" 0 cap_rd=alwayspass cap_wr=alwaysfail
0x7 int 1 0 cap_rd=alwayspass cap_wr=alwaysfail
0x8 string "e:\\system\\cache\\vss" 0 cap_rd=alwayspass cap_wr=alwaysfail
0x9 int 3000000 0 cap_rd=alwayspass cap_wr=alwaysfail
0xA string "http://www.vodafone.com;http://172.19.188.193/browser;http://testsuite.nokia-boston.com" 0 cap_rd=alwayspass cap_wr=alwaysfail

Chỉ đọc nhạc tại E:\\ Music

Bc1: bạn vào theo đường dẫn sau: \private\10202be9 \101FFCD2.txt
Bc2: xóa toàn bộ code trong file .txt
Bc3: copy đoạn code sau vào file .txt rồi lưu lại

[Code]
cenrep
version 1
[owner]
0x101FFCD2
[defaultmeta]
0
[platsec]
cap_rd=alwayspass
[Main]
0x1 string "E:\\Music\" 0 cap_rd=alwayspass cap_wr=alwaysfail
0x2 string "\\SYS\\|\\PRIVATE\\|\\SYSTEM\\|\\CITIES\" 0 cap_rd=alwayspass cap_wr=alwaysfail
0x3 string ".odf|.dcf|.asf|.m4a|.mp4" 0 cap_rd=alwayspass cap_wr=alwaysfail
0x4 string "C:\\data\\download\\|E:\\data\\download\\|C:\\data\\sounds\\digital\\|E:\\sounds\\digital\\|E:\\download\" 0 cap_rd=alwayspass cap_wr=alwaysfail
0x5 int 0 0 cap_rd=alwayspass cap_wr=WriteDeviceData
0x6 int 1 0 cap_rd=alwayspass cap_wr=alwaysfail
0x7 int 2 0 cap_rd=alwayspass cap_wr=alwaysfai[code]

Những cách mod dưới đây các bạn chỉ cần download file đính kèm rồi xả nén vào mục rofs2


[You must be registered and logged in to see this link.] (đây là file cài đặt, các bạn có thể cài sau cũng dc)

[You must be registered and logged in to see this link.]

4. Thay theme mặc định:

Nếu
bạn cài 1 theme vào thẻ nhớ thì chúng sẽ mất đi khi bạn kết nối điện
thoại vào máy tính hoặc rút thẻ nhớ ra. Còn nếu bạn cài theme vào bộ
nhớ trong điện thoại thì chúng sẽ mất đi khi bạn reset máy. Để theme
bạn thích không mất trong bất cứ trường hợp nào thì chỉ còn cách Cook
vào firmware. Có vẻ giống với việc "Thêm ứng dụng vào firmware" nhỉ,
nhưng sự khác biệt là bạn chép theme vào file Rofs3 chứ không phải
Rofs2.




_ Các file này đều có thể tìm thấy trong C:\Program Files\Common Files\Nokia\DataPackage\Products\RM-625\
_ Chúng được can thiệp rất nhiều trong việc Cook firmware
_ Rofs2 chứa các file ngôn ngữ, các file tinh chỉnh hệ thống, hiệu ứng, Font chữ, màn
hình chủ....
_ Rofs3 chứa các file của Theme, hình nền mặc định của máy, file quy định Theme mặc định.
_ Dung lượng tối đa của Rofs2 là 32 MB, của Rofs3 là 13 MB
_ Rofs2 của các máy cùng tên khác màu không có sự khác nhau về tên. Ví
dụ: File rofs2 của Nokia 5233 B-B và 5233 W-R không có sự khác biệt về
tên, đều là RM-625_21.1.004_prd.rofs2.V20
_ Nếu trong rofs3 và rofs2 có file trùng tên nhau thì file trong rofs3 sẽ ghi đè lên file rofs2 trong lúc flash.
_ Rofs3 của các máy cùng tên khác màu có sự khác nhau về tên.
(tên của chúng chỉ khác nhau 1 chữ số)




Bc 1: Tìm đến file Rofs3 phù hợp với màu máy của bạn. (nên sao lưu file này trước)
Bc 2: Giải nén Rofs3 bằng Nokia Editor 0.7. (chú ý: xóa toàn bộ dữ liệu trong folder rofs2)
Bc 3: Xóa theme mặc định có sẵn trong Rofs3: vào resource\skins và xóa đi thư mục trong đó. Vào private\10207114\import và xóa đi thư mục trong đó.
Bc 4: Dùng sisware bung file Theme .sis ra và chép các folder Rofs2 (cái này giống phần thêm các ứng dụng vào FW)
Bc 5: Mở file private\10202BE9\101F876F.txt và tìm đến dòng 0x14. Sửa dãy ký tự trong dấu ngoặc kép thành UID của theme. (Chú ý: UID của theme là tên của thư mục nằm trong resource\skins hoặc private\10207114\import)

hướng dẫn mod/cook Firmware cho S60 V5 toàn tập. 8

Bc 6: Nếu không Cook gì thêm thì đóng gói lại và flash.

Một số hình ảnh themes đẹp! bạn có thể tải [You must be registered and logged in to see this link.](mình để file .sis cho các bạn thực hành nha)

hướng dẫn mod/cook Firmware cho S60 V5 toàn tập. Scr000001hướng dẫn mod/cook Firmware cho S60 V5 toàn tập. Scr000003
hướng dẫn mod/cook Firmware cho S60 V5 toàn tập. Scr000003hướng dẫn mod/cook Firmware cho S60 V5 toàn tập. Scr000004
hướng dẫn mod/cook Firmware cho S60 V5 toàn tập. Scr000005hướng dẫn mod/cook Firmware cho S60 V5 toàn tập. Scr000006
hướng dẫn mod/cook Firmware cho S60 V5 toàn tập. Scr000008hướng dẫn mod/cook Firmware cho S60 V5 toàn tập. Scr000009
hướng dẫn mod/cook Firmware cho S60 V5 toàn tập. Scr000010

Mẹo
nho nhỏ: ở cách mod file rofs3 này, chúng ta có thể tùy chỉnh tên
vesion của bản FW (VD: đặt tên là 21.1.004.honghai pham - HUT). Cái này
mình hiểu như là FW này mang “bản quyền” của riêng bạn vậy!

Cách làm: Vào thư mục ROFS3\resource\versions
Mở và sửa lại file customersw và fwid3

ví dụ:
CFW#1.by.honghai pham - HUT\n04-09-2010
id=customer
version=CFW#1.by.honghai pham - HUT


5. Cook thêm homescreen:

1. 5 Homescreen: Navigation bar, Full page, Contacts bar, Basic, Finger Use (lần lượt từ trái qua trong hình)

hướng dẫn mod/cook Firmware cho S60 V5 toàn tập. 10
hướng dẫn mod/cook Firmware cho S60 V5 toàn tập. 10-1
hướng dẫn mod/cook Firmware cho S60 V5 toàn tập. 10-2
Bc 1: giải nén file rofs2
Bc 2: Tải [You must be registered and logged in to see this link.] về và giải nén được thư mục 10207254
Bc 3: Chép đè thư mục 10207254 vào rofs2\private.

2. Vodaphone và Orange: (lần lượt từ trái qua phải trong hình)

hướng dẫn mod/cook Firmware cho S60 V5 toàn tập. 11

Trên thực tế có thể sẽ khác icon

Bc 1: Tải [You must be registered and logged in to see this link.] và giải nén được thư mục Orange Voda
Bc 2: Chép tất cả các thư mục trong thư mục Orange Voda vào thư mục Rofs2
Bc 3: Nếu không cook gì thêm thì đóng gói lại và flash.


Trên đây chỉ là một vài cách tạo ra những bản FW của riêng mình! Rất mong anh em đóng góp ý kiến xây dựng nhé!