项目地址:
https://github.com/mohanson/gameboy
从去年有想法开始断断续续写到现在, 最近实在太忙所以偷懒基于 MIT 协议 Copy 了另一个开源项目 rboy 的图形显示(极小部分)和声音播放模块(全部)的代码. 就这样先开源了, 以后有时间再去补课.
这是我写的第三个虚拟机项目啦! 上一个是 webassembly 吼吼吼. 累了累了.
包含 CPU, GPU, APU, 主板, 卡带, 键盘, 定时器等核心模块, 每个模块均有详细注释(除声音播放模块外)... 硬件模拟器真的很难写啊, 杀时间的利器.
1
CallMeReznov 2019-04-18 21:41:00 +08:00
大佬流弊!
|
2
mq4079 2019-04-18 21:49:24 +08:00
🐂🍺,我也想写但一直没时间
|
3
sunocean 2019-04-18 21:53:43 +08:00
默默的点了个 star 好奇 文本图纸是怎么画出来的, 手工嘛?
|
5
lneoi 2019-04-18 22:20:36 +08:00
大佬大佬
|
6
vmebeh 2019-04-18 22:27:00 +08:00 via iPhone 1
http://asciiflow.com/
ascii 画图 |
7
Liang 2019-04-18 22:27:15 +08:00
膜拜一下
|
8
AlisaDestiny 2019-04-18 22:27:53 +08:00
点进大佬的博客,发现早已 CTRL+D.
|
9
Mohanson OP 其实本来放了口袋妖怪的 rom,但是害怕任天堂的法务(害怕.gif
|
10
designer 2019-04-18 22:29:05 +08:00 via iPhone
先点赞
|
11
SimonOne 2019-04-18 23:29:33 +08:00
编译不成功😭️brew install rust 现装的 rust
|
12
misaka19000 2019-04-18 23:58:35 +08:00 via Android
哎。。。一直想写个 fc 模拟器,奈何一直没这个耐心
|
13
Mohanson OP @misaka19000 行动起来呀! 模拟器一套代码下来,从底层 cpu 寄存器到上层视频, 音频,都能吃透,收获很大的
|
14
waruqi 2019-04-19 00:01:23 +08:00 via Android
我之前也写过几个玩玩 flash/avm, jvm, x86vm
|
16
doraemon0711 2019-04-19 01:09:19 +08:00 via iPhone
厉害厉害,我是之前关注了 mvba 的项目想学习,但一直都没动力开始,话说写模拟器是不是汇编必须玩的 6
|
17
cd2want 2019-04-19 01:26:08 +08:00
WTF!!!! 帅气!!!!!!
|
23
Variazioni 2019-04-19 08:48:07 +08:00
star 了。。。
|
24
darknoll 2019-04-19 09:04:30 +08:00
厉害。。。
|
25
20015jjw 2019-04-19 09:12:57 +08:00
wow 厉害
|
26
lrh3321 2019-04-19 09:15:39 +08:00 via Android
厉害
|
27
strpbrk 2019-04-19 09:16:44 +08:00
居然是喵喵开发的
|
28
urmyfaith 2019-04-19 09:23:45 +08:00 1
最近我也在看这个.
|
30
but0n 2019-04-19 09:28:57 +08:00 via iPhone 1
我最近也在写,webassembly 版的
|
32
urmyfaith 2019-04-19 10:06:10 +08:00
@Mohanson 怕是还有很长一段路要走哦,只是在看别人的实现,js 写的.
你这个 rust 写的,话说我一句 rust 都没写过,不过基本的逻辑也能看的懂. 怎么没用 c? c++ ? 之类的写呢? |
33
Mohanson OP @urmyfaith 因为最近在学 rust, 拿不熟练的语言开发,干一件事能获得两份经验值
|
35
urmyfaith 2019-04-19 10:40:50 +08:00
运行起来是个推箱子的游戏
|
37
smeraldo 2019-04-19 11:12:25 +08:00
厉害厉害😍
话说从模拟游戏的角度看,是不是只要能够解析卡带的数据,剩下的怎么实现都可以呀? |
38
raysonx 2019-04-19 11:29:18 +08:00
厉害了,支持!有时间拿过来体验一下
|
39
SuperMonster009 2019-04-19 11:36:14 +08:00 via Android
太厉害了 必须 star 一个
|
40
Chingim 2019-04-19 11:38:28 +08:00
这很硬核
|
41
HorseMa 2019-04-19 11:54:54 +08:00
大佬🐂🍺!(破音
|
42
silvernoo 2019-04-19 12:06:42 +08:00
看了眼代码,太巨了
|
43
947211232 2019-04-19 12:13:27 +08:00
很秀
|
44
xfriday 2019-04-19 12:16:54 +08:00
居然是 rust 的项目,不容易,厉害🐂
|
45
xdlucky 2019-04-19 12:24:32 +08:00
我的天, 推箱子真好玩
|
47
cxyfreedom 2019-04-19 12:29:13 +08:00 via iPhone
大佬牛逼!
|
48
fantastM 2019-04-19 12:31:38 +08:00
谁会不喜欢宝可梦呢
|
49
sidegem 2019-04-19 12:31:53 +08:00
虽然不懂,但看着好厉害
|
50
motecshine 2019-04-19 12:57:58 +08:00
我也想试着写一写 楼主 需要涉及到哪些常用的知识
|
51
Mohanson OP @motecshine 先搞明白 cpu 的工作原理 然后试着自己写一个 cpu 模拟器。8080,8086,51 单片机 什么的都可以,差不多就入了硬件模拟器的门了
|
52
jiqing 2019-04-19 13:08:45 +08:00 via Android
大佬牛逼,一直想写一个 fc 模拟器。一直拖延
|
53
tutustream 2019-04-19 15:14:51 +08:00
大佬都开始写模拟器了
|
54
GPLer 2019-04-19 16:06:01 +08:00 via Android
编译成功,运行窗口一直黑屏怎么破。
|
55
cjh1095358798 2019-04-19 16:17:29 +08:00
大佬牛逼啊
|
56
Foreverdxa 2019-04-19 17:19:37 +08:00
硬核大牛。
|
57
winboy 2019-04-19 17:22:50 +08:00
欢迎分享到掘金呦 https://juejin.im/pins/recommended
|
58
ldm0 2019-04-19 18:41:52 +08:00
酷!唤醒了我两个月前要写模拟器的想法。
|