LEX 'INDATLEX' ID #71 MSG 0 POLL 0 * TITRE : INDATE Jean-Jacques DHENIN SIG#5 * 336 12 05 =CHEDIT EQU #14C99 =ADHEAD EQU #181B7 =CSLC6 EQU #1B432 =CSLC4 EQU #1B438 =CUROFF EQU #B1C3 =CURON EQU #B1E3 =D=AVMS EQU #1A460 =DSP$00 EQU #185DB =BF2DSP EQU #01C0E =CURSFL EQU #151DF =FINLIN EQU #18A3A ENTRY IND CHAR #F KEY 'INDATE$' TOKEN 50 ENDTXT NIBHEX 00 Pas de paramÉtre IND CD1EX ) R1=C ) Sauvegarde des CD0EX ) pointeurs D0 et D1 R2=C ) dans R1 et R2 GOSUB POP Place dans RSTK l'adresse * de l'instruction suivante. NIBHEX #B1C3 CUROFF ) ChaÑne È afficher. NIBASC 'DATE : "' ) NIBHEX #B1E3 CURON ) CURON et CUROFF NIBASC 'JJ' ) Åtablissent NIBHEX #B1C3 CUROFF ) les champs NIBASC '/' ) protÅgÅs. NIBHEX #B1E3 CURON ) NIBASC 'MM' ) NIBHEX #B1C3 CUROFF ) NIBASC '/' ) NIBHEX #B1E3 CURON ) NIBASC 'AA' ) NIBHEX #B1C3 CUROFF ) NIBASC '"' ) NIBHEX FF ) Fin de la chaÑne. POP C=RSTK Adresse dÅbut de chaÑne. D1=C D1=adresse GOSBVL BF2DSP Affichage de chaÑne. GOSBVL =CURSFL Replace le curseur. GOSBVL CHEDIT EntrÅe des donnÅes. GOSBVL =FINLIN Eteint le curseur. C=R2 ) CD0EX ) Restitution de D1 et D0. C=R1 ) D1=C ) ST=1 0 Retour aprÉs DSP$00 GOSBVL =DSP$00 Place sur MATSTK les * caractÉres non protÅgÅs. D1=D1+ 16 Passe l'en-tÁte. D1=D1+ 2 Passe le CR. C=DAT1 12 C[11,0]=JJMMAA D1=D1+ 12 Passe la chaÑne. AD1EX ) Sauvegarde dans R1=A ) R1(A) la fin de la AD1EX ) nouvelle chaÑne. D1=D1- 16 D1=DÅbut de chaÑne. CSLC ) CSLC ) C= .JJMMAA. LCHEX 2F C= .JJMMAA/ GOSBVL =CSLC6 C= MMAA/.JJ A=C A A(A)= .JJ GOSBVL =CSLC4 C= AA/.JJMM P= 9 P= ^ CSL WP ) CSL WP ) CSL WP ) CSL WP ) CSL WP ) CSL WP ) C= AA/MM... C=A A C= AA/MM.JJ P= 4 P= ^ LCHEX 2F C= AA/MM/JJ P= 0 DAT1=C W Pose la chaÑne sur MATSTK. GOSBVL =D=AVMS D(A)= AVMEMS. ST=0 0 Retour direct È BASIC. GOVLNG =ADHEAD Retour È BASIC. END