Hallo! Möchte im Programm den freien Speicherplatz der Disc (wie z,B, bei CAT) ermitteln. Gibt es hierfür einen ähnlichen Befehl oder wer kann Tipps geben. Vielen Dank im Voraus!
Größe freier Speicherplatz der Disc ermitteln
- ralphlukas
- Thread is marked as Resolved.
-
-
Probier mal die Funktion CAS CATALOG - ich meine mich zu erinnern, die gibt die freien K zurück. Einfach einen 2K Speicherplatz für das Directory übergeben und zurück erhälst Du alle DIR-Einträge, sowie die freien K.
Und bevor die Frage nach dem "Wo" kommt: http://www.cantrell.org.uk/david/tech/cpc/cpc-firmware/
-
Ah, interessant - das Internet weicht mal wieder von der Realität ab Bei einem Firmware-Guide ist DE "preserved", beim anderen wirds zerstört... es sollte aber die freien K da drin stehen:
org #8000
ld de,#8100 ; Adresse 2K-Puffer
call #bc9b ; CAS/DISK CATALOG
ld (hier),de
ret
hier:Assembliere das mal (z. B. in WinApe), dann erhälst Du nach dem Start in &800B die freien K der Disk. Achtung: Ist keine Textausgabe erwünscht, so musst du diese vorher abschalten. Siehe Firmware-Manual
-
Ah, interessant - das Internet weicht mal wieder von der Realität ab Bei einem Firmware-Guide ist DE "preserved", beim anderen wirds zerstört... es sollte aber die freien K da drin stehen:
Das liegt sicherlich daran, daß DE im |TAPE-Modus undefiniert zurückkommt und nur im |DISC-Modus den Rückgabewert erhält.CU,
Prodatron -
Stimmt natürlich, im Tape-Modus gibts das ja nicht Leider fehlt aber auch die Anmerkung für den Disk-Mode. Auf jeden Fall sollte es wie oben beschrieben klappen - auf eine Fehlerabfrage habe ich aber im Source verzichtet - die sollte man natürlich noch einbauen.
-
Vielen Dank für die Antworten! - die mich leider aber überfordern...
Ich suche im BASIC-Bereich nach einer Möglichkeit, den freien Speicherplatz der Disc einer Variablen zu übergeben. - mit &800B wird -32757 ausgegeben, allerdings unabhängig von der tatsächlichen Größe.
Sorry für men nicht-Wissen.... -
variable=peek(&800b)
Grüßle,
AMSi