让「折腾」这件事变得更好玩一些:在iPad上运行PC系统

移动开发
在 iOS 设备上运行 PC 系统古已有之,不但有各种越狱插件,还有很多偷偷上架在 App Store 里的软件。但自从 iOS 加强对设备内文件的保护之后,由于不再能通过特殊软件访问到除 iTunes 共享文件夹之外的其他文件,那些靠关闭文件共享向苹果隐藏身份的 App 已经销声匿迹了。

在 iOS 设备上运行 PC 系统古已有之,不但有各种越狱插件,还有很多偷偷上架在 App Store 里的软件。但自从 iOS 加强对设备内文件的保护之后,由于不再能通过特殊软件访问到除 iTunes 共享文件夹之外的其他文件,那些靠关闭文件共享向苹果隐藏身份的 App 已经销声匿迹了。

那现在我们是否还有办法在不越狱的情况下继续在 iOS 上运行 PC 系统呢?幸运的是,这些曾经可用的工具都是开源的,在苹果开放了 Xcode 真机调试权限之后,我们可以选择自己下载源代码安装这些虚拟机工具来使用。

由于年代久远,一些软件的代码已无法在新版 Xcode 上直接编译,我于是花了一些时间给旧项目做了更新并放在了我自己的 Github 上。以下介绍的三款软件均会给出原作者的版本和我修改过的版本。想折腾的可以按照「折腾提示」做,不想折腾的 每个软件我都提供了安装好的系统,可以直接尝试。

关于如何利用 Xcode 安装这些开源软件的问题,由于篇幅限制我就不直接写在这里了。

minivMac4iOS

> 下载链接

我曾写了一篇 文章(上古 Mac 操作系统体验指南) 介绍一款叫 vMac 的软件,它可以让你在今天的电脑上运行 Macintosh 的操作系统,这个 App 是它的 iOS 移植版。

 

让「折腾」这件事变得更好玩一些:在iPad上运行PC系统
System 7.5 运行 BASIC 2.0

软件支持模拟 Mac 128K、Mac II、Mac Plus,可以选择直接使用触摸屏或者使用屏幕作为触摸板操作,在 iPhone 上还支持 3D Touch 作为长按使用。

安装提示

在 GitHub 上下载项目的时候需要注意,由于软件引用了第三方库 libmfs 和 libres,下载源代码的时候需要单独点进去下载这两个项目,然后拷贝到工程文件夹的对应位置上,其余和一般安装过程一致。

让「折腾」这件事变得更好玩一些:在iPad上运行PC系统

使用提供的镜像

运行系统需要一个对应 Mac 型号的 ROM 文件和一个启动盘,我这里提供了一个装好系统的镜像,你可以直接通过 iTunes 文件共享复制到设备上使用: 百度云 、 MediaFire

运行的时候首先会出现 Macintosh 的 等待启动盘画面,这时用两个手指向左划可以调出选盘菜单。在选择启动盘之前,你需要先点按左下角的设置按钮。由于我的镜像对应的硬件是 Mac II 的版本,请选择这个硬件,分辨率随意。点按右上角的完成,之后选择磁盘镜像开机就可以了。

让「折腾」这件事变得更好玩一些:在iPad上运行PC系统

第一次运行后的画面是黑白的,可以按照下图中的步骤来切换到彩色显示模式(在苹果菜单中打开「控制面板 Control Panel」,之后选择「显示器 Monitor」,在弹出的对话框中左侧选择彩色,右侧选择 256 色)。需要注意的是色彩会占用大量的内存空间,假如你需要运行一些比较大的程序,黑白模式可以留下更多的可用内存。此外 Macintosh 系统的菜单需要鼠标一直保持长按才会显示,松手就会消失,在选择菜单中的项目的时候需要注意一下。

让「折腾」这件事变得更好玩一些:在iPad上运行PC系统

使用时两个手指向上滑动可以显示键盘,使用三个手指可以拖动窗口等目标。如果使用 iPhone,也可以使用 Force Touch 拖动目标。

你可以在这里找到能在系统上运行的软件: GoogleSite (没有梯子的可以到我上面提到的 vMac 介介绍文中找到打包的文件)

折腾提示

如果要在 App 中自己安装系统,可以在我上面给出的 vMac 介绍文的链接中下载到系统的安装盘,各种硬件 Rom 等材料,注意在 App 中点按编辑按钮并按加号,可以生成空的磁盘镜像。

版本区别

原作者版本: Github

我这个版本和原作者的版本没什么区别,我只是觉得原作者的图标太丑自己做了一个而已。:new_moon_with_face:

DosPad

> 下载链接

这款软件原名 iDos,在非常早的时候就打着怀旧 Dos 游戏的旗号堂而皇之的过审出现在了 App Store。它自带了几个 Dos 游戏,但假如你用一些浏览 iOS 文件的软件看他的文件结构的话,就会发现这实际上是一个基于 DosBox 的虚拟机程序。

后来 iOS 收紧文件权限之后,这款软件就再也不能直接使用了,不过其开源的完整版本保留了 iTunes 文件共享的接口,所以安装其开源版本依旧可以好好玩耍。软件支持所有基于 Dos 的操作系统,不过基本上只有 Win3.1 可以保证运行效率。你可以在里面安装一些 Dos 游戏来玩,其自带的摇杆功能可以非常方便的玩游戏。

让「折腾」这件事变得更好玩一些:在iPad上运行PC系统
日常打牌

 

