Перейти к содержанию
Old Phone Forum
  • Вход

    Вы сейчас не залогинены на форуме.

    Для возможности комментариев, загрузки файлов, подписок на ответы - вам надо войти.

Кодировки в телефоне.


Рекомендуемые сообщения

+CPBR: 3,"99999",129,"�OP…C",0..

 

2B 43 50 42 52 3A 20 33 2C 22 39 39 39 39 39 22

2C 31 32 39 2C 22 81 4F 50 85 43 22 2C 30 0D 0A

 

В кавычках записано слово "БОРИС". Что за кодировка юзается?

Изменено пользователем cr_az2
83276525.png
Ссылка на комментарий
Поделиться на другие сайты

Там написано не БОРИС, а

 

БOPЕC

 

, причем O, P, C - английские, т.е. слово это читается несколько странно.

 

А кодировка - OEM.

Мы рождены, чтоб сказку сделать пылью...

 

VishnyaSoft.com - мои программы и мидлеты для телефонов Samsung

 

Классификация телефонов Samsung

 

Угадай название телефона

Ссылка на комментарий
Поделиться на другие сайты

А может, тебе лучше почитать про WinAPI-функцию OemToChar ?

Оно так проще, чем вручную байты менять.

Мы рождены, чтоб сказку сделать пылью...

 

VishnyaSoft.com - мои программы и мидлеты для телефонов Samsung

 

Классификация телефонов Samsung

 

Угадай название телефона

Ссылка на комментарий
Поделиться на другие сайты

А вот еще интересная тема с X100. Вроде как телефон должен отдавать телефонную книгу в UTF-8. Но не тут-то было есть у мя один интересный телефон который начинает отдавать в UTF8 а заканчивает в какой-то другой кодировке.

 

Вот нормальный ответ в UTF8:

		 41 54 2B 43 50 42 52 3D 32 39 0D				  AT+CPBR=29.

		 2B 43 50 42 52 3A 20 32 39 2C 22 38 30 39 37 35   +CPBR: 29,"80975
		 30 39 36 32 33 38 22 2C 31 32 39 2C 22 D0 A2 D0   096238",129,"???
		 B0 D0 BD D1 8F 22 2C 22 22 2C 32 35 35 2C 22 22   °??N?","",255,""
		 2C 32 35 35 2C 22 22 2C 32 35 35 2C 22 22 2C 32   ,255,"",255,"",2
		 35 35 2C 22 22 2C 22 20 22 2C 30 2C 30 2C 30 0D   55,""," ",0,0,0.
		 0A

 

А вот начался изврат:

		 41 54 2B 43 50 42 52 3D 33 34 0D				  AT+CPBR=34.

		 2B 43 50 42 52 3A 20 33 34 2C 22 38 30 36 36 34   +CPBR: 34,"80664
		 32 37 31 30 33 39 22 2C 31 32 39 2C 22 E0 A2 AF   271039",129,"a??
		 22 2C 22 22 2C 32 35 35 2C 22 22 2C 32 35 35 2C   ","",255,"",255,
		 22 22 2C 32 35 35 2C 22 22 2C 32 35 35 2C 22 22   "",255,"",255,""
		 2C 22 20 22 2C 30 2C 30 2C 30 0D 0A			   ," ",0,0,0..

 

Что это за кодировка такая?

83276525.png
Ссылка на комментарий
Поделиться на другие сайты

Оказалось что это просто глюк прошивки XEED2 :( Когда в телефонной книге телефона и на сим-карте есть одинаковые имена оно начинает вот такие странные имена выдавать. И если зайти в телефонную книгу на самом телефоне - там пустые имена :laugh3:))

83276525.png
Ссылка на комментарий
Поделиться на другие сайты

Почему изврат? Все тот же OEM.

Мы рождены, чтоб сказку сделать пылью...

 

VishnyaSoft.com - мои программы и мидлеты для телефонов Samsung

 

Классификация телефонов Samsung

 

Угадай название телефона

Ссылка на комментарий
Поделиться на другие сайты

Почему изврат? Все тот же OEM.

Потому что, есть имя "Катя" которое возвращается как один знак вопроса. Фигасе OEM.

83276525.png
Ссылка на комментарий
Поделиться на другие сайты

Продолжаем играть в кодировки :laugh3:

 

