Информация теоретического плана!
ПДС - адреса с 10010000 по 10020000
Значит наверно начну со структуры ПДС.
Тут все просто, сначала идет PDS_х0хх - это просто название и версия, может быть 2006,4001,4002 и т. д
затем сразу после этого идет метка FFFx(0 или 9), если 9 - активный ПДС, если 0 - не активный.
Дальше сами симы пошли....
название сима 4 байта, затем метка FFFх(9,0 или A). 9 -активный сим, 0 - не активный (не рабочий) или А - это сим активный не менялся ни разу.
После метки идет размер сима (4 байта) (во 2 версии ПДС нет размера, там приходиться ориентироваться на FFFx)....ну а потом сам сим длинной в размер. Потом следующий сим....
Симов много, всех их не рассказать. Есть таблица взятая из Радиокома
| IsFactor|Encrypte|Locked| Description
003A| | | | SEEM_GSM_CHECKSUM
003C| | | | SEEM_BATTERY_CHECKSUM
005F| | + | | SEEM_SUBSIDY_LOCK_GSM_HLR_TABLE
0079| + | + | | SEEM_ESN
0136| + | + | | SEEM_SUBSIDY_LOCK
0139| + | + | | SEEM_DFLT_SUBSIDY_LOCK
0145| | | | SEEM_SBCM_BATT_DATA_DFLTS
015B| | + | | SEEM_SUBSIDY_LOCK_GSM_HPLMN_LIST
015C| | + | + | SEEM_SUBSIDY_LOCK_GSM_SSCP
015D| | + | + | SEEM_SUBSIDY_LOCK_GSM_NWSCP
015E| + | + | | SEEM_SUBSIDY_LOCK_GSM_VALID_PLMN_LIST
0161| | + | + | SEEM_SUBSIDY_LOCK_GSM_SIM_SP_CODE
0162| + | + | | SEEM_OTA_SUBSIDY_LOCK_CODE
0163| + | + | | SEEM_DFLT_OTA_SUBSIDY_LOCK_CODE
017B| + | + | | SEEM_SUBSIDY_LOCK_OTKSL_PASSWORD
0181| | | | SEEM_DFLT_DISPLAY_SETTINGS
0184| + | + | | SEEM_INTIAL_PHONE_LOCK_CODE
0185| + | + | | SEEM_SUBSIDY_LOCK_SOC_TABLE
0186| + | + | | SEEM_SUBSIDY_LOCK_BIT_AND_CLR_SSD_BIT
0189| | + | + | SEEM_SUBSIDY_LOCK_SECONDARY_SP_CODE
01BB| | + | + | SEEM_SERVICE_PASSWORD
01C1| + | | | SEEM_IN_FACTORY
01C3| | + | | SEEM_GLOBAL_FEATURE_PROTECTED_STATE_NVM
01C4| | + | | SEEM_GLOBAL_FEATURE_PROTECTED_STATE_DEFAULT_NVM
01C5| | + | | SEEM_GLOBAL_FEATURE_PROTECTED_VALUE_NVM
01C6| | + | | SEEM_GLOBAL_FEATURE_PROTECTED_VALUE_DEFAULT_NVM
01C7| | + | | SEEM_GLOBAL_PROTECTED_FLEX_TABLE
01F8| + | + | | SEEM_AIRTEL_LOCK_CODES
01F9| + | + | | SEEM_AIRTEL_UNLOCK_CODES
01FA| + | + | | SEEM_SUBSIDY_LOCK_3RD_SP_CODE
0279| | | | SEEM_ALL_EXT_DATA_SESS_TIME
028B| + | | | SEEM_FACTORY_HW_INFO
02D2| | | | SEEM_BOOT_SW_VER
02D3| | | | SEEM_BOOT_FLEX_MODEL
02DB| + | | | SEEM_DESENSE_MFN_DELTA
02DC| + | | | SEEM_DESENSE_CHANNEL_LIST
02E7| | ? | + | SEEM_PRODUCT_SECURITY_VERSION
02F1| | | | SEEM_RSSI_OFFSET
02F4| + | | | SEEM_RXLEV_REPORT_ENHANCEMENTS
02FB| + | | | SEEM_KEYPAD_MAX_ARRAY
02FC| + | | | SEEM_KEYPAD_MULTIKEY_MAX_COMMON_ROWS
02FD| + | | | SEEM_KEYPAD_ROW4_ARRAY
02FE| + | | | SEEM_KEYPAD_ROW4_FLAG
Is Factory - не меняются
Encrypted - зашифрованные (3DES)
Locked - золоченые (не считываются P2kSeem-ом)
Во второй версии ПДС есть еще два шифрованных сима (015F И 0160), они тоже зашифрованы. Но они не используются в 4 версии ПДС. И наоборот когда конвертишь и ПДС с 4 во 2 просто убираешь эти симы. Да, еще когда конвертишь ПДС с 4 во 2 надо убрать у всех симов "размер", этим ПДС и отличается
после каждого изменения в конец ПДС (после измененного сима) дописывается еще сим 29E - это чексум всех активных симов - считается вычитанием из FFFF содержимого всех активных симов "повордно".
например есть сим 00 0A FF F9 00 04 02 06 98 92
его рабочее значение - 02 06 98 92
тогда чексум будет равен FFFFh- 0206h - 9892h = 6567h
6567h - это чексум для этого числа, из него уже вычитаем содержимое следующего сима и т.п.
Задачи первого плана:
1)Определиться как и чем правильно слить ПДС.
2)Задачи второго плана как залить всё обратно.
3)Желательно найти методику без ТП.
Также ищется грамотный куратор в тему,естественно благодарностей будет масса!
ПДС - адреса с 10010000 по 10020000
Значит наверно начну со структуры ПДС.
Тут все просто, сначала идет PDS_х0хх - это просто название и версия, может быть 2006,4001,4002 и т. д
затем сразу после этого идет метка FFFx(0 или 9), если 9 - активный ПДС, если 0 - не активный.
Дальше сами симы пошли....
название сима 4 байта, затем метка FFFх(9,0 или A). 9 -активный сим, 0 - не активный (не рабочий) или А - это сим активный не менялся ни разу.
После метки идет размер сима (4 байта) (во 2 версии ПДС нет размера, там приходиться ориентироваться на FFFx)....ну а потом сам сим длинной в размер. Потом следующий сим....
Симов много, всех их не рассказать. Есть таблица взятая из Радиокома
| IsFactor|Encrypte|Locked| Description
003A| | | | SEEM_GSM_CHECKSUM
003C| | | | SEEM_BATTERY_CHECKSUM
005F| | + | | SEEM_SUBSIDY_LOCK_GSM_HLR_TABLE
0079| + | + | | SEEM_ESN
0136| + | + | | SEEM_SUBSIDY_LOCK
0139| + | + | | SEEM_DFLT_SUBSIDY_LOCK
0145| | | | SEEM_SBCM_BATT_DATA_DFLTS
015B| | + | | SEEM_SUBSIDY_LOCK_GSM_HPLMN_LIST
015C| | + | + | SEEM_SUBSIDY_LOCK_GSM_SSCP
015D| | + | + | SEEM_SUBSIDY_LOCK_GSM_NWSCP
015E| + | + | | SEEM_SUBSIDY_LOCK_GSM_VALID_PLMN_LIST
0161| | + | + | SEEM_SUBSIDY_LOCK_GSM_SIM_SP_CODE
0162| + | + | | SEEM_OTA_SUBSIDY_LOCK_CODE
0163| + | + | | SEEM_DFLT_OTA_SUBSIDY_LOCK_CODE
017B| + | + | | SEEM_SUBSIDY_LOCK_OTKSL_PASSWORD
0181| | | | SEEM_DFLT_DISPLAY_SETTINGS
0184| + | + | | SEEM_INTIAL_PHONE_LOCK_CODE
0185| + | + | | SEEM_SUBSIDY_LOCK_SOC_TABLE
0186| + | + | | SEEM_SUBSIDY_LOCK_BIT_AND_CLR_SSD_BIT
0189| | + | + | SEEM_SUBSIDY_LOCK_SECONDARY_SP_CODE
01BB| | + | + | SEEM_SERVICE_PASSWORD
01C1| + | | | SEEM_IN_FACTORY
01C3| | + | | SEEM_GLOBAL_FEATURE_PROTECTED_STATE_NVM
01C4| | + | | SEEM_GLOBAL_FEATURE_PROTECTED_STATE_DEFAULT_NVM
01C5| | + | | SEEM_GLOBAL_FEATURE_PROTECTED_VALUE_NVM
01C6| | + | | SEEM_GLOBAL_FEATURE_PROTECTED_VALUE_DEFAULT_NVM
01C7| | + | | SEEM_GLOBAL_PROTECTED_FLEX_TABLE
01F8| + | + | | SEEM_AIRTEL_LOCK_CODES
01F9| + | + | | SEEM_AIRTEL_UNLOCK_CODES
01FA| + | + | | SEEM_SUBSIDY_LOCK_3RD_SP_CODE
0279| | | | SEEM_ALL_EXT_DATA_SESS_TIME
028B| + | | | SEEM_FACTORY_HW_INFO
02D2| | | | SEEM_BOOT_SW_VER
02D3| | | | SEEM_BOOT_FLEX_MODEL
02DB| + | | | SEEM_DESENSE_MFN_DELTA
02DC| + | | | SEEM_DESENSE_CHANNEL_LIST
02E7| | ? | + | SEEM_PRODUCT_SECURITY_VERSION
02F1| | | | SEEM_RSSI_OFFSET
02F4| + | | | SEEM_RXLEV_REPORT_ENHANCEMENTS
02FB| + | | | SEEM_KEYPAD_MAX_ARRAY
02FC| + | | | SEEM_KEYPAD_MULTIKEY_MAX_COMMON_ROWS
02FD| + | | | SEEM_KEYPAD_ROW4_ARRAY
02FE| + | | | SEEM_KEYPAD_ROW4_FLAG
Is Factory - не меняются
Encrypted - зашифрованные (3DES)
Locked - золоченые (не считываются P2kSeem-ом)
Во второй версии ПДС есть еще два шифрованных сима (015F И 0160), они тоже зашифрованы. Но они не используются в 4 версии ПДС. И наоборот когда конвертишь и ПДС с 4 во 2 просто убираешь эти симы. Да, еще когда конвертишь ПДС с 4 во 2 надо убрать у всех симов "размер", этим ПДС и отличается
после каждого изменения в конец ПДС (после измененного сима) дописывается еще сим 29E - это чексум всех активных симов - считается вычитанием из FFFF содержимого всех активных симов "повордно".
например есть сим 00 0A FF F9 00 04 02 06 98 92
его рабочее значение - 02 06 98 92
тогда чексум будет равен FFFFh- 0206h - 9892h = 6567h
6567h - это чексум для этого числа, из него уже вычитаем содержимое следующего сима и т.п.
Задачи первого плана:
1)Определиться как и чем правильно слить ПДС.
2)Задачи второго плана как залить всё обратно.
3)Желательно найти методику без ТП.
Также ищется грамотный куратор в тему,естественно благодарностей будет масса!