MDPAGE.MAC;2/AU/-BF=MDPAGE.MAC;1 \ -2,2 .IDENT /V01.03/ -9,9 ; VERSION: 1.03 -11 ; ; MODIFICATIONS: ; ; AG039 SKIP FIRST PCB IF RESIDENT LOADER ; ; LMB004 DISPLAY UP TIME FOR ALL SYSTEMS ; % -196,,/;LMB004/ .IFF ;DF R$$MPL MOV $ABTIM,-(SP) ;; PUT CURRENT TIME ON STACK CMP (SP),$MDBUF+ABTIM ;; DID IT OVERFLOW? BHIS 97$ ;; NO, WE'RE STILL GOING UP INC $MDBUF+ABTIM-2 ;; ADD ONE TO HIGH ORDER TIMER 97$: MOV (SP)+,$MDBUF+ABTIM ;; AND STORE NEW LOW ORDER -272,273,/;AG039/ 140$: MOV $PARHD,R5 ;; STORE ADDRESS OF FIRST 141$: MOV P.REL(R5),R4 ;; PARTITION BNE 142$ ;; NOT LOADER MOV (R5),R5 ;; SKIP LOADER BR 141$ ;; USE NEXT PCB (ASSUME ONE THERE) 142$: -290,,/;AG039/ TST P.REL(R4) ;; IS IT THE LOADER? BEQ 145$ ;; YES, SKIP IT -504,521,/;LMB004/ .IF DF R$$EIS RL = R1 ; LOW ORDER DIVIDEND RH = R0 ; HIGH ORDER DIVIDEND RD = R2 ; DIVISOR .MACRO DIVIDE DIV RD,RH .ENDM .IFF ;DF R$$EIS RL = R2 ; LOW ORDER DIVIDEND RH = R1 ; HIGH ORDER DIVIDEND RD = R0 ; DIVISOR .MACRO DIVIDE CALL $DDIV .ENDM .ENDC ;DF R$$EIS TST $MDALV+2 BEQ 20$ MOV $MDBUF+ABTIM,RL ; CURRENT TIME SUB $MDBTM,RL ; LOW ORDER DIFFERENCE MOV $MDBUF+ABTIM-2,RH SBC RH ; BORROW FROM LOW ORDER SUB SUB $MDBTM-2,RH MOV #K$$TPS*60.,RD DIVIDE ; IN MINUTES MOV RH,RL CLR RH MOV #60.,RD DIVIDE ; NOW IN HOURS MOV RL,MIN ; REMAINDER IS MINUTES MOV RH,RL CLR RH MOV #24.,RD DIVIDE ; NOW IN DAYS MOV RL,HOUR ; REMAINDER IS HOURS MOV RH,DAY -535,535,/;LMB004/ /