Bedeutung der Parameter im klassischen 'LOAD “*”, 8,1' Commodore-Kommando

28

In den guten alten Tagen von Commodore (64 und 128) lautete der Befehl zum Laden des ersten Programms von einer Festplatte:

LOAD "*",8,1

Wo ich es nehme, "*"war das wahrscheinlich ein Platzhalter, der einfach effektiv den gesamten Inhalt der Festplatte angab, auf LOADden dann alles erfolgreich geladen wurde, was das erste ladbare (dh ausführbare) Element auf der Festplatte war.

Aber wofür sind die beiden anderen Parameter?

MPelletier
quelle

Antworten:

32

LOAD "*", 8,1

Die allgemeine Syntax lautet:

LOAD ["<filename>"[, <device number>[, <secondary number>]]]
  • Der Dateiname *bedeutet die erste Datei auf der Festplatte, wie Sie in Ihrer Frage erwähnt haben.

  • Der erste Zahlenparameter ist eine Gerätenummer. 8ist die Gerätenummer für das erste Laufwerk. Aus dem Wikipedia-Artikel über Commodore DOS :

Konventionell hat die erste Plattenlaufwerkseinheit in einem System die Gerätenummer 8, das zweite Laufwerk, falls vorhanden, 9 usw. bis zu maximal 15

Dies scheint vom IEEE-488-Bus zu stammen , den der Commodore PET verwendet hat.

  • Der zweite Zahlenparameter bedeutet in diesem Fall 1, dass das gespeicherte Programm ab dem Speicherort in den Speicher geladen wird, der durch die ersten beiden Bytes in der zu ladenden Datei angegeben wird. Dies wird im Allgemeinen für Maschinensprachenprogramme verwendet. 0Im Gegensatz dazu ist dies der Standardwert und würde das gespeicherte Programm in $0801(den Anfang des BASIC-Speichers) laden.

Eine vollständige Beschreibung finden Sie auf der C64-Wiki-Seite für den Befehl LOAD .

Merlyn Morgan-Graham
quelle
14
Du hast gerade den ganzen Mystiker getötet. Es ist schlimmer als als ich von Santa erfahren habe. : D
Amadeo Gallardo
Ja, und für diejenigen, die Bänder benutzten, brauchten wir uns keine Sorgen um die 8,1 Sachen zu machen. LADE einfach "asterix". Ich denke, Sie könnten eine, 1,1 hinzufügen, wenn Sie dies wünschen, aber es war optional. Ich glaube auch nicht, dass wir den "Asterix" brauchen. Entschuldigung, mein Gedächtnis verlangsamt sich.
Rayzinnz
@rayzinnz yep, das ist alles richtig. Die Standardwerte werden in dem Artikel behandelt, den ich unten verlinkt habe. Nach Ihrem Kommentar habe ich ein paar Mal versucht, weitere Informationen zu den Standardwerten hinzuzufügen, aber ich habe keine Möglichkeit gefunden, dies zu tun, ohne die Antwort einfach unübersichtlich zu machen. Ich würde gerne erwähnen, warum die Standardwerte so waren, wie sie waren ("Personal Computers" sollten programmiererfreundlich sein, daher die BASIC-Shell, standardmäßig billiger Kassettenspeicher usw.), aber ich habe keine gute Möglichkeit dazu Schieben Sie diesen Kommentar hinein, ohne die Antwort viel länger zu machen.
Merlyn Morgan-Graham
2
@rayzinnz Keine Notwendigkeit für Sternchen auf Bändern. Geben Sie einfach LOAD ein und drücken Sie die Eingabetaste. dann wirst du angewiesen, PLAY ON TAPE
ZU DRÜCKEN
Auf anderen Modellen haben Sie von einer 360K 5 1/4 "-Diskette oder von einer Kassette geladen, also brauchten Sie die Parameter ...
Drunken Code Monkey
0

Wikipedia hat einige Informationen zu Commodore DOS .

MPelletier
quelle
-2

Die 8 ist das Festplattenlaufwerk. So ein bisschen wie C :. Ich glaube, die 1 ist der Kommunikationskanal. Es ist ein bisschen wie ein PORT im Sinne von TCP.

Jason Thompson
quelle