User Tools

Site Tools


cmdp4.asm

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
cmdp4.asm [2025/12/29 16:58] – fool-duplexcmdp4.asm [2026/01/03 18:16] (current) – fool-duplex
Line 10: Line 10:
 CDBFSZ EQU   64               ; Taille du buffer pour récupérer le répertoire courant CDBFSZ EQU   64               ; Taille du buffer pour récupérer le répertoire courant
  
-CD     SET    *           +CD     SET    *
        CLR    CSGDST          ; Central        CLR    CSGDST          ; Central
        CLR    CSGNPG          ; Page 0        CLR    CSGNPG          ; Page 0
-       LDB    #SYSFIC      +       LDB    #SYSFIC 
-       STB    CSGNTR       +       STB    CSGNTR 
-       LDB    CDISK        +       LDB    CDISK 
-       STB    CSGNDK       +       STB    CSGNDK 
-       LDX    CLPTR        +       LDX    CLPTR 
-       LDA    CLTOGO       +       LDA    CLTOGO 
-       JSR    SKPSPC       +       JSR    SKPSPC 
-       BEQ    CDGO01       +       BEQ    CDGO01 
-                          +
        CMPA   #2              ; Longueur 2 ?        CMPA   #2              ; Longueur 2 ?
-       BNE    CDPATH       +       BNE    CDPATH 
-                           + 
-       LDB    1,X          +       LDB    1,X 
-       CMPB   #COLON       +       CMPB   #COLON 
-       BNE    CDPATH       +       BNE    CDPATH 
-                           + 
-       LDB    ,X          +       LDB    ,X
        SUBB   #AROB           ; Calcule le numéro de disque        SUBB   #AROB           ; Calcule le numéro de disque
        STB    CSGNDK          ; Change le disque courant        STB    CSGNDK          ; Change le disque courant
-                           + 
-CDGO01 LDX    #CDTBUF      +CDGO01 LDX    #CDTBUF 
-       STX    CSGNAD      +       STX    CSGNAD
        LDX    #CDBFSZ        LDX    #CDBFSZ
-       STX    CSGNSZ       +       STX    CSGNSZ 
-       LDA    #GETDIR      +       LDA    #GETDIR 
-       STA    CSGNTA      +       STA    CSGNTA
        JSR    XCNSGN          ; Récupère le répertoire courant sur le nouveau disque        JSR    XCNSGN          ; Récupère le répertoire courant sur le nouveau disque
-       BNE    CDRTS        +       BNE    CDRTS 
-                          +
        LDB    CSGNDK          ; Affiche le nouveau chemin        LDB    CSGNDK          ; Affiche le nouveau chemin
-       ADDB   #AROB        +       ADDB   #AROB 
-       JSR    PCHAR        +       JSR    PCHAR 
-       LDB    #COLON       +       LDB    #COLON 
-       JSR    PCHAR        +       JSR    PCHAR 
-       LDX    #CDTBUF      +       LDX    #CDTBUF 
-       JSR    DSPSTR       +       JSR    DSPSTR 
-       BRA    CDRTS        +       BRA    CDRTS 
-                           + 
-CDPATH CLR    A,X          +CDPATH CLR    A,X 
-       CMPA   #2           +       CMPA   #2 
-       BCS    CDGO02       +       BCS    CDGO02 
-       LDB    1,X          +       LDB    1,X 
-       CMPB   #COLON       +       CMPB   #COLON 
-       BNE    CDGO02       +       BNE    CDGO02 
-       LDB    ,X           +       LDB    ,X 
-       SUBB   #AROB          ; Calcule le numéro de disque +       SUBB   #AROB           ; Calcule le numéro de disque 
-       STB    CSGNDK       +       STB    CSGNDK 
-       DECA                +       DECA 
-       DECA                +       DECA 
-       LEAX   2,X          +       LEAX   2,X 
-                           + 
-CDGO02 EXG    A,B          +CDGO02 EXG    A,B 
-       INCB                +       INCB 
-       CLRA                +       CLRA 
-       STD    CSGNSZ       +       STD    CSGNSZ 
-       STX    CSGNAD       +       STX    CSGNAD 
-       LDA    #SETDIR      +       LDA    #SETDIR 
-       STA    CSGNTA       +       STA    CSGNTA 
-       JSR    XCNSGN       +       JSR    XCNSGN 
-                           + 
-CDRTS  RTS                 +CDRTS  RTS 
-                  + 
-CDTBUF RMB    CDBFSZ+CDTBUF RMB    CDBFSZ,0
  
 ************************************************************************************************************ ************************************************************************************************************
Line 82: Line 82:
 * Elle permet un dump hexadécimal des terminateurs de ligne et un déplacement au clavier. * Elle permet un dump hexadécimal des terminateurs de ligne et un déplacement au clavier.
 ************************************************************************************************************ ************************************************************************************************************
