Type ASSEMBLE
Source Lines : 379
Fixes Applied : 3
Most Recent Version : Thursday, December 7, 1978
Last Fix ID : [HRC019DK]
Module
DMKMID
Function
TO CHANGE THE DATE IN SYSTEM LOW STORAGE AT MIDNITE AND RESET THE CLOCK COMPARATOR FOR THE NEXT MIDNITE EVENT. ALSO SEND MESSAGES TO ALL USERS ABOUT THE DATE CHANGE.
Attributes
RE-ENTERABLE, PAGEABLE, CALLED VIA SVC
Operation
1. ADJUST THE TIMER EVENT IN THE TRQBLOK FOR NEXT MIDNITE AND CALL DMKSCHST TO SET THE EVENT 2. VALIDATE THE PRESENT DATE ... IT MUST BE IN THE FORM -- MM/DD/YY, WITH NO DIGIT LESS THAN 0 OR GREATER THAN 9. ISSUE ERROR MSG DMKMID310E IF ERROR 3. CONVERT MM DD YY TO BINARY FOR ARITHMETIC 4. ADJUST THE DAY BY ADDING ONE. ADJUST THE MONTH BY ONE IF THE DAY IS OVER THE MONTH LIMIT ( CHECK AGAINST THE MTBL). ADJUST THE YEAR BY ONE IF THE MONTH GOES TO 13. SET THE DAY TO ONE FOR A NEW MONTH. SET THE MONTH TO ONE FOR A NEW YEAR. 5. CONVERT THE MM DD YY TO DECIMAL AND STORE BACK IN THE DATE FIELD 6. SET THE DAY OF THE WEEK FIELD IN DMKSYSDW 7. SEND A MESSAGE TO ALL USERS ABOUT THE DATE CHANGE 7A.RESET DMKSYSMU (MAXIMUM NUMBER OF USERS THAT HAVE LOGGED ON THE SYSTEM) SO THE RESPONSE TO "QUERY CPSYS" WILL BE MORE MEANINGFUL. (DMKSYSMU IS SET TO THE CURRENT NUMBER OF USER'S LOGGED ON THE SYSTEM, DMKSYSNM). 8. RETURN TO CALLER ( DMKSCH )
Calls to Other Routines
DMKERMSG - TO WRITE ERROR MESSAGE DMKSCHST - TO SCHEDULE NEXT MIDNITE EVENT DMKCVTDT - TO GET NEW DATE AND TIME DMKLOKSW - SWITCH TO ANOTHER VMBLOK IF SYSTEM IS AP-MODE