18

好消息,我的 c64 在我的阁楼上花了很多年之后仍在运行。
但我一直想知道的是:

开启c64时,如何从已经插入的软盘中自动加载和运行程序?

一些自动运行的命令load "*",8,1就足够了......

问候
交通部

4

6 回答 6

9

你写一个你输入的命令LOAD"*",8,1就足够了。那么,我是否可以假设该特定命令的唯一问题是它仅加载但不会自动运行程序?如果是这样,您有多种解决方案:

  1. 如果它是机器语言程序,那么您应该键入LOAD"<FILENAME>",8,1:然后(不按<RETURN>)按<SHIFT>+ <RUN/STOP>

  2. 如果它是 BASIC 程序,请键入LOAD"<FILENAME>",8:,然后(不按<RETURN>)按<SHIFT>+ <RUN/STOP>

  3. 可以编写一个 BASIC 程序,当你用LOAD"<FILENAME>",8,1. 为此,首先将以下行添加到程序的开头:

    0 POKE770,131:POKE771,164
    

    然后发出以下命令来保存程序:

    PRINT"{CLR}":POKE770,113:POKE771,168:POKE43,0;POKE44,3:POKE157,0:SAVE"<FILENAME>",8
    
于 2012-07-31T09:50:17.907 回答
8

如果没有一些定制墨盒,这是不可能的。

解决此问题的一种方法是获取 Retro Replay 磁带并破解您自己的代码。

于 2010-12-03T09:48:06.857 回答
4

我怀疑有办法做到这一点。你需要一个处理这种情况的墨盒,我认为这样的墨盒不存在。

于 2010-12-03T09:48:34.803 回答
4

实际上是更好更合适的解决方案EasyFlashRetro Replay通常与自己的ROM一起使用。由于它是一个非常有用的默认 ROM 盒式磁带,我永远不会向它刷入另一个 ROM。此外,它比EasyFlash没有这些墨盒更贵。

目前,我有Prince Of Persia(!)ROM写入我的EasyFlash,当我打开我的c64时,它会按照你的要求自动运行。

于 2011-11-25T07:34:01.547 回答
4

不是 100% 相关,但 C128 可以在 C128 模式下自动启动磁盘。例如 Ultima V(在 C128 上有音乐,但在 C64 或 C64 模式下没有 C128)自动启动。

至于卡带,我推荐 1541 Ultimate 2。它还可以从模块 rom 映像运行游戏(虽然波斯王子由于某种原因对我不起作用,也许是软件问题?),但你也得到了相当不错的软盘模拟器(这也使得将内容传输到真实磁盘变得更容易)、REU、磁带接口(如果您订购的话)等。

于 2014-05-23T22:09:57.117 回答
0

如果您正在使用 ML 程序,有几种方法。如果你不担心在没有 RESET 的情况下返回到正常的 READY 提示,你可以有一个加载到堆栈中的小型加载程序 ($0100-$01FF),加载程序只会加载下一段代码,然后跳转到它。它的起价为 0102 美元,并且需要尽可能小。很多时候,下一个要加载的只有 2 个字符,所以文件名可以放在 $0100 & $0101。然后你需要做的就是设置 LFS、SETNAM、LOAD,然后是 JMP。用 $01 填充堆栈区域的其余部分。仅节省 $0100-$010d 也是相当安全的,这样整个程序将适合单个磁盘块。

这样做的一个问题是它清除了过去的堆栈条目(因此,您的程序需要将堆栈指针重置回顶部。)如果您的程序尝试自己执行正常的 RTS,则可能会发生随机事件。如果您想退出程序,您需要跳转到重置向量(默认为 $FFFC)来执行此操作。

于 2021-10-22T21:06:44.253 回答