我需要一种方法来查找字符('<')是否撞到了墙上(黑色像素图形)
- 在 ZX81 游戏中。
我一直在看另一个游戏......它使用代码
if peek(peek 16398 +256*peek 16399) = code "**blackpixel graphic**" then ...
这似乎对他们有用......
这是正确的代码吗?
我对地址和获取内存之类的东西并不是很了解。
请帮我...
-如果你知道更好的方法。请回答 :)
谢谢,
peek
读取内存位置的字节。根据Sinclair ZX81的系统变量,内存位置16398
并16399
形成一个包含当前“显示文件中PRINT位置的地址”的16位值。
因此,peek 16398 + 256*peek 16399
将这两个值组合成一个 16 位地址,然后peek
将该地址(可能)获取该位置的像素/字符(?)。
位于地址 16398 和 16399 的是构成光标位置的两个字节。(见http://web.ukonline.co.uk/sinclair.zx81/chap28.html)。换句话说,
peek 16398 + 256*peek 16399
为您提供屏幕上字符的内存地址,下一个 PRINT 将去往何处。这显然可以用PRINT AT
.
peek(peek 16398 + 256*peek 16399)
查找该位置的任何字符的代码。其余的你应该能够弄清楚。
现在,主要问题是:您的游戏是否以相同的方式使用光标?如果不是,您必须使用不同的解决方案。
这取决于内存地址是什么,但 peek 通常表示“这个内存位置有什么值?”
这看起来应该是这个特定主题的一些好读物。