" /> ContentsIndex< BrowseBrowse >


    Interface AREXX


    ACE dispose d'un jeu de commandes assez complet qui vous permettra de
    faire à peu près tout ce que vous voulez ! Grâce à la modularité de
    l'interface AREXX, tout devient possible, tout devient automatisable...
    votre créativité sera sans limites !

    Ainsi donc, vous trouverez ci-après la liste des commandes actuellement
    disponibles sur le port AREXX d'ACE.
 
    Commandes liées à l'application :

    * VERSION : retourne le numéro de version d'ACE.

    * HIDE : icônifie ACE.

    * SHOW : montre ACE à nouveau s'il était icônifié.

    * QUIT : quitte ACE.

    * FULLSCREEN ACTIVATE/N,TOGGLE/S : retourne l'état du mode plein écran.
      De plus, si ACTIVATE est spécifié, alors TOGGLE est ignoré. Mettre
      ACTIVATE à 1 passe en mode plein écran, 0 sort du plein écran. TOGGLE
      permute le mode courant.

    * SCREENTOFRONT : met l'écran hébergeant ACE en avant plan.

    * SCREENTOBACK : met l'écran hébergeant ACE en arrière plan.

    * WINDOWTOFRONT : met la fenêtre principale d'ACE en avant plan.

    * WINDOWTOBACK : met la fenêtre principale d'ACE en arrière plan.

    * WARNINGS ACTIVATE/N,TOGGLE/S : retourne l'état d'activation des
      messages d'avertissement. De plus, si ACTIVATE est spécifié, alors TOGGLE
      est ignoré. Mettre ACTIVATE à 1 active l'affichage des messages
      d'avertissement, 0 le désactive. TOGGLE permute le mode courant.
      Note : les messages d'avertissement affichent des informations dans le cas
      du chargement de fichiers disque image ou SNA partiellement invalides.

    * KEYJOY ACTIVATE/N,TOGGLE/S : retourne l'état d'activation de
      l'utilisation des touches du clavier à la place de la manette 0. De plus,
      si ACTIVATE est spécifié, alors TOGGLE est ignoré. Mettre ACTIVATE
      à 1 active l'option, 0 la désactive. TOGGLE permute le mode courant.

    Commandes de pilotage de l'émulateur :

    * RESET HARD/S : réinitalise/redémarre l'émulateur. Si le mot-clef HARD
      est précisé, alors il s'agira d'un redémarrage à froid.

    * PAUSE : met l'émulateur en pause.

    * START STEP/S : relance l'émulateur. Si STEP est présent, alors une seule
      instruction Z80 sera exécutée (mode pas-à-pas).

    * CRTC CRTC=TYPE/N : si TYPE est présent, alors sélectionne l'émulation
      du CRTC spécifié (0 à 4, 3 étant le CPC+). Sinon, renvoie le type de CRTC
      actuellement émulé.
      Attention : la version de Gate Array sera également changée si elle n'est
      pas compatible avec le nouveau CRTC.

    * GATEARRAY GATEARRAY=VERSION/N : si VERSION est présent, alors sélectionne
      l'émulation du Gate Array spécifié (40007, 40010, 40226 ou 40489, ce
      dernier étant le CPC+). Sinon, renvoie la version de Gate Array
      actuellement émulée.
      Attention : le type du CRTC émulé sera également changé s'il n'est pas
      compatible avec le nouveau Gate Array.

    * WILDSPEED ACTIVATE/N,TOGGLE/S : retourne l'état du mode de vitesse débridée.
      De plus, si ACTIVATE est spécifié, alors TOGGLE est ignoré. Mettre
      ACTIVATE à 1 passe en mode de vitesse débridée, 0 retourne en vitesse
      réelle. TOGGLE permute le mode courant.

    * AUDIO=SOUND ACTIVATE/N,TOGGLE/S : retourne l'état de la sortie audio.
      De plus, si ACTIVATE est spécifié, alors TOGGLE est ignoré. Mettre
      ACTIVATE à 1 active la sortie audio, 0 rend l'émulateur muet. TOGGLE
      permute le mode courant.

    * INSERTDISC FILE/A,DRIVE : insère le fichier disque image FILE dans le
      lecteur DRIVE (0/1 ou A/B, par défaut il s'agit du lecteur A).

    * EJECTDISC DRIVE : éjecte le fichier disque image du lecteur DRIVE (0/1 ou
      A/B, par défaut il s'agit du lecteur A).

    * GETDISCNAME DRIVE : retourne le nom du fichier disque image inséré dans le
      lecteur DRIVE (0/1 ou A/B, par défaut il s'agit du lecteur A).

    * INSERTCARTRIDGE FILE/A FORCE/S : insère un fichier CPR FILE dans le port
      cartouche (CPC+ seulement). FORCE passe l'émulation en CPC+ si ça
      n'était pas le cas.

    * EJECTCARTRIDGE : éjecte la cartouche actuellement insérée (CPC+ seulement).

    * GETCARTRIDGENAME : retourne le nom du fichier CPR inséré dans le port
      cartouche (CPC+ seulement).

    * LOADSNA FILE/A : charge le fichier SNA FILE.

    * SAVESNA FILE/A : sauve un SNA de l'état actuel du CPC dans le fichier
      FILE.

    * FLASHROM FILE/A,ROM/A/N : charge le fichier FILE en tant que ROM haute numéro
      ROM. Attention, comme ça serait le cas sur un véritable CPC, changer la
      configuration des ROMs alors que le CPC est en train de tourner provoque
      généralement un plantage du système d'exploitation, et un redémarrage du
      CPC sera nécessaire.

    * REMOVEROM ROM/A/N : retire la ROM haute numéro ROM. Attention, comme ça serait
      le cas sur un véritable CPC, changer la configuration des ROMs alors que
      le CPC est en train de tourner provoque généralement un plantage du
      système d'exploitation, et un redémarrage du CPC sera nécessaire.

    * RAWKEYPRESS KEY=CODE/A/N : simule l'appui de la touche CODE (étant le
      numéro de touche physique sur le clavier du CPC).

    * RAWKEYRELEASE KEY=CODE/A/N : simule le relâchement de la touche CODE
    (numéro de touche physique sur le clavier du CPC).

    * RAWKEYSTROKE KEY=CODE/A/N,DELAY/N : simule l'appui puis le relâchement de
      la touche CODE (numéro de touche physique sur le clavier du CPC) en
      attendant DELAY micro-secondes entre temps. Si le paramètre DELAY est omis
      alors l'attente est de 19968 micro-secondes, ce qui correspond à la
      fréquence du balayage vidéo (la valeur maximal acceptée est de 1000000
      micro-secondes, soit une seconde).
      Attention : si vous mettez une valeur trop faible, le CPC émulé ne
      détectera pas tous les changements d'état des touches ; en général le
      test clavier des jeux n'est fait qu'une seule fois par balayage vidéo.

    * KEYBOARDSTROKE STR=STRING/A/F : simule l'appui d'une succession de touches
      contenues dans STRING sur le clavier. Contrairement à RAWKEYPRESS,
      RAWKEYRELEASE et RAWKEYSTROKE cette commande est indépendante du type de
      clavier (AZERTY ou QWERTY) puisqu'elle considère directement les codes
      ASCII.
      Attention : cette commande a besoin d'une ROM firmware standard pour
      fonctionner correctement car elle détecte et utilise la configuration
      clavier du CPC émulé pour traduire les touches.

    Commandes pour l'assistance au développement :

    * POKE ADR=ADDRESS/A/N,VAL=VALUE/A/N,LINEAR/S : écrit un octet VALUE à
      l'adresse ADDRESS dans la mémoire du CPC.
      Si LINEAR est précisé, l'adresse sera considérée comme un accès linéaire
      à totalité de la mémoire du CPC (0x0000-0xFFFF = mémoire centrale,
      0x10000-0x1FFFF = premiers 64ko, etc..).

    * PEEK ADR=ADDRESS/A/N,LINEAR/S : lit un octet à l'adresse ADDRESS dans la
      mémoire du CPC.
      Si LINEAR est précisé, l'adresse sera considérée comme un accès linéaire
      à totalité de la mémoire du CPC (0x0000-0xFFFF = mémoire centrale,
      0x10000-0x1FFFF = premiers 64ko, etc..).

    * LOAD FILE/A,ADR=ADDRESS/N,OFT=OFFSET/N,LEN=LENGTH/N,LINEAR/S,RAW/S :
      charge le contenu du fichier FILE à partir de l'OFFSET, sur une taille
      maximale de LENGTH, à l'adresse ADDRESS.
      Si RAW est précisé, alors tout entête binaire sera ignoré même s'il est
      présent et valide. Lorsque vous chargez un fichier sans entête binaire
      ou en mode RAW, alors le paramètre ADDRESS est obligatoire. Lorsque vous
      chargez un fichier avec entête, l'adresse de chargement indiquée dans
      celui-ci sera utilisée lorsque le paramètre ADDRESS n'est pas spécifié.
      Si LINEAR est précisé, l'adresse sera considérée comme un accès linéaire
      à totalité de la mémoire du CPC (0x0000-0xFFFF = mémoire centrale,
      0x10000-0x1FFFF = premiers 64ko, etc..).

    * SAVE FILE/A,ADR=ADDRESS/A/N,LEN=LENGTH/A/N,EXE=EXECUTION/N,LINEAR/S,RAW/S :
      sauve ce qui se trouve à l'adresse ADDRESS sur une longueur LENGTH dans
      le fichier FILE.
      Si EXECUTION est précisé, alors la valeur donnée sera utilisée pour
      sauver l'adresse d'exécution dans l'entête binaire du fichier (à noter que
      l'adresse d'exécution ne peut être supérieure à 0xFFFF).
      Si RAW est précisé, alors le fichier sera sauvé sans entête binaire.
      Si LINEAR est précisé, l'adresse sera considérée comme un accès linéaire
      à totalité de la mémoire du CPC (0x0000-0xFFFF = mémoire centrale,
      0x10000-0x1FFFF = premiers 64ko, etc..). Dans ce cas, et si l'entête
      binaire n'a pas été désactivée à l'aide du paramètre RAW, l'adresse
      et la longueur sauvées dans celui-ci le seront sur 24 bits et non
      seulement sur 16 (ceci est en effet possible dans le format de l'entête
      binaire).

    * OUT PORT/A/N,VAL=VALUE/A/N : écrit un octet VALUE sur le port PORT du CPC.

    * INP PORT/A/N  : lit un octet sur le port PORT du CPC.

    * BREAKPOINTS ACTIVATE/N,TOGGLE/S : retourne l'état d'activation des points
      d'arrêt. De plus, si ACTIVATE est spécifié, alors TOGGLE est ignoré.
      Mettre ACTIVATE à 1 active la gestion des points d'arrêt, 0 la désactive.
      TOGGLE permute la gestion courante.

    * SETBREAKCONDITIONS VBL/S,HBL/S,OPCODE/S,INT=INTERRUPT/S,DISC=DISCACCESS/S,
      BADVBL/S,BADHBL/S : active les points d'arrêt sur les conditions
      spécifiées (et les désactive pour les autres). Sans paramètre, toutes les
      conditions de points d'arrêt seront désactivées.

    * ADDBREAKPOINT TYPE/A,ADR=ADDRESS/A/N,ADRMASK=ADDRESSMASK/N,ACCESS,
      VAL=VALUE/N,VALMASK=VALUEMASK/N,CONDITION,STEP/N,NAME,WATCHER/S :
      positionne un point d'arrêt du type TYPE (EXECUTE, MEMORY ou PORTS) nommé
      NAME pour un accès ACCESS (READ-ONLY, WRITE-ONLY ou READ-WRITE), à
      l'adresse ADDRESS, selon un masque ADDRESSMASK, pour une valeur VALUE avec
      un masque VALUEMASK toutes les STEP itérations sous la conditions
      CONDITION.
      Note 1 : si WATCHER est indiqué alors le point d'arrêt ne stoppera pas
      l'exécution mais mettra simplement à jour le compteur d'occurrence.
      Note 2 : si un point d'arrêt existe déjà avec les mêmes caractéristiques
      alors les valeurs de CONDITION, STEP, NAME et le mode (WATCHER) seront mises
      à jour.
      Note 3 : les paramètres de valeur et de masques sont sans effet pour un
      pour d'arrêt en exécution.
      Note 4 : la valeur par défaut du masque d'adresse est 0xFFFF (c'est-à-dire
      exactement l'adresse indiquée).
      Note 5: la valeur par défaut du masque de valeur est 0x00 (c'est-à-dire
      n'importe qu'elle valeur).

    * REMOVEBREAKPOINT TYPE/A,ADR=ADDRESS/N,ADRMASK=ADDRESSMASK/N,ACCESS,
      VAL=VALUE/N,VALMASK=VALUEMASK/N,ALL/S : retire un point d'arrêt du type
      TYPE (EXECUTE, MEMORY ou PORTS) pour un accès ACCESS (READ-ONLY, WRITE-ONLY
      ou READ-WRITE), à l'adresse ADDRESS, selon un masque ADDRESSMASK, pour une
      valeur VALUE avec un masque VALUEMASK. Si ALL est positionné
      alors tous les points d'arrêt du TYPE indiqué seront supprimés (les autres
      paramètres sont ignorés).

    * AF VAL=VALUE/N : si VALUE est présent, alors reprogramme le registre du Z80
    avec. Sinon, renvoie la valeur courante du registre.
    * BC VAL=VALUE/N : voir AF.
    * DE VAL=VALUE/N : voir AF.
    * HL VAL=VALUE/N : voir AF.
    * SP VAL=VALUE/N : voir AF.
    * PC VAL=VALUE/N : voir AF.
    * AFx VAL=VALUE/N : représente un registre secondaire ; voir AF.
    * BCx VAL=VALUE/N : représente un registre secondaire ; voir AF.
    * DEx VAL=VALUE/N : représente un registre secondaire ; voir AF.
    * HLx VAL=VALUE/N : représente un registre secondaire ; voir AF.
    * IX VAL=VALUE/N : voir AF.
    * IY VAL=VALUE/N : voir AF.
    * I VAL=VALUE/N : représente un registre 8 bits ; voir AF.

    * GETUSERCOUNTER TYPE/A : renvoie la valeur du compteur utilisateur spécifié
      via TYPE.
      Ces compteurs correspondents à ceux disponibles dans la fenêtre Z80 et les
      valeurs possibles sont :
        . MICROSECONDS pour le compteur de microsecondes.
        . LINES pour le compteur de lignes.
        . FRAMES pour le compteur de trames.

    * RESETUSERCOUNTER TYPE/A : remet à zéro le compteur utilisateur spécifié via
      TYPE.
      Les valeurs possibles sont les mêmes que pour GETUSERCOUNTER.

    * GETLASTBREAKTYPE : retourne un statut sur le(s) dernier(s) type de point
      d'arrêt s'étant activé. Cette option est particulièrement pratique dans
      les scripts exécutés lors de l'activation des points d'arrêt puisqu'elle
      permet de savoir dans quelles conditions l'arrêt a eu lieu. Le statut est
      retourné sous la forme d'une chaine formatée comme suit :

      [Exécution][Port I/O][Mémoire][Interruption][HBL][VBL][Mauvaise HBL][Mauvaise VBL][Accès disque][Pas-à-pas][Position vidéo]

      Chaque section entre crochet correspond à un type de point d'arrêt et
      contiendra "-" si ce type de point d'arrêt n'est pas impliqué dans le
      dernier arrêt. Si ce type de point d'arrêt était actif, alors la section
      correspondante contiendra son nom s'il était nommé ou une chaîne par
      défaut contenant le nom du type de point d'arrêt s'il n'était pas nommé
      ("Execution", "I/O port access", "Memory access", "Interrupt", "HBL",
      "VBL", "Bad HBL", "Bad VBL", "Disc access", "Step by step" or
      "On screen break").

    * ONSCREENBREAK X/A/N,Y/A/N : positionne un point d'arrêt aux positions X et Y.
      Ces positions sont des positions de balayage vidéo qui représentent un
      emplacement fixe à l'écran et ne dépendent pas de la résolution graphique
      utilisée.
      Note : ce point d'arrêt correspond au point d'arrêt "Arrêt à la position
      cliquée à la souris" disponible dans le menu "Traçage" et un seul à la
      fois peut-être réglé.