Stage1st

 找回密码
 立即注册
搜索
查看: 3944|回复: 18

[怀旧] 7月份任天堂泄露内容(含源码)研究贴

[复制链接]
发表于 2020-7-31 11:23 | 显示全部楼层 |阅读模式
本帖最后由 yksoft1 于 2020-7-31 11:30 编辑

一、塞尔达传说梦见岛/梦见岛DX源码
源码在other.7z的dmg.7z和cgb.7z中。
前者是GB原版的,后者里面有GBC DX版本的。

主要问题在于,原版的编译过程大概是先生成IS-DMG/CGB-DEBUGGER开发机用的ISX可执行文件(不包含图形/音乐的ROM BANK),然后用开发机客户端写入执行文件bank以及相应数据Bank,最后从开发机导出用于写卡带的raw格式ROM镜像。
数据Bank的列表可以参照rz.ice文件(原版),zchr.s文件(DX版)。
然而,我们手上并没有开发机(以前日本雅虎上GBC时代的开发机也是天价且几年才出现一台),只能想别的办法自己先转换ISX为raw,再把数据BANK的数据用程序手工写入raw镜像中。原版里面音乐BANK的文件不是二进制而是十六进制文本格式的,需要自己解析。
之前我研究口袋妖怪金银的源码的时候,就是这么做的。
我用的ISX工具是这个:
  1. isx2gb v1.02 - Intelligent Systems eXecutable converter for Game Boy (Color)
  2. Programmed by: tmk, email: tmk@tuta.io
  3. Project page: https://github.com/gitendo/isx2gb/
复制代码
然而这次还有个问题,无论怎么搞,出来的镜像都不能启动。发现问题在于有一段重要的跳转表代码是无法正确写入ISX的,只能最后自己写入了。
  1. //from retail Zelda and ZeldaDX 7ff80-7ffff
  2. unsigned char lastbank[144]=
  3. {0xf0,0xa8,0xa7,0x28,0x19,0xd6,0x01,0xe0,
  4. 0xa8,0xe6,0x03,0x20,0x11,0xf0,0xa9,0xa7,
  5. 0x28,0x03,0x3d,0xe0,0xa9,0xf0,0xaa,0xa7,
  6. 0x28,0x04,0xd6,0x10,0xe0,0xaa,0xf0,0xab,
  7. 0xa7,0x28,0x1b,0xd6,0x01,0xe0,0xab,0xe6,
  8. 0x01,0x20,0x13,0xf0,0xa9,0xfe,0x07,0x30,
  9. 0x03,0x3c,0xe0,0xa9,0xf0,0xaa,0xfe,0x70,
  10. 0x30,0x04,0xc6,0x10,0xe0,0xaa,0x21,0xa9,
  11. 0xff,0xf0,0x24,0xe6,0xf8,0xb6,0x23,0xe6,
  12. 0x8f,0xb6,0xe0,0x24,0xf0,0xf2,0xa7,0x28,
  13. 0x06,0xea,0x60,0xd3,0xaf,0xe0,0xf2,0xf0,
  14. 0xf3,0xa7,0x28,0x06,0xea,0x70,0xd3,0xaf,
  15. 0xe0,0xf3,0xf0,0xf4,0xa7,0x28,0x06,0xea,
  16. 0x78,0xd3,0xaf,0xe0,0xf4,0xc9,0xff,0xff,
  17. 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
  18. 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff};
复制代码
最后经过汇编、链接、转换、填充四步,才能做出能运行的raw ROM镜像。

研究成果展示:
1.克荷林特岛江南皮革厂倒闭了,原价980的弓只要1块钱! 折腾了一下ROM文件尾消失的的神秘128字节,现在总算能编译出正常运行的塞尔达梦见岛了。
696f5a4f7cb82f12c7d070da2079356f84d62cf6.png
bed05f6114ea1c224a2a7642636fa3e5e2ee3223.png
2.卢本伟光束,直接把Lv1的剑改出有剑气,改成了放魔法杖那个球。
d1ba710c673c7cda20933cae8c479761f7210343.png 3.任天堂泄露大包折腾继续,梦见岛DX也搞成功了。
卢本伟之二——一开盾就放出一梭子箭(无延时)。 7efcb71011f2a9b48162e25b53a83eeca7848bb1.png

