Ti-83仿真器问题与ROM

我已经在很长一段时间内建立了计算机和C ++的知识,我决定尝试制作一个模拟器以获得更好的理解。我想尝试制作TI-83仿真器(在Zilog Z80 CPU上运行)。我目前有两个问题: 第一个是指向当前指令的“PC”寄存器只有16位,但我下载的Ti-83 ROM是256Kb。如何将16位数据指向超过〜64Kb的地址? 其次,ROM的入口点在哪里?执行只是从0x0000开始吗? 谢谢,希望你能帮我理解一下这是如何工作的。     
已邀请:
很可能是处理器内核外部的可编程寻呼寄存器,可以将其设置为一次将256K的一部分映射到64K地址空间的一部分。你需要模仿它。希望您能在官方或非官方文档中找到相关信息。如果您有原理图或PCB,它甚至可以作为外部PAL或逻辑芯片集合可见。 我忘了z80在重置时开始执行的顶部,但我确信你会在处理器手册中找到它,这将是为它编写模拟器的必要工具。 您需要确保使用的核心是真正的z80,而不是某种自定义扩展版本。 当然,我确信有人已经这样做了,所以你的项目可能更多地是关于学习 - 尽管最后你可能会超过任何可用的解决方案,如果你的工作时间足够长。     
开发人员指南描述了内存的排列方式,尽管它实际上没有描述映射的工作原理。 简短版本:地址空间分为四个16K页面,第一个页面始终映射32页闪存ROM的第0页。     

要回复问题请先登录注册