* * THIS IS THE SOURCE CODE OF * `DATE?', A SAFE COMMAND TO * FIND THE DATE PRESENTLY SET * IN PTDOS MEMORY AREA GLDAT * * By Jay Parsons * for Somerset Data Systems, Inc. * COPY NPTDEFS ORG CXBUF LOAD IN SAFE AREA XEQ START AND START THERE START LXI H,MSG1 CHAR MOV A,M GET MSG CHAR ANA A STOP IF 0 JZ DATE AND GO ON CALL CONOUT PRINT IT INX H POINT TO NEXT JMP CHAR AND AGAIN DATE LHLD SYSGLO GET SYS ADDR LXI D,GLDAT GET OFFSET DAD D ADD THEM LXI D,3003H SET E TO 3,D TO 30 NEXT MOV A,M GET A BYTE MOV C,A SAVE IT ANI 0F0H MASK LOW BITS JZ SINGL GO IF LEADING 0 RRC GET HI 4 BITS RRC TO LO 4 RRC BY TIRESOME RRC ROTATIONS ADD D CONVERT TO ASCII CALL CONOUT PUT IT OUT SINGL MOV A,C GET IT BACK ANI 0FH MASK HIGH BITS ADD D CONVERT CALL CONOUT AND OUT WITH IT DCR E ONE LESS TO DO JZ DONE INX H BUMP POINTER MVI A,47 LOAD A SLASH CALL CONOUT PRINT IT JMP NEXT AND DO AGAIN DONE CALL SYS ALL DONE DB RETOP MSG1 ASCZ "The date in memory is "