Skip to content

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 需要以下依赖和环境:

您需要将 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 ../../../../../

edb

对于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

编译 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 ../../

编译 ExistOS

常规操作

mkdir build
cd build

build/ 目录下执行:

cmake .. # 等效于 cmake -S .. -B . -G "Unix Makefiles"
         # 可用 -G Niinja 指定用 Ninja 代替 Make
make

安装 ExistOS

请在 build/ 目录下执行以下命令。

首次安装

提示:
已安装 ExistOS 的计算器不需要执行此步骤,除非,刷坏了……
OSLoader 是引导程序,用于加载 ExistOS 并提供底层 API 和虚拟内存相关功能,

首次安装 ExistOS 时需要先将 OSLoader 载入计算器 RAM:

# 将计算器的电池全部卸下,按住 ON/C 键连接 USB 到电脑
# Windows 系统下可以查看设备管理器是否出现一个名为 “USB 输入设备” 且 ID 为 066F:3770 的 USB HID 设备
make flash

不要断开计算器连接,继续以下步骤。

通过 edb 安装

make edb_flash_loader # 这将写入 OSLoader 到计算器的 flash 闪存,计算器将会重启
make edb_flash_sys # 这将写入 ExistOS 本体到计算器的 flash 闪存,计算器将会重启

使用模拟器测试 ExistOS

可以通过 Windows 平台上的 ExistOS Emulator 模拟器体验系统。

模拟器下载地址:https://github.com/ExistOS-Team/ExistOS-Emulator/releases/tag/Latest

模拟器文件传输

在模拟器进入系统主界面后直接将 PC 上的文件拖入模拟器窗口后即可完成文件发送。

模拟器系统更新

直接替换 ExistOS.sys。