Applesoft Basic,如何隐藏闪烁的光标?

时间:2018-08-11 02:47:53

标签: basic apple-ii

我终于决定为Apple // e建立每月预算计划,进展顺利。现在,我正在使用AppleWin模拟器。

有人知道如何在Applesoft Basic中隐藏光标吗?我正在考虑使用Poke隐藏它还是将光标字符更改为空格?

我知道VisiCalc会执行此操作,因此在您加载程序时,直到开始编辑之前,光标不会闪烁。我想在程序中执行相同的功能。

注意:我不想通过仿真器完成此操作,因为我最终会将其移至Apple硬件。

3 个答案:

答案 0 :(得分:2)

我在这里找到了解决方案。 Terminal control/Hiding the cursor

我能够使用WAIT命令隐藏光标,然后使用GET抓取下一个字符。

WAIT 49152, 128
GET I$

此处有更多示例:Applesoft Basic Examples

答案 1 :(得分:1)

VisiCalc用汇编语言编写,Applesoft BASIC也用汇编语言编写-Applesoft在闪烁光标时调用以获取键的固件例程也是如此。您可以阅读键盘而无需从Applesoft或汇编语言中闪烁光标,但是您需要学习用于执行此操作的基础软开关。

Name     Hex    Decimal  Negative
KBD      $C000  49152    -16384
KBDSTRB  $C010  49168    -16368

总而言之,您阅读KBD可获得最后按下的键的值。如果它是新密钥,则将设置该值的第8位(“选通”)-在这种情况下,您需要减去128才能获得密钥值。然后,您访问KBDSTRB以清除KBD的选通位。有关更多详细信息,请参考Apple II Reference Manual的第5页或Apple IIe Technical Reference Manual的第12页。

The New Apple II User's Guide是另一本谈论这件事和许多其他事情的好书。

这是如何使用这些软开关的简单示例:

10 KEY = PEEK (-16384) : REM READ KEY
20 IF KEY >= 128 THEN PRINT PEEK (-16368) : REM CLEAR STROBE
30 GOTO 10

最后,考虑访问Retrocomputing来回答这些问题。

答案 2 :(得分:0)

原始答案:

在Apple IIe上有一种未记录的方法

POKE 2043, ASC(" ") + 128

更多信息:https://www.atarimagazines.com/compute/issue90/Feedback_Custom_Cursor.php

更新

正如@Nick Westgate所说。这适用于Apple IIc,而不适用于Apple IIe。

更多信息:https://github.com/AppleWin/AppleWin/issues/135