Listing Program
;**********************************************************
; Program Waktu Sholat 5
; Mikrokontroler AT89S52
; RTC DS12C887
; Penampil 7-Segment 20 Digit
;**********************************************************
RATUSAN EQU 100 ; 100 x 10000 ud = 1 detik
CACAH EQU -10000
JAM_P EQU 20H
JAM_S EQU 21H
MENIT_P EQU 22H
MENIT_S EQU 23H
DETIK_P EQU 24H
DETIK_S EQU 25H
Tanggal_p equ 26h
Tanggal_s equ 27h
Bulan_p equ 28h
Bulan_s equ 29h
Tahun_p equ 2ah
Tahun_s equ 2bh
hari_p equ 2ch
Hari_s equ 2dh
Jam EQU 2eH
Menit EQU 2fH
Detik EQU 30H
Hari Equ 31h
Tanggal Equ 32h
Bulan Equ 33h
Tahun Equ 34h
Jam_subuh Equ 35h
Menit_subuh Equ 36h
Jam_p_subuh Equ 37h
Jam_s_subuh Equ 38h
Menit_p_subuh Equ 39h
Menit_s_subuh Equ 3ah
Jam_dzuhur Equ 3bh
Menit_dzuhur Equ 3ch
Jam_p_dzuhur Equ 3dh
Jam_s_dzuhur Equ 3eh
Menit_p_dzuhur Equ 41h
Menit_s_dzuhur Equ 42h
Jam_ashar Equ 43h
Menit_ashar Equ 44h
Jam_p_ashar Equ 45h
Jam_s_ashar Equ 46h
Menit_p_ashar Equ 47h
Menit_s_ashar Equ 48h
Jam_maghrib Equ 49h
Menit_maghrib Equ 4ah
Jam_p_maghrib Equ 4bh
Jam_s_maghrib Equ 4ch
Menit_p_maghrib Equ 4dh
Menit_s_maghrib Equ 4eh
Jam_isya Equ 4fh
Menit_isya Equ 50h
Jam_p_isya Equ 51h
Jam_s_isya Equ 52h
Menit_p_isya Equ 53h
Menit_s_isya Equ 54h
Del1 equ 70h
Del2 equ 71h
Tmp equ 73h
Dech equ 76h
DecL equ 77h
Almcount equ 78h
Tmp1 equ 7ch
Detik_lama equ 7dh
K_next bit p3.1
K_menu bit p3.0
K_up bit p3.3
K_down bit p3.2
RTC_cs bit p3.5
en_multiplexer bit p3.4
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Memori RTC
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Secon equ 0
Minute equ 2
Hour equ 4
Day_week equ 6
Day_month equ 7
Month equ 8
Year equ 9
Reg_a equ 10
Reg_b equ 11
;**********************************************************
;Program UTAMA
;**********************************************************
Org 0000H
mov TMOD,#01H ; gunakan timer 0 mode 16 bit (0000 0001)
call tunda1detik
mov p1,#0ffh
mov p2,#0ffh
mov p3,#0ffh
call Inisialisasi_rtc
jmp dtk
;**********************************************************
;Tampilkan data RTC
;**********************************************************
Dtk: call sholat_1
call tampil_Waktu_sholat
cek: jb k_menu,dtk
call hapus_tampilan
jmp setting_1
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Tampil waktu sholat
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Tampil_waktu_sholat:
tampil_jam_subuh:
mov r5,#0
jam_w_subuh:
jb k_menu,Lagi_1
call hapus_tampilan
jmp setting_1
Lagi_1: mov a,jam_subuh
mov b,#10
div ab
mov jam_p_subuh,a
mov jam_s_subuh,b
subuh_jam_p:
mov a,jam_p_subuh
call ubah_ke_segmen
mov p2,#01111111B
call ulang_2
subuh_jam_s:
mov a,jam_s_subuh
call ubah_ke_segmen
CLR P2.6
mov p2,#10111111B
call ulang_2
menit_w_subuh:
mov a,menit_subuh
mov b,#10
div ab
mov menit_p_subuh,a
mov menit_s_subuh,b
subuh_menit_p:
mov a,menit_p_subuh
call ubah_ke_segmen
mov p2,#11011111B
call ulang_2
subuh_menit_s:
mov a,menit_s_subuh
call ubah_ke_segmen
CLR P2.6
mov p2,#11101111B
call ulang_2
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
tampil_jam_dzuhur:
jam_w_dzuhur:
mov a,jam_dzuhur
mov b,#10
div ab
mov jam_p_dzuhur,a
mov jam_s_dzuhur,b
dzuhur_jam_p:
mov a,jam_p_dzuhur
call ubah_ke_segmen
clr en_multiplexer
Call Ch_12
call ulang
dzuhur_jam_s:
mov a,jam_s_dzuhur
call ubah_ke_segmen
clr en_multiplexer
Call Ch_13
call ulang
menit_w_dzuhur:
mov a,menit_dzuhur
mov b,#10
div ab
mov menit_p_dzuhur,a
mov menit_s_dzuhur,b
dzuhur_menit_p:
mov a,menit_p_dzuhur
call ubah_ke_segmen
clr en_multiplexer
Call Ch_14
call ulang
dzuhur_menit_s:
mov a,menit_s_dzuhur
call ubah_ke_segmen
clr en_multiplexer
Call Ch_15
call ulang
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
tampil_jam_ashar:
jam_w_ashar:
mov a,jam_ashar
mov b,#10
div ab
mov jam_p_ashar,a
mov jam_s_ashar,b
ashar_jam_p:
mov a,jam_p_ashar
call ubah_ke_segmen
clr en_multiplexer
Call Ch_8
call ulang
ashar_jam_s:
mov a,jam_s_ashar
call ubah_ke_segmen
clr en_multiplexer
Call Ch_9
call ulang
menit_w_ashar:
mov a,menit_ashar
mov b,#10
div ab
mov menit_p_ashar,a
mov menit_s_ashar,b
ashar_menit_p:
mov a,menit_p_ashar
call ubah_ke_segmen
clr en_multiplexer
Call Ch_10
call ulang
ashar_menit_s:
mov a,menit_s_ashar
call ubah_ke_segmen
clr en_multiplexer
Call Ch_11
call ulang
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
tampil_jam_maghrib:
jam_w_maghrib:
mov a,jam_maghrib
mov b,#10
div ab
mov jam_p_maghrib,a
mov jam_s_maghrib,b
maghrib_jam_p:
mov a,jam_p_maghrib
call ubah_ke_segmen
clr en_multiplexer
Call Ch_4
call ulang
maghrib_jam_s:
mov a,jam_s_maghrib
call ubah_ke_segmen
clr en_multiplexer
Call Ch_5
call ulang
menit_w_maghrib:
mov a,menit_maghrib
mov b,#10
div ab
mov menit_p_maghrib,a
mov menit_s_maghrib,b
maghrib_menit_p:
mov a,menit_p_maghrib
call ubah_ke_segmen
clr en_multiplexer
Call Ch_6
call ulang
maghrib_menit_s:
mov a,menit_s_maghrib
call ubah_ke_segmen
clr en_multiplexer
Call Ch_7
call ulang
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
tampil_jam_isya:
jam_w_isya:
mov a,jam_isya
mov b,#10
div ab
mov jam_p_isya,a
mov jam_s_isya,b
isya_jam_p:
mov a,jam_p_isya
call ubah_ke_segmen
clr en_multiplexer
Call Ch_0
call ulang
isya_jam_s:
mov a,jam_s_isya
call ubah_ke_segmen
clr en_multiplexer
Call Ch_1
call ulang
menit_w_isya:
mov a,menit_isya
mov b,#10
div ab
mov menit_p_isya,a
mov menit_s_isya,b
isya_menit_p:
mov a,menit_p_isya
call ubah_ke_segmen
clr en_multiplexer
Call Ch_2
call ulang
isya_menit_s:
mov a,menit_s_isya
call ubah_ke_segmen
clr en_multiplexer
Call Ch_3
call ulang
djnz r5,ulangi_sholat
ret
ulangi_sholat:
jmp jam_w_subuh
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Tampilan utama 7-segmen
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Display:mov r5,#0
tampilkan_waktu:
jb k_menu,T_jam
call hapus_tampilan
jmp setting_1
T_jam:
mov dptr,#hour
call ambil_rtc_jam
T_jam_p:
mov a,jam_p
call ubah_ke_segmen
mov p2,#01111111B
call ulang_2
T_jam_s:
mov a,jam_s
call ubah_ke_segmen
CLR P2.6
mov p2,#10111111B
call ulang_2
T_menit:
mov dptr,#Minute
call ambil_rtc_menit
T_menit_p:
mov a,menit_p
call ubah_ke_segmen
mov p2,#11011111B
call ulang_2
T_menit_s:
mov a,menit_s
call ubah_ke_segmen
CLR P2.6
mov p2,#11101111B
call ulang_2
T_detik:
mov dptr,#secon
call ambil_rtc_detik
T_detik_p:
mov a,detik_p
call ubah_ke_segmen
clr en_multiplexer
Call Ch_12
call ulang
T_detik_s:
mov a,detik_s
call ubah_ke_segmen
clr en_multiplexer
Call Ch_13
call ulang
Slash_1:
mov p1,#01000000b
clr en_multiplexer
Call Ch_14
call ulang
Slash_2:
mov p1,#01000000b
clr en_multiplexer
Call Ch_15
call ulang
T_hari:
mov dptr,#Day_week
call ambil_rtc_hari
T_hari_p:
mov a,hari_p
call ubah_ke_segmen
clr en_multiplexer
Call Ch_8
call ulang
T_hari_s:
mov a,hari_s
call ubah_ke_segmen
clr en_multiplexer
Call Ch_9
call ulang
T_tanggal:
mov dptr,#Day_month
call ambil_rtc_tanggal
T_tanggal_p:
mov a,tanggal_p
call ubah_ke_segmen
clr en_multiplexer
Call Ch_10
call ulang
T_tanggal_s:
mov a,tanggal_s
call ubah_ke_segmen
clr en_multiplexer
Call Ch_11
call ulang
T_bulan:
mov dptr,#month
call ambil_rtc_bulan
T_bulan_p:
mov a,bulan_p
call ubah_ke_segmen
clr en_multiplexer
Call Ch_4
call ulang
T_bulan_s:
mov a,bulan_s
call ubah_ke_segmen
clr en_multiplexer
Call Ch_5
call ulang
slash_3:
mov p1,#01000000B
clr en_multiplexer
Call Ch_6
call ulang
Slash_4:
mov p1,#01000000B
clr en_multiplexer
Call Ch_7
call ulang
Angka_2:
mov p1,#01011011b
clr en_multiplexer
Call Ch_0
call ulang
Angka_0:
mov p1,#00111111b
clr en_multiplexer
Call Ch_1
call ulang
T_tahun:
mov dptr,#year
call ambil_rtc_tahun
T_tahun_p:
mov a,tahun_p
call ubah_ke_segmen
clr en_multiplexer
Call Ch_2
call ulang
T_tahun_s:
mov a,tahun_s
call ubah_ke_segmen
clr en_multiplexer
Call Ch_3
call ulang
exit0: djnz r5,ulangi
ret
ulangi: jmp tampilkan_waktu
ubah_ke_segmen:
MOV dptr,#data7segmen
movc a,@a+dptr
mov p1,a
ret
ulang: call delay
setb en_multiplexer
ret
ulang_2:
call delay
mov p2,#0ffh
ret
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Scanning waktu sholat
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Sholat_1:
mov dptr,#month
call ambil_rtcne_bulan
clr a
mov a,bulan
cjne a,#1,sholat_2
mov dptr,#day_month
call ambil_rtc_tanggal
mov a,tanggal
mov dptr,#jam_subuh_januari
movc a,@a+dptr
mov jam_subuh,a
mov a,tanggal
mov dptr,#menit_subuh_januari
movc a,@a+dptr
mov menit_subuh,a
mov a,tanggal
mov dptr,#jam_dzuhur_januari
movc a,@a+dptr
mov jam_dzuhur,a
mov a,tanggal
mov dptr,#menit_dzuhur_januari
movc a,@a+dptr
mov menit_dzuhur,a
mov a,tanggal
mov dptr,#jam_ashar_januari
movc a,@a+dptr
mov jam_ashar,a
mov a,tanggal
mov dptr,#menit_ashar_januari
movc a,@a+dptr
mov menit_ashar,a
mov a,tanggal
mov dptr,#jam_maghrib_januari
movc a,@a+dptr
mov jam_maghrib,a
mov a,tanggal
mov dptr,#menit_maghrib_januari
movc a,@a+dptr
mov menit_maghrib,a
mov a,tanggal
mov dptr,#jam_isya_januari
movc a,@a+dptr
mov jam_isya,a
mov a,tanggal
mov dptr,#menit_isya_januari
movc a,@a+dptr
mov menit_isya,a
ret
sholat_2:
cjne a,#2,sholat_3
mov dptr,#day_month
call ambil_rtc_tanggal
mov a,tanggal
mov dptr,#jam_subuh_februari
movc a,@a+dptr
mov jam_subuh,a
mov a,tanggal
mov dptr,#menit_subuh_februari
movc a,@a+dptr
mov menit_subuh,a
mov a,tanggal
mov dptr,#jam_dzuhur_februari
movc a,@a+dptr
mov jam_dzuhur,a
mov a,tanggal
mov dptr,#menit_dzuhur_februari
movc a,@a+dptr
mov menit_dzuhur,a
mov a,tanggal
mov dptr,#jam_ashar_februari
movc a,@a+dptr
mov jam_ashar,a
mov a,tanggal
mov dptr,#menit_ashar_februari
movc a,@a+dptr
mov menit_ashar,a
mov a,tanggal
mov dptr,#jam_maghrib_februari
movc a,@a+dptr
mov jam_maghrib,a
mov a,tanggal
mov dptr,#menit_maghrib_februari
movc a,@a+dptr
mov menit_maghrib,a
mov a,tanggal
mov dptr,#jam_isya_februari
movc a,@a+dptr
mov jam_isya,a
mov a,tanggal
mov dptr,#menit_isya_februari
movc a,@a+dptr
mov menit_isya,a
ret
sholat_3:
cjne a,#3,sholat_4
mov dptr,#day_month
call ambil_rtc_tanggal
mov a,tanggal
mov dptr,#jam_subuh_maret
movc a,@a+dptr
mov jam_subuh,a
mov a,tanggal
mov dptr,#menit_subuh_maret
movc a,@a+dptr
mov menit_subuh,a
mov a,tanggal
mov dptr,#jam_dzuhur_maret
movc a,@a+dptr
mov jam_dzuhur,a
mov a,tanggal
mov dptr,#menit_dzuhur_maret
movc a,@a+dptr
mov menit_dzuhur,a
mov a,tanggal
mov dptr,#jam_ashar_maret
movc a,@a+dptr
mov jam_ashar,a
mov a,tanggal
mov dptr,#menit_ashar_maret
movc a,@a+dptr
mov menit_ashar,a
mov a,tanggal
mov dptr,#jam_maghrib_maret
movc a,@a+dptr
mov jam_maghrib,a
mov a,tanggal
mov dptr,#menit_maghrib_maret
movc a,@a+dptr
mov menit_maghrib,a
mov a,tanggal
mov dptr,#jam_isya_maret
movc a,@a+dptr
mov jam_isya,a
mov a,tanggal
mov dptr,#menit_isya_maret
movc a,@a+dptr
mov menit_isya,a
ret
sholat_4:
cjne a,#4,sholat_5
mov dptr,#day_month
call ambil_rtc_tanggal
mov a,tanggal
mov dptr,#jam_subuh_april
movc a,@a+dptr
mov jam_subuh,a
mov a,tanggal
mov dptr,#menit_subuh_april
movc a,@a+dptr
mov menit_subuh,a
mov a,tanggal
mov dptr,#jam_dzuhur_april
movc a,@a+dptr
mov jam_dzuhur,a
mov a,tanggal
mov dptr,#menit_dzuhur_april
movc a,@a+dptr
mov menit_dzuhur,a
mov a,tanggal
mov dptr,#jam_ashar_april
movc a,@a+dptr
mov jam_ashar,a
mov a,tanggal
mov dptr,#menit_ashar_april
movc a,@a+dptr
mov menit_ashar,a
mov a,tanggal
mov dptr,#jam_maghrib_april
movc a,@a+dptr
mov jam_maghrib,a
mov a,tanggal
mov dptr,#menit_maghrib_april
movc a,@a+dptr
mov menit_maghrib,a
mov a,tanggal
mov dptr,#jam_isya_april
movc a,@a+dptr
mov jam_isya,a
mov a,tanggal
mov dptr,#menit_isya_april
movc a,@a+dptr
mov menit_isya,a
ret
sholat_5:
cjne a,#5,sholat_6
mov dptr,#day_month
call ambil_rtc_tanggal
mov a,tanggal
mov dptr,#jam_subuh_mei
movc a,@a+dptr
mov jam_subuh,a
mov a,tanggal
mov dptr,#menit_subuh_mei
movc a,@a+dptr
mov menit_subuh,a
mov a,tanggal
mov dptr,#jam_dzuhur_mei
movc a,@a+dptr
mov jam_dzuhur,a
mov a,tanggal
mov dptr,#menit_dzuhur_mei
movc a,@a+dptr
mov menit_dzuhur,a
mov a,tanggal
mov dptr,#jam_ashar_mei
movc a,@a+dptr
mov jam_ashar,a
mov a,tanggal
mov dptr,#menit_ashar_mei
movc a,@a+dptr
mov menit_ashar,a
mov a,tanggal
mov dptr,#jam_maghrib_mei
movc a,@a+dptr
mov jam_maghrib,a
mov a,tanggal
mov dptr,#menit_maghrib_mei
movc a,@a+dptr
mov menit_maghrib,a
mov a,tanggal
mov dptr,#jam_isya_mei
movc a,@a+dptr
mov jam_isya,a
mov a,tanggal
mov dptr,#menit_isya_mei
movc a,@a+dptr
mov menit_isya,a
ret
sholat_6:
cjne a,#6,sholat_7
mov dptr,#day_month
call ambil_rtc_tanggal
mov a,tanggal
mov dptr,#jam_subuh_juni
movc a,@a+dptr
mov jam_subuh,a
mov a,tanggal
mov dptr,#menit_subuh_juni
movc a,@a+dptr
mov menit_subuh,a
mov a,tanggal
mov dptr,#jam_dzuhur_juni
movc a,@a+dptr
mov jam_dzuhur,a
mov a,tanggal
mov dptr,#menit_dzuhur_juni
movc a,@a+dptr
mov menit_dzuhur,a
mov a,tanggal
mov dptr,#jam_ashar_juni
movc a,@a+dptr
mov jam_ashar,a
mov a,tanggal
mov dptr,#menit_ashar_juni
movc a,@a+dptr
mov menit_ashar,a
mov a,tanggal
mov dptr,#jam_maghrib_juni
movc a,@a+dptr
mov jam_maghrib,a
mov a,tanggal
mov dptr,#menit_maghrib_juni
movc a,@a+dptr
mov menit_maghrib,a
mov a,tanggal
mov dptr,#jam_isya_juni
movc a,@a+dptr
mov jam_isya,a
mov a,tanggal
mov dptr,#menit_isya_juni
movc a,@a+dptr
mov menit_isya,a
ret
sholat_7:
cjne a,#7,sholat_8
mov dptr,#day_month
call ambil_rtc_tanggal
mov a,tanggal
mov dptr,#jam_subuh_juli
movc a,@a+dptr
mov jam_subuh,a
mov a,tanggal
mov dptr,#menit_subuh_juli
movc a,@a+dptr
mov menit_subuh,a
mov a,tanggal
mov dptr,#jam_dzuhur_juli
movc a,@a+dptr
mov jam_dzuhur,a
mov a,tanggal
mov dptr,#menit_dzuhur_juli
movc a,@a+dptr
mov menit_dzuhur,a
mov a,tanggal
mov dptr,#jam_ashar_juli
movc a,@a+dptr
mov jam_ashar,a
mov a,tanggal
mov dptr,#menit_ashar_juli
movc a,@a+dptr
mov menit_ashar,a
mov a,tanggal
mov dptr,#jam_maghrib_juli
movc a,@a+dptr
mov jam_maghrib,a
mov a,tanggal
mov dptr,#menit_maghrib_juli
movc a,@a+dptr
mov menit_maghrib,a
mov a,tanggal
mov dptr,#jam_isya_juli
movc a,@a+dptr
mov jam_isya,a
mov a,tanggal
mov dptr,#menit_isya_juli
movc a,@a+dptr
mov menit_isya,a
ret
sholat_8:
cjne a,#8,sholat_9
mov dptr,#day_month
call ambil_rtc_tanggal
mov a,tanggal
mov dptr,#jam_subuh_agustus
movc a,@a+dptr
mov jam_subuh,a
mov a,tanggal
mov dptr,#menit_subuh_agustus
movc a,@a+dptr
mov menit_subuh,a
mov a,tanggal
mov dptr,#jam_dzuhur_agustus
movc a,@a+dptr
mov jam_dzuhur,a
mov a,tanggal
mov dptr,#menit_dzuhur_agustus
movc a,@a+dptr
mov menit_dzuhur,a
mov a,tanggal
mov dptr,#jam_ashar_agustus
movc a,@a+dptr
mov jam_ashar,a
mov a,tanggal
mov dptr,#menit_ashar_agustus
movc a,@a+dptr
mov menit_ashar,a
mov a,tanggal
mov dptr,#jam_maghrib_agustus
movc a,@a+dptr
mov jam_maghrib,a
mov a,tanggal
mov dptr,#menit_maghrib_agustus
movc a,@a+dptr
mov menit_maghrib,a
mov a,tanggal
mov dptr,#jam_isya_agustus
movc a,@a+dptr
mov jam_isya,a
mov a,tanggal
mov dptr,#menit_isya_agustus
movc a,@a+dptr
mov menit_isya,a
ret
sholat_9:
cjne a,#9,sholat_10
mov dptr,#day_month
call ambil_rtc_tanggal
mov a,tanggal
mov dptr,#jam_subuh_september
movc a,@a+dptr
mov jam_subuh,a
mov a,tanggal
mov dptr,#menit_subuh_september
movc a,@a+dptr
mov menit_subuh,a
mov a,tanggal
mov dptr,#jam_dzuhur_september
movc a,@a+dptr
mov jam_dzuhur,a
mov a,tanggal
mov dptr,#menit_dzuhur_september
movc a,@a+dptr
mov menit_dzuhur,a
mov a,tanggal
mov dptr,#jam_ashar_september
movc a,@a+dptr
mov jam_ashar,a
mov a,tanggal
mov dptr,#menit_ashar_september
movc a,@a+dptr
mov menit_ashar,a
mov a,tanggal
mov dptr,#jam_maghrib_september
movc a,@a+dptr
mov jam_maghrib,a
mov a,tanggal
mov dptr,#menit_maghrib_september
movc a,@a+dptr
mov menit_maghrib,a
mov a,tanggal
mov dptr,#jam_isya_september
movc a,@a+dptr
mov jam_isya,a
mov a,tanggal
mov dptr,#menit_isya_september
movc a,@a+dptr
mov menit_isya,a
ret
sholat_10:
cjne a,#10,sholat_11
mov dptr,#day_month
call ambil_rtc_tanggal
mov a,tanggal
mov dptr,#jam_subuh_oktober
movc a,@a+dptr
mov jam_subuh,a
mov a,tanggal
mov dptr,#menit_subuh_oktober
movc a,@a+dptr
mov menit_subuh,a
mov a,tanggal
mov dptr,#jam_dzuhur_oktober
movc a,@a+dptr
mov jam_dzuhur,a
mov a,tanggal
mov dptr,#menit_dzuhur_oktober
movc a,@a+dptr
mov menit_dzuhur,a
mov a,tanggal
mov dptr,#jam_ashar_oktober
movc a,@a+dptr
mov jam_ashar,a
mov a,tanggal
mov dptr,#menit_ashar_oktober
movc a,@a+dptr
mov menit_ashar,a
mov a,tanggal
mov dptr,#jam_maghrib_oktober
movc a,@a+dptr
mov jam_maghrib,a
mov a,tanggal
mov dptr,#menit_maghrib_oktober
movc a,@a+dptr
mov menit_maghrib,a
mov a,tanggal
mov dptr,#jam_isya_oktober
movc a,@a+dptr
mov jam_isya,a
mov a,tanggal
mov dptr,#menit_isya_oktober
movc a,@a+dptr
mov menit_isya,a
ret
sholat_11:
cjne a,#11,sholat_12
mov dptr,#day_month
call ambil_rtc_tanggal
mov a,tanggal
mov dptr,#jam_subuh_november
movc a,@a+dptr
mov jam_subuh,a
mov a,tanggal
mov dptr,#menit_subuh_november
movc a,@a+dptr
mov menit_subuh,a
mov a,tanggal
mov dptr,#jam_dzuhur_november
movc a,@a+dptr
mov jam_dzuhur,a
mov a,tanggal
mov dptr,#menit_dzuhur_november
movc a,@a+dptr
mov menit_dzuhur,a
mov a,tanggal
mov dptr,#jam_ashar_november
movc a,@a+dptr
mov jam_ashar,a
mov a,tanggal
mov dptr,#menit_ashar_november
movc a,@a+dptr
mov menit_ashar,a
mov a,tanggal
mov dptr,#jam_maghrib_november
movc a,@a+dptr
mov jam_maghrib,a
mov a,tanggal
mov dptr,#menit_maghrib_november
movc a,@a+dptr
mov menit_maghrib,a
mov a,tanggal
mov dptr,#jam_isya_november
movc a,@a+dptr
mov jam_isya,a
mov a,tanggal
mov dptr,#menit_isya_november
movc a,@a+dptr
mov menit_isya,a
ret
sholat_12:
cjne a,#12,sholat_13
mov dptr,#day_month
call ambil_rtc_tanggal
mov a,tanggal
mov dptr,#jam_subuh_desember
movc a,@a+dptr
mov jam_subuh,a
mov a,tanggal
mov dptr,#menit_subuh_desember
movc a,@a+dptr
mov menit_subuh,a
mov a,tanggal
mov dptr,#jam_dzuhur_desember
movc a,@a+dptr
mov jam_dzuhur,a
mov a,tanggal
mov dptr,#menit_dzuhur_desember
movc a,@a+dptr
mov menit_dzuhur,a
mov a,tanggal
mov dptr,#jam_ashar_desember
movc a,@a+dptr
mov jam_ashar,a
mov a,tanggal
mov dptr,#menit_ashar_desember
movc a,@a+dptr
mov menit_ashar,a
mov a,tanggal
mov dptr,#jam_maghrib_desember
movc a,@a+dptr
mov jam_maghrib,a
mov a,tanggal
mov dptr,#menit_maghrib_desember
movc a,@a+dptr
mov menit_maghrib,a
mov a,tanggal
mov dptr,#jam_isya_desember
movc a,@a+dptr
mov jam_isya,a
mov a,tanggal
mov dptr,#menit_isya_desember
movc a,@a+dptr
mov menit_isya,a
sholat_13:
ret
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Display Setting
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
disp_set_jam:
mov r5,#5
Set_jam:
mov dptr,#hour
call ambil_rtc_jam
Set_jam_p:
mov a,jam_p
call ubah_ke_segmen
mov p2,#01111111B
call ulang_2
Set_jam_s:
mov a,jam_s
call ubah_ke_segmen
CLR P2.7
mov p2,#10111111B
call ulang_2
djnz r5,set_jam
ret
disp_set_menit:
mov r5,#5
Set_menit:
mov dptr,#minute
call ambil_rtc_menit
Set_menit_p:
mov a,menit_p
call ubah_ke_segmen
mov p2,#11011111B
call ulang_2
Set_menit_s:
mov a,menit_s
call ubah_ke_segmen
CLR P2.5
mov p2,#11101111B
call ulang_2
djnz r5,set_menit
ret
disp_set_hari:
mov r5,#5
Set_hari:
mov dptr,#Day_week
call ambil_rtc_hari
set_hari_p:
mov a,hari_p
call ubah_ke_segmen
clr en_multiplexer
Call Ch_8
call ulang
set_hari_s:
mov a,hari_s
call ubah_ke_segmen
clr en_multiplexer
Call Ch_9
call ulang
ret
disp_set_tanggal:
mov r5,#5
Set_tanggal:
mov dptr,#Day_month
call ambil_rtc_tanggal
set_tanggal_p:
mov a,tanggal_p
call ubah_ke_segmen
clr en_multiplexer
Call Ch_10
call ulang
set_tanggal_s:
mov a,tanggal_s
call ubah_ke_segmen
clr en_multiplexer
Call Ch_11
call ulang
ret
disp_set_bulan:
mov r5,#5
Set_bulan:
mov dptr,#month
call ambil_rtc_bulan
set_bulan_p:
mov a,bulan_p
call ubah_ke_segmen
clr en_multiplexer
Call Ch_4
call ulang
set_bulan_s:
mov a,bulan_s
call ubah_ke_segmen
clr en_multiplexer
Call Ch_5
call ulang
ret
disp_set_tahun:
mov r5,#5
Set_tahun:
mov dptr,#year
call ambil_rtc_tahun
set_tahun_p:
mov a,tahun_p
call ubah_ke_segmen
clr en_multiplexer
Call Ch_2
call ulang
set_tahun_s:
mov a,tahun_s
call ubah_ke_segmen
clr en_multiplexer
Call Ch_3
call ulang
ret
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Settingan tombol jam dan kalender
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Setting_1:
mov almcount,#0
mov dptr,#hour
mov tmp1,#50
bounce_1a:
jnb k_menu,$
djnz tmp1,bounce_1a
Setting_1a:
call disp_set_jam
cekset_1a:
jb k_next,cekset_2a
inc almcount
jnb k_next,$
call hapus_tampilan
jmp setting_2
cekset_2a:
jb k_up,cekset_3a
mov p1,#00h
call up_jam
jmp setting_1a
cekset_3a:
jb k_down,cekset_4a
mov p1,#00h
call down_jam
jmp setting_1a
cekset_4a:
mov tmp1,#0
bounce_1b:
jb k_next,setting_1a
djnz tmp1,bounce_1b
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Setting_2:
jnb k_next,$
mov dptr,#minute
Setting_2a:
call disp_set_menit
cekset_1b:
jb k_next,cekset_2b
inc almcount
jnb k_next,$
call hapus_tampilan
jmp setting_3
cekset_2b:
jb k_up,cekset_3b
mov p1,#00h
call up_menit
jmp setting_2a
cekset_3b:
jb k_down,setting_2a
mov p1,#00h
call down_menit
jmp setting_2a
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Setting_3:
jnb k_next,$
mov dptr,#day_week
Setting_3a:
call disp_set_hari
cekset_1c:
jb k_next,cekset_2c
inc almcount
jnb k_next,$
call hapus_tampilan
jmp setting_4
cekset_2c:
jb k_up,cekset_3c
mov p1,#00h
call up_day
jmp setting_3a
cekset_3c:
jb k_down,setting_3a
mov p1,#00h
call down_day
jmp setting_3a
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Setting_4:
jnb k_next,$
mov dptr,#day_month
Setting_4a:
call disp_set_tanggal
cekset_1d:
jb k_next,cekset_2d
inc almcount
jnb k_next,$
call hapus_tampilan
jmp setting_5
cekset_2d:
jb k_up,cekset_3d
mov p1,#00h
call up_day_month
jmp setting_4a
cekset_3d:
jb k_down,setting_4a
mov p1,#00h
call down_day_month
jmp setting_4a
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Setting_5:
jnb k_next,$
mov dptr,#month
Setting_5a:
call disp_set_bulan
cekset_1e:
jb k_next,cekset_2e
inc almcount
jnb k_next,$
call hapus_tampilan
jmp setting_6
cekset_2e:
jb k_up,cekset_3e
mov p1,#00h
call up_month
jmp setting_5a
cekset_3e:
jb k_down,setting_5a
mov p1,#00h
call down_month
jmp setting_5a
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Setting_6:
jnb k_next,$
mov dptr,#year
Setting_6a:
call disp_set_tahun
cekset_1f:
jb k_next,cekset_2f
inc almcount
jnb k_next,$
call hapus_tampilan
jmp dtk
cekset_2f:
jb k_up,cekset_3f
mov p1,#00h
call up_year
jmp setting_6a
cekset_3f:
jb k_down,setting_6a
mov p1,#00h
call down_year
jmp setting_6a
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; inisialisasi RTC
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Inisialisasi_rtc:
clr rtc_cs
; reg a = UIP DV2 DV1 DV0 RS3 RS2 RS1 RS0
; REG B = SET PIE AIE UIE SQWE DM 24/12 DSE
mov r0,#reg_a
mov a,#00101111b
movx @r0,a
inc r0
mov a,#00001110b
movx @r0,a
clr a
setb rtc_cs
ret
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Ambil data rtc dan tulis ke lcd
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Ambil_data_rtc:
clr rtc_cs
movx a,@dptr
setb rtc_cs
mov decl,a
call hextodec
mov tmp,a
swap a
anl a,#0fh
orl a,#30h
;call write_data
mov a,tmp
anl a,#0fh
orl a,#30h
;call write_data
ret
Ambil_rtc_desimal:
clr rtc_cs
movx a,@dptr
setb rtc_cs
mov decl,a
call hextodec
mov tmp,a
ret
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Baca rtc up rtc down dan tulis rtc
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Baca_rtc_up_jam:
mov r7,#25
Bounce_up_jam:
jb k_up,exit_jam
djnz r7,bounce_up_jam
baca_up_jam:
mov dptr,#hour
call baca_rtc_up
exit_jam:
ret
Baca_rtc_down_jam:
mov r7,#25
baca_down_jam:
jb k_down,exit_jam
djnz r7,baca_down_jam
mov dptr,#hour
call baca_rtc_down
ret
Baca_rtc_up_menit:
mov r7,#25
Bounce_up_menit:
jb k_up,exit_menit
djnz r7,bounce_up_menit
baca_up_menit:
mov dptr,#minute
call baca_rtc_up
exit_menit:
ret
Baca_rtc_down_menit:
mov r7,#25
baca_down_menit:
jb k_down,exit_menit
djnz r7,baca_down_menit
mov dptr,#minute
call baca_rtc_down
ret
Baca_rtc_up_hari:
mov r7,#25
Bounce_up_hari:
jb k_up,exit_hari
djnz r7,bounce_up_hari
baca_up_hari:
mov dptr,#day_week
call baca_rtc_up
exit_hari:
ret
Baca_rtc_down_hari:
mov r7,#25
baca_down_hari:
jb k_down,exit_hari
djnz r7,baca_down_hari
mov dptr,#day_week
call baca_rtc_down
ret
Baca_rtc_up_tanggal:
mov r7,#25
Bounce_up_tanggal:
jb k_up,exit_tanggal
djnz r7,bounce_up_tanggal
baca_up_tanggal:
mov dptr,#day_month
call baca_rtc_up
exit_tanggal:
ret
Baca_rtc_down_tanggal:
mov r7,#25
baca_down_tanggal:
jb k_down,exit_tanggal
djnz r7,baca_down_tanggal
mov dptr,#day_month
call baca_rtc_down
ret
Baca_rtc_up_bulan:
mov r7,#25
Bounce_up_bulan:
jb k_up,exit_bulan
djnz r7,bounce_up_bulan
baca_up_bulan:
mov dptr,#month
call baca_rtc_up
ret
Baca_rtc_down_bulan:
mov r7,#25
baca_down_bulan:
jb k_down,exit_bulan
djnz r7,baca_down_bulan
mov dptr,#month
call baca_rtc_down
exit_bulan:
ret
Baca_rtc_up_tahun:
mov r7,#25
Bounce_up_tahun:
jb k_up,exit_tahun
djnz r7,bounce_up_tahun
baca_up_tahun:
mov dptr,#year
clr rtc_cs
movx a,@dptr
setb rtc_cs
inc a
exit_tahun:
ret
Baca_rtc_down_tahun:
mov r7,#25
baca_down_tahun:
jb k_down,exit_tahun
djnz r7,baca_down_tahun
mov dptr,#year
call baca_rtc_down
ret
baca_rtc_up:
clr rtc_cs
movx a,@dptr
setb rtc_cs
inc a
ret
baca_rtc_down:
clr rtc_cs
movx a,@dptr
setb rtc_cs
dec a
ret
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; tulis rtc
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Tulis_rtcne_jam:
mov dptr,#hour
call tulis_rtc
jmp Tunggu_tombol_dilepas
Tulis_rtcne_menit:
mov dptr,#minute
call tulis_rtc
jmp Tunggu_tombol_dilepas
Tulis_rtcne_hari:
mov dptr,#day_week
call tulis_rtc
jmp Tunggu_tombol_dilepas
Tulis_rtcne_tanggal:
mov dptr,#day_month
call tulis_rtc
jmp Tunggu_tombol_dilepas
Tulis_rtcne_bulan:
mov dptr,#month
call tulis_rtc
jmp Tunggu_tombol_dilepas
Tulis_rtcne_tahun:
mov dptr,#year
call tulis_rtc
jmp Tunggu_tombol_dilepas
Tunggu_tombol_dilepas:
ca: mov r7,#25
cc: jnb k_up,ca
jnb k_down,ca
djnz r7,cc
exit: ret
tulis_rtc:
clr rtc_cs
movx @dptr,a
setb rtc_cs
ret
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Rutin tambah & kurangi menit
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Up_menit:
call baca_rtc_up_menit
cjne a,#59,cek_59
cek_59:
jc belum_59
clr a
belum_59:
jmp tulis_rtcne_menit
Down_menit:
call baca_rtc_down_menit
cjne a,#0ffh,m_255
mov a,#59
m_255:
jmp tulis_rtcne_menit
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Rutin tambah & kurangi jam
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Up_jam:
call baca_rtc_up_jam
cjne a,#24,cek_24
cek_24:
jc belum_24
clr a
belum_24:
jmp Tulis_rtcne_jam
Down_jam:
call baca_rtc_down_jam
cjne a,#0ffh,j_255
mov a,#23
j_255:
jmp Tulis_rtcne_jam
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Rutin tambah & kurangi hari dlm seminggu
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Up_day:
call baca_rtc_up_hari
cjne a,#8,cek_7
cek_7:
jc belum_7
clr a
inc a
belum_7:
jmp tulis_rtcne_hari
Down_day:
call baca_rtc_down_hari
jnz bukan_0_day
mov a,#7
bukan_0_day:
jmp tulis_rtcne_hari
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Rutin tambah & kurangi hari dlm sebulan
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Up_day_month:
call baca_rtc_up_tanggal
cjne a,#32,cek_31
cek_31:
jc belum_31
clr a
inc a
belum_31:
jmp tulis_rtcne_tanggal
Down_day_month:
call baca_rtc_down_tanggal
jnz bukan_0_daymonth
mov a,#31
bukan_0_daymonth:
jmp tulis_rtcne_tanggal
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Rutin tambah & kurangi bulan
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Up_month:
call baca_rtc_up_bulan
cjne a,#13,cek_12
cek_12:
jc belum_12
clr a
inc a
belum_12:
jmp tulis_rtcne_bulan
Down_month:
call baca_rtc_down_bulan
jnz bukan_0_month
mov a,#12
bukan_0_month:
jmp tulis_rtcne_bulan
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Rutin tambah & kurangi tahun
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Up_year:
call baca_rtc_up_tahun
cjne a,#100,cek_99
cek_99:
jc belum_99
clr a
belum_99:
jmp tulis_rtcne_tahun
Down_year:
call baca_rtc_down_tahun
cjne a,#0ffh,y_255
mov a,#99
y_255:
jmp tulis_rtcne_tahun
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; konversi heksa ke desimal
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
hextodec:
mov psw,#0
clr c
mov dech,#0
mov a,decl
swap a
anl a,#0fh ;00001111
mov tmp,a
jz sudah_ditambah
clr a
tambah_16:
add a,#16h ;22 d
da a
mov r2,a
clr a
addc a,dech
mov dech,a
mov a,r2
djnz tmp,tambah_16
sudah_ditambah:
mov tmp,a
mov a,decl
anl a,#0fh
da a
add a,tmp
da a
mov decl,a
; desimal hanya di bawah 100
ret
;**********************************************************
;Program BINER KE DESIMAL
;**********************************************************
ambil_rtc_detik:
call ambil
mov detik,a
call ambil_lagi
MOV detik_p,A
MOV detik_s,B
RET
ambil_rtc_menit:
call ambil
mov menit,a
call ambil_lagi
MOV menit_p,A
MOV menit_s,B
RET
ambil_rtc_jam:
call ambil
mov jam,a
call ambil_lagi
MOV jam_p,A
MOV jam_s,B
RET
ambil_rtc_hari:
call ambil
mov hari,a
call ambil_lagi
MOV hari_p,A
MOV hari_s,B
RET
ambil_rtc_tanggal:
call ambil
mov tanggal,a
call ambil_lagi
MOV tanggal_p,A
MOV tanggal_s,B
RET
ambil_rtc_bulan:
call ambil
mov bulan,a
call ambil_lagi
MOV bulan_p,A
MOV bulan_s,B
RET
ambil_rtcne_bulan:
call ambil
mov bulan,a
ret
ambil_rtc_tahun:
call ambil
mov tahun,a
call ambil_lagi
MOV tahun_p,A
MOV tahun_s,B
RET
ambil: clr rtc_cs
movx a,@dptr
setb rtc_cs
ret
ambil_lagi:
mov b,#100
div ab
mov a,b
mov b,#10
div ab
ret
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Channel Multiplexer
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Ch_0: clr en_multiplexer
mov P2,#11110000B
ret
Ch_1: clr en_multiplexer
mov P2,#11110001B
ret
Ch_2: clr en_multiplexer
mov P2,#11110010B
ret
Ch_3: clr en_multiplexer
mov P2,#11110011B
ret
Ch_4: clr en_multiplexer
mov P2,#11110100B
ret
Ch_5: clr en_multiplexer
mov P2,#11110101B
ret
Ch_6: clr en_multiplexer
mov P2,#11110110B
ret
Ch_7: clr en_multiplexer
mov P2,#11110111B
ret
Ch_8: clr en_multiplexer
mov P2,#11111000B
ret
Ch_9: clr en_multiplexer
mov P2,#11111001B
ret
Ch_10: clr en_multiplexer
mov P2,#11111010B
ret
Ch_11: clr en_multiplexer
mov P2,#11111011B
ret
Ch_12: clr en_multiplexer
mov P2,#11111100B
ret
Ch_13: clr en_multiplexer
mov P2,#11111101B
ret
Ch_14: clr en_multiplexer
mov P2,#11111110B
ret
Ch_15: clr en_multiplexer
mov P2,#11111111B
ret
hapus_tampilan:
mov p2,#0ffh
mov p1,#00h
setb en_multiplexer
call delay
ret
;**********************************************************
;Program WAKTU TUNDA
;**********************************************************
delay: mov R0,#100
delay1: mov R2,#5
djnz R2,$
djnz R0,delay1
ret
tunda1detik:
mov R7,#ratusan
lagi: mov TH0,#high cacah
mov TL0,#low cacah
setb TR0
jnb TF0,$
clr TF0
clr TR0
djnz R7,lagi
ret
;**********************************************************
;Data 7-segmen
;**********************************************************
data7segmen:
db 00111111b
db 00000110b
db 01011011b
db 01001111b
db 01100110b
db 01101101b
db 01111101b
db 00000111b
db 01111111b
db 01101111b
;**********************************************************
;Data Waktu Sholat Januari wis
;**********************************************************
Jam_subuh_januari:
db 00,04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04
Menit_subuh_januari:
db 00,09,10,10,11,11,11,12,13,14,14
db 15,15,15,17,17,18,18,19,20,20
db 21,21,22,22,23,23,23,24,25,25
db 26
Jam_dzuhur_januari:
db 00,11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11
Menit_dzuhur_januari:
db 00,42,43,43,44,44,44,45,46,46,46
db 47,47,47,48,48,49,49,49,50,50
db 50,51,51,51,51,52,52,52,52,52
db 52
Jam_ashar_januari:
db 00,15,15,15,15,15,15,15,15,15,15
db 15,15,15,15,15,15,15,15,15,15
db 15,15,15,15,15,15,15,15,15,15
db 15
Menit_ashar_januari:
db 00,09,10,10,10,10,11,11,11,12,12
db 12,12,12,13,13,13,13,13,13,13
db 13,13,13,13,13,13,13,13,12,12
db 12
Jam_maghrib_januari:
db 00,18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18
Menit_maghrib_januari:
db 00,00,00,00,01,01,01,02,02,02,03
db 03,03,03,04,04,04,05,05,05,05
db 05,05,05,06,06,06,06,06,06,06
db 06
Jam_isya_januari:
db 00,19,19,19,19,19,19,19,19,19,19
db 19,19,19,19,19,19,19,19,19,19
db 19,19,19,19,19,19,19,19,19,19
db 19
Menit_isya_januari:
db 00,11,12,12,12,12,13,13,14,14,14
db 14,14,14,15,15,15,15,15,15,15
db 15,15,15,15,15,15,15,15,15,15
db 15
;**********************************************************
;Data Waktu Sholat Februari wis
;**********************************************************
Jam_subuh_februari:
db 00,04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04
Menit_subuh_februari:
db 00,26,27,27,27,28,28,29,29,29,30
db 30,30,31,31,31,31,32,32,32,32
db 33,33,33,33,33,33,34,34
Jam_dzuhur_februari:
db 00,11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11
Menit_dzuhur_februari:
db 00,53,53,53,54,53,53,53,53,53,53
db 53,53,53,54,53,53,53,53,53,53
db 53,52,52,52,52,52,52,52
Jam_ashar_februari:
db 00,15,15,15,15,15,15,15,15,15,15
db 15,15,15,15,15,15,15,15,15,15
db 15,14,14,14,14,14,14,14
Menit_ashar_februari:
db 00,11,11,11,11,10,10,09,09,08,08
db 08,07,06,05,05,04,03,03,02,01
db 00,59,58,57,56,56,54,53
Jam_maghrib_februari:
db 00,18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,17
Menit_maghrib_februari:
db 00,06,06,06,06,05,05,05,05,05,05
db 05,04,04,04,04,03,03,03,03,02
db 02,02,01,01,01,01,00,59
Jam_isya_februari:
db 00,19,19,19,19,19,19,19,19,19,19
db 19,19,19,19,19,19,19,19,19,19
db 19,19,19,19,19,19,19,19
Menit_isya_februari:
db 00,15,14,14,14,14,14,13,13,13,13
db 13,12,12,11,11,11,10,10,10,09
db 09,08,08,07,07,07,06,05
;**********************************************************
;Data Waktu Sholat maret wis
;**********************************************************
Jam_subuh_maret:
db 00,04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04
Menit_subuh_maret:
db 00,34,34,34,34,34,34,34,34,34,34
db 34,34,34,34,34,34,34,34,34,34
db 34,34,34,34,34,33,33,33,33,33
db 33
Jam_dzuhur_maret:
db 00,11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11
Menit_dzuhur_maret:
db 00,51,51,51,51,51,50,50,50,50,49
db 49,49,49,48,48,48,48,47,47,47
db 46,46,46,45,45,45,45,45,44,44
db 43
Jam_ashar_maret:
db 00,14,14,14,14,14,14,14,14,14,14
db 14,14,14,14,14,14,14,14,14,14
db 15,15,15,15,15,15,15,15,15,15
db 15
Menit_ashar_maret:
db 00,54,54,55,55,55,56,56,57,57,57
db 58,58,58,58,59,59,59,59,59,59
db 00,00,00,00,00,00,00,00,00,00
db 00
Jam_maghrib_maret:
db 00,17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17
Menit_maghrib_maret:
db 00,59,59,58,58,58,57,56,56,55,55
db 54,54,54,53,53,52,52,51,50,50
db 49,49,48,48,47,47,47,46,45,45
db 44
Jam_isya_maret:
db 00,19,19,19,19,19,19,19,19,19,19
db 19,19,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18
Menit_isya_maret:
db 00,05,05,04,04,04,03,02,02,01,01
db 00,00,59,58,58,57,57,56,56,56
db 55,54,54,53,53,52,52,52,51,50
db 50
;**********************************************************
;Data Waktu Sholat april wis
;**********************************************************
Jam_subuh_april:
db 00,04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
Menit_subuh_april:
db 00,33,33,33,33,32,32,32,32,32,32
db 32,31,31,31,31,31,31,31,31,31
db 30,30,30,30,30,30,30,30,30,30
Jam_dzuhur_april:
db 00,11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
Menit_dzuhur_april:
db 00,43,43,43,42,42,42,41,41,41,40
db 40,40,40,39,39,39,39,39,38,38
db 38,38,37,37,37,37,37,37,36,36
Jam_ashar_april:
db 00,15,15,15,15,15,15,15,15,15,15
db 15,14,14,14,14,14,14,14,14,14
db 14,14,14,14,14,14,14,14,14,14
Menit_ashar_april:
db 00,00,00,00,00,00,00,00,00,00,00
db 00,59,59,59,59,59,59,59,59,59
db 59,58,58,58,58,58,58,58,58,58
Jam_maghrib_april:
db 00,17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
Menit_maghrib_april:
db 00,44,43,43,43,42,41,41,40,40,39
db 39,38,38,38,37,37,36,36,36,35
db 35,34,34,33,33,33,32,32,32,31
Jam_isya_april:
db 00,18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
Menit_isya_april:
db 00,49,49,49,48,47,47,46,46,46,45
db 45,44,44,44,43,43,42,42,42,41
db 41,41,40,40,40,40,39,39,39,39
;**********************************************************
;Data Waktu Sholat mei wis
;**********************************************************
Jam_subuh_mei:
db 00,04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04
Menit_subuh_mei:
db 00,30,30,30,30,30,30,30,30,30,30
db 30,30,30,30,30,30,30,30,30,30
db 30,30,30,30,30,31,31,31,31,31
db 31
Jam_dzuhur_mei:
db 00,11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11
Menit_dzuhur_mei:
db 00,36,36,36,36,36,36,36,36,35,35
db 35,35,35,35,35,35,35,35,35,36
db 36,36,36,36,36,36,36,36,36,37
db 37
Jam_ashar_mei:
db 00,14,14,14,14,14,14,14,14,14,14
db 14,14,14,14,14,14,14,14,14,14
db 14,14,14,14,14,14,14,14,14,14
db 14
Menit_ashar_mei:
db 00,58,57,57,57,57,57,57,57,57,57
db 57,57,57,57,57,57,57,57,57,57
db 57,57,57,57,57,57,57,57,57,58
db 58
Jam_maghrib_mei:
db 00,17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17
Menit_maghrib_mei:
db 00,31,31,31,30,30,30,30,29,29,29
db 29,29,28,28,28,28,28,28,28,28
db 28,28,28,28,28,28,28,28,28,28
db 28
Jam_isya_mei:
db 00,18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18
Menit_isya_mei:
db 00,38,38,38,38,38,38,37,37,37,37
db 37,37,37,37,37,37,37,37,37,37
db 37,37,37,37,37,37,37,37,37,38
db 38
;**********************************************************
;Data Waktu Sholat juni wis
;**********************************************************
Jam_subuh_juni:
db 00,04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
Menit_subuh_juni:
db 00,31,32,32,32,32,32,33,33,33,33
db 33,34,34,34,34,34,35,35,35,35
db 36,36,36,36,36,37,37,37,37,37
Jam_dzuhur_juni:
db 00,11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
Menit_dzuhur_juni:
db 00,37,37,37,37,37,38,38,38,38,38
db 39,39,39,39,39,39,40,40,40,41
db 41,41,41,41,42,42,42,42,42,43
Jam_ashar_juni:
db 00,14,14,14,14,14,14,14,14,14,14
db 14,15,15,15,15,15,15,15,15,15
db 15,15,15,15,15,15,15,15,15,15
Menit_ashar_juni:
db 00,58,58,58,58,58,58,59,59,59,59
db 59,00,00,00,00,00,01,01,01,01
db 01,02,02,02,02,02,03,03,03,03
Jam_maghrib_juni:
db 00,17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
Menit_maghrib_juni:
db 00,28,28,28,28,28,28,28,28,28,29
db 29,29,29,29,30,30,30,30,30,31
db 31,31,31,31,32,32,32,32,33,33
Jam_isya_juni:
db 00,18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
Menit_isya_juni:
db 00,38,38,38,38,38,39,39,39,39,39
db 39,40,40,40,40,40,41,41,41,41
db 42,42,42,42,42,43,43,43,43,43
;**********************************************************
;Data Waktu Sholat juli wis
;**********************************************************
Jam_subuh_juli:
db 00,04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04
Menit_subuh_juli:
db 00,37,38,38,38,38,39,39,39,39,39
db 39,39,39,40,40,40,40,40,40,40
db 40,40,40,40,40,40,40,40,40,40
db 40
Jam_dzuhur_juli:
db 00,11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
Menit_dzuhur_juli:
db 00,43,43,43,43,44,44,44,44,44,44
db 45,45,45,45,45,45,45,45,45,45
db 45,45,45,46,46,46,46,46,46,46
db 45
Jam_ashar_juli:
db 00,15,15,15,15,15,15,15,15,15,15
db 15,15,15,15,15,15,15,15,15,15
db 15,15,15,15,15,15,15,15,15,15
db 15
Menit_ashar_juli:
db 00,03,04,04,04,04,05,05,05,05,05
db 05,06,06,06,06,06,06,06,07,07
db 07,07,07,07,70,07,07,07,07,07
db 07
Jam_maghrib_juli:
db 00,17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17
Menit_maghrib_juli:
db 00,33,33,34,34,34,34,35,35,35,35
db 35,36,36,36,36,36,37,37,37,37
db 37,38,38,38,38,38,38,38,38,38
db 39
Jam_isya_juli:
db 00,18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18
Menit_isya_juli:
db 00,43,44,44,44,44,45,45,45,45,45
db 45,46,46,46,46,46,46,46,46,47
db 47,47,47,47,47,47,47,47,47,47
db 47
;**********************************************************
;Data Waktu Sholat agustus wis
;**********************************************************
Jam_subuh_agustus:
db 00,04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04
Menit_subuh_agustus:
db 00,40,39,39,39,39,39,39,38,38,38
db 38,38,37,37,37,37,36,36,36,35
db 35,35,34,34,33,33,33,32,32,31
db 31
Jam_dzuhur_agustus:
db 00,11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11
Menit_dzuhur_agustus:
db 00,45,45,45,45,45,45,45,45,45,44
db 44,44,44,44,44,43,43,43,43,43
db 43,42,42,42,41,41,41,40,40,40
db 39
Jam_ashar_agustus:
db 00,15,15,15,15,15,15,15,15,15,15
db 15,15,15,15,15,15,15,15,15,15
db 15,15,15,15,15,15,15,15,15,14
db 14
Menit_ashar_agustus:
db 00,07,07,07,07,07,07,06,06,06,06
db 06,05,05,05,05,05,04,04,04,03
db 03,03,02,02,02,01,01,00,00,59
db 59
Jam_maghrib_agustus:
db 00,17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17
Menit_maghrib_agustus:
db 00,39,39,39,39,39,39,39,39,39,39
db 39,39,39,39,39,39,39,39,39,39
db 39,39,39,39,39,39,38,38,38,38
db 38
Jam_isya_agustus:
db 00,18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18
Menit_isya_agustus:
db 00,47,47,47,47,47,47,47,47,47,47
db 47,47,46,46,46,46,46,46,46,46
db 46,46,45,45,45,45,45,45,45,44
db 44
;**********************************************************
;Data Waktu Sholat september wis
;**********************************************************
Jam_subuh_september:
db 00,04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
Menit_subuh_september:
db 00,30,30,29,29,29,28,28,27,26,26
db 25,25,25,24,23,23,22,22,21,21
db 20,19,19,18,18,17,17,16,15,15
Jam_dzuhur_september:
db 00,11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
Menit_dzuhur_september:
db 00,39,39,39,38,38,38,37,37,37,36
db 36,36,35,35,34,34,34,33,33,33
db 32,32,32,31,31,31,31,30,29,29
Jam_ashar_september:
db 00,14,14,14,14,14,14,14,14,14,14
db 14,14,14,14,14,14,14,14,14,14
db 14,14,14,14,14,14,14,14,14,14
Menit_ashar_september:
db 00,58,58,57,57,57,56,55,54,54,53
db 53,53,52,51,50,49,49,48,47,47
db 46,45,44,43,43,42,42,40,39,38
Jam_maghrib_september:
db 00,17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
Menit_maghrib_september:
db 00,38,38,38,38,38,37,37,37,37,37
db 37,37,36,36,36,36,36,36,35,35
db 35,35,35,35,35,34,34,34,34,34
Jam_isya_september:
db 00,18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
Menit_isya_september:
db 00,44,44,44,43,43,43,43,43,42,42
db 42,42,42,42,41,41,41,41,41,41
db 41,40,40,40,40,40,40,40,40,40
;**********************************************************
;Data Waktu Sholat oktober wis
;**********************************************************
Jam_subuh_oktober:
db 00,04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 03
Menit_subuh_oktober:
db 00,14,14,13,13,12,11,11,10,10,09
db 08,08,07,07,06,06,05,05,05,04
db 03,03,02,02,02,02,01,00,00,00
db 59
Jam_dzuhur_oktober:
db 00,11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11
Menit_dzuhur_oktober:
db 00,43,43,43,42,42,42,41,41,41,40
db 40,40,40,39,39,39,39,39,38,38
db 38,38,37,37,37,37,37,37,36,36
db 23
Jam_ashar_oktober:
db 00,14,14,14,14,14,14,14,14,14,14
db 15,14,14,14,14,14,14,14,14,14
db 14,14,14,14,14,14,14,14,14,14
db 14
Menit_ashar_oktober:
db 00,38,37,36,36,35,33,32,31,31,30
db 29,29,27,28,29,29,30,30,30,31
db 32,32,33,33,34,34,35,36,36,37
db 37
Jam_maghrib_oktober:
db 00,17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17
Menit_maghrib_oktober:
db 00,34,34,34,34,34,33,33,33,33,33
db 33,33,33,33,33,33,33,33,33,33
db 33,33,33,33,33,33,33,34,34,34
db 34
Jam_isya_oktober:
db 00,18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18
Menit_isya_oktober:
db 00,40,39,39,39,39,39,39,39,39,39
db 39,39,39,39,39,39,40,40,40,40
db 40,40,40,40,41,41,41,41,41,42
db 42
;**********************************************************
;Data Waktu Sholat november wis
;**********************************************************
Jam_subuh_november:
db 00,03,03,03,03,03,03,03,03,03,03
db 03,03,03,03,03,03,03,03,03,03
db 03,03,03,03,03,03,03,03,03,03
Menit_subuh_november:
db 00,59,58,58,58,58,57,57,57,57,57
db 56,56,56,56,55,55,55,55,55,55
db 55,55,55,55,55,55,55,55,56,56
Jam_dzuhur_november:
db 00,11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
Menit_dzuhur_november:
db 00,23,23,23,23,23,23,23,23,23,23
db 23,23,23,23,24,24,24,24,24,25
db 25,25,25,26,26,26,27,27,27,28
Jam_ashar_november:
db 00,14,14,14,14,14,14,14,14,14,14
db 15,14,14,14,14,14,14,14,14,14
db 14,14,14,14,14,14,14,14,14,14
Menit_ashar_november:
db 00,38,38,38,39,40,40,41,41,42,42
db 42,43,44,44,45,45,46,46,47,47
db 48,48,49,50,50,51,51,52,52,53
Jam_maghrib_november:
db 00,17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
Menit_maghrib_november:
db 00,34,34,34,35,35,35,35,36,36,36
db 36,37,37,37,38,38,38,38,39,39
db 40,40,41,41,41,42,42,43,43,44
Jam_isya_november:
db 00,18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
db 18,18,18,18,18,18,18,18,18,18
Menit_isya_november:
db 00,42,43,43,43,43,44,44,45,45,45
db 45,46,46,47,47,48,48,48,49,50
db 50,51,51,52,52,53,53,54,54,55
;**********************************************************
;Data Waktu Sholat desember wis Alhamdulillah
;**********************************************************
Jam_subuh_desember:
db 00,03,03,03,03,03,03,03,03,03,03
db 03,03,03,04,04,04,04,04,04,04
db 04,04,04,04,04,04,04,04,04,04
db 04
Menit_subuh_desember:
db 00,56,56,56,56,57,57,57,58,58,58
db 59,59,59,00,00,00,00,01,02,02
db 03,03,04,04,04,05,06,06,07,08
db 08
Jam_dzuhur_desember:
db 00,11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11,11,11,11,11,11,11,11,11,11
db 11
Menit_dzuhur_desember:
db 00,28,28,28,29,29,30,30,31,31,31
db 32,33,33,34,34,34,34,35,36,36
db 37,37,38,38,38,39,40,40,41,41
db 42
Jam_ashar_desember:
db 00,14,14,14,14,14,14,14,14,14,14
db 14,15,15,15,15,15,15,15,15,15
db 15,15,15,15,15,15,15,15,15,15
db 15
Menit_ashar_desember:
db 00,53,53,54,55,56,56,57,57,58,58
db 59,00,00,01,01,02,02,03,03,04
db 04,05,05,05,06,07,07,08,08,08
db 09
Jam_maghrib_desember:
db 00,17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17,17,17,17,17,17,17,17,17,17
db 17
Menit_maghrib_desember:
db 00,44,44,45,46,46,47,47,48,48,48
db 49,50,50,51,51,52,52,53,53,54
db 54,55,55,55,56,57,57,58,58,59
db 59
Jam_isya_desember:
db 00,18,18,18,18,18,18,18,18,19,19
db 19,19,19,19,19,19,19,19,19,19
db 19,19,19,19,19,19,19,19,19,19
db 19
Menit_isya_desember:
db 00,55,55,56,57,58,58,59,59,00,00
db 01,02,02,03,03,04,04,05,06,06
db 07,07,07,07,08,09,09,10,10,11
db 11
end