L'objectif de l'UniDOS est d'ajouter la gestion de nouveaux types de périphériques tout en conservant autant que possible l'ergonomie à laquelle tout le monde est habitué avec les lecteurs de disquettes. Il s'avère aussi de rester compatible avec les logiciels conçus pour n'avoir à gérer que A:
et B:
, tout en leur permettant de tirer profit des nouveaux périphériques et de leur arborescence.
Par soucis de compatibilité, l'UniDOS se limite volontairement aux mêmes noms de fichiers que l'AMSDOS. C'est-à-dire que le nom de fichier est limité à 8 caractères, que l'extension est limitée à 3 caractères, et que les caractères autorisés et interdits sont les mêmes. De ce fait, tout programme en fichiers prévu pour l'AMSDOS fonctionnera sans adaptation sous UniDOS et inversement1).
L'UniDOS gère les fichiers ouverts en écriture comme l'AMSDOS. Ils sont d'abord créés avec un nom temporaire utilisant l'extension “.$$$”
2), puis le nom définitif leur est donné à la fermeture du fichier, tout en renommant tout fichier déjà existant avec le même nom en lui attribuant l'extension “.BAK”
3).
Tout comme l'AMSDOS, si aucune extension n'est donnée dans le nom de fichier à sauver, une extension automatique est ajoutée selon le type de fichier :
“.BAS”
dans le cas d'un fichier Basic.“.BIN”
dans le cas d'un fichier binaire.“. ”
dans tous les autres cas.Comme l'AMSDOS, l'UniDOS tente automatiquement d'ouvrir les fichiers pour lesquels aucune extension n'est fournie en utilisant des extensions par défaut dans l'ordre suivant :
“. ”
, fichier avec extension vide.“.BAS”
, fichier Basic.“.BIN”
, fichier binaire.Afin d'assurer la prise en charge de nouveaux lecteurs associés à des disques durs ou des ports USB, plutôt que d'ajouter des lettres, souvent cryptiques et nécessitant de modifier les programmes existants pour les prendre en charge, l'UniDOS introduit les notions de lecteurs logiques et lecteurs physiques.
L'accès aux fichiers peut se faire indifféremment via un nom de lecteur logique ou physique.
Les lecteurs logiques demeurent les lecteurs traditionnels de l'AMSDOS : A:
et B:
. Mais ce qui change avec l'UniDOS, c'est que les lecteurs A:
et B:
sont reconfigurables et peuvent devenir des alias vers n'importe quel chemin de n'importe quel lecteur physique6).
Ainsi, le lecteur A:
peut se retrouver assigné au lecteur physique de votre disque dur tandis que le lecteur B:
pourrait être le lecteur 3“ interne de votre CPC.
L'assignation des lecteurs logiques se fait dynamiquement, soit directement via la commande LOAD
du Basic, soit avec la RSX |DRIVE
utilisée avec deux paramètres au lieu d'un seul.
Faire pointer le lecteur logique courant vers le lecteur physique SD:
:
LOAD"SD:"
Faire pointer le lecteur logique courant vers le chemin “SD:JEUX/AVENTURE”
:
LOAD"SD:JEUX/AVENTURE"
Faire pointer le lecteur logique A:
vers le chemin “SD:JEUX/AVENTURE”
:
|DRIVE,"A","SD:JEUX/AVENTURE"
La RSX |DRIVE
sans paramètre permet de lister les lecteurs physiques disponibles sur le CPC (avec leur description) ainsi que l'assignation courante des lecteurs logiques.
|DRIVE Available devices: SD: Albireo microSD card ZERO: Bytes provider DFA: Floppy disc A Logical drives: >A: SD:JEUX/AVENTURE/ B: DFA:
Il est important de noter de la configuration des lecteurs logiques est persistante.
Résistent ainsi au redémarrage et à la mise hors tension du CPC :
A:
ou B:
).
Outre le fait que cette persistance est très pratique pour l'utilisateur, elle permet aussi à tous les programmes réinitialisant manuellement les ROMs de fonctionner de manière transparente (et même les programmes qui ne fonctionnaient que sur le lecteur A:
sous AMSDOS/ParaDOS se mettront à fonctionner indifféremment sur A:
ou B:
grâce à l'UniDOS).
Par défaut, avant toute modification par l'utilisateur, A:
est le lecteur logique actif et il est assigné au chemin DFA:
; le lecteur logique B:
est quant à lui assigné au chemin DFB:
.
Si l'utilisateur maintient les touches CONTROL
et SHIFT
appuyées simultanément pendant le démarrage du CPC, la persistance des lecteurs logiques sera réinitialisée aux valeurs par défaut7). La persistance est parfois également remise à zéro en cas de mise à jour de la ROM UniDOS. Lorsque cela survient, un signal sonore est émis.
Les lecteurs physiques sont donc les lecteurs associés à un périphérique DOS donné. Il s'agit de noms pouvant comporter jusqu'à 8 caractères et terminés par un « : ». Ce sont les nœuds DOS qui créent ces lecteurs (soit de façon statique, soit de façon dynamique).
Il existe deux lecteurs physiques intégrés qui existent automatiquement à partir du moment où la ROM AMSDOS ou ParaDOS a été trouvée par l'UniDOS. Il s'agit des lecteurs associés aux lecteurs de disquettes interne et externe.
Il s'agit de :
DFA:
pour le lecteur de disquettes interne.DFB:
pour le lecteur de disquettes externe.Pour charger un fichier sur le lecteur interne8), on pourra écrire :
LOAD"DFA:MONFICH"
De plus, si une interface cassette est détectée, UniDOS mettra aussi à disposition:
TAPE:
pour accéder aux cassettes via un lecteur standard.Chaque nœud DOS peut apporter jusqu'à 8 nouveaux lecteurs physiques au système. Chaque lecteur est plus ou moins sophistiqué (amovible ou non ; supportant les répertoires ou non ; fonctionnant uniquement en lecture, uniquement en écriture, dans les deux cas ; permettant les accès indexés ou non, etc..).
Reportez-vous au manuel des nœuds DOS pour connaître la liste des lecteurs physiques qu'il ajoute ainsi que leurs propriétés.
L'UniDOS introduit le support des répertoires sur tous les médias le supportant. L'accès aux répertoires et aux fichiers s'y trouvant se fait de manière standard, similaire à ce que vous pouvez trouver sur les autres systèmes.
La syntaxe générale d'un chemin est la suivante :
LECTEUR:NIVEAU-1/NIVEAU-2/.../NIVEAU-N/FICHIER
Le nom du lecteur se situe avant le « : », il peut être indifféremment un nom de lecteur logique ou physique ; les noms des répertoires se trouvent ensuite, séparés par des « / » pour chaque niveau. Le nombre maximum de niveaux supporté par l'UniDOS est actuellement de 6.
Les noms des répertoires sont de la même forme que les noms de fichiers, 8 lettres pour le nom et 3 pour l'extension. Il offrent également les mêmes attributs, de sorte que, tout comme les fichiers, les répertoires peuvent être protégés en écriture et/ou cachés.
À noter que pour conserver la compatilité AMSDOS, le numéro de « USER » peut être fourni avant un nom d'un lecteur logique, de sorte que le chemin “5A:REP1/REP2/FICHIER”
est valide. Si A:
ne pointe pas vers un lecteur physique géré par l'AMSDOS, le « USER » est alors silencieusement ignoré.
Les lecteurs logiques A:
et B:
sont chacun assignés à un lecteur physique et à un chemin. Le choix du lecteur logique courant se fait avec les RSX traditionnelles |A
et |B
.
Le lecteur physique et le chemin associés au lecteur logique courant se change simplement en utilisant la commande LOAD
. Pour se placer dans le sous-répertoire “AVENTURE”
du répertoire “JEUX”
du lecteur SD:
on tapera :
LOAD"SD:JEUX/AVENTURE"
On peut aussi utiliser des chemins relatifs, ainsi la séquence suivante est équivalente à commande ci-dessus :
LOAD"SD:" LOAD"JEUX" LOAD"AVENTURE"
On peut retourner à la racine du lecteur physique courant avec :
LOAD":"
On peut se placer dans le répertoire “JEUX”
à la racine du lecteur courant avec :
LOAD":JEUX"
On peut se placer dans le répertoire “OUTILS”
du niveau supérieur avec :
LOAD"/OUTILS"
Tandis que pour remonter de deux niveaux on utilisera logiquement :
LOAD"//DEMOS"
Toutes ces commandes vont ouvrir un répertoire si la cible en est un. Dans le cas où la cible est un fichier, alors le fichier sera ouvert.
Il est possible de forcer l'ouverture d'un répertoire, afin que la commande échoue si la cible est un fichier. Ceci se fait en ajoutant simplement un « / » en fin de chemin. Ainsi, la commande suivante échouera si “DEMOS”
est un fichier :
LOAD"DEMOS/"
De façon similaire à la commande LOAD
, ajouter un « / » final au nom fourni à la commande SAVE
permet de créer un répertoire au lieu d'un fichier.
Pour créer un répertoire “TIROIR”
dans le chemin courant on tapera :
SAVE"TIROIR/"
Les chemins peuvent être utilisés dans toutes les commandes acceptant traditionnellement des noms de fichiers simples. C'est-à-dire que vous pouvez fournir des chemins aux commandes RUN
, LOAD
, SAVE
, etc. ; mais aussi aux RSX |ERA
, |REN
, |DIR
, etc..
Tous ces mécanismes sont génériques de sorte que :
LOAD”LANCEUR“
chargera le programme “LANCEUR”
situé dans le chemin courant du lecteur courant.RUN”:DISK“
exécutera le programme “DISK”
situé à la racine du disque courant.|COPY,”UMS:CAPTURE.SCR“,”:ECRANS/“
copiera le fichier “CAPTURE.SCR”
situé à la racine du lecteur UMS:
vers le répertoire “ECRANS”
situé à la racine du lecteur courant (voir la section dédiée à la RSX |COPY pour plus d'informations).|DIR,”ECRANS/*.*“
listera tous les fichiers situés dans le répertoire “ECRANS”
du niveau courant du lecteur courant (voir la section dédiée à la RSX |DIR pour plus d'informations).
À noter que lorsqu'un nom de lecteur logique est utilisé, le chemin exprimé est relatif au chemin courant du lecteur logique. Par exemple, si le lecteur logique A:
est assigné à “SD:JEUX”
alors on pourra charger le programme “MENU”
du répertoire “SD:JEUX/AVENTURE”
ainsi :
LOAD"A:AVENTURE/MENU"
Les fichiers sans noms tels qu'ils peuvent exister sur les lecteurs de type « flux » (comme la cassette ou un lecteur série) s'accèdent via le caractère .
(point).
RUN"TAPE:."
Le catalogue de fichiers du répertoire courant s'obtient naturellement avec la commande historique CAT
. Le résultat est similaire à celui de l'AMSDOS, à la différence que les tailles sont affichées en quatre chiffres au lieu de trois9), et que l'unité utilisée est dynamique.
Si la taille d'un fichier ou de l'espace libre dépasse 1000Kio, alors elle sera exprimée en Mio, si elle dépasse 1000Mio les Gio seront utilisés ; et au-delà de 1000Gio, des Tio seront affichés. Dans le cas des répertoires, un indicateur [DIR]
est affiché à la place de la taille.
En entête de catalogue, le nom du répertoire courant est affiché entre crochets à la suite du nom du lecteur :
CAT Device SD: [ROOT] !UNIDOS!.NVM 2K DMADEMO . [DIR] LSUSB .BAS 6K STK . [DIR] B2F . [DIR] EQUINOXE. [DIR] OCP . [DIR] STKDMA . [DIR] BENCH .BAS 3K FAIRY . 14K OFE5 . [DIR] STKOS . [DIR] BRKPOINT.AVI 311M JEUX . [DIR] PAO . [DIR] TEST .AVI 1G DIGITRAK. [DIR] LARSEN . [DIR] SCREENS . [DIR] 51G free
Comme le fait l'AMSDOS, le tri est fait par ordre alphabétique et par colonne, le nombre de colonnes dépendant de la largeur de la fenêtre courante. L'affichage est en outre interruptible de la même manière que la commande LIST
du Basic : presser une fois ESC
met l'opération en pause, une deuxième fois l'interrompt ; ceci est particulièrement pratique lors de l'affichage de longs catalogues.
Le nombre maximum de fichiers affichables via la commande CAT
est de 146, au-delà le message “Other files exist”
sera affiché à la fin du catalogue pour vous indiquer que la totalité des fichiers n'a pas pu être affichée10). Les RSX |DIR
et |INFO
n'ont pas cette limitation et sont toujours capables d'afficher la totalité des fichiers présents.
Les CAT'arts AMSDOS continueront d'être affichés normalement depuis les disquettes, mais des adaptations seront sans doute nécessaire pour qu'ils continuent de fonctionner normalement une fois les fichiers copiés sur un autre support.
À noter que la RSX |DIR
se comporte quant à elle exactement comme avec l'AMSDOS (voir la section dédiée à la RSX |DIR pour plus d'informations), les fichiers étant affichés sans tri et sans leur taille ; ce qui permet un affichage en cinq colonnes en pleine largeur mode 2, mais ne permet pas de distinguer les fichiers des répertoires :
|DIR Device SD: [ROOT] TEST .AVI BRKPOINT.AVI !UNIDOS!.NVM BENCH .BAS LSUSB .BAS FAIRY . STKOS . STKDMA . STK . SCREENS . PAO . OFE5 . OCP . LARSEN . JEUX . EQUINOXE. DMADEMO . DIGITRAK. B2F . 51G free
En complément, l'UniDOS ajoute une RSX |INFO
similaire à cette de la ROM Utopia d'Arnor Ltd. et qui permet d'obtenir des informations détaillées sur les fichiers (voir la section dédiée à la RSX |INFO pour plus d'informations) :
|INFO SIZE LOAD LOGL ENTRY BRKPOINT.AVI 13722198 ---- ---- ---- TEST .AVI 4DC88660 ---- ---- ---- !UNIDOS!.NVM 000004F5 ---- ---- ---- BENCH .BAS 00000996 $0170 0916 0000 LSUSB .BAS 0000168C ---- ---- ---- FAIRY . 0000379F &0800 371F 0800 STKOS . Dir STKDMA . Dir STK . Dir SCREENS . Dir PAO . Dir OFE5 . Dir OCP . Dir LARSEN . Dir JEUX . Dir EQUINOXE. Dir DMADEMO . Dir DIGITRAK. Dir B2F . Dir
L'UniDOS offre également le support des liens symboliques.
Les liens symboliques se créent avec la RSX |MAKELINK
dont vous trouverez les informations détaillées dans la section dédiée. Une fois un lien créé, toute lecture du lien sera automatiquement redirigée vers la cible de celui-ci.
Les liens symboliques peuvent avoir pour cible n'importe quel fichier, répertoire, ou même lien, de n'importe quel lecteur physique ou logique. En outre, la cible peut-être référencée avec un chemin absolu ou relatif. La cible du lien n'a pas forcément besoin d'exister au moment où le lien est créé, ce qui permet d'avoir des liens dynamiques très pratiques lorsqu'ils sont utilisés sur des médias amovibles telles que des clef USB ou des disquettes.
Les liens symboliques fonctionnent également vers et depuis les disquettes, même si l'AMSDOS lui-même ne saura pas les gérer.
Par défaut, les liens symboliques sont créés et chargés avec l'extension ”.LNK“
mais n'importe quelle extension peut être spécifiée. Tout comme les fichiers et les répertoires, un lien symbolique peut être protégé en écriture et/ou caché. Effacer un lien symbolique supprime le lien lui-même et non sa cible.
En temps normal, seules les ROMs de second plan situées dans un emplacement inférieur à 16 peuvent exposer des RSX. Grâce à l'UniDOS, les RSX hébergées dans tous les nœuds actifs sont également exposées, même s'ils sont des ROMs d'extension.
La priorité de recherche des RSX est la suivante :
La plupart des RSX offertes par l'UniDOS sont identiques à celles de l'AMSDOS, avec parfois davantage de fonctionnalités. Elles sont en outre toutes interruptibles de la même manière que la commande LIST
du Basic : presser une fois ESC
met l'opération en pause, une deuxième fois l'interrompt ; ceci est particulièrement pratique lors de l'affichage de longs catalogues.
À noter que quelques unes des RSX additionnelles ne sont pas actuellement compatibles avec les disquettes gérées par l'AMSDOS : c'est le cas de |PROTECT
, |UNPROTECT
, |HIDE
, |SHOW
, |INFO
, |LIST
et |SETFILEDATE
.
Cette RSX est similaire au CAT
du Basic mais affiche les répertoires avant les fichiers et en les colorisant.
|cat Device SD: [ROOT] B2F . [DIR] S+ . [DIR] 02 .MP3 2M PPIWAIT .ASM 7K CONTIKI . [DIR] SCREENS . [DIR] BANKMAN .BAS 1K PPIWAIT .BIN 2K DIGITRAK. [DIR] SSA-1 . [DIR] BANKMAN .BIN 2K PPIWAIT .REF 1K DMADEMO . [DIR] STK . [DIR] BENCH .BAS 3K PROTEXT . 1K EQUINOXE. [DIR] STKDMA . [DIR] C10CPM3 .EMS 25K SCREEN .BAK 17K G-000898. [DIR] STKOS . [DIR] D .BAS 1K SCREEN .SCR 17K JEUX . [DIR] TECHNIMU. [DIR] DATE .BAS 1K TEST .BAS 1K LARSEN . [DIR] UNILOAD .APP [DIR] FAIRY . 14K TEST .SCR 17K OCP . [DIR] UNILOAD .DEV [DIR] FAST .ASM 3K TEXTINP .BAS 1K OCP .ORG [DIR] UNITOOLS. [DIR] FTP .BAS 1K TOTO .SCR 17K OFE5 . [DIR] VELUS . [DIR] HEROS .BAS 3K UNPRO .BAS 1K PAO . [DIR] VW . [DIR] LNK .LNK 1K VELUS .LHA 88M PLAYSA2 . [DIR] !UNIDOS!.NVM 2K NOVA .BAS 1K VIEWER .BIN 5K PLAYVGM . [DIR] 01 .MP3 2M PPITEST .BAS 2K 6G free
Cette RSX n'existe que pour des raisons de compatibilité et est sans effet. Il en va de même pour les variantes |DISC.IN
et |DISC.OUT
.
Cette RSX n'existe que pour des raisons de compatibilité et est sans effet. Il en va de même pour les variantes |TAPE.IN
et |TAPE.OUT
.
Active le lecteur logique A:
en tant que lecteur courant.
L'assignation courante du lecteur A:
est alors utilisée (et modifiable) par les commandes de manipulation de fichiers et de répertoires.
Active le lecteur logique B:
en tant que lecteur courant.
L'assignation courante du lecteur B:
est alors utilisée (et modifiable) par les commandes de manipulation de fichiers et de répertoires.
À la différence de la commande |DRIVE
de l'AMSDOS qui ne fonctionne qu'avec un seul paramètre, avec l'UniDOS elle peut aussi être utilisée sans paramètre ou avec deux.
Syntaxe : |DRIVE
Liste les périphériques DOS disponibles et l'état d'assignation et d'activation des lecteurs logiques11).
Attention, cette commande est différente de |NODE
qui liste tous les lecteurs effectivement supportés.
|DRIVE Available devices: SD: Albireo microSD card ZERO: Bytes provider DFA: Floppy disc A Logical drives: >A: SD:JEUX/AVENTURE/ B: DFA:
Syntaxe : |DRIVE,”[A|B]“
Identique au fonctionnement de l'AMSDOS :
|DRIVE,”A“
est équivalent à |A
.|DRIVE,”B“
est équivalent à |B
.
Syntaxe : |DRIVE,”[A|B]“,”CHEMIN“
Assigne le chemin spécifié au lecteur logique A:
ou B:
.
Ce chemin peut-être absolu, ou relatif à l'assignation courante du lecteur logique à modifier.
|DRIVE,"B","SD:JEUX/AVENTURE"
Syntaxe : |PATH
Affiche le chemin courant (celui-ci correspond à l'assignation du lecteur logique courant).
Le chemin renvoyé est un chemin explicite ; cela signifie qu'il se termine toujours par un « / » (ou par un « : » si on est à la racine du lecteur) et qu'il peut être directement utilisé comme préfixe pour y concaténer un nom de fichier ou de répertoire additionnel.
|PATH SD:JEUX/AVENTURE/
Syntaxe : |PATH,@var$
Retourne le chemin courant dans la variable var$
.
var$=SPACE$(255) |PATH,@var$ PRINT vars$ SD:JEUX/AVENTURE/
Identique à la RSX |DIR
de l'AMSDOS, à la seule différence que les chemins sont gérés.
Astuce : si le chemin fourni en paramètre est un répertoire explicite (par exemple “SD:”
ou “JEUX/”
), alors tous les fichiers qu'il contient seront automatiquement listés, comme si le joker « *.* » avait été fourni.
Notez la différence entre |DIR,”JEUX“
(“JEUX”
est alors un motif de filtrage) et |DIR,”JEUX/“
(“JEUX”
est alors un répertoire explicite) :
|DIR,"JEUX" Device SD: [ROOT] JEUX . 51G free
|DIR,"JEUX/" Device SD: [JEUX] DIZZY . IRON . SEYMOUR . 51G free
Identique à la RSX |ERA
de l'AMSDOS, à la seule différence que les chemins sont gérés.
Pendant l'effacement, une confirmation est demandée à l'utilisateur pour chaque répertoire, fichier protégé et fichier caché rencontré.
Astuce : si le chemin fourni en paramètre est un répertoire explicite (nom qui se termine par un « / » ; par exemple “JEUX/”
), alors tous les fichiers qu'il contient seront automatiquement effacés (comme si le joker « *.* » avait été fourni), mais pas le répertoire lui-même.
Notez la différence entre |ERA,”JEUX“
(“JEUX”
est alors un motif de filtrage) et |ERA,”JEUX/“
(“JEUX”
est alors un répertoire explicite). Dans le premier cas le répertoire “JEUX”
et tout ce qu'il contient sera effacé, dans le second cas seulement le contenu du répertoire “JEUX”
sera effacé.
Soyez toujours prudents avec |ERA
; il est impossible de récupérer un fichier ou un répertoire effacé.
Identique à la RSX |REN
de l'AMSDOS, à la seule différence que les chemins sont gérés.
À noter que |REN
permet également de déplacer les fichiers d'un répertoire à l'autre sur les périphériques le supportant.
Syntaxe : |PROTECT,”CHEMIN“
Protège en écriture les fichiers et répertoires correspondants au chemin fourni (le chemin peut utiliser des jokers).
Syntaxe : |UNPROTECT,”CHEMIN“
Retire la protection en écriture des fichiers et répertoires correspondants au chemin fourni (le chemin peut utiliser des jokers).
Syntaxe : |HIDE,”CHEMIN“
Cache du catalogue les fichiers et répertoires correspondants au chemin fourni (le chemin peut utiliser des jokers).
Syntaxe : |SHOW,”CHEMIN“
Montre à nouveau dans le catalogue les fichiers et répertoires correspondants au chemin fourni (le chemin peut utiliser des jokers).
Syntaxe : |INFO,”CHEMIN“
Fonctionne de façon identique à |DIR
mais affiche une sortie détaillée, et incluant également les fichiers cachés.
La sortie suit le motif suivant pour chaque ligne :
SIZE LOAD LOGL ENTRY BASIC .BASphFULLSIZE $LOAD LOGL NTRY BINARY . phFULLSIZE &LOAD LOGL NTRY LINK . phFULLSIZE .LOAD LOGL NTRY ASCII . phFULLSIZE ---- ---- ---- DIR . phDir
Où on trouve 8 colonnes avec le contenu qui suit :
p
: marqueur de protection en écriture ; « * » si protégé, vide sinon.h
: marqueur de visibilité ; « ! » si caché, vide sinon.FULLSIZE
: taille physique du fichier en 32 bits hexadécimal.$
pour un fichier Basic.%
pour un fichier Basic protégé.&
pour un fichier binaire.,
pour un lien symbolique.LOAD
: adresse de chargement en 16 bits hexadécimal.LOGL
: taille logique du fichier en 16 bits hexadécimal.NTRY
: adresse d'exécution du fichier en 16 bits hexadécimal.
Syntaxe : |LIST,”CHEMIN“
Fonctionne de façon identique à |DIR
mais affiche les fichiers avec leur taille et leur date de dernière modification (incluant également les fichiers cachés). Les fichiers protégés sont suffixés par le caractère « * » et les cachés par « ! ».
|list Device SD: [ROOT] !UNIDOS!.NVM 2K 29-Oct-22 18:43:26 PLAYSA2 . [DIR] 01-Sep-21 15:11:50 PLAYVGM . [DIR] 12-Sep-21 16:28:08 VIEWER .BIN 5K 16-Jun-21 20:15:14 VELUS .LHA 88M 22-Feb-21 19:24:14 PPIWAIT .REF 1K 16-May-21 16:35:50 PPIWAIT .BIN 2K 16-May-21 16:35:50 PPIWAIT .ASM 7K 16-May-21 16:35:50 PPITEST .BAS 2K 16-May-21 16:35:50 FAST .ASM 3K 26-Nov-20 23:35:02 FAIRY . 14K 02-Apr-10 23:24:22 BENCH .BAS 3K 12-Dec-20 15:31:40 01 .MP3 2M 23-Nov-03 08:18:52 VW . [DIR] 28-Aug-21 13:49:06 TECHNIMU. [DIR] 28-Aug-21 13:46:54 STKOS . [DIR] 24-May-21 23:46:48 STKDMA . [DIR] 12-Sep-22 15:20:36 STK . [DIR] 24-Jan-21 13:22:04 SSA-1 . [DIR] 28-Aug-21 13:47:08 SCREENS . [DIR] 30-Oct-21 11:51:04 S+ . [DIR] 16-Sep-02 19:07:04 PAO . [DIR] 06-Oct-22 23:03:20 OFE5 . [DIR] 20-Jul-20 20:11:32 OCP .ORG [DIR] 27-May-21 20:52:16 OCP . [DIR] 03-Apr-21 00:54:44 LARSEN . [DIR] 04-Aug-20 19:40:58 JEUX . [DIR] 18-Oct-22 20:45:52 EQUINOXE. [DIR] 21-Jul-20 18:51:10 DMADEMO . [DIR] 31-Oct-20 18:29:44 DIGITRAK. [DIR] 16-Dec-20 15:24:32 CONTIKI . [DIR] 16-Dec-20 18:10:20 B2F . [DIR] 20-Jul-20 13:39:04 VELUS . [DIR] 23-Aug-22 17:21:30 UNILOAD .APP [DIR] 05-Oct-22 16:21:38 UNILOAD .DEV [DIR] 29-Sep-22 19:30:04 FTP .BAS 1K 16-Sep-22 16:03:02 TEST .BAS 1K 26-Sep-22 15:27:00 02 .MP3 2M 26-Sep-22 23:10:06 TEST .SCR 17K 27-Sep-22 11:20:14 LNK .LNK 1K 06-Oct-22 10:33:46 TEXTINP .BAS 1K 10-Oct-22 17:40:48 C10CPM3 .EMS 25K 11-Oct-22 20:04:18 BANKMAN .BAS 1K 11-Oct-22 21:35:36 BANKMAN .BIN 2K 11-Oct-22 21:35:44 NOVA .BAS 1K 14-Oct-22 10:07:48 SCREEN .BAK 17K 11-Oct-22 00:22:52 SCREEN .SCR 17K 17-Oct-22 13:14:12 D .BAS 1K 17-Oct-22 16:38:20 DATE .BAS 1K 17-Oct-22 18:27:14 PROTEXT . 1K 19-Oct-22 13:51:08 G-000898. [DIR] 01-Oct-22 12:48:36 TOTO .SCR 17K 23-Oct-22 11:23:14 UNITOOLS. [DIR] 24-Oct-22 17:55:20 UNPRO .BAS 1K 25-Oct-22 00:05:32 HEROS .BAS 3K 25-Oct-22 00:44:12 6G free
Syntaxe : |MAKELINK,”LIEN“,”CIBLE“
Crée un lien symbolique nommé “LIEN”
pointant vers le chemin cible “CIBLE”
.
Le chemin cible peut être un chemin vers un lecteur, un répertoire, un fichier ou même un autre lien symbolique. Elle n'a pas besoin d'exister au moment de la création, uniquement au moment de la lecture du lien.
Syntaxe : |READLINK,”LIEN“
Affiche la cible du lien symbolique nommé “LIEN”
.
|READLINK,"SCREENS" UMS:FICHIERS/ECRANS/
Syntaxe : |READLINK,”LIEN“,@var$
Retourne la cible du lien dans la variable var$
.
var$=SPACE$(255) |READLINK,"SCREENS",@var$ PRINT vars$ UMS:FICHIERS/ECRANS/
Syntaxe : |COPY,”SOURCE“,”DEST“
Copie le fichier depuis “SOURCE”
vers “DEST”
.
“SOURCE”
et “DEST”
peuvent être des chemins vers n'importe quel répertoire de n'importe quel lecteur mais avec les restrictions suivantes :
“SOURCE”
doit être un nom de fichier (les répertoires et les jokers ne sont pas autorisés pour le moment).“DEST”
n'existe pas ou qu'il correspond à un nom fichier, alors le fichier source est renommé vers ce nom lors de la copie (si un fichier existait avec ce même nom, il sera écrasé).“DEST”
est un nom de répertoire, alors le fichier source est copié vers ce répertoire en conservant son nom originel.“DEST”
est un nom de répertoire explicite (terminé par un « / ») alors la coupie échouera si un fichier avec ce nom existe déjà, sinon le fichier source est copié vers ce répertoire en conservant son nom originel.
Copie du fichier “MENU.BAS”
à partir du chemin “SD:JEUX/AVENTURE”
vers le chemin “UMS:”
en le renommant en “DISK.BAS”
' :
|COPY,"SD:JEUX/AVENTURE/MENU.BAS","UMS:DISK.BAS"
Copie du fichier “MENU.BAS”
à partir du chemin “SD:JEUX/AVENTURE”
vers le chemin “UMS:”
en conservant son nom :
|COPY,"SD:JEUX/AVENTURE/MENU.BAS","UMS:"
Copie du fichier “MENU.BAS”
à partir du chemin “SD:JEUX/AVENTURE”
vers le chemin “UMS:COPIE”
en échouant si un fichier avec ce nom existe déjà:
|COPY,"SD:JEUX/AVENTURE/MENU.BAS","UMS:COPIE/"
Syntaxe : |FORMAT,”LECTEUR:“
Cette RSX permet d'initialiser le lecteur LECTEUR:
.
Par exemple, |FORMAT,”IDE:“
va formater le disque IDE:
en y créant une partition FAT qui occupera tout l'espace disponible.
Cette RSX permet de lister les nœuds DOS installés et d'obtenir des informations sur ceux-ci.
Syntaxe : |NODE
Liste les nœuds DOS installés et indique s'ils sont actifs et, le cas échant, quelles sont leurs fonctionnalités secondaires. Un nœud marqué active
est en fonction, un noeud marqué inactive
est désactivé car la carte d'extension associée n'a pas été détectée sur le CPC. L'indication nvm
marque le nœud DOS qui gère la mémoire non volatile, tandis que clock
identifie celui qui gère l'horloge.
|NODE ROM 1:NOVA 1.41 nvm, clock ROM 7:UNIDOS 1.50 active ROM 8:FATFS 1.41 inactive ROM 14:UNITOOLS 1.41 active ROM 27:ALBIREO 1.41 active
Syntaxe : |NODE,NUMÉRO DE ROM
Liste des lecteurs qui peuvent être pris en charge par le nœud indiqué ; le résultat est fonction des périphériques détectés par le nœud.
Attention, cette commande est différente de |DRIVE
qui ne liste que les lecteurs effectivement disponibles (c'est-à-dire qui sont détectés mais aussi dans lesquels un média est inséré).
|NODE,27 ROM 27:ALBIREO 1.41 active SD: MicroSD Card UMS: USB Mass Storage
Cette RSX permet de charger un fichier de type quelconque à n'importe quelle adresse en mémoire.
Elle est similaire à la RSX du même nom disponible dans les ROMs Maxam et Utopia d'Arnor Ltd et a l'avantage de permettre le chargement direct en mémoire de tout type de fichier, y compris les fichiers de type ASCII (chose normalement impossible en BASIC), de ne pas allouer de tampon de 2K comme le fait la commande LOAD
du BASIC, et d'ignorer le HIMEM
(ce qui permet le chargement à n'importe quelle adresse).
Accessoirement, cette RSX permet aussi d'ouvrir un répertoire, comme avec la commande LOAD
du BASIC, mais sans générer de code d'erreur ; ce qui évite l'interruption du programme BASIC (voir les Annexes pour plus de détails).
Syntaxe : |LOAD,”CHEMIN“
Si le chemin correspond à un fichier de type binaire ou BASIC, alors celui-ci sera ouvert à l'adresse indiquée dans son entête.
Si le chemin correspond à un fichier ASCII, alors une erreur sera remontée indiquant que le deuxième paramètre (l'adresse de chargement) doit être fourni (voir ci-après).
Si le chemin correspond à répertoire, alors celui-ci sera ouvert comme avec la commande LOAD
du BASIC.
Syntaxe : |LOAD,”CHEMIN“,ADRESSE
Si le chemin correspond à un fichier, quel que soit son type, celui-ci sera chargé à l'adresse fournie.
Si le chemin correspond à un répertoire, alors l'adresse est ignorée est celui-ci sera ouvert comme avec la commande LOAD
du BASIC.
Cette RSX permet de sauver un fichier de type binaire.
Elle est similaire à la RSX du même nom disponible dans les ROMs Maxam et Utopia d'Arnor Ltd et a l'avantage de ne pas allouer de tampon de 2K comme le fait la commande SAVE
du BASIC.
Accessoirement, cette RSX permet aussi de créer un répertoire, comme avec la commande SAVE
du BASIC, mais sans générer de code d'erreur ; ce qui évite l'interruption du programme BASIC (voir les Annexes pour plus de détails).
Syntaxe : |SAVE,”CHEMIN EXPLICITE“
Crée le répertoire correspondant au chemin explicite fourni (pour rappel, un chemin explicite est un chemin qui se termine par un « / »).
Syntaxe : |SAVE,”CHEMIN“,ADRESSE,LONGUEUR
Sauve un fichier binaire depuis l'adresse et avec la taille indiquées.
Syntaxe : |SAVE,”CHEMIN“,ADRESSE,LONGUEUR,EXÉCUTION
Sauve un fichier binaire depuis l'adresse et avec la taille indiquées et en spécifiant l'adresse d'exécution.
Cette RSX permet de sauver un fichier de type ASCII.
Elle est similaire à la RSX du même nom disponible dans les ROMs Maxam et Utopia d'Arnor Ltd.
Accessoirement, cette RSX permet aussi de créer un répertoire, comme avec la commande SAVE
du BASIC, mais sans générer de code d'erreur ; ce qui évite l'interruption du programme BASIC (voir les Annexes pour plus de détails).
Syntaxe : |SAVEA,”CHEMIN EXPLICITE“
Crée le répertoire correspondant au chemin explicite fourni (pour rappel, un chemin explicite est un chemin qui se termine par un « / »).
Syntaxe : |SAVEA,”CHEMIN“,ADRESSE,LONGUEUR
Sauve un fichier ASCII depuis l'adresse et avec la taille indiquées.
Cette RSX permet de gérer l'heure sur les systèmes étant équipés d'une carte supportée.
Affiche l'heure et la date courante du système.
|CLOCK Thu 03-Nov-2022 16:33:56
Syntaxe : |CLOCK,”[JJ-MMM-AAAA] [HH:MM[:SS]]“
Règle la date et/ou l'heure en fonction du paramètre fourni.
Par exemple :
|CLOCK,"03-Nov-2022 16:33:56"
|CLOCK,"03-Nov-2022"
|CLOCK,"16:33"
Cette RSX permet de modifier l'heure et la date d'un ou plusieurs fichiers ou répertoires.
Syntaxe : |SETFILEDATE,”CHEMIN“
Met à la date et l'heure courante les fichiers et répertoires correspondants au chemin fourni (le chemin peut utiliser des jokers).
Syntaxe : |SETFILEDATE,”CHEMIN“”[JJ-MMM-AAAA] [HH:MM[:SS]]“
Met à la date et l'heure spécifiés les fichiers et répertoires correspondants au chemin fourni (le chemin peut utiliser des jokers).
Redémarre le système avec UniDOS totalement désactivé. Pour réactiver UniDOS, le système devra être éteint et rallumé.
“.BAK”
existait déjà, il sera effacé et remplacé“Directory”
est affiché à la place des colonnes suivantes