lcdyk0517/arkos4clone
GitHub: lcdyk0517/arkos4clone
为不受官方支持的各种仿制及第三方复古掌机移植 ArkOS/dArkOS 4.4 内核与操作系统的社区项目。
Stars: 579 | Forks: 217
# (d)ArkOS 4.4 内核对不受支持设备的支持
为不受支持的设备带来**(d)ArkOS 4.4 内核**支持。随时欢迎通过 PR 进行贡献。
## 目录
- [快速开始](#quick-start)
- [支持的设备](#supported-devices)
- [手动配置](#manual-configuration)
- [摇杆轴重映射](#joystick-axis-remapping)
- [技术实现](#technical-implementation)
- [已知限制](#known-limitations)
- [贡献指南](#contributing)
- [支持本项目](#support-the-project)
## 快速开始
### 构建 (d)ArkOS4Clone 镜像
**对于 ArkOS4Clone:**
选项 1:Fork 本仓库,转到 **Actions** 选项卡,运行构建工作流,然后从你 Fork 的 **Releases** 页面下载镜像。
选项 2:手动构建:
```
git clone git@github.com:lcdyk0517/arkos4clone.git
cd arkos4clone
sudo ./build_image.sh ArkOS-R3XS.img .
```
**对于 dArkOS4Clone:**
1. 从 [christianhaitian/dArkOS](https://github.com/christianhaitian/dArkOS) 下载 G350/RG351MP 镜像
2. 解压获取 `dArkOS-xxx.img`
3. 运行:
```
git clone git@github.com:lcdyk0517/arkos4clone.git
cd arkos4clone
sudo ./build_image.sh dArkOS-xxx.img .
```
脚本执行完成后,根目录下会生成 `(d)ArkOS4Clone.img.xz`。
### 使用方法
1. 下载 **ArkOS** 发布镜像
2. 刷入 SD 卡
3. 运行 `dtb_selector.exe` (Windows) 来选择你的设备
4. 出现提示时,选择电池驱动版本(原版或 arkos4clone_fix)
5. 重启设备
非 Windows 用户,请参阅[手动配置](#manual-configuration)。
## 支持的设备
### YMC
| 设备 | Logo | 内核 | 配置文件 | 备注 |
|--------|------|--------|--------------|-------|
| A10MINI | `480P` | 用户选择 | `consoles/a10mini/` | 感谢 Mr.Wu |
| A10MINI V4 | `540P` | 用户选择 | `consoles/a10miniv4/` | 感谢 Mr.Wu |
### AISLPC
| 设备 | Logo | 内核 | 配置文件 | 备注 |
|--------|------|--------|--------------|-------|
| K36S | `480P` | 用户选择 | `consoles/k36s/` | 感谢 Mr.Yin |
| R36T | `480P` | 用户选择 | `consoles/k36s/` | 感谢 Mr.Yin |
| R36T MAX | `720P` | 用户选择 | `consoles/r36tmax/` | 感谢 Mr.Yin |
### MagicX
| 设备 | Logo | 内核 | 配置文件 | 备注 |
|--------|------|--------|--------------|-------|
| xu10 | `480P` | 用户选择 | `consoles/xu10/` | |
### Batlexp
| 设备 | Logo | 内核 | 配置文件 | 备注 |
|--------|------|--------|--------------|-------|
| G350 | `480P` | 用户选择 | `consoles/g350/` | |
### Kinhank
| 设备 | Logo | 内核 | 配置文件 | 备注 |
|--------|------|--------|--------------|-------|
| K36 (原装屏幕) | `480P` | 用户选择 | `consoles/k36/` | |
### Powkiddy
| 设备 | Logo | 内核 | 配置文件 | 备注 |
|--------|------|--------|--------------|-------|
| RGB20S | `480P` | 用户选择 | `consoles/rgb20s/` | |
| RGB10MAX1 | `854x480P` | 用户选择 | `consoles/rgb10max1/` | |
| RGB10 | `320P` | 用户选择 | `consoles/rgb10/` | |
### RetroBox
| 设备 | Logo | 内核 | 配置文件 | 备注 |
|--------|------|--------|--------------|-------|
| P1 | `480P-270` | 用户选择 | `consoles/rp1/` | |
### 仿制 R36s 系列
| 设备 | Logo | 内核 | 配置文件 | 备注 |
|--------|------|--------|--------------|-------|
| Type 1 (带功放) | `480P` | 用户选择 | `consoles/r36pro/` | 感谢 XiFan |
| Type 1 (无功放) | `480P` | 用户选择 | `consoles/hg36/` | |
| Type 1 (无功放 + 右摇杆反向) | `480P` | 用户选择 | `consoles/k36/` | |
| Type 2 (带功放) | `480P` | 用户选择 | `consoles/clone type2 amp/` | 感谢 XiFan |
| Type 2 (无功放) | `480P` | 用户选择 | `consoles/clone type2/` | 感谢 Mr.Li |
| Type 3 (屏幕 1) | `480P` | 用户选择 | `consoles/clone type3 panel1/` | 感谢 LangZi |
| Type 3 (屏幕 2) | `480P` | 用户选择 | `consoles/clone type3 panel2/` | |
| Type 4 | `480P` | 用户选择 | `consoles/clone type4/` | |
| Type 5 | `480P` | 用户选择 | `consoles/clone type5/` | |
### GameConsole
| 设备 | Logo | 内核 | 配置文件 | 备注 |
|--------|------|--------|--------------|-------|
| R33s | `480P` | 用户选择 | `consoles/r33s/` | |
| R36H | `480P` | 用户选择 | `consoles/r36h/` | 感谢 Mr.Lang |
| R36s 屏幕面板 0 | `480P` | 用户选择 | `consoles/origin panel0/` | |
| R36s 屏幕面板 1 | `480P` | 用户选择 | `consoles/origin panel1/` | |
| R36s 屏幕面板 2 | `480P` | 用户选择 | `consoles/origin panel2/` | |
| R36s 屏幕面板 3 | `480P` | 用户选择 | `consoles/origin panel3/` | |
| R36s 屏幕面板 4 | `480P` | 用户选择 | `consoles/origin panel4/` | 感谢 海拉姆电玩 |
| R36s V22 | `480P` | 用户选择 | `consoles/v22 panel4/` | |
| R36s V30 | `480P` | 用户选择 | `consoles/v30 panel4/` | 感谢 海拉姆电玩 |
| R36XX | `480P` | 用户选择 | `consoles/origin panel4/` | 感谢 Mr.Lang |
| O30S | `480P` | 用户选择 | `consoles/r36h/` | |
| R36sPlus | `720P` | 用户选择 | `consoles/r36splus/` | 感谢 Mr.Lang |
| R36H ProMax | `768P` | 用户选择 | `consoles/r45h/` | 感谢 Mr.Lang |
| R40XX | `768P` | 用户选择 | `consoles/r40xx/` | 感谢 Mr.Lang |
| R40XX ProMax | `768P` | 用户选择 | `consoles/r46h/` | 感谢 Mr.Lang |
| R45H | `768P` | 用户选择 | `consoles/r45h/` | 感谢 Mr.Lang |
| R46H | `768P` | 用户选择 | `consoles/r46h/` | 感谢 Mr.Lang |
| R50S | `854x480P` | 用户选择 | `consoles/r50s/` | 感谢 Mr.Lang |
| R50S | `720x1280P` | 用户选择 | `consoles/r50h/` | 感谢 Mr.Lang |
### SoySauce R36s
| 设备 | Logo | 内核 | 配置文件 | 备注 |
|--------|------|--------|--------------|-------|
| 屏幕面板 1 | `480P` | 用户选择 | `consoles/sauce panel1/` | |
| 屏幕面板 2 | `480P` | 用户选择 | `consoles/sauce panel2/` | 感谢 QQ:2824907016 |
| 屏幕面板 3 | `480P` | 用户选择 | `consoles/sauce panel3/` | |
| 屏幕面板 4 | `480P` | 用户选择 | `consoles/sauce panel4/` | |
### Diium / SZDiiER
| 设备 | Logo | 内核 | 配置文件 | 备注 |
|--------|------|--------|--------------|-------|
| ~~Dr28s~~ | ~~`480P-270`~~ | ~~`用户选择`~~ | ~~`consoles/dr28s/`~~ | ~~因设备损坏暂停维护~~ |
| D007 / D007 Plus | `480P` | 用户选择 | `consoles/d007/` | |
### XiFan
| 设备 | Logo | 内核 | 配置文件 | 备注 |
|--------|------|--------|--------------|-------|
| Mymini | `480P` | 用户选择 | `consoles/mymini/` | 感谢 XiFan |
| Mini40 | `720P` | 用户选择 | `consoles/mini40/` | 感谢 XiFan |
| R36Max | `720P` | 用户选择 | `consoles/r36max/` | 感谢 XiFan |
| R36Max2 | `768P` | 用户选择 | `consoles/r36max2/` | 感谢 XiFan |
| XF45V | `768P` | 用户选择 | `consoles/xf45v/` | 感谢 XiFan |
| DC45V | `768P` | 用户选择 | `consoles/dc45v/` | 感谢 XiFan |
| RF45V | `768P` | 用户选择 | `consoles/rf45v/` | 感谢 XiFan |
| R36Pro | `480P` | 用户选择 | `consoles/r36pro/` | 感谢 XiFan |
| XF28 | `480P-1` | 用户选择 | `consoles/xf28/` | 感谢 XiFan |
| XF35H | `480P` | 用户选择 | `consoles/xf35h/` | 感谢 XiFan |
| RF35H | `480P` | 用户选择 | `consoles/rf35h/` | 感谢 XiFan |
| XF40H | `720P` | 用户选择 | `consoles/xf40h/` | 感谢 XiFan |
| RF40H | `720P` | 用户选择 | `consoles/rf40h/` | 感谢 XiFan |
| DC35V | `480P` | 用户选择 | `consoles/dc35v/` | 感谢 XiFan |
| DC40V | `720P` | 用户选择 | `consoles/dc40v/` | 感谢 XiFan |
### 其他设备
| 设备 | Logo | 内核 | 配置文件 | 备注 |
|--------|------|--------|--------------|-------|
| HG36 (HG3506) | `480P` | 用户选择 | `consoles/hg36/` | |
| R36Ultra | `720P` | 用户选择 | `consoles/r36ultra/` | 感谢 Mr.Li |
| R36UltraX | `7268P` | 用户选择 | `consoles/r36ultrax/` | 感谢 Mr.Li |
| RX6H | `480P` | 用户选择 | `consoles/rx6h/` | 感谢 Mr.Yin |
| XGB36 (G26) | `480P` | 用户选择 | `consoles/xgb36/` | |
| T16MAX | `720P` | 用户选择 | `consoles/t16max/` | |
| U8 | `480P5-3` | 用户选择 | `consoles/u8/` | 感谢 Mr.Yin |
| U8 V2 | `480P5-3` | 用户选择 | `consoles/u8-v2/` | |
| RG36 | `480P` | 用户选择 | `consoles/rg36/` | |
| R40S | `480P5-3` | 用户选择 | `consoles/r40s/` | 感谢 Miss.Ding |
| R39S | `480P5-3` | 用户选择 | `consoles/r40s/` | |
## 手动配置
非 Windows 用户:
1. 挂载 SD 卡的 `BOOT` 分区
2. 将 `boot.ini` 和来自 `consoles//` 的两个 `.dtb` 文件复制到根目录
3. 复制合适的内核 Image:
- 对于原版电池驱动:`consoles/kernel/original/Image`
- 对于 arkos4clone_fix 电池驱动:`consoles/kernel/arkos4clone_fix/Image`
4. 将 `consoles/logo//logo.bmp` 复制到根目录
5. 卸载 SD 卡,将其插入设备并重启
## 摇杆轴重映射
访问 👉 **https://lcdyk0517.github.io/tools/dtb-tools.html**
直接在你的浏览器中调整摇杆轴映射(Joymux / amux)和电池参数,并生成新的 `.dtb` 文件。
## 技术实现
- **内核驱动修改** — [lcdyk0517/arkos.bsp.4.4](https://github.com/lcdyk0517/arkos.bsp.4.4)
- **DTS 逆向移植** — 从 5.10 内核向 4.4 内核的逆向移植,参见 [AveyondFly/rocknix_dts](https://github.com/AveyondFly/rocknix_dts/tree/main/3326/arkos_4.4_dts)
- **基础系统** — 基于 [AeolusUX/ArkOS-R3XS](https://github.com/AeolusUX/ArkOS-R3XS) 构建
- **文件管理器** — [lcdyk0517/351Files](https://github.com/lcdyk0517/351Files)
- **Ogage 工具** — [lcdyk0517/ogage](https://github.com/lcdyk0517/ogage)
- **Drastic-KK 补丁** — [drastic-kk/patch](https://github.com/lcdyk0517/arkos4clone/tree/main/replace_file/drastic-kk/patch)
## 电池驱动选择
当使用 `dtb_selector` 工具时,系统会提示你选择电池驱动版本:
- **原版电池驱动** — 适用于使用原版内核电池驱动的设备
- **arkos4clone_fix 电池驱动** — 适用于使用 arkos4clone_fix 内核电池驱动的设备
所选版本的 `Image` 文件将被复制到 SD 卡的根目录中。
## 已知限制
- **尚不支持安装到 eMMC** — 目前仅支持从 SD 卡启动
## 致谢
特别感谢:
- **[christianhaitian](https://github.com/christianhaitian)** — 感谢提供 dArkOS
- **[AeolusUX](https://github.com/AeolusUX)** — 感谢提供 ArkOS-R3XS
- **[PortMaster](https://github.com/PortsMaster)** — 感谢提供 PortMaster
- **[Jason3_Scripte](https://github.com/Jason3x)** — 感谢提供实用的脚本
标签:Cutter, Linux内核, 多模态安全, 客户端加密, 嵌入式系统, 开源操作系统, 掌机, 设备适配, 驱动配置