Project Icon

MacintoshPi

Raspberry Pi 上的经典 Mac OS 和 Commodore 模拟器

MacintoshPi 项目让 Raspberry Pi 能全屏运行 Mac OS 7、8 和 9,支持声音、网络和调制解调器仿真。无需 X 窗口系统即可运行,还集成了 Commodore 模拟器、虚拟调制解调器和 CD-ROM 仿真等功能。在 Raspberry Pi OS 上运行一个脚本并等待约两小时即可完成安装,为复古计算爱好者提供了便捷的解决方案。

MacintoshPi

MacintoshPi是一个小型项目,允许在Raspberry Pi上运行全屏版本的苹果公司的Mac OS 7、Mac OS 8和Mac OS 9,具有声音、活跃的互联网连接和调制解调器模拟功能。所有这些都无需X.org管理器,只需一个多媒体SDL2库,并从CLI / Raspberry Pi OS (Legacy)运行。这使得模拟器可以充分利用Raspberry Pi的性能,使其更加稳定,并与其他复古软件结合使用更加实用。安装只需在一个干净的Raspberry Pi OS (full) Legacy上运行一个脚本,然后等待约两小时编译和安装软件包。此外,通过项目中包含的文档,可以在双启动模式下放置最快的(裸机)Commodore 64/128/PET模拟器BMC64,从而在一张SD卡上构建一个有趣的复古软件包。整个MacintoshPi项目可在Raspberry Pi Zero 2 W、2、2B、3、3B、3A+、3B+上运行(目前不支持版本4)。

以下是一个简短的视频片段,展示了MacintoshPi的功能:

更长版本的视频可以在这里找到

项目组件

该项目包含以下用于Raspberry Pi的自动编译和安装bash脚本:

  • Macintosh 68K模拟器**Basilisk II**,支持Mac OS 7(System 7.5.5)和Mac OS 8。
  • PowerPC模拟器**SheepShaver**,支持Mac OS 9。
  • 开发库**SDL2**,旨在提供对音频、键盘、鼠标、游戏手柄和图形硬件的低级访问。
  • Commodore 64/128/PET模拟器**VICE**。
  • MacintoshPi虚拟调制解调器,使用**tty0ttytcpser**项目,与上述两个Apple和Commodore产品的模拟器以及Raspberry Pi OS本身一起运行,还允许任何原始终端复古软件连接到现代telnet BBS。
  • CD-ROM、DVD-ROM模拟器**CDEmu**,允许在Raspberry Pi OS下挂载CD镜像(iso、toast、cue/bin、mds/mdf等)- 与BasiliskII和SheepShaver模拟器一起运行,也可在Raspberry Pi OS上运行。模拟器已自动配置以支持该虚拟CD-ROM驱动器。
  • 一致的**MacintoshPi启动器**,可以在不同分辨率下运行所有这些系统(重启后),具有不同配置、自动启动支持和各种启动提示音。
  • SyncTERM - 一个用于从Raspberry Pi OS连接BBS的应用程序,与SDL库一起编译。
  • 有关如何在双启动模式下运行Raspberry Pi OS和**BMC64**(Raspberry Pi最快的Commodore模拟器,裸机/低延迟模拟器)的信息。

Mac OS镜像已预先配置以支持在线连接。

