Клуб любителей телефонов Siemens (BenQ-Siemens)
Главная | Телефоны | Барахолка | Файлы | Аксессуары | Мелодии | Игры для Siemens | Графика | Документация | в закладки |
  ПравилаПравила FAQ по Siemens (BenQ-Siemens)FAQ ПоискПоиск
 
 РегистрацияРегистрация ВходВход 

ArmDebugger 0.7.9 - отладчик для телефонов 65..75-й серии
На страницу 1 2
Новая тема Написать ответ Форумы Все для телефонов Siemens (BenQ-Siemens) » Программы [ Версия для печати ]
Предыдущая тема :: Следующая тема  
Автор Сообщение
chaos
Глав. Хелпер
Глав. Хелпер
Популярность: +132 (140)
Имя: Дмитрий
Возраст: 41
С нами с: 15.12.2003
Сообщений: 55
Откуда: Kiev

1/15 СообщениеДобавлено:Пт Дек 16, 2005 17:20   Заголовок сообщения: ArmDebugger 0.7.9 - отладчик для телефонов 65..75-й серии
Цитата

ArmDebugger - отладчик для телефонов 65..75-й серии
http://chaos.allsiemens.com/download/ArmDebugger-079.rar

Вот основные возможности:
- автоматическая генерация CGSN-патча по слитому фулфлешу
- просмотр содержимого памяти телефона в HEX-дампе без ограничений доступа (в т.ч. области портов ввода/вывода)
- возможность редактирования памяти, в том числе флеш-области (используется замещение flash-страниц, содержимое flash не изменяется)
- поиск байтов/строк в памяти
- поиск ссылок любого типа на выбранный адрес памяти
- непрерывный мониторинг участка памяти
- ARM/Thumb дизассемблер с inline-ассемблером
- Пошаговая трассировка программы или процесса
- Установка точек останова (breakpoints) на любой адрес флеш-памяти
- Установка точек мониторинга (snappoints) - возможность посмотреть содержимое регистров/памяти в любой точке прошивки
- Установка watchpoint на запись в указанный диапазон RAM
- возможность импорта/экспорта базы имён из/в дизассемблер IDA Pro
- запись всех сделанных патчей, возможность просмотра списка патчей, оперативной их отмены, экспорт в vkp-файл
- интеграция с Keil ARM tools - компилирование и запуск тестовых программ (поддерживаются Assembler и С), возможность автоматической загрузки скомпилированного кода по указаному адресу
- компилирование и тестирование бутлоадеров
- вывод состояния отдельных адресов памяти в виде integer/hex/ASCII/Unicode, а также элементов вложенных структур (до 5 уровней)
- просмотр карты адресного пространства
- просмотр/изменение регистров сопроцессора CP15
- анализ RAM, поиск неиспользуемых страниц для функции замещения flash
- запоминание текущего состояния (патчей, открытых файлов редактора, текущих адресов...), автоматическая загрузка всех сделанных изменений при перезагрузке телефона
- отлавливание аварийных завершений (SExit), с выводом полной информации о них
- просмотр ресурсов Nucleus RTOS (процессы, обработчики прерываний, распределение памяти)
- просмотр детальной карты флеш-памяти
- дополнительные функции: дамп участка памяти в файл, вызов функций flash с параметрами, hex/bin/dec калькулятор

Настройка:
1. Пропишите в настройках путь к Keil ARM
2. Сгенерируйте CGSN-патч (меню Tools->Generate CGSN patch), примените его
3. Добавьте секцию с параметрами телефона в devices.ini (т.к. вся 65-я серия имеет одинаковую организацию памяти, просто скопируйте любой блок, измените название секции на [Siemens:ваша_модель:ваша_прошивка] и удалите все параметры, начинающиеся с Pool). (Если секция для вашей прошивки уже есть, пункты 3 и 4 пропустите).
Теперь дебагер должен увидеть телефон.
4. С помощью Tools->RAM access analyzer определите свободные участки памяти. Перегрузите телефон, нажмите Initialize, затем нужно хорошо помучить телефон, стараясь использовать все возможные функции. После этого нажмите Analyze, программа выдаст список неиспользуемых областей памяти. Выберите 2-3 самые большие и занесите их в devices.ini как Pool<N>Address и Pool<N>pages.


