我正试图在LC3 Assembly中创建一个具有射击机制的2D平台成型器。由于这是从零开始的,我还需要创建游戏引擎。在过去的4个小时里,我一直在创建一个精灵库,由于我希望忽略一种可能更有效的方法,这意味着在每个精灵的20px20p区域中写出每个单独像素的颜色数据。
.ORIG x87B5
;-------------------------------------------------
;TITLE: R x8000
;-------------------------------------------------
.FILL x0000
.FILL x7C00
.FILL x7C00
.FILL x7C00
.FILL x7C00
.FILL x7C00
.FILL x7C00
.FILL x7C00
.FILL x7C00
.FILL x7C00
.FILL x7C00
.FILL x001F
.FILL x0000
.FILL x0000
.FILL x0000
.FILL x0000
.FILL x0000
.FILL x0000
.FILL x0000
.FILL x0000
这是属于一个精灵的一行20像素的代码。如果有一种方法可以让我使用某种软件绘制精灵,然后将其转换为LC3兼容的精灵数据阵列,比如这个阵列,请给我指明正确的方向。对于任何好奇的人来说,我正在使用一个版本的LC3操作系统,它在内存中保留了xC000xFDFF,用于内存映射的图形显示,我很高兴与感兴趣的人分享。
- 我们可以将简单的图像表示为文本,将其存储在文件中,并编写C或C#程序来读取文本文件并将数据生成为
.FILL
语句。在这里,一个简单的B&框的W图像在文本中可能如下所示:
*****
* *
* *
*****
C程序可以读取这些行并输出相应的.FILEL语句。
- 我们可以使用MS Paint,并以C或C#程序读取的文件格式输出,然后输出
.FILL
语句。例如;跳过标题后,W.bmp文件格式很容易解码