二、星际火狐2、星际火狐1源码
在SFC.7z包里面。Argonaut真的很强大,不仅设计了MARIO-1加速芯片,而且他们的SFC游戏汇编器、链接器、图形编辑器什么都是他们自己开发的。
2f7ba7f30a301b15c73156d03aeef4b9cf762514.png f14628aa7bb82adad0bc0509d9c1339626d9f706.png 7323edb81dcfc477be961eb4d7348019dbe40eb2.png
然而,不知因为什么,星际火狐2总是汇编不出能运行的ROM,应该是bank0有问题。星际火狐1倒是很轻松的就编译了,可惜泄露的源码是某个“竞速专用版”的源码。
8a0e8607bc9a634b076389d0f3c8a44d7f459cdd.png 5032a3640cee3d09b69b49354ddd08b9e6e0b478.png
当然后来我还是通过修改VARS.INC以及其它一些小改,正常版、带选关功能的调试版也编译出来了。
推上有洋大人改代码取消了强制视角限制,可以全向飞行了。
感觉洋大人感兴趣的主要还是N64的那些泄露,但是那些泄露的很多都没源码;还有就是神游胎死腹中的Netcard、Ensata的源码。
对于我来说,其实最应该花时间的是口袋珍珠钻石的完整CVS repo。。。不知道早期版本是什么样子。


评分

参与人数 7战斗力 +7 收起 理由
MonicaRuan + 1 好评加鹅
Tengu + 1 nb
屑猫猫 + 1 好评加鹅
Renkonsai + 1
chmiao + 1 好评加鹅
平昭·南宫司卿 + 1
hesoyamlp + 1 支持挖掘

查看全部评分

回复

使用道具 举报

     
发表于 2020-7-31 11:38 来自手机 | 显示全部楼层
羡慕超能力者,技术小白问一下:这些源码都是汇编吗?是不是每台游戏机的都不一样不能通用指令集
回复

使用道具 举报

 楼主| 发表于 2020-7-31 11:44 | 显示全部楼层
至于Netcard泄露文档中所谓“在线口袋妖怪”项目构想,其实并不是什么在GBA+Netcard+电脑环境跑的“口袋MMO”。更像以后NDS/3DS口袋的联机内容。
Clipboard02.png Clipboard04.png Clipboard06.png
Netcard的官方名称好像是 "iQue聚乐卡"。
Clipboard07.png
回复

使用道具 举报

     
发表于 2020-7-31 11:52 | 显示全部楼层
黑客就不能挖点普世的嘛,比如下次ND内容
回复

使用道具 举报

     
发表于 2020-7-31 11:58 来自手机 | 显示全部楼层
为啥里面那么多fu ck
回复

使用道具 举报

发表于 2020-7-31 12:07 | 显示全部楼层
yzb 发表于 2020-7-31 11:58
为啥里面那么多fu ck

因为任地狱程序员英语不行
那个道具物品列表不仅有英文和日文,还有英日合体的,或者说是从日语片假名反向联想出来的英文名称。
fuck shot应该是是Hookshot,日语是フックショット(fukkushotto)。
同样第一个Buleslet应该是手镯Bracelet。
回复

使用道具 举报

 楼主| 发表于 2020-7-31 12:16 | 显示全部楼层
fqxufo 发表于 2020-7-31 11:38
羡慕超能力者,技术小白问一下:这些源码都是汇编吗?是不是每台游戏机的都不一样不能通用指令集 ...

GB、GBC和SFC的游戏仍然是汇编为主。
32位主机时代起C语言才真正普及。
回复