D8 88 D1 A6 02 
  C4 84 П
E1 BC 84 у
E4 8C 84 с
E4 84 84 т
E4 88 84 ь
E4 B0 80 
E2 80 84 б
E3 84 84 у
E4 8C 84 д
E3 90 84 е
E3 94 84 т
E4 88 80 
E2 80 84 щ
E4 A4 84 е
E3 94 84 д
E3 90 84 р
E4 80 84 ы
E4 AC 84 м
E3 B0 80 
E2 80 84 Н
E1 B4 84 о
E3 B8 84 в
E3 88 84 ы
E4 AC 84 й
E3 A4 80 
E2 80 84 г
E3 8C 84 о
E3 B8 84 д
E3 90 80 ,

Есть вот такая смс-ка, опять же среди нормальных смс-ок в utf-8. Но чо это за трехбайтное кодирование?

 

Посмотрел в телефоне это длинная смс. Состоит из 2-х частей.

И там в начале идут какие-то символы:

D8 88 D1 A6 02

A6 - я так понимаю это размер кусочка смс т.е. 166 байт

02 - а это число кусочков.

 

А остальное что?

83276525.png
Ссылка на комментарий
Поделиться на другие сайты

C какой радости у тебя пробел принимает аж 4 разных значения?

Выложи сюда нормальный лог чтения смс и ее саму. Примерно как в 1 и 6 постах.

И причем тут кусочки?

Где-то ты не прав, мне кажется. Потому что 3 байта на букву не использует даже Unicode.

 

Да, можно топик переименовать в что-то вроде "Кодировки в телефоне. Помогаем читать rawdata"

 

 

----

переименовал.

cr_az2

Мы рождены, чтоб сказку сделать пылью...

 

VishnyaSoft.com - мои программы и мидлеты для телефонов Samsung

 

Классификация телефонов Samsung

 

Угадай название телефона

Ссылка на комментарий
Поделиться на другие сайты

41 54 2B 43 4D 47 52 3D 36 31 0D				  AT+CMGR=61.	 

0D 0A 2B 43 4D 47 52 3A 22 52 45 43 20 52 45 41   ..+CMGR:"REC REA
44 22 2C 22 2B 33 38 30 35 30 32 31 30 36 34 36   D","+38000000000
36 22 2C 20 22 30 22 2C 20 22 30 22 2C 2C 22 30   0", "0", "0",,"0
36 2F 31 32 2F 33 31 2C 32 31 3A 31 34 3A 31 35   6/12/31,21:14:15
2B 30 38 22 2C 31 34 35 2C 31 30 30 2C 39 34 2C   +08",145,100,94,
38 2C 22 2B 33 38 30 35 30 30 30 30 35 30 31 22   8,"+38050000501"
2C 31 34 35 2C 30 2C 31 2C 32 2C 31 33 39 0D 0A   ,145,0,1,2,139..
0D 0A D8 88 D1 A6 02 C4 84 E1 BC 84 E4 8C 84 E4   ..؈Ѧ.Ąἄ䌄ä
84 84 E4 88 84 E4 B0 80 E2 80 84 E3 84 84 E4 8C   „„䈄ä°?â?„ã„„äŒ
84 E3 90 84 E3 94 84 E4 88 80 E2 80 84 E4 A4 84   „ã„㔄äˆ?â?„䤄
E3 94 84 E3 90 84 E4 80 84 E4 AC 84 E3 B0 80 E2   㔄ã„ä?„䬄ã°?â
80 84 E1 B4 84 E3 B8 84 E3 88 84 E4 AC 84 E3 A4   ?„ᴄ㸄㈄䬄ã¤
80 E2 80 84 E3 8C 84 E3 B8 84 E3 90 80 E2 B0 84   ?â?„㌄㸄ã?â°„
E3 BC 84 E4 8C 84 E4 84 84 E4 88 84 E4 B0 80 E2   㼄䌄䄄䈄ä°?â
80 84 E3 B8 84 E3 B4 80 E2 80 84 E3 B4 84 E3 80   ?„㸄ã´?â?„ã´„ã?
80 E2 80 84 E4 84 84 E4 9C 84 E3 80 84 E4 84 84   ?�䄄䜄�䄄
E4 88 84 E4 B0 84 E3 94 80 E2 80 84 E3 B4 84 E3   䈄䰄ã”?â?„ã´„ã
94 80 E2 80 84 E4 84 84 E3 A8 84 E4 8C 84 E3 BC   ”?â?„䄄㨄䌄ã¼
84 E3 A0 84 E4 88 84 E4 84 84 E4 BC 80 E2 B0 84   „㠄䈄䄄ä¼?â°„
E3 BC 84 E4 8C 84 E4 84 84 E4 88 84 2C 35 33 38   㼄䌄䄄䈄,538
34 37 35 35 30 31 2C 32 0D 0A 0D 0A 4F 4B 0D 0A   475501,2....OK..


