Introduction: Multifunction Alarm Clock to Be Able to Most Easily Make in the World.

About: I cannot speak English well.

--Overview--

This is a multifunctional alarm clock that anyone can most easily make in the world which operates by the stand-alone. Everyone can easily make it from a few parts though time cannot be displayed. Consumption current is about 0.008 mA, so the battery continues for a long time. The operation is easy though it is multifunctional.

--Feature--

1, The alarm of 41 various kinds can be set up until after one year.
2, It is possible to use it as the timer and the interval timer by 99 minutes.
3, It notifies the elapsed time every minute during 99 minutes.
4, It notifies the present time for every minute.
5, The seconds of the present time is corrected at 0 seconds. The error margin is adjusted to plus-minus about 20 seconds for one month.
6, The minutes and seconds of the present time is corrected at 0 minutes 0 seconds.
7, You can invalidate the input by using the microswitch.
8, You can set time of the moment to push the microswitch for an alarm.
9. You can use a melody-IC or a buzzer instead of the piezoelectric element.
10, Only seven parts of a crystal(32.768kHz), two capacitors(33pF), a LED, a piezoelectric element, a microswitch, and a battery(3V) are required in addition to PIC12F683(8-Pin Microcontroller made by Microchip Technology) in which the program was written. If there are 10 minutes, anyone can make it.
11, It moves only once per 15 seconds (It move once per 1.875 seconds as the need arises), so consumption current is about 0.008mA. Therefore, the operation is possible for a long time by a battery.
12. And a battery is used, so a chattering prevention circuit can be omitted by using the microswitch. A peripheral circuit can be easily done. The miniaturization is also possible. The chattering prevention countermeasure by software is also unnecessary.

--Notes of wiring--

1, Please wire around the crystal and the microswitch as short as possible.
2, Please be sure to use a battery.
3, When GP3 (The 4th pin) is connected to the plus, not the minus, a melody-IC or a buzzer can be rung using a FET instead of the piezoelectric element. In other words, based on time, you can control other machinery easily by a low cost. At this point, I think that you cannot easily come true with a personal computer or a cellular phone or a smartphone, etc.

Step 1: How to Use

--How to use--

   -Meaning of sign-

[X]=You push the microswitch X times for about 0.1 seconds.
[-]=You push the microswitch only once for about one second. It means the delimitation of the number and the number. Or, it means zero.

   -A setup of the present time-

1, Please turn on power quickly. The program starts when you push the microswitch. If you push once again, and the LED will light up and the sound (it expresses the error) will sound after about 5 seconds, it is operating normally.

2, [-][16] (Please push the microswitch for about one second. Next, please push the microswitch for about 0.1 seconds. Please repeat it 16 times.)

3, Please wait for the LED to light up.

4,(For instance, it is 11:00AM, Thursday, March 25 now. Please push the microswitch with the following procedure.)

[3][-][25][-][5][-][11][-][-]

#Top [3] expresses a month. (e.g.: [1]=January, [2]=February, [3]=March, [4]= April, [5]=May, [6]=June, [7]=July, [8]=August, [9]=September, [10]=October, [11]=November and [12]=December)
#3rd [25] expresses a day.
#5th [5] expresses a week. (e.g.: [1]=Sunday, [2]=Monday, [3]=Tuesday, [4]= Wednesday, [5]=Thursday, [6]=Friday and [7]= Saturday)
#7th [11] expresses a o'clock. Time is 24 hour system.
#9th [-] expresses a minute.

(For instance, it is 12:00PM, Wednesday, February 9 now.
[2][-][9][-][4][-][12][-][-])

(For instance, it is 2:00PM, Tuesday, May 15 now.
[5][-][15][-][3][-][14][-][-])

(For instance, it is 4:11PM, Monday, June 17 now.
[6][-][17][-][2][-][16][-][11])

(For instance, it is 6:24PM, Sunday, July 27 now.
[7][-][27][-][1][-][18][-][24])

(For instance, it is 9:47PM, Saturday, August 29 now.
[8][-][29][-][7][-][21][-][47])

(For instance, it is 10:56PM, Friday, September 2 now.
[9][-][2][-][6][-][22][-][56])

(For instance, it is 12:06AM, Thursday, October 19 now.
[10][-][19][-][5][-][-][-][6])

5, Please push the microswitch according to the time signal after waiting for the LED to light up.