Последний раз редактировалось: chaos (Чт Дек 28, 2006 15:29), всего редактировалось 4 раз(а)
^ Вверх ^
Профиль Личное Сайт ICQ
swoofer
Гость


2/15 СообщениеДобавлено:Пт Янв 06, 2006 14:13   Заголовок сообщения:
Цитата

А ты не мог бы сдлать прогу на русском
А то я не силён в англиском Embarassed
^ Вверх ^
block
Зелёный
Зелёный
Популярность: +1 (1)
Возраст: 38
С нами с: 24.01.2006
Сообщений: 4
Модель телефона: С65

3/15 СообщениеДобавлено:Ср Янв 25, 2006 17:40   Заголовок сообщения:
Цитата

Прекрасная вещь. Особенно полезны брейкпоинты на память.
Но уж если обсуждаем:
1) Отсутствие условных брейкпоинтов (условия с регистрами приходиться набивать в виде патча... по-сути сплайсинг чистой воды - жуть как неудобно, вспоминаються времена DOS-a)
2) Некоректная работа с брейками на запись памяти. Слишком часто телефон отключаеться.

Дебагер уникальный. Жаль только что крайне не стабильный. Уж слишком часто при иследовании интимных мест прошивки с помощью "set watchpoint on write" он вываливает трубу.
^ Вверх ^
Профиль Личное
mana9er
Реаниматор
Реаниматор
Популярность: +63 (77)

Возраст: 31
С нами с: 26.08.2005
Сообщений: 416
Откуда: msk
Модель телефона: cx75

4/15 СообщениеДобавлено:Вт Янв 31, 2006 15:10   Заголовок сообщения:
Цитата

Уважаемый chaos, у меня возник вопрос.
При компиляции дебаггер все время выдает "Assembler exited with error code 1". Путь к кейлу прописан (x:\Keil\ARM). Может что-нибудь нужно в батниках amake и cmake поправить?
Добавлено
Уже не актуально. Дебаггер ставить в папку, не содержащую пробелов в названии.

_________________
eric a3618->lg 500->me 45->se t610->cx75+sl45(i) :)
^ Вверх ^
Профиль Личное ICQ
chaos
Глав. Хелпер
Глав. Хелпер
Популярность: +132 (140)
Имя: Дмитрий
Возраст: 41
С нами с: 15.12.2003
Сообщений: 55
Откуда: Kiev

5/15 СообщениеДобавлено:Вс Мар 26, 2006 20:59   Заголовок сообщения:
Цитата

Версия 0.7.2 - много багфиксов, более стабильная работа при пошаговой трассировке

http://chaos.allsiemens.com/download/ArmDebugger-072.rar
^ Вверх ^
Профиль Личное Сайт ICQ
chaos
Глав. Хелпер
Глав. Хелпер
Популярность: +132 (140)
Имя: Дмитрий
Возраст: 41
С нами с: 15.12.2003
Сообщений: 55
Откуда: Kiev

6/15 СообщениеДобавлено:Пн Мар 27, 2006 16:03   Заголовок сообщения:
Цитата

Версия 0.7.2a - работает через DCA-540 (нужно перегенерить CGSN-патч)

http://chaos.allsiemens.com/download/ArmDebugger-072a.rar
^ Вверх ^
Профиль Личное Сайт ICQ
chaos
Глав. Хелпер
Глав. Хелпер
Популярность: +132 (140)
Имя: Дмитрий
Возраст: 41
С нами с: 15.12.2003
Сообщений: 55
Откуда: Kiev

7/15 СообщениеДобавлено:Вт Апр 04, 2006 15:27   Заголовок сообщения:
Цитата

Версия 0.7.4

