Soha Jin 发布的文章


DOS下也要色色文字


最近一个项目需要通过 telnet 展示一些 16 色前景和背景的内容,我使用了 ANSI 转义序列(escape sequence)中的 SGR(Select Graphic Rendition,图形表现选择,CSI … m)序列来控制前景和背景色。写好测试文本后在现代终端输出上是没问题的,而当我来到 MS-DOS 6.22,才发现一切并不是我想的那么简单,展示出来的数据只有一部分颜色是正常的。

ANSIBlog-1.png

xterm 和 MS-DOS 对比

我是一个出生在 00 年的人,几十年前的人们对于电脑显示颜色的追求和技术发展速度之间的矛盾,是我没经历过的。而我这里使用的 SGR 历史比较久远且现在还在广泛使用,老的资料不是很好找。下面提到的内容对于一些专家、一些古董爱好者来说可能是常识,但我觉得解决这个问题的探究过程、发掘背后的发展历史是很有意思的,故将其整理成文。

// 点开我,里面还有许多内容!


我家踏上了信息光速路


“别人家拉宽带最多俩小时,我家拉宽带得要俩礼拜。”

“怎么有人办个宽带还得自己砸墙(实际上没砸)拉线上楼的啊。”

以上是自己和群友的吐槽,因此我专门写了篇流水账记录下我家光改。

在 10 年前,也就是 2013 年,跟随着国务院的“宽带中国”战略(在此悼念一下提出“提速降费”的李克强总理),各大运营商都开始了光纤入户改造。这次改造的目的就是将各个小区的上联从铜线改为光纤,并尽可能实现光纤入户(FTTH)。很可惜,我所居住的小区的高层楼房在建造时并没有设置弱电井,八芯双绞网线和电话线是进线管以后直接上到每一户、而不是像强电一样跟着桥架上楼。这种情况换线不太现实,所以电信当时也只进行了光纤入楼(FTTB)改造,对当时使用 20M 速率宽带的我家来说倒是没有什么影响。

又过了两年升级成了 100M 宽带,也只是刚刚触到了电信的 FTTB 容量限制,只是无缘了之后的 200M、500M 甚至 1000M 宽带。这几年来我也多次向电信了解光改的事情,得到的答复都是“小区容量不足,不支持 100M 以上速率”。唯一的好处可能就是宽带的资费每次续约都比之前便宜不少,毕竟现在 2000M 宽带都有了,我们家的速率却没有变化。

今年七月底,电信业务员突然联系我:“你们家的宽带可以升级成光宽带了,要不要办理?”我不敢相信:“是改成光纤到户吗?”等了这么多年的我十分激动,在得到对方肯定的答复之后,我火速订了张票准备回家,约了周六上门。但其实这次上门只是业务员上门来谈套餐,爸爸刚好不在家没法签字,而且就算签了,师傅上门还得等排期、并没有这么快,所以这次回家啥都没干成。

这次电信上门给我推销这推销那的套餐,我都是拒绝的、要求只光改(288 元调测费)。后来恰好妈妈说自己流量不太够,我在看了一圈现在运营商的套餐后,重新考虑了电信业务员的套餐。最后选定的是 500M 宽带融合套餐,可以融 3 张卡,每张 40G 通用流量,携转优惠后 85 元/月。但我们家人都是移动用户,还有个大亲情网,不方便携转。于是我给妈妈办了一张联通的新卡,并将其携转到电信,利用起了一直空闲的第二卡槽。八月我周末都有事、九月爸爸因为亚运会没空,一直到十月亚运会结束后,才正式签了合约、等我回家后约师傅上门。

第一天,电信师傅上门,说了一些东西。第一,我们小区其实容量是不够的,他得从片区光交拉一路新的过来,需要花点时间;第二,他考察了我们楼,没有弱电井、强电井,高层也没法墙外走线。所以他只能把光猫放在一楼 FTTB 的设备那边,然后继续利用开发商预埋的双绞线上楼。想不到啊想不到,我心心念念的光纤入户死在了最后 50m。说完以后,他在我家找到了楼下 FTTB 设备上对应的网线,就离开了。

// 点开我,里面还有许多内容!


从腾讯企业邮卷铺盖跑路