-UNKRT3 SET    *               +UNKRT3 SET    * 
-       JSR    GETKEY         +       JSR    GETKEY 
-       CMPB   #CNTA          +       CMPB   #CNTA 
-       BEQ    UK3LB1         +       BEQ    UK3LB1 
-                             + 
-       CMPB   #INS           +       CMPB   #INS 
-       BNE    UK3LB2         +       BNE    UK3LB2 
-                             + 
-       LDB    COLN           +       LDB    COLN 
-       PSHS   B              +       PSHS   B 
-       LDB    RANG           +       LDB    RANG 
-       PSHS   B              +       PSHS   B 
-       LDB    #US                      ; Positionnement du curseur +       LDB    #US             ; Positionnement du curseur 
-       JSR    PCHAR          +       JSR    PCHAR 
-       PULS   B              +       PULS   B 
-       ORAB   #$40           +       ORB    #$40 
-       JSR    PCHAR          +       JSR    PCHAR 
-       LDB    #$68           +       LDB    #$68 
-       JSR    PCHAR          +       JSR    PCHAR 
-                             + 
-UK3LP1 LDA    #$FF           +UK3LP1 LDA    #$FF 
-       STA    COPCHR         +       STA    COPCHR 
-       LDB    #RIGHT         +       LDB    #RIGHT 
-       JSR    PCHAR          +       JSR    PCHAR 
-       LDB    #LEFT          +       LDB    #LEFT 
-       JSR    PCHAR          +       JSR    PCHAR 
-       LDB    #LEFT          +       LDB    #LEFT 
-       JSR    PCHAR          +       JSR    PCHAR 
-       LDB    COLN           +       LDB    COLN 
-       CMPB   ,S             +       CMPB   ,S 
-       BCC    UK3LP1         +       BCC    UK3LP1 
-                             + 
-       PULS   B              +       PULS   B 
-       LDB    #RIGHT         +       LDB    #RIGHT 
-       JSR    PCHAR          +       JSR    PCHAR 
-       LDB    #SPACE         +       LDB    #SPACE 
-       JSR    PCHAR          +       JSR    PCHAR 
-       BRA    UNKRT3         +       BRA    UNKRT3 
-                             + 
-UK3LB2 CMPB   #EFF           +UK3LB2 CMPB   #EFF 
-       BNE    UK3LB3         +       BNE    UK3LB3 
-                             + 
-       LDA    #$FF           +       LDA    #$FF 
-       STA    COPCHR         +       STA    COPCHR 
-       LDB    #LEFT          +       LDB    #LEFT 
-       JSR    PCHAR          +       JSR    PCHAR 
-       CLR    COPCHR         +       CLR    COPCHR 
-       BRA    UNKRT3         +       BRA    UNKRT3 
-                             + 
-UK3LB3 JSR    PCHAR          +UK3LB3 JSR    PCHAR 
-       BRA    UNKRT3         +       BRA    UNKRT3 
-                             + 
-UK3LB1 LDX    #TERMIN       +UK3LB1 LDX    #TERMIN
        LDA    #25             ; 25 octets        LDA    #25             ; 25 octets
        JMP    HEXLIN          ; Affiche les terminateurs de ligne        JMP    HEXLIN          ; Affiche les terminateurs de ligne
-                              
-                              
  
 +************************************************************************************************************
 +* GETATT
 +* Récupère les attributs d'un fichier. Inutilisé.
 +************************************************************************************************************
 +GETATT SET    *
 +       JSR    BCFPT2
 +       JSR    PRSINT
 +       LBLS   PRMERR
 +
 +       TFR    Y,D
 +       TSTA
 +       LBNE   PRMERR
 +
 +       STB    CSGNDK
 +       LDB    #LIRATT
 +       STB    CSGNTA
 +       JSR    XCNSGN
 +       BNE    GARTS
 +
 +       LDX    F2BFPT
 +       LDA    #128
 +       JSR    HEXLIN
 +
 +GARTS  RTS
 +
 +************************************************************************************************************
 +* SETATT
 +* Enregistre les attributs d'un fichier. Inutilisé.
 +************************************************************************************************************
 +SETATT SET    *
 +       JSR    BCFPT2
 +       JSR    PRSINT
 +       LBLS   PRMERR
 +       TFR    Y,D
 +       TSTA
 +       LBNE   PRMERR
 +
 +       STB    CSGNDK
 +       LDB    #ECRATT
 +       STB    CSGNTA
 +       LDX    F2BFPT
 +       LDY    #CSGNFN
 +       LDA    #48
 +
 +SALOOP LDB    ,X+
 +       STB    ,Y+
 +       DECA
 +       BNE    SALOOP
 +
 +       JSR    XCNSGN
 +       RTS
 +
 +************************************************************************************************************
 +* RDCBUF
 +* Lit le contenu du buffer commun. Inutilisé.
 +************************************************************************************************************
 +RDCBUF SET    *
 +       JSR    BCFPT2
 +       LDB    #RBUFF
 +       STB    CSGNTA
 +       JSR    XCNSGN
 +       RTS
 +
 +************************************************************************************************************
 +* WRCBUF
 +* Ecrit le contenu du buffer commun. Inutilisé.
 +************************************************************************************************************
 +WRCBUF SET    *
 +       JSR    BCFPT2
 +       LDB    #WBUFF
 +       STB    CSGNTA
 +       LDX    F2BFPT
 +       LDY    #CSGNDK
 +       LDA    #30
 +
 +WCBLP  LDB    ,X+
 +       STB    ,Y+
 +       DECA
 +       BNE    WCBLP
 +
 +       JSR    XCNSGN
 +       RTS
 </code> </code>
 [[code_source_de_nrdos.mo5_version_3.5|Retourner à la liste des fichiers]] [[code_source_de_nrdos.mo5_version_3.5|Retourner à la liste des fichiers]]
cmdp4.asm.1767023923.txt.gz · Last modified: by fool-duplex

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki