时钟信号:8位和16位平台的延迟厌恶仿真器

2020-06-26 15:43:36

时钟信号(CLK&39;CLK&39;)是游客寻求隐形的仿真器。用户直接启动经典软件,不需要仿真器,也不需要经过仿真的机器学习曲线。

在Mac上,它是一个原生Cocoa应用程序。在Linux、BSD和其他UNIX以及类似UNIX的操作系统下,它依赖于SDL2。

通过静态分析和运行时分析的结合,CLK寻求能够自动选择和配置适当的机器来运行任何提供的磁盘、磁带或ROM;发出运行磁盘、磁带或ROM上包含的软件所需的任何命令;并在可行的情况下提供加速加载。

因此,加载标题的完整过程-即使您以前从未使用过模拟的计算机-是这样的:

考虑一架普通的,未改装的Vic-20准将。它唯一的视频输出是复合的。因此,仿真机器的唯一视频输出是合成的。为了显示视频输出,您的GPU随后对复合视频进行解码。因此,所有复合视频伪像都存在并且精确正确,这不是因为后自组织滤波器结合了作者与复合视频相关联的所有主观效果,而是因为真实信号确实正在被处理。

在音频生成方面也投入了类似的努力。如果真实机器通常产生192 KHz的音频,那么仿真器就会产生192 KHz的源信号,并将其过滤到主机可以输出的任何信号。

如果您的机器有4k显示器和96 kHz音频输出?然后,您将获得4k的复合显示器渲染效果,假设仿真机器产生96 kHz或以上的源音频,每秒有96,000个不同的音频样本。隔行扫描的视频也能正常工作,看起来也很像在生产它的机器上所做的那样。

生产的显示器是一个模拟的CRT,带有磷光体衰变。因此,如果您有一个140 Hz的监视器,它每秒可以产生140个不同的帧。延迟由输出硬件决定,而不是由仿真机器决定。

机器更新机制分别受屏幕刷新和音频流处理的影响;因此,无论屏幕的刷新率如何,音频延迟通常被限制在5-10ms。

模仿连续自然的CRT,而不仅仅是执行帧尾转录的必然结果是,在60 Hz显示器上显示50 Hz视频的最常见的运动混叠效果被最小化;你不必拥有利基设备就能受益。

针对受支持的目标机器的精确周期仿真是相当陈腐的;此仿真器试图遵循这一先例。所有的仿真逻辑都是用C++编写的,目的是显式控制成本,但是,在出现冲突时,假定是为了代码的清晰度和简单性。此仿真器愿意花费现代硬件上可用的处理资源。