
the1Domo发布PlusOS:面向Macintosh Plus和SE的裸机操作系统
来源标题:PlusOS: OS for the Macintosh Plus and SE
the1Domo开发了PlusOS,一款面向Macintosh Plus和Macintosh SE的裸机操作系统,基于经典Mac ROM用C语言编写。该系统已在真实的Macintosh SE上启动成功,并提供了包含GUI工具PlusOS Disk Studio的SDK。其源码构建依赖WSL中的m68k交叉编译器,构建系统可移植且自包含。
以下正文由 AI 翻译自 Hacker News 最新(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。
PlusOS:面向 Macintosh Plus 和 SE 的裸机操作系统,由 the1Domo 基于经典 Mac ROM 用 C 语言编写,并为两种机型各提供一套 SDK。PlusOS 已在真实的 Macintosh SE 上启动——桌面上有 Matrix 壁纸、主题切换器和屏幕图标。源码放在 Windows 上;m68k 交叉编译器在 WSL(Ubuntu)中运行,使用标准 GNU 工具链(m68k-elf-gcc、m68k-linux-gnu-gcc 或 Retro68)。build.bat 可在 Windows 命令提示符下完成全部操作。构建系统完全可移植,自包含在自身目录内,不依赖硬编码的外部驱动器或 SD 卡。Macintosh ROM 汇编源码树是开源的,可从以下地址获取:👉 https://github.com/jonathanschilling/mac_rom。build 构建两套 SDK 库、引导加载器、内核和应用程序;build install 将全部内容写入磁盘镜像(本地 images/ 目录,以及外部 SD 卡,如果存在);build test 执行安装,然后在 Mini vMac 中启动;build sdks 从 Plus 和 SE 的 ROM 源码重新生成两个 SDK 文件夹;build sdktest 运行两套 SDK 的自检;build clean 执行清理。
PlusOS Disk Studio(图形化操作系统构建器与硬盘浏览器)位于仓库根目录下——PlusOSDiskStudio.exe——这款原生高性能 C++ 工具可让你自定义、编译、双启动并管理 Macintosh 硬盘和软盘镜像(.hda、.img、.dsk)。该工作室提供两个独立、专用的对话框:编译并构建硬盘镜像:一键式构建流水线,在 WSL 中运行 make install / build.bat,将引导块、内核和应用程序直接写入 images/PlusOS.hda 以及已连接的 BlueSCSI SD 卡(F:)。双启动与多启动系统设置:配置启动行为:直接启动进入 Mac OS(System 7.5.5、7.1、6.0.8 等)、PlusOS 桌面、PlusOS Shell 或交互式多启动菜单。编辑启动记录(multiboot.cfg):添加自定义操作系统条目、循环切换启动目标 SCSI ID(0–7、Shell、桌面)、删除及重新排序条目。设置自动启动倒计时定时器(以秒为单位),或在启动时手动选择。预构建操作系统自定义与主题:视觉主题:从 Mac OS 7.1 Platinum、Commodore Amiga Workbench 1.3/2.0、Windows 95、Windows 98、Windows Vista/7 Aero Glass 或 Hacker CRT 暗色模式中选择默认样式。壁纸:可在经典 Mac 50% 灰色点阵或实时动画 Matrix 数字雨之间选择。启动问候语与主机名:设置自定义欢迎问候语和标题。细粒度软件包清单与启动核心大小计算:基础启动核心核算:自动计算并显示软件包之前的必需启动需求:引导块(loader.bin,1 KB)、PlusOS 内核(kernel.pex,约 165 KB)以及 HFS 文件系统开销与配置(约 25 KB),启动所需的基础 OS 核心总计约 191 KB。交互式多列清单,在所有 66 个应用程序(系统、工具、游戏、开发、网络)旁带有复选框。自动编译目录扫描器:Disk Studio 和 install.py 都会扫描 build/apps/ 以查找新编译的 .pex 二进制文件。任何在标准目录之外构建的应用程序都会被自动发现,连同其在磁盘上的确切大小一起添加到软件包清单中,并安装。单个软件包大小:直接在列表中显示磁盘上每个二进制文件的确切字节/KB 大小。实时三级占用空间计算:随着软件包的勾选/取消勾选实时更新:基础 OS 核心:约 191 KB(内核、引导块与 HFS——必需);已选软件:Y 个软件包中的 X 个(Z KB);总可启动占用空间:Z KB(基础 OS + 软件)。软盘编译准则与状态:显示总可启动占用空间是否适合标准 Macintosh 软盘限制。在 800 KB 软盘上,软件包必须保持在约 609 KB 以下(总可启动大小 < 800 KB)。在 1.44 MB(1.4M)高密度软盘上,最高支持 1.44 MB 的总占用空间。如果超出限制,会包含容量警报和警告。跨会话记住你的软件包选择(通过 include_apps= 和 custom_apps= 直接持久化到 multiboot.cfg)。快速筛选预设:全部、无、系统(系统与工具)以及游戏。添加自定义应用...:浏览并将外部第三方 .pex 或 .bin 二进制文件连同自动大小检查一起纳入构建流水线。移除所选:立即取消勾选内置软件包或删除自定义外部导入。在编译和构建硬盘镜像时,只有被勾选的软件包会被复制到 :bin: 和 :Games:(以及原始回退存储)中。构建可启动软盘(.dsk):一键式构建器,生成 images/PlusOS_Floppy.dsk(1.44M/800K Macintosh HFS 软盘),仅包含必要的启动文件和硬盘安装程序(零游戏)。设置环境与依赖:一键操作按钮,安装配套的 Python 软件包(针对 machfs、pyserial、requests、urllib3 运行 pip install -r requirements.txt),验证你的 Linux 交叉编译环境(WSL Ubuntu),并引导你完成自动化设置。通用可移植性与仓库自动下载:完全可移植,适用于任何文件夹或盘符,无需硬编码路径。如果未检测到 PlusOS 仓库,Disk Studio 会自动提议从 GitHub(https://github.com/g91/PlusOS.git)下载并初始化构建环境。通用 BlueSCSI 硬件发现:扫描可移动盘符 D: 到 Z:,自动检测 BlueSCSI SD 卡(BOOTTEST.hda、bluescsi.ini、HD60_512 PlusOS.hda),而不假定特定的盘符。强制 PlusOS Shell 锁定:核心运行时环境包(SHELL)在所有软件包选择中永久锁定为已选中,并由内核要求。返回 PlusOS 注入器:配置目标 SCSI ID,并将经典 Mac OS 返回可执行文件注入任意磁盘镜像或软盘镜像。打开硬盘浏览器:专用按钮,立即使用已构建的镜像切换到硬盘浏览器。
- 硬盘浏览器与镜像管理器
(原文较长,此处译出前 6000 字,完整内容请点「打开原文」。)
正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。