- улучшен поиск, возможность поиска unicode-строки, поиск с отображением всех результатов в таблице
- условные снаппоинты
- можно ставить снаппоинт в RAM
- пофиксена работа через DCA-540 (нужно перегенерить патч)

http://chaos.allsiemens.com/download/ArmDebugger-074.rar
^ Вверх ^
Профиль Личное Сайт ICQ
block
Зелёный
Зелёный
Популярность: +1 (1)
Возраст: 38
С нами с: 24.01.2006
Сообщений: 4
Модель телефона: С65

8/15 СообщениеДобавлено:Вт Апр 04, 2006 16:33   Заголовок сообщения:
Цитата

Косметический баг:
Например на инструкцию “LDR R0, =XXXX” поставить breakpoint нельзя. Но MessageBox говорит «Cannot set snappoint on this instruction». Вообщето - брейкпоинт, но это мелочь.

Просьба в новой версии добавить:
1) Возможность посмотреть значение двойного указателя: **XXXX.
2) Возможность задавать условные брейкпоинты, как теперь это реализовано в установке снаппоинтов. (Апетит ростёт Wink )

Огромное спасибо за условные снаппоинты.
^ Вверх ^
Профиль Личное
chaos
Глав. Хелпер
Глав. Хелпер
Популярность: +132 (140)
Имя: Дмитрий
Возраст: 41
С нами с: 15.12.2003
Сообщений: 55
Откуда: Kiev

9/15 СообщениеДобавлено:Вт Апр 04, 2006 17:07   Заголовок сообщения:
Цитата

block писал(а):

1) Возможность посмотреть значение двойного указателя: **XXXX.

не совсем понял.. посмотреть где?

Цитата:

2) Возможность задавать условные брейкпоинты, как теперь это реализовано в установке снаппоинтов. (Апетит ростёт Wink )

а это можно и сейчас, если в снаппоинте вместо текста ввести "~".
^ Вверх ^
Профиль Личное Сайт ICQ
block
Зелёный
Зелёный
Популярность: +1 (1)
Возраст: 38
С нами с: 24.01.2006
Сообщений: 4
Модель телефона: С65

10/15 СообщениеДобавлено:Вт Апр 04, 2006 17:30   Заголовок сообщения:
Цитата

Цитата:
а это можно и сейчас, если в снаппоинте вместо текста ввести "~".

Действительно!!! Very Happy . Спасибо за подсказку.

Цитата:
не совсем понял.. посмотреть где?

Допустим регистр R0 принимает значение двойного указателя на строку (в терминологии Сишки char **ppstr). При срабатывании снаппоинта хотелось бы её увидеть.
^ Вверх ^
Профиль Личное
inquis
Модератор
<b>Модератор</b>
Имя: Дмитрий
Возраст: 26
С нами с: 21.02.2006
Сообщений: 2452
Откуда: UA
Модель телефона: Nokia E51

11/15 СообщениеДобавлено:Вт Июн 13, 2006 14:30   Заголовок сообщения:
Цитата

Что такое Keil ARM? Где его взять или как его сделать? Как правильно генерировать CGSN patch? Какой фулл нужно для этого брать: любой моей прошивки или тока чистый?
У меня такая проблема:
Сгенерировал CGSN patch с фулла, применил его, жму в ArmDebugger "соединить", а в ответ тел вырубается и Debugger выдаёт ошибки: "CGSN patch not installed or wrong patch version..." и "No device information in database..."
Что нужно добавить в этот devices.ini?
У меня прописано так:
Код:
[SIEMENS:C75:22]
Name = Siemens C75 fw22
BootROMaddress = 0x400000;
BootROMsize = 0x100000;
FlashAddress = 0xa0000000;
FlashSize = 0x02000000;
IntRAM1address = 0x0;
IntRAM1size = 0x4000;
IntRAM2address = 0x80000;
IntRAM2size = 0x18000;
ExtRAMaddress = 0xa8000000;
ExtRAMsize = 0x00800000;
IOaddress = 0xf0000000;
IOsize = 0x10000000;
UseRAM = 0x8e000;

