/DATE.SV STORES CURRENT DATE IN SYSTEM AREA /*************************************************************** / / C O P Y R I G H T / / Copyright (C) 1982 / by / Digital Equipment Corporation, Maynard, Mass. / / This software is furnished under a license and may be used and / copied only in accordance with the terms of such license and / with the inclusion of the above copyright notice. This / software or any other copies thereof may not be provided or / otherwise made available to any other person. No title to and / ownership of the software is hereby transferred. / / The information in this software is subject to change without / notice and should not be construed as a commitment by Digital / Equipment Corporation. / / DIGITAL assumes no responsibility for the use or reliability / of its software on equipment that is not supplied by DIGITAL. / /*************************************************************** /ASSEMBLY INSTRUCTIONS / PAL DATE/L / SAVE SYS DATE;200=3501 / NOTES: / / When the DA command is executed the current date will be / typed out by CCL. CCL will then chain to DATE.SV if found / on the system device. DATE.SV will ask if you wish to store / the date displayed. If a Y is typed the current date will be / stored in the system area. This date will automaticly set when / the system is booted again. If any other key is typed control will / return to the monitor. / /STORE VERSION IN LOC 0 *0 0262 /VERSION B2 /CODING AREA OF DATE.PA *0200 START, CLL CLA JMS BATCHK /CHECK IF BATCH IS ACTIVE JMS TYPE /ASK USER TO STORE CURRENT DATE ASK /IF BATCH IS RUNNING THE FOLLOWING GETS CHANGED. PATCH, KSF /CIF BATCH FIELD JMP .-1 /JMS I 5400 (GET A CHARACTER FROM BATCH) KRB /NOP AND (37 /MASK TO 5 BIT FOR UPPER OR LOWER CASE Y TAD (-31 /WAS RESPONSE A YES (Y) SZA CLA JMP NOPE JMS TYPE YES JMS I (7607 /CALL SYSTEM HANDLER 0200 /READ 1 BLOCK (2 PAGES) INTO FIELD 0 6000 /AT BUFFER AREA LOCATED AT 6000-6377 0066 /GET BLOCK 66 IN SYSTEM AREA JMP READER /FATAL ERROR CLL CLA CDF 10 /GO AND GET DATE WORD TAD I (7666 /LOCATED AT 017666 CDF 0 DCA I (6066 /STORE IN PROPER AREA OF BUFFER JMS I (7607 /WRITE BLOCK 66 BACK OUT 4200 /WRITE 1 BLOCK 6000 /LOCATED AT 6000 0066 /AT BLOCK 66 IN SYSTEM AREA JMP WRITER /FATAL ERROR JMS TYPE STORE JMP I (7605 NOPE, JMS TYPE NO JMP I (7605 READER, JMS TYPE READTX /INFORM USER ERROR DURING READ JMS TYPE CHECK JMP I (7605 WRITER, JMS TYPE /INFORM USER ERROR DURING WRITE WRITTX JMS TYPE CHECK HLT /FATAL ERROR SHOULD NOT PROCEED!!!!! TYPE, 0 CLL CLA TAD I TYPE DCA TYPE2 ISZ TYPE TYPE1, TAD I TYPE2 SNA JMP I TYPE PATCH2, TLS /IF BAT IS RUNNING GETS CIF BATFLD TSF /JMS I BATOUT JMP .-1 /NOP ISZ TYPE2 CLL CLA JMP TYPE1 TYPE2, 0 BATCHK, 0 /CHECK IF BATCH IS RUNNING CLL CLA TAD I (7777 /GET BATCH WORD RTL SNL CLA /IS BIT 2 SET (BATCH ACTIVE FLAG) JMP I BATCHK /NO RETURN TAD I (7777 /GET BATCH WORD AGAIN AND (70 /MASK OUT BATCH FIELD TAD (CIF /BUILD A CIF TO BATCH DCA PATCH /STORE IN TTY INPUT ROUTINE TAD (JMS I BATIN /STORE A CALL TO BATCH DCA PATCH+1 TAD (7000 /NOP K.B READ DCA PATCH+2 TAD PATCH /NOW FIX OUTPUT ROUTINE DCA PATCH2 TAD (JMS I BATOUT DCA PATCH2+1 TAD (7000 DCA PATCH2+2 JMP I BATCHK /RETURN BATIN, 5400 BATOUT, 7400 PAGE NO, "N;"O;15;12;0 YES, "Y;"E;"S;15;12;0 ASK, "S;"t;"o;"r;"e;" ;"c;"u;"r;"r;"e;"n;"t;" ;"d;"a;"t;"e;"?;" ;0 STORE, "D;"a;"t;"e;" ;"s;"t;"o;"r;"e;"d;".;15;12;0 READTX, "E;"R;"R;"O;"R;" ;"r;"e;"a;"d;"i;"n;"g;" ;"s;"y;"s;"t;"e;"m; " ;"h;"e;"a;"d;"!;15;12;0 WRITTX, "E;"R;"R;"O;"R;" ;"w;"r;"i;"t;"i;"n;"g;" ;"s;"y;"s;"t;"e;"m; " ;"h;"e;"a;"d;"!;15;12;0 CHECK, "C;"h;"e;"c;"k;" ;"s;"y;"s;"t;"e;"m;" ;"f;"o;"r;" ;"b;"a;"d; " ;"b;"l;"o;"c;"k;"s;".;15;12;12;0