Apple-1、Apple ][、Altair和IMSAI模拟器已移至新的DinosPi项目。

特别感谢Christian Bauerkanjitalk755

安装

该项目必须安装在干净的完整Raspberry Pi OS(oldold Legacy)Buster映像2022-04-04-raspios-buster-armhf.img.xz上 - 你必须切换到命令行或将系统启动设置为CLI(开始 -> 首选项 -> Raspberry Pi配置:选择To CLIWait for network)。安装过程需要至少16 GB的SD卡。

安装整个MacintoshPi软件包只需运行单个命令./build_all.sh - 所有依赖项和所需软件包将自动安装:

git clone https://github.com/jaromaz/MacintoshPi
cd MacintoshPi
./build_all.sh
# 就是这样 - 现在你可以运行,例如,Mac OS 9:
mac os9

编译和安装软件包的过程可能需要约两个小时。

这些子项目中的每一个都可以通过运行相应子项目目录中包含的编译和安装脚本来单独安装。安装脚本必须以pi用户身份运行。

MacintoshPi项目组件的详细描述

Basilisk II(Mac OS 7和8)和SheepShaver(Mac OS 9)

该脚本下载启动Mac OS所需的所有文件 - ROM、系统镜像,并创建配置文件。安装时,/home/pi/Downloads目录将在Apple桌面上显示为Unix目录 - 文件可以在这两个资源之间双向复制,但应用程序不能直接从该目录启动。此外,还编译了所谓的NetDriver,允许从虚拟化的Apple系统进行完全的在线访问。 到目前为止,全屏模式的Mac OS 9(没有不必要的窗口管理器)在Raspberry Pi上还不可用。这可能是第一个允许在全屏模式下使用Mac OS 9和SDL2的实现,具有声音和在线连接功能 - 甚至在小型Raspberry Pi 2W上也可以运行。 每个系统必须使用适当的命令启动:mac os7mac os8mac os9。可以通过在启动相关系统的命令末尾添加图像文件名来将额外的.img.dsk文件添加到启动的系统中,例如

mac os9 demo.img

可以使用键盘组合CTRL+SHIFT+ESC停止Basilisk II和SheepShaver模拟器。这会立即返回到命令行。在Mac OS 9中,COMMAND键通过左ALT键获得,在Mac OS 7和Mac OS 8中通过CTRL键获得。 有关这些模拟器的更多信息,请访问BasiliskIISheepShaver网站。

MacintoshPi @ Raspberry Pi

VICE

编译 VICE Commodore 模拟器的脚本,可用于将模拟的 Commodore 连接到现代 BBS。它允许下载文件,这些文件可以在同一台 Raspberry Pi 设备上使用,但在双启动安装的快速 BMC64 模拟器上使用。将 BMC64 分区安装到 rootfs 后,可以直接从 BBS 下载数据到虚拟驱动器,然后在 BMC64 中自动可用。Raspberry Pi 上的 VICE 模拟器非常慢,因此建议对更高要求的应用程序使用 BMC64 模拟器。有关 VICE 模拟器的更多信息,请访问项目网站

MacintoshPi 虚拟调制解调器

一个在 Raspberry Pi OS 中编译和安装虚拟调制解调器的脚本,允许使用上述 Basilisk IISheepShaverVICE 模拟器以及 Raspberry Pi OS 本身启动的任何终端软件连接到现代 telnet BBS。 MacintoshPi 虚拟调制解调器 由 systemd 控制,使用 tpcser 软件,通过 tty0tty 项目写入虚拟设备 /dev/tnt0。数据可以从另一个虚拟设备 /dev/tnt1 读取,从而成为系统中的虚拟串行端口。调制解调器在系统启动后默认启动。

可以使用标准的 systemd 命令重置或暂停:

sudo systemctl stop vmodem

sudo systemctl reset vmodem

速度(bps)更改选项可以在配置文件中设置,如提供的示例条目所示:

/etc/vmodem.conf

要连接到 telnet BBS,只需在终端应用程序中运行以下命令:

ATDT telnet_url:port

例如:

ATDT borderlinebbs.dyndns.org:6400

虚拟调制解调器与 VICE Commodore 64 模拟器兼容,但只能与使用 x64sc 文件启动的版本兼容。

根据模拟的调制解调器速度

系统最大速度 bps
Commodore / VICE2400
Mac OS 7-8 / BasiliskII28800
Mac OS 9 / SheepShaver28800
Raspberry Pi OS38400

配置虚拟调制解调器

  • 在 VICE Commodore 64 中,运行命令 x64sc 并选择:F12 -> Machine settings -> RS232 Settings: 按下图设置屏幕,同时用绿色标记适当的点:

  • Basilisk IISheepShaver 中,配置已在其配置文件中自动完成。在 Apple 终端应用程序中,只需选择标准串行端口和在 Raspberry Pi OS 的 /etc/vmodem.conf 文件中设置的调制解调器速度(默认 2400 bps)。

  • 在直接在 Raspberry Pi OS 下的终端应用程序(如 minicom)中,只需指定串行端口:/dev/tnt1/etc/vmodem.conf 文件中显示的速度。

CDEmu

一个编译 CDEmu CD/DVD 模拟器的脚本,允许挂载 isotoastcue/binmds/mdf 等多种格式的 CD 和 DVD 镜像。该应用程序类似于 Windows 的 Daemon Tools,可与 BasiliskIISheepShaver 以及 Raspberry Pi OS 一起运行。它允许您创建旧 CD-ROM 的镜像,将其复制到 Raspberry Pi,并在 Raspberry Pi 上模拟的 Apple 系统中安装软件。 不再需要将 .toast 文件复制到磁盘镜像或用 Mac OS 软件挂载它们 - 现在您可以在 Raspberry Pi OS 下使用 unar 命令解压 .sit 文件,然后使用 cdload 命令在 Raspberry Pi OS 下挂载解压后的 .toast 文件,并在任何 Mac OS 上像使用普通 CD-ROM 一样使用 CD 镜像。在 CDEmu 中启动的音频 CD 在 Raspberry Pi OS 的图形和文本模式下都能正常运行,但在 Basilisk IISheepShaver 模拟器中声音不工作。有关 CDEmu 的更多信息,请访问项目网站

最简单的挂载 CD 镜像的方法是使用以下命令:

cdload image.toast

CD 将在虚拟设备中可用:

/dev/sr0

可以使用以下命令从虚拟设备卸载镜像:

cdunload

MacintoshPi 启动器

模拟器的最大性能是在模拟系统的原生分辨率下实现的,即如果我们想在 640x480 分辨率下启动 Mac OS,建议 Raspberry Pi 应该以 640x480 分辨率启动。

启动器的任务是启动给定版本的 Mac OS,如果已经以适当的参数运行,则用分配给特定系统或任何其他定义应用程序的适当屏幕分辨率和位置覆盖 config.txt 和任何其他系统文件,然后在系统重启后立即以新分辨率启动模拟器或应用程序。

包含系统要覆盖的数据的目录名称与 mac 命令后面的参数名称相同,例如 mac os8-480 将以 640x480 分辨率重启 Raspberry Pi OS,然后以该分辨率启动 Mac OS 8,但 mac os8 命令将简单地以最近选择的分辨率启动 Mac OS 8

每个系统启动时都会播放不同的启动音效 - 根据所选分辨率:Macintosh 128K、Macintosh Classic II、Macintosh Color Classic、Macintosh Performa 520、Power Macintosh 550、Power Macintosh G3 的声音。

启动器还允许使用 mac os7 file.img 等方式将 .img.dsk 文件添加到 Mac OS - 然后将启动相关的 Mac OS,镜像内容将作为额外驱动器出现在桌面上。

SyncTERM

目前这是使用 telnet 协议连接现代 BBS 的最佳应用程序。它使用 SDL 图形库的选项编译,因此在图形模式下使用适当调整的字体而不是系统字体。同样,SyncTERM 不需要 X.org 就能运行,程序本身默认以全屏模式启动。

Raspberry Pi OS 双启动

有关启动 Raspberry Pi OS 与快速 Commodore 模拟器 BMC64 双启动的可能性信息,包含在单独的 README dual-boot 中。

如何安装其他软件

Mac OS 7Mac OS 8Mac OS 9 的软件可以在以下网站找到:

这些网站可以直接在Raspberry Pi OS的Chromium浏览器中舒适地使用 - 下载的文件默认保存在/home/pi/Downloads目录中,该目录被配置为本项目中所有Mac OS的共享目录 - 在Mac OS下,它显示为Unix驱动器。

虽然并非每个下载的应用程序都能在Basilisk II或SheepShaver模拟器中运行(例如OpenGL应用程序就是这种情况),但绝大多数应用程序都能正常运行。在下载之前,请确保软件属于abandonware组,或者如果可能的话购买所需的许可证。

根据下载文件的类型,有三种安装软件的方法:

  1. 下载的文件扩展名为.sit,包含.toast.iso CD镜像:

    在Raspberry Pi OS下使用unar file.sit命令解压文件;删除解压后的.toast文件名中的任何空格(如果有的话),然后使用cdload file.toast命令挂载.toast文件。接下来,启动给定的Mac OS版本,从桌面上显示的虚拟CD驱动器安装软件。

  2. 下载的文件扩展名为.sit.zip,包含.img.dsk文件:

    在Raspberry Pi OS下使用unar file.situnzip file.zip命令解压文件;删除解压后的.img.dsk文件名中的任何空格,然后使用mac os7 file.img命令启动给定的Mac OS - 镜像将自动添加到系统中,并在桌面上显示为额外的驱动器。

  3. 下载的文件扩展名为.sit,包含直接用于Mac OS的软件:

    首先下载Stuffit Expander应用程序的镜像并将其安装在Mac OS中;然后,将原本下载到Downloads目录的.sit文件从Mac OS中的Unix目录复制到Macintosh HD虚拟驱动器,并双击该文件以直接在Mac OS中解压。

关于我的Macintosh Classic II

MacintoshPi Classic II

我的MacintoshPi版本由Raspberry Pi 3B+驱动。我在eBay上购买了Macintosh Classic II机箱 - 它完全发黄,但我使用18%的过氧化氢和适当的光照恢复了它的出厂状态。 它的LCD IPS 10.1'' 1024x600px HDMI Waveshare 11870屏幕旋转了180°,这样接线就不会妨碍Macintosh上框。我用3D打印件填充了平面屏幕和CRT形状剩余部分之间的空间,这个设计来自2GuysTek YouTube频道的作者。Waveshare屏幕稍微有点宽,但适当操作config.txt文件可以实现软件旋转并为每个系统或应用程序精确定义显示的屏幕图像(重启后)。屏幕也太低了,所以我用黑色卡纸填充了空隙,这样这些元素几乎无法区分(看起来像围绕屏幕的框架的黑色背景)。然而,我建议使用不同的、稍大一些的屏幕,然后通过软件减小显示的屏幕图像并确定其适当位置。 键盘和鼠标是Logiteh MK295 Silent Wireless Combo - 它们在风格上只与当时提供的外围设备略有相似,但它们也是无线的,使用单个蓝牙适配器。我添加了两个连接到Raspberry Pi 3B+模拟音频/插孔输入和分配器的扬声器。我将所有这些元素集成在Apple Macintosh Classic II机箱内。

关于这个项目

我已经研究Apple电脑模拟这个主题大约五年了(因为我真的喜欢并欣赏Apple复古系统),这个主题相当复杂:构建正确镜像的问题,为互联网支持配置系统镜像的问题,模拟器的适当配置问题,编译模拟器和(单独的)SDL2的正确选项(因为当然,来自软件包的SDL2在模拟中不起作用),性能问题,正确编译NetDriver的问题,库版本的问题(因为它们必须是遗留版本),最小化鼠标移动延迟的问题,声音问题等等。当然,我说的是初学者会遇到的问题,之后他们会感到沮丧并放弃这些模拟器。既然我在我的Raspberry Pi上解决了所有这些问题,我决定将这个解决方案提供给每个人,这样你只需运行一个脚本就可以毫不费力地在一个包中获得所有三个系统 - 这就是这个小项目的目的。

更多信息(和高分辨率照片)请访问我的网站:https://jm.iq.pl/MacintoshPi

支持

如果你想支持这个项目,你可以向我的PayPal账户转账任何你希望的金额。

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

白日梦AI

白日梦AI提供专注于AI视频生成的多样化功能,包括文生视频、动态画面和形象生成等,帮助用户快速上手,创造专业级内容。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

讯飞绘镜

讯飞绘镜是一个支持从创意到完整视频创作的智能平台,用户可以快速生成视频素材并创作独特的音乐视频和故事。平台提供多样化的主题和精选作品,帮助用户探索创意灵感。

Project Cover

讯飞文书

讯飞文书依托讯飞星火大模型,为文书写作者提供从素材筹备到稿件撰写及审稿的全程支持。通过录音智记和以稿写稿等功能,满足事务性工作的高频需求,帮助撰稿人节省精力,提高效率,优化工作与生活。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号