APPLICATIONSDISQUE ★ Disketten-Power ★

Disc-RSXDisk-RSX
★ Ce texte vous est présenté dans sa version originale ★ 
 ★ This text is presented to you in its original version ★ 
 ★ Este texto se presenta en su versión original ★ 
 ★ Dieser Text wird in seiner Originalfassung präsentiert ★ 

»Disc-RSX« ist eine sehr nützliche und mächtige Befehlserweiterung. Sowohl leistungsfähige Kopierprogramme als auch eigene Ko-pierschutz-Mechanismen sind nun eine Kleinigkeit für Sie.

Wer sich etwas näher mit der Diskettenspeicherung auseinandersetzt, dem steht mit dem Utility »Disc-RSX« ein mächtiges Hilfsmittel zur Bearbeitung von 3-Zoll-Disketten zur Verfügung. Aber auch Einsteigern, die frisch in diese Materie hineinriechen wollen, sei »Disc-RSX« ans Herz gelegt.

Ein gemeinsamer Rat gilt jedoch allen angesprochenen Benutzergruppen: Bevor Sie mit dem Programm arbeiten (oder experimentieren), nehmen Sie alle Disketten mit wichtigen Daten oder Programmen aus Ihren Laufwerken und verwenden Sie zunächst nur solche, bei denen ein eventueller Datenverlust keinen Schaden anrichtet. Speichern Sie aus Sicherheitsgründen die Listings nach der Eingabe erst einmal auf Diskette, bevor Sie zum ersten Probelauf starten.

Das Programm besteht aus zwei Teilen. Listing 1 enthält den DATA-Lader für die zusätzlichen Basic-Befehle; daher auch der Name »Disc-RSX«. Zur Nutzung dieser Befehle in eigenen Programmen benötigen Sie nur diesen Programmteil. Um sich unnötige Wartezeiten zu ersparen, läßt sich der erzeugte Maschinencode als Binärdatei speichern. Dazu fügen Sie folgende Zeile ein:

115 SAVE "DISC-RSX ", b, &A000,&121


Listing 2 ist eine Demonstration der vielfältigen Funktionen. Schon kurz nach dem Start wird klar, wie schnell man mit diesem Grundgerüst beispielsweise ein schnelles, leistungsfähiges und komfortables Kopierprogramm realisieren kann. Aber auch andere Anwendungen, wie zum Beispiel ein eigener Kopierschutz, werden nun zum Kinderspiel.

So geht's

Für den sinnvollen Einsatz des Programms ist die Kenntnis der Befehle und ihrer Arbeitsweise notwendig, die v/ir Ihnen anhand von praktischen Beispielen vermitteln.

Um eine neue Diskette gebrauchsfertig zu machen, ist es nötig, sie zunächst zu formatieren. Das geschieht im Normalfall mit Hilfe der mitgelieferten Dienstprogramme über CP/M. Die Formatierroutinen halten sich dabei an feste Schemata. So besitzt das sogenannte »Vendor«-Format 40 Spuren (Nummern 0 bis 39) mit jeweils neun Sektoren zu je 512 Byte. Das »CP/M«-Format ist damit völlig identisch, jedoch sind die Spuren 0 und 1 vom CP/M-Betriebssystem belegt. Als weitere Gemeinsamkeit ist die gleiche Verteilung der Sektor-IDs zu beachten. So sind die Sektoren in beiden Fällen von 41 bis 49 hex numeriert. Anders beim »Data-only«-Format. Hier gehen die Nummern der neun Sektoren von CI bis C9 hex.

Vollkommen abweichend verhält sich das »IBM«-Format (genauer müßte es eigentlich »IBM-CP/M-86-Single-Sided« heißen) mit seinen nur acht Sektoren pro Spur.

Die Sektor-IDs kommen völlig ohne Offset aus, denn sie zählen von 1 bis 8. Allerdings sind die Nummern der Sektoren wegen des sogenannten Skewfaktors immer versetzt. So ist die physikalische Reihenfolge beispielsweise für das Data-Format: C1, C6, C2, C7, C3. C8, C4, C9, C5 hex.

Nun gibt es auch noch käufliche Software auf Diskette, bei denen die Sektoren einzelner Spuren (Tracks) mit ungebräuchlichen IDs versehen sind. Diese Spuren sind mit normalen Kopierprogrammen und den über Basic verfügbaren Betriebssystem-Routinen nicht lesbar. Deshalb eignen sich solche Maßnahmen vorzüglich zum Schutz »wertvoller« Programme vor unberechtigtem Zugriff. Leider ist dem Benutzer so aber auch jede Chance genommen, selbst Sicherheitskopien anzufertigen. »Disc-RSX« bietet Ihnen jetzt Funküonen, die sich vorzüglich dazu eignen, von solchen Datenträgern identische Duplikate zu erhalten. Es versteht sich von selbst, daß diese Fähigkeit natürlich keinesfalls zur Produktion von Raubkopien eingesetzt werden darf!

