Spectrum +3 - Directory als Stream einlesen

SPC Club Forum
Antworten
Benutzeravatar
Joggy
User
Beiträge: 101
Registriert: 01.09.2016, 18:51
Wohnort: Sonnenbühl
Kontaktdaten:

Spectrum +3 - Directory als Stream einlesen

Beitrag von Joggy » 29.07.2019, 11:58

Hallo Zusammen,
nachdem das LogicArray meines alten +3 kaputt war und ich kein neues 'altes' Array auftreiben konnte, habe ich auf Ebay UK einen 'neuen' +3 ersteigert. Leider war das Diskettenlaufwerk defekt, welches ich dann gegen das Funktionierende aus dem vorherigen +3 ersetzt habe.
Ich habe das Teil gründlich gereinigt und eine abgebrochene Verschraubung im inneren des Gehäuses geklebt. Der Computer tut jetzt wie er soll und ich bin wieder fröhlich :D . Die Tauerphase um den gestorbenen ZX Spectrum +3 ist vorbei!
Der Grund, warum ich aber schreibe, ist, dass es mich schon immer gestört hat, dass wenn das Directory mit CAT aufgerufen wird, es sofort verschwindet, wenn man eine Taste drückt.
Vor vielen Jahren hatte ich auf dem ZX48 mit IF1 und Microdrive ein Programm, dass das Directory eingelesen und ein einer Tabelle angezeigt hat, die nummeriert war. Die Programme konnte man starten, indem einfach die Nummer eingegeben wurde.
Zum Starten wurde nur RUN eingegeben, das es als Autoload-Programm gespeichert war. Es wirklich sehr praktisch.
Ich finde das Programm nicht mehr, es war in irgendeiner Zeitschrift abgedruckt.
Um das Programm nachzubauen sollte ich wissen, wie das Directory über einen Stream eingelesen wird, um es anschließend anzuzeigen.
Kann mir da jemand unter die Arme greifen?
Vielleicht gibt es bereits so ein Programm. Kennt es jemand?
Viele Grüße,
Joggy
Zuletzt geändert von Joggy am 29.07.2019, 13:47, insgesamt 1-mal geändert.
Mögen täten wir schon wollen - dürfen haben wir uns nicht getraut

Benutzeravatar
Joggy
User
Beiträge: 101
Registriert: 01.09.2016, 18:51
Wohnort: Sonnenbühl
Kontaktdaten:

Re: Spectrum +3 - Dierktory als Stream einlesen

Beitrag von Joggy » 29.07.2019, 11:59

Sorry! Soll natürlich DIRECTORY heißen.
Das kommt davon, wenn man zu schnell schreibt..
Mögen täten wir schon wollen - dürfen haben wir uns nicht getraut

Benutzeravatar
Paul
User
Beiträge: 2941
Registriert: 10.03.2010, 12:01
Wohnort: Germanys west end

Re: Spectrum +3 - Dierktory als Stream einlesen

Beitrag von Paul » 29.07.2019, 13:13

Wenn du deinen ersten Post bearbeitest kannst du auch den Betreff ändern.
Theoretisch ist zwischen Theorie und Praxis kein Unterschied.
Praktisch allerdings wohl.

Benutzeravatar
Joggy
User
Beiträge: 101
Registriert: 01.09.2016, 18:51
Wohnort: Sonnenbühl
Kontaktdaten:

Re: Spectrum +3 - Directory als Stream einlesen

Beitrag von Joggy » 29.07.2019, 13:48

Danke für den Tip.
Da hätte ich auch selbst drauf kommen können :)
Mögen täten wir schon wollen - dürfen haben wir uns nicht getraut

Benutzeravatar
cha05e90
User
Beiträge: 87
Registriert: 24.08.2017, 10:02
Kontaktdaten:

Re: Spectrum +3 - Directory als Stream einlesen

Beitrag von cha05e90 » 29.07.2019, 14:24

Also beim ZX Interface 1/ZX Microdrive kann man mit "Bordmitteln" die Ausgabe von CAT in einen Datei-Stream umleiten (also in dem Fall auf eine Datei auf der Microdrive-Cartridge): https://www.manualslib.com/manual/88739 ... =29#manual

Ob das auch mit einem "Block-Medium" wie einer Diskette funktioniert, weiß ich allerdings nicht. Man kann aber auch ein bißchen "hacken" und die Ausgabe des CAT-Befehls (egal ob +3 oder ZX Microdrive) in einen String oder Stringarray umleiten. Ich nutze das lustigerweise auch aktuell - allerdings mit der Interface 1/Microdrive-Variante. Siehe meine Links hier: https://spectrumcomputing.co.uk/forums/ ... 739#p24739

Kurz: Die Ausgabe des Streams "S" (Screen) wird temporär auf "R" (bzw. "X" beim +3) umgeleitet -. und dort kann man's dann auslesen. Aber Obacht: Wenn beim CATen was schiefgeht und das Rückbiegen der Ausgaberoutine nicht stattfindet, knallt's! ;-)
+/+/48K/128

Benutzeravatar
tofro
User
Beiträge: 1044
Registriert: 14.06.2012, 16:45

Re: Spectrum +3 - Directory als Stream einlesen

Beitrag von tofro » 29.07.2019, 14:30

Hallo Joggy,

das sollte so oder so ähnlich gehen:

Code: Alles auswählen

10 OPEN #4,"M:TMP.TXT"
20 CAT #4,"A:*.*"
30 CLOSE #4
Danach sollte in dem file auf der Ramdisk das Directory der Diskette stehen.

Tobias
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo

Antworten