gameboy模拟器开发_CoreBoy是使用C#编写的跨平台GameBoy模拟器,甚至可以执行ASCII

gameboy模拟器开发

gameboy模拟器开发

.NET and C# are great languages for programming emulators. Specifically retrogaming and retroarcade emulators. In fact, there's a long history of emulators written in C#. Here's just a few.

.NET和C#是编程模拟器的绝佳语言。 特别是Retrogaming和Retroarcade模拟器。 实际上,用C#编写模拟器已有很长的历史。 这只是几个。

Today, David Whitney is deep into writing CoreBoy, a GameBoy Emulator written in C# and .NET Core, using WinForms, and I also spy the Avalonia cross-platform open source WPF-like framework. Head over to https://github.com/davidwhitney/CoreBoy and give the gent a STAR. It even has a headless mode and you could use it as a Library in your own software. Who doesn't want a GameBoy library in their app?

如今,David Whitney致力于使用WinForms编写用C#和.NET Core编写的GameBoy模拟器CoreBoy ,并且还监视了类似Avalonia跨平台的开源WPF框架。 前往https://github.com/davidwhitney/CoreBoy,并给绅士一个STAR。 它甚至具有无头模式,您可以在自己的软件中将其用作库。 谁希望在自己的应用程序一的GameBoy库?

I cloned and built it with http://dot.net Core in just a few minutes. Lovely. I enjoy a clean codebase. Assuming you have a backup of one of the many physical GameBoy games you own like me, you can load a binary dump in CoreBoy as a *.gb or *.gbc file and you'll get something this:

我在短短几分钟内就使用http://dot.net Core进行了克隆和构建。 可爱。 我喜欢一个干净的代码库。 假设您像我一样拥有许多物理GameBoy游戏之一的备份,则可以在CoreBoy中将二进制转储文件加载为* .gb或* .gbc文件,您将获得以下内容:

CoreBoy - Zelda Link's Awakening
image

Sweet! Sure it's a little buggy and slow but figuring these things out is the fun of it all! I love that David Whitney is taking us on this journey with him.

甜! 当然,这有点麻烦和缓慢,但是弄清楚这些事情是所有事情的乐趣! 我爱戴维·惠特尼(David Whitney)带我们一起踏上这一旅程。

There's even already a MonoGame-based graphics surface using DesktopGL and "nilllzz" has it running on Ubuntu!

甚至已经有一个使用DesktopGL的基于MonoGame的图形界面,“ nilllzz”使其在Ubuntu上运行!

GameBoy Emulator in C# running on Ubuntu using MonoGame

Emulators are always fun projects to read and learn from. Here, David has a clear separation of concerns between the emulator (handling the CPU, loading instructions, etc.) and the graphics surface that is ultimately responsible for putting pixels on screen.

模拟器始终是有趣的项目,可供您阅读和学习。 在这里,David明确区分了模拟器(处理CPU,加载指令等)和最终负责将像素显示在屏幕上的图形表面之间的关注点。

It looks like he hasn't got it working yet (some issues with command line parsing), but in a few minutes with a little hard-coding I was able to switch to ASCII mode with David's SillyAsciiArtCreator that takes a Pixel and RGB value and maps it to ASCII art that looks awesome in the Windows Terminal.

看来他还没有开始工作(命令行解析存在一些问题),但是在几分钟的时间里,通过一点点硬编码,我就可以使用David的SillyAsciiArtCreator切换到ASCII模式,该模式需要Pixel和RGB值,将其映射到在Windows Terminal中看起来很棒的ASCII艺术。

Zelda in a GameBoy Emulator as ASCII Art

Which is kind of awesome. Why would you do this? BECAUSE YOU CAN

真棒。 你为什么要这样做? 因为你能

Zelda in a GameBoy Emulator as ASCII Art

I look forward to seeing what comes of this cool new emulator and I'll be reading its code in more detail in the weeks to come! Great stuff, David!

我期待看到这个炫酷的新模拟器的功能,在接下来的几周中,我将更详细地阅读其代码! 好东西,大卫!

翻译自: https://www.hanselman.com/blog/coreboy-is-a-cross-platform-gameboy-emulator-written-in-c-that-even-does-ascii

gameboy模拟器开发

软件下载(注:使用这个东东所造成的任何后果,本人概不负责。)使用说明:可以采用函数式编写命令来实现你所需的自动化功能,函数严格区分大小写,语句之间以分号隔开。函数说明: 1.ClickButtonByID(参数) 功能:模拟鼠标点击网页中的按钮 参数1:为网页源代码中的按钮ID属性 实例:ClickButtonByID(login); 2.ClickButtonByName(参数) 功能:模拟鼠标点击网页中的按钮 参数1:为网页源代码中的按钮name属性 实例:ClickButtonByName(login); 3.EntryDataByID(参数1,参数2) 功能:模拟输入文本到文本框 参数1:为网页源代码中的输入框(文本框)ID属性 参数2:要输入的文本 实例:EntryDataByID(username,admin); 4.EntryDataByName(参数1,参数2) 功能:模拟输入文本到文本框 参数1:为网页源代码中的输入框(文本框)name属性 参数2:要输入的文本 实例:EntryDataByName(username,admin); 5.ForWard() 功能:相当点击浏览器的后退按钮 实例:ForWard(); 6.BackWard() 功能:相当点击浏览器的前进按钮 实例:BackWard(); 7.Refresh() 功能:相当点击浏览器的刷新按钮 实例:Refresh(); 8.Open(参数1) 功能:打开新链接 参数1:要打开的网站的URL 实例:Open(http://www.baidu.com); 命令实例:(这是模拟一个q校内网的登陆过程)Open(http://www.xiaonei.com/Login.do);EntryDataByName(email,5q.1@163.com);EntryDataByName(password,111111); ClickButtonByName(submit);软件截图: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1733844
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值