41 54 2B 43 4D 47 52 3D 36 32 0D				  AT+CMGR=62.	 

0D 0A 2B 43 4D 47 52 3A 22 52 45 43 20 52 45 41   ..+CMGR:"REC REA
44 22 2C 22 2B 33 38 30 35 30 32 31 30 36 34 36   D","+38000000000
36 22 2C 20 22 30 22 2C 20 22 30 22 2C 2C 22 30   0", "0", "0",,"0
36 2F 31 32 2F 33 31 2C 32 31 3A 31 34 3A 32 35   6/12/31,21:14:25
2B 30 38 22 2C 31 34 35 2C 31 30 30 2C 39 34 2C   +08",145,100,94,
38 2C 22 2B 33 38 30 35 30 30 30 30 35 30 31 22   8,"+38050000501"
2C 31 34 35 2C 30 2C 32 2C 32 2C 31 32 31 0D 0A   ,145,0,2,2,121..
0D 0A D8 88 D1 A6 02 C8 80 E2 80 84 E3 9C 84 E3   ..؈Ѧ.È?â?„㜄ã
80 84 E3 98 84 E3 A0 84 E3 8C 84 E3 80 84 E3 94   ?„㘄㠄㌄ã?„ã”
84 E4 88 80 E2 80 84 E3 9C 84 E3 88 84 E3 94 84   „äˆ?â?„㜄㈄㔄
E3 9C 84 E3 90 84 E4 AC 80 E2 80 84 E3 88 80 E2   㜄ã„ä¬?â?„ãˆ?â
80 84 E4 84 84 E4 80 84 E3 B8 84 E3 A8 80 E2 B0   ?„ä„„ä?„㸄ã¨?â°
84 E4 9C 84 E4 88 84 E3 B8 84 E3 84 80 E2 80 84   „䜄䈄㸄ã„?â?„
E3 88 84 E4 84 84 E3 94 84 E3 B0 80 E2 80 84 E4   ㈄䄄㔄ã°?â?„ä
88 84 E3 88 84 E3 B8 84 E3 A0 84 E3 B0 80 E2 80   ˆ„㈄㸄㠄ã°?â?
84 E3 98 84 E3 94 84 E3 AC 84 E3 80 84 E3 B4 84   „㘄㔄㬄ã?„ã´„
E4 B0 84 E4 BC 84 E3 B0 80 E2 80 84 E4 84 84 E3   䰄伄ã°?â?„ä„„ã
84 84 E4 AC 84 E4 88 84 E4 B0 84 E4 84 84 E4 BC   „„䬄䈄䰄䄄ä¼
80 2C 35 33 38 34 37 35 35 30 31 2C 32 0D 0A 0D   ?,538475501,2...
0A 4F 4B 0D 0A	 

 

Полный текст песаги:

Пусть будет щедрым Новый год,пусть он на счастье не скупится,пусть зажигает звезды в срок, чтоб всем твоим желаньям сбыться!

 

Знаки припинания соблюдены. Длина текста месаги в Ascii символах - 124.

Длина сообщения которую показывает телефон - 352.

 

p.s. уникод уникодом а телефон как хочет так и вернет.

83276525.png
Ссылка на комментарий
Поделиться на другие сайты

Да, это действительно трехбайтовое представление.

Только ты неправильно нашел начало. Надо так:

 

84 E1 BC П 041F
84 E4 8C у 0443
84 E4 84 с 0441
84 E4 88 т 0442
84 E4 B0 ь 044C
80 E2 80	0020
84 E3 84 б 0431
84 E4 8C у 0443
84 E3 90 д 0434
84 E3 94 е 0435
84 E4 88 т 0442
80 E2 80	0020

Третья колонка - юникод.

 

