Our clock project
Dependencies: SPI_TFT_ILI9341 TFT_fonts Adafruit_RTCLib RTC-DS1307 TSI
IoT Clock
We have been given a task to design a clock with internet features, the 'Internet Clock'. First of all, we identified what features we want:
Display: Split into 4 parts:
- Analogue clock - the good ol' fashioned circle display, complete with minute, hour and second hands.
- Digital clock - equipped with date for the modern human.
- Weather display - for those who cannot be bothered to look out of the window.
- Alarm - just what you need when you have to get up or be somewhere.
Wifi module:
- For collecting data for weather, alarm times and so it can be an 'Internet Clock'.
Speaker:
- To make the annoying sound to let you know your alarm is going off.
Range finder:
- To wave your hand in front of to turn the alarm off, because pressing a button is too last centurary.
The roles:
- Soroush's first task was to get the LCD screen to work. Meanwhile Adam sorted out the speaker system.
- When these were done, Adam worked on the screen to display a clock face and date/year. Soroush then connected the wifi module to extract data for weather, location and date. Connecting the wifi module.
- The next part was to get the range-finder hooked up and responding to a hand passing, and switch the alarm off.
- Finally, it was time for assembly.
Difficulties: There were many issues faced throughout the project. First of all, Adam's coding knowledge was a lot less than Soroush's which slowed down some completion of tasks. Although, this did help us sort out the roles. Next was the wifi connectivity which caused several problems during the project, and we couldn't get the connection or fetch data, which further slowed the process. Another difficulty was finding the range-finder's set-up page for mbed. However, when we got past these set backs we managed to put everything together quickly, All the hardware wired in.
Outcome:
- Our LCD screen has 2 displays:
- 1 An analogue clock filling the screen.
- 2 An analogue clock, date and year, weather and location, and alarm time.
This is changed by holding (not passing quickly) your hand in front of the range-finder.
- An RTC to keep track of the time rather than collecting the information from then internet. However, we have had a lot of problems setting this up, and it doesn't seem to respond.
- Wifi is also not connected, so we have the default date, time, weather and location.
- You are able to change the alarm time by swiping the touch pad on the back.
Perhaps given more time we'd be able to fix these problems. But a key point is that we have got all the other features working, except the correct time.
Display.cpp@18:2afeed90c051, 2017-05-25 (annotated)
- Committer:
- sfaghihi
- Date:
- Thu May 25 03:30:05 2017 +0000
- Revision:
- 18:2afeed90c051
- Parent:
- 17:7ba6c8e4945b
- Child:
- 19:450dbcda696e
Maximum features without wifi (or the lack of memory)
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
amilner1 | 15:452425c099ef | 1 | |
sfaghihi | 2:56a27b66d03a | 2 | #include "Display.h" |
sfaghihi | 2:56a27b66d03a | 3 | |
sfaghihi | 17:7ba6c8e4945b | 4 | static const struct { |
sfaghihi | 17:7ba6c8e4945b | 5 | unsigned int width; |
sfaghihi | 17:7ba6c8e4945b | 6 | unsigned int height; |
sfaghihi | 17:7ba6c8e4945b | 7 | unsigned int bytes_per_pixel; /* 2:RGB16, 3:RGB, 4:RGBA */ |
sfaghihi | 17:7ba6c8e4945b | 8 | unsigned char pixel_data[80 * 80 * 2 + 1]; |
sfaghihi | 17:7ba6c8e4945b | 9 | } weat_ico = { |
sfaghihi | 17:7ba6c8e4945b | 10 | 80, 80, 2, |
sfaghihi | 17:7ba6c8e4945b | 11 | "\"\000\"\000\"\000\"\000\"\000#\000#\000$\000$\000%\000%\000F\000F\000G\000H\000H\000I\000I\000J\000j\000j\000k\000k" |
sfaghihi | 17:7ba6c8e4945b | 12 | "\000k\000l\000l\000l\000l\000l\000m\000m\000m\000m\000\215\020\215\020m\000m\000m\000m\000m\000m\000m\000m\000m\000" |
sfaghihi | 17:7ba6c8e4945b | 13 | "m\000m\000m\000m\000l\000l\000l\000l\000l\000k\000k\000k\000j\000j\000I\000I\000H\000H\000G\000G\000F\000E\000%\000$\000" |
sfaghihi | 17:7ba6c8e4945b | 14 | "$\000#\000#\000\"\000\"\000\"\000\"\000\"\000\"\000\"\000\"\000\"\000\"\000\"\000\"\000\"\000#\000#\000$\000$\000" |
sfaghihi | 17:7ba6c8e4945b | 15 | "%\000F\000F\000G\000G\000H\000I\000I\000j\000j\000k\000k\000k\000l\000l\000l\000l\000m\000m\000m\000m\000m\000m\010m\000" |
sfaghihi | 17:7ba6c8e4945b | 16 | "\255\030N\000.\000\316\030n\000n\000n\000n\000n\000n\000n\000n\000m\000m\000m\000m\000m\000m\000m\000l\000l\000l" |
sfaghihi | 17:7ba6c8e4945b | 17 | "\000l\000k\000k\000k\000j\000J\000I\000I\000H\000H\000G\000F\000F\000%\000%\000$\000#\000#\000#\000\"\000\"\000\"\000\"" |
sfaghihi | 17:7ba6c8e4945b | 18 | "\000\"\000\"\000\"\000\"\000\"\000\"\000#\000#\000$\000%\000%\000F\000F\000G\000H\000H\000I\000I\000j\000j\000k\000k" |
sfaghihi | 17:7ba6c8e4945b | 19 | "\000l\000l\000l\000m\000m\000m\000m\000m\000m\000n\000n\000n\000\256\030\016\000n\000\316\040\017\000\256\030" |
sfaghihi | 17:7ba6c8e4945b | 20 | "n\000\216\010\216\000\216\000\216\000\216\000\216\000n\000n\000n\000n\000m\000m\000m\000m\000m\000m\000l\000" |
sfaghihi | 17:7ba6c8e4945b | 21 | "l\000l\000k\000k\000k\000j\000J\000I\000H\000H\000G\000G\000F\000%\000%\000$\000$\000#\000#\000\"\000\"\000\"\000\"\000" |
sfaghihi | 17:7ba6c8e4945b | 22 | "\"\000\"\000\"\000\"\000#\000#\000$\000%\000E\000F\000G\000G\000H\000I\000I\000j\000j\000k\000k\000l\000l\000l\000m\000" |
sfaghihi | 17:7ba6c8e4945b | 23 | "m\000m\000m\000m\000n\000n\000n\000\216\000n\000\317\030\017\000-b\305\354\003\365\355\212\020\000\317" |
sfaghihi | 17:7ba6c8e4945b | 24 | "\040\217\000\217\010\217\010\217\010\217\010\217\010\217\010\217\010\217\000\216\000\216" |
sfaghihi | 17:7ba6c8e4945b | 25 | "\000n\000n\000n\000m\000m\000m\000m\000l\000l\000l\000k\000k\000j\000j\000I\000I\000H\000G\000G\000F\000E\000%\000$\000$" |
sfaghihi | 17:7ba6c8e4945b | 26 | "\000#\000#\000\"\000\"\000\"\000\"\000\"\000\"\000#\000#\000$\000%\000%\000F\000G\000G\000H\000I\000I\000j\000k\000k" |
sfaghihi | 17:7ba6c8e4945b | 27 | "\000l\000l\000l\000m\000m\000m\000m\000n\000n\000\216\000\216\000\217\000\217\010\217\010\217\010\260" |
sfaghihi | 17:7ba6c8e4945b | 28 | "\020\020\000\306\344\200\375`\375\"\365\217I\021\000\260\030\220\010\220\010\220\010" |
sfaghihi | 17:7ba6c8e4945b | 29 | "\220\010\220\010\220\010\220\010\217\010\217\010\217\010\217\010\216\000\216\000n\000n" |
sfaghihi | 17:7ba6c8e4945b | 30 | "\000m\000m\000m\000m\000l\000l\000l\000k\000k\000j\000J\000I\000H\000H\000G\000F\000F\000%\000$\000$\000#\000#\000\"\000" |
sfaghihi | 17:7ba6c8e4945b | 31 | "\"\000\"\000\"\000#\000#\000$\000%\000E\000F\000G\000H\000H\000I\000J\000j\000k\000k\000l\000l\000m\000m\000m\000m\000" |
sfaghihi | 17:7ba6c8e4945b | 32 | "n\000n\000\216\000\217\000\217\010\217\010\217\010\220\010\220\000\360\040\021\000\214\253" |
sfaghihi | 17:7ba6c8e4945b | 33 | "`\375B\375B\375\200\375+\304\022\000\361\040\221\000\221\010\221\010\221\010\221\010" |
sfaghihi | 17:7ba6c8e4945b | 34 | "\221\010\221\010\220\010\220\010\220\010\220\010\217\010\217\010\217\010\216\000n\000" |
sfaghihi | 17:7ba6c8e4945b | 35 | "n\000m\000m\000m\000m\000l\000l\000k\000k\000j\000j\000I\000H\000H\000G\000F\000F\000%\000$\000$\000#\000#\000\"\000\"" |
sfaghihi | 17:7ba6c8e4945b | 36 | "\000\"\000#\000$\000%\000E\000F\000G\000H\000H\000I\000j\000j\000k\000l\000l\000l\000m\000m\000m\000n\000n\000\216\000" |
sfaghihi | 17:7ba6c8e4945b | 37 | "\217\010\217\010\217\010\220\010\220\010\220\010\221\010\261\020\022\000\221I\003\365" |
sfaghihi | 17:7ba6c8e4945b | 38 | "`\375@\375@\375@\375@\375pr\023\000\362\040\222\010\222\010\222\010\222\010\222\010" |
sfaghihi | 17:7ba6c8e4945b | 39 | "\222\010\221\010\221\010\221\010\221\010\220\010\220\010\217\010\217\010\217\010\216" |
sfaghihi | 17:7ba6c8e4945b | 40 | "\000n\000n\000m\000m\000m\000l\000l\000l\000k\000k\000j\000I\000I\000H\000G\000F\000F\000%\000$\000$\000#\000#\000\"\000" |
sfaghihi | 17:7ba6c8e4945b | 41 | "\"\000$\000%\000E\000F\000G\000H\000H\000I\000j\000k\000k\000l\000l\000m\000m\000m\000m\000n\000\216\000\217\000\217" |
sfaghihi | 17:7ba6c8e4945b | 42 | "\010\217\010\220\010\220\010\221\010\221\010\221\010\222\010\362\040\023\000\014\304`" |
sfaghihi | 17:7ba6c8e4945b | 43 | "\375#\375B\375B\375C\375`\375\212\334\024\000\324\030\264\010\263\010\263\010\263" |
sfaghihi | 17:7ba6c8e4945b | 44 | "\010\263\010\263\010\222\010\222\010\222\010\222\010\221\010\221\010\220\010\220\000" |
sfaghihi | 17:7ba6c8e4945b | 45 | "\220\000\217\010\217\010\216\000n\000n\000m\000m\000m\000l\000l\000k\000k\000j\000I\000I\000H\000G\000F\000F" |
sfaghihi | 17:7ba6c8e4945b | 46 | "\000%\000$\000$\000#\000\"\000\"\000%\000E\000F\000G\000H\000H\000I\000j\000k\000k\000l\000l\000\255\030\315\040" |
sfaghihi | 17:7ba6c8e4945b | 47 | "\355\040\315\040\216\010n\000\217\000\217\010\220\010\220\010\221\010\221\010\222\010" |
sfaghihi | 17:7ba6c8e4945b | 48 | "\222\010\222\010\323\030\024\000qr`\375`\375`\375`\375`\375`\375`\375`\375\021\223" |
sfaghihi | 17:7ba6c8e4945b | 49 | "\025\000\024!\264\010\264\010\264\010\264\010\264\010\264\010\263\010\263\010\263\010" |
sfaghihi | 17:7ba6c8e4945b | 50 | "\222\010\222\000\261\020\361\040\360(\260\030\217\000\217\010\217\000\216\000n\000m\000m\000" |
sfaghihi | 17:7ba6c8e4945b | 51 | "m\000l\000l\000k\000k\000j\000I\000I\000H\000G\000F\000F\000%\000$\000#\000#\000\"\000%\000F\000G\000H\000H\000I\000j\000" |
sfaghihi | 17:7ba6c8e4945b | 52 | "k\000k\000l\000l\000\255\020\015\000\016\000\016\000\017\000o\000\357\040\320\030\220\010\221\000\221" |
sfaghihi | 17:7ba6c8e4945b | 53 | "\010\222\010\222\010\263\010\263\010\263\010\324\030\024\000k\324\040\375\310\354\251" |
sfaghihi | 17:7ba6c8e4945b | 54 | "\344\252\334\252\334\251\344\350\354\"\375\347\354\365\040\226\000\325\020\265" |
sfaghihi | 17:7ba6c8e4945b | 55 | "\010\265\010\265\010\265\010\265\010\264\010\264\010\264\020\363\040\363\040\063\000\022" |
sfaghihi | 17:7ba6c8e4945b | 56 | "\000\022\000\021\000\260\020\220\000\217\010\217\010\216\000n\000m\000m\000m\000l\000l\000k\000k\000j\000" |
sfaghihi | 17:7ba6c8e4945b | 57 | "I\000I\000H\000G\000F\000%\000%\000$\000#\000#\000F\000G\000H\000H\000I\000j\000k\000k\000l\000l\000\255\030\015\000" |
sfaghihi | 17:7ba6c8e4945b | 58 | "\253\202G\324\351\273\215z\017\000\021\000\021\000\321\030\361\040\222\010\263\010\263" |
sfaghihi | 17:7ba6c8e4945b | 59 | "\010\264\010\264\010\264\020\325\020\025)Tj\225I\326\020\026\000\026\000\027\000\026\000\026" |
sfaghihi | 17:7ba6c8e4945b | 60 | "!\265I\224zv\071\267\000\326\020\266\010\266\010\266\010\266\010\266\010\325\030\025" |
sfaghihi | 17:7ba6c8e4945b | 61 | "!\265\000\025\000\025\000\063)\017\223\255\263\360Y\022\000\261\030\220\000\220\010\217\010" |
sfaghihi | 17:7ba6c8e4945b | 62 | "\216\010\216\000n\000m\000m\000l\000l\000k\000k\000j\000I\000I\000H\000G\000F\000%\000%\000$\000#\000G\000G\000H\000" |
sfaghihi | 17:7ba6c8e4945b | 63 | "I\000j\000k\000k\000l\000l\000\215\020\015\000\355\040\003\365\200\375`\375@\375\306\344\314" |
sfaghihi | 17:7ba6c8e4945b | 64 | "\263\060j\022\000\023\000\263\020\264\010\264\010\325\020\365\040\325\030\026\000\027\000\027" |
sfaghihi | 17:7ba6c8e4945b | 65 | "\000\027\000\027\000\267\000\367\040\367\040w\000\030\000\030\000\031\000\030\000W\000\367\040\027!\327" |
sfaghihi | 17:7ba6c8e4945b | 66 | "\020\267\010\267\010\326\020\027\000\027\000u\000\262z\015\304\006\365`\375\200\375\346" |
sfaghihi | 17:7ba6c8e4945b | 67 | "\354\022)r\000\261\020\220\010\220\010\217\010\217\000\216\000n\000m\000m\000l\000l\000k\000k\000" |
sfaghihi | 17:7ba6c8e4945b | 68 | "j\000I\000H\000H\000G\000F\000%\000$\000$\000G\000H\000I\000J\000k\000k\000l\000l\000m\000\255\030\016\000\255I\"" |
sfaghihi | 17:7ba6c8e4945b | 69 | "\365@\375A\375@\375`\375`\375!\375\250\344n\243T\000\325\030\025!\066\000\027\000\027" |
sfaghihi | 17:7ba6c8e4945b | 70 | "\000\325Q\363\212\320\263M\314\253\334\312\354\351\354\351\354\312\344\214" |
sfaghihi | 17:7ba6c8e4945b | 71 | "\334.\314\261\263\324\202\227A\030\000\030\000\230\000\027!\367\030w\000\224r\357\273" |
sfaghihi | 17:7ba6c8e4945b | 72 | "\311\344@\375`\375`\375A\375A\375@\375Qj\023\000\322\030\221\010\221\010\220\010" |
sfaghihi | 17:7ba6c8e4945b | 73 | "\217\010\217\010n\000n\000m\000m\000l\000l\000k\000k\000j\000I\000H\000G\000G\000F\000%\000$\000H\000I\000J\000j" |
sfaghihi | 17:7ba6c8e4945b | 74 | "\000k\000l\000l\000m\000m\000\216\020N\000N\000\305\354`\375@\375@\375A\375C\375\200\375!" |
sfaghihi | 17:7ba6c8e4945b | 75 | "\375p\243\225\000\066\000\027\000\225Aq\243\214\334$\365`\375\200\375`\375`\375`" |
sfaghihi | 17:7ba6c8e4945b | 76 | "\375`\375`\375`\375`\375\200\375`\375`\375\006\365m\324\063\223\067)\031\000\330" |
sfaghihi | 17:7ba6c8e4945b | 77 | "\010X\000r\243`\375\200\375C\375B\375@\375@\375`\375\005\365\223A\064\000\263\020" |
sfaghihi | 17:7ba6c8e4945b | 78 | "\222\010\221\010\221\010\220\010\217\010\217\010n\000n\000m\000m\000l\000l\000k\000k\000j\000I\000" |
sfaghihi | 17:7ba6c8e4945b | 79 | "H\000G\000F\000E\000%\000H\000I\000j\000k\000l\000l\000m\000m\000n\000\216\010\317\030\020\000h\324`\375A" |
sfaghihi | 17:7ba6c8e4945b | 80 | "\375A\375@\375`\375L\314T\061\026\000\027\000\325Q\017\304\005\365`\375`\375`\375B" |
sfaghihi | 17:7ba6c8e4945b | 81 | "\375B\375B\375B\375B\375A\375A\375B\375B\375B\375C\375A\375`\375`\375`\375" |
sfaghihi | 17:7ba6c8e4945b | 82 | "\347\354\261\263\067\061\031\000\031\000\366Y\214\334`\375B\375@\375A\375`\375\251" |
sfaghihi | 17:7ba6c8e4945b | 83 | "\344\025\000\324\030\264\010\263\010\222\010\222\010\221\010\220\010\217\010\217\010" |
sfaghihi | 17:7ba6c8e4945b | 84 | "\216\000n\000m\000m\000l\000l\000k\000j\000J\000I\000H\000G\000F\000%\000I\000j\000k\000k\000l\000m\000m\000m\000n\000" |
sfaghihi | 17:7ba6c8e4945b | 85 | "o\000\357\040\021\000\313\273\200\375B\375`\375@\375o\243\025\000\026\000\366\030\320" |
sfaghihi | 17:7ba6c8e4945b | 86 | "\263\"\375\200\375`\375B\375B\375A\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 87 | "@\375@\375@\375@\375@\375A\375B\375B\375`\375\200\375\007\365S\233\030\000\031" |
sfaghihi | 17:7ba6c8e4945b | 88 | "\000\030\000\360\273`\375@\375C\375`\375M\314\026\000\365\040\265\010\264\010\263\010" |
sfaghihi | 17:7ba6c8e4945b | 89 | "\222\010\222\010\221\010\220\010\217\010\217\010\216\000n\000m\000m\000l\000l\000k\000j\000I\000" |
sfaghihi | 17:7ba6c8e4945b | 90 | "H\000H\000G\000F\000J\000k\000k\000l\000m\000m\000m\000n\000\216\000\217\000\360\040\021\000.\233`\375`\375" |
sfaghihi | 17:7ba6c8e4945b | 91 | "\040\375\321\202\026\000\026\000Tj\311\344\200\375@\375C\375A\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 92 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 93 | "A\375C\375`\375`\375m\324\267I\031\000\031\000r\243`\375B\375`\375\260\263\027\000" |
sfaghihi | 17:7ba6c8e4945b | 94 | "\026!\265\010\265\010\264\010\263\010\262\010\222\010\221\010\220\010\217\010\217\010" |
sfaghihi | 17:7ba6c8e4945b | 95 | "n\000m\000m\000m\000l\000k\000k\000j\000I\000H\000G\000F\000j\000k\000l\000l\000m\000m\000n\000\216\000\217\010\220" |
sfaghihi | 17:7ba6c8e4945b | 96 | "\010\320\030\022\000Pr`\375\"\375rr\026\000\026\000Q\233@\375`\375C\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 97 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 98 | "@\375@\375@\375@\375@\375A\375C\375`\375\005\365\265\202\031\000\031\000\063\233@" |
sfaghihi | 17:7ba6c8e4945b | 99 | "\375`\375\364\212\030\000\366\040\266\010\265\010\265\010\264\010\263\010\222\010\222" |
sfaghihi | 17:7ba6c8e4945b | 100 | "\010\221\010\220\010\217\010\217\000n\000m\000m\000l\000l\000k\000j\000J\000I\000H\000G\000k\000k\000l\000" |
sfaghihi | 17:7ba6c8e4945b | 101 | "m\000m\000n\000\216\000\217\010\220\010\220\010\261\020\022\000\222I\345\354\322\202\026" |
sfaghihi | 17:7ba6c8e4945b | 102 | "\000\026\000\260\263`\375@\375B\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 103 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 104 | "@\375@\375C\375`\375@\375\063\233\031\000\031\000r\243`\375\066b\030\000\367\030\267" |
sfaghihi | 17:7ba6c8e4945b | 105 | "\010\266\010\265\010\265\010\264\010\263\010\222\010\221\010\221\010\220\010\217\010" |
sfaghihi | 17:7ba6c8e4945b | 106 | "\216\000n\000m\000m\000l\000l\000k\000j\000I\000H\000G\000k\000l\000l\000m\000m\000n\000\217\000\217\010\220\010" |
sfaghihi | 17:7ba6c8e4945b | 107 | "\221\010\262\010\223\000\363\040\323Q\025\000\026\000\317\263`\375A\375A\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 108 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 109 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375B\375@\375`\375S\233" |
sfaghihi | 17:7ba6c8e4945b | 110 | "\031\000\070\000\023\223\227Ax\000\330\020\327\010\267\010\266\010\265\010\265\010\264\010" |
sfaghihi | 17:7ba6c8e4945b | 111 | "\263\010\222\010\221\010\220\010\220\010\217\010\216\000n\000m\000m\000l\000k\000k\000J\000I\000" |
sfaghihi | 17:7ba6c8e4945b | 112 | "H\000l\000l\000m\000m\000n\000\216\000\217\010\220\010\221\010\222\010\223\010\263\010\224\000" |
sfaghihi | 17:7ba6c8e4945b | 113 | "\225\000\026\000\260\253`\375B\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 114 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 115 | "@\375@\375@\375@\375@\375@\375@\375B\375@\375`\375\364\212\031\000\030\000\230" |
sfaghihi | 17:7ba6c8e4945b | 116 | "\000\330\020\330\010\330\010\327\010\267\010\266\010\265\010\264\010\264\010\263\010" |
sfaghihi | 17:7ba6c8e4945b | 117 | "\222\010\221\010\220\010\217\010\217\010n\000m\000m\000l\000l\000k\000j\000I\000H\000l\000m\000m\000n" |
sfaghihi | 17:7ba6c8e4945b | 118 | "\000\216\000\217\010\220\010\221\010\221\010\222\010\263\010\264\000\365\040\026\000\362" |
sfaghihi | 17:7ba6c8e4945b | 119 | "\212`\375A\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 120 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 121 | "@\375@\375@\375@\375@\375@\375B\375`\375\"\375\026Z\030\000\030!\330\010\330\010" |
sfaghihi | 17:7ba6c8e4945b | 122 | "\330\010\330\010\327\010\267\010\266\010\265\010\264\010\263\010\263\010\222\010\221" |
sfaghihi | 17:7ba6c8e4945b | 123 | "\010\220\010\217\010\216\000n\000m\000m\000l\000k\000k\000J\000I\000l\000m\000m\000n\000\217\000\217\010" |
sfaghihi | 17:7ba6c8e4945b | 124 | "\220\010\221\010\222\010\263\010\264\010\325\030\026\000\265I$\365`\375A\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 125 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 126 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 127 | "@\375@\375@\375C\375`\375\252\344\030\000\330\020\330\020\330\010\330\010\330\010" |
sfaghihi | 17:7ba6c8e4945b | 128 | "\330\010\327\010\266\010\266\010\265\010\264\010\263\010\222\010\221\010\220\010\217" |
sfaghihi | 17:7ba6c8e4945b | 129 | "\010\217\010n\000m\000m\000l\000l\000k\000j\000I\000m\000m\000n\000\216\000\217\010\220\010\221\010\222" |
sfaghihi | 17:7ba6c8e4945b | 130 | "\010\223\010\263\010\264\010\365\040\026\000l\324\200\375C\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 131 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 132 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 133 | "@\375@\375C\375`\375\261\263\031\000\030)\330\010\330\010\330\010\330\010\327\010" |
sfaghihi | 17:7ba6c8e4945b | 134 | "\267\010\266\010\265\010\265\010\264\010\263\010\222\010\221\010\220\010\217\010\216" |
sfaghihi | 17:7ba6c8e4945b | 135 | "\010n\000m\000m\000l\000k\000k\000J\000m\000m\000n\000\217\010\217\010\220\010\221\000\262\020\363\040" |
sfaghihi | 17:7ba6c8e4945b | 136 | "\264\010\365\040\026\000\363\212`\375B\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 137 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 138 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 139 | "@\375@\375\"\375\366Q\030\000\370\030\330\010\330\020\330\010\330\010\327\010\267" |
sfaghihi | 17:7ba6c8e4945b | 140 | "\010\266\010\265\010\264\010\263\010\222\010\221\010\220\010\220\010\217\010n\000m\000" |
sfaghihi | 17:7ba6c8e4945b | 141 | "m\000l\000l\000k\000j\000m\000m\000\216\000o\000\220\010\321\030\361\040S\000\024\000\225\000\325\020" |
sfaghihi | 17:7ba6c8e4945b | 142 | "\026\000\252\344`\375B\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 143 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 144 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375B\375`\375" |
sfaghihi | 17:7ba6c8e4945b | 145 | "/\304\030\000\030)\270\000\270\000\030)\370\040\330\020\267\010\266\010\266\010\265\010" |
sfaghihi | 17:7ba6c8e4945b | 146 | "\264\010\263\010\222\010\221\010\220\010\217\010\216\000n\000m\000m\000l\000k\000j\000m\000n\000" |
sfaghihi | 17:7ba6c8e4945b | 147 | "\256\030\357\040\220\010\022\000\023\000\363\040\261\202T\071\027\000\363\212`\375A\375" |
sfaghihi | 17:7ba6c8e4945b | 148 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 149 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 150 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375!\375\026Z\030\000\030" |
sfaghihi | 17:7ba6c8e4945b | 151 | ")\230\000\031\000\031\000\370\030\027!\367\030\266\010\265\010\264\010\263\010\222\010\221" |
sfaghihi | 17:7ba6c8e4945b | 152 | "\010\220\010\217\010\217\010n\000m\000m\000l\000l\000k\000m\000\316\030\017\000\020\000\021\000or\354" |
sfaghihi | 17:7ba6c8e4945b | 153 | "\273\004\365\310\344\225\000\027\000l\324`\375B\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 154 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 155 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 156 | "@\375@\375@\375@\375C\375`\375\320\273\031\000w\071l\324\360\273\066j\030\000\031" |
sfaghihi | 17:7ba6c8e4945b | 157 | "\000\030\000\366\040\326\030\265\010\264\010\263\010\222\010\221\010\220\010\217\010\216" |
sfaghihi | 17:7ba6c8e4945b | 158 | "\000n\000m\000l\000l\000k\000\216\020\017\000\316Y\253\253\247\344@\375`\375\200\375\257" |
sfaghihi | 17:7ba6c8e4945b | 159 | "\253\027\000\025Z#\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 160 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 161 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 162 | "@\375A\375`\375\351\354\027!\030\000m\324\240\375@\375\253\334\222\253\366Q\027" |
sfaghihi | 17:7ba6c8e4945b | 163 | "\000\026\000\325\020\264\010\263\010\222\010\221\010\220\010\217\010\216\000n\000m\000m\000l" |
sfaghihi | 17:7ba6c8e4945b | 164 | "\000k\000\016\000k\243@\375`\375`\375@\375B\375@\375sr\027\000r\243`\375B\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 165 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 166 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 167 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375A\375@\375\264\202" |
sfaghihi | 17:7ba6c8e4945b | 168 | "\031\000\063\233`\375B\375`\375`\375\"\375M\324\325Q\026\000\325\030\264\010\263\010" |
sfaghihi | 17:7ba6c8e4945b | 169 | "\222\010\221\010\220\010\217\000n\000m\000m\000l\000k\000\355(\"\365`\375A\375A\375A\375" |
sfaghihi | 17:7ba6c8e4945b | 170 | "`\375\347\354\065\061\027\000M\314`\375B\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 171 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 172 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 173 | "@\375@\375@\375@\375@\375C\375\200\375\321\263\031\000\066j@\375@\375B\375C\375" |
sfaghihi | 17:7ba6c8e4945b | 174 | "@\375\200\375\213\334\026\000\325\030\264\010\263\010\222\010\221\010\220\010\217" |
sfaghihi | 17:7ba6c8e4945b | 175 | "\010\216\000m\000m\000l\000l\000\016\000\207\334\200\375B\375@\375B\375`\375k\324\026\000" |
sfaghihi | 17:7ba6c8e4945b | 176 | "\366\030\351\354`\375A\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 177 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 178 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 179 | "@\375@\375B\375`\375m\324\030\000\027!\350\354`\375A\375@\375$\375`\375\252\344" |
sfaghihi | 17:7ba6c8e4945b | 180 | "\026\000\325\020\264\020\263\010\222\010\221\010\220\010\217\010\216\000n\000m\000m\000l\000" |
sfaghihi | 17:7ba6c8e4945b | 181 | "\017\000nA\246\344\200\375B\375B\375`\375\356\273\027\000\025Z#\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 182 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 183 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 184 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375A\375`\375\350\354" |
sfaghihi | 17:7ba6c8e4945b | 185 | "\027!\030\000\214\334`\375B\375C\375`\375\040\375\224z\027\000\365\030\265\010\264" |
sfaghihi | 17:7ba6c8e4945b | 186 | "\010\222\010\221\010\220\010\217\010\217\000n\000m\000m\000l\000\316\030\020\000p\000i\324\200" |
sfaghihi | 17:7ba6c8e4945b | 187 | "\375C\375`\375\220\253\030\000\264\202@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 188 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 189 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 190 | "@\375@\375@\375@\375@\375@\375@\375A\375`\375$\365\326Q\031\000/\314`\375$\375" |
sfaghihi | 17:7ba6c8e4945b | 191 | "`\375\347\354Vj\030\000\367\040\266\010\265\010\264\010\263\010\222\010\221\010\220" |
sfaghihi | 17:7ba6c8e4945b | 192 | "\010\217\000n\000m\000m\000l\000o\000\317\030Q\000\022\000\354\273`\375`\375\062\233\030\000\023" |
sfaghihi | 17:7ba6c8e4945b | 193 | "\223`\375A\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 194 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 195 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 196 | "@\375@\375@\375@\375ur\031\000\320\273`\375`\375\213\334w\071\031\000\027!\267\010" |
sfaghihi | 17:7ba6c8e4945b | 197 | "\266\010\265\010\264\010\263\010\222\010\221\010\220\010\217\010n\000m\000m\000l\000\217" |
sfaghihi | 17:7ba6c8e4945b | 198 | "\010\220\000\321\030\262\020\023\000O\233`\375\022\223\030\000R\233`\375B\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 199 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 200 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 201 | "@\375@\375@\375@\375@\375@\375@\375@\375B\375B\375B\375B\375C\375@\375\224" |
sfaghihi | 17:7ba6c8e4945b | 202 | "z\031\000\361\273\240\375\017\304\030\000\070\000\030!\270\010\327\010\266\010\265\010\264" |
sfaghihi | 17:7ba6c8e4945b | 203 | "\010\263\010\222\010\221\010\220\010\217\010\216\000m\000m\000l\000\217\010\220\010\221\000" |
sfaghihi | 17:7ba6c8e4945b | 204 | "\262\020\363\040\025\000\322\202Tj\030\000s\243`\375B\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 205 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 206 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 207 | "@\375@\375A\375B\375@\375`\375`\375\200\375`\375\200\375\200\375\264z\031" |
sfaghihi | 17:7ba6c8e4945b | 208 | "\000\222\253\360\273\031\000\330\010\370\040\330\010\330\010\327\010\266\010\265\010" |
sfaghihi | 17:7ba6c8e4945b | 209 | "\264\010\263\010\222\010\221\010\220\010\217\010\216\000n\000m\000l\000\217\010\220\010\221" |
sfaghihi | 17:7ba6c8e4945b | 210 | "\010\222\010\263\010\364\040\026\000\226\000\030\000\063\223`\375B\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 211 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 212 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 213 | "@\375@\375@\375B\375`\375`\375$\375\253\334\017\304\261\263\222\253\261\263" |
sfaghihi | 17:7ba6c8e4945b | 214 | ".\314Ub\230\000\367\020\030\000\370\020\370\030\330\010\330\010\330\010\327\010\266\010" |
sfaghihi | 17:7ba6c8e4945b | 215 | "\265\010\264\010\263\010\222\010\221\010\220\010\217\010\216\000n\000m\000l\000\217\010\220" |
sfaghihi | 17:7ba6c8e4945b | 216 | "\010\221\010\222\010\263\010\264\010\365\040\026)\030\000\364\212`\375A\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 217 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 218 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 219 | "@\375@\375A\375@\375`\375\350\354q\243\365\070\027\000w\000\267\001\327\001x\001\030\000" |
sfaghihi | 17:7ba6c8e4945b | 220 | "\027\000\030\000\270\000\070!\330\020\330\010\330\010\330\010\330\010\327\010\266\010\266" |
sfaghihi | 17:7ba6c8e4945b | 221 | "\010\265\010\264\010\222\010\221\010\220\010\217\010\216\000n\000m\000m\000\217\010\220\010" |
sfaghihi | 17:7ba6c8e4945b | 222 | "\221\010\222\010\263\010\264\010\265\010\366\040\030\000ur@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 223 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 224 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 225 | "B\375`\375@\375\260\263\026\000\027\001\326s\366\234v\255\226\265\225\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 226 | "V\255\266\224Wk\267\010\030\000\030\031\330\010\330\010\330\010\330\010\327\010\267" |
sfaghihi | 17:7ba6c8e4945b | 227 | "\010\266\010\265\010\264\010\222\010\221\010\220\010\217\010\216\000n\000m\000m\000\217\010" |
sfaghihi | 17:7ba6c8e4945b | 228 | "\220\010\221\010\222\010\263\010\264\010\265\010\326\030\027\000\266I%\365@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 229 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 230 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 231 | "@\375B\375`\375$\365tr\027\000\366{u\265\326\275\266\275\266\265\266\265\266" |
sfaghihi | 17:7ba6c8e4945b | 232 | "\265\266\265\266\265\326\275\266\265\066\245\027c\030\000\370\020\370\020\330\010" |
sfaghihi | 17:7ba6c8e4945b | 233 | "\330\010\327\010\267\010\266\010\265\010\264\010\262\010\221\010\220\010\217\010\216" |
sfaghihi | 17:7ba6c8e4945b | 234 | "\000n\000m\000m\000\217\010\220\010\221\010\222\010\263\010\264\010\265\010\326\020\327\020" |
sfaghihi | 17:7ba6c8e4945b | 235 | "\030\000\312\344`\375A\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 236 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 237 | "@\375@\375@\375@\375@\375A\375`\375#\375\364a\267\000\365\244\326\275\266\265" |
sfaghihi | 17:7ba6c8e4945b | 238 | "\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 239 | "\266\265\266\265\026\204\030\000\330\010\330\020\330\010\327\010\267\010\266\010\265" |
sfaghihi | 17:7ba6c8e4945b | 240 | "\010\264\010\262\010\221\010\220\010\217\010\216\000n\000m\000m\000\217\010\220\010\221\010" |
sfaghihi | 17:7ba6c8e4945b | 241 | "\222\010\263\010\264\010\265\010\266\010\027)\030\000/\314`\375B\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 242 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 243 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375`\375\323" |
sfaghihi | 17:7ba6c8e4945b | 244 | "\202w\000\065\255\326\275\226\265\226\265\226\265\226\265\226\265\226\265\226" |
sfaghihi | 17:7ba6c8e4945b | 245 | "\265\226\265\226\265\226\265\226\265\226\265\226\265\326\275V\214\030\000\370" |
sfaghihi | 17:7ba6c8e4945b | 246 | "\020\330\010\327\010\267\010\266\010\265\010\264\010\262\010\221\010\220\010\217\010" |
sfaghihi | 17:7ba6c8e4945b | 247 | "\216\010n\000m\000m\000\217\010\220\010\221\010\222\010\263\010\264\010\265\010\326\020" |
sfaghihi | 17:7ba6c8e4945b | 248 | "\027)\030\000\064\223`\375B\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@" |
sfaghihi | 17:7ba6c8e4945b | 249 | "\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 250 | "@\375@\375@\375@\375@\375C\375`\375\016\304\027\000\325\234\326\275\226\265\226" |
sfaghihi | 17:7ba6c8e4945b | 251 | "\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226" |
sfaghihi | 17:7ba6c8e4945b | 252 | "\265\226\265\226\265\226\265\226\265\326\275\327{\030\000\030\031\327\010\326\010" |
sfaghihi | 17:7ba6c8e4945b | 253 | "\266\010\265\010\263\010\222\010\221\010\220\010\217\010\216\000n\000m\000m\000\217\010\220" |
sfaghihi | 17:7ba6c8e4945b | 254 | "\010\221\010\222\010\263\010\264\010\325\020\226\000W\000\070\000wA\006\365`\375A\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 255 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 256 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375A\375C\375`\375\"\375\325" |
sfaghihi | 17:7ba6c8e4945b | 257 | "(\366{\366\305\266\265\266\265\226\265\226\265\226\265\226\265\226\265\226" |
sfaghihi | 17:7ba6c8e4945b | 258 | "\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\266" |
sfaghihi | 17:7ba6c8e4945b | 259 | "\265\226\265WB\030\000\327\020\366\020\025\031\324\020\263\010\222\010\221\010\220\010" |
sfaghihi | 17:7ba6c8e4945b | 260 | "\217\010\216\000n\000m\000l\000\217\010\220\010\221\010\222\010\263\010\264\020U\000u\071." |
sfaghihi | 17:7ba6c8e4945b | 261 | "\304w\071\031\000/\314`\375B\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 262 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 263 | "@\375B\375`\375`\375$\365\221\243\027\000\025c\326{v\214\066\245\266\265\266\265" |
sfaghihi | 17:7ba6c8e4945b | 264 | "\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 265 | "\226\265\226\265\226\265\226\265\326\275v\214\030\000\067\031\026\000\025\000\024\000\363" |
sfaghihi | 17:7ba6c8e4945b | 266 | "\030\262\010\221\010\220\010\217\010\216\000n\000m\000l\000\217\000\220\010\221\010\222\010" |
sfaghihi | 17:7ba6c8e4945b | 267 | "\223\010\364\040\026\000\260\253\200\375\324\202\031\000\225z@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 268 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 269 | "@\375@\375@\375@\375@\375@\375@\375B\375`\375\006\365Q\233\025\000\026\000vJ\226" |
sfaghihi | 17:7ba6c8e4945b | 270 | "J\366\061\026\000\026\000\026[\066\245\266\265\226\265\226\265\226\265\226\265\226" |
sfaghihi | 17:7ba6c8e4945b | 271 | "\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\266\265v\255" |
sfaghihi | 17:7ba6c8e4945b | 272 | "\027\031\226s\025\245\025\204TJ\023\000r\000\321\020p\000\217\010\216\000m\000m\000l\000\217\000" |
sfaghihi | 17:7ba6c8e4945b | 273 | "\217\010\220\010\222\010\322\030\024\000\323Q$\365\200\375m\324\030\000\030\000m\324`" |
sfaghihi | 17:7ba6c8e4945b | 274 | "\375C\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 275 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375B\375`\375\253\334u\040\227\000" |
sfaghihi | 17:7ba6c8e4945b | 276 | "\066\204\066\255\226\265\266\265\266\265V\255v\214\066\031VB\266\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 277 | "\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 278 | "\226\265\226\265\226\265\326\275\027[\366Z\326\275\326\275\226\265T\214\222" |
sfaghihi | 17:7ba6c8e4945b | 279 | "\000\021\000\320\020o\000\216\000m\000m\000l\000\216\000\217\010\220\010\221\010\362\040\024\000," |
sfaghihi | 17:7ba6c8e4945b | 280 | "\314\200\375B\375@\375ur\031\000ur@\375@\375@\375@\375@\375@\375@\375@\375@" |
sfaghihi | 17:7ba6c8e4945b | 281 | "\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 282 | "B\375`\375\252\344\026\000\326Ju\255\326\275\266\265\266\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 283 | "\266\265\326\275v\255\066\245\266\265\226\265\226\265\226\265\226\265\226" |
sfaghihi | 17:7ba6c8e4945b | 284 | "\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\326" |
sfaghihi | 17:7ba6c8e4945b | 285 | "\275\366{\366\020\226\265\226\265\226\265\326\275\365\234\021\031\020\000\257\020" |
sfaghihi | 17:7ba6c8e4945b | 286 | "n\000m\000m\000l\000\216\000\217\010\220\000\321\040\023\000qr@\375@\375B\375`\375m\324\030" |
sfaghihi | 17:7ba6c8e4945b | 287 | "\000\031\000\020\304\200\375C\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 288 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375`\375#\375uA\226B" |
sfaghihi | 17:7ba6c8e4945b | 289 | "\265\265\266\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 290 | "\266\265\266\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 291 | "\226\265\226\265\226\265\226\265\226\265\226\265\226\265\266\265V\255\326" |
sfaghihi | 17:7ba6c8e4945b | 292 | "\234\266\265\226\265\226\265\226\265\326\275\264\224\017\000\257\020\216\010m" |
sfaghihi | 17:7ba6c8e4945b | 293 | "\000m\000l\000n\000\217\010\220\010\261\020\022\000\211\334`\375A\375@\375B\375`\375\024" |
sfaghihi | 17:7ba6c8e4945b | 294 | "\213\031\000\067\061\311\354`\375C\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 295 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375B\375`\375\320\263\027\000" |
sfaghihi | 17:7ba6c8e4945b | 296 | "U\255\266\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226" |
sfaghihi | 17:7ba6c8e4945b | 297 | "\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226" |
sfaghihi | 17:7ba6c8e4945b | 298 | "\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\266" |
sfaghihi | 17:7ba6c8e4945b | 299 | "\265\266\265\226\265\226\265\226\265\226\265\226\265\326\275qk\016\000\316\020" |
sfaghihi | 17:7ba6c8e4945b | 300 | "m\000m\000l\000n\000\217\000\317\040\021\000\317\202`\375B\375A\375A\375B\375`\375\350" |
sfaghihi | 17:7ba6c8e4945b | 301 | "\354W\061\031\000Uj\040\375`\375B\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 302 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375B\375UI\266k\326\275\226" |
sfaghihi | 17:7ba6c8e4945b | 303 | "\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226" |
sfaghihi | 17:7ba6c8e4945b | 304 | "\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226" |
sfaghihi | 17:7ba6c8e4945b | 305 | "\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226" |
sfaghihi | 17:7ba6c8e4945b | 306 | "\265\226\265\226\265\226\265\226\265\226\265\326\275\364\234\016\000\215\010" |
sfaghihi | 17:7ba6c8e4945b | 307 | "\215\010l\000l\000n\000n\000\317\040\021\000\356\212\200\375`\375`\375`\375`\375`\375" |
sfaghihi | 17:7ba6c8e4945b | 308 | "\200\375m\324\230\000\031\000\364\212@\375@\375A\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 309 | "@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375A\375`\375\252\344\027\000" |
sfaghihi | 17:7ba6c8e4945b | 310 | "\366\234\326\275\226\265\226\265\226\265\226\265\226\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 311 | "\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 312 | "\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 313 | "\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 314 | "\226\265/B\015\000\255\020l\000k\000m\000\216\000\217\010\220\010\061\000\314\263\307\354" |
sfaghihi | 17:7ba6c8e4945b | 315 | "\350\354\350\354\351\354\351\354\352\354\007\365\364\212\030\000\031\000\063\223@" |
sfaghihi | 17:7ba6c8e4945b | 316 | "\375@\375B\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 317 | "@\375@\375B\375`\375M\314\027\000V\255\266\265\226\265\226\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 318 | "\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 319 | "\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 320 | "\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 321 | "\226\265\226\265\326\275\326\275\020c\015\000\315\020l\000k\000m\000n\000\217\000\217\010" |
sfaghihi | 17:7ba6c8e4945b | 322 | "q\000\022\000\022\000\263\010\224\000\225\000\266\000\267\000\270\000\030!\270\000\070)\031\000\024" |
sfaghihi | 17:7ba6c8e4945b | 323 | "\213@\375`\375C\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 324 | "@\375@\375B\375\200\375\016\304\027\001v\265\266\265\226\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 325 | "\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 326 | "\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 327 | "\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 328 | "\226\265\266\265\226\265S\214oJ\015\000\014\000\214\010\214\010K\000m\000n\000\216\010\217" |
sfaghihi | 17:7ba6c8e4945b | 329 | "\000\220\010\361\040\262\010\223\000\224\000\225\000\226\000\267\000\227\000\270\000\330\020" |
sfaghihi | 17:7ba6c8e4945b | 330 | "\330\010\070)\031\000ur\347\354\200\375B\375B\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 331 | "@\375@\375@\375@\375@\375B\375`\375m\324\027\000V\255\266\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 332 | "\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 333 | "\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 334 | "\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 335 | "\226\265\266\265\226\265\361Z\015\000\020c\362{Pk\014\000\013\000\213\010m\000m\000n\000\217" |
sfaghihi | 17:7ba6c8e4945b | 336 | "\010\220\010\221\000\261\010\262\020\263\020\264\020\325\020\326\020\327\020\327\020" |
sfaghihi | 17:7ba6c8e4945b | 337 | "\330\010\330\010\330\010\070)\030\000W\061N\314`\375`\375C\375B\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 338 | "@\375@\375@\375@\375@\375@\375A\375`\375\311\344\027\000\326\234\326\275\226" |
sfaghihi | 17:7ba6c8e4945b | 339 | "\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226" |
sfaghihi | 17:7ba6c8e4945b | 340 | "\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226" |
sfaghihi | 17:7ba6c8e4945b | 341 | "\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226" |
sfaghihi | 17:7ba6c8e4945b | 342 | "\265\226\265\226\265\326\275\023\204\016\000\324\234\326\275\326\275\326\275" |
sfaghihi | 17:7ba6c8e4945b | 343 | "\323\234k\000\012\000m\000m\000n\000\216\000\217\010\220\010\221\010\222\010\263\010\264\010" |
sfaghihi | 17:7ba6c8e4945b | 344 | "\265\010\266\010\266\010\327\010\330\010\330\010\330\010\270\000\030!x\000\030\000\023\223" |
sfaghihi | 17:7ba6c8e4945b | 345 | "\311\354`\375`\375A\375C\375B\375@\375@\375@\375@\375@\375@\375@\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 346 | "@\375\265Ywc\326\275\226\265\226\265\226\265\226\265\226\265\226\265\226" |
sfaghihi | 17:7ba6c8e4945b | 347 | "\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226" |
sfaghihi | 17:7ba6c8e4945b | 348 | "\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226" |
sfaghihi | 17:7ba6c8e4945b | 349 | "\265\226\265\226\265\226\265\226\265\226\265\266\265\065\245\364\234\326\275" |
sfaghihi | 17:7ba6c8e4945b | 350 | "\226\265\226\265\226\265\327\275\361{\010\000l\000m\000m\000n\000\217\010\220\010\221" |
sfaghihi | 17:7ba6c8e4945b | 351 | "\010\221\010\222\010\263\010\264\010\265\010\266\010\267\010\327\010\330\010\330\010" |
sfaghihi | 17:7ba6c8e4945b | 352 | "\330\010\330\010\330\020\030\000\031\000\027\031S\233\253\344@\375\200\375`\375@\375" |
sfaghihi | 17:7ba6c8e4945b | 353 | "A\375B\375B\375B\375B\375B\375D\375`\375\360\273\030\000\065\255\266\265\226" |
sfaghihi | 17:7ba6c8e4945b | 354 | "\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226" |
sfaghihi | 17:7ba6c8e4945b | 355 | "\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226" |
sfaghihi | 17:7ba6c8e4945b | 356 | "\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226" |
sfaghihi | 17:7ba6c8e4945b | 357 | "\265\226\265\226\265\266\265\266\265\226\265\226\265\226\265\226\265\266" |
sfaghihi | 17:7ba6c8e4945b | 358 | "\265\263\224\010\000l\000m\000m\000n\000\216\000\217\010\220\010\221\010\222\010\263\010\264" |
sfaghihi | 17:7ba6c8e4945b | 359 | "\010\265\010\265\010\266\010\267\010\327\010\330\010\370\030\070\000\267I\320\263\366" |
sfaghihi | 17:7ba6c8e4945b | 360 | "Q\031\000\031\000X\000\265z\360\273\312\344\"\375`\375`\375`\375`\375`\375`\375`" |
sfaghihi | 17:7ba6c8e4945b | 361 | "\375\200\375`\375\025j\227B\226\265\266\265\226\265\226\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 362 | "\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 363 | "\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 364 | "\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265" |
sfaghihi | 17:7ba6c8e4945b | 365 | "\226\265\226\265\226\265\226\265\326\275\222\224\007\000l\000l\000m\000m\000n\000\217\010" |
sfaghihi | 17:7ba6c8e4945b | 366 | "\220\010\220\010\221\010\222\010\263\010\264\010\265\010\266\010\266\010\327\010\327" |
sfaghihi | 17:7ba6c8e4945b | 367 | "\010\330\020\230\000\030!\005\365\"\375\321\263\026Z\030\000\031\000\031\000\230\000\066b\023" |
sfaghihi | 17:7ba6c8e4945b | 368 | "\223\261\253\017\304N\314m\324m\324N\314\360\273\221\253Uj\030\000\026cv\255\326" |
sfaghihi | 17:7ba6c8e4945b | 369 | "\275\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226" |
sfaghihi | 17:7ba6c8e4945b | 370 | "\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226" |
sfaghihi | 17:7ba6c8e4945b | 371 | "\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\226" |
sfaghihi | 17:7ba6c8e4945b | 372 | "\265\226\265\226\265\226\265\226\265\226\265\226\265\226\265\266\265\016c" |
sfaghihi | 17:7ba6c8e4945b | 373 | "\007\000k\000l\000m\000m\000n\000\216\000\217\010\220\010\221\010\221\010\222\010\263\010\264\010" |
sfaghihi | 17:7ba6c8e4945b | 374 | "\265\010\266\010\266\010\327\010\327\010\370\030\030\000m\324\200\375`\375\"\375M" |
sfaghihi | 17:7ba6c8e4945b | 375 | "\324\063\223\326Q\030\000\031\000\031\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\030\000\030" |
sfaghihi | 17:7ba6c8e4945b | 376 | "\000\067!\030\000\067B\266\224\226\265\326\275\326\275\326\275\326\275\326\275\326" |
sfaghihi | 17:7ba6c8e4945b | 377 | "\275\326\275\326\275\326\275\326\275\326\275\326\275\326\275\326\275\326" |
sfaghihi | 17:7ba6c8e4945b | 378 | "\275\326\275\326\275\326\275\326\275\326\275\326\275\326\275\326\275\326" |
sfaghihi | 17:7ba6c8e4945b | 379 | "\275\326\275\326\275\326\275\326\275\326\275\326\275\326\275\326\275\266" |
sfaghihi | 17:7ba6c8e4945b | 380 | "\265\021\204\010\000\250\020k\000l\000l\000m\000m\000n\000\217\000\217\010\220\010\221\010\222" |
sfaghihi | 17:7ba6c8e4945b | 381 | "\010\263\010\263\010\264\010\265\010\266\010\266\010\267\010\027!\031\000\360\273`\375" |
sfaghihi | 17:7ba6c8e4945b | 382 | "$\375`\375`\375`\375\005\365\214\334\017\304\066b\270\000\067)\030!\030!\027!\027!\027" |
sfaghihi | 17:7ba6c8e4945b | 383 | ")\027)\367\030\330\000\070\031\030\000\030\000wJ\326{V\214V\214V\214v\214v\214v\214W" |
sfaghihi | 17:7ba6c8e4945b | 384 | "\214W\214v\214v\214v\214\226\224\226\224\226\224\226\224\225\224u\214u\214" |
sfaghihi | 17:7ba6c8e4945b | 385 | "u\214t\214t\214T\214T\214S\214s\214s\214S\214S\214S\214s\214\062\204\316Z" |
sfaghihi | 17:7ba6c8e4945b | 386 | "\010\000i\000h\000k\000k\000l\000m\000m\000n\000\216\000\217\010\217\010\220\010\221\010\222\010\263" |
sfaghihi | 17:7ba6c8e4945b | 387 | "\010\263\010\264\010\265\010\266\010\266\010\027!\030\000S\233`\375B\375@\375B\375" |
sfaghihi | 17:7ba6c8e4945b | 388 | "C\375@\375\240\375\252\344\227Ax\000\370\020\330\010\330\010\330\010\330\010\330" |
sfaghihi | 17:7ba6c8e4945b | 389 | "\010\330\010\330\010\330\010\330\010\030\021\030\021\030\000\030\000\030\000\027:\027Bw!\030\000" |
sfaghihi | 17:7ba6c8e4945b | 390 | "\070!\027B\027BX\000\030\000\030\000\030\000\030\000\027\000\026\000\026\000\024\000\024\000\023\000\022\000\021" |
sfaghihi | 17:7ba6c8e4945b | 391 | "\000\261\061\020:\360\071\016\000\015\000\356\071\016:\215\061\012\000\011\000\011\000\251\020h\000" |
sfaghihi | 17:7ba6c8e4945b | 392 | "G\000j\000k\000l\000l\000m\000m\000n\000n\000\217\010\220\010\220\010\221\010\222\010\263\010\264" |
sfaghihi | 17:7ba6c8e4945b | 393 | "\010\264\010\265\010\266\010\366\040\027\000\224z@\375@\375@\375A\375@\375`\375\017" |
sfaghihi | 17:7ba6c8e4945b | 394 | "\304\030\000\030\000\370\030\330\010\330\010\330\010\330\010\330\010\330\010\330\010\330" |
sfaghihi | 17:7ba6c8e4945b | 395 | "\010\330\010\330\010\330\010\330\010\070!\030\000V\214\326\275\266\265\267s\030\000\026" |
sfaghihi | 17:7ba6c8e4945b | 396 | "\245\326\275\226\265wJ\270\020\030\000\222\254\256\325n\315\255\325\357\274\064" |
sfaghihi | 17:7ba6c8e4945b | 397 | "\000\023\031\062!\021\000QBv\255\326\275\025\245\015\000\221s\266\265\326\275R\214\012" |
sfaghihi | 17:7ba6c8e4945b | 398 | "\000+!\312\020I\000H\000G\000J\000j\000k\000l\000l\000m\000m\000n\000\216\000\217\010\220\010\220\010\221" |
sfaghihi | 17:7ba6c8e4945b | 399 | "\010\222\010\263\010\264\010\264\010\265\010\325\030\026\000\265I$\365@\375C\375`\375" |
sfaghihi | 17:7ba6c8e4945b | 400 | "`\375\222\253\031\000\370\020\370\030\330\010\330\010\330\010\330\010\330\010\330\010" |
sfaghihi | 17:7ba6c8e4945b | 401 | "\330\010\330\010\330\010\330\010\330\010\330\010\370\020\230\000\070\031V\245\326\275" |
sfaghihi | 17:7ba6c8e4945b | 402 | "v\255\030\031\227R\226\265\326\275\326\234\027\000\027\000uR\302\376\040\377\000\377" |
sfaghihi | 17:7ba6c8e4945b | 403 | "\040\377\060\234\023\000\022!\362\030\020\000\363{\266\265\326\275\362{\014\000\364\234" |
sfaghihi | 17:7ba6c8e4945b | 404 | "\326\275\226\265\256R\012\000\252\020I\000H\000G\000F\000I\000j\000k\000k\000l\000m\000m\000m\000n\000" |
sfaghihi | 17:7ba6c8e4945b | 405 | "\216\000\217\010\220\010\220\010\221\010\222\010\263\010\263\010\264\010\265\020\325" |
sfaghihi | 17:7ba6c8e4945b | 406 | "\020\026\000\252\344\200\375`\375!\375\364\212\031\000\030!\330\020\330\010\330\010" |
sfaghihi | 17:7ba6c8e4945b | 407 | "\330\010\330\010\330\010\330\010\330\010\330\010\330\010\330\010\330\010\330\010\330" |
sfaghihi | 17:7ba6c8e4945b | 408 | "\010\030\031\030\000\067c\266\265\266\265\226\224\030\000V\214\266\265\266\265vk\027" |
sfaghihi | 17:7ba6c8e4945b | 409 | "\000\027\000/\275\000\377\246\376\000\377-\275\024\000\362\030\261\010\261\010\020\000\025\245" |
sfaghihi | 17:7ba6c8e4945b | 410 | "\326\275\226\265\316\061\016:\226\265\326\275\024\235\012\000\212\010i\000H\000G\000F" |
sfaghihi | 17:7ba6c8e4945b | 411 | "\000F\000H\000I\000j\000k\000k\000l\000m\000m\000m\000n\000\216\000\217\010\220\010\220\010\221\010\222" |
sfaghihi | 17:7ba6c8e4945b | 412 | "\010\263\010\263\010\264\010\324\030\026\000sr\252\344l\324\065b\030\000\027)\330\020\330" |
sfaghihi | 17:7ba6c8e4945b | 413 | "\010\330\010\330\010\330\010\330\010\330\010\330\010\330\010\330\010\330\010\330\010" |
sfaghihi | 17:7ba6c8e4945b | 414 | "\330\010\330\010\330\010\030\031\030\000\226\224\326\275\266\265\367Z\030\000V\255\326" |
sfaghihi | 17:7ba6c8e4945b | 415 | "\275V\255\266\061\027\000\065J\245\366\343\376\002\377)\346\362\030\222\000q\000\261" |
sfaghihi | 17:7ba6c8e4945b | 416 | "\010\020\000\261R\226\265\326\275\324\234\013\000\022|\326\275\266\265\321{\011\000" |
sfaghihi | 17:7ba6c8e4945b | 417 | "\312\020I\000H\000G\000F\000%\000H\000I\000I\000j\000k\000l\000l\000m\000m\000m\000n\000\216\000\217\010\220" |
sfaghihi | 17:7ba6c8e4945b | 418 | "\010\220\010\221\010\222\010\222\010\263\010\264\000\324\030\025\000\026\000\026\000\027\000\026" |
sfaghihi | 17:7ba6c8e4945b | 419 | "!\267\010\327\010\327\010\330\010\330\010\330\010\330\010\330\010\330\010\330\010\330" |
sfaghihi | 17:7ba6c8e4945b | 420 | "\010\330\010\330\010\330\010\330\010\370\020\030\000\367\071v\255\326\275\066\245\027" |
sfaghihi | 17:7ba6c8e4945b | 421 | "\000\066c\266\265\326\275v\214\026\000\026\000\357\264\000\377\305\376\343\376\207\366" |
sfaghihi | 17:7ba6c8e4945b | 422 | "I\356g\356G\356OR\017\000S\214\326\275\266\265qk\014\000\065\245\326\275u\255\354" |
sfaghihi | 17:7ba6c8e4945b | 423 | "\071\011\000\211\010H\000G\000F\000%\000%\000G\000H\000I\000J\000j\000k\000l\000l\000m\000m\000m\000n\000\216\000" |
sfaghihi | 17:7ba6c8e4945b | 424 | "\217\010\220\010\220\010\221\010\221\010\222\010\263\010\223\000\324\030\324\030\365" |
sfaghihi | 17:7ba6c8e4945b | 425 | "\030\365\030\266\010\266\010\266\010\267\010\327\010\327\010\327\010\327\010\330\010" |
sfaghihi | 17:7ba6c8e4945b | 426 | "\330\010\330\010\330\010\330\010\330\010\330\010\330\010\030\031\030\000\266s\266\265" |
sfaghihi | 17:7ba6c8e4945b | 427 | "\266\265\066\204\027\000\266\224\326\275\266\265\025c\025\000\064J\206\366\002\377\344" |
sfaghihi | 17:7ba6c8e4945b | 428 | "\376\344\376\342\376\001\377\040\377J\305\017\000O)U\255\326\275U\255m\000\317R\266" |
sfaghihi | 17:7ba6c8e4945b | 429 | "\265\326\275\263\224\010\000\311\020H\000G\000F\000F\000%\000$\000F\000G\000H\000I\000J\000j\000k\000l" |
sfaghihi | 17:7ba6c8e4945b | 430 | "\000l\000m\000m\000m\000n\000\216\000\217\010\217\010\220\010\221\010\221\010\222\010\222\010" |
sfaghihi | 17:7ba6c8e4945b | 431 | "\263\010\263\010\264\010\264\010\265\010\265\010\266\010\266\010\266\010\266\010\267" |
sfaghihi | 17:7ba6c8e4945b | 432 | "\010\267\010\267\010\327\010\327\010\327\010\327\010\327\010\327\010\327\010\367\020" |
sfaghihi | 17:7ba6c8e4945b | 433 | "\027\000\366\234\326\275\226\265VB\226)v\255\326\275\065\245\064!\025\000\060\234" |
sfaghihi | 17:7ba6c8e4945b | 434 | "\340\376\304\376\304\376\344\376\304\376\001\377J\305\020\000\016\000Qk\266\265\326" |
sfaghihi | 17:7ba6c8e4945b | 435 | "\275s\214\012\000r\214\326\275\266\265Ok\010\000\311\020G\000G\000F\000%\000$\000#\000F\000G\000" |
sfaghihi | 17:7ba6c8e4945b | 436 | "G\000H\000I\000J\000j\000k\000l\000l\000m\000m\000m\000n\000\216\000\217\010\217\010\220\010\220\010\221" |
sfaghihi | 17:7ba6c8e4945b | 437 | "\010\221\010\222\010\222\010\263\010\263\010\264\010\264\010\265\010\265\010\265\010" |
sfaghihi | 17:7ba6c8e4945b | 438 | "\265\010\266\010\266\010\266\010\266\010\266\010\266\010\266\010\266\010\266\010\366" |
sfaghihi | 17:7ba6c8e4945b | 439 | "\020\026\000vJ\226\265\266\265\365\234\025\000\265s\266\265\326\275\025\204\023\000" |
sfaghihi | 17:7ba6c8e4945b | 440 | "\323\020r)\320b\060J\252\325\342\376\001\377\251\325\017\000\317\020\015\000\263\224" |
sfaghihi | 17:7ba6c8e4945b | 441 | "\326\275\266\265\317Z\014\000U\255\266\265U\255*!\010\000h\010G\000F\000%\000$\000$\000#\000" |
sfaghihi | 17:7ba6c8e4945b | 442 | "%\000F\000G\000G\000H\000I\000J\000j\000k\000l\000l\000m\000m\000m\000n\000n\000\216\000\217\010\217\010\220" |
sfaghihi | 17:7ba6c8e4945b | 443 | "\010\221\010\221\010\221\010\222\010\222\010\263\010\263\010\264\010\264\010\264\010" |
sfaghihi | 17:7ba6c8e4945b | 444 | "\265\010\265\010\265\010\265\010\265\010\265\010\265\010\265\010\265\010\265\010\025" |
sfaghihi | 17:7ba6c8e4945b | 445 | "\031\025\000\365{\326\275\326\275\325s\024\000\365\234\326\275\226\265\223J\022\000" |
sfaghihi | 17:7ba6c8e4945b | 446 | "\362\020\262\020\022\000\257b\244\376\040\377\350\335\017\000.\000-\000\356\071u\255\326" |
sfaghihi | 17:7ba6c8e4945b | 447 | "\275\065\245\013\000/c\266\265\327\275r\214\006\000\310\030'\000F\000%\000%\000$\000#\000#\000$" |
sfaghihi | 17:7ba6c8e4945b | 448 | "\000%\000F\000G\000H\000H\000I\000J\000j\000k\000l\000l\000m\000m\000m\000n\000n\000\216\000\217\010\217\010\220" |
sfaghihi | 17:7ba6c8e4945b | 449 | "\010\220\010\221\010\221\010\221\010\222\010\222\010\263\010\263\010\263\010\263\010" |
sfaghihi | 17:7ba6c8e4945b | 450 | "\264\010\264\010\264\010\264\010\264\010\264\010\264\010\264\010\264\010\364\030\024" |
sfaghihi | 17:7ba6c8e4945b | 451 | "\000\024c\266\265\065\245\023\031SJ\226\265\326\275\365\234\022\000\262\020\261\010" |
sfaghihi | 17:7ba6c8e4945b | 452 | "\021!\020\000\310\335@\377\007\346\356\030\016\000.!\014\000\261s\266\265\326\275\022\204" |
sfaghihi | 17:7ba6c8e4945b | 453 | "\011\000MJu\255v\255lJ\007\000\247\020F\000%\000%\000$\000#\000#\000\"\000$\000%\000%\000F\000G\000H\000H\000" |
sfaghihi | 17:7ba6c8e4945b | 454 | "I\000j\000j\000k\000k\000l\000l\000m\000m\000m\000n\000n\000\216\000\217\010\217\010\220\010\220\010\220" |
sfaghihi | 17:7ba6c8e4945b | 455 | "\010\221\010\221\010\222\010\222\010\222\010\222\010\263\010\263\010\263\010\263\010" |
sfaghihi | 17:7ba6c8e4945b | 456 | "\263\010\263\010\263\010\263\010\263\010\263\010\263\010\023\000\063B\323\071\022\000\024" |
sfaghihi | 17:7ba6c8e4945b | 457 | "\204\326\275\266\265\263s\021\000\361\020\020!\020\000\355\223\040\377F\356\256\071" |
sfaghihi | 17:7ba6c8e4945b | 458 | "\016\000\015!\215\010\014\000\364\234\326\275\226\265mJ\012\000\011\000\313\071\353\071\007" |
sfaghihi | 17:7ba6c8e4945b | 459 | "\000\207\010&\000E\000%\000$\000#\000#\000\"\000\"\000#\000$\000%\000%\000F\000G\000H\000H\000I\000J\000j\000k\000k" |
sfaghihi | 17:7ba6c8e4945b | 460 | "\000l\000l\000m\000m\000m\000m\000n\000n\000\216\000\217\010\217\010\220\010\220\010\220\010\220\010" |
sfaghihi | 17:7ba6c8e4945b | 461 | "\221\010\221\010\221\010\222\010\222\010\222\010\222\010\222\010\222\010\222\010\222" |
sfaghihi | 17:7ba6c8e4945b | 462 | "\010\222\010\222\010\222\010\322\020\022\000\022\000\361\020\065\245\266\265v\255\361" |
sfaghihi | 17:7ba6c8e4945b | 463 | "\071\020\000\360\030\017\000.)\205\366\205\366\355A\016\000\015!\255\010\014\000\216J\226" |
sfaghihi | 17:7ba6c8e4945b | 464 | "\265\266\265\364\234\012\000\212\010\211\010\010\000\007\000\207\010&\000E\000%\000$\000#\000#\000" |
sfaghihi | 17:7ba6c8e4945b | 465 | "\"\000\"\000\"\000#\000#\000$\000%\000%\000F\000G\000G\000H\000I\000I\000j\000k\000k\000l\000l\000l\000m\000m\000m\000" |
sfaghihi | 17:7ba6c8e4945b | 466 | "m\000n\000n\000\216\000\217\010\217\010\217\010\220\010\220\010\220\010\220\010\220\010\221" |
sfaghihi | 17:7ba6c8e4945b | 467 | "\010\221\010\221\010\221\010\221\010\221\010\221\010\221\010\221\010\221\010\221\010" |
sfaghihi | 17:7ba6c8e4945b | 468 | "\021\031\020\000\362Z\266\265\326\275\264\224\017\000\317\020\017!\017\000\312\264\303" |
sfaghihi | 17:7ba6c8e4945b | 469 | "\376MR\016\000\015!M\000\355\030\013\000\062\204\326\275\326\275\260s\010\000\311\020H\000" |
sfaghihi | 17:7ba6c8e4945b | 470 | "\210\010\207\010F\000E\000%\000$\000$\000#\000\"\000\"\000\"\000\"\000\"\000#\000#\000$\000%\000%\000F\000G\000" |
sfaghihi | 17:7ba6c8e4945b | 471 | "G\000H\000I\000I\000j\000j\000k\000k\000l\000l\000l\000m\000m\000m\000m\000n\000n\000n\000\216\000\217\000\217\010" |
sfaghihi | 17:7ba6c8e4945b | 472 | "\217\010\217\010\217\010\220\010\220\010\220\010\220\010\220\010\220\010\220\010\220" |
sfaghihi | 17:7ba6c8e4945b | 473 | "\010\220\010\220\010\220\010\320\020\017\000PBu\255\226\265\320Z\016\000\316\020\256" |
sfaghihi | 17:7ba6c8e4945b | 474 | "\020\016\000\314b\214Z\015\000\015!M\000l\000\314\020\013\000pk\266\265\065\245j)\010\000\210" |
sfaghihi | 17:7ba6c8e4945b | 475 | "\010G\000G\000F\000E\000%\000$\000$\000#\000#\000\"\000\"\000\"\000\"\000\"\000\"\000#\000#\000$\000$\000%\000F\000" |
sfaghihi | 17:7ba6c8e4945b | 476 | "F\000G\000H\000H\000I\000J\000j\000k\000k\000k\000l\000l\000l\000m\000m\000m\000m\000m\000n\000n\000n\000\216\000\216" |
sfaghihi | 17:7ba6c8e4945b | 477 | "\000\217\000\217\010\217\010\217\010\217\010\217\010\217\010\217\010\217\010\217\010\217" |
sfaghihi | 17:7ba6c8e4945b | 478 | "\010\217\010\217\000\257\010\016\000\357\071OB\016\000\256\010n\000m\000\255\020\015\000\015\000" |
sfaghihi | 17:7ba6c8e4945b | 479 | "\354\040L\000l\000l\000k\000k\000\012\000mJ\253\061\010\000\210\010G\000G\000F\000%\000%\000$\000#\000#\000" |
sfaghihi | 17:7ba6c8e4945b | 480 | "#\000\"\000\"\000\"\000\"\000\"\000\"\000\"\000\"\000#\000#\000$\000$\000%\000F\000F\000G\000G\000H\000I\000I\000J" |
sfaghihi | 17:7ba6c8e4945b | 481 | "\000j\000k\000k\000k\000l\000l\000l\000m\000m\000m\000m\000m\000m\000n\000n\000n\000n\000\216\000n\000\216\000\216" |
sfaghihi | 17:7ba6c8e4945b | 482 | "\000\216\000\216\000\216\000\216\000\216\000n\000\216\000n\000\256\020\015\000\015\000\255\020m\000m" |
sfaghihi | 17:7ba6c8e4945b | 483 | "\000m\000m\000\314\020\314\030L\000l\000k\000k\000j\000j\000\211\010\010\000\010\000\210\010'\000F\000F\000" |
sfaghihi | 17:7ba6c8e4945b | 484 | "%\000$\000$\000#\000#\000\"\000\"\000\"\000\"\000\"\000\"\000\"\000", |
sfaghihi | 17:7ba6c8e4945b | 485 | }; |
sfaghihi | 17:7ba6c8e4945b | 486 | |
sfaghihi | 17:7ba6c8e4945b | 487 | |
sfaghihi | 2:56a27b66d03a | 488 | Display::Display () |
sfaghihi | 2:56a27b66d03a | 489 | : myTFT(DISPLAY_MOSI_PIN, DISPLAY_MISO_PIN, DISPLAY_SCLK_PIN, DISPLAY_CS_PIN, DISPLAY_RST_PIN, DISPLAY_DC_PIN, "TFT") |
sfaghihi | 2:56a27b66d03a | 490 | { |
sfaghihi | 2:56a27b66d03a | 491 | //myTFT = new SPI_TFT_ILI9341(DISPLAY_MOSI_PIN, DISPLAY_MISO_PIN, DISPLAY_SCLK_PIN, DISPLAY_CS_PIN, DISPLAY_RST_PIN, DISPLAY_DC_PIN,"TFT"); |
sfaghihi | 16:a639477091ad | 492 | //myTFT.claim(stdout); // send stdout to the TFT display |
sfaghihi | 2:56a27b66d03a | 493 | myTFT.set_orientation(1); |
sfaghihi | 2:56a27b66d03a | 494 | myTFT.background(Black); // set background to black |
sfaghihi | 2:56a27b66d03a | 495 | myTFT.foreground(White); // set chars to white |
sfaghihi | 2:56a27b66d03a | 496 | myTFT.cls(); // clear the screen |
sfaghihi | 2:56a27b66d03a | 497 | myTFT.set_font((unsigned char*) Arial12x12); |
sfaghihi | 2:56a27b66d03a | 498 | myTFT.locate(0,0); |
sfaghihi | 10:e5bcd9088d5d | 499 | //LOG("O HOH O\r\n"); |
sfaghihi | 16:a639477091ad | 500 | //myTFT.printf("O HOH O "); |
sfaghihi | 3:6795b827060b | 501 | } |
sfaghihi | 3:6795b827060b | 502 | |
sfaghihi | 11:80a6facfd9f1 | 503 | void Display::drawClock(TimeClass *time, bool face, TimeClass *prevTime) |
sfaghihi | 3:6795b827060b | 504 | { |
sfaghihi | 8:e7fce7d9ebdd | 505 | //LOG("Small\r\n"); |
sfaghihi | 11:80a6facfd9f1 | 506 | /*myTFT.circle(70, 70, 60, 0xFFFFFF); // clock circle |
amilner1 | 4:519ffdf16d25 | 507 | myTFT.line(70, 10, 70, 20, 0xFFFFFF); // 12 oclock |
amilner1 | 4:519ffdf16d25 | 508 | myTFT.line(70, 130, 70, 120, 0xFFFFFF); // 6 oclock |
amilner1 | 4:519ffdf16d25 | 509 | myTFT.line(10, 70, 20 , 70, 0xFFFFFF); // 3 oclock |
amilner1 | 4:519ffdf16d25 | 510 | myTFT.line(120, 70, 130 , 70, 0xFFFFFF); // 9 oclock |
amilner1 | 4:519ffdf16d25 | 511 | myTFT.line(100, 121.9615, 95, 113.301, 0xFFFFFF); // 7 oclock |
amilner1 | 4:519ffdf16d25 | 512 | myTFT.line(40, 18.0385, 45, 26.699, 0xFFFFFF); // 1 oclock |
amilner1 | 4:519ffdf16d25 | 513 | myTFT.line(121.9615, 100, 113.301, 95, 0xFFFFFF); // 8 oclock |
amilner1 | 4:519ffdf16d25 | 514 | myTFT.line(18.0385, 40, 26.699, 45, 0xFFFFFF); // 2 oclock |
amilner1 | 4:519ffdf16d25 | 515 | myTFT.line(121.9615,40,113.301,45, 0xFFFFFF); // 4 oclock |
amilner1 | 4:519ffdf16d25 | 516 | myTFT.line(18.0385,100,26.699,95, 0xFFFFFF); // 10 oclock |
amilner1 | 4:519ffdf16d25 | 517 | myTFT.line(100,18.0385,95,26.699, 0xFFFFFF); // 5 oclock |
amilner1 | 4:519ffdf16d25 | 518 | myTFT.line(40,121.9615,45,113.301, 0xFFFFFF); // 11 olcock |
sfaghihi | 8:e7fce7d9ebdd | 519 | //LOG("SO Near: %x\r\n", (void *)time); |
sfaghihi | 8:e7fce7d9ebdd | 520 | float h = time->hour % 12; |
amilner1 | 5:fe6910712822 | 521 | float m = time->minute; |
amilner1 | 5:fe6910712822 | 522 | float s = time->second; |
sfaghihi | 8:e7fce7d9ebdd | 523 | float htheta = (M_PI/6.0)*(h + (m/60.0) + (s/3600.0)); // hour hand angle |
sfaghihi | 8:e7fce7d9ebdd | 524 | float mtheta = (M_PI/6.0)*(m + (s/60.0))/5.0; // minute hand angle |
sfaghihi | 8:e7fce7d9ebdd | 525 | float stheta = (M_PI/6.0)*s/5.0; // second hand angle |
amilner1 | 5:fe6910712822 | 526 | float hx = 70.0 + 15.0*sin(htheta); // hour hand position |
amilner1 | 5:fe6910712822 | 527 | float hy = 70.0 - 15.0*cos(htheta); // |
sfaghihi | 8:e7fce7d9ebdd | 528 | float mx = 70.0 + 30.0*sin(mtheta); // minute hand position |
sfaghihi | 8:e7fce7d9ebdd | 529 | float my = 70.0 - 30.0*cos(mtheta); // |
sfaghihi | 8:e7fce7d9ebdd | 530 | float sx = 70.0 + 50.0*sin(stheta); // second hand position |
sfaghihi | 8:e7fce7d9ebdd | 531 | float sy = 70.0 - 50.0*cos(stheta); // |
sfaghihi | 10:e5bcd9088d5d | 532 | //LOG("SO Far: %f, %f\r\n", sx, sy); |
sfaghihi | 8:e7fce7d9ebdd | 533 | if (cls) { |
sfaghihi | 8:e7fce7d9ebdd | 534 | myTFT.line(70, 70, hx, hy, Black); // hour hand plot |
sfaghihi | 8:e7fce7d9ebdd | 535 | myTFT.line(70, 70, mx, my, Black); // minute hand plot |
sfaghihi | 8:e7fce7d9ebdd | 536 | myTFT.line(70, 70, sx, sy, Black); // second hand plot |
sfaghihi | 8:e7fce7d9ebdd | 537 | } else { |
sfaghihi | 8:e7fce7d9ebdd | 538 | myTFT.line(70, 70, hx, hy, Yellow); // hour hand plot |
sfaghihi | 8:e7fce7d9ebdd | 539 | myTFT.line(70, 70, mx, my, White); // minute hand plot |
sfaghihi | 8:e7fce7d9ebdd | 540 | myTFT.line(70, 70, sx, sy, DarkCyan); // second hand plot |
sfaghihi | 11:80a6facfd9f1 | 541 | }*/ |
sfaghihi | 11:80a6facfd9f1 | 542 | int xc = 80; |
sfaghihi | 12:dd5d8eea2e47 | 543 | int yc = 90; |
sfaghihi | 11:80a6facfd9f1 | 544 | int r = 80; |
sfaghihi | 11:80a6facfd9f1 | 545 | if (face) { |
sfaghihi | 11:80a6facfd9f1 | 546 | myTFT.circle(xc, yc, r, White); // clock circle |
sfaghihi | 11:80a6facfd9f1 | 547 | for (int i = 0; i < 12; i++) |
sfaghihi | 11:80a6facfd9f1 | 548 | myTFT.line(xc+6*r/7*sin((float)i*M_PI/6.0), yc-6*r/7*cos((float)i*M_PI/6.0), |
sfaghihi | 11:80a6facfd9f1 | 549 | xc + r*sin((float)i*M_PI/6.0), yc-r*cos((float)i*M_PI/6.0), 0xFFFFFF); |
sfaghihi | 8:e7fce7d9ebdd | 550 | } |
sfaghihi | 8:e7fce7d9ebdd | 551 | |
sfaghihi | 8:e7fce7d9ebdd | 552 | //LOG("SO Near: %x\r\n", (void *)time); |
sfaghihi | 8:e7fce7d9ebdd | 553 | float h = time->hour % 12; |
sfaghihi | 8:e7fce7d9ebdd | 554 | float m = time->minute; |
sfaghihi | 8:e7fce7d9ebdd | 555 | float s = time->second; |
sfaghihi | 8:e7fce7d9ebdd | 556 | float htheta = (M_PI/6.0)*(h + (m/60.0) + (s/3600.0)); // hour hand angle |
sfaghihi | 8:e7fce7d9ebdd | 557 | float mtheta = (M_PI/6.0)*(m + (s/60.0))/5.0; // minute hand angle |
sfaghihi | 8:e7fce7d9ebdd | 558 | float stheta = (M_PI/6.0)*s/5.0; // second hand angle |
sfaghihi | 8:e7fce7d9ebdd | 559 | int hx = xc + r*sin(htheta)/4.5; // hour hand position |
sfaghihi | 8:e7fce7d9ebdd | 560 | int hy = yc - r*cos(htheta)/4.5; // |
sfaghihi | 8:e7fce7d9ebdd | 561 | int mx = xc + r*sin(mtheta)/1.9; // minute hand position |
sfaghihi | 8:e7fce7d9ebdd | 562 | int my = yc - r*cos(mtheta)/1.9; // |
sfaghihi | 8:e7fce7d9ebdd | 563 | int sx = xc + r*sin(stheta)/1.5; // second hand position |
sfaghihi | 8:e7fce7d9ebdd | 564 | int sy = yc - r*cos(stheta)/1.5; // |
sfaghihi | 11:80a6facfd9f1 | 565 | |
sfaghihi | 11:80a6facfd9f1 | 566 | float ps = prevTime->second; |
sfaghihi | 11:80a6facfd9f1 | 567 | float pm = prevTime->minute; |
sfaghihi | 11:80a6facfd9f1 | 568 | float ph = prevTime->hour % 12; |
sfaghihi | 11:80a6facfd9f1 | 569 | float hp_the = (M_PI/6.0)*(ph + (pm/60.0) + (ps/3600.0)); |
sfaghihi | 11:80a6facfd9f1 | 570 | float mp_the = (M_PI/6.0)*(pm + (ps/60.0))/5.0; |
sfaghihi | 11:80a6facfd9f1 | 571 | float sp_the = (M_PI/6.0)*ps/5.0; |
sfaghihi | 13:334c591a982b | 572 | int hxp = xc + r*sin(hp_the)/4.0; |
sfaghihi | 13:334c591a982b | 573 | int hyp = yc - r*cos(hp_the)/4.0; // |
sfaghihi | 11:80a6facfd9f1 | 574 | int mxp = xc + r*sin(mp_the)/1.9; // minute hand position |
sfaghihi | 11:80a6facfd9f1 | 575 | int myp = yc - r*cos(mp_the)/1.9; // |
sfaghihi | 11:80a6facfd9f1 | 576 | int sxp = xc + r*sin(sp_the)/1.5; // second hand position |
sfaghihi | 11:80a6facfd9f1 | 577 | int syp = yc - r*cos(sp_the)/1.5; |
sfaghihi | 11:80a6facfd9f1 | 578 | |
sfaghihi | 12:dd5d8eea2e47 | 579 | if (syp != sy || sxp != sx || face) { |
sfaghihi | 11:80a6facfd9f1 | 580 | myTFT.line(xc, yc, sxp, syp, Black); |
sfaghihi | 11:80a6facfd9f1 | 581 | } |
sfaghihi | 11:80a6facfd9f1 | 582 | |
sfaghihi | 12:dd5d8eea2e47 | 583 | if (myp != my || mxp != mx || face) { |
sfaghihi | 11:80a6facfd9f1 | 584 | myTFT.line(xc, yc, mxp, myp, Black); |
sfaghihi | 11:80a6facfd9f1 | 585 | } |
sfaghihi | 11:80a6facfd9f1 | 586 | |
sfaghihi | 12:dd5d8eea2e47 | 587 | if (hyp != hy || hxp != hx || face) { |
sfaghihi | 11:80a6facfd9f1 | 588 | myTFT.line(xc, yc, hxp, hyp, Black); |
sfaghihi | 11:80a6facfd9f1 | 589 | } |
sfaghihi | 11:80a6facfd9f1 | 590 | |
sfaghihi | 11:80a6facfd9f1 | 591 | myTFT.line(xc, yc, hx, hy, Yellow); |
sfaghihi | 11:80a6facfd9f1 | 592 | myTFT.line(xc, yc, mx, my, White); |
sfaghihi | 11:80a6facfd9f1 | 593 | myTFT.line(xc, yc, sx, sy, Orange); |
sfaghihi | 11:80a6facfd9f1 | 594 | |
amilner1 | 5:fe6910712822 | 595 | |
amilner1 | 5:fe6910712822 | 596 | } |
amilner1 | 5:fe6910712822 | 597 | |
sfaghihi | 11:80a6facfd9f1 | 598 | void Display::drawClockBig(TimeClass *time, bool face, TimeClass *prevTime) |
sfaghihi | 8:e7fce7d9ebdd | 599 | { |
sfaghihi | 8:e7fce7d9ebdd | 600 | int xc = myTFT.width()/2; |
sfaghihi | 8:e7fce7d9ebdd | 601 | int yc = myTFT.height()/2; |
sfaghihi | 11:80a6facfd9f1 | 602 | int r = (myTFT.height()*5)/12; |
sfaghihi | 11:80a6facfd9f1 | 603 | if (face) { |
sfaghihi | 11:80a6facfd9f1 | 604 | myTFT.circle(xc, yc, r, White); // clock circle |
sfaghihi | 11:80a6facfd9f1 | 605 | for (int i = 0; i < 12; i++) |
sfaghihi | 11:80a6facfd9f1 | 606 | myTFT.line(xc+6*r/7*sin((float)i*M_PI/6.0), yc-6*r/7*cos((float)i*M_PI/6.0), |
sfaghihi | 8:e7fce7d9ebdd | 607 | xc + r*sin((float)i*M_PI/6.0), yc-r*cos((float)i*M_PI/6.0), 0xFFFFFF); |
sfaghihi | 11:80a6facfd9f1 | 608 | } |
sfaghihi | 8:e7fce7d9ebdd | 609 | |
sfaghihi | 8:e7fce7d9ebdd | 610 | //LOG("SO Near: %x\r\n", (void *)time); |
sfaghihi | 8:e7fce7d9ebdd | 611 | float h = time->hour % 12; |
sfaghihi | 8:e7fce7d9ebdd | 612 | float m = time->minute; |
sfaghihi | 8:e7fce7d9ebdd | 613 | float s = time->second; |
sfaghihi | 8:e7fce7d9ebdd | 614 | float htheta = (M_PI/6.0)*(h + (m/60.0) + (s/3600.0)); // hour hand angle |
sfaghihi | 8:e7fce7d9ebdd | 615 | float mtheta = (M_PI/6.0)*(m + (s/60.0))/5.0; // minute hand angle |
sfaghihi | 8:e7fce7d9ebdd | 616 | float stheta = (M_PI/6.0)*s/5.0; // second hand angle |
sfaghihi | 8:e7fce7d9ebdd | 617 | int hx = xc + r*sin(htheta)/4.5; // hour hand position |
sfaghihi | 8:e7fce7d9ebdd | 618 | int hy = yc - r*cos(htheta)/4.5; // |
sfaghihi | 8:e7fce7d9ebdd | 619 | int mx = xc + r*sin(mtheta)/1.9; // minute hand position |
sfaghihi | 8:e7fce7d9ebdd | 620 | int my = yc - r*cos(mtheta)/1.9; // |
sfaghihi | 8:e7fce7d9ebdd | 621 | int sx = xc + r*sin(stheta)/1.5; // second hand position |
sfaghihi | 8:e7fce7d9ebdd | 622 | int sy = yc - r*cos(stheta)/1.5; // |
sfaghihi | 11:80a6facfd9f1 | 623 | |
sfaghihi | 11:80a6facfd9f1 | 624 | float ps = prevTime->second; |
sfaghihi | 11:80a6facfd9f1 | 625 | float pm = prevTime->minute; |
sfaghihi | 11:80a6facfd9f1 | 626 | float ph = prevTime->hour % 12; |
sfaghihi | 11:80a6facfd9f1 | 627 | float hp_the = (M_PI/6.0)*(ph + (pm/60.0) + (ps/3600.0)); |
sfaghihi | 11:80a6facfd9f1 | 628 | float mp_the = (M_PI/6.0)*(pm + (ps/60.0))/5.0; |
sfaghihi | 11:80a6facfd9f1 | 629 | float sp_the = (M_PI/6.0)*ps/5.0; |
sfaghihi | 11:80a6facfd9f1 | 630 | int hxp = xc + r*sin(hp_the)/4.5; |
sfaghihi | 11:80a6facfd9f1 | 631 | int hyp = yc - r*cos(hp_the)/4.5; // |
sfaghihi | 11:80a6facfd9f1 | 632 | int mxp = xc + r*sin(mp_the)/1.9; // minute hand position |
sfaghihi | 11:80a6facfd9f1 | 633 | int myp = yc - r*cos(mp_the)/1.9; // |
sfaghihi | 11:80a6facfd9f1 | 634 | int sxp = xc + r*sin(sp_the)/1.5; // second hand position |
sfaghihi | 11:80a6facfd9f1 | 635 | int syp = yc - r*cos(sp_the)/1.5; |
sfaghihi | 11:80a6facfd9f1 | 636 | |
sfaghihi | 12:dd5d8eea2e47 | 637 | if (syp != sy || sxp != sx || face) { |
sfaghihi | 11:80a6facfd9f1 | 638 | myTFT.line(xc, yc, sxp, syp, Black); |
sfaghihi | 8:e7fce7d9ebdd | 639 | } |
sfaghihi | 8:e7fce7d9ebdd | 640 | |
sfaghihi | 12:dd5d8eea2e47 | 641 | if (myp != my || mxp != mx || face) { |
sfaghihi | 11:80a6facfd9f1 | 642 | myTFT.line(xc, yc, mxp, myp, Black); |
sfaghihi | 11:80a6facfd9f1 | 643 | } |
sfaghihi | 11:80a6facfd9f1 | 644 | |
sfaghihi | 12:dd5d8eea2e47 | 645 | if (hyp != hy || hxp != hx || face) { |
sfaghihi | 11:80a6facfd9f1 | 646 | myTFT.line(xc, yc, hxp, hyp, Black); |
sfaghihi | 11:80a6facfd9f1 | 647 | } |
sfaghihi | 11:80a6facfd9f1 | 648 | |
sfaghihi | 11:80a6facfd9f1 | 649 | myTFT.line(xc, yc, hx, hy, Yellow); |
sfaghihi | 11:80a6facfd9f1 | 650 | myTFT.line(xc, yc, mx, my, White); |
sfaghihi | 11:80a6facfd9f1 | 651 | myTFT.line(xc, yc, sx, sy, Orange); |
sfaghihi | 11:80a6facfd9f1 | 652 | |
sfaghihi | 10:e5bcd9088d5d | 653 | } |
sfaghihi | 8:e7fce7d9ebdd | 654 | |
sfaghihi | 9:c10fb4ac8aa7 | 655 | char *month_names[] = |
sfaghihi | 9:c10fb4ac8aa7 | 656 | { |
sfaghihi | 9:c10fb4ac8aa7 | 657 | "Jan.", "Feb.", "Mar.", "Apr.", "May", "Jun.", |
sfaghihi | 9:c10fb4ac8aa7 | 658 | "Jul.", "Aug.", "Sep.", "Oct.", "Nov.", "Dec." |
sfaghihi | 9:c10fb4ac8aa7 | 659 | }; |
sfaghihi | 9:c10fb4ac8aa7 | 660 | char *dow_names[] = |
sfaghihi | 9:c10fb4ac8aa7 | 661 | { |
sfaghihi | 9:c10fb4ac8aa7 | 662 | "Sunday", "Monday", "Tuesday", "Wednesday", |
sfaghihi | 9:c10fb4ac8aa7 | 663 | "Thursday", "Friday", "Saturday" |
sfaghihi | 9:c10fb4ac8aa7 | 664 | }; |
sfaghihi | 9:c10fb4ac8aa7 | 665 | |
sfaghihi | 10:e5bcd9088d5d | 666 | void Display::cls() |
sfaghihi | 10:e5bcd9088d5d | 667 | { |
sfaghihi | 10:e5bcd9088d5d | 668 | myTFT.fillrect(0, 0, myTFT.width(), myTFT.height(), Black); |
sfaghihi | 10:e5bcd9088d5d | 669 | } |
sfaghihi | 9:c10fb4ac8aa7 | 670 | |
amilner1 | 5:fe6910712822 | 671 | void Display::drawDate(DateClass *date) |
amilner1 | 5:fe6910712822 | 672 | { |
sfaghihi | 8:e7fce7d9ebdd | 673 | /*int d = date->day; |
sfaghihi | 7:5269fbadd5d7 | 674 | int m = date->month; |
sfaghihi | 8:e7fce7d9ebdd | 675 | int y = date->year;*/ |
sfaghihi | 10:e5bcd9088d5d | 676 | //LOG("IN Date\r\n"); |
sfaghihi | 9:c10fb4ac8aa7 | 677 | //myTFT.set_font((unsigned char*)Arial28x28); |
sfaghihi | 17:7ba6c8e4945b | 678 | myTFT.fillrect(0, 185, 100, myTFT.height(), Black); |
sfaghihi | 13:334c591a982b | 679 | myTFT.foreground(Orange); |
sfaghihi | 12:dd5d8eea2e47 | 680 | myTFT.locate(20,190); |
sfaghihi | 17:7ba6c8e4945b | 681 | text(20, 190, dow_names[date->dow]); |
sfaghihi | 10:e5bcd9088d5d | 682 | //LOG("OUTDATE\r\n"); |
sfaghihi | 10:e5bcd9088d5d | 683 | //myTFT.set_font((unsigned char*)Arial12x12); |
sfaghihi | 17:7ba6c8e4945b | 684 | char buf[15]; |
sfaghihi | 17:7ba6c8e4945b | 685 | sprintf(buf, "%d %s %d\n", date->day, month_names[(date->month)-1], date->year); |
sfaghihi | 12:dd5d8eea2e47 | 686 | myTFT.locate(20,210); |
sfaghihi | 17:7ba6c8e4945b | 687 | text(20, 210, buf); |
sfaghihi | 13:334c591a982b | 688 | myTFT.foreground(White); |
sfaghihi | 13:334c591a982b | 689 | } |
sfaghihi | 13:334c591a982b | 690 | |
sfaghihi | 14:85c51b4eff4b | 691 | void Display::drawImg(int x, int y, const unsigned char *img, int w, int h) |
sfaghihi | 13:334c591a982b | 692 | { |
sfaghihi | 13:334c591a982b | 693 | for (int i = 0; i < w; i++) |
sfaghihi | 13:334c591a982b | 694 | for (int j = 0; j < h; j++) |
sfaghihi | 17:7ba6c8e4945b | 695 | myTFT.pixel(x+i, y+j, (int)((((int)img[2*(w*j+i)+1]) << 8) & 0xff00) | ((int)img[2*(w*j+i)]&0x00ff)); |
sfaghihi | 7:5269fbadd5d7 | 696 | } |
sfaghihi | 7:5269fbadd5d7 | 697 | |
sfaghihi | 16:a639477091ad | 698 | void Display::text(int x, int y, const char *str) |
sfaghihi | 16:a639477091ad | 699 | { |
sfaghihi | 16:a639477091ad | 700 | while (*str != '\0') |
sfaghihi | 16:a639477091ad | 701 | myTFT.character(x++, y, *(str++)); |
sfaghihi | 16:a639477091ad | 702 | } |
sfaghihi | 16:a639477091ad | 703 | |
sfaghihi | 16:a639477091ad | 704 | extern DigitalOut led1; |
sfaghihi | 13:334c591a982b | 705 | void Display::drawWeather(WeatherClass *data, bool draw_img) |
sfaghihi | 7:5269fbadd5d7 | 706 | { |
sfaghihi | 17:7ba6c8e4945b | 707 | if (draw_img) |
sfaghihi | 17:7ba6c8e4945b | 708 | drawImg(200, 10, weat_ico.pixel_data, weat_ico.width, weat_ico.height); |
amilner1 | 15:452425c099ef | 709 | // if (data->type == sunny) |
amilner1 | 15:452425c099ef | 710 | // drawImg(200, 10, sunny_pic.pixel_data, sunny_pic.width, sunny_pic.height); |
sfaghihi | 16:a639477091ad | 711 | myTFT.set_font((unsigned char*)Arial12x12); |
sfaghihi | 13:334c591a982b | 712 | myTFT.foreground(Yellow); |
sfaghihi | 17:7ba6c8e4945b | 713 | myTFT.locate(210, 95); |
sfaghihi | 17:7ba6c8e4945b | 714 | myTFT.fillrect(200, 90, 200+100, 140, Black); |
sfaghihi | 17:7ba6c8e4945b | 715 | text(210, 95, data->place); |
sfaghihi | 13:334c591a982b | 716 | myTFT.set_font((unsigned char*)Arial28x28); |
sfaghihi | 17:7ba6c8e4945b | 717 | myTFT.locate(200, 115); |
sfaghihi | 16:a639477091ad | 718 | char buf[30]; |
sfaghihi | 16:a639477091ad | 719 | sprintf(buf, "%d %c\n", data->temp, data->isCelsius ? 'C' : 'F'); |
sfaghihi | 17:7ba6c8e4945b | 720 | text(200, 115, buf); |
sfaghihi | 17:7ba6c8e4945b | 721 | myTFT.circle(244, 119, 3, Yellow); |
sfaghihi | 13:334c591a982b | 722 | myTFT.foreground(White); |
sfaghihi | 13:334c591a982b | 723 | myTFT.set_font((unsigned char*)Arial12x12); |
sfaghihi | 7:5269fbadd5d7 | 724 | |
sfaghihi | 7:5269fbadd5d7 | 725 | } |
sfaghihi | 7:5269fbadd5d7 | 726 | |
sfaghihi | 7:5269fbadd5d7 | 727 | void Display::drawAlarm(TimeClass *alarmTime) |
sfaghihi | 7:5269fbadd5d7 | 728 | { |
sfaghihi | 18:2afeed90c051 | 729 | myTFT.fillrect(160, 165, myTFT.width(), myTFT.height(), Black); |
sfaghihi | 17:7ba6c8e4945b | 730 | myTFT.foreground(Red); |
sfaghihi | 17:7ba6c8e4945b | 731 | myTFT.set_font((unsigned char*)Arial24x23); |
sfaghihi | 18:2afeed90c051 | 732 | myTFT.locate(160,200); |
sfaghihi | 17:7ba6c8e4945b | 733 | //LOG("OUTDATE\r\n"); |
sfaghihi | 17:7ba6c8e4945b | 734 | char buf[15]; |
sfaghihi | 17:7ba6c8e4945b | 735 | sprintf(buf, "%02d:%02d %s\n", alarmTime->hour == 12 ? 12 : alarmTime->hour%12, alarmTime->minute, alarmTime->hour>=12 ? "p.m." : "a.m."); |
sfaghihi | 18:2afeed90c051 | 736 | text(160, 200, buf); |
sfaghihi | 17:7ba6c8e4945b | 737 | myTFT.set_font((unsigned char*)Arial12x12); |
sfaghihi | 17:7ba6c8e4945b | 738 | myTFT.foreground(White); |
sfaghihi | 7:5269fbadd5d7 | 739 | } |
sfaghihi | 7:5269fbadd5d7 | 740 | |
sfaghihi | 11:80a6facfd9f1 | 741 | void Display::drawAll(StateClass *state, bool doCls) |
sfaghihi | 7:5269fbadd5d7 | 742 | { |
sfaghihi | 11:80a6facfd9f1 | 743 | if (doCls) |
sfaghihi | 11:80a6facfd9f1 | 744 | cls(); |
sfaghihi | 8:e7fce7d9ebdd | 745 | if (!(state->screenActive)) |
sfaghihi | 7:5269fbadd5d7 | 746 | return; |
sfaghihi | 10:e5bcd9088d5d | 747 | if (state->screenState == 0) { |
sfaghihi | 11:80a6facfd9f1 | 748 | drawClock(state->time, true, state->prevTime); |
sfaghihi | 12:dd5d8eea2e47 | 749 | drawDate(state->date); |
sfaghihi | 13:334c591a982b | 750 | drawWeather(state->weather, true); |
sfaghihi | 10:e5bcd9088d5d | 751 | if (state->alarm) |
sfaghihi | 10:e5bcd9088d5d | 752 | drawAlarm(state->alarm); |
sfaghihi | 10:e5bcd9088d5d | 753 | } else if (state->screenState == 1) { |
sfaghihi | 11:80a6facfd9f1 | 754 | drawClockBig(state->time, true, state->prevTime); |
sfaghihi | 8:e7fce7d9ebdd | 755 | } |
sfaghihi | 2:56a27b66d03a | 756 | } |