-Menu-

Note 1: When the microswitch is pushed first and the LED does not light up, please re-input after waiting about 15 seconds. Because other instructions are being executed. The second reason is because interruption in every 1.875 seconds and interruption in every 15 seconds are changed. But it is excluded when you executed the command of [-][-].
Note 2: Please change a battery if the LED darkens.
Note 3: "Timer", "Interval timer" and "Elapsed time" etc. change interrupt of once per 15 seconds to interrupt of once per 1.875 seconds. Please forgive me because the purpose is to decrease a consumption electric current though you wait a little for that. When returning interrupt of once per 1.875 seconds to interrupt of once per 15 seconds, input of the microswitch isn't accepted. When it was so, please input once again after you wait for about 15 seconds.

1, [-][-] "Lock"
The microswitch can't be input any more about one minute later.

2, [-][1] "Alarm"
For about one second, an alarm rings. Please push the microswitch for about one second. Next, please push the microswitch for about 0.1 seconds. Please choose one for the items to set up from the following (A) to (K), and push the microswitch, before disappearing, if the LED lights up. In addition, please choose one by the next setting and push the microswitch before the LED disappear because the LED turns on if there is different setting. Please repeat itself until you input all the necessary setting. Finally, please do not touch it from lighting of the LED to disappearing. Order of the set items is unrelated. Only the value input at the end is effective when inputting it 2 times or more by the same form. The alarm rings only once when the setting of following (D) or (E) is not used. While the alarm is ringing or the LED lights, please keep pushing the microswitch until the alarm begins to ring again to stop the setting of the repetition of the alarm (setting that uses following (D) or (E)). You can set 41 alarms. More than 42 alarms are overwritten from old setting. In order not to forget to take medicine, or in order not to forget an anniversary, or in order not to forget various promises, please use it. If it is setting of less than 1 hour now, the setting of "o'clock" is unnecessary and is all right only by setting of "minutes". If it is a setup of less than 24 hours from now on, it is OK only at a setup of "o'clock" and "minutes". If it is a setup for less than 1 month from now on, it is OK only at a setup of "day", "o'clock" and "minutes". For example, the time of now assumes it 12:30PM. When you want to sound an alarm once at 1:00PM, please push the microswitch with the procedure of [-][1]. Passing a little, when the LED lights up, and please push with the procedure of [-]. The alarm can be set only by it. You easily can set the alarm to ring every hour. First the microswitch is pushed with the procedure of [-][1]. If the LED lights up, next it is pushed with the procedure of [-]. If the LED lights up again, it is pushed with the procedure of [-][-][-]. Finally, please wait until turning it off when the LED lights.

