@IlliaKharytonov

Как написать кастомный софт под мой смартфон?

Господа, подскажите пожалуйста. У меня есть китайский смартфон на процессоре MTK6572, как я понял, это SoC, т.е. в микросхему помимо всего прочего входит и GSM/HSPA, и видео контроллер, и т.д. Я хочу в порядке эксперимента сделать следующее: написать что-то ARM ассемблере или на Си, типа загрузчика который выводит что-то на экран. Как хотя бы приблизительно подойти к этой задаче? Ну т.е. как написать инструкции на ассемблере - понятно, а как понять, как отправлять команды видео контроллеру и т.п.? Куда вообще копать (что писать в гугле)? Нашёл schematic diagram в сети этого процессора и какие-то сорцы, но не очень понятно, как всё это использовать. Помогите, пожалуйста. Интуитивно кажется, что надо искать что-то вроде "how to make my own rom", но все ссылки в гугле по этой теме ведут на то, как прошить уже готовый ром, немножко его допилив. Кроме того, как я понимаю, для этого совсем не обязательно делать именно ROM, нет необходимости именно шить процессор, а можно просто написать код, который будет запускаться с NAND раздела, так ведь? Ещё непонятно, MTK6572 и MT6572 - это одно и то же? А то встречаются два наименования.
Заранее спасибо и простите за отнятое время!
  • Вопрос задан
  • 422 просмотра
Пригласить эксперта
Ответы на вопрос 2
Rou1997
@Rou1997
Какие MT? Какие прошивки, какие NAND-разделы? О чем вы?

1. Берете Android NDK.
2. Пишете что-нибудь на Си, например printf("Helloworld").
На ARM-ассемблере тоже можно писать, и на x86 тоже - там есть все, что есть в GNU Toolchain.
3. Правите Android.mk, чтобы скомпилировать в Executable вместо Shared object то есть вместо библиотеки(Android NDK "заточен" под библиотеки, если компилировать в библиотеку то придется писать еще и "обертку" на Java с помощью JNI)
4. Затем открываете adb shell (желательно иметь root-права - без них неудобно) и запускаете полученный executable.
Всё! На экране будет "Hello World", и я вас уверяю, это произойдет с отправкой всех необходимых команд процессору! Более того, даже если вы напишете на Java, то все равно без процессора это никак не отработает! И даже если вы сделаете страничку на HTML&CSS&JS и откроете ее в браузере на Android, все равно все через процессор отработает!

Всё, поставленная вами задача - выполнена, если хотите чтобы это происходило вместо запуска ОС - так "впаяйте" это дело в ОС и все, у нее исходный код открытый.
Android - это Линукс, все описанное работает на любом Линуксе, и на нем тоже.
Ответ написан
@nirvimel
После заливки непротестированной прошивки прямо в живой телефон с вероятностью 99.99% он превратится в кирпич.
Так прошивки не разрабатывает никто, включая тех, кто их разрабатывает профессионально.

С чего начинать? - С покупки специальной Development Board под целевой SoC, например.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы