Mini vMac

软件截图:
Mini vMac
软件详细信息:
版本: 3.5.8 更新
上传日期: 2 Oct 17
开发: Paul C. Pratt
许可: 免费
人气: 28

Rating: nan/5 (Total Votes: 0)

迷你vMac 是一款开源的,免费的,跨平台的图形化软件,用C实现,并由偏移设计,用作苹果公司创建的Macintosh Plus计算机系统的仿真器,运行在Linux,BSD,Microsoft Windows和Mac OS X操作系统上。


作为苹果设计的最早的Macintosh机器之一,Macintosh Plus仅运行旧的Mac软件,当然这些软件在最近的Macintosh电脑上无法使用。因此,Mini vMac软件有助于保存历史记录。它被设计为尽可能易于使用,便携和简单。


迷你vMac入门

要在GNU / Linux系统上使用Mini vMac应用程序,请确保您下载与计算机硬件体系结构对应的二进制包,将存档保存在计算机上的某个位置,将其解压缩并双击可执行文件

应用程序将打开,通知您无法找到Macintosh Plus系统的ROM映像。这意味着您还必须获取一个vMac.ROM文件(更多详细信息可以在项目主页上找到),并将其放在与Mini vMac可执行文件相同的文件夹中。

获得Macintosh Plus ROM映像后,您必须关闭程序并重新打开。如果ROM文件有效,系统将自动启动并允许您像使用任何其他虚拟化操作系统一样使用它。


运行在所有主流操作系统上

这个软件实际上是vMac应用程序的一个分拆,多年来还没有更新。为了方便起见,它作为前面提到的操作系统的预先构建的二进制包进行分发,支持64位(x86_64)和32位(x86)指令集架构。


新版本:

  • 今天的Mini vMac 3.5.8更新了稳定版本以解决PowerPC OS X上的问题,并且还修复了影响变更服务的问题。除了PowerPC OS X('mach')和x86-32 OS X('imch')以外的平台上,Mini vMac 3.5.8应与Mini vMac 3.5.7相同,但版本字符串和修改日期除外。 / LI>
  • 据报道,“Mini vMac 3.5.7不会在PPC G3系统上运行”。事实证明,GCC标志“-mmacosx-version-min”应该为所有编译的文件指定,而不仅仅是依赖平台的代码。它影响到像所需的CPU这样的东西。对于x86-64 OS X,发生这种变化对Mini vMac没有影响,x86-32 OS X有一些效果,最大的影响是PowerPC。

