.TITLE CCLCMD - COMMAND LINE PROCESSING LOGIN FOR TECOIO .IDENT "X0206" ; ANDREW C. GOLDSTEIN 5-APR-77 15:28 ;+ ; ; THIS MODULE CONTAINS THE MACRO THAT PROCESSES THE CCL COMMAND LINE INTO ; THE EQUIVALENT TECO COMMANDS AND EXECUTES IT. THE MACRO IS LOADED INTO ; QY AT INITIALIZATION AND IS EXECUTED AFTER THE USER'S STARTUP FILE HAS ; BEEN EXECUTED. ; ; RATHER THAN CLUTTER UP THE MACRO WITH SPACE AND TIME CONSUMING COMMENTS, ; A BRIEF DESCRIPTION OF ITS OPERATION FOLLOWS: ; ; THE MACRO SAVES THE TWO Q REGISTERS IT USES (Q8 AND Q9) AND GETS THE ; COMMAND LINE INTO THE BUFFER, REMOVING ANY LEADING BLANKS AND TABS. IT THEN ; SETS Q9 ACCORDING TO THE COMMAND NAME (1 = TECO, 2 = MAKE, 3 = MUNG). ONLY ; THE FIRST TWO CHARACTERS OF THE NAME ARE CHECKED TO ALLOW NONSTANDARD ; INSTALLATION. THEN THE COMMAND NAME AND ITS TRAILING BLANKS ARE REMOVED. ; THE "TECO" COMMAND IS PROCESSED BY FIRST SEARCHING FOR A LEADING @. IF ; PRESENT, THE REMAINDER OF THE STRING IS CONVERTED INTO AN "EIFILE$" ; COMMAND. OTHERWISE, IT TRIES SEARCHING FOR AN =. IF FOUND, THE TWO ; FILE STRINGS ARE PUT INTO Q8 AND Q9, AND THE COMMAND "ERFILE1$EWFILE2$Y" ; IS CONSTRUCTED AND LOADED INTO QZ. IF THERE IS NO =, THE COMMAND "EBFILE$Y" ; IS CONSTRUCTED AND LOADED INTO QZ. FOR THE MAKE COMMAND, THE COMMAND ; STRING "EWFILE$" IS LOADED INTO QZ. FOR THE MUNG COMMAND, THE COMMAND STRING ; "EIFILE$" IS LOADED INTO QZ, AND IF THERE IS A COMMA IN THE LINE, THE REMAINDER ; OF THE LINE IS LEFT IN THE BUFFER. ; ;- .PSECT PURE,RO,D CCLCMD:: .ASCII *[8[9 HKGZ J::S*<5>*S**0K Z"N 0U9* .ASCII *::STE**"S 1U9'J* .ASCII *::SMA**"S 2U9'J* .ASCII *::SMU**"S 3U9'J* .ASCII *Q9"E :S*<5>*S**"S FR**K' @^A/* .ASCII *Unrecognized command name "/ HT @^A/"* .ASCII */ ^C'* .ASCII *:S*<5>*S**"U ZJ' 0K Z"N* .ASCII *Q9-1"E ::S@**"S 0KIEI** ZJ@I/**/ HXZHKOA**'* .ASCII * :S=**"S 0,.-1X8 .,ZX9 HKIER** G9* .ASCII * @I/**EW/ G8 @I/**Y/ HXZHKOA**'* .ASCII * JIEB** ZJ@I/**Y/ HXZHKOA**'* .ASCII *Q9-2"E JIEW** ::SLOVE**"S .-Z"E @^A/Not war??* .ASCII */'' ZJ@I/**/ HXZHKOA**'* .ASCII *Q9-3"E JIEI** :S,**"U ZJI,**' -D@I/**/ 0XZ0KOA**'* .ASCII *!A! MZ'' ]9]8 0,0XZ 0,0XY* CCLCML == .-CCLCMD .EVEN .END