去年 6 月,企业微信把腾讯企业邮箱合并了,因此我的企业微信中冒出了一车企业:毕竟一个企业邮箱只能绑一个域名。问题倒是也不大,只是看着不舒服,能忍。后来企业邮箱中的所有用户都在企业微信创建了一个人员,必须绑定微信之后才能登录、修改密码。问题也不大,毕竟我该配的多少年前就配完了,我自己可能平时要用的邮箱那绑定一下本来就要用的企业微信倒也无妨,而且可以给邮件客户端生成密码甚至关掉强制微信登录,也能忍。不过从腾讯企业邮卷铺盖跑路的想法已经种下了种子,只是平时确实忙碌。

If it ain't broke, don't fix it. 但是年初开始,QQ 告诉我,它 broke 了。老用户也不再享有 2G 的空间,而是降到 1G。(邮件类似于下面这张图,就不翻最早的了。)经过十年的积累,我已经使用了 1.1G,所以 7 月 12 日以后就收不进邮件了。删邮件是不可能删的,挑选过程很麻烦。加钱是不可能加钱的,本来功能就没很好用,和企业微信绑定后就更没有用的必要了。于是只能宣布它 broke 了,是时候 fix 了。

// 点开我,里面还有许多内容!


在90年代的笔记本上使用ChatGPT


好久没写博客了,来水一篇。昨晚在水群的时候看到 dialup.net 编写了一个 16 位 Windows 版本的 ChatGPT 客户端——WinGPT,这样 Windows 3.x 也可以使用上人工智能聊天技术了。之前还看过 Squirrel Monkey 做的整活视频《If ChatGPT were around in the 1980s...》,这次属于是成真了。

wingpt.jpg

这是怎么做到的?根据作者的介绍,他把较新的 WolfSSL 移植到了 16 位 Windows 上,这样应用程序就可以使用其接口直接处理 TLS 1.3 而不需要其他主机当代理来终结 TLS 了。当然由于时代的限制,只能使用一些比较弱的加密方式,是有安全隐患的。另外,当今的 API 并不太会考虑传输内容的尺寸进行优化,JSON 的处理同样需要一些内存。在那个年代的系统上,内存的使用是一件非常痛苦的事情,因此 WinGPT 的单次交互内容需要尽可能小,作者就限制了输入文本的长度,也一并把上下文的发送给砍掉了。

顺便一提,这个作者在写 WinGPT 的时候,也问过 ChatGPT 怎么样来实现软件中的状态栏,但是它给了一个错误的答案。

下面则是记录一下老爷车上网开上了信息高速路,去和那“谈天吉批提”聊天的技术细节。

// 点开我,里面还有许多内容!


癸卯兔年的新年红包


新的一年到了,属于兔年的解谜红包来了!快快点击参与吧→ https://hb.lohu.info

下面是一些你应该知道的事情:

  1. 这是一个解谜游戏,利用你的知识(现学大概也是足够的)解决所有题目,获得红包口令,口令可进入支付宝领取红包。
  2. 除去红包不说,游戏的过程也是很快乐的。
  3. 你应该需要电脑才能愉快玩耍。
  4. 你拿到的所有答案都是 8 位数字,为了方便控制开始和结束时间,在支付宝领取时,前面需要加上一个“兔”字。如解题得到 20230122,那么最后的红包口令是“兔20230122”。另外,找到彩蛋红包请在前面加“彩兔”而不是“兔”。
  5. 如果你是和其他人一起完成的,希望你们只领取一次,但可以在快结束的时候进行第二次领取。总之就是要把机会先留给别人。
  6. 本次活动时间从北京时间 2023 年 1 月 24 日 20 时开始,持续 24 个小时。如果红包被提前领完不会补发。
  7. 共设 3 个红包,数额分别为:总额 72 人民币元,分 60 个;总额 88 人民币元,分 36 个;总额 98 人民币元,分 28 个。红包领取规则均为“拼手气红包”。
  8. 这个游戏由 Soha 制作,在游戏结束后也将在 Soha 的博客 https://soha.moe 上放出题解,往年的内容也可以在博客上找到。如有疑问也请通过博客的“关于我”页面上所述的联系方式联系。
  9. [T+04:00] 不涉及任何暴力解法(爆破等),需要用巧劲而不是蛮力。
  10. [T+07:00] 不知道的东西就问问万能的搜索引擎吧。
  11. 最后祝大家,新年快乐!

活动结束后将在下面更新题解。已更新,请看下方的题解。

往期回顾

// 点开我,里面还有许多内容!