Конвертируем букву"П" в юникод:

"П" = 84 E1 BC = 041F

(первый байт) $84 - $80 = $04 (первый байт юникода)

(второй байт) $E1 - $E0 = $1 (старший полубайт второго байта юникода)

(третий байт) $BC - $80 = $3C, $3C div 4 = $F (младший полубайт второго байта юникода)

 

Конвертируем букву"у" в юникод:

"у" = 84 E4 8C = 0443

(первый байт) $84 - $80 = $04 (первый байт юникода)

(второй байт) $E4 - $E0 = $4 (старший полубайт второго байта юникода)

(третий байт) $8C - $80 = $C, $C div 4 = $3 (младший полубайт второго байта юникода)

 

 

Ничего интересного. Код писать не хочется. Будет время, добавлю в свой TextConverter.

Мы рождены, чтоб сказку сделать пылью...

 

VishnyaSoft.com - мои программы и мидлеты для телефонов Samsung

 

Классификация телефонов Samsung

 

Угадай название телефона

Ссылка на комментарий
Поделиться на другие сайты

Спасибо. Вот код

//X500 example
unsigned char X500_Str[202] =
{
	0xD8, 0x88, 0xD1, 0xA6, 0x02, 0xC4, 0x84, 0xE1, 0xBC, 0x84, 0xE4, 0x8C, 0x84, 0xE4, 0x84, 0x84, 
		0xE4, 0x88, 0x84, 0xE4, 0xB0, 0x80, 0xE2, 0x80, 0x84, 0xE3, 0x84, 0x84, 0xE4, 0x8C, 0x84, 0xE3, 
		0x90, 0x84, 0xE3, 0x94, 0x84, 0xE4, 0x88, 0x80, 0xE2, 0x80, 0x84, 0xE4, 0xA4, 0x84, 0xE3, 0x94, 
		0x84, 0xE3, 0x90, 0x84, 0xE4, 0x80, 0x84, 0xE4, 0xAC, 0x84, 0xE3, 0xB0, 0x80, 0xE2, 0x80, 0x84, 
		0xE1, 0xB4, 0x84, 0xE3, 0xB8, 0x84, 0xE3, 0x88, 0x84, 0xE4, 0xAC, 0x84, 0xE3, 0xA4, 0x80, 0xE2, 
		0x80, 0x84, 0xE3, 0x8C, 0x84, 0xE3, 0xB8, 0x84, 0xE3, 0x90, 0x80, 0xE2, 0xB0, 0x84, 0xE3, 0xBC, 
		0x84, 0xE4, 0x8C, 0x84, 0xE4, 0x84, 0x84, 0xE4, 0x88, 0x84, 0xE4, 0xB0, 0x80, 0xE2, 0x80, 0x84, 
		0xE3, 0xB8, 0x84, 0xE3, 0xB4, 0x80, 0xE2, 0x80, 0x84, 0xE3, 0xB4, 0x84, 0xE3, 0x80, 0x80, 0xE2, 
		0x80, 0x84, 0xE4, 0x84, 0x84, 0xE4, 0x9C, 0x84, 0xE3, 0x80, 0x84, 0xE4, 0x84, 0x84, 0xE4, 0x88, 
		0x84, 0xE4, 0xB0, 0x84, 0xE3, 0x94, 0x80, 0xE2, 0x80, 0x84, 0xE3, 0xB4, 0x84, 0xE3, 0x94, 0x80, 
		0xE2, 0x80, 0x84, 0xE4, 0x84, 0x84, 0xE3, 0xA8, 0x84, 0xE4, 0x8C, 0x84, 0xE3, 0xBC, 0x84, 0xE3, 
		0xA0, 0x84, 0xE4, 0x88, 0x84, 0xE4, 0x84, 0x84, 0xE4, 0xBC, 0x80, 0xE2, 0xB0, 0x84, 0xE3, 0xBC, 
		0x84, 0xE4, 0x8C, 0x84, 0xE4, 0x84, 0x84, 0xE4, 0x88, 0x84, 
};