_________________
Не читать! :: Не нажимать!
^ Вверх ^
Профиль Личное Сайт
alariym
Новичок
Новичок
Популярность: +4 (4)

Возраст: 57
С нами с: 19.05.2006
Сообщений: 51
Откуда: г.Маркс
Модель телефона: S75

12/15 СообщениеДобавлено:Пн Июн 19, 2006 20:32   Заголовок сообщения:
Цитата

S75 FW40 ffs31 map 31
device.ini
[SIEMENS:S75:40]
Name = Siemens S75 fw40
BootROMaddress = 0x400000;
BootROMsize = 0x100000;
FlashAddress = 0xa0000000;
FlashSize = 0x04000000;
IntRAM1address = 0x0;
IntRAM1size = 0x4000;
IntRAM2address = 0x80000;
IntRAM2size = 0x18000;
ExtRAMaddress = 0xa8000000;
ExtRAMsize = 0x01000000;
IOaddress = 0xf0000000;
IOsize = 0x10000000;
UseRAM = 0x89000;

Телефон подключается, но при попытке выполнить Tools->RAM access analyzer пишет "No free pages in relocation pool"
Analyze в дальнейшем ничего не выдает
В чем может быть дело?

_________________
A55->M55->S75
^ Вверх ^
Профиль Личное Сайт
chaos
Глав. Хелпер
Глав. Хелпер
Популярность: +132 (140)
Имя: Дмитрий
Возраст: 41
С нами с: 15.12.2003
Сообщений: 55
Откуда: Kiev

13/15 СообщениеДобавлено:Пн Июн 26, 2006 15:51   Заголовок сообщения:
Цитата

ArmDebugger 0.7.5
http://chaos.allsiemens.com/download/ArmDebugger-075.rar

- альтернативный способ задания пула:
MallocAddress=... - адрес функции malloc
MallocPages=... - количество страниц, выделяемых через malloc
- исправлена работа с vkp-файлами
- исправлен баг в генераторе cgsn-патча
- добавлен терминал

Для S75 fw24:
MallocAddress = 0xa024a318;
MallocPages = 50;
^ Вверх ^
Профиль Личное Сайт ICQ
chaos
Глав. Хелпер
Глав. Хелпер
Популярность: +132 (140)
Имя: Дмитрий
Возраст: 41
С нами с: 15.12.2003
Сообщений: 55
Откуда: Kiev

14/15 СообщениеДобавлено:Ср Июл 19, 2006 19:49   Заголовок сообщения:
Цитата

ArmDebugger 0.7.7
http://chaos.allsiemens.com/download/ArmDebugger-077.rar

- более стабильный коннект
- пошаговое выполнение thumb MOV PC/LR,...
- восстановление контекста после абортов при вызове функции или выполнении программы (не всегда конечно, но чаще всего работает)
- нумерация событий (снаппоинтов) в окне журнала
- возможность удаления строк в окне результатов поиска
- другие мелкие улучшения и багфиксы
^ Вверх ^
Профиль Личное Сайт ICQ
Sensor77
Зелёный
Зелёный
Популярность: 0 (0)
Имя: Геннадий
Возраст: 39
С нами с: 02.10.2006
Сообщений: 1
Откуда: Беларусь
Модель телефона: A60, C65

15/15 СообщениеДобавлено:Пн Окт 02, 2006 22:36   Заголовок сообщения:
Цитата

Уважаемый Chaos!
Как пользовать патч CSGN, сделанный ARMDebugger, в обычной терминалке? При запуске телефона все данные читаются как 0xFF. Если сначала запустить ARM, а затем терминалку - то всё нормально. Телефон - С65.
^ Вверх ^
Профиль Личное Email
Перейти:  
Новая тема Написать ответ Форумы Все для телефонов Siemens (BenQ-Siemens) » Программы Часовой пояс: GMT + 3
На страницу 1 2



AllNokia.ru - Клуб Nokia

» телефоны nokia » темы для nokia » игры для nokia
Проблемы с Nokia? Иди на All Nokia! » программы для nokia » прикольные смс » прошивки nokia