-
Notifications
You must be signed in to change notification settings - Fork 40
Development.zh
yuuki410 edited this page Jan 8, 2023
·
1 revision
在一切开始之前,请先克隆本仓库:
git clone https://github.com/ExistOS-Team/ExistOS-For-HP39GII.git --recursive # https
git clone [email protected]:ExistOS-Team/ExistOS-For-HP39GII.git --recursive # ssh
以下步骤默认假设您已初始化好所有submodule。
然后进入本项目目录:
cd ExistOS-For-HP39GII
若没有特别说明,以下步骤默认假设您已位于本项目根目录。
本项目的开发者主要使用的环境有:
- Windows 10
- Windows 11
- Debian
- Ubuntu
- Arch Linux
- Manjaro
- NixOS
恕不对以下环境提供支持:
- Windows 8.1
- Windows Vista 及更早
- CentOS
- Apline
编译和安装 ExistOS 需要以下依赖和环境:
- make
- Windows可用Ninja代替。
- cmake
-
gcc-arm-none-eabi (v10.3)
- 使用最新版本可能会无法编译,或生成的二进制文件无法在计算器上运行。
- libusb (v1.0)
- libcrypto++
您需要将 99-hp39gii.rules
加入 /etc/udev/rules.d/
中:
系统 | 安装 |
---|---|
Windows | 不需要执行此步骤 |
Linux(大多数发行版) | sudo cp 99-hp39gii.rules /etc/udev/rules.d/ |
然后重启 udev 以载入规则: |
|
sudo service udev restart |
|
如果上面的命令不起作用: | |
sudo udevadm control --reload-rules |
|
sudo udevadm trigger |
请先编译sbtools:
系统 | 安装 |
---|---|
Windows | 已经预先编译好,位于 tools/ 目录下 |
Linux | cd tools/sbtools/ && make |
cp sb_loader ../ |
|
cp elftosb ../ |
|
cd ../../ |
|
cd Libs/src/micropython-master/ports/eoslib/ && make |
|
cd ../../../../../ |
对于Windows,已提供预编译的二进制文件,位于 tools/edb.exe
。
对于Linux系统,请执行以下命令编译edb-unix。
cd tools/edb-unix/
mkdir build
cmake -B build
cmake --build build
cp build/edb ../
cd ../../
编译 sys_signer:
系统 | 安装 |
---|---|
Windows | Binary executable in tools/
|
Linux | cd tools/sys_signer/ |
mkdir build |
|
cmake -B build/ |
|
cmake --build build/ |
|
cp build/sys_signer ../ |
|
cd ../../ |
常规操作
mkdir build
cd build
在 build/
目录下执行:
cmake .. # 等效于 cmake -S .. -B . -G "Unix Makefiles"
# 可用 -G Niinja 指定用 Ninja 代替 Make
make
请在 build/
目录下执行以下命令。
提示:
已安装 ExistOS 的计算器不需要执行此步骤,除非,刷坏了……
OSLoader 是引导程序,用于加载 ExistOS 并提供底层 API 和虚拟内存相关功能,
首次安装 ExistOS 时需要先将 OSLoader 载入计算器 RAM:
# 将计算器的电池全部卸下,按住 ON/C 键连接 USB 到电脑
# Windows 系统下可以查看设备管理器是否出现一个名为 “USB 输入设备” 且 ID 为 066F:3770 的 USB HID 设备
make flash
不要断开计算器连接,继续以下步骤。
make edb_flash_loader # 这将写入 OSLoader 到计算器的 flash 闪存,计算器将会重启
make edb_flash_sys # 这将写入 ExistOS 本体到计算器的 flash 闪存,计算器将会重启
可以通过 Windows 平台上的 ExistOS Emulator 模拟器体验系统。
模拟器下载地址:https://github.com/ExistOS-Team/ExistOS-Emulator/releases/tag/Latest
在模拟器进入系统主界面后直接将 PC 上的文件拖入模拟器窗口后即可完成文件发送。
直接替换 ExistOS.sys。
中文 | English |
---|---|
开发者指引 | Developer Guide |
串口输出波特率 | Serial Output Baud Rate |
STMP3770硬件分析 ExistOS系统结构 |
No translations available |
模拟器 | Emulator |