Hallo ,
Kann man Load"$",8 ohne das der Befehl new auslöst benutzen ???
Und kann man das Verzeichnis einer Disk in eine Variable einlesen ???
Danke und Grüße Jan
Du bist in Begriff, Forum64 zu verlassen, um auf die folgende Adresse weitergeleitet zu werden:
Bitte beachte, dass wir für den Inhalt der Zielseite nicht verantwortlich sind und unsere Datenschutzbestimmungen dort keine Anwendung finden.
letzter Beitrag von syshack am
Hallo ,
Kann man Load"$",8 ohne das der Befehl new auslöst benutzen ???
Und kann man das Verzeichnis einer Disk in eine Variable einlesen ???
Danke und Grüße Jan
Sowohl Module wie FC3 und AR6 als auch alternative Kernal wie z.B. JiffyDOS bringen die Möglichkeit mit, das Inhaltsverzeichnis einfach nur anzuzeigen, ohne es in den Speicher zu laden.
Auf einem Standard-C64 ohne Zusatzhardware kann man entsprechende Softwaretools laden, ein solches (DOS5.1) befindet sich auf der 1541-Demodiskette.
Und dann gibt es noch die Möglichkeit, das Verzeichnis per
LOAD"$",8,1
absichtlich in den Bildschirmspeicher zu laden. Im Notfall reicht das. Bei besonders langen Verzeichnissen sollte man das Laden aber rechtzeitig abbrechen, denn direkt hinter dem Bildschirmspeicher beginnt ja der Programmspeicher.
Habe die FC3 wie geht das damit ???
Laut C64-Wiki liegt die Funktion auf F7.
etwas OT aber auch was mit LOAD >>> ich hab mal wo sehen, dass man anstatt LOAD auch ein "L" mit so nem komischen haken machen kann ? so eine art abkürzung ? wie geht das mit welcher taste und gibt es da was zu beachten ?
L + "SHIFT O" = LOAD
geht auch für RUN usw.
edit -> c64 screenshot
L + schift O = load
danke !!
Kann man Load"$",8 ohne das der Befehl new auslöst benutzen ???
What MacB said.
Es gab damals in der 64er Zeitschrift immer wieder mal Tipps und kurze Listings zum Thema. Um zu verstehen, wieso es ein bestehendes BASIC V2 Programm überschreibt, empfehle ich die Lektüre dieses interessanten Artikels von Michel Steil:
LOAD"$",8
Es hat dort auch ein kleines Assembler Listing als Beispiel für einen DIR ohne den BASIC Speicher zu zerstören.
Und kann man das Verzeichnis einer Disk in eine Variable einlesen ???
Das ist unter BASIC V2 eher nicht machbar, weil die Strings in BASIC V2 nicht länger als 255 Zeichen lang sein können.
Habe die FC3 wie geht das damit ???
RTFM!
etwas OT aber auch was mit LOAD >>> ich hab mal wo sehen, dass man anstatt LOAD auch ein "L" mit so nem komischen haken machen kann ? so eine art abkürzung ? wie geht das mit welcher taste und gibt es da was zu beachten ?
Siehe auch ab Seite 130 im C64 Handbuch -ABKÜRZUNGEN DER BASIC SCHLÜSSELWÖRTER.
Siehe auch ab Seite 130 im C64 Handbuch -ABKÜRZUNGEN DER BASIC SCHLÜSSELWÖRTER.
danke !! und ich hab das halbe internet gegoogelt..
Und kann man das Verzeichnis einer Disk in eine Variable einlesen ???
Das ist unter BASIC V2 eher nicht machbar, weil die Strings in BASIC V2 nicht länger als 255 Zeichen lang sein können.
Dafür hat Said Baloui eine Routine geschrieben mit der man das Directory in ein Stringfeld einlesen kann. Veröffentlicht in c64/c128 Profi Tools.
Das Buch findet man in der Wolke, das D64 häng ich mal hier an.
Und dann gibt es noch die Möglichkeit, das Verzeichnis per
LOAD"$",8,1
absichtlich in den Bildschirmspeicher zu laden.
Sorry, MB- aber bei mir führte das noch nie zu einer lesbaren Ausgabe sondern nur zu Müll auf dem Screen. Wenn Du das hingekriegt hast würde mich interessieren wie
EDIT: Grade unter Vice versucht und mit umschalten in Groß-Klein-Modus kann man zumindest erahnen was da los ist, okay.
Wieder was gelernt, danke.
einfach auf Groß/Kleinschrift umschalten, dann sieht man wenigstens die Dateinamen. Aber immer noch Chaotisch
.
wie geht das mit welcher taste und gibt es da was zu beachten ?
Beachte: Man erhält immer das erste Keyword aus der internen Tabelle, das mit der Abkürzung übereinstimmt. Daher liefert pR, prI und priN immer 'PRINT#'; PRINT wird mit '?' abgekürzt. '?#' funktioniert dagegen nicht. Das ist aber die einzige Falle, in die man beim Abkürzen tappen kann- bei allen anderen Fällen sieht man spätestens beim Auflisten, wenn man etwas Falsches eingegeben hat. Und streng genommen liegt das auch eher am PRINT-Kommando als an der Token-Erkennung.
Soweit ich mich erinnere unterscheidet der LOAD-Befehl ob er im Direktmodus/Eingabzeilenmodus oder im Programmmodus ausgeführt wird.
10 :load"name",8
11 :load"name",8,1
wird also ohne new ausgeführt.
Schönen Gruß.
Für das Einlesen der Direktory bzw. des Diskettenverzeichnisses benutzt man aber statt den load-Befehl besser den GET-Befehl.
Sonst muß man an den Basic-Zeigern wie Programmanfang und Ende rumstellen und hat eventuell Variablenverluste.
Schönen Gruß.
@c64junior:
hab mal was in basic zusammengezimmert (directoryload aus 64'er) mit dem du das Directory in ein Stringfeld lesen kannst.
Vielleicht für den Fred-Starter auch interessant:
https://www.c64-wiki.de/index.…nal#Disketten-Operationen
Dabei wird natürlich ebenfalls kein NEW ausgeführt
@Ryk:
Rein theoretisch müßte man mit dem Blockload die Direktory auch nach 49152 laden können.
Aber gewöhnlich macht man das wohl mit get.
Schönen Gruß.
@Ryk:
Rein theoretisch müßte man mit dem Blockload die Direktory auch nach 49152 laden können.
Aber gewöhnlich macht man das wohl mit get.
Schönen Gruß.
So, so. mit GET nachladen für $C000 / 49152, also ausserhalb des BASIC Speichers?
Also plötzlich doch nicht mit LOAD"MYPROG",8,1 und dem Variablen-Trick, der sonst immer propagiert wird in den BASIC Threads?