经典 'LOAD "*",8,1' Commodore 命令中参数的含义

MPe*_*ier 30 commodore

在Commodore的美好时光(64 和 128)中,键入从磁盘加载第一个程序的命令是:

LOAD "*",8,1
Run Code Online (Sandbox Code Playgroud)

我认为它"*"可能是一个通配符,它​​可以有效地提供磁盘的所有内容,LOAD然后成功加载磁盘上第一个可加载(即可执行)项目的内容。

但是另外两个参数是做什么用的呢?

Mer*_*ham 36

加载 "*",8,1

一般语法是:

LOAD ["<filename>"[, <device number>[, <secondary number>]]]
Run Code Online (Sandbox Code Playgroud)
  • *正如您在问题中提到的,文件名表示磁盘上的第一个文件。

  • 第一个数字参数是设备编号。 8是第一个磁盘驱动器的设备号。来自维基百科关于 Commodore DOS 的文章

按照惯例,系统上的第一个磁盘驱动器单元的设备编号为 8,第二个驱动器(如果存在)为 9,依此类推,最多为 15

这似乎是来自在IEEE-488总线,其在Commodore PET使用。

  • 在这种情况下1,第二个数字参数意味着将存储的程序加载到内存中,从您正在加载的文件中的前两个字节指定的内存位置开始。这通常用于机器语言程序。 0相比之下,是默认值,并且会将存储的程序加载到$0801(BASIC 内存的开头)

C64 wiki 页面上提供了 LOAD 命令的完整描述。

  • 你刚刚杀死了所有的神秘主义者。这比我发现圣诞老人时更糟。:D (17认同)
  • @rayzinnz 磁带上不需要星号。只需输入 LOAD,然后按回车。然后你会被指示按 PLAY ON TAPE... (2认同)