E6 Mod Guide 1 ; โครงสร้างไฟล์ sbf (Firmware ของ E6)
รู้จักกับไฟล์ sbf
เฟิร์มแวร์ (Firmware จะใช้สัญลักษณ์ F/W) เป็นไฟล์ระบบปฏิบัติการของเครื่อง เทียบได้กับ windows ใน pc
สำหรับ E6 F/W ที่ใช้จะมีนามสกุลเป็น sbf (ซึ่งบทความนี้จะเรียกไฟล์ sbf ) การแก้ไข F/W จำเป็นต้องแตกไฟล์ .sbf ออกมา ซึ่งจะได้ไฟล์ .smg ก่อนเป็นอันดับแรก จากนั้นแตกไฟล์ .smg จะได้ไฟล์ข้อมูลที่นำมาแก้ไขได้
การเก็บไฟล์ข้อมูล Firmware ของ E6 จะแบ่งออกเป็นกลุ่มๆ ซึ่งเรียกว่า Code Group (หรือ CG) แต่ละ CG ก็จะเก็บข้อมูล Firmware แต่ละส่วนแยกกัน เช่น CG39 เก็บข้อมูลภาพนิ่งตอนเปิดเครื่อง หรือ CG41 เก็บข้อมูลเรื่องภาษา (ทั้งการแสดงผล การพิมพ์ และเมนู)
CG หนึ่งๆ จะถูก Pack รวมเป็นไฟล์ๆ เดียวซึ่งมีนามสกุลเป็น .smg ดังนั้นไฟล์ .smg 1 ไฟล์ ก็คือ CG 1 CG บางครั้งในบทความต่อไปนี้อาจเรียก CG ซึ่งหมายถึงไฟล์ .smg ที่มีชื่อขึ้นต้นด้วย CG
ไฟล์ .smg ที่แตกออกมาแล้วจะได้ folder ชื่อ Cramfs-root-CGxx โดยที่ xx คือหมายเลข ของแต่ละ CG
ไฟล์ .smg ที่สามารถแก้ไขได้ มีอยู่ 5 ไฟล์ คือ CG34.smg, CG41.smg, CG42.smg, CG43.smg และ CG39.smg
รายละเอียดของแต่ละ CG.smg มีดังนี้
CG34.smg เก็บข้อมูล เสียงเรียกเข้า, ภาพพื้นหลัง, โทนสี หรือ skin โปรแกรมต่างๆ (ไม่เกี่ยวกับโปรแกรมมาตรฐาน เช่น โปรแกรมควบคุมการโทรเข้า ออก , วิทยุ สมุดโทรศัพท์ จะไม่รวมอยู่ในนี้) โครงสร้างของ CG34 จะได้กล่าวในบทต่อไป ขนาดของไฟล์ CG34.smg ไม่เกิน 12MB เมื่อแตกไฟล์ออกมาแล้ว หากใส่ข้อมูลเพิ่มมากเกิน 12MB จะไม่สามารถ pack กลับได้ วิธีแก้ปัญหาที่พบบ่อยคือ ทำ link ไปหาโปรแกรม หรือข้อมูลไปที่ CG อื่นๆ
CG41.smg เก็บข้อมูลด้านภาษา (หรือ LP ; Language Pack) ทั้งภาษาในเมนูเครื่อง ภาษาในการอ่าน พิมพ์ และ font ที่ใช้ในเครื่อง บางครั้งจะมีบางโปรแกรมที่เกินมาจาก CG34.smg
CG42.smg เก็บข้อมูลการ config ค่าต่างๆ ของเครื่อง เครือข่ายข้อมูล edge/gprs
CG43.smg เก็บข้อมูลโปรแกรมหลัก เช่น โปรแกรมการโทรเข้าออก นาฬิกาปลุก กล้องถ่ายภาพนิ่ง/ภาพวิดีโอ วิทยุเอ็ฟเอ็ม และไลเบอรี่ที่จำเป็นต่างๆ ปกติแล้วผมจะไม่ค่อยยุ่งกับ CG นี้โดยไม่จำเป็น
CG39.smg เป็นที่เก็บไฟล์ภาพบูสเครื่อง (boot skin)
ไฟล์ภาพบูสเครื่องแบ่งเป็นสองส่วน คือ ส่วนภาพนิ่ง ซึ่งเป็นภาพแรกที่ปรากฏขึ้นหลังกดปุ่มเปิดเครื่อง ส่วนนี้จะอยู่ใน CG39.smg และส่วนภาพเคลื่อนไหว หรือ animation จะแสดงหลังจากภาพนิ่งภาพแรกปรากฏ (มีชื่อไฟล์ว่า on.gif) และแสดงตอนปิดเครื่องอีก 1 ภาพ (มีชื่อไฟล์ว่า off.gif) ภาพในส่วนนี้จะอยู่ใน CG34\animation