3.3.3中的新功能

  • 默认编译中的新功能:
  • 更多操作系统由Mini vMac官方支持:
  • x86-32上的FreeBSD(在构建系统中使用“-t fbsd”)
  • x86-64上的FreeBSD(“-t fb64”)
  • x86-32上的OpenBSD(“-t obsd”)
  • x86-64上的OpenBSD(“-t ob64”)
  • x86-32上的NetBSD(“-t nbsd”)
  • x86-64上的NetBSD(“-t nb64”)
  • x86-32上的蜻蜓BSD(“-t dbsd”)
  • x86-64上的蜻蜓BSD(“-t db64”)
  • OpenIndiana on x86-32(“-t oind”)
  • OpenIndiana on x86-64(“-t oi64”)
  • Linux on ARM(“-t larm”)
  • Linux on SPARC(“-t lspr”)
  • Minix 3.2(“-t minx”)
  • 这些端口适应与Linux端口相同的X Window代码,并且应具有相同的功能,除了一些当前不是声音。由于缺少汇编语言调整,x86-64版本的速度更慢,如果x86-32版本可以工作,则不应该使用x86-64版本。
  • X版本现在可以使用开放声音系统(OSS)API播放声音。 (通常在每个操作系统上使用兼容的实现,而不是官方的OSS本身)。默认情况下,FreeBSD和NetBSD启用了声音。声音编译没有问题(使用“-sound 1”)在蜻蜓BSD和OpenIndiana,但我还没有能够测试这些。在蜻蜓BSD上获得声音似乎需要一些手动设置。 OpenIndiana在VMware Fusion中似乎没有任何声音。声音也在OpenBSD上编译没有问题,但它不起作用 - 设置所需的采样率失败。 Minix似乎还没有支持声音。还可以在Linux上使用OSS API,使用新的“-snd-api”构建系统选项。
  • 现在,X版本将尝试查看包含ROM映像的应用程序的文件夹,如Macintosh和Windows版本。 (也适用于disk1.dsk等文件)如果无法确定应用程序目录,则使用当前目录。这适用于Linux,FreeBSD,NetBSD,Dragonfly BSD和OpenIndiana,但不支持OpenBSD和Minix。
  • X版本现在有一个新的命令行选项“-d [directory_path]”,其中使用[directory_path]而不是应用程序目录来查找ROM映像,以及disk1.dsk等文件
  • X版本现在有一个新的命令行选项“-n [app_name]”,其中使用[app_name]而不是Mini vMac窗口的标题的应用程序名称。
  • X版本现在支持像Macintosh和Windows版本一样的中央ROM文件夹。如果“〜/ .gryphel / mnvm_rom”存在,Mini vMac将会看到ROM映像。如果不存在,它将在应用程序目录中查看。 (而且-r命令行选项将覆盖两者。)
  • 更改行为默认​​编译:

  • 将仿真屏幕绘制到实际画面更为有效。当颜色深度为4位或更少时,不是转换每个像素,所以有一个256个条目的表,用于一次转换一个字节。更为小心的只是转换矩形框内的像素,而不是整个屏幕
  • Linux版本动态加载ALSA库以播放声音,因此即使没有安装ALSA,Mini vMac仍然可以运行,没有声音。 (这种技术在SDL中被看到)所以默认情况下,Linux版本现在编译有声音,与Mac和Windows版本相匹配。
  • 在Linux版本中,当使用ALSA播放声音时,不再调用snd_pcm_delay。播放样本之前的延迟并不真正相关。 Mini vMac需要知道什么是缓冲区的时间。因此,Mini vMac现在看缓冲区大小减去缓冲区中的可用空间,这可能更有用,以防止缓冲区欠载,同时最小化延迟。
  • X版本现在使用咨询锁定拒绝打开,以便写入由另一个Mini vMac副本打开的磁盘映像。以前,X版本的Mini vMac可能打开已经打开的磁盘映像,可能会破坏映像。如果Mini vMac只能打开一个只读的磁盘映像,例如由于用户已锁定该文件,则不会使用该建议锁,并且Mini vMac的多个副本可以使用。
  • X版本现在尝试使用应用程序名称来设置其窗口的标题,如Macintosh和Windows版本。 (如果无法确定应用程序名称,则会像以前一样使用“Mini vMac”。)这与应用程序目录同时发现,并且是为相同的操作系统实现的。
  • 现在,在查找disk1.dsk等文件之前,将扫描命令行参数。这对于新的“-d”是必要的。选项工作,并且具有副作用,如果在命令行上指定了磁盘映像,它们将被首先打开。如果命令行上有图像,那么Mini vMac现在就不用去寻找disk1.dsk了。
  • “-l” (或Windows上的“/ l”)命令行选项被删除。 “速度z”应该使用构建系统的选项。命令行选项来自构建系统之前,决定有利于构建运行时间选项。
  • 错误修正在默认编译:
  • Windows版本现在将数字键盘上的Enter键映射到Macintosh Enter键。现在可以将该键与主键盘上的Enter键区分开,并将其映射到Macintosh Return键。以前没有办法键入Macintosh Enter键。感谢“Alex”指出这个问题。
  • 在Windows版本中,在全屏模式下,检查键下拉事件是否是自动重新键是不正确的。所以潜在的钥匙可能会被忽略,当他们不应该是。我已经取消了支票,因为不清楚如何正确执行(使用“低级别键盘挂钩”)时。这不会影响Macintosh仿真,因为对冗余事件进行了额外的检查。它可以影响控制模式,例如按住Control-M时。
  • Windows版本现在响应WM_QUERYENDSESSION消息,因此如果您尝试使用Mini vMac运行(带有已安装的磁盘映像)关闭计算机,则Mini vMac将抱怨并停止关闭。
  • 在Linux版本中,使用ALSA播放声音,在将任何声音样本放入ALSA缓冲区之前,调用snd_pcm_start。这可能会在开始时引起口吃,或根据一份报告,可以防止声音工作。 Mini vMac现在等待它的私人缓冲区已满,然后传输到ALSA缓冲区,然后开始播放声音。
  • 当为ARM编译Linux版本时,它包含一个检查,snd_pcm_avail_update的结果是否合理,如果不是调用snd_pcm_status_get_avail。这对Raspberry Pi的Raspbian似乎是一个错误。

  • 仿真时钟没有被正确初始化,并且在第一个“第二”之后是正确的。中断。
  • 如果模拟屏幕太大,无法放在实际屏幕上(当自动滚屏可用时),如果已更改的仿真屏幕区域与仿真屏幕的可见区域不相交,则无效矩形为用于绘图。我发现这个时候尝试了Vector Linux 7,似乎有一些额外的调试检查。
  • 在不太可能的情况下,在全屏模式下,自动滚屏可能无法滚动显示右下角或最后一列像素的最后一行像素。
  • 如果主机不足以使Mini vMac以1x速度运行,那么Mini vMac将无法顺利运行,定期暂停几秒钟。这种情况的测试是不正确的,一个字节的计数器会溢出。 (尽可能小的这样的计数器使得更容易检测到这样的错误。)
  • 在X Window版本的Mini vMac中,当使用Mini vMac扩展在主机系统上创建文件时,例如使用ExportFl,则不会执行保存对话框。以前,这个文件只能在应用程序目录中被创建,并带有请求的名称。这不安全,最糟糕的是它允许在Mini vMac中运行的程序来替换Mini vMac应用程序。因此,现在,文件将被创建在名为“输出”的文件夹中在包含应用程序的目录中。如果不存在,将创建该文件夹。
  • 在Microsoft Windows版本中,如果在超过路径合法的命令行上将磁盘镜像的路径传递给Mini vMac,则会产生缓冲区溢出。
  • Windows CE版本遭受了点腐败。它现在可以编译,至少在Windows Mobile版本5.0的Microsoft Device Emulator上工作。我不知道它是否适用于真正的硬件。有人在乎吗? (Windows Mobile已停止,并被Windows Phone取代。)此端口开始干扰维护主要的Windows版本,并且选择是完全删除它或使其可维护。
  • 新功能未在默认编译:

  • 新的构建系统选项“-lt”使Mike Fort的LocalTalk模拟。目前有一些限制。它仅适用于OS X.它需要运行命令“sudo chmod ugo + rw / dev / bpf *”允许Mini vMac(和其他人)访问所有网络流量。 “-1t”默认情况下,Mini vMac可以在后台运行,因为如果没有运行Mini vMac,则无法成为正确的LocalTalk节点。而您需要在选择器中手动打开AppleTalk - 我可以将PRAM标志设置为使用AppleTalk启动但不能正常工作。
  • 新的构建系统选项“-lang pol”选择Przemyslaw Buczkowski的用户界面的波兰语翻译。
  • X版本最初支持颜色(适用于Mac II仿真)。迄今为止,X版本仅支持24位“TrueColor”,并且对格式有其他一些限制。我怀疑除了TrueColor之外的任何东西都在现代机器上使用,所以可能不支持其他选项。可以使用其他深度,如15,16和32位,如果我可以找到一种方式来测试它们,可能应该支持它。

  • 一个新的构建系统选项“-mf”允许从默认值2更改放大倍率。例如,“-mf 3”将放大倍率设置为3.选项“-mf 1”禁用放大(删除Control-M命令)。放大系数必须是整数。
  • 更改行为不在默认编译:
  • Mac II仿真的默认颜色深度为“-depth 3”而不是“-depth 0”。
  • 对于Macintosh II仿真,AutoSlow默认情况下已禁用“-as 0”。 AutoSlow可能需要进一步调整才能与Mac II仿真一起使用。
  • 在X版本中,现在检查fwrite和fread在磁盘映像上的结果是否有错误,这会阻止最近Ubuntu中的编译器警告。
  • 错误修正不在默认编译:
  • 修正了“AP”报告的DIVS.L指令中的错误。 (在Mac II仿真中使用的A 68020指令。)
  • 修正了由“AP”报告的BFFFO指令,该指令已经完全中断了。 (另一个68020指令用于Mac II仿真。)
  • 寄存器上的位域操作现在使用旋转而不是移位。所选择的位可以是非连续的,如“AP”所指出的,并由文档证实。 (位操作字段已添加到68020中。)
  • 现在,对存储器进行位字段操作,只能根据需要操作尽可能多的字节。以前,它总是以5个字节运行,如“AP”所指出的,如果在内存映射设备上运行,则可能会产生不良影响。
  • “MoveP.L,Dn”指令混合了移动和掩蔽的顺序,因此被完全破坏,如“AP”所报告的。
  • 在Macintosh II仿真中允许额外大量视频RAM的黑客无法正常工作,因为用于CPU仿真中的地址空间转换的阵列未分配足够大。现在,构建系统选择分配大小。 (这个问题是1024x768,数百万种颜色)。更详细的说明:当计算机处于24位模式时,每个NuBus卡只能获得1M的地址空间。而Mac II似乎通常采用24位模式。当需要更多的视频RAM用于所请求的编译时间选项时,Mini vMac将使用相邻NuBus插槽的地址空间。
  • 修正了“-min-extn”在Linux版本中构建选项。
  • 构建系统:
  • 添加了构建系统选项“-api cco”将Apple的Cocoa API用于OS X,而不是不推荐使用的Carbon API。但是Mini vMac的可可端口尚未被认为已经准备好正式支持,因此仍然使用Carbon版本。
  • 添加了构建系统选项“-api sdl”使用Simple DirectMedia Layer 1.2 API。这被添加为Cocoa端口的垫脚石 - 通过将SDL的源代码与Mini vMac的SDL端口的源代码相结合,然后删除所有不需要的内容,然后大量清理,直到最初的本机可可港口涌现。然而,SDL端口可以按原样用于连接到SDL支持的其他平台。但这不是(尚未)正式支持。
  • 添加了构建系统选项“-t mx64”适用于x86-64上的Apple X11实现。 (以前支持x86-32和PowerPC。)
  • 添加了构建系统选项“-t cygw”对于Cygwin / X for Microsoft Windows。 Cygwin也可用于编译具有“-t wx86 -e cyg”的常规Microsoft Windows版本。

  • 添加构建系统选项“-t irix”对于IR Graphics,Silicon Graphics,Inc.,感谢John Perkins。
  • MinGW可用于使用构建系统选项“-t wx86 -e mgw”编译Mini vMac。由于Bloodshed Dev-C ++基于MinGW,“-t wx86 -e dvc -cl”以前会提供类似的结果。
  • 在构建Linux版本时,更改链接命令的顺序。事实证明,有一个常规的顺序是如何指定库,我不知道,因为我没有遇到直到Ubuntu 11.10的链接器。
  • 构建系统现在应该可以在其他仿真器(如SheepShaver)中正常工作。匿名报告说,构建系统会使模拟器崩溃。对于构建系统是否在Mini vMac中运行(以便生成的归档可能导出到主机)的测试不够好。
  • 构建系统现在可以抑制使用Microsoft Visual C ++编译Macintosh II仿真时生成的警告消息,感谢William Grana的报告。

截图

mini-vmac-220691_1_220691.gif
mini-vmac-220691_2_220691.gif

显影剂的其他软件 Paul C. Pratt

Mini vMac
Mini vMac

4 May 20

意见 Mini vMac

评论没有发现
添加评论
打开图片!