使用道具 举报

     
发表于 2020-7-31 12:18 来自手机 | 显示全部楼层
yksoft1 发表于 2020-7-31 12:16
GB、GBC和SFC的游戏仍然是汇编为主。
32位主机时代起C语言才真正普及。

一直好奇有些fc/gb上的老游戏汉化是如何实现的?按理说这些平台上根本没有中文的字库呀
回复

使用道具 举报

 楼主| 发表于 2020-7-31 12:20 | 显示全部楼层
fqxufo 发表于 2020-7-31 12:18
一直好奇有些fc/gb上的老游戏汉化是如何实现的?按理说这些平台上根本没有中文的字库呀 ...

这些机子不是没有中文的字库,而是根本就没有字库。所有的东西都是存在卡带里的。
回复

使用道具 举报

 楼主| 发表于 2020-7-31 12:23 | 显示全部楼层
https://www.bilibili.com/video/BV1VA411Y7cY/
泄露的恶魔城beta版,位置在other.7z里面的news.7z,里面的NEWS\テープリストア\NEWS_05\news_05.tar里面的
/home/kimura/games.lzh里面,里面有个dracura目录,里面的game.exe就是ROM。
回复

使用道具 举报

发表于 2020-7-31 13:47 | 显示全部楼层
汇编真是要死了

看着头疼。。。
回复

使用道具 举报

     
发表于 2020-7-31 16:43 来自手机 | 显示全部楼层
本帖最后由 sakuranosibe 于 2020-7-31 17:41 编辑

请问能提供一下链接么(/ω\)4chan上找到的google盘链接404了 估计被任地狱咔嚓了(/ω\)
回复

使用道具 举报

     
发表于 2020-7-31 19:30 | 显示全部楼层
嗯?你当年是不是做过金坷垃?
回复

使用道具 举报

 楼主| 发表于 2020-7-31 21:09 | 显示全部楼层
sakuranosibe 发表于 2020-7-31 16:43
请问能提供一下链接么(/ω\)4chan上找到的google盘链接404了 估计被任地狱咔嚓了(/ω\)
...

https://cowtransfer.com/s/26e2d92a48b44f
我早搬国内了。话说,N64的大包除了两个篮球游戏和马尿医生外,基本都不完整,很多模块源码没了只剩下目标文件。
回复

使用道具 举报

 楼主| 发表于 2020-7-31 21:10 | 显示全部楼层
野兽后辈 发表于 2020-7-31 19:30
嗯?你当年是不是做过金坷垃?

不仅是当年。
[utau-jinkela] 名侦探坷垃 ED5 [练习]

鬼畜人力VOCALOID
2020-07-29 00:15:16
635播放 ·
12弹幕
未经作者授权,禁止转载
回复

使用道具 举报

     
发表于 2020-7-31 22:15 来自手机 | 显示全部楼层
yksoft1 发表于 2020-7-31 21:09
https://cowtransfer.com/s/26e2d92a48b44f
我早搬国内了。话说,N64的大包除了两个篮球游戏和马尿医生外 ...

多谢分享
回复

使用道具 举报

 楼主| 发表于 2020-8-1 01:36 | 显示全部楼层
林克一次只能放一个bomb,卢本伟的不仅无限,还能一装一屏幕。

Clipboard02.jpg

bomb2.gif
bomb0.gif
回复

使用道具 举报

     
发表于 2020-8-1 13:14 | 显示全部楼层
炸弹人有点意思。我说怎么看楼主id眼熟,原来是金坷垃作者
回复

使用道具 举报

 楼主| 发表于 2020-8-1 23:45 | 显示全部楼层
cgb-lbw1.rar (1.37 MB, 下载次数: 7)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|上海互联网违法和不良信息举报中心|网上有害信息举报专区|962110 反电信诈骗|举报电话 021-62035905|stage1st ( 沪ICP备130202305 沪公网安备 31010702004909号 )

GMT+8, 2020-8-3 17:12 , Processed in 0.038814 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表