std::wstring Result;
unsigned char * p3Byte=X500_Str+6;
for (int i=0;i<((sizeof(X500_Str)-6)/3);i++)
{
	wchar_t CharBuffer[2]={0};
	int Part1=p3Byte[0] - 0x80;
	int Part2=(p3Byte[1] - 0xE0) << 4;
	int Part3=(p3Byte[2] - 0x80) >> 2;
	CharBuffer[0]=(Part1 << 8) | (Part2 | Part3);
	p3Byte+=3;
	Result+=CharBuffer;
}

 

Похоже что такой выпендреж с преобразованием уникода нужен им для того чтобы все символы получились > 0x80.

83276525.png
Ссылка на комментарий
Поделиться на другие сайты

  • 7 месяцев спустя...

Извините может не в тему, но помогите узнать алгоритм подсчета CRC

 

вот кусок кода (CRC считается для всего куска)

 

AA 03 00 10 00 10 00 13 00 25 4B 68 00 07 00 00 00 00 00 00 - CRC = EB

еще

AA 03 00 10 00 10 00 13 00 25 4B 68 00 06 00 00 00 00 00 00 - CRC = EC

еще

AA 03 00 10 00 10 00 13 00 25 4B 68 00 01 00 00 00 02 00 00 - CRC = EF

и еще

AA 03 00 10 00 10 00 13 00 25 4B 68 00 01 00 00 00 01 00 00 - CRC = F0

 

Алгоритм один и тот же

Жизнь - пьяный поэт, я - слово.

Я жесток и грустен, когда ему херово.

Жизнь - старый поэт, жизнь - усталый поэт,

А я... Что я? Его инструмент!...

 

Разработка Broadcom: http://www.rk-team.net/

Новости проекта QuB на Twitter

Ссылка на комментарий
Поделиться на другие сайты

Извините может не в тему, но помогите узнать алгоритм подсчета CRC

 

вот кусок кода (CRC считается для всего куска)

 

AA 03 00 10 00 10 00 13 00 25 4B 68 00 07 00 00 00 00 00 00 - CRC = EB

еще

AA 03 00 10 00 10 00 13 00 25 4B 68 00 06 00 00 00 00 00 00 - CRC = EC

еще

AA 03 00 10 00 10 00 13 00 25 4B 68 00 01 00 00 00 02 00 00 - CRC = EF

и еще

AA 03 00 10 00 10 00 13 00 25 4B 68 00 01 00 00 00 01 00 00 - CRC = F0

 

Алгоритм один и тот же

Ага еще один товарищ копает команды ТАТ режима свифтов и сисолов :lol:

Ну помогу чем смогу - все банально просто: в начале каждой команды идет байт АА - это база

слаживаешь все байты (кроме СРС конечно :67:) получаешь сумму - берешь младший байт ее, остальные отбрасываешь.

от базы АА отнимаешь байт - получаешь CRC. Если байт больше AA то по правилам сдвига(отнимай в виндовом калькуляторе - поймешь) - ну вот и все. Если не секрет чё пишешь ? крутой разлокер ? или меняйщик имея ? меня тема тоже интересует есть наработки.

Изменено пользователем alex999_
Ссылка на комментарий
Поделиться на другие сайты

Спасибо конечно.. но я уже днем нашел ответ..только отписал в другой теме для спецов...

я не пишу ни анлокер ни меняльщик имеев... У меня есть UFS3 зачем мне это?

 

Просто надо было разобраться..Зачем? - пока секрет

Жизнь - пьяный поэт, я - слово.

Я жесток и грустен, когда ему херово.

Жизнь - старый поэт, жизнь - усталый поэт,

А я... Что я? Его инструмент!...

 

Разработка Broadcom: http://www.rk-team.net/

Новости проекта QuB на Twitter

Ссылка на комментарий
Поделиться на другие сайты

  • 1 месяц спустя...

Вот тут возникла такая проблема... есть файл..он сжат... алгоритм не известен... но есть исходный файл... надо восстановить алгоритм.. хотя бы частично..

 

 

Ниже прикрепляю оба файла...

Это не весь файл а только часть...

Это не архивы..просто иначе форум не принимает...

11.zip

22.zip

Жизнь - пьяный поэт, я - слово.

Я жесток и грустен, когда ему херово.

Жизнь - старый поэт, жизнь - усталый поэт,

А я... Что я? Его инструмент!...

 

Разработка Broadcom: http://www.rk-team.net/

Новости проекта QuB на Twitter

Ссылка на комментарий
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйте новый аккаунт в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


×
×
  • Создать...