首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >C64字符大小

C64字符大小
EN

Stack Overflow用户
提问于 2020-12-22 20:13:24
回答 2查看 79关注 0票数 0

我刚开始在复古游戏区的c64上工作。

我想知道为什么在c65上一个字符是8个字节,而在现代网络开发中,比如在php中,一个字符只有1个字节。

这与c64显示器的工作方式有关吗?它需要所有的数据来生成屏幕上的角色?

EN

回答 2

Stack Overflow用户

发布于 2020-12-25 10:58:47

你不是在做苹果和苹果的比较。

C64上的一个字符占用一个字节,就像现代系统一样(在这里简化;我不确定unicode字符的大小)。但出于显示目的,有许多选项:

  • 常规文本模式屏幕为25行x 40个字符,或1,000字节。
  • 在位图设置中,你可以使用高分辨率(200行乘320列)或多色分辨率(200行乘160列);这两种分辨率的区别在于,在高分辨率模式下,每8列只能有两种颜色(即开或关状态),但在多色模式下,你可以有四种颜色(允许每个“列”用2位来表示,2位就可以有四种状态)。在这两种模式下,您都需要大约8k的内存(准确地说,需要8000字节)。当使用位图图形时,您需要将每个字符“绘制”到屏幕上,这将需要每个字符8个字节(因为C64上的正常字体是8x8像素,相当于8个字节)。

这些不是精灵。在一个普通的情况下,你可以有8个精灵并控制它们的位置,覆盖在位图(或基于文本的)显示的顶部。Sprite分辨率(即双色或多色)遵循与位图图形的高分辨率或多色分辨率相同的逻辑。

票数 4
EN

Stack Overflow用户

发布于 2021-09-14 11:59:43

你必须根据“字符图形数据”和“文本数据”来思考。

Arial true type字体大小为756kb,包含3988个字符的数据:大约相当于每个字符194个字节

PC标准ASCII文本文件=每个字符1字节= 128个字符中的任意1个(第8位未使用)。文本文件本身并不存储实际的字符,只是对它们的引用。

c64使用名为PETSCII的字符集,该字符集从ASCII派生而来,具有两种模式:大写和小写,以及大写和图形字符。它们每个只有128个字符,外加128个反向版本。所以每个set/mode有255个字符,所以PETSCII文本文件(如果有这样的东西?)也是每个字符1字节(我猜你可以使用第8位来定义反向开/关?对此不确定!)。对于光栅8x8图形,字符本身是使用8字节在内存中定义的:比PC字体要少得多。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65408537

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档