让「折腾」这件事变得更好玩一些:在iPad上运行PC系统
额,我知道有两个字写反了

使用提供的镜像

这个用起来比较简单,只要把解压出来的所有文件用 iTunes 文件共享扔进去就可以了,如果有同名文件夹选择覆盖。

我预装了 Windows 3.1,开机输入 win 可以运行。内置了早期版本的 Office、VB、VC 等,由于这些程序需要一个叫 share 的 Dos 组件来运行,而 DosBox 对这组件支持不好,所以在运行 Windows 之前要先运行 fakeshar.com 来模拟一个 share 环境,否则会报错。

有一个小提示,假如你想拖动一个东西的话,除了可以切换到鼠标面板之外,还可以长按屏幕。当屏幕上出现指纹图案之后,就表示现在的鼠标是按住的状态。于是移动鼠标就是拖动了。此外你还可以通过快速点按两次并按住拖动的方法。

折腾提示

  • DosPad 的 iTunes 文件共享目录其实就是 C 盘。
  • 如果要挂载 IMG ISO 镜像等可以使用 IMGMOUNT 命令,详情见: DOSBOX Wiki
  • 虚拟机的显示芯片为 S3’s 864,分辨率酌情,要么会爆炸,驱动安装详情见: SierraHelp
  • 虚拟机的 Midi 硬件为 Ad Lib general,需要在控制面板的 Midi 映射程序中手动选择。

版本区别

原作者版本: Github

  • 由我设计的新图标。
  • 调整系统盘位置,方便使用。
  • 修改编译选项,支持编译到新设备。
  • 运行时系统不会锁定屏幕。
  • 移除了已经无用的 iDos 分支。

已知问题

手机上界面布局不对,正在尝试解决。

iBox

> 下载链接

iBox 是近两年开发的 Bochs 移植,但原作者做完基本功能就弃坑不管了。由于基于 Bochs 这一功能较为完整的虚拟机,使得 iBox 的兼容性极高,可以运行各种各样的系统。不管是 Windows、Linux 甚至乔布斯离开苹果时候做的 NextStep 也可以运行。但是因为 Bochs 完全模拟了 x86 及其外围设备,导致这款软件速度很慢。所以虽然对于喜欢折腾的人来说可玩性极高,但却并不实用,假如你只是想玩一些老游戏之类的,我会更推荐上面的 DosBox。

让「折腾」这件事变得更好玩一些:在iPad上运行PC系统

让「折腾」这件事变得更好玩一些:在iPad上运行PC系统
OS/2 WinXP 和 NextStep

安装提示

软件依赖 SDL 库,需要先到 SDL 官网 下载 源代码 和 工具包 。

工具包是一个 DMG 文件,打开后需要先把里面白色乐高图标的 SDL2.framework 文件拷贝到 /Library/Frameworks 目录中。之后再解压下载的源代码,把 include/SDL_config_iphoneos.h 这个文件复制到 /Library/Frameworks/SDL2.framework/Headers/ 里面。之后就可以正常编译了。

使用提供的镜像

和前面的 minivMac 一样,iDos 也使用 IMG 文件作为系统盘,你可以把我提供的几个系统盘通过 iTunes 文件共享复制到设备上。运行之后点击加号添加一个配置文件。先选择从 HDD 启动,并把视频扩展(Extension)设置为 None。再点击 Drives 添加一个 HDD,并选择你希望启动的镜像文件。最后点击右上角的保存就可以开始运行了。

 

让「折腾」这件事变得更好玩一些:在iPad上运行PC系统

在竖屏状态下键盘会一直显示,横屏状态下摇晃设备可以显示和隐藏键盘。

折腾提示

  • iBox 就是 Bochs,只要你可以制作在电脑版 Bochs 成功运行的镜像,基本上就可以在这运行了。
  • 没足够的时间别折腾,巨坑。

版本区别

原作者版本: Github

  • 随便设计了一个新图标(修这 App 都很费时间,原版压根没有图标,这个图标先凑活用着)。
  • 运行时不会锁定屏幕。
  • 支持 Swift 3,可以用 Xcode 8 编译。
  • 修复多次晃动屏幕时画面乱飞的问题。
  • 修复全屏时有画面在屏幕外看不到的问题。
  • 修复在 iPad Pro 上运行时设置窗口尺寸问题。
责任编辑:未丽燕 来源: 少数派
相关推荐

2020-09-28 18:01:43

开发彩色代码

2020-09-27 14:43:37

开发工具技术

2018-04-20 14:57:09

2012-09-11 09:16:52

Hadoop

2010-05-21 15:23:25

ipadSAP

2012-12-04 17:13:21

2020-07-20 17:50:11

手机QQ移动应用

2015-09-16 14:20:25

2017-03-21 23:10:22

2020-07-02 09:46:05

AI

2015-12-02 15:23:56

AWSAuto Scalin失控

2014-05-07 09:41:21

UbuntuTrusty Tahr

2017-10-24 10:54:34

桌面macOSPC

2023-05-12 17:45:15

MySQL索引排序

2014-12-17 17:18:44

Android进程root

2011-10-12 11:24:44

AndroidPC

2013-07-02 09:43:02

编程策略

2013-07-02 10:18:20

编程编程策略

2010-04-02 09:42:47

Windows云计算IPAD

2023-07-03 22:28:19

6GHz6G技术
点赞
收藏

51CTO技术栈公众号