User Tools

Site Tools


code_source_de_menu.mo5

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
code_source_de_menu.mo5 [2025/12/07 12:03] – fool-duplexcode_source_de_menu.mo5 [2025/12/09 18:44] (current) – removed fool-duplex
Line 1: Line 1:
-==== Code source de NRDOS.MO5 v3.5 ==== 
  
-<code>* NRDOS.MO5 version 3.5 
- 
-IMPLNT EQU    $5000 
- 
-RESET  EQU    $FFFE 
-PG0APP EQU    $2100 
-STACK  EQU    $2200 
-ENDRAM EQU    $A000 
-IRQRE  EQU    $A041 
-IRQPT  EQU    $2064 
-SYSPRA EQU    $A7C0 
-NUPOST EQU    $A7D8 
-EXT64  EQU    $A7CB 
-NUPO   EQU    $2052 
-RELACH EQU    $A02B 
-RESEAU EQU    $A025 
-M5VCT  EQU    $EFFE 
-ADCNTC EQU    $1FFE 
-ADCRDU EQU    $1FF4 
-ADTRCR EQU    $1FFA 
- 
-TEMPO  EQU    $2039 
-DUREE  EQU    $203B 
-TIMBRE EQU    $203D 
-OCTAVE EQU    $203E 
- 
-KTSTH  EQU    $0A 
-JPUTCH EQU    $82 
-JNOTEH EQU    $9E 
- 
-CLEAR  EQU    $38 
-SYSINF EQU    $31 
- 
-CR     EQU    $0D 
-LF     EQU    $0A 
-SPACE  EQU    $20 
-HYPHN  EQU    '- 
-SUP    EQU    '> 
-AROB   EQU    '@ 
- 
- 
-       ORG    IMPLNT 
-        
-INIT   SET    *        
-       ORCC   #$FF            ; Masquage interruptions 
-       LDA    #$0C            ; Commutation page 0 de l'extension RAM 64 Ko 
-       STA    EXT64 
-       LDX    #START          ; Teste de présence de l'extension RAM 64 Ko 
-       STX    M5VCT 
-       CMPX   M5VCT 
-       BNE    START           ; Pas d'extension, on continue 
-       JMP    [RESET]         ; Si l'extension 64 Ko est présente, reset propre        
- 
-        
-START  SET    * 
-       CLR    EXT64K          ; Commutation BASIC résident 
-       LDX    #INITST 
-       JSR    DSPSTR          ; Efface l'écran, bleu sur bleu ciel 
-       ORCC   #$FF            ; Pas d'interruptions 
- 
-       LDX    #PG0APP         ; On efface la RAM de $2100 à $4FFF 
-CLMLP1 CLR    ,X+ 
-       CMPX   #IMPLNT 
-       BCS    CLMLP1 
- 
-       LDX    #ENDPRG         ; ... et de $7357 à $9FFF 
-CLMLP2 CLR    ,X+ 
-       CMPX   #ENDRAM 
-       BCS    CLMLP2 
- 
-       LDS    #STACK          ; Pile en $2200 
-       LDX    #IRQRE          ; On installe l'interruption réseau 
-       STX    IRQPT 
-       LDA    NUPOST          ; On charge le numéro de poste 
-       ANDA   #$1F 
-       STA    NUPO 
-       JSR    RELACH          ; et on initialise le réseau.        
-       JSR    MEMFRM          ; On passe en mémoire vidéo forme (qui contient les variables réseau) 
-       LDX    #CNTRT 
-       STX    ADCNTC          ; On installe la routine de gestion du CNT-C réseau 
-       LDX    #CRBUFF 
-       STX    ADCRDU          ; On spécifie la zone de compte-rendu 
-       LDX    #TRCRRT 
-       STX    ADTRCR          ; On installe la routine de gestion de CTR inconnu 
-       LEAX   WLCMST,PCR 
-       LBSR   DSPSTR          ; On affiche le message de bienvenue "NRDOS - Version 3.5 - 05 11 86"        
-       LDA    AUTOST          ; Flag d'autostart (appel de DEPART.NRD) 
-       BEQ    PROMPT          ; Si AUTOST=0, on ne cherche pas DEPART.NRD 
-       CLR    AUTOST 
-       LDA    #0              ; Préparation consigne CLEAR 
-       STA    CNSGN+1 
-       LDA    #SYSFIC 
-       STA    CNSGN+2 
-       LDA    #CLEAR 
-       STA    CNSGN+3 
-       LDX    #CNSGN 
-       JSR    RESEAU          ; On efface le descripteur de poste 
-       LDA    #SYSINF         ; Préparation consigne SYSINF 
-       STA    CNSGN+3 
-       JSR    RESEAU          ; On demande les caractéristiques du système 
-       LDD    CRBUFF+5 
-       STD    DSKMAP          ; On conserve la liste des disques valides (0=invalide)        
-       LDY    #NRD            ; "NRD" 
-       JSR    SEEKF           ; On vérifie si le fichier existe 
-       BNE    PROMPT 
-       JSR    OPNDEP          ; Oui, alors on ouvre "DEPART.NRD" et on passe en mode exécution automatique 
- 
-PROMPT SET    * 
-       LBSR   DCRLF          ; Retour à la ligne 
-       LDB    CDISK,PCR      ; Le disque courant entre 1 et 10 
-       ADDB   #AROB 
-       LBSR   PCHAR          ; Affiche le disque courant (ex: 'A') 
-       LDB    #SUP 
-       LBSR   PCHAR          ; Affiche '>' 
-       LBSR   INPUT          ; Recupère une ligne de commande au clavier ou depuis un script 
-       LDA    #0 
-       CMPA   TOKCNT 
-       BEQ    PROMPT         ; La ligne était vide 
-        
-       LDX    #CMDBUF       
-       LDA    #0             ; Calcule la longueur de la ligne de commande 
-PRLP01 LDB    ,X+ 
-       CMPB   #CR 
-       BEQ    PARSE 
-       INCA 
-       BRA    PRLP01 
- 
-PARSE  SET    * 
- 
-       (TO BE CONTINUED ...) 
-        
-ENDPRG EQU    *               ; MENU.MO5 se termine en $7357 
-</code> 
code_source_de_menu.mo5.1765105422.txt.gz · Last modified: by fool-duplex

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki