10 REM TZONE.BA Time Zone adjustment program 20 REM By Peter Vollan 30 REM Version 1.0 March 2010 35 CLS 40 INPUT"Enter the adjustment for your local time zone:";TZ 50 HO=VAL(LEFT$(TIME$,2)) 60 MI=VAL(MID$(TIME$,4,2)) 70 IF CINT(TZ)<>TZ THENZ=TZ:TZ=CINT(TZ)=Z-TZ: M=60*O: MI=MI+M: IF MI>60 THENMI=MI-60:HO=HO+1 ELSEIF MI<0 THENMI=MI+60:HO=HO-1 80 REM Adjust hour 90 HO=HO+TZ 100 DA=VAL(MID$(DATE$,4,2)) 110 IF HO<0 THENHO=HO+24:DA=DA-1 120 IF HO>24 THENHO=HO-24:DA=DA+1 130 X=HO:GOSUB460:HO$=X$ 140 IF HO<12 THENT$="AM"ELSET$="PM":HO=HO-12 150 REM Adjust date 160 MO=VAL(LEFT$(DATE$,2)) 170 YE=VAL(RIGHT$(DATE$,2)) 180 IF DA=0 THENMO=MO-1:IF MO=0 THENMO=12:YE=YE-1:DA=31 ELSEIF MO=4 OR MO=6 OR MO=9 OR MO=11 THENDA=30 ELSEIF MO=2 AND YE MOD 4=0 THENDA=29 ELSEIF MO=2 THENDA=28 ELSEDA=31 190 IF DA>28 THENIF MO=2 AND YE MOD 4 =0 THENGOSUB500 200 IF DA>29 THENIF MO=2 THENGOSUB500 210 IF DA>30 THENIF MO=4 OR MO=6 OR MO=9 OR MO=11 THENGOSUB500 220 IF DA>31 THENGOSUB500 230 X=DA:GOSUB460:DA$=X$ 240 X=MO:GOSUB460:MO$=X$ 250 X=YE:GOSUB460:YE$=X$ 260 X=MI:GOSUB460:MI$=X$ 270 REM Display the adjusted time 280 TIME$=HO$+":"+MI$+RIGHT$(TIME$,3) 290 DATE$=MO$+"/"+DA$+"/"+YE$ 300 PRINT"The adjusted local time is" 320 IF HO=0 THENHO=12 330 X=HO:GOSUB460:H$=X$ 340 Z$=H$+":"+MI$+" "+T$ 350 DT$=LEFT$(DATE$,6)+"20"+YE$ 360 PRINT:PRINTZ$+" "+DT$ 370 GOSUB410 380 LINEINPUT "Enter day of the week?";D$ 390 IF D$<>"" THEND$=LEFT$(D$,3):DAY$=D$ 400 MENU 410 REM Pause Subroutine 420 X$=INKEY$ 430 IF X$="" THENGOTO410 440 RETURN 450 REM Subroutine to change a value into a string 460 X$=STR$(X) 470 IF LEN(X$)=3 THENX$=RIGHT$(X$,2)ELSEX$="0"+RIGHT$(X$,1) 480 RETURN 490 REM Subroutine for changing the time forward over the year mark 500 MO=MO+1:DA=1 510 IF MO=13 THENMO=1:YE=YE+1 520 RETURN