Doch nun zu den Hilfsmitteln, die Ihnen in Zukunft helfen, diese »Wunderdinge« zu verwirklichen. Der Befehl

|FORMAT,id1,...,id9,anz,drive,track formatiert die Spur »track« auf Laufwerk »drive« (0 für Laufwerk A, 1 für B) mit den Sektor-IDs »idl« bis »id9« (da die Reihenfolge der Parameter »idl« bis *id9« die physikalische Numerierung der Sektoren bedeutet, bedenken Sie bitte den Skewfaktor). Benötigen Sie weniger Sektoren je Spur, begrenzen Sie deren Zahl durch einen kleineren Wert für »anz«.

Was tun Sie aber, wenn Sie eine fremde, unlesbare Diskette vor sich haben, von der ja nicht bekannt ist, welche IDs Verwendung finden? Die Zauberformel heißt:

|GETID,buffer,drive,track Der Befehl liest auf dem Laufwerk »drive« die Sektor-IDs der Spur »track« und schreibt sie in den Pufferspeicher an Adresse »buffer«. Dieser Puffer ist natürlich vorher in geeigneter Weise zu schützen, also zum Beispiel durch

MEMORY 39999 : buffer=40000


Sesam öffne Dich

An dieser Adresse finden Sie nach dem Aufruf dei Wert 0, wenn die Operation erfolgreich abgeschlossei wurde Steht dort jedoch FF hex, trat während des Lese Vorgangs ein Fehler auf. Der häufigste Grund dafür is eine nicht formatierte Spur. Gehen wir aber weiter von ersten Fall aus, stehen in den folgenden zehn Byte die gefundenen IDs und somit die Kombination zum Öffner dieses Tresors«. Da ja nun — wie oben dargelegt — au derart manipulierte Spuren kein Zugriff über das nor male Betriebssystem möglich ist, brauchen Sie dafüi ebenfalls spezielle Befehle. Mit

|READ,buffer, drive, track, id

lassen sich jetzt die Sektoren dieser Spur einzeln nach einander lesen. Der Puffer muß hier aber 512 Byte gro/i sein (Sie erinnern sich: jeder Sektor enthält genau diese 512 Byte). Wenn Sie nun in einer Schleife den Wert vor »id* variieren, und für jeden einzelnen Sektor einen ei genen Puffer anlegen, liest der Computer den Inhalt der gesamten Spur »track« in den Arbeitsspeicher, wc er sich dann nach Belieben weiterverwenden läßt. So isl es ein leichtes, ihn mit einem Monitor-Programm zu verändern. Um diese Änderungen zu sichern, greifen Sie zum Befehl

|WRITE, buffer,drive, track, id

Die Handhabung der Parameter ist die gleiche wie bei READ.

Etwas unsinnig erscheint auf den ersten Blick der Befehl

|USER,user

gehört er doch bereits zum festen Repertoire des AMS-DOS. Tatsächlich bewirkt dieses Kommando im Grunde genommen auch dasselbe. Der Vorteil liegt im größeren Wertebereich für »user«, der nicht mehr auf Zahlen von 0 bis 15 beschränkt ist. sondern von 0 bis FF hex reicht.

Sozusagen als »Extrabonbon« enthält »Disc-RSX« einen Befehl, der an sich nicht direkt mit Diskettenoperationen zu tun hat, über dessen Existenz sich viele Programmierer jedoch freuen werden:

lCALL,adresse,a,bc,de,hl

Damit ist es möglich, aus Basic-Programmen Maschi-nencode-Routinen aufzurufen und diesen Werte für die Register A, BC, DE und HL zu übergeben. Somit sind beispielsweise die kompletten Betriebssystem-Vektoren nutzbar.

(Oliver Suttorp/ja) , HappyComputer

★ PUBLISHER: Happy Computer
★ YEAR: 1986
★ CONFIG: ???
★ LANGUAGE:
★ LiCENCE: LISTING
★ COLLECTION: HAPPY COMPUTER 1986
★ AUTHOR: Oliver Suttorp
 

★ AMSTRAD CPC ★ DOWNLOAD ★

Type-in/Listing:
» Disc-RSX    (Happy  Computer)    LISTING    GERMANDATE: 2017-01-22
DL: 263
TYPE: PDF
SiZE: 315Ko
NOTE: Uploaded by hERMOL ; 3 pages/PDFlib v1.6

★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Applications » Runstrad Decoder
» Applications » Hardware Copy
» Applications » Compilation: Beckman
» Applications » Amscopy III
» Applications » CPC Mastercopy v2
» Applications » #Pirate 7.6
Je participe au site:
» Vous avez des infos personnel, des fichiers que nous ne possédons pas concernent ce programme ?
» Vous avez remarqué une erreur dans ce texte ?
» Aidez-nous à améliorer cette page : en nous contactant via le forum ou par email.

CPCrulez[Content Management System] v8.7-desktop/c
Page créée en 617 millisecondes et consultée 1707 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.