Redian新闻
>
最近研究了一下魂斗罗的源代码。为什么魂斗罗只有128KB
avatar
最近研究了一下魂斗罗的源代码。为什么魂斗罗只有128KB# Midlife - 人到中年
s*h
1
为什么魂斗罗只有128KB却可以实现那么长的剧情?
1.游戏大量复用图块,图块还使用调色板索引,好像每个像素才占用2bit。
2.程序员精心优化各种数据结构,每一bit存储都不浪费。
3.声音只存储发声通道的调制参数序列,能复用就复用。
4.代码全是汇编写成,直接操作硬件,基本不存在浪费的指令。
个人觉得fc最神奇的游戏还属超级玛丽,32个关卡,每关都不同,各种隐藏要素,好像
代码区才10多k,数据区10多k。反汇编看完还是不敢相信这点东西能玩一个童年…现在
helloworld的二进制都可能比这大多了。
avatar
y*g
2
厉害, 楼主真是用心, 赞一个!
avatar
c*7
3
那时候寸k寸金

【在 s*******h 的大作中提到】
: 为什么魂斗罗只有128KB却可以实现那么长的剧情?
: 1.游戏大量复用图块,图块还使用调色板索引,好像每个像素才占用2bit。
: 2.程序员精心优化各种数据结构,每一bit存储都不浪费。
: 3.声音只存储发声通道的调制参数序列,能复用就复用。
: 4.代码全是汇编写成,直接操作硬件,基本不存在浪费的指令。
: 个人觉得fc最神奇的游戏还属超级玛丽,32个关卡,每关都不同,各种隐藏要素,好像
: 代码区才10多k,数据区10多k。反汇编看完还是不敢相信这点东西能玩一个童年…现在
: helloworld的二进制都可能比这大多了。

avatar
m*t
4
想起那时候debug pc game 过关看黄图,很有动力。LOL。

【在 c*********7 的大作中提到】
: 那时候寸k寸金
avatar
j*g
5
赞 LZ
avatar
c*d
6
128K已经是很奢侈的了。我记得我小时候最早用的机器叫做comx,台湾造的,只有32k
的内存,没硬盘,固化一套basic程序,要玩个游戏都要用磁带机导入半天——最大也
只能有32K啊。
avatar
o*e
7
高手给个源代码的链接?
avatar
s*u
8
nb!

【在 s*******h 的大作中提到】
: 为什么魂斗罗只有128KB却可以实现那么长的剧情?
: 1.游戏大量复用图块,图块还使用调色板索引,好像每个像素才占用2bit。
: 2.程序员精心优化各种数据结构,每一bit存储都不浪费。
: 3.声音只存储发声通道的调制参数序列,能复用就复用。
: 4.代码全是汇编写成,直接操作硬件,基本不存在浪费的指令。
: 个人觉得fc最神奇的游戏还属超级玛丽,32个关卡,每关都不同,各种隐藏要素,好像
: 代码区才10多k,数据区10多k。反汇编看完还是不敢相信这点东西能玩一个童年…现在
: helloworld的二进制都可能比这大多了。

avatar
c*3
9
看见这帖,不得不出来赞下大牛
在远古时代,传说中的 Sound Blaster 出现前,Midi、Wave Table横行这片大陆,不
用也找不到其它东西了。当然,还有我等快速发方波到喇叭,以获得音乐输出能力
突然6527降临,实现了传说中 GPU 的工作,基于传说中的 VQ (矢量量化)原理,提
供了图块运动等功能
至于bit,在传说中的 6502 上,只有 A/X/Y 可用的情况下,想浪费还是有点难度的
至于 128 KB,超级多了好不好,32 KB的中华机陪伴了我的童年
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。