7 个不稳定版本 (3 个破坏性更新)
0.6.3 | 2018年12月31日 |
---|---|
0.6.2 | 2018年12月30日 |
0.4.0 | 2018年12月20日 |
0.3.1 | 2018年12月19日 |
0.2.1 | 2018年12月10日 |
#148 在 模拟
每月21次下载
1MB
10K SLoC
AT&T DMD5620 核心
AT&T / Teletype DMD 5620 终端仿真器的核心逻辑
描述
AT&T / Teletype DMD 5620 终端是一款20世纪80年代初生产的可编程、窗口式显示终端。它源于AT&T Bell Labs的Rob Pike和Bart Locanthi Jr.的研究。
该项目实现了仿真DMD 5620终端所需的核心逻辑,包括
- 只读存储器
- 随机存取存储器
- WE32100 CPU
- I/O
注意,没有用户界面:这是一个后端库。然而,它可以作为组件构建一个完整的仿真器。
变更日志
0.6.3:错误修复:视频RAM的起始地址未正确更新,以进行视频RAM读取;为DUART实现 read_word
(用于运行 gebaca
)
0.6.2:修复UART字符延迟时间。
0.6.1:修复失败的测试。
0.6.0:破坏性变更。重构DMD,将函数 read
重命名为 read_word
,并添加了 read_byte
函数。还重构了CPU助记符查找,以更高效地使用查找表而不是HashMap。最后,修复了DUART中的错误,该错误设置了一个错误的延迟,用于一个波特率。
0.5.0:非破坏性但重大变更。 dmd_core
现在提供了一个与C兼容的API,使得与C和C++代码交互更容易,无需编写完整的存根库。
0.4.0:破坏性变更。终端到键盘的TX现在支持,这样客户端就可以用它来检测是否已发送了铃音 (^G) 请求。
0.3.1:添加了对内存错误的异常处理,以及一个 run
函数,用于在给定步数内自由运行CPU。
0.3.0:破坏性变更。现在由内部队列处理来自RS-232和键盘的字符RX,并且在失败时不再返回 DuartError
。
0.2.1:初始发布。
仿真器参考实现
两个DMD 5620仿真器的实现使用了这个核心库。
-
Linux本地GTK应用程序
dmd5620
:https://github.com/sethm/dmd_gtk -
Macintosh本地Cocoa应用程序
DMD 5620
:https://github.com/sethm/dmd_mac
正在开发Windows本地应用程序。