User Tools

Site Tools


extcmd.asm

This is an old revision of the document!


Retourner à la liste des fichiers

* NRDOS.MO5 version 3.5
* EXTCMD.ASM (Appel d'une commande externe)

************************************************************************************************************
* EXTCMD
* Cherche un fichier .MO5 ou .NRD sur le disque courant pour l'exécuter.
************************************************************************************************************
EXTCMD SET    *
       LDX    #FNMBF1         ; Le nom à chercher se trouve là
       LDA    #9              ; Longueur de la chaîne
       LDB    #QMARK          ; On vérifie s'il y a des ? dans le nom de fichier

ECLOOP DECA
       BEQ    ECFNOK

       CMPB   ,X+
       BNE    ECLOOP

       LDB    #EAMBI          ; No. d'erreur "Nom de fichier ambigu"
       JMP    ERRMSG          ; Affiche le message et retourne

ECFNOK LDX    CNSGN+11        ; On copie le nom dans la consigne
       LDY    #FNMBF1
       LDA    #9
       JSR    MEMCPY
       LDY    #MO5            ; On rajoute le suffixe ".MO5"
       BSR    SEEKF           ; Et on cherche le fichier
       BNE    ECNRD

       LDB    #CHBIN          ; Fichier trouvé, on lance l'exécution par une consigne CHBIN
       STB    CNSGN+3
       CLR    WORD_6425
       LDX    #CNSGN
       JSR    RESEAU

ECWAIT JMP    ECWAIT          ; On attends la prise en charge par le central

ECNRD  LDY    #NRD            ; Pas un .MO5, on essaye avec un .NRD
       BSR    SEEKF
       BNE    ECFNE

       JSR    OPNNRD          ; Il existe, on l'ouvre
       RTS

ECFNE  LDX    #FILENE         ; Sinon, "Fichier inexistant"
       JSR    DSPSTR          ; On affiche le message
       RTS

Retourner à la liste des fichiers

extcmd.asm.1765304148.txt.gz · Last modified: by fool-duplex

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki