热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Z80处理器可以运行Gameboy游戏吗?

如何解决《Z80处理器可以运行Gameboy游戏吗?》经验,为你挑选了1个好方法。

由于Gameboy的处理器LR35902是Z80和Intel 8080的混合体,因此请记住,Z80和Intel 8080的设计基本上都是交叉兼容的,拥有Z80处理器的任何产品都可以运行是指LR35902?我想知道不是因为我希望使用TI84在自习室玩口袋妖怪。

编辑:我知道我将不得不重新编程控件,可能还需要重新编程游戏访问RAM的方式,但是我宁愿这样做,也不愿移植整个游戏。



1> George Phill..:

Z-80指令集是8080指令集的超集。LR35902与8080有许多共同点,但是用Z-80取代了一些8080指令,并在一些不同的方向上扩展了指令集。LR35902与Z-80不兼容,也与8080不兼容。

您将必须找到不兼容指令的所有用法,并用提供相同功能的补丁替换它们。由于TI84比原始的GameBoy CPU快得多,因此无需花费额外的时间,并且可以很容易地编写指令本身的替换代码。拆卸ROM以及从数据中分离代码将非常耗时。

但是,您可以使用现有的GameBoy仿真器并对其进行检测,以记录其执行的Z-80上不同的指令的位置。广泛玩游戏应该找到必须修补代码的大多数地方。

有关快速概览,请参阅此LR35902指令表并与Z-80进行比较。您还需要LR35902指令的此说明。

这是LR35902与Z-80之间的简要调试指令操作码差异。

Opcode  LR35902            Z-80
------  --------------     ----------
F2      LD   A,(C)         JP  P,nn
E2      LD   (C),A         JP  NV,nn
EA      LD   (nn),A        JP  V,nn
FA      LD   A,(nn)        JP  M,nn
3A      LDD  A,(HL)        LD  A,(nn)
32      LDD  (HL),A        LD  (nn),A
2A      LDI  A,(HL)        LD  HL,(nn)
22      LDI  (HL),A        LD  (nn),HL
08      LD   (nn),SP       EX  AF,AF'
E0      LDH  (n),A         RET NV
F0      LDH  A,(n)         RET P
F8      LD   HL,(SP+e)     RET M
E8      ADD  SP,e          RET V
CB 3x   SWAP r             SL1 r (undocumented)
10      STOP               DJNZ
D9      RETI               EXX

这是一个很小的帮助,LD A,(nn)并且LD (nn),A在这两者上都可用,并且仅使用不同的操作码即可。


推荐阅读
  • 第三周课堂测试1、使用汇编语言编写指令时,用一些简单的容易记忆的符号来代替二进制指令,比机器语言更为方便,属于高级语言。(B ... [详细]
  • mybatis相关面试题 ... [详细]
  • 微服务架构详解及其入门指南
    本文详细介绍了微服务的基本概念、发展历程、与传统架构的区别及优势,并探讨了适合采用微服务架构的场景。此外,文章还深入分析了几个主流的微服务开发框架,特别是Spring Cloud的组成和特点。 ... [详细]
  • 本文介绍了iOS应用开发的主要框架,包括Foundation、UIKit、CoreData及CoreGraphics等,并探讨了开发iOS应用所需的硬件和软件环境,以及推荐的编程语言。 ... [详细]
  • ANSI最全介绍linux终端字体改变颜色等ANSI转义序列维基百科,自由的百科全书由于国内不能访问wiki而且国内关于ANSI的介绍都是简短的不能达到,不够完整所以转wiki到此 ... [详细]
  • 本文提供了详细的指导,帮助开发者了解如何使用PHP插件进行网站内容的翻译,特别是针对WordPress插件和主题的汉化及多语言支持。 ... [详细]
  • 深入解析线程池的工作原理与实际应用
    本文详细探讨了线程池的核心概念、工作原理及其在实际开发中的应用,包括不同类型的线程池创建方式及其适用场景。 ... [详细]
  • Cortex-M3处理器核心解析
    本文详细介绍了Cortex-M3处理器的常见术语及其核心特点,包括其架构、寄存器组、操作模式、中断处理机制、存储器映射、总线接口和存储器保护单元(MPU)。此外,还探讨了Cortex-M3在性能和中断处理方面的优势。 ... [详细]
  • 本文探讨了Thrift作为一款支持多语言的服务开发框架,其在体积、功能、扩展性以及多协议支持等方面的显著优势。特别地,Thrift作为一种RPC(远程过程调用协议)框架,非常适合用于构建可扩展且低耦合的分布式服务系统。文章通过多种编程语言对Thrift服务进行了性能测试,并提供了详细的测试结果。 ... [详细]
  • 本文探讨了C语言中关于函数定义与调用的一些基本规则,特别是解释了为何函数定义不可嵌套,而函数调用却可以嵌套,并通过具体示例加以说明。 ... [详细]
  • 匠心|传统_2021年度总结 | 葡萄城软件开发技术回顾(上)
    匠心|传统_2021年度总结 | 葡萄城软件开发技术回顾(上) ... [详细]
  • 我们正在使用GNU Make来构建我们的系统,在makefile文件的末尾,我们通过一个名为Makedepends的包含来生成一系列的.d文件。然而,当文件被删除或移动时,依赖关系会中断,我们需要寻找一种方法来优雅地处理这种情况。 ... [详细]
  • PHP网站部署指南:从零开始搭建PHP网站
    本文提供了详细的步骤指导,帮助开发者在不同环境下成功部署PHP网站,包括在IIS和Apache服务器上的具体操作。 ... [详细]
  • 如何进行Intel CSME 漏洞预警的分析
    本篇文章为大家展示了如何进行IntelCSME漏洞预警的分析,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获 ... [详细]
  • 如何解决《英特尔x86_64处理器不仅是流水线架构,还是超标量?》经验,为你挑选了1个好方法。 ... [详细]
author-avatar
小美女金猪宝宝
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有