# 8 bit guy   没错,这个频道讲述的是8位计算机兴起的那个80年代的故事。主播有个观点,就是那个年代不管是对个人计算机还是整个IT科技行业,都是一个黄金时代。虽然在现在看来8位的计算机性能相当差劲、几乎没办法做任何事情,但那是计算机科技真正蓬勃发展时代,不管硬件工业设计还是软件界的百花齐放的繁荣景象,只要经历过的人都印象深刻。举个例子,家喻户晓的《超级玛丽》就诞生于那个年代。刷一刷淘宝,你一定深有同感:那个时代就像被大屏智能手机洗牌之前的手机市场,摩托的刀锋系列、诺基亚的Ngage、7610、5700、N97等等就诞生在那个时代,同样出色的设计层出不穷;而现在给你一台撕掉LOGO的手机,你甚至一眼不能分辨不出来它是什么牌子。   同样这个频道带有非常强的科普性质,讲述老电脑的方方面面,我非常喜欢的几集有:《老显卡如何绘图》、《老式声卡如何渲染声音》、《使用软盘存储的数码相机》、《计算机存储系列(磁带篇、软盘篇、卡带篇)》等等。 ## 老派显卡如何绘图?   说起显卡很多人都不陌生,但在80年代电脑还用的1MHz的6502处理器(比英特尔8086更早)、十几到几十KB的RAM,即使分辨率降到QVGA(320x240)级别,要想跑出《超级玛丽》这样的游戏也是相当困难的。那时候的显卡不能称之为GPU了,因为几乎它没有任何计算能力,它的作用仅限于把显存里的内容转换成复合电视信号传送到电视上——是的,那个时候的显示器大多就是CRT电视机,每行显示40列字母。说起显存,那时候的大多数电脑没有独立的显存,所谓的显存就是RAM中一块和CPU共用的内存,CPU可以通过指令直接读写那块区域。所以,计算机编程相当有挑战性,几乎不能容忍几行多余的代码,否则1MHz的CPU就会直接嗝屁。   做个简单计算,那时候采用低分辨率即320x200来运行图形程序,那么一帧图像就有6万4千个像素。存储一个没有灰度的黑白图层,就需要8KB的内存;如果使用16色模式,即每个像素占用半Byte的内存,那么一个图层就会耗掉32KB的空间。如果用256色,就会直接吃掉64KB内存,这是一个恐怖的数字,要知道那时候大多数电脑总共都只有几十KB的RAM。所以,必须采取某些措施来解决内存占用问题。不同的主机有不同的方法,比如任天堂的游戏主机通常是把横向分辨率减半再拉伸,也就是说横向方向两个像素一起渲染,这样每个全屏的图层占用4KB,即使使用16色模式也可以接受。所以你会看到很多这样的画面: 而对于Commodore主机则是另外一种做法,就是把屏幕按照8x8划分成一个个小的单元,每个单元共享一个调色板,可以定义一个前景色和背景色,这样8KB保存一屏的图像,再用1KB保存调色板信息,在16色的模式下只占用9KB。当然这样做的结果就是,每个8x8的单元都只有两种颜色,设计师必须非常努力才能让作品看起来毫无违和感,比如下图: 这张图非常震撼,下面这张是放大图,如果你不仔细看,真的很难意识到每个8x8方格只能有两种颜色的限制。而这种8x8方格统一绘图的方式,在很多设备上都沿用了下来,如果你做嵌入式,你会发现很多屏幕的底层操作和这种原理类似。 ## 计算机的存储   很小的时候,我在姐姐的计算机读物上看到,最初的电脑用磁带作为存储介质,直到看了这个频道才一睹真容,还真有这个东西。其实更早期的电脑是靠人的手工将代码敲进计算机的,那个时候没有硬盘、没有软盘,几乎没有很方便的可以持久存储信息的设备,以至于很多广播电台用广播来播放游戏(通常是试玩版),你在电脑另一端找一个收音机接上电脑,时间一到就能载入游戏和一些有趣的东西。这真的很神奇,当然学过通信原理之后就见怪不怪了,毕竟能传输模拟信号的信道都能传输数字信号,而且数字信号还更稳定,当然它是以浪费带宽为代价的。不过不管怎么样,这些都刷新了我的认知,后来古董电脑爱好者还开发了一个软件,把那些曾经的游戏转换成音乐格式放在智能手机中,把音频线连接上电脑,在手机上播放“音乐”,这些程序就被载入到了电脑当中!   磁带的发明是计算机进步的一大步,当然它只是作为穿孔纸带的改进版而存在的。想象一下穿孔纸带的应用场景,通常是商用环境下,一台计算机用打孔纸带输入程序,运行完成之后,驱动打孔机打下计算结果。这样也就意味着磁带存储系统有同样的弊端,那就是没有办法随机存储。它的磁头只能在一个方向上移动,而不是软盘或硬盘这种二维移动方式,也就没有办法随意的访问索引区和数据区。即使在80年代末,磁带技术的发展使得双面磁带能记录几MB的数据,这在当年可谓是海量的存储啊,但仍然被容量小但速度更快的软盘取代之。这有点像当今的机械硬盘和SSD,虽然SSD容量依然很小,但取代机械硬盘也将是迟早的事情。   除了磁带,同样有趣的还有卡带,印象深刻的就是小霸王学习机上的那种卡带。当然拆开来看,通常就是一颗牛屎封装的芯片,或者普通的芯片。而那个时候我都不知道这个芯片其实是一片ROM。CPU可以直接访问ROM里面的数据,因为它同样是内存的一部分,只是不能写入,游戏厂商就是把游戏的代码烧录到了这些芯片当中。这也就解释了为什么我每次玩完《超级玛丽》想换玩《魂斗罗》都需要关机换卡,因为“内存条”当然是不支持热插拔的。 ## 最早的网络摄像头   90年代使用摄像头是比较困难的,那时还没有互联网,网络视频什么的就不用想了,而且usb还没有诞生,外设和电脑通信就必须走串口。所以,不仅要安装烦人的驱动、解决各种IRQ冲突,还要忍受折磨人的缓慢的反应速度,但拥有一个能拍照的摄像头还是很酷。主播在这一集介绍了最早的web摄像头,虽然只有80万像素、黑白的画面,但在当时却可以用惊艳来形容。当然令我感兴趣的是,有一个方法可以让黑白摄像头拍出彩色的照片。 那就是,用红、绿、蓝三个滤光片放在摄像头前面,拍出3张照片,再用软件合成一张。看到这里你真的不得不佩服人们的聪明才智。其实现今的智能手机摄像头的原理也是这样,只不过滤光片被放在了感光元件的像素单元上,而不是外置。   总之,这是一个非常有趣的频道,该主播还维护另一频道叫做“The 8 bit keys”,介绍80年代有趣的电子钢琴和声卡之类的东西,非常值得一看。地址如下: https://www.youtube.com/user/adric22