; ; DAYCK.MAC ; ; A SUBROUTINE TO CHECK AND MAKE SURE THAT THE DATE ENTERED ; IS A VALID DATE ; .MCALL QIOW$C .TITLE DAYCK DAYCK:: CMP @2(R5),#12. ; CHECK MONTH BGT ER1 CMP @4(R5),#31. ; CHECK DAY BGT ER2 MOV @6(R5),R1 ; CHECK YEAR YRTEST: CMP R1,#60. BLT ER3 ; YEAR IS LESS THAN 60 CMP R1,#1970. BGT REM19 ; NEED TO REMOVE 1900 FROM NO. CMP R1,#88. BGT ER3 MOV #1,R0 RETURN REM19: SUB #1900.,R1 BR YRTEST ER1: QIOW$C IO.WVB,5,1,,,, ; AN ILLEGAL MONTH BR EREND ER2: QIOW$C IO.WVB,5,1,,,, ; AN ILLEGAL DAY BR EREND ER3: QIOW$C IO.WVB,5,1,,,, ; AN ILLEGAL YEAR EREND: CLR R0 RETURN MES1: .ASCII/THIS IS AN ILLEGAL MONTH, PLEASE REENTER THE DATE / L1=.-MES1 MES2: .ASCII/THIS IS AN ILLEGAL DAY, PLEASE REENTER THE DATE / L2=.-MES2 MES3: .ASCII/THIS IS AN ILLEGAL YEAR, PLEASE REENTER THE DATE / L3=.-MES3 .END