mirror of
https://github.com/freebip/BipEmulator.git
synced 2025-05-18 17:36:32 +03:00
Update README.md
Исправления и дополнения
This commit is contained in:
parent
401e31b331
commit
46c831a4d2
84
README.md
84
README.md
@ -1,51 +1,75 @@
|
||||
# Bip Emulator
|
||||
|
||||
Эмулятор окружения BipOS для часов Amazfit Bip
|
||||
Эмулятор окружения BipOS для часов Amazfit Bip
|
||||
|
||||
## Назначение
|
||||
## Назначение
|
||||
|
||||

|
||||
Написание и отладка приложений для часов Amazfit Bip под управлением мода BipOS (0.5.X)
|
||||
в среде Microsoft Visual Studio 2019
|
||||
|
||||
Написание и отладка приложений для часов Amazfit Bip под управлением мода BipOS (0.5.X)
|
||||
в среде Microsoft Visual Studio 2019
|
||||

|
||||
|
||||
## Описание
|
||||
## Описание
|
||||
|
||||
Эмулятор состоит из двух модулей: Host и Proxy.
|
||||
Proxy обрабатывает вызовы функций библиотеки Libbip поступающие от программы, работа которой
|
||||
происходит в эмуляторе. Часть этих вызовов модуль Proxy обрабатывает сам, часть перенаправляет
|
||||
модулю Host.
|
||||
На модуль Host возложены более высокоуровневые задачи:
|
||||
* Обработка вызовов графических функций и отображение результата их работы на пользовательском интерфейсе.
|
||||
* Обработка ввода команд пользователя, специфичных для эмулируемого устройства.
|
||||
* Эмуляция специфичных данных эмулируемого устройства (Давление, Геолокационные координаты и пр.)
|
||||
* Отоброжение отладочных данных программы
|
||||
Эмулятор состоит из двух модулей: Host и Proxy.
|
||||
Proxy обрабатывает вызовы функций библиотеки Libbip поступающие от программы, работа которой
|
||||
происходит в эмуляторе. Часть этих вызовов модуль Proxy обрабатывает сам, часть перенаправляет
|
||||
модулю Host.
|
||||
На модуль Host возложены более высокоуровневые задачи:
|
||||
* Обработка вызовов графических функций и отображение результата их работы на пользовательском интерфейсе.
|
||||
* Обработка ввода команд пользователя, специфичных для эмулируемого устройства.
|
||||
* Эмуляция специфичных данных эмулируемого устройства (Давление, Геолокационные координаты и пр.)
|
||||
* Отоброжение отладочных данных программы
|
||||
|
||||
## Изображения
|
||||
## Изображения
|
||||
|
||||
|
||||

|
||||

|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
## Использование
|
||||
## Использование
|
||||
|
||||
* Добавьте исходный код в Proxy модуль.
|
||||
* Откомпилируйте Proxy модуль.
|
||||
* Запустите Host модуль.
|
||||
* Завершите исполнение эмулятора
|
||||
* Исправьте исходный код
|
||||
* Повторять со второго пункта бесконечное кол-во раз
|
||||
* Добавьте исходный код в Proxy модуль.
|
||||
* Откомпилируйте Proxy модуль.
|
||||
* Запустите Host модуль.
|
||||
* Завершите исполнение эмулятора
|
||||
* Исправьте исходный код
|
||||
* Повторять со второго пункта бесконечное кол-во раз
|
||||
|
||||
## Пример
|
||||
## Особенности использования
|
||||
|
||||
Для демонстрации возможностей эмулятора в него добавлено приложение Календарь.
|
||||
В данном проекте используется связка C# <-> CLI/C++.
|
||||
Поэтому добавляемые исходные файлы должны иметь расширение .cpp (не относится к заголовочным файлам)
|
||||
***Но*** код должен быть написан в соответствии со стандартами чистого Си т.к. в последствии его предстоит
|
||||
собирать с помощью gnu toolchain под Си.
|
||||
|
||||

|
||||
Так как при использовании расширения .cpp мы переводим исходные файлы в разряд C++, то на код накладываются
|
||||
более суровые ограничения (например, в плане приведения типов по-умолчанию)
|
||||
|
||||
## Примечание
|
||||
Было так:
|
||||
```
|
||||
void* get_ptr_temp_buf_2();
|
||||
struct calend_** calend_p = get_ptr_temp_buf_2();
|
||||
```
|
||||
Надо так:
|
||||
```
|
||||
void* get_ptr_temp_buf_2();
|
||||
struct calend_** calend_p = (calend_**) get_ptr_temp_buf_2();
|
||||
```
|
||||
|
||||
У проекта WIP статус. Обработка части функций библиотеки Libbip не реализована.
|
||||
Proxy модуль является динамически линкуемой библиотекой (.dll), от которой зависит компиляция Host модуля.
|
||||
Поэтому после всех изменений принудительно откомпилируйте Proxy модуль, а после этого запускайте программу.
|
||||
|
||||
## Пример
|
||||
|
||||
Для демонстрации возможностей эмулятора в него добавлено приложение [Календарь](https://github.com/MNVolkov/Calend)
|
||||
|
||||

|
||||
|
||||
## Примечание
|
||||
|
||||
У проекта WIP статус. Обработка части функций библиотеки Libbip не реализована.
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user