最早发现溢出关卡的是在实体机上通过热插拔SuperMarioBrothers卡带来实现的(注意“切勿做此实验,这样对机子损害很大!)。后来移植到电脑上后,随着bug技的普及,人们利用bug成功进入了早期发现的溢出关卡之一——36-1(即人们俗称的“-1关”,但此说法有误,目前基本废弃不用),并逐渐使用游戏修改器进入了其他世界的溢出关卡。“溢出关卡”这个名词最早由愿卿勿忧于2011年12月10日提出,随后愿卿勿忧于2012年2月11日领起了一次溢出关卡研究的浩大工程,此后不断有玩家进军溢出关卡的研究。目前,对于1代马里奥的溢出关卡研究已经比较透彻,但对于其他的版本还没有太多的研究。
十六进制是计算机中数据的一种表示方法。同我们日常中的十进制表示法不一样。它由0-9,A-F组成,字母不区分大小写。与10进制的对应关系是:0-9对应0-9;A-F对应10-16。因此在研究溢出关卡时十六进制是最常见的进制,必须要理解。溢出关卡中所有内存地址都是16进制的,因此1个世界不是100关而是256关。
十六进制转换十进制
16进制就是逢16进1,但我们只有0~9这十个数字,所以我们用A,B,C,D,E,F这六个字母来分别表示10,11,12,13,14,15。字母不区分大小写。
十六进制数的第0位的权值为16的0次方,第1位的权值为16的1次方,第2位的权值为16的2次方……
所以,在第N(N从0开始)位上,如果是是数 X (X 大于等于0,并且X小于等于 15,即:F)表示的大小为 X×16的N次方。
假设有一个十六进数 2AF5
直接计算就是:
5×160+F×161+A×162+2×163=10997
也可以用竖式表示:
第0位: 5×160=5
第1位: F×16^1=240
第2位: A×162=2560
第3位: 2×163=8192
10997
此处可以看出,所有进制换算成10进制,关键在于各自的权值不同。
崩溃的种类十分繁多,目前划分为“等”、“级”,“等”的范围大于“级”的范围
nes-SMB中共计有如下崩溃:
A等,由“摧毁页”导致,分为三个级:
A级,即AA级崩溃,通称S级崩溃,为VirtuaNES模拟器特有。现象为模拟器崩溃。原因为摧毁页跳转到某处地址,执行了6502汇编中所未定义的105种指令之一导致模拟器无法判断并执行而强行退出。发现者15222HGH。
B级,即AB级崩溃,通称B级崩溃,现象为半途卡机或开局黑屏。原因为摧毁页跳转到某处地址执行了指令00,即BRK,致使所有地形,分数栏同步等全部终止执行。至于开局就黑屏跟A等崩溃还不同,是因为终止地形加载了,但在地形加载出来之前始终会是黑屏,所以现象与A等崩溃类似但还不同。敌人是后加载的,在地形出现后才会加载,所以敌人单位的会在地形出现后再加载,就会开局卡机。发现者愿卿勿忧。
C级,即AC级崩溃,通称C级崩溃,现象为为自动软重置。原因为摧毁页的异常跳转,执行了重置。盗版伴有一瞬间花屏的现象。发现者愿卿勿忧。
B等,由异常的地形导致,分为一个级:
A级,即BA级崩溃,通称A级崩溃,现象为进入关卡后直接黑屏。原因为该关卡中所有地形都集中在第一页并且没有地形结束标识字节FD而不停加载,永远加载不完,所以在没加载完地形前屏幕就是一直黑的。发现者愿卿勿忧。
B级,即BB级崩溃,通称B+级崩溃,现象为瞬间屏幕上只剩下背景。原因为长度单位异常的城堡。发现者风华正茂999999。
C等,由屏幕中精灵单位过多导致,分为一个级:
A级,即BA级崩溃,通称D级崩溃,现象为分数栏与页面不同步,拖帧严重。目前认为是屏幕中精灵过多,实际情况未知。发现者愿卿勿忧。
本文发布于:2022-10-22 18:46:31,感谢您对本站的认可!
本文链接:http://www.wtabcd.cn/fanwen/fan/78/348320.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |