þþ5 èX*SAVE#D:BUSYBUD.M65òX*ASM,#-,#D:BUSYBUD.COMüFX* Busy Buddy XE by Mat*RatX* Ctrl-Shft-> BUSY ONX* Ctrl-Shft-< BUSY OFF$X*. ‡FOURSECÓ;;ACTUALLY 3.5 SEC8!X; 3.5 SECONDS * 256 (MAXTIME)BX; EQUALS ABOUT 15 MINUTESL …JIFFYV †BUSYON÷`‡BUSYOFFöj†VVBLKD$t ‚CHü~…SPACE!;;INTERNAL CODEˆ ‚BS4’†SAVMSCX;; screen ptrœX* Operating system equates:¦ ƒCIOVä° …ICCOMBº …ICBALDÄ …ICBAHEÎ …ICBLLHØ …ICBLHIâ …ICAX1Jì …ICAX2Kö †PUTBIN X* @„INITQ†VVBLKD;; installP…VEXIT;; Busy Buddy(Q†VVBLKD;; Express2P…VEXIT;; VBI routine< Q>4…STARTF %>5…STARTP $…JIFFYZ„HOLD(…JIFFY;; Sync up sodF„HOLD;; a VBI won'tnP†VVBLKD;; crash thex'†VVBLKD;; installation‚Q>…SPACE;; procedureŒP†BACKUP;; Iniz variables–Q>‡FOURSEC;; dela timer P…TIMER;; of 3.5 secondsªQ>;; Busy control´P‡BUSYCTL;; OFF for now¾>ÈQ>†PUTBIN;; print titleÒP…ICCOM;; screenÜQƒLENæ P…ICBLLð &…ICBLHú Q>4…TITLE P…ICBAL Q>5…TITLE P…ICBAH" ƒCIO,:;; Back to DOS6 …TITLE A“} Âõóù Âõääù ÅøðòåA; Aƒóó A=›@ A•BY Mat*Rat - from ANAE A„ALOGA=›=›J A•Press CTRL-SHIFT-INSEAO AŒRT to enableA=›T A• CTRL-SHIFT-CLEAAY AR to disableA=›^ A•When active, Busy BudAc A‹ will auto-A=›h A•timeout after 15 minuAm AƒtesA=›r A•to prevent MA-BELL  ÓAw A†ÈÏÃË !A=›=›|ƒLEN …TITLE†X*X* Busy Buddy VBI codešX* installed.¤X* Actual program appears® X* below.¸X*ÂÌ…VEXIT ;; VBI exit vectorÖ…TIMER ;; 3.5 Sec timerà†BACKUP ;; Space or BSê‡BUSYCTL ;; control flgô†MAXTIM ;; 15 min timerþ…START6;; VBI starts here5;; save all statsQ‡BUSYCTL;; and regsH…TIMIT;;ON& †TESTONQ‚CH;;Busy on request?0 R>†BUSYON:H„EXIT;; No, no changeD#‡BUSYCTL;;OFF, TURN IT ONNQ>XP†MAXTIM;; 256*3.5 = 15minb ƒBPR;; Show ON char Âl„EXIT7;; Restore statsv8;; and reg & exit€ !@…VEXIT:Š…TIMITQ‚CH;; Busy on”R>‡BUSYOFF;; turn it off?žH„TIM1;; No, time it out¨ †CANCELQ>;; yes, toggle ctl² P‡BUSYCTL¼ ƒBPR;; show Clear statÆ !„EXITÐ „TIM1"…TIMER;; 15 minute timeÚH„EXIT;; limit?ä "†MAXTIMîF†CANCEL;; yes, canceløQ>‡FOURSEC;; NO, resetP…TIMER;; the timer Q†BACKUP;; Send the SPACEP‚CH;; or BS character R>‚BS;; and set BACKUP*F…PUTSP;; variable for4Q>‚BS;; next time.> P†BACKUPH !„EXITR…PUTSPQ>…SPACE\ P†BACKUPf !„EXITpƒBPRC;; Show a à orz5;;  status char„%>(;; near top leftŽ Q>C €˜;;; of display¢S‡BUSYCTL;; by poking¬ P@†SAVMSC7¶7;; to screen RAMÀ?Ê:Ôà;; iniz addrÞ „INIT;; for LOADè99999999999999999999999999999999999999999999999999999999999999999999999