-The setting items-
(A) : [a] = a (minutes)
(B) : [b][-] = b (o'clock)
(C) : [-][c] = c (day)
(D) : [-][-][-] = Even if the alarm rings, this setting is not canceled.
(E) : [-][1][-] = Every Sunday, [-][2][-] = every Monday, [-][3][-] = every Tuesday, [-][4][-] = every Wednesday, [-][5][-] = every Thursday, [-][6][-] = every Friday, [-][7][-] = every Saturday, [-][8][-] = every Monday-Friday and [-][9][-] = every Monday-Saturday
(F) : [e][-][f] = e *10+ f (minutes)
(G) : [j][-][h][-] = j (o'clock) h *10 (minutes)
(H) : [-][i][-][k] = i (month) k (day) (e.g.: i=1 January, i=2 February, i=3 March, i=4 April, i=5 May, i=6 June, i=7 July, i=8 August, i=9 September, i=10 October, i=11 November and i=12 December)
(I) : [l][-][m][-][n] = l (o'clock) m *10 + n (minutes)
(J) : [o][-][p][-][q][-] = o *10 + p (o'clock) q *10 (minutes)
(K) : [r][-][s][-][t][-][u] = r *10 + s (o'clock) t *10 + u (minutes)

3, [-][2] "Alarm"
For about 5 seconds, an alarm rings. Please push the microswitch for about one second. Next, please push it for about 0.1 seconds. Please repeat it 2 times. The others are same as [-][1].

4, [-][3] "Alarm"
For about 15 seconds, an alarm rings. Please push the microswitch for about one second. Next, please push it for about 0.1 seconds. Please repeat it 3 times. The others are same as [-][1].

5, [-][4] "Alarm"
For about 30 seconds, an alarm rings. Please push the microswitch for about one second. Next, please push it for about 0.1 seconds. Please repeat it 4 times. The others are same as [-][1].

6, [-][5] "Alarm"
For about one minute, an alarm rings. Please push the microswitch for about one second. Next, please push it for about 0.1 seconds. Please repeat it 5 times. The others are same as [-][1].

7, [-][6] "Alarm"
For about 3 minutes, an alarm rings intermittently. Please push the microswitch for about one second. Next, please push it for about 0.1 seconds. Please repeat it 6 times. The others are same as [-][1].

8, [-][7] "Alarm"
For about 5 minutes, the LED flashes on and off. Please push the microswitch for about one second. Next, please push it for about 0.1 seconds. Please repeat it 7 times. The others are same as [-][1].

-Concrete examples-

For instance, it is 10:30AM, Thursday, December 23 now.

Example 1:
When you want to sound the alarm only once by about one second at 11:00AM, please push the microswitch with the following procedure.
1,[-][1]
2,(the LED turns on when it passes for about 5 seconds.)
3,[-]
4,(the LED lights, and please wait until disappearing.)

Example 2:
When you want to sound the alarm only once by about 5 seconds at 10:40AM, please push the microswitch with the following procedure.
1,[-][2]
2,(the LED turns on when it passes for about 5 seconds.)
3,[4][-][-]
4,(the LED lights, and please wait until disappearing.)

Example 3:
When you want to sound the alarm only once by about 15 seconds at 1:00PM, please push the microswitch with the following procedure.
1,[-][3]
2,(the LED turns on when it passes for about 5 seconds.)
3,[13][-]
4,(the LED lights, and please wait until disappearing.)

Example 4:
When you want to sound the alarm by about 30 seconds at 1:20PM every day, please push the microswitch with the following procedure.
1,[-][4]
2,(the LED turns on when it passes for about 5 seconds.)
3,[13][-][2][-]
4,(the LED turns on when it passes for about 5 seconds.)
5,[-][-][-]
6,(the LED lights, and please wait until disappearing.)

Example 5:
When you want to sound the alarm by about one minute at 2:35PM every Saturday, please push the microswitch with the following procedure.
1,[-][5]
2,(the LED turns on when it passes for about 5 seconds.)
3,[14][-][3][-][5]
4,(the LED turns on when it passes for about 5 seconds.)
5,[-][7][-]
6,(the LED lights, and please wait until disappearing.)

Example 6:
When you want to sound the alarm by about one minute at 8:40PM every Monday-Friday, please push the microswitch with the following procedure.
1,[-][5]
2,(the LED turns on when it passes for about 5 seconds.)
3,[2][-][-][-][4][-]
4,(the LED turns on when it passes for about 5 seconds.)
5,[-][8][-]
6,(the LED lights, and please wait until disappearing.)

Example 7:
When you want to sound the alarm intermittently by about 3 minutes at 10:58PM on the 19th every month, please push the microswitch with the following procedure.
1,[-][6]
2,(the LED turns on when it passes for about 5 seconds.)
3,[2][-][2][-][5][-][8]
4,(the LED turns on when it passes for about 5 seconds.)
5,[-][19]
6,(the LED turns on when it passes for about 5 seconds.)
7,[-][-][-]
8,(the LED lights, and please wait until disappearing.)

Example 8:
When you want to blink the LED by about 5 minutes at 6:58AM on December 24 every year, please push the microswitch with the following procedure.
1,[-][7]
2,(the LED turns on when it passes for about 5 seconds.)
3,[6][-][5][-][8]
4,(the LED turns on when it passes for about 5 seconds.)
5,[-][12][-][24]
6,(the LED turns on when it passes for about 5 seconds.)
7,[-][-][-]
8,(the LED lights, and please wait until disappearing.)

9, [-][8] "Timer"
The timer from 1 to 99 minutes. Please push the microswitch for about one second. Next, please push it for about 0.1 seconds. Please repeat it 8 times. Please choose one among (A) mentioned above or (F) by necessary setting before it disappears after the LED turned on, and push the microswitch. When the microswitch is pushed after the LED lights up again, it starts. "Timer" and "Interval timer" can't be used at the same time. In order to cancel "Timer" on the way, 0 minute is again set by "Timer". As for the maximum error margin becomes plus-minus 1.875 seconds because it wake-up once every 1.875 seconds.

10, [-][9] "Interval timer"
The interval timer from 1 to 99 minutes. Please push the microswitch for about one second. Next, please push it for about 0.1 seconds. Please repeat it 9 times. Please choose one among (A) mentioned above or (F) by necessary setting before it disappears after the LED turned on, and push the microswitch. When the microswitch is pushed after the LED lights up again, it starts. When it's pushed once again, it stops. As for the maximum error margin becomes plus-minus 1.875 seconds because it wake-up once every 1.875 seconds.

11, [-][10] "Correction"
It's corrected at 0 seconds. Please push the microswitch for about one second. Next, please push it for about 0.1 seconds. Please repeat it 10 times. In the case of 29 or less seconds, it is rounded down, and in the case of 30 seconds or more, it is rounded up. Please push the microswitch according to the time signal after LED lights. The error margin is adjusted to plus-minus about 20 seconds for one month.

12, [-][11] "Elapsed time"
It informs you of the elapsed time until 99 minutes every one minute. Please push the microswitch for about one second. Next, please push it for about 0.1 seconds. Please repeat it 11 times. When the microswitch is pushed after the LED lights, it starts. When it's pushed once again, it stops. As for the maximum error margin becomes plus-minus 1.875 seconds because it wake-up once every 1.875 seconds.

13, [-][12] "Time now"
It informs you of the time now every one minute. Please push the microswitch for about one second. Next, please push it for about 0.1 seconds. Please repeat it 12 times. When the LED lights up and goes out, it starts. When it's pushed once again, it stops. Even if you do not move your eyes, you can know time now.

14, [-][13] "Alarm set"
Please push the microswitch for about one second. Next, please push it for about 0.1 seconds. Please repeat it 13 times. About 5 seconds later, the LED will light up. Please push the microswitch. When pushing, week, o'clock and minute are set to an alarm.

15, [-][14] "Correction"
It's corrected at 0 minutes and 0 seconds. In the case of 29 or less minutes, it is rounded down, and in the case of 30 minutes or more, it is rounded up. Please push the microswitch for about one second. Next, please push it for about 0.1 seconds. Please repeat it 14 times. Please push the microswitch according to the time signal after the LED lights. Other items are just same as [-][10].

16, [-][15] "Clear"
All set time of the alarm is deleted. Please push the microswitch for about one second. Next, please push it for about 0.1 seconds. Please repeat it 15 times. When the LED lit up and was turned off, the program is completed.

17, [-][16] "Time set"
Please set the current time. The microswitch can't be input for 15 seconds after it's set.

18, [-][17] "Release"
It is canceled, in order that you may enable it to input again with the microswitch, when it is in the state where the microswitch was locked using [-][-]. Please push the microswitch for about one second. Next, please push it for about 0.1 seconds. Please repeat it 17 times.

Step 2: Hex File of Beta 2 Program


-Hex file of beta 2 program for PIC12F683 (8-Pin Microcontroller made by Microchip Technology)-

:020000040000FA
:1000000085012B258316462E8D288207B12CEE2DD7
:10001000622DE62B662DE62BB52D602C2F2C7B2C2C
:10002000322CE32B492C892DA92DB12C4E2C6C2C74
:100030005A2C5C2C8207080002342034403480346F
:10004000F634FD34FE34033C03199229033E0319B0
:1000500033282B088207B12CE02AEA2AF42A042E3E
:10006000C12E632A572F2B080319B12C033C031C04
:10007000B12C11252B088207B12CC32A3B2E992CB9
:100080004302031CA82A82074E2A8B2BE5294E2AFD
:100090004E2AA52B4E2AC42F7E2A852AA52B9F2ABD
:1000A000A52B031D5628CD1BB12C2D2F073C031863
:1000B000872F103E031CB12C8207B12C452D952AA9
:1000C0007128A42A1D2A492D3510C819B12C0230D7
:1000D000B6000A306E28EF2FA013F32FFA24092759
:1000E000A52B351465282708031D7828303084286F
:1000F000293084288207882873288828832888281C
:1001000083288828882831304B02031C3629272968
:1001100032308428882883288828F4000308830143
:10012000F7000C1CD629470810108E0703188F0AF9
:1001300045088F0710140C104A123108013C0319AE
:10014000B828C81D712A481EAA28C81EAA286030CF
:100150002525C812B30BC2280830B3003108023C71
:10016000031DC328C811CD14F018CD103F30BC2892
:100170000830B300C8150F30101090000C10101488
:10018000B101712A4A164D1BCB28C9080319CA2888
:10019000C90BCB284D17C81C712A3A08260403192D
:1001A000702A0130A60203180301BA023A08260495
:1001B0000319F228481E712ABA081F30031DEE28C1
:1001C0002608F800F80D0F300318EE28F80D073058
:1001D0000318EE28F80D031C9D2D03302605031D82
:1001E000712A9F2DA01F6F2AB51B692AB5170330EE
:1001F0006D2A05251322EF23CD10CD13CA14C11586
:10020000C112F2213516C40A4408033CB51503187F
:100210003629C4012015B51134081A24B400593CFC
:1002200003183629B40137081A24B700233C0318F1
:100230003629B70142081A24C200073C03182229B4
:100240000130C2004B081A24CB002D037A2801305C
:10025000CB002D081A24AD00123C031836290130BA
:10026000AD00A70A2708033C03180800CD1C3D2950
:10027000CD10F0301625A201D629A01C7029201916
:100280005B29A019B629D629C303C3036430CE0065
:10029000C830BB00C110FC0107303F0203185429CD
:1002A00001305302031C812C4110AB08031D840A4A
:1002B000AB0A8001942CA0152011A0123408B200C2
:1002C000031D9D29A01637081926B2000C303202F2
:1002D0000318B200320803190C30B200B20E9D2987
:1002E000CA1ED629A90F7529B90AAE0A2E081F39C8
:1002F00003199829B208031DB629D629FE00FB036D
:100300007B088B1383169B007E089A001C155530C2
:100310009D00AA309D009C141C119C188D298B17E0
:10032000831208002B08093C031DB12C0D306E28E8
:1003300032081A240318702CB200A801AA01B001D7
:10034000320EAF0032080F39031DA9290F30AF0557
:10035000B629043C031CAE29043CB029A80AFF3C82
:10036000AA000F302F05031DB000AF01AF0803191D
:10037000FD2CAF03E426031CC624D629FE30F0056D
:10038000AC01831681168B129029CF254A15C81D02
:10039000CE293108023C031D0800B1014A110800B2
:1003A000B0080319D629B003403016250B1D062AC4
:1003B0000B11481CFE29201CF929AC080319062A38
:1003C000AC0BF9294810BE21FD29CE080319A52B35
:1003D000CE0BA52BA030E526031CE524EF23802BB4
:1003E000D0242017F030392AE524FF0BB62FAE2594
:1003F000172B0130F0068519F00413254A1F062A31
:10040000AC0B062A481CC02111254A138C1CA52BB5
:100410008C100730CD1D4028351D40283511240291
:100420004128F223F024EF23CA1F192A5024CA13AB
:100430000800F01F232AF013252A2011A0110830EC
:10044000B60012304F2D351B0800E824481A2D2A1B
:10045000CD1F201ECD1ECB250727A201CE01BB013B
:100460002B25FF30D300BF01F0130800E030392AFC
:100470008030E526031808000230F004132D023006
:100480004402031C412C0330C4000130C707031889
:10049000C50AFF3010108F00E4257A2C08240318B9
:1004A000A52B1125B12C6408093C031C0800600829
:1004B000233C031C08006208053C031C080060087C
:1004C000BD00031408005F23031CB12C640EBE00A2
:1004D0005E2FB5134008BA002508A600712A4815FA
:1004E000C8104A1A3629CD1F0229C60B0229C8177F
:1004F000C60A051DF928C11D05250229C819A52B05
:100500004A13C0213C22CA15562CC81DA52BCA1B54
:10051000912ACA17EE233C22F424A200CA163517EA
:100520007B2C08240318A52B4F2CD0241125C81090
:1005300048123513CB250530B6000F306F28C81D83
:10054000A52BA014EF23522C0430B60007306E28E0
:10055000C118992BCE080319602FCE0B602FCD192F
:10056000B52A38223608031D23282B08023C031D18
:10057000B12C6008031DB12C6108CD1D5128173C1A
:1005800003197E2FB32C60080319B12C993C031C6E
:10059000B12C60081926A600260E0F39BA00260EC7
:1005A000F039A6000310A60DBA0D03302602A500EF
:1005B0003A08031C3A03C000C01BB12C0E306E2851
:1005C0006008BE0003195E2F603C0319BE01031CC6
:1005D000B12C5E2F6108031D342B6008233C031CE3
:1005E000B12C5F22BE015E2F6108031D272B60081E
:1005F000620403192B2B6008053C031CB12C620814
:10060000093C031CB12C600EBE006208BE075E2FC1
:10061000E72703183E2BF20B082BE524362219306E
:10062000F200E72703183E2BF20B112B222541196C
:100630001D2BFF30FE007B088121A201CD127A081C
:10064000A400CD190301C300FD0B3A2BB72E61089E
:10065000103C031CB12C6108CC005E2F5722031CF8
:10066000B12C620EBE005E2F313C031CB12C610820
:10067000A1005E2F0630FB07352FAE25E52422258D
:10068000F223C11E172B192B2408C3004D1A0B127D
:10069000562C24253608031D4F2BCD1B552C063C0C
:1006A000031D712B481FB12CD0244D143908BA00FA
:1006B0002908A600D52A6608093C031C0800600822
:1006C000023C031C08006208093C031C0800640883
:1006D000053C031C0800600EBD006208BD07031442
:1006E000080052080319B12CFE3C031CB12C3E0A31
:1006F0000319B12C3E08593C031CB12C4116C817F4
:10070000E924C818882BCA1A892BA018892BCB2555
:1007100007272D22A52B411DA52B530A0319A52B15
:100720008B243F08643C0318A52B3122D424C11626
:10073000A52B530A0319A52B8B245308013C03183E
:10074000A52B3F08573C031C512A0B1E7B2C8B1CEE
:100750007C2C8B10F0134308063C0318B82BCD19E2
:100760007B2C430805288316011081100111902964
:10077000FD3ECD1DBD2B031C7B2CC30AB12B3822A3
:1007800003187B2C3726CC00BD00BE00D200B6017A
:10079000AD2483168C1483128C1012159101E82B52
:1007A000D4247208FD3C031D082B4D111E30FF00A0
:1007B000C621C819A32DB524C11D992DB10803194F
:1007C0003D2BB1013E2BF0130530AC24CD1D11257E
:1007D000831601138312C114FA247B2C20128B1070
:1007E0000B160800CD1908000519F42B0800B51DDB
:1007F000312F2013B51CEE2EF021B5104508FE0058
:10080000003081214708FE00013081217D25FE2E28
:100810008A24CD19132C5308083C031808003F08FC
:10082000503C031808000310312A2B08073C031C16
:10083000B12C7B2CF9000130FC007C08F907FC018D
:10084000FC0D8318FB2D0630F9070318FC0A831CE6
:10085000F902FD2D2B08093C031CB12C7B2CE5244F
:10086000C110972DF01311250727E924B514351C65
:100870003F2A30303402031C402C5930B400432A44
:10088000B4010130C7020301031C0130C502DF259A
:100890007A2CC11508300927C112C92BF424CA13B8
:1008A000113009273517F0131125A201E924CA1BBD
:1008B00008007B2CA010712C32264D126030722C57
:1008C00037264208CC003708BD003408BE0030305F
:1008D000D2004116C817972D29083904031D48175F
:1008E000CA12403025252308E526031CE5240727E6
:1008F000CB253513A2018B1077088300F40E740EFC
:100900000900AB080319902C411C8F2C00081A24F5
:100910008000942CF017BF0F8E2CD30A0800840A95
:100920004114AB0A013080002B080F3C031CAD2C96
:1009300008006108031DB12C60080319B12C093CA3
:10094000031CB12C6208093C031CB12C600EA600EC
:100950006208A6072608CA2A0927AB01603084006E
:100960000800CD1DB92CC301562C0130C81DB100A3
:100970000800C525A030E52603187B2C0B12112595
:10098000D424093009271230CE007B2C3030A01A35
:10099000903083160114DF2CD030AC002014D52CFD
:1009A000CD1908000B1208002010B3234814831639
:1009B00081120B118B169029883083160110811437
:1009C00001118312AC002014D62C4810BE21132D27
:1009D000E62412118C1083168C10831601179029AF
:1009E000E524FC30F005132D3122B901A901B20133
:1009F000AC01AE01D301BF010800A8080319092DFD
:100A0000A803E426031CDC24D629E524FD30F005E8
:100A1000132DAA080319D029AA03E426031CCC2409
:100A2000D629FD30F005700885000800E52603187A
:100A300008006030AC00B323D7244A173C2A0230A8
:100A4000F004132DE030252D8030E5260318080032
:100A5000FD30F005132D07309900831669308F00A3
:100A60003C3085009F01C33092000C140B17902975
:100A70000530FB002A26FD002A26FD022A26FD025B
:100A80002A26FD022A26FD0208000330B6000B309C
:100A90006E281125CA130730B6001030201609271A
:100AA000D0243513B524A52B3825031D6F2D043014
:100AB000FB002A26CF002A26D1002A26C7002A2694
:100AC000C5000800CD1D11254621672D4421ED24C8
:100AD0007C18B12C2B08073C031CB12C7B2C043058
:100AE000FB000030CF007E210530D1007E21073091
:100AF000C7007E211030C5007E210430FB002A266D
:100B0000BC002A26BC072A26BC072A26BC07B51625
:100B10000800DF256008AD006208CB006408C20051
:100B20006608B7006808B4000230A700411707271D
:100B3000532CB108031DDC2BE12F2618712AC8168F
:100B400060303922712A0830D62F3C22092403183C
:100B5000D22F0D271330A01F972D512C201A4A1188
:100B6000201202304A1DB1000800ED2444217C18F7
:100B7000B12C3608033C03192A2C033E031D152C07
:100B80002B08033C031CB12C7B2CC8180800CA1A84
:100B90000800A01808000230C819B1000800481267
:100BA000CD19D82D43080319D82D053C031835134A
:100BB000112235174D16D024C030A200D42CC40108
:100BC000450810108F0047088E0010140800FA0323
:100BD0007A082C2EE725FF00013E0800CD19C82B0E
:100BE000B108031DF92D411BF92DCA19F92DB51CAA
:100BF000BF2B07277B2C0630F9076030F907031855
:100C0000142E7C1CF902162E630803192E2B610882
:100C1000D0000319B12C123C031CB12C6308A100B5
:100C2000313C031CB12C5E2F0130FC00FC0C790818
:100C30000800FC00F039F9000310F90C7908F30002
:100C40000310F90C0310F90C7908F3077C080F392D
:100C500073070800FB037B0883169B001C141A080B
:100C600083120800A013B513C81048110800FF3004
:100C7000D000A10008006108031DB12C6008031911
:100C8000B12C093C031CB12C600ECA2AF030810043
:100C900083127A3092000C103F309000B501F001C1
:100CA000B101C101C801CA01A001CD012C22051D5D
:100CB000572E54258B17EF232018602E4A1F632EC2
:100CC000AC08031D602EC81B692E1219692E630023
:100CD0000000CA1C742ECA10C813E527F124CD15D4
:100CE000C301A20112193515B51E7B2EB5123C08A1
:100CF000FE0004308121411EB32E4112C8130F3073
:100D0000FB005108FD007B082C26013E03199E2E96
:100D10000630FB07FD0B832E5108283C031C932E45
:100D2000D10AC1179E2E4F080319982E063E0318AC
:100D30000F30CF00FB00FE0003308121FB0A520878
:100D40007E213E087E213D087E214C087E2121081F
:100D50007E2150087E21C11FB22EC1135108FE0012
:100D6000023081217D25351EB72E3512F72BB51F98
:100D7000CC2EC521B51FC92ECD19BA2E051DBA2EF0
:100D8000DA2E5322031CB12C620EBE006408BE078B
:100D90005E2FE5244816E12E481D5C2EC5216030EB
:100DA000A6000E274819DA2ECA18DA2ECD19D22E2F
:100DB000051DD22EE524A01B0727C7253226F223C6
:100DC00035134D12A2015B2E4030A30022020319FD
:100DD0000310031808002308A2000800411F112F68
:100DE000F02141130A30FB0068087E2166087E214D
:100DF00062087E2160087E2106307E21201FF72BAD
:100E0000E527A201FD30F0051325EF23B72EB6012B
:100E10000301CD1DC300A40008004816C8144811E2
:100E20000800CA1DB72ECA110A30FA00FF30FE00B2
:100E30007A082C26013E03191F2F7A088121FA0F08
:100E4000182F4813FE01033081210530FE000230C7
:100E500081215425F1242C225B2E0430C600CD17AD
:100E6000822F0F30FB005108FD007B08FA002C2672
:100E7000F200720A0319242BE7253402031D242BE8
:100E8000EA250319472F7F083702031D242B411140
:100E9000EA250319942F41157F080319942F073C65
:100EA000031C732F7F0842020319942F242B5B230A
:100EB000031CB12C640EBE006608BE070430AC24CF
:100EC000BB080319A52BBB0BA52BEF23CD1D492B6D
:100ED0004A1C562C11254A10CD11CD1E442B0C3026
:100EE000C300C111562C013E031D8D2F4208013C49
:100EF0000319242B063E0319242B942F0230F006ED
:100F000013254A140630BB000B12C301602F0130B9
:100F1000B60061081A20D2005E2F013E031D942FF7
:100F20004208013C0319242BEA2503199B2F7F0853
:100F30004B02031D242BEA250319A22F7F082D0243
:100F4000031D242B11222408FA000301CD1D0C30AF
:100F50000927CD164A13C111E030A2007208FE3CE9
:100F6000031DD02B36224D153330D72B0230C9004C
:100F70004D13121D63000000C1193D2B4D1FB92FE9
:100F80004D1DD42F3622D52FC81DA52B8A244D1CCC
:100F9000A52D5308031DA62D3F08643C031DA52B5A
:100FA0003C22EF233517A52BD42401304D13C90063
:100FB0004D1DDD2F121D63000000C1193D2B4D1F7B
:100FC000D82F4D1DF4292225F5293230E82F843001
:100FD000C111F500F101C11DFA2F03140800C81852
:100FE000B12CA017B5134D100630B600BA01A601FA
:100FF000B5245E2FF10BEB2FF50BEA2F0310080041
:084000000000000002000000B6
:02400E00C430BC
:104200006D0078006400770064006E00FF00FF001E
:10421000FF00FF00FF00FF00FF00FF00FF00FF00A6
:10422000FF00FF00FF00FF00FF00FF00FF00FF0096
:10423000FF00FF00FF00FF00FF00FF00FF00FF0086
:10424000FF00FF00FF00FF00FF00FF00FF00FF0076
:10425000FF00FF00FF00FF00FF00FF00FF00FF0066
:10426000FF00FF00FF00FF00FF00FF00FF00FF0056
:10427000FF00FF00FF00FF00FF00FF00FF00FF0046
:10428000FF00FF00FF00FF00FF00FF00FF00FF0036
:10429000FF00FF00FF00FF00FF00FF00FF00FF0026
:1042A000FF00FF00FF00FF00FF00FF00FF00FF0016
:1042B000FF00FF00FF00FF00FF00FF00FF00FF0006
:1042C000FF00FF00FF00FF00FF00FF00FF00FF00F6
:1042D000FF00FF00FF00FF00FF00FF00FF00FF00E6
:1042E000FF00FF00FF00FF00FF00FF00FF00FF00D6
:1042F000FF00FF00FF00FF00FF00FF00FF00FF00C6
:10430000FF00FF00FF00FF00FF00FF00FF00FF00B5
:10431000FF00FF00FF00FF00FF00FF00FF00FF00A5
:10432000FF00FF00FF00FF00FF00FF00FF00FF0095
:10433000FF00FF00FF00FF00FF00FF00FF00FF0085
:10434000FF00FF00FF00FF00FF00FF00FF00FF0075
:10435000FF00FF00FF00FF00FF00FF00FF00FF0065
:10436000FF00FF00FF00FF00FF00FF00FF00FF0055
:10437000FF00FF00FF00FF00FF00FF00FF00FF0045
:10438000FF00FF00FF00FF00FF00FF00FF00FF0035
:10439000FF00FF00FF00FF00FF00FF00FF00FF0025
:1043A000FF00FF00FF00FF00FF00FF00FF00FF0015
:1043B000FF00FF00FF00FF00FF00FF00FF00FF0005
:1043C000FF00FF00FF00FF00FF00FF00FF00FF00F5
:1043D000FF00FF00FF00FF00FF00FF00FF00FF00E5
:1043E000FF00FF00FF00FF00FF00FF00FF00FF00D5
:1043F000FF00FF00FF00FF00FF00FF00FF00FF00C5
:00000001FF

--Immunity from responsibility--

You can use this program free of charge until December 31 of this year from today. February 29 doesn't exist. Since all Program Memory (2K Words) are used up, please pardon it though some bugs remain still.