0 BEGIN PGM 90401_IT MM 1 ;Programma NC per estrarre il nome del file dal percorso 2 ;completo. 3 ;Il controllo numerico salva il percorso nel programma 4 ;chiamante in QS1 e lo trasferisce in questo programma. 5 ;Da questa stringa il programma separa il nome del file. A tale 6 ;scopo viene ricercato il carattere "\" nella stringa e la parte 7 ;precedente nella stringa viene eliminata. Questa scritta viene 8 ;ripetuta fino a quando non si trova pių alcun carattere "\". 9 ;In seguito il controllo numerico elimina anche l'estensione 10 ;del file ".h", lasciando cosė invariato soltanto il nome del 11 ;file. Il controllo numerico lo trasferisce quindi in QS1 del 12 ;programma chiamante. 13 ; 14 ;Selezione del nome del file dal percorso 15 ;Carattere da cercare QS2 = "\" 16 ; 17 LBL 1 ;Inizio loop 18 ; 19 ;Ricerca del carattere "\" nella stringa QS1 Q50 = INSTR( SRC_QS1 SEA_QS2 BEG0 ) 20 ;Il risultato in Q50 č la posizione in cui č stato trovato il 21 ;primo carattere "\" 22 ; 23 ;Incremento di 1 del risultato di Q50 Q52 = Q50 + 1 24 ; 25 ;Lettura della lunghezza totale della stringa, salvataggio in 26 ;Q53 Q53 = STRLEN( SRC_QS1 ) 27 ; 28 ;Lunghezza totale stringa -1 Q55 = Q53 - 1 29 ;Se il comando INSTR non trova il carattere "\", restituisce la 30 ;lunghezza, a iniziare dalla posizione 1. 31 ;Se il carattere "\" non č pių presente in QS1, il controllo 32 ;numerico salta alla LBL "END". 33 FN 9: IF +Q50 EQU +Q53 GOTO LBL "END" 34 ; 35 ;Lunghezza stringa - Tutti i caratteri fino a "\" Q54 = Q53 - Q52 QS1 = SUBSTR( SRC_QS1 BEGQ52 LENQ54 ) 36 ; 37 ;Salto a LBL 1 38 FN 9: IF +0 EQU +0 GOTO LBL 1 39 ; 40 ;Eliminazione dell'estensione del file 41 ;Nome del file estratto con estensione 42 LBL "END" 43 ; 44 ;Eliminazione dell'estensione del file, ad es. .H 45 ;Q56 = lunghezza totale stringa 46 ;(Nome file + Estensione) -2 Q56 = Q53 - 2 47 ;Lettura del nome del file QS1 = SUBSTR( SRC_QS1 BEG0 LENQ56 ) 48 ; 49 ;Il nome del file viene trasferito in QS1 nel programma 50 ;chiamante. 51 END PGM 90401_IT MM