Compare commits
5677 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7e8505fc11 | ||
|
|
f9aec2685c | ||
|
|
5d16497bed | ||
|
|
9f53bbd791 | ||
|
|
e1d367e05a | ||
|
|
f30897500d | ||
|
|
68de12acbf | ||
|
|
6320f9795c | ||
|
|
22b974691e | ||
|
|
4ef627d79f | ||
|
|
19991e269b | ||
|
|
b8b225c8b5 | ||
|
|
a1f026f57a | ||
|
|
2b788e9aa6 | ||
|
|
140e4ac507 | ||
|
|
1c52d76668 | ||
|
|
178735b958 | ||
|
|
4c179ba3f7 | ||
|
|
05f51e9355 | ||
|
|
75e3aa12c5 | ||
|
|
99a5074372 | ||
|
|
4c6f695bea | ||
|
|
8bc3e63871 | ||
|
|
4d400910b4 | ||
|
|
42208bc031 | ||
|
|
199a1ba0e5 | ||
|
|
4360142bd1 | ||
|
|
ddce1c6ef2 | ||
|
|
72fae2faa5 | ||
|
|
64a81f887a | ||
|
|
64b96f3908 | ||
|
|
52a1268089 | ||
|
|
5584da388c | ||
|
|
efdaf940a5 | ||
|
|
71ec89a112 | ||
|
|
1087e318e5 | ||
|
|
150237f712 | ||
|
|
63dd0f249d | ||
|
|
0b984519c3 | ||
|
|
073e4443e8 | ||
|
|
00ba053c90 | ||
|
|
ff0c931e47 | ||
|
|
a16f3baecc | ||
|
|
49a66bc4cc | ||
|
|
f3f692adf7 | ||
|
|
af84e362cc | ||
|
|
082117c4bb | ||
|
|
0e17d10bf3 | ||
|
|
68077149e2 | ||
|
|
62d7d49719 | ||
|
|
1d8d91afc6 | ||
|
|
a83ad2d9d4 | ||
|
|
0306c1bb0c | ||
|
|
4a733796bd | ||
|
|
0fd0554b5f | ||
|
|
fa6e7cb733 | ||
|
|
7b02a62da8 | ||
|
|
189c101793 | ||
|
|
1c556cd90d | ||
|
|
e442663e2a | ||
|
|
71539bcbeb | ||
|
|
d5790e09a5 | ||
|
|
b26f7fca3f | ||
|
|
2836834d7e | ||
|
|
d8b2726fd3 | ||
|
|
3f87f912c5 | ||
|
|
dd6a7ca197 | ||
|
|
fa4a6cdb5c | ||
|
|
3bef7a4450 | ||
|
|
e561f744fa | ||
|
|
0b45493557 | ||
|
|
18a7276909 | ||
|
|
28b48fc9bb | ||
|
|
10b4fa91eb | ||
|
|
a33d08928a | ||
|
|
15e6ee6c7c | ||
|
|
a9549f7a08 | ||
|
|
cc1ff27256 | ||
|
|
0ce83dee95 | ||
|
|
38873596ec | ||
|
|
ffcbba4447 | ||
|
|
b9b07387d7 | ||
|
|
90e2c42031 | ||
|
|
84b6e11bd5 | ||
|
|
894762259b | ||
|
|
f0cbc85a07 | ||
|
|
130e36d766 | ||
|
|
5d3cfbdc9b | ||
|
|
f55abfeb95 | ||
|
|
38bf5523e1 | ||
|
|
12b3807a7f | ||
|
|
3a3429b1ef | ||
|
|
86812432f3 | ||
|
|
54aff83179 | ||
|
|
78fea4a9ca | ||
|
|
bb68eaa69e | ||
|
|
62b9d7dc73 | ||
|
|
00d71ff0eb | ||
|
|
9b4192cdd0 | ||
|
|
0ebd2f44d4 | ||
|
|
f312ddfa4f | ||
|
|
d83382eb55 | ||
|
|
793939a365 | ||
|
|
7bf2190f03 | ||
|
|
081ef46e76 | ||
|
|
15b6ad41bc | ||
|
|
0268c1d02c | ||
|
|
38a9706e16 | ||
|
|
62d9e3f50e | ||
|
|
3ded99b894 | ||
|
|
4c76314c26 | ||
|
|
f1dbfaf706 | ||
|
|
7d4fa9d504 | ||
|
|
64ab254f26 | ||
|
|
ff78f79762 | ||
|
|
202840e750 | ||
|
|
bfad23d3e2 | ||
|
|
7f9c62437e | ||
|
|
72b4d91d2e | ||
|
|
ee6003be87 | ||
|
|
4716dac874 | ||
|
|
0e72c315a0 | ||
|
|
4937519d51 | ||
|
|
63469ed8f7 | ||
|
|
22556a7bbf | ||
|
|
c4cbc54484 | ||
|
|
7a4758a6a2 | ||
|
|
995a9238b3 | ||
|
|
5296af94d2 | ||
|
|
0d342bac51 | ||
|
|
832d33ce9d | ||
|
|
c3cab37d7e | ||
|
|
e58d1bf974 | ||
|
|
90b6324563 | ||
|
|
43d3463d5d | ||
|
|
e64b7a3ab2 | ||
|
|
1af05797d7 | ||
|
|
9a8de23858 | ||
|
|
5b3d968634 | ||
|
|
300b81bfcb | ||
|
|
0a6ae664bd | ||
|
|
c4df5cf9a6 | ||
|
|
e6a7be922b | ||
|
|
1525c2530e | ||
|
|
016e4c0193 | ||
|
|
be642610ae | ||
|
|
02f61832c0 | ||
|
|
dabf393920 | ||
|
|
e4679c1b78 | ||
|
|
62f52ebb3a | ||
|
|
e8e25b80d1 | ||
|
|
2822c0890a | ||
|
|
c45d6b2017 | ||
|
|
8d4dd88bf9 | ||
|
|
3c9464eea4 | ||
|
|
5b12627e14 | ||
|
|
9caf5c05e7 | ||
|
|
50889c0f94 | ||
|
|
99b6a132bc | ||
|
|
e6a675e6ec | ||
|
|
1bc6509d02 | ||
|
|
1db9d9f76f | ||
|
|
8737c35ded | ||
|
|
e8ed4329ea | ||
|
|
a5f72330fb | ||
|
|
9bb8176d34 | ||
|
|
9b45f342ee | ||
|
|
e4eaf32b4d | ||
|
|
0c3cae59d9 | ||
|
|
131acf304b | ||
|
|
8bd6b60a01 | ||
|
|
e2eef1256a | ||
|
|
a0a93e35ae | ||
|
|
2325bede8a | ||
|
|
56cd747c8b | ||
|
|
48098b1675 | ||
|
|
f6a6704b66 | ||
|
|
5e3e8fcdb9 | ||
|
|
0949c0f326 | ||
|
|
81f31efaee | ||
|
|
c49e987b1e | ||
|
|
3572fa22a0 | ||
|
|
1d1dc8e339 | ||
|
|
bbfbcb8a5d | ||
|
|
44d400db83 | ||
|
|
4a71285c34 | ||
|
|
6357619ab2 | ||
|
|
e3611ad209 | ||
|
|
95d5a0c480 | ||
|
|
838a420e27 | ||
|
|
248b7dfa59 | ||
|
|
0d166f9c7d | ||
|
|
86c18ea6e0 | ||
|
|
b7a67f6f74 | ||
|
|
1c042bbaea | ||
|
|
899db41a5c | ||
|
|
2ef6b86ccd | ||
|
|
342f65eb8e | ||
|
|
0eae26a7be | ||
|
|
fd346c6cd1 | ||
|
|
d3a8a81756 | ||
|
|
b7f86bffd5 | ||
|
|
79810b7fcb | ||
|
|
84c874c53b | ||
|
|
04d64351a2 | ||
|
|
c8ac908db2 | ||
|
|
b57ef4b261 | ||
|
|
1a5cbc9052 | ||
|
|
f36225c3e0 | ||
|
|
97b5a5f469 | ||
|
|
a1f5245e27 | ||
|
|
ef8f829513 | ||
|
|
d9cdb4ae19 | ||
|
|
451062553e | ||
|
|
0fcf2b1110 | ||
|
|
f36f084465 | ||
|
|
f6468f0af3 | ||
|
|
439e73d79c | ||
|
|
0547d9d651 | ||
|
|
3b34fbd4c4 | ||
|
|
a05a65e7d2 | ||
|
|
aec211fc80 | ||
|
|
1084068a3e | ||
|
|
e9ae585647 | ||
|
|
dda76e50a9 | ||
|
|
37849969ad | ||
|
|
707349d492 | ||
|
|
f6a6839a82 | ||
|
|
79c2f05e7d | ||
|
|
4dca6d50c0 | ||
|
|
23fc81f1af | ||
|
|
d035bfb1a9 | ||
|
|
80400ab3f8 | ||
|
|
a338dce83f | ||
|
|
4108c5d01f | ||
|
|
9520e5121c | ||
|
|
e94f782f51 | ||
|
|
6d1f6a9516 | ||
|
|
a578749622 | ||
|
|
0d0dfba203 | ||
|
|
91a399ae7f | ||
|
|
2b9eb4437b | ||
|
|
5bd66241df | ||
|
|
1bb1ce7475 | ||
|
|
c305c2cc6b | ||
|
|
b310047ded | ||
|
|
bda4957f9b | ||
|
|
f10d3564e1 | ||
|
|
bc483b2354 | ||
|
|
2d7f94cae1 | ||
|
|
7481563bd9 | ||
|
|
bd550bb45a | ||
|
|
b419ca254b | ||
|
|
7eed008e8e | ||
|
|
53dfeed6c0 | ||
|
|
ef513ef7fb | ||
|
|
7b304cee16 | ||
|
|
ea7363a8f4 | ||
|
|
8e1a21cf53 | ||
|
|
fc773c2784 | ||
|
|
bfe4ceedd1 | ||
|
|
ffd8b595d1 | ||
|
|
1457e40208 | ||
|
|
1ad53cee1f | ||
|
|
53f1e5ff5b | ||
|
|
0e6ef65aec | ||
|
|
ee17051933 | ||
|
|
c4ffe74d71 | ||
|
|
55b2af9464 | ||
|
|
b4ee420a37 | ||
|
|
f926351fa8 | ||
|
|
51f2733b7f | ||
|
|
fc4a42bbdc | ||
|
|
89ccd463d7 | ||
|
|
473d640e88 | ||
|
|
57499291d3 | ||
|
|
56e51efeea | ||
|
|
d22eb261cf | ||
|
|
fbf2f36cae | ||
|
|
536778812f | ||
|
|
e8941d2bd8 | ||
|
|
d854c8fa5f | ||
|
|
e9a97127f7 | ||
|
|
0391e5bcc7 | ||
|
|
d02a867424 | ||
|
|
2d820e6204 | ||
|
|
f9f7697b96 | ||
|
|
409d7378d9 | ||
|
|
669fe74096 | ||
|
|
36d08f8ad3 | ||
|
|
8a7661df89 | ||
|
|
6e658a7c04 | ||
|
|
95046c9047 | ||
|
|
5beca89412 | ||
|
|
5ac9d9754e | ||
|
|
5e7943f19f | ||
|
|
5a5e1d0401 | ||
|
|
a88b91b3ed | ||
|
|
5c4c052fd7 | ||
|
|
d26c32375e | ||
|
|
994c695862 | ||
|
|
f154e94981 | ||
|
|
b7f8163291 | ||
|
|
675295692b | ||
|
|
d1e55a2d1d | ||
|
|
5e1f0e5e90 | ||
|
|
bdcccee203 | ||
|
|
d70dad6807 | ||
|
|
93e35880ce | ||
|
|
9b970cf12f | ||
|
|
022b6b9067 | ||
|
|
fc07b0ea30 | ||
|
|
a484adcb30 | ||
|
|
31679640c0 | ||
|
|
3469a0a1a0 | ||
|
|
38c0f800d6 | ||
|
|
57e37b6c24 | ||
|
|
07509febcd | ||
|
|
e593da1c23 | ||
|
|
7f87a044cd | ||
|
|
b841b9bd01 | ||
|
|
ceeba58dc9 | ||
|
|
a49c6608c9 | ||
|
|
9903bc8d36 | ||
|
|
aa4db785f2 | ||
|
|
00e27503ce | ||
|
|
f7e3a5ad85 | ||
|
|
3cade6245e | ||
|
|
d7aee3b7b6 | ||
|
|
64fdc4f24b | ||
|
|
295aa3d60d | ||
|
|
1d0452c41e | ||
|
|
96a5e64bb8 | ||
|
|
595e684658 | ||
|
|
21dc07c40a | ||
|
|
cda363a15e | ||
|
|
9f44452834 | ||
|
|
7a50dbc00d | ||
|
|
3162d378ff | ||
|
|
d129ac1b37 | ||
|
|
1ea529b9c1 | ||
|
|
5ffabd56eb | ||
|
|
d0e1166cce | ||
|
|
5b75a018b7 | ||
|
|
c75b560604 | ||
|
|
a2cda631d9 | ||
|
|
a7b0b390cd | ||
|
|
9ff2d34bf8 | ||
|
|
92ad973729 | ||
|
|
0be8b22d3c | ||
|
|
4e1f2f89f6 | ||
|
|
ac32ed74b4 | ||
|
|
89f9902053 | ||
|
|
c6f7ea9f22 | ||
|
|
747b2b9bf4 | ||
|
|
23bdc1556d | ||
|
|
ec03e46ffa | ||
|
|
47edbd9220 | ||
|
|
00c83e9ca6 | ||
|
|
832321f55d | ||
|
|
941a09b6ac | ||
|
|
16787c94af | ||
|
|
28d83b42e1 | ||
|
|
23c5266076 | ||
|
|
0673f335e1 | ||
|
|
1c9ccce520 | ||
|
|
9c021158e5 | ||
|
|
254d352fca | ||
|
|
baa101253a | ||
|
|
a333bba725 | ||
|
|
ac7ee4b94a | ||
|
|
2230ef6e09 | ||
|
|
24eaf2d7e0 | ||
|
|
f4196d394b | ||
|
|
ebdf8b6b1a | ||
|
|
59f9bb2120 | ||
|
|
f339a39654 | ||
|
|
a3d88aebed | ||
|
|
d5bc5547ee | ||
|
|
f8065da48f | ||
|
|
127fb9860c | ||
|
|
c5179cffb4 | ||
|
|
0d8c81b2a6 | ||
|
|
856013cc0f | ||
|
|
0b6c2d893e | ||
|
|
b6d857f1d6 | ||
|
|
2e235aff03 | ||
|
|
87992f3669 | ||
|
|
64ebec50dc | ||
|
|
e3b02757d3 | ||
|
|
70325a6a0f | ||
|
|
d81de7f521 | ||
|
|
deff538909 | ||
|
|
a9a78f2831 | ||
|
|
10f7bbee32 | ||
|
|
b49a0e39d5 | ||
|
|
53f77dfadf | ||
|
|
937dca4432 | ||
|
|
bbe0ffb2fa | ||
|
|
1bad8f1b17 | ||
|
|
5f06f42ccd | ||
|
|
e5edbf9d35 | ||
|
|
865071a946 | ||
|
|
329f5b4df9 | ||
|
|
dcdaa2025f | ||
|
|
0400783444 | ||
|
|
768a1d2713 | ||
|
|
711fb26ae5 | ||
|
|
7f15968ce7 | ||
|
|
262ff9584c | ||
|
|
af4c62b422 | ||
|
|
4a6f625f86 | ||
|
|
e0c71344ed | ||
|
|
42a336f8bc | ||
|
|
a0badf572e | ||
|
|
a358b72ec8 | ||
|
|
6e8dcba698 | ||
|
|
9d6b2ebf50 | ||
|
|
dc8d8cb39c | ||
|
|
509e1ab053 | ||
|
|
e9dadacf7b | ||
|
|
6a514a1e8e | ||
|
|
1ea78cdd69 | ||
|
|
303ddb862a | ||
|
|
f3d64b7115 | ||
|
|
98382fcea5 | ||
|
|
629c039eed | ||
|
|
2a7f1091ce | ||
|
|
3d4aa015a8 | ||
|
|
6b53431116 | ||
|
|
e45c4d6aa3 | ||
|
|
7b512742f4 | ||
|
|
b065a60dd0 | ||
|
|
ae3504594c | ||
|
|
edc671edea | ||
|
|
50688f03fb | ||
|
|
98814e1c47 | ||
|
|
23d1801022 | ||
|
|
c2342c3528 | ||
|
|
96cf556139 | ||
|
|
31fdaea269 | ||
|
|
1c48817a47 | ||
|
|
0d52eaa875 | ||
|
|
5ebef425ce | ||
|
|
5dfa152ba2 | ||
|
|
1c4f672eae | ||
|
|
1bcd47e65f | ||
|
|
1465fc0632 | ||
|
|
07a61057ba | ||
|
|
39fcb5b5f8 | ||
|
|
bb5717c5b3 | ||
|
|
f3155af444 | ||
|
|
ab61c09bff | ||
|
|
a087a653cd | ||
|
|
b65ab21733 | ||
|
|
37df0c1f22 | ||
|
|
7f8ca85e69 | ||
|
|
f64649933f | ||
|
|
68da497f35 | ||
|
|
afd865d8dd | ||
|
|
0832a60db3 | ||
|
|
cb4cd76086 | ||
|
|
54f75ebbfe | ||
|
|
454984376c | ||
|
|
0369929ffc | ||
|
|
6134bff81b | ||
|
|
b2c670fd94 | ||
|
|
530e92e653 | ||
|
|
cb7817093f | ||
|
|
9114a14eca | ||
|
|
3874f4a097 | ||
|
|
01e4b0c067 | ||
|
|
bdd0517a5b | ||
|
|
3dc49fd1c6 | ||
|
|
849ac80e90 | ||
|
|
7126a5e5a7 | ||
|
|
c061656659 | ||
|
|
25a7ceabdb | ||
|
|
9b6d2da9bf | ||
|
|
709d037b8e | ||
|
|
102c9595f2 | ||
|
|
4718b8ad02 | ||
|
|
efc3873149 | ||
|
|
6c2438deae | ||
|
|
b258cc85bf | ||
|
|
19f840a9b5 | ||
|
|
83a4e8559c | ||
|
|
b24b0f385f | ||
|
|
690ed531b6 | ||
|
|
27943f9e31 | ||
|
|
1ee648ecd2 | ||
|
|
6b4166e67f | ||
|
|
0138c0b55b | ||
|
|
8431af2bff | ||
|
|
f83bc0aa13 | ||
|
|
4d8e7cdb30 | ||
|
|
2d74c2042a | ||
|
|
e585c37d7d | ||
|
|
1803f672f8 | ||
|
|
74e5199808 | ||
|
|
441ee3e53f | ||
|
|
a63491e6eb | ||
|
|
3a88cfd992 | ||
|
|
0f2ee414db | ||
|
|
0f14e0e978 | ||
|
|
5a98c83eef | ||
|
|
752a1e76ab | ||
|
|
ce9a4afe95 | ||
|
|
e0df35e6b5 | ||
|
|
289c5dcccb | ||
|
|
98f83dc756 | ||
|
|
0550f30790 | ||
|
|
077eeaa0f4 | ||
|
|
12417d087b | ||
|
|
a5a143f944 | ||
|
|
cf1e19d167 | ||
|
|
1cea1687f3 | ||
|
|
f786cc5145 | ||
|
|
049e8d5963 | ||
|
|
993802c404 | ||
|
|
ff6518c0a8 | ||
|
|
8ccfdaca02 | ||
|
|
e7519c50b6 | ||
|
|
c1aac3a0c9 | ||
|
|
43d0391d82 | ||
|
|
fc9f8d27eb | ||
|
|
d0282e5ba8 | ||
|
|
1d150e41b6 | ||
|
|
55595d444d | ||
|
|
2142beb2e5 | ||
|
|
c497a491f4 | ||
|
|
b11551c767 | ||
|
|
441e822fb3 | ||
|
|
47c19aa2b3 | ||
|
|
4a5dee6356 | ||
|
|
0fcd1f4a49 | ||
|
|
48e264e4e1 | ||
|
|
8f09d2e790 | ||
|
|
b2a275891c | ||
|
|
bdd366b97c | ||
|
|
20964ca7dc | ||
|
|
b904ba0f29 | ||
|
|
4ede13e36a | ||
|
|
751cd1f533 | ||
|
|
4cffee3ca3 | ||
|
|
47e4e5f1db | ||
|
|
5681017d0c | ||
|
|
ab8b24fdba | ||
|
|
ab9f0f2c4f | ||
|
|
e81b946f06 | ||
|
|
967f951789 | ||
|
|
a3229b30ec | ||
|
|
798f34abcd | ||
|
|
31e329f143 | ||
|
|
9906e96ffb | ||
|
|
7116a8645c | ||
|
|
2dab109baa | ||
|
|
aa89bb71f9 | ||
|
|
814d908a8a | ||
|
|
4d4e692c81 | ||
|
|
4d9a5fef3b | ||
|
|
e9bd6ef9fe | ||
|
|
865055e07a | ||
|
|
2bd6dc02d6 | ||
|
|
40bbe58371 | ||
|
|
d33ca3d058 | ||
|
|
f19fa64e98 | ||
|
|
0f57818f2d | ||
|
|
aa93e1f21a | ||
|
|
27cb4db80e | ||
|
|
d1d143781e | ||
|
|
bd321d4b7c | ||
|
|
ac2d7ab14c | ||
|
|
94e18ce324 | ||
|
|
a022defe06 | ||
|
|
227951a4ec | ||
|
|
3f4636e916 | ||
|
|
602ca5dea6 | ||
|
|
fcfde7c2f5 | ||
|
|
a4709ba765 | ||
|
|
7e9c846ec3 | ||
|
|
9fd35c84ce | ||
|
|
8e7d1004cf | ||
|
|
32028902c3 | ||
|
|
bb93ea1be4 | ||
|
|
e110f5abce | ||
|
|
ac71cdc265 | ||
|
|
4762dfe797 | ||
|
|
af61f37b65 | ||
|
|
b9703fdf36 | ||
|
|
5e5045c4ee | ||
|
|
5639b8ca20 | ||
|
|
28e1614c2e | ||
|
|
86d0bc1af5 | ||
|
|
48b7a1e66e | ||
|
|
770adcfa15 | ||
|
|
624336f453 | ||
|
|
7b29c60c46 | ||
|
|
534f2d69c1 | ||
|
|
37874a6472 | ||
|
|
b9d351899a | ||
|
|
7010f92c4b | ||
|
|
6e0bcb80a2 | ||
|
|
4ff708cb3a | ||
|
|
9ca25118d0 | ||
|
|
b3f81eead5 | ||
|
|
776632c503 | ||
|
|
8061836e74 | ||
|
|
249f600ceb | ||
|
|
8d157a4520 | ||
|
|
ed6bbe012b | ||
|
|
4db68d704f | ||
|
|
bb5b1e19b0 | ||
|
|
47805e18f8 | ||
|
|
0be9fdb455 | ||
|
|
84ce3a6bea | ||
|
|
711703dcd1 | ||
|
|
a84e3d1b80 | ||
|
|
9201197878 | ||
|
|
814a2eaf8f | ||
|
|
d9b0b964be | ||
|
|
d13573c9cd | ||
|
|
786617e375 | ||
|
|
e6dfc991ae | ||
|
|
a89f4703df | ||
|
|
41b5d720e2 | ||
|
|
4ee3502c8f | ||
|
|
f5b5b9e8ec | ||
|
|
f088c6a850 | ||
|
|
cf87d3c700 | ||
|
|
e9805a0bcb | ||
|
|
51fd226a4d | ||
|
|
d80ef43c19 | ||
|
|
35cd545106 | ||
|
|
1fe0646d25 | ||
|
|
328ddda654 | ||
|
|
55991962be | ||
|
|
b9116d4050 | ||
|
|
15f94e5ee5 | ||
|
|
ea3217cd46 | ||
|
|
76b861d759 | ||
|
|
7360e9343a | ||
|
|
bdb452ed81 | ||
|
|
65ef774e8d | ||
|
|
a920b10483 | ||
|
|
ed8f1ca9cf | ||
|
|
ca6d00b862 | ||
|
|
23d21dd81c | ||
|
|
a7d7f36871 | ||
|
|
a5df89eef7 | ||
|
|
93db4f4535 | ||
|
|
f0d952d33a | ||
|
|
ad28da7eb4 | ||
|
|
288af0ddf6 | ||
|
|
e7d9db284e | ||
|
|
7c60853219 | ||
|
|
c6f694a247 | ||
|
|
4e6e02bc3e | ||
|
|
e3ddf6e81a | ||
|
|
899e0fcdbb | ||
|
|
35b1149d96 | ||
|
|
c80eda073f | ||
|
|
7d24f152d8 | ||
|
|
61225e685d | ||
|
|
d5c1c72a76 | ||
|
|
aaf018e5a0 | ||
|
|
583fc4ee2a | ||
|
|
55c3929359 | ||
|
|
c5713b5e98 | ||
|
|
be498d6280 | ||
|
|
b09b469dd5 | ||
|
|
319e2b5760 | ||
|
|
f139642e0f | ||
|
|
abb44cf564 | ||
|
|
ade76e53de | ||
|
|
cc4d3a215e | ||
|
|
d4f5821cd6 | ||
|
|
9aff30da0c | ||
|
|
78899fc241 | ||
|
|
7a342ecb93 | ||
|
|
0f8c3ed29a | ||
|
|
9720d21301 | ||
|
|
c2cec563dc | ||
|
|
9e8021d6a4 | ||
|
|
e7b22a0ed4 | ||
|
|
ab0fe1a7dd | ||
|
|
4fc000fe90 | ||
|
|
e0f68cda1e | ||
|
|
5d4e309dd3 | ||
|
|
6fd13879ae | ||
|
|
600429a067 | ||
|
|
e690471739 | ||
|
|
732bf89878 | ||
|
|
c58cc113dd | ||
|
|
014b739bac | ||
|
|
f8ad15fde8 | ||
|
|
167ecd8620 | ||
|
|
408751d5e0 | ||
|
|
12a244f24f | ||
|
|
f12285015a | ||
|
|
93f0012959 | ||
|
|
f6a799c7b3 | ||
|
|
82fb046013 | ||
|
|
2a7e1d459f | ||
|
|
464d98d178 | ||
|
|
ccf61eca84 | ||
|
|
ff4301a422 | ||
|
|
326d5b84e7 | ||
|
|
5edd5d1e1f | ||
|
|
9895e6d766 | ||
|
|
b3d7d33faf | ||
|
|
cf8541a7a7 | ||
|
|
cd3ec5a77b | ||
|
|
0737b1aecf | ||
|
|
e02b06672c | ||
|
|
0f5d457252 | ||
|
|
475041656c | ||
|
|
04a55c9188 | ||
|
|
6bcd4eb12d | ||
|
|
efeb6efe77 | ||
|
|
b7db91c46d | ||
|
|
0b0b822671 | ||
|
|
77f500b857 | ||
|
|
3642a12fc1 | ||
|
|
af214ff121 | ||
|
|
62b875f918 | ||
|
|
2c42526763 | ||
|
|
d64ab63026 | ||
|
|
f00b48f9a8 | ||
|
|
160c8be191 | ||
|
|
7aaa8bc8bd | ||
|
|
52a8bbefcf | ||
|
|
6241bcf0c8 | ||
|
|
9470554f63 | ||
|
|
f368c14a61 | ||
|
|
f2ce4a25a3 | ||
|
|
11f1392026 | ||
|
|
725ec68faa | ||
|
|
16ae9ee88b | ||
|
|
9b88c3e79b | ||
|
|
0652f19673 | ||
|
|
bb381e22b2 | ||
|
|
0d7736d663 | ||
|
|
40de135d4d | ||
|
|
dd0c5de4c7 | ||
|
|
832cb7e1ac | ||
|
|
7af99d03d3 | ||
|
|
bf850827f7 | ||
|
|
e0e406dbcc | ||
|
|
b2eda1af2f | ||
|
|
0ff57c640c | ||
|
|
3949d246df | ||
|
|
b7b303f4bf | ||
|
|
53abfdc2c3 | ||
|
|
8668571bee | ||
|
|
faacfe13c2 | ||
|
|
d47f29bd4c | ||
|
|
fe4c69b64a | ||
|
|
93097af0ed | ||
|
|
99f983d066 | ||
|
|
0074d63962 | ||
|
|
7622973a31 | ||
|
|
d57a668097 | ||
|
|
437978d349 | ||
|
|
a988f9304d | ||
|
|
21867c7fef | ||
|
|
d37bd33c31 | ||
|
|
b4f82d1081 | ||
|
|
f06602ff7e | ||
|
|
ee20f21a24 | ||
|
|
7714152013 | ||
|
|
5ad9257df4 | ||
|
|
62aa137548 | ||
|
|
37550e9d98 | ||
|
|
05eed72b69 | ||
|
|
df09532a9c | ||
|
|
59378db7de | ||
|
|
c8e348731f | ||
|
|
7a1fa2177c | ||
|
|
1df90aaf0e | ||
|
|
ac8083588b | ||
|
|
e79666a82b | ||
|
|
b20d5a7cc6 | ||
|
|
5641adb01b | ||
|
|
d8aeeb8ff6 | ||
|
|
2cf35267c4 | ||
|
|
6f60838736 | ||
|
|
ac466ecf74 | ||
|
|
3664beec29 | ||
|
|
13cf417a98 | ||
|
|
541a9f2b85 | ||
|
|
b119c14017 | ||
|
|
46763efb75 | ||
|
|
6a865a6146 | ||
|
|
dc14d4a13c | ||
|
|
e6055dce76 | ||
|
|
b4d48fdc91 | ||
|
|
af80653f3f | ||
|
|
a525cc06c1 | ||
|
|
914605c89c | ||
|
|
89490171ef | ||
|
|
c0005e939c | ||
|
|
1df6c7a46c | ||
|
|
5becda25c5 | ||
|
|
cb1cb72c76 | ||
|
|
e34aa1ff8f | ||
|
|
58f81f8e7e | ||
|
|
d45ab47139 | ||
|
|
9dcccc11ba | ||
|
|
cc822c1a05 | ||
|
|
cd791f1cba | ||
|
|
59508edf64 | ||
|
|
e84389c976 | ||
|
|
19b7be067c | ||
|
|
d04561805b | ||
|
|
71526fa5ce | ||
|
|
56595a4c9c | ||
|
|
211ff67440 | ||
|
|
c6ffa7f38d | ||
|
|
519cc1bc67 | ||
|
|
4134c6398a | ||
|
|
9188ce1a8d | ||
|
|
51ae13fc8c | ||
|
|
5449088a8e | ||
|
|
fc6a0937b8 | ||
|
|
a1ad01e4ab | ||
|
|
f8498d8a52 | ||
|
|
e854eb933d | ||
|
|
8924c0f1ec | ||
|
|
203d260a41 | ||
|
|
0076e1e792 | ||
|
|
a3ec573984 | ||
|
|
ff55601dc3 | ||
|
|
b90dff020e | ||
|
|
43aba9f918 | ||
|
|
1ac629f919 | ||
|
|
5d81d7cefe | ||
|
|
895f64fbab | ||
|
|
b7dfbb6af5 | ||
|
|
c83c2a5022 | ||
|
|
6b945eb548 | ||
|
|
0322348924 | ||
|
|
72d791a736 | ||
|
|
719615a6b6 | ||
|
|
273cbe931e | ||
|
|
df48ef6df3 | ||
|
|
acbe84c8ef | ||
|
|
b82c0978cc | ||
|
|
d0ef7b6588 | ||
|
|
1952982c01 | ||
|
|
d52b908627 | ||
|
|
438835f6a5 | ||
|
|
f9400b6a3c | ||
|
|
7cd72de8bc | ||
|
|
806d64e1bf | ||
|
|
e3fd0519b3 | ||
|
|
e3ff27c95a | ||
|
|
98f614ddb1 | ||
|
|
087fe0e9d6 | ||
|
|
b198f321c8 | ||
|
|
15efe8d839 | ||
|
|
1e57c6e6e3 | ||
|
|
a9c259c77a | ||
|
|
55b8547f04 | ||
|
|
b7a9481e01 | ||
|
|
139b7196a0 | ||
|
|
24706aedbd | ||
|
|
d0dd1a387e | ||
|
|
f307ff68f7 | ||
|
|
74746c6573 | ||
|
|
10bbed7f69 | ||
|
|
178dcd6fd8 | ||
|
|
4564ad2920 | ||
|
|
50e4545255 | ||
|
|
43d6e9fa43 | ||
|
|
5e9898600b | ||
|
|
f2d93f61c3 | ||
|
|
7c5e6900e1 | ||
|
|
7e72768433 | ||
|
|
81b9c7c6ee | ||
|
|
ddded80ff3 | ||
|
|
8683d4abfd | ||
|
|
0ca6abce72 | ||
|
|
e942b352c6 | ||
|
|
41ea2d8c31 | ||
|
|
be3c4a7930 | ||
|
|
f28f191ebf | ||
|
|
a628d77798 | ||
|
|
6509dc04f5 | ||
|
|
2277c6dffc | ||
|
|
1834d86df5 | ||
|
|
a6b0223eea | ||
|
|
1b9fc64d8a | ||
|
|
f57ce2b40a | ||
|
|
ebfdf740bc | ||
|
|
5f18f5bb90 | ||
|
|
5221e2d991 | ||
|
|
02bbc51195 | ||
|
|
a8aca59c04 | ||
|
|
4c16661153 | ||
|
|
d683f98019 | ||
|
|
dc65788511 | ||
|
|
a18d16fb8b | ||
|
|
62e4e05a19 | ||
|
|
c0d5b57cf9 | ||
|
|
665e45e0ba | ||
|
|
455dabb183 | ||
|
|
ee7558a622 | ||
|
|
1f48eaf03a | ||
|
|
d49d40f7b0 | ||
|
|
b72fd7ea9c | ||
|
|
b2e1f77f58 | ||
|
|
9a209012b5 | ||
|
|
39578a5919 | ||
|
|
8cbb5350ad | ||
|
|
04e4eb35be | ||
|
|
ddd9d9032a | ||
|
|
c3f09e2b1b | ||
|
|
f98999ca20 | ||
|
|
f362dab7be | ||
|
|
0b4aedf13e | ||
|
|
661c3cfc99 | ||
|
|
25c4c2f24e | ||
|
|
da1bda493e | ||
|
|
e9cf46a9a5 | ||
|
|
66d0221077 | ||
|
|
9c288a682d | ||
|
|
149e9b733e | ||
|
|
53124ca6b7 | ||
|
|
bd6d144cdb | ||
|
|
5288c399ce | ||
|
|
4e8d9fe59b | ||
|
|
3819f79945 | ||
|
|
df1e51258a | ||
|
|
ebc9a8a0b0 | ||
|
|
4ff59d178d | ||
|
|
bd2b44c4ed | ||
|
|
bafcd084cc | ||
|
|
6fc4d4c3b7 | ||
|
|
9aaa056286 | ||
|
|
48e2f90304 | ||
|
|
07eb213046 | ||
|
|
5e13fe989f | ||
|
|
938a49f989 | ||
|
|
9e7e8e229c | ||
|
|
6c62732ae1 | ||
|
|
f5092e92a4 | ||
|
|
4e5941fa57 | ||
|
|
7fc4f7b815 | ||
|
|
97493dc62a | ||
|
|
13d725d24d | ||
|
|
58521fb0eb | ||
|
|
ed2c2bcd17 | ||
|
|
7d7404157a | ||
|
|
6ed2bf631d | ||
|
|
514223f960 | ||
|
|
1452e41ead | ||
|
|
de78b61d35 | ||
|
|
6a312fae80 | ||
|
|
f412267766 | ||
|
|
1803c27afb | ||
|
|
86e0b9eb05 | ||
|
|
7f117bfc60 | ||
|
|
12e0581f24 | ||
|
|
252f31b6f1 | ||
|
|
bcf630d8d1 | ||
|
|
c44b5fd13a | ||
|
|
a7a5607c1b | ||
|
|
d5a34afa56 | ||
|
|
712aaa26d5 | ||
|
|
1a1375964f | ||
|
|
4bb17a55ac | ||
|
|
787d522036 | ||
|
|
b590ae4875 | ||
|
|
ce74e4b3e4 | ||
|
|
356b582a9f | ||
|
|
b73744f9e7 | ||
|
|
b39ab3db37 | ||
|
|
34d521234d | ||
|
|
73ac213cdd | ||
|
|
b71a755a30 | ||
|
|
c353eaa146 | ||
|
|
c7acd5c45b | ||
|
|
7c3d52cd6b | ||
|
|
2405ccb7ef | ||
|
|
282c39e3d0 | ||
|
|
d277e93f4d | ||
|
|
f01f0d1956 | ||
|
|
7d8c38693f | ||
|
|
a06010e08a | ||
|
|
4c00ddae56 | ||
|
|
6282655d77 | ||
|
|
98233b1de0 | ||
|
|
eb1a368277 | ||
|
|
7a569ad4d0 | ||
|
|
847e4ced11 | ||
|
|
7e95ee9e4b | ||
|
|
d63e0f6d98 | ||
|
|
9c218381c5 | ||
|
|
896162b722 | ||
|
|
c96844fae2 | ||
|
|
02d400e413 | ||
|
|
20fbb751f1 | ||
|
|
d5f5203880 | ||
|
|
2386c147ad | ||
|
|
c4090b1375 | ||
|
|
85a7f8c5b4 | ||
|
|
79635f8e94 | ||
|
|
843a19102c | ||
|
|
18821f29d5 | ||
|
|
15bea5043c | ||
|
|
61e3f119f4 | ||
|
|
3d0ead7dcb | ||
|
|
465c6d9230 | ||
|
|
ffb418b226 | ||
|
|
acd76e8609 | ||
|
|
bbbfb0015b | ||
|
|
ef8ce2e2e5 | ||
|
|
f9961ddebb | ||
|
|
3348a7d223 | ||
|
|
2435c6082a | ||
|
|
ae7ae89bb3 | ||
|
|
3f129b6574 | ||
|
|
5bf635cec2 | ||
|
|
1ab3521351 | ||
|
|
f1162243f6 | ||
|
|
832be5dd36 | ||
|
|
7cf1befbec | ||
|
|
69bd636f22 | ||
|
|
1d574b0f6a | ||
|
|
3eacc3bfce | ||
|
|
2b628553d3 | ||
|
|
05cd483413 | ||
|
|
f4b198a9f5 | ||
|
|
e3278f22f3 | ||
|
|
f9992c5f33 | ||
|
|
3648bce886 | ||
|
|
6091e6300a | ||
|
|
41a3fbceac | ||
|
|
47d19bab40 | ||
|
|
c590e8ac05 | ||
|
|
75927e17dd | ||
|
|
fe6ba4fd70 | ||
|
|
584c86bed1 | ||
|
|
54abf3aeba | ||
|
|
dcc39421c5 | ||
|
|
66338ed515 | ||
|
|
ff482a3247 | ||
|
|
f055f7c535 | ||
|
|
841c8ce0d9 | ||
|
|
3c3a956a17 | ||
|
|
565a0e11ed | ||
|
|
4f5e197c80 | ||
|
|
713157f712 | ||
|
|
5949c24afc | ||
|
|
dbea6f0022 | ||
|
|
8bca3fcf2c | ||
|
|
ca0f47985b | ||
|
|
0693767efa | ||
|
|
1c3a1ab2c6 | ||
|
|
8ac52aedff | ||
|
|
dbee0e9c54 | ||
|
|
068c303742 | ||
|
|
ec3f29a33a | ||
|
|
eed7c2fe2f | ||
|
|
6172cd2528 | ||
|
|
94948d3dcb | ||
|
|
14573cb823 | ||
|
|
a3052da703 | ||
|
|
b7b0021b5c | ||
|
|
94d3153fb6 | ||
|
|
ca1a3476cb | ||
|
|
91c3b8e3ca | ||
|
|
4cdf7a1b93 | ||
|
|
72876d9045 | ||
|
|
8d036e94bf | ||
|
|
70b3f4ded5 | ||
|
|
01fd3f904f | ||
|
|
50e1bf57b9 | ||
|
|
18dd5cb46a | ||
|
|
bf3cd8e5aa | ||
|
|
37d3c7288f | ||
|
|
7496e1cd67 | ||
|
|
060b360be3 | ||
|
|
6b1c4dec46 | ||
|
|
85f0556118 | ||
|
|
cff502c6d4 | ||
|
|
53af7cad0a | ||
|
|
beffcd856b | ||
|
|
123ecfe613 | ||
|
|
2d2d9da9f2 | ||
|
|
a07c4af393 | ||
|
|
7ad5208267 | ||
|
|
6b05d5d65d | ||
|
|
8e044ea898 | ||
|
|
293b890940 | ||
|
|
2563e32aa3 | ||
|
|
d9bbe0ff02 | ||
|
|
d577b3c21e | ||
|
|
89a2161cac | ||
|
|
75efa3cdac | ||
|
|
cdd5056aba | ||
|
|
c97c393c4a | ||
|
|
12344085c0 | ||
|
|
12c595c61f | ||
|
|
23bb40d0ea | ||
|
|
9958f5e322 | ||
|
|
59152f2671 | ||
|
|
c9817105fb | ||
|
|
e6a114b853 | ||
|
|
b97bb14a7a | ||
|
|
54069823a0 | ||
|
|
f6505c8ee2 | ||
|
|
93dcc22aae | ||
|
|
451a942e95 | ||
|
|
b4715b29bb | ||
|
|
34b73426e5 | ||
|
|
4078f2672e | ||
|
|
a2e412c0ce | ||
|
|
d59d9b5973 | ||
|
|
ee240d21b9 | ||
|
|
be051c890f | ||
|
|
ee444d7d07 | ||
|
|
c8e096785f | ||
|
|
8778e12342 | ||
|
|
2747ab7643 | ||
|
|
586b334c2a | ||
|
|
87b16ed5f6 | ||
|
|
8fca85042b | ||
|
|
25cf7dee40 | ||
|
|
66f1da762f | ||
|
|
26fa08548c | ||
|
|
944920176f | ||
|
|
0f4d3e1bca | ||
|
|
1eeef30097 | ||
|
|
c014f8dc78 | ||
|
|
d068470e18 | ||
|
|
ba91bca1eb | ||
|
|
0bcb64403c | ||
|
|
05ef9b2f55 | ||
|
|
2aef83ddcd | ||
|
|
23cffb2c21 | ||
|
|
9223261ea9 | ||
|
|
d25231aea8 | ||
|
|
7ebfae27e3 | ||
|
|
f5a1fabd38 | ||
|
|
3f77d6a551 | ||
|
|
38983fdfa9 | ||
|
|
8196ced2de | ||
|
|
0ebaea94be | ||
|
|
e1d65b8937 | ||
|
|
ca5da026d6 | ||
|
|
a61c91ae9e | ||
|
|
1d8ad7cf71 | ||
|
|
95963121b0 | ||
|
|
7b99c26e80 | ||
|
|
3ac76f0489 | ||
|
|
b2a4b6f34e | ||
|
|
b8e4b993d6 | ||
|
|
6341aefda3 | ||
|
|
0f386d06a1 | ||
|
|
081e4506ca | ||
|
|
ca084dcfe8 | ||
|
|
604bdf0b43 | ||
|
|
b7796bcce6 | ||
|
|
318356b6bc | ||
|
|
d2f211c7e1 | ||
|
|
9d12788a9a | ||
|
|
1769f43226 | ||
|
|
f218405c36 | ||
|
|
155765646e | ||
|
|
7183a586d9 | ||
|
|
c7825e6719 | ||
|
|
1461ee4d36 | ||
|
|
9e9e578234 | ||
|
|
8033bc87ea | ||
|
|
d6a16525c2 | ||
|
|
f6b604ff49 | ||
|
|
7fbf40c20c | ||
|
|
da601d5114 | ||
|
|
20fc66f875 | ||
|
|
750256948e | ||
|
|
d527c46481 | ||
|
|
848dd740ba | ||
|
|
04a9962cb5 | ||
|
|
334777c201 | ||
|
|
8c73017a69 | ||
|
|
62d2a65025 | ||
|
|
09ee5a5da1 | ||
|
|
efeea9bccf | ||
|
|
e61e54acfd | ||
|
|
0a280f00c2 | ||
|
|
f2ad1ceb13 | ||
|
|
9c87786464 | ||
|
|
fdef32ce77 | ||
|
|
7924e0d819 | ||
|
|
5c0e5c599f | ||
|
|
dd6efe96e7 | ||
|
|
6429b8bfb8 | ||
|
|
e604f76703 | ||
|
|
9d8e3d4d6f | ||
|
|
2526e2d32e | ||
|
|
d858f44b35 | ||
|
|
c3d1671b6d | ||
|
|
778466a2ed | ||
|
|
42f35491e0 | ||
|
|
0309a5f3af | ||
|
|
9434b81a82 | ||
|
|
6b35951e92 | ||
|
|
012f577bb0 | ||
|
|
4be98221f6 | ||
|
|
1fb3c4055d | ||
|
|
f7aac7a5b0 | ||
|
|
de122c9bbe | ||
|
|
4581957d93 | ||
|
|
bd1ced14e7 | ||
|
|
8c2cfaa907 | ||
|
|
69641f1420 | ||
|
|
825c2c3dc4 | ||
|
|
f1942f6ec0 | ||
|
|
5e777601f3 | ||
|
|
0cc524b84f | ||
|
|
33f6d77281 | ||
|
|
5a7c0216f7 | ||
|
|
6039893981 | ||
|
|
8664b8e97b | ||
|
|
5c6e82743e | ||
|
|
0b47558a09 | ||
|
|
bb4a252567 | ||
|
|
67f8ba6fed | ||
|
|
19e21a8f10 | ||
|
|
05995d1fd6 | ||
|
|
29c12905f5 | ||
|
|
1432d44eed | ||
|
|
94397dbdb4 | ||
|
|
17cd1a4f26 | ||
|
|
dfcd437486 | ||
|
|
3f678b0be5 | ||
|
|
4d1a662571 | ||
|
|
08434b3605 | ||
|
|
cd09e35f90 | ||
|
|
c5be59ddfe | ||
|
|
af5a7a2925 | ||
|
|
33d54c0d5a | ||
|
|
403eefd272 | ||
|
|
bc93ac53b5 | ||
|
|
d2072f9ace | ||
|
|
c8e476ad60 | ||
|
|
9a3ee3be53 | ||
|
|
9d9e2deb9b | ||
|
|
823178c272 | ||
|
|
6715fd159c | ||
|
|
9e49f154d8 | ||
|
|
8bdb3d9970 | ||
|
|
587d4a6373 | ||
|
|
fecf808d80 | ||
|
|
66bfad3ced | ||
|
|
1bcc5c98a9 | ||
|
|
c3ff53a61c | ||
|
|
4575978a1f | ||
|
|
274934ad81 | ||
|
|
179d6c4ed1 | ||
|
|
36dfbaea8c | ||
|
|
263d7d37af | ||
|
|
24ce8beb48 | ||
|
|
4cc103958e | ||
|
|
0fbb26c28f | ||
|
|
a26b57a36d | ||
|
|
059f575d93 | ||
|
|
a67830bf67 | ||
|
|
03df3f4a88 | ||
|
|
c6be989fca | ||
|
|
13d8dc0b79 | ||
|
|
dc21e2e691 | ||
|
|
fa533846a7 | ||
|
|
af4bcb629a | ||
|
|
d7172a4558 | ||
|
|
03dbe16ccc | ||
|
|
f085199f5b | ||
|
|
d78086ccdc | ||
|
|
9c5086e6af | ||
|
|
0745d48993 | ||
|
|
e7aba49c49 | ||
|
|
5ea5d71258 | ||
|
|
5d2519ed50 | ||
|
|
d2d71caa3b | ||
|
|
8cc0b4bf5e | ||
|
|
3129fd06f0 | ||
|
|
9479ec32f7 | ||
|
|
a7f1021265 | ||
|
|
2971b48a12 | ||
|
|
9624c90cfb | ||
|
|
a6f682d860 | ||
|
|
f3e4e6c68f | ||
|
|
f9f20bb454 | ||
|
|
eb3a3d249e | ||
|
|
535018ef0e | ||
|
|
528c9885f2 | ||
|
|
c8e30b6639 | ||
|
|
3e5620283e | ||
|
|
92c35d14a4 | ||
|
|
f13fbafe31 | ||
|
|
5873b0b032 | ||
|
|
77f637763c | ||
|
|
535eeace5f | ||
|
|
3914bcfbb1 | ||
|
|
922b597f94 | ||
|
|
0fa7d86918 | ||
|
|
eecfcd124d | ||
|
|
a0d782e46e | ||
|
|
fd9f067a48 | ||
|
|
4268c1f1a5 | ||
|
|
579e4396e2 | ||
|
|
fb579212ea | ||
|
|
1fe195926f | ||
|
|
fc39c925ca | ||
|
|
a9c5d524bb | ||
|
|
f499cecf0d | ||
|
|
5bc2fb022c | ||
|
|
534c105a7a | ||
|
|
4af9908764 | ||
|
|
8f0aedeead | ||
|
|
6fdb0bec07 | ||
|
|
d4974ea719 | ||
|
|
d493cafc4a | ||
|
|
4e58f9387a | ||
|
|
2d98bb39bd | ||
|
|
e3660bca25 | ||
|
|
ab792d004c | ||
|
|
f89eb8bf35 | ||
|
|
4bd1e55093 | ||
|
|
52a7a8cb26 | ||
|
|
6285776943 | ||
|
|
18c9182903 | ||
|
|
2e27e3ba04 | ||
|
|
337361d588 | ||
|
|
8119e511a1 | ||
|
|
6132cf900b | ||
|
|
21993b75f4 | ||
|
|
8efa3455c2 | ||
|
|
e85eca2630 | ||
|
|
940c59d9da | ||
|
|
e1942715ce | ||
|
|
ee5e46b46b | ||
|
|
fd945d1070 | ||
|
|
3334163e73 | ||
|
|
70ce4f5b36 | ||
|
|
9ac348ef7b | ||
|
|
5e2582a31b | ||
|
|
7682751646 | ||
|
|
96a1c6540e | ||
|
|
f59a7e8b07 | ||
|
|
3765e67434 | ||
|
|
6f8b8c394d | ||
|
|
0c035c0a7a | ||
|
|
3db1a80b4c | ||
|
|
f8b8cbfc53 | ||
|
|
c2b319360d | ||
|
|
202d3ab3c9 | ||
|
|
fdbc733376 | ||
|
|
128eed6b57 | ||
|
|
27952648cf | ||
|
|
eb08aeab7d | ||
|
|
d98b9d54f1 | ||
|
|
c1b99c43b6 | ||
|
|
0b154c2d71 | ||
|
|
bc58e678bd | ||
|
|
c942ca130f | ||
|
|
e349b1c920 | ||
|
|
659d06d9b9 | ||
|
|
e44fccf3d2 | ||
|
|
f8aa52346f | ||
|
|
842466f4d9 | ||
|
|
1165c26ab4 | ||
|
|
eae543adf3 | ||
|
|
8837cd3b53 | ||
|
|
eb7840dabb | ||
|
|
e5d73f68c8 | ||
|
|
eefe3f595a | ||
|
|
180f9a4c22 | ||
|
|
c4bb458763 | ||
|
|
6b02b89ab4 | ||
|
|
1579091c20 | ||
|
|
e8e81d3609 | ||
|
|
290466578f | ||
|
|
fec52e61ea | ||
|
|
17abb94532 | ||
|
|
97e9c95f47 | ||
|
|
59e97e5e52 | ||
|
|
2351592abf | ||
|
|
d74efd9d46 | ||
|
|
7084f3647a | ||
|
|
1c3df51f87 | ||
|
|
bf610d87f7 | ||
|
|
d34364a086 | ||
|
|
ead6bb267d | ||
|
|
a3dc1e461b | ||
|
|
b6095fd084 | ||
|
|
1088846cae | ||
|
|
05f4033a34 | ||
|
|
585a8a96b4 | ||
|
|
7085781c71 | ||
|
|
369fb2806d | ||
|
|
a589456a14 | ||
|
|
601b2d9f51 | ||
|
|
79f49040f1 | ||
|
|
a6bec53905 | ||
|
|
5c3ec6306f | ||
|
|
a7c41d28af | ||
|
|
1005f225f3 | ||
|
|
d9303b2137 | ||
|
|
f96d2a5b4a | ||
|
|
dca0c3d02a | ||
|
|
7501e40e0b | ||
|
|
dc6fa04f68 | ||
|
|
e5aa453293 | ||
|
|
6899ed2026 | ||
|
|
a38b9da672 | ||
|
|
5b2fd3ad86 | ||
|
|
93adb7e944 | ||
|
|
9cd66f6f77 | ||
|
|
977cfa4494 | ||
|
|
39e1726498 | ||
|
|
b714cfd4f0 | ||
|
|
00e2f6da8f | ||
|
|
71d8c6f742 | ||
|
|
a80b1e6d5f | ||
|
|
fd2bc3a212 | ||
|
|
4cc83b6330 | ||
|
|
f0be92259b | ||
|
|
1ea9a36d11 | ||
|
|
92e513e76e | ||
|
|
6920b7fe91 | ||
|
|
d472934a70 | ||
|
|
ec13aa0dc1 | ||
|
|
3d153486da | ||
|
|
5c15f6f64b | ||
|
|
68108789d0 | ||
|
|
fac0e63058 | ||
|
|
42b5ccafc9 | ||
|
|
ca4d6f4470 | ||
|
|
522df57a45 | ||
|
|
c9aa68ef7a | ||
|
|
9e19f004d0 | ||
|
|
839255eed4 | ||
|
|
305f277843 | ||
|
|
523feeee3c | ||
|
|
9dfa5ba3a5 | ||
|
|
f2c5740d06 | ||
|
|
2c5436e315 | ||
|
|
b8cc61262f | ||
|
|
57ed063ba1 | ||
|
|
06324df072 | ||
|
|
27c487bab7 | ||
|
|
ebb1a7dc1f | ||
|
|
5ccf8c2c33 | ||
|
|
ef2a2eb984 | ||
|
|
abc9b52692 | ||
|
|
5535a047d7 | ||
|
|
bae8d0a4bd | ||
|
|
02859eb2b1 | ||
|
|
3d75490b6e | ||
|
|
93bc1b17f9 | ||
|
|
f0de56a797 | ||
|
|
81d629bc47 | ||
|
|
45bde333d5 | ||
|
|
475ccfad62 | ||
|
|
fdaa374490 | ||
|
|
77b4f23edc | ||
|
|
1204f2fca8 | ||
|
|
d4be970c8b | ||
|
|
39a5e3ca6e | ||
|
|
74e1573b14 | ||
|
|
2d84bcb4cd | ||
|
|
eaf1c0954e | ||
|
|
ce02c6cee2 | ||
|
|
cbe4bf2ba8 | ||
|
|
e139c1d9d9 | ||
|
|
21e1148d98 | ||
|
|
a49478cefa | ||
|
|
bcbd2ff21c | ||
|
|
d2f20803ba | ||
|
|
6dcb85927a | ||
|
|
e96468566d | ||
|
|
a85cd042d8 | ||
|
|
91bb0f5439 | ||
|
|
b2b7c583eb | ||
|
|
82cafc9b19 | ||
|
|
65a2903aab | ||
|
|
d3add3c34f | ||
|
|
f1eaed7e98 | ||
|
|
19b24a349c | ||
|
|
4a5f135c5d | ||
|
|
89964ec30d | ||
|
|
cd36809c06 | ||
|
|
3cd9a92dcc | ||
|
|
80c6f98d2f | ||
|
|
b0d8ba3894 | ||
|
|
70586d3a6c | ||
|
|
8babf55b18 | ||
|
|
948c3f580b | ||
|
|
3218c4b33f | ||
|
|
179095c387 | ||
|
|
42be684e69 | ||
|
|
340d827dc1 | ||
|
|
7de605c5c3 | ||
|
|
e5a5273edb | ||
|
|
98c6c6f1aa | ||
|
|
caa87d5fe1 | ||
|
|
ad1c061e7b | ||
|
|
4e479caf61 | ||
|
|
cf9ac4c847 | ||
|
|
f7de453da8 | ||
|
|
828cc71847 | ||
|
|
94f2e82897 | ||
|
|
881e5a48bc | ||
|
|
d4c210f21b | ||
|
|
44c8f29e47 | ||
|
|
ed0e6afacb | ||
|
|
9817976375 | ||
|
|
a7bb1fc322 | ||
|
|
f990ebfb09 | ||
|
|
056efaba91 | ||
|
|
a23021b823 | ||
|
|
5519054f50 | ||
|
|
3ae3bf5d33 | ||
|
|
01e8813286 | ||
|
|
cb60001784 | ||
|
|
c0e917ea83 | ||
|
|
ab99a80793 | ||
|
|
84d0bc5c17 | ||
|
|
a2ba0aaaac | ||
|
|
be37c38aa2 | ||
|
|
ba22857f93 | ||
|
|
1a349c7522 | ||
|
|
9821ec2afd | ||
|
|
96d52649b8 | ||
|
|
2b1c2a0db9 | ||
|
|
8b81c0e88f | ||
|
|
e7307af42d | ||
|
|
439e28783b | ||
|
|
3a75342508 | ||
|
|
c1bb3278d4 | ||
|
|
c0497234b9 | ||
|
|
cdf4ed87a1 | ||
|
|
8916acf083 | ||
|
|
8873c583d3 | ||
|
|
dc02d0720d | ||
|
|
052aa23efe | ||
|
|
7a42132002 | ||
|
|
10a71e332d | ||
|
|
4fa8053638 | ||
|
|
a210f80adc | ||
|
|
253d0f9671 | ||
|
|
535b70057e | ||
|
|
021c4ccf5f | ||
|
|
fe02241044 | ||
|
|
67e0238c89 | ||
|
|
750a16ad38 | ||
|
|
b6546ea33a | ||
|
|
8ff49d6b46 | ||
|
|
f69e02ef04 | ||
|
|
31450d9d6b | ||
|
|
9736a21de2 | ||
|
|
2bf11da5ab | ||
|
|
66e16af29d | ||
|
|
eb6dec03bd | ||
|
|
44e4f853c8 | ||
|
|
c6e6365e15 | ||
|
|
41b7f16ab8 | ||
|
|
ec4bfb0054 | ||
|
|
de462f2b8a | ||
|
|
b7573c6e69 | ||
|
|
8be146642f | ||
|
|
6a2a10a154 | ||
|
|
371969b531 | ||
|
|
ae9232962e | ||
|
|
f7eeae8424 | ||
|
|
8aad29fb6e | ||
|
|
1620738701 | ||
|
|
0f79fb9821 | ||
|
|
ce2b4bc20c | ||
|
|
3358caed14 | ||
|
|
720bc7c00b | ||
|
|
274809aced | ||
|
|
ff55088491 | ||
|
|
d4415dcf59 | ||
|
|
d6265df962 | ||
|
|
c6f74ba887 | ||
|
|
16409eb233 | ||
|
|
82ecaa767e | ||
|
|
54358fbe28 | ||
|
|
c28e08c849 | ||
|
|
de8fee6aea | ||
|
|
448d482d3c | ||
|
|
108d0df565 | ||
|
|
18e396b102 | ||
|
|
c9be936d4a | ||
|
|
2f932a11b3 | ||
|
|
fb9d30673f | ||
|
|
ca7f56e60b | ||
|
|
56c4a96180 | ||
|
|
4b9f6d531b | ||
|
|
ced30b1054 | ||
|
|
10b85be405 | ||
|
|
24655a6bf3 | ||
|
|
dab2f0c89c | ||
|
|
0ca64a0ea3 | ||
|
|
d16954dc88 | ||
|
|
19aafb9050 | ||
|
|
6550a222aa | ||
|
|
3ea073ace6 | ||
|
|
6978bb5ea5 | ||
|
|
688c53220d | ||
|
|
fe2c710b39 | ||
|
|
34c8204d25 | ||
|
|
e6cf7860e8 | ||
|
|
14fb683682 | ||
|
|
e89a47c8b5 | ||
|
|
b615b492ba | ||
|
|
f39d025a80 | ||
|
|
49027721e9 | ||
|
|
7f05f5e002 | ||
|
|
c9a8db33c3 | ||
|
|
946f6bdeaa | ||
|
|
b3f42d2519 | ||
|
|
872e172bcd | ||
|
|
77c67085bf | ||
|
|
9174aa376f | ||
|
|
07c998afe5 | ||
|
|
a9445d557e | ||
|
|
4d5a1984e2 | ||
|
|
a8d68b7c8a | ||
|
|
1a09c4dea5 | ||
|
|
9da02d2114 | ||
|
|
ae9afb333e | ||
|
|
93cd66ac11 | ||
|
|
d7d80418ae | ||
|
|
2fde1475cb | ||
|
|
7e16835c83 | ||
|
|
8b63e3701f | ||
|
|
81209f5310 | ||
|
|
39c0c2aebe | ||
|
|
6664b90bbb | ||
|
|
8ce84fa44f | ||
|
|
00cc1079af | ||
|
|
ce656e2a26 | ||
|
|
decfe3424f | ||
|
|
b961251899 | ||
|
|
2580104c8b | ||
|
|
cd302f9464 | ||
|
|
064177154c | ||
|
|
9f136a7c67 | ||
|
|
49627069a5 | ||
|
|
30a3db4f22 | ||
|
|
8c55bd5451 | ||
|
|
98f3a3d5c3 | ||
|
|
e3846ec7a1 | ||
|
|
8934b32f1b | ||
|
|
8e23e9b16c | ||
|
|
07dac315a9 | ||
|
|
a4aa3621c0 | ||
|
|
cf762d2c73 | ||
|
|
12d21e642f | ||
|
|
5986194c36 | ||
|
|
aa0383a83b | ||
|
|
3d9d72e8db | ||
|
|
1b1a4677f5 | ||
|
|
07b41a8c3f | ||
|
|
71b2700c3c | ||
|
|
f5afaaef5b | ||
|
|
def4bb987d | ||
|
|
78557076ff | ||
|
|
6578aa4e1b | ||
|
|
2247bf1ba5 | ||
|
|
1db7013e3b | ||
|
|
17778d1c2a | ||
|
|
be69ec5b32 | ||
|
|
9c83135d40 | ||
|
|
5df051fdee | ||
|
|
0f6f5132c1 | ||
|
|
c41b005f33 | ||
|
|
8f99d45045 | ||
|
|
eeaef2410a | ||
|
|
bb0bcbaec0 | ||
|
|
52383633e7 | ||
|
|
81d550754a | ||
|
|
4b365552db | ||
|
|
a9acd2f497 | ||
|
|
a31cb910f5 | ||
|
|
49ea1c635a | ||
|
|
19d4a9ab77 | ||
|
|
4df4c47994 | ||
|
|
ed0c70f0a0 | ||
|
|
c461af2f3a | ||
|
|
dd06017f64 | ||
|
|
9131b11944 | ||
|
|
4c872a01f2 | ||
|
|
75aeb41ab7 | ||
|
|
bf64dd4db6 | ||
|
|
391250b04f | ||
|
|
27d30c1be8 | ||
|
|
3f6424076b | ||
|
|
cf3631226b | ||
|
|
c12b6ba760 | ||
|
|
5b13abcacb | ||
|
|
089d12df16 | ||
|
|
5307f42917 | ||
|
|
2290b269dc | ||
|
|
6b2d42434c | ||
|
|
da5bdea324 | ||
|
|
aacb904e1f | ||
|
|
651f3eeed0 | ||
|
|
35aabd1834 | ||
|
|
21f377d94a | ||
|
|
ce5f94c8f4 | ||
|
|
287df7a61f | ||
|
|
66d51272af | ||
|
|
903863dcb6 | ||
|
|
eb1c9113c2 | ||
|
|
9a56a88200 | ||
|
|
24c23b60fa | ||
|
|
1aa60bce32 | ||
|
|
3021097888 | ||
|
|
6fb3db1633 | ||
|
|
a17f057daa | ||
|
|
f2cfa408b7 | ||
|
|
26de051e92 | ||
|
|
cfb44e4a26 | ||
|
|
9722038ad3 | ||
|
|
50c9b33ed7 | ||
|
|
29afd11cbf | ||
|
|
dfdbd1e75f | ||
|
|
12a270fd29 | ||
|
|
fc73a8b004 | ||
|
|
bf8bfb5c66 | ||
|
|
648a91bce8 | ||
|
|
18904c42f6 | ||
|
|
8bc3b80176 | ||
|
|
bc2ff9b41f | ||
|
|
f7792c0192 | ||
|
|
2a21a9a062 | ||
|
|
f93c60a6f0 | ||
|
|
7d1eafc80a | ||
|
|
26e7e33698 | ||
|
|
04715e04ee | ||
|
|
356410dcfc | ||
|
|
2a96d4e23a | ||
|
|
1ef95013f0 | ||
|
|
c88d9ae282 | ||
|
|
892f0e75ea | ||
|
|
8cf5504a34 | ||
|
|
c3e5225531 | ||
|
|
9439fab7fd | ||
|
|
a373d3f557 | ||
|
|
b0a4ea79b8 | ||
|
|
f30b89953d | ||
|
|
a3f034b95e | ||
|
|
b7eeb5b13b | ||
|
|
0ca2073625 | ||
|
|
662e7da8a4 | ||
|
|
cccc51ee0e | ||
|
|
80ce0d2bdb | ||
|
|
455f0de817 | ||
|
|
7e07a3888b | ||
|
|
5ca8d51e12 | ||
|
|
293018f76c | ||
|
|
ffb76b75d7 | ||
|
|
4138b1f9ae | ||
|
|
764f0d9c1c | ||
|
|
66e22d9f5a | ||
|
|
fda8606388 | ||
|
|
950fd4aa4c | ||
|
|
9206c0e869 | ||
|
|
34d2801bbe | ||
|
|
fa3b5fb059 | ||
|
|
858b2fa21a | ||
|
|
f6ec00d776 | ||
|
|
bbcb61e042 | ||
|
|
e4260a41cb | ||
|
|
9d9030a39c | ||
|
|
123e58d9c3 | ||
|
|
93ab16c6e4 | ||
|
|
6572848d7f | ||
|
|
688b54d66a | ||
|
|
f889cc6ea6 | ||
|
|
07021c85c8 | ||
|
|
d70929f7c0 | ||
|
|
e3a468f2cd | ||
|
|
8e8e48f900 | ||
|
|
34ae76025e | ||
|
|
bd494a6bd6 | ||
|
|
e09d8811c1 | ||
|
|
0f04ba016f | ||
|
|
bf4a0db97f | ||
|
|
6d92a0a33b | ||
|
|
32afe1d102 | ||
|
|
5515f88452 | ||
|
|
5f42d3a8b4 | ||
|
|
d3bb5b69ba | ||
|
|
b315157053 | ||
|
|
3c179bbd47 | ||
|
|
352734494b | ||
|
|
b14cc0d7c5 | ||
|
|
c6d39319de | ||
|
|
212860f090 | ||
|
|
7b838f31be | ||
|
|
36a0376c36 | ||
|
|
df7733425c | ||
|
|
605ec0a478 | ||
|
|
90121047d9 | ||
|
|
81cee05476 | ||
|
|
47fd74a98d | ||
|
|
49229d97db | ||
|
|
8924389dfc | ||
|
|
49e83dd7c8 | ||
|
|
14fe41f6b2 | ||
|
|
f8bede6b5e | ||
|
|
0ef5d667b6 | ||
|
|
1c86fbc60b | ||
|
|
74f44783ac | ||
|
|
bc5a1fe562 | ||
|
|
e1bf34bdc9 | ||
|
|
7cce6b8d68 | ||
|
|
1210b73530 | ||
|
|
beb2ed145e | ||
|
|
44caf70917 | ||
|
|
612eaa87bd | ||
|
|
c5dc2e5a71 | ||
|
|
48d1bd29cb | ||
|
|
9f69fbe5ee | ||
|
|
fc52c43a26 | ||
|
|
24b1818245 | ||
|
|
a49919396a | ||
|
|
2b5046659a | ||
|
|
cc862a8213 | ||
|
|
fafd73a3af | ||
|
|
2298923a9b | ||
|
|
41f61a12b8 | ||
|
|
594f6b14be | ||
|
|
a74aad3b4a | ||
|
|
4ef364a073 | ||
|
|
610abd7b88 | ||
|
|
cfca07852a | ||
|
|
aeec9ef76b | ||
|
|
7b4c3bd92a | ||
|
|
9bf65eacaa | ||
|
|
3cd19a8ec0 | ||
|
|
402f1f7307 | ||
|
|
87e7193259 | ||
|
|
256f810df2 | ||
|
|
1dad6e754b | ||
|
|
84ac5b360b | ||
|
|
9b5f9dda0e | ||
|
|
85fb33a060 | ||
|
|
62ef54cb81 | ||
|
|
7907eec04c | ||
|
|
efe651e749 | ||
|
|
0b056970c6 | ||
|
|
06f3273531 | ||
|
|
7ccbcf2eaa | ||
|
|
9558962d59 | ||
|
|
737d3d9283 | ||
|
|
07afe69cee | ||
|
|
451ea996c9 | ||
|
|
d7b0369e39 | ||
|
|
785c01f2bc | ||
|
|
7f1e0c5670 | ||
|
|
48bd8899bd | ||
|
|
dcaefc68a5 | ||
|
|
211563e533 | ||
|
|
8075893352 | ||
|
|
940ff8e7c8 | ||
|
|
991ee7552b | ||
|
|
3eee880967 | ||
|
|
93dd097b1c | ||
|
|
3bf43b6c1e | ||
|
|
4e7187b926 | ||
|
|
5108e4b6aa | ||
|
|
456a0ee76b | ||
|
|
7b78a20fb7 | ||
|
|
a613bcad2d | ||
|
|
62b36d1b98 | ||
|
|
f22c9a1ae1 | ||
|
|
746c38f4be | ||
|
|
529c111572 | ||
|
|
75eca5c4f8 | ||
|
|
9cd9d39319 | ||
|
|
227f29090d | ||
|
|
fa3739aa23 | ||
|
|
88bedf3a57 | ||
|
|
3f758d9e00 | ||
|
|
beb9cc91f6 | ||
|
|
51acbb2201 | ||
|
|
ad4ffa1d2f | ||
|
|
e53d7e5517 | ||
|
|
6b96eaa15b | ||
|
|
23ec650410 | ||
|
|
6811e2921b | ||
|
|
40aff7e1f2 | ||
|
|
059269d732 | ||
|
|
af725c81e3 | ||
|
|
11adcf1ce3 | ||
|
|
5dcb25664f | ||
|
|
a504366138 | ||
|
|
24e956d168 | ||
|
|
483822f3aa | ||
|
|
23a8707ef1 | ||
|
|
172abc305b | ||
|
|
a36782ac1d | ||
|
|
f9a50f451d | ||
|
|
9853331b34 | ||
|
|
a4c24511f7 | ||
|
|
c837e9250c | ||
|
|
f96eaad1ea | ||
|
|
421d526ba7 | ||
|
|
b07360f32a | ||
|
|
79955f0c89 | ||
|
|
09f1b58146 | ||
|
|
e2a77ed881 | ||
|
|
24177954dd | ||
|
|
ee73e17c9b | ||
|
|
68004174d9 | ||
|
|
7076d8706b | ||
|
|
c48e6be366 | ||
|
|
3cad0f08d9 | ||
|
|
1ec9953e7e | ||
|
|
fd9d3ae181 | ||
|
|
e7b3720b81 | ||
|
|
7da63fa03f | ||
|
|
6d0ce033c2 | ||
|
|
3fcab8dbf1 | ||
|
|
66f7065248 | ||
|
|
2f32a6612d | ||
|
|
c791d2abeb | ||
|
|
15357af67c | ||
|
|
0181e57417 | ||
|
|
c369477cb0 | ||
|
|
e5438a9a03 | ||
|
|
e7682eea42 | ||
|
|
51d1e0f1dd | ||
|
|
ee243e4edf | ||
|
|
bf54251a10 | ||
|
|
9372e2603c | ||
|
|
3272d0db01 | ||
|
|
95beafa9a2 | ||
|
|
408a5f08dc | ||
|
|
8a6308b498 | ||
|
|
cf3c746029 | ||
|
|
2740cc64d8 | ||
|
|
39ebca6b5f | ||
|
|
93dcb537ef | ||
|
|
142c8e2fed | ||
|
|
e43afb1a58 | ||
|
|
9ccbd382e7 | ||
|
|
b6279abd30 | ||
|
|
ed9eaa1942 | ||
|
|
610fb46683 | ||
|
|
db89fc0304 | ||
|
|
503905c628 | ||
|
|
73726d56b3 | ||
|
|
5051909c3c | ||
|
|
63f6ad3fd2 | ||
|
|
c6632925e3 | ||
|
|
e2dd2268e8 | ||
|
|
0f9c49ccba | ||
|
|
d77ef437db | ||
|
|
ca7f6ff287 | ||
|
|
6ff81a33c1 | ||
|
|
0c4d3e6622 | ||
|
|
04ae3ba1fd | ||
|
|
78d7349fd7 | ||
|
|
875e673a8c | ||
|
|
81ca5a4cd4 | ||
|
|
4e35e6c705 | ||
|
|
4a48b70c0b | ||
|
|
44216749c6 | ||
|
|
4228fd3e03 | ||
|
|
5f70c876ae | ||
|
|
ea1ee02b53 | ||
|
|
bddb776ddb | ||
|
|
d0c1eee53b | ||
|
|
4ac28ba6b3 | ||
|
|
b65cb5704d | ||
|
|
69c333ead9 | ||
|
|
0a6835fbea | ||
|
|
2e3d121ac4 | ||
|
|
d83a7924e6 | ||
|
|
e6f6ed76c8 | ||
|
|
08f21335a6 | ||
|
|
7c8ee0cd5b | ||
|
|
520585c5ed | ||
|
|
e1acc09c6e | ||
|
|
836435c5ef | ||
|
|
bf28ad4b6c | ||
|
|
866e2d41dc | ||
|
|
ab8052887f | ||
|
|
12d340cf2a | ||
|
|
e8dc87a2b7 | ||
|
|
7ca1fea22b | ||
|
|
35160dfb7a | ||
|
|
92ed9a2bb6 | ||
|
|
5f49b65c1f | ||
|
|
9b578ca343 | ||
|
|
9992c424f5 | ||
|
|
b1c13bce58 | ||
|
|
455ee23499 | ||
|
|
df75a606ff | ||
|
|
20dc45bca7 | ||
|
|
db373f130c | ||
|
|
6fe90f0324 | ||
|
|
aa0f7afbe6 | ||
|
|
57aaa9110b | ||
|
|
6a71df2925 | ||
|
|
9dd4252b39 | ||
|
|
bdfffee037 | ||
|
|
84273557f9 | ||
|
|
62b4265410 | ||
|
|
b18316dd37 | ||
|
|
f2ba0a5ae7 | ||
|
|
7e58d33a2e | ||
|
|
8bc5817559 | ||
|
|
64ee064ded | ||
|
|
14b561f182 | ||
|
|
9e86fc3831 | ||
|
|
9fd3e64ba8 | ||
|
|
509dc283f2 | ||
|
|
2adc37becc | ||
|
|
492883859e | ||
|
|
9898f53361 | ||
|
|
1e59a2ac73 | ||
|
|
ae42206500 | ||
|
|
d72946a8d7 | ||
|
|
cee3b172b9 | ||
|
|
052f2ac352 | ||
|
|
e6ebd30f60 | ||
|
|
a8edd4f6d4 | ||
|
|
ac81c007a6 | ||
|
|
610e9cf76a | ||
|
|
3656ef4a2d | ||
|
|
6b8611ad56 | ||
|
|
5018fdacbe | ||
|
|
4900c28bf6 | ||
|
|
ba31d39f6d | ||
|
|
f9b2b3e4f5 | ||
|
|
9ea99b49be | ||
|
|
9cb5c57b84 | ||
|
|
321a5e6580 | ||
|
|
0e3c9e726d | ||
|
|
5e38d70697 | ||
|
|
fae2b7edc3 | ||
|
|
c8a83fb122 | ||
|
|
9abe9aff56 | ||
|
|
7e0008f5b3 | ||
|
|
81c2c3ec11 | ||
|
|
c29820f649 | ||
|
|
a2b3ad6d0a | ||
|
|
e9d9cf2b5b | ||
|
|
1de6e7fb9d | ||
|
|
9a56d90150 | ||
|
|
9cee81d47e | ||
|
|
3221658a78 | ||
|
|
028b78f623 | ||
|
|
cf12fc8366 | ||
|
|
bf7b28b456 | ||
|
|
27693cec29 | ||
|
|
3c47e1b4d1 | ||
|
|
0dfd76ba55 | ||
|
|
027a901bec | ||
|
|
692a0198f9 | ||
|
|
63d95862fa | ||
|
|
0992d1a4c8 | ||
|
|
cd1ef33c8c | ||
|
|
72c7751768 | ||
|
|
cacec5764a | ||
|
|
83e214478e | ||
|
|
240ea1bbb3 | ||
|
|
27a4927ed1 | ||
|
|
d44e5b1fde | ||
|
|
10b9632bed | ||
|
|
f1810689ff | ||
|
|
2d5b93e850 | ||
|
|
b21ca53dfc | ||
|
|
af92ee9dd6 | ||
|
|
5d2c5877f7 | ||
|
|
2aa35e95af | ||
|
|
20a41e2f7b | ||
|
|
46445a5a16 | ||
|
|
2cfa9e9008 | ||
|
|
a0a5c31c05 | ||
|
|
8b7c3eec83 | ||
|
|
fbc7b51a24 | ||
|
|
5de7b5b35e | ||
|
|
4961d8aa3e | ||
|
|
de0046fc8b | ||
|
|
c9079165ee | ||
|
|
04086fc455 | ||
|
|
a3f67acd6d | ||
|
|
d992dfe7d5 | ||
|
|
b1f739e27b | ||
|
|
5679fae11e | ||
|
|
de0f35f2d9 | ||
|
|
f0d14b83bc | ||
|
|
c6466c23fe | ||
|
|
7240e3a68f | ||
|
|
6d9aaca082 | ||
|
|
c6dbe6e9d6 | ||
|
|
e40636a7c1 | ||
|
|
5a2c68e995 | ||
|
|
b46ca9aa94 | ||
|
|
eb91f08725 | ||
|
|
fe346cd4d1 | ||
|
|
e3ab54753b | ||
|
|
ffc2c2d7c5 | ||
|
|
263f8edff8 | ||
|
|
6bd0a0be97 | ||
|
|
13a12f8a87 | ||
|
|
d2e0c03afb | ||
|
|
7462fe3068 | ||
|
|
0d3ea59bcf | ||
|
|
ef3b93daa1 | ||
|
|
aacc1148b0 | ||
|
|
c5e96544b5 | ||
|
|
02dc72acb6 | ||
|
|
d96f7d6068 | ||
|
|
380c771988 | ||
|
|
32332bcd03 | ||
|
|
407202cc0f | ||
|
|
a0ca98f699 | ||
|
|
a8fa275dc6 | ||
|
|
5eeffab5e5 | ||
|
|
d8329d858d | ||
|
|
9562a02c5a | ||
|
|
70e6a3db8a | ||
|
|
f3cf95a937 | ||
|
|
144018736a | ||
|
|
5b2c37d6c1 | ||
|
|
3fb8489ae3 | ||
|
|
b376c7e374 | ||
|
|
58bca67883 | ||
|
|
c4443f885e | ||
|
|
d9f0ed8247 | ||
|
|
691e5c3bb8 | ||
|
|
49cf92dc36 | ||
|
|
d20eab4f83 | ||
|
|
59353546e8 | ||
|
|
09eb30dc05 | ||
|
|
5c1aa5162d | ||
|
|
ad8b82d054 | ||
|
|
3a916b4ef2 | ||
|
|
5d3928cb01 | ||
|
|
9a515cbd32 | ||
|
|
f5bcc00570 | ||
|
|
cc8a871705 | ||
|
|
67bee06e43 | ||
|
|
f89b375fb9 | ||
|
|
87162658c4 | ||
|
|
6214c997c0 | ||
|
|
4555ae448f | ||
|
|
a5ea3e2f15 | ||
|
|
8e0ac93d60 | ||
|
|
0278ad0a6d | ||
|
|
c03df89921 | ||
|
|
050eac03af | ||
|
|
ad91476d26 | ||
|
|
d63da4592d | ||
|
|
51ff5b68fa | ||
|
|
388babbcea | ||
|
|
d94e077901 | ||
|
|
11d6a939df | ||
|
|
10c8c034bd | ||
|
|
31ff7da7ac | ||
|
|
0375e92847 | ||
|
|
013bb469ca | ||
|
|
e52bcc9408 | ||
|
|
98b55421a5 | ||
|
|
785a7028bf | ||
|
|
aa1d587128 | ||
|
|
fa11427ec6 | ||
|
|
4df9509ead | ||
|
|
1f7e220387 | ||
|
|
e3ce346f24 | ||
|
|
77b4176152 | ||
|
|
3419099f0a | ||
|
|
4c43e6c48b | ||
|
|
b824a517aa | ||
|
|
e4d080e63c | ||
|
|
c36989c39e | ||
|
|
12503fce06 | ||
|
|
33a08fc6f7 | ||
|
|
2efbcc90c5 | ||
|
|
60e82e3929 | ||
|
|
00fc43144a | ||
|
|
c7d618b4d9 | ||
|
|
d54741eda8 | ||
|
|
fb3302feda | ||
|
|
dbead66988 | ||
|
|
afbec5ff7e | ||
|
|
645ca7af7a | ||
|
|
44571775bd | ||
|
|
8d95019442 | ||
|
|
893ee68b52 | ||
|
|
39f1222060 | ||
|
|
543fc4c117 | ||
|
|
cfdb38eda4 | ||
|
|
4771e372a1 | ||
|
|
56fdcf93d1 | ||
|
|
7ce13a6ec1 | ||
|
|
6df51201ae | ||
|
|
2e5a3b01fd | ||
|
|
15738ea506 | ||
|
|
bc87e97357 | ||
|
|
2212da453a | ||
|
|
2513f6b550 | ||
|
|
38bef9da91 | ||
|
|
367d392880 | ||
|
|
bf8b38e0f7 | ||
|
|
d71dc5cf42 | ||
|
|
7640b328df | ||
|
|
599cdc3f0f | ||
|
|
35ae5daf2d | ||
|
|
3f36a38512 | ||
|
|
fa0d909dd3 | ||
|
|
bd4160dbaf | ||
|
|
71773b128d | ||
|
|
edc4e037c4 | ||
|
|
57afd0ab37 | ||
|
|
05c2f80826 | ||
|
|
b0553d2d97 | ||
|
|
fa236e9718 | ||
|
|
2f1e1dcb42 | ||
|
|
99d0022fae | ||
|
|
9a6b90f47d | ||
|
|
a2e3226597 | ||
|
|
4fbbce9a35 | ||
|
|
998ce55be0 | ||
|
|
e2e2a55d9b | ||
|
|
5b7ad3a5a0 | ||
|
|
7fde3ed915 | ||
|
|
7de6476b3d | ||
|
|
2c10222e87 | ||
|
|
4ab433d391 | ||
|
|
ab781de5a0 | ||
|
|
eb4bf93ea4 | ||
|
|
f37df28d17 | ||
|
|
f8a39919fa | ||
|
|
ddbe4cfa20 | ||
|
|
4200f9ed62 | ||
|
|
dc88747770 | ||
|
|
2356970a91 | ||
|
|
a79b9bbe6b | ||
|
|
2616e4d4d9 | ||
|
|
5d28575d4d | ||
|
|
808b076000 | ||
|
|
833c2e54a1 | ||
|
|
38363902c7 | ||
|
|
64253e1a58 | ||
|
|
92a4984066 | ||
|
|
e15354e387 | ||
|
|
88cc1d1a31 | ||
|
|
76e9ee33aa | ||
|
|
562f2321d2 | ||
|
|
edf025ed8d | ||
|
|
02fec89a0d | ||
|
|
15aa932aa6 | ||
|
|
5eb82ca6a8 | ||
|
|
109e67169c | ||
|
|
31b0be74af | ||
|
|
f6ab62bc13 | ||
|
|
9f5e4e5ad8 | ||
|
|
608a6810e7 | ||
|
|
80359c9937 | ||
|
|
a43e892fb5 | ||
|
|
631d867dc9 | ||
|
|
89bbc30a09 | ||
|
|
44c22e3935 | ||
|
|
3c9a7926c2 | ||
|
|
758c6c9464 | ||
|
|
422dd6666e | ||
|
|
03e109c4a3 | ||
|
|
50917ccda6 | ||
|
|
ba39186364 | ||
|
|
1424b368cf | ||
|
|
3a1b6fe8c1 | ||
|
|
19af90face | ||
|
|
992cdc8d14 | ||
|
|
33a6d52965 | ||
|
|
52665f54ad | ||
|
|
18458ec42b | ||
|
|
d4ed9b3ef1 | ||
|
|
ca7b2f574f | ||
|
|
208ab8b366 | ||
|
|
567d03a269 | ||
|
|
c041eec699 | ||
|
|
27203c62b8 | ||
|
|
3025ddf179 | ||
|
|
e00aad84af | ||
|
|
31c240a8db | ||
|
|
84fc400aba | ||
|
|
ab2816c870 | ||
|
|
d2bdb71c13 | ||
|
|
be9a409980 | ||
|
|
ce40c2e87c | ||
|
|
bdc2f10b90 | ||
|
|
9f0e1834ec | ||
|
|
1ace97e946 | ||
|
|
7cf9b93f26 | ||
|
|
2c8d12d3ec | ||
|
|
c2b90c44e4 | ||
|
|
a0dadc8c62 | ||
|
|
18996d2595 | ||
|
|
e56c13670d | ||
|
|
7f1b69b0c8 | ||
|
|
0feeef2604 | ||
|
|
894f5c24a8 | ||
|
|
bace52afd7 | ||
|
|
584f9cd449 | ||
|
|
d9a3fea022 | ||
|
|
773fa5c40f | ||
|
|
f7efe6f6c5 | ||
|
|
2bd6ce4b62 | ||
|
|
27115ff7eb | ||
|
|
08a8bd10ca | ||
|
|
3e2a4c3b26 | ||
|
|
8d271f20fe | ||
|
|
9737608f0a | ||
|
|
5cd0fa3ce1 | ||
|
|
3983cacbcf | ||
|
|
43b29c093b | ||
|
|
166e567ab8 | ||
|
|
6de3d34378 | ||
|
|
7ee35c2611 | ||
|
|
936f982392 | ||
|
|
0e37fe8776 | ||
|
|
5a316664e5 | ||
|
|
fcb16ceb29 | ||
|
|
9ae7cca5e9 | ||
|
|
f3b6cb4d34 | ||
|
|
ae03753ef1 | ||
|
|
95d3f3953a | ||
|
|
6ddd81c178 | ||
|
|
7c9ff322f3 | ||
|
|
ce8cb6a5d9 | ||
|
|
f269766408 | ||
|
|
e1604198ff | ||
|
|
113af46a1b | ||
|
|
413e303ad5 | ||
|
|
19cf72e057 | ||
|
|
d81342254a | ||
|
|
e1587da228 | ||
|
|
524c6c10bf | ||
|
|
1bd9a63049 | ||
|
|
3c49396370 | ||
|
|
ab6908a513 | ||
|
|
69aaf5d096 | ||
|
|
2f8e89adc3 | ||
|
|
870757aa17 | ||
|
|
b96cc30cd0 | ||
|
|
9e394139e5 | ||
|
|
b35a7c2c87 | ||
|
|
691e925adc | ||
|
|
1497fb388a | ||
|
|
b5fd2fb58b | ||
|
|
c03bac9ad4 | ||
|
|
a49f0205ea | ||
|
|
9091110460 | ||
|
|
10d855cb21 | ||
|
|
d97bb4c41c | ||
|
|
2f176d6fb8 | ||
|
|
ca73b2f465 | ||
|
|
df1043516e | ||
|
|
4200bd2fc1 | ||
|
|
e10943d0d8 | ||
|
|
d4d1b28a06 | ||
|
|
0d720a6ff4 | ||
|
|
0a7ea7063f | ||
|
|
afe79ba22b | ||
|
|
fdb97a3e9c | ||
|
|
433518de74 | ||
|
|
5cfc1cdacc | ||
|
|
3c88cac2e9 | ||
|
|
6fb4001b58 | ||
|
|
ca1be02bf0 | ||
|
|
38c2ca9281 | ||
|
|
4d1093b386 | ||
|
|
4fa1c52688 | ||
|
|
a5e3384691 | ||
|
|
0358ffcd4c | ||
|
|
95223cb28e | ||
|
|
6fe39e6117 | ||
|
|
c3cb449990 | ||
|
|
f6edd2c472 | ||
|
|
68bbac207e | ||
|
|
6a57d0b381 | ||
|
|
996f7d1642 | ||
|
|
988b5aa4e6 | ||
|
|
7d927b6691 | ||
|
|
31e213e427 | ||
|
|
f0503372d9 | ||
|
|
a1d03fe7ba | ||
|
|
159d7eefda | ||
|
|
97da6c1da5 | ||
|
|
17a8c37148 | ||
|
|
ddeca7a358 | ||
|
|
02ab66fca3 | ||
|
|
a79d80c78e | ||
|
|
0da636e1a3 | ||
|
|
3845baf398 | ||
|
|
48a3502656 | ||
|
|
621fbe99de | ||
|
|
f214118e45 | ||
|
|
aad770bce8 | ||
|
|
3f91233f6d | ||
|
|
0e0cc13650 | ||
|
|
24fffb8d93 | ||
|
|
8f9b246d0e | ||
|
|
808df82b36 | ||
|
|
ae91914260 | ||
|
|
2b54e98f50 | ||
|
|
0eca236dcd | ||
|
|
f4d1f13358 | ||
|
|
aa74a900f5 | ||
|
|
a073293b6a | ||
|
|
2117a45d1a | ||
|
|
0f07ba4f09 | ||
|
|
00cdd41b5f | ||
|
|
7d53b79596 | ||
|
|
18c32996c1 | ||
|
|
7c1a5e3c47 | ||
|
|
b4994ad12e | ||
|
|
2f35747f29 | ||
|
|
6453b82a5e | ||
|
|
48a581ba2e | ||
|
|
f7d96c5b28 | ||
|
|
54fdf57b8c | ||
|
|
dbe4126e07 | ||
|
|
e5801b75f8 | ||
|
|
bb30927549 | ||
|
|
dc65d96aca | ||
|
|
a1cf49935d | ||
|
|
75f2665f2e | ||
|
|
e1f951813a | ||
|
|
52108192d1 | ||
|
|
0495fcd475 | ||
|
|
c2cf8ffa82 | ||
|
|
4e5a915ef8 | ||
|
|
a5911765c3 | ||
|
|
99e5e8362f | ||
|
|
6411680364 | ||
|
|
8a3f1d6932 | ||
|
|
c6991109b7 | ||
|
|
ca9eb14f6a | ||
|
|
acf266fe78 | ||
|
|
424aa05cc2 | ||
|
|
ce563d7c2e | ||
|
|
02cc63d6d4 | ||
|
|
f4c16e683b | ||
|
|
712e23c383 | ||
|
|
20c20dacb7 | ||
|
|
7bb5d4bfe8 | ||
|
|
e6805582a6 | ||
|
|
d08f27e27b | ||
|
|
cdb562d558 | ||
|
|
8f4c6e6d1a | ||
|
|
f11c6d5d02 | ||
|
|
64a4649290 | ||
|
|
294521439e | ||
|
|
59b18aaeef | ||
|
|
85f149befe | ||
|
|
7fde8d9d1e | ||
|
|
3644c940bf | ||
|
|
1a79878dff | ||
|
|
7cfce20cd3 | ||
|
|
dc4786a504 | ||
|
|
3e867008f0 | ||
|
|
eb78aed863 | ||
|
|
ed3ab5e212 | ||
|
|
f9299c4461 | ||
|
|
082f6a27de | ||
|
|
459f4fef60 | ||
|
|
a403d9a50c | ||
|
|
432c21456f | ||
|
|
fb8111553e | ||
|
|
2919f3045d | ||
|
|
19fea772e5 | ||
|
|
0d30ccf767 | ||
|
|
1fd8e2c649 | ||
|
|
b402040059 | ||
|
|
1d33784bf9 | ||
|
|
a0ef6198ff | ||
|
|
8ae6f1e556 | ||
|
|
e6484d9dab | ||
|
|
5f2d75f45b | ||
|
|
da42f27c9e | ||
|
|
de4561c980 | ||
|
|
917cf3c7f0 | ||
|
|
709a6356f7 | ||
|
|
bcf347403b | ||
|
|
ba7e35cbab | ||
|
|
d372e7e477 | ||
|
|
6a8fb0f25f | ||
|
|
a59d3d4323 | ||
|
|
7f244f9b9c | ||
|
|
813a4ea107 | ||
|
|
c4237b529f | ||
|
|
01f75591c6 | ||
|
|
288340cb6c | ||
|
|
2aaa681dea | ||
|
|
81e753064a | ||
|
|
74c47803f7 | ||
|
|
637fb20c75 | ||
|
|
d9cf5e4883 | ||
|
|
cb643d87df | ||
|
|
14a7faf087 | ||
|
|
60cb36bef3 | ||
|
|
4f2473053c | ||
|
|
7557f8d68c | ||
|
|
371d9a1acf | ||
|
|
135c74017c | ||
|
|
54ba44ee37 | ||
|
|
b01a630bd0 | ||
|
|
44ed34475b | ||
|
|
3a16cb6d7f | ||
|
|
814d93c7cf | ||
|
|
3877bf9704 | ||
|
|
cfc5e96b4b | ||
|
|
594898aea7 | ||
|
|
530ef5846f | ||
|
|
14ddda285c | ||
|
|
f8c5d31864 | ||
|
|
b7a8dcc35d | ||
|
|
f7127c44f8 | ||
|
|
33abb86b7e | ||
|
|
367a9f65aa | ||
|
|
33f3c75213 | ||
|
|
9d59a9c840 | ||
|
|
3829d6ccf8 | ||
|
|
d35dcafa3d | ||
|
|
98cf546771 | ||
|
|
4dad489a50 | ||
|
|
8dcc28c9ae | ||
|
|
4c8a6eee7b | ||
|
|
fcaed685b2 | ||
|
|
0572be9439 | ||
|
|
c6e09c2689 | ||
|
|
7a5e637a37 | ||
|
|
902d5b0f8b | ||
|
|
9a4a463ec4 | ||
|
|
55144284c2 | ||
|
|
97de9d54a5 | ||
|
|
a7b3a61424 | ||
|
|
daf07e4200 | ||
|
|
3bb8b3529a | ||
|
|
6cf8d40f41 | ||
|
|
f6321f878a | ||
|
|
7d15854514 | ||
|
|
e8bda62d2a | ||
|
|
18fedafbc5 | ||
|
|
b22716e938 | ||
|
|
fa47ce369a | ||
|
|
ef81b5f03e | ||
|
|
4388015f1a | ||
|
|
b7e38ea249 | ||
|
|
50b2fbd031 | ||
|
|
055cb2b956 | ||
|
|
9fbd73d931 | ||
|
|
0947b92734 | ||
|
|
11c7945365 | ||
|
|
64389acdf1 | ||
|
|
7a361ad36a | ||
|
|
261c6f4b96 | ||
|
|
2224a4d61a | ||
|
|
e874f9664c | ||
|
|
3c58b16c9f | ||
|
|
aaf862aef2 | ||
|
|
c986239837 | ||
|
|
69d869c3d9 | ||
|
|
0c1cd9f590 | ||
|
|
8be91677df | ||
|
|
03ef2d6c82 | ||
|
|
95d154a91f | ||
|
|
61db0b65b6 | ||
|
|
4f9ec9ab45 | ||
|
|
929a513a6b | ||
|
|
01b5c810d5 | ||
|
|
cd88ea2106 | ||
|
|
cecc238f68 | ||
|
|
439a3e8463 | ||
|
|
5b24ce9024 | ||
|
|
d94b50a3d8 | ||
|
|
dec721c52b | ||
|
|
6aae199572 | ||
|
|
0a638cc022 | ||
|
|
e5019a0481 | ||
|
|
1980931153 | ||
|
|
09d6db491a | ||
|
|
d545f984b0 | ||
|
|
730f223100 | ||
|
|
d857cdfb27 | ||
|
|
4a7c6f7241 | ||
|
|
31113c5adf | ||
|
|
b57343c255 | ||
|
|
1fcc13b011 | ||
|
|
29c53f2402 | ||
|
|
caca3c8503 | ||
|
|
f1efcfed14 | ||
|
|
3b186a55ac | ||
|
|
02f8f4187a | ||
|
|
82c96c971e | ||
|
|
8a0992d921 | ||
|
|
e98d195901 | ||
|
|
fd2998efd5 | ||
|
|
d29cb09b3e | ||
|
|
5b1d52671c | ||
|
|
7109dadd21 | ||
|
|
4975b13b74 | ||
|
|
b738972e69 | ||
|
|
ee423dcdd0 | ||
|
|
c5642a894f | ||
|
|
0946cbcdca | ||
|
|
4def8b3b5e | ||
|
|
d51e5690f4 | ||
|
|
ec9d21a234 | ||
|
|
817a37169a | ||
|
|
643e0066a0 | ||
|
|
8ea4eeb785 | ||
|
|
4bcb63b705 | ||
|
|
50ee747787 | ||
|
|
90a58488b5 | ||
|
|
a4c15dc54f | ||
|
|
fc3f1c4572 | ||
|
|
88c57eaf55 | ||
|
|
1f93d2bcf7 | ||
|
|
826d570162 | ||
|
|
9d13f07d09 | ||
|
|
5fbe5cabc8 | ||
|
|
4ae9a06c60 | ||
|
|
c0b75f49b6 | ||
|
|
5a4fd8e0a6 | ||
|
|
7f225b9421 | ||
|
|
06674a321a | ||
|
|
c1e17037e5 | ||
|
|
d3605cfc26 | ||
|
|
93e958f695 | ||
|
|
22d7fed60a | ||
|
|
779b2709ec | ||
|
|
8ebb4dc294 | ||
|
|
7ee5894360 | ||
|
|
43ecdb606f | ||
|
|
984c4ba8c7 | ||
|
|
56a94c2a26 | ||
|
|
66580f32c2 | ||
|
|
3e9ffaddb6 | ||
|
|
d97e31db4c | ||
|
|
ca21ac6b9b | ||
|
|
0e610815e4 | ||
|
|
7a075a5dc9 | ||
|
|
2d92f333f5 | ||
|
|
d2bb53702a | ||
|
|
5e586a6b39 | ||
|
|
d82c350de7 | ||
|
|
edfd106bc5 | ||
|
|
f4c128ecaa | ||
|
|
54ec5528a0 | ||
|
|
ebf585b673 | ||
|
|
052d102ded | ||
|
|
664e20754d | ||
|
|
1eb5249598 | ||
|
|
075a22ed65 | ||
|
|
3ceab8474c | ||
|
|
98c2fc4e42 | ||
|
|
f19fd642ce | ||
|
|
cda5ef08fa | ||
|
|
9ad3aed0ef | ||
|
|
d631267548 | ||
|
|
0ee1a92971 | ||
|
|
690c4e8457 | ||
|
|
143b2896e0 | ||
|
|
a163c89c6a | ||
|
|
fea2363a2e | ||
|
|
be6271767f | ||
|
|
50af1d1e08 | ||
|
|
df907a905f | ||
|
|
da17f8ad37 | ||
|
|
a3923424c7 | ||
|
|
a0c795b097 | ||
|
|
9da6809ac3 | ||
|
|
471f403a67 | ||
|
|
30a49f5ee2 | ||
|
|
4e0c935959 | ||
|
|
47483e8c17 | ||
|
|
6093df11dc | ||
|
|
4260282df7 | ||
|
|
bed15fcd81 | ||
|
|
c239131ff5 | ||
|
|
8ab1c16ebd | ||
|
|
56150ec030 | ||
|
|
c4734b947b | ||
|
|
24c5e57bb6 | ||
|
|
fd7fd55662 | ||
|
|
78ccedd6a8 | ||
|
|
b60abc7c37 | ||
|
|
ccdbf20f60 | ||
|
|
d08847b1a6 | ||
|
|
7665dff58b | ||
|
|
4ed6397e5d | ||
|
|
9c8f083d6c | ||
|
|
525ea554a1 | ||
|
|
ef724edd80 | ||
|
|
b169320a03 | ||
|
|
81b1e9d272 | ||
|
|
6471a75a22 | ||
|
|
147e270208 | ||
|
|
8def25e475 | ||
|
|
812f6a7dd7 | ||
|
|
4f72e041f2 | ||
|
|
488a17b3f5 | ||
|
|
4dbaa6369f | ||
|
|
959ed32636 | ||
|
|
812bfec65e | ||
|
|
1624722566 | ||
|
|
e574f01568 | ||
|
|
5a470d4a49 | ||
|
|
34ea458667 | ||
|
|
4c5ca89d8c | ||
|
|
8517d5f915 | ||
|
|
b3b4e6dc45 | ||
|
|
f7e682eeee | ||
|
|
a813900fce | ||
|
|
04f173790f | ||
|
|
c536ee1122 | ||
|
|
c31e1735dd | ||
|
|
93d5b945dd | ||
|
|
f34f09c821 | ||
|
|
eefd7676a3 | ||
|
|
486f2a66a9 | ||
|
|
2613ddf61c | ||
|
|
b779b42ffd | ||
|
|
427bc64ba1 | ||
|
|
3866aeac52 | ||
|
|
498dfa291e | ||
|
|
fed84f2961 | ||
|
|
d5ab4cd22a | ||
|
|
3cbc3ecdd7 | ||
|
|
1769249876 | ||
|
|
5182eaf661 | ||
|
|
07a0822ebe | ||
|
|
b2ad2c8751 | ||
|
|
63be48ada6 | ||
|
|
82ff7c6542 | ||
|
|
44fa7fb18c | ||
|
|
cc2bc67440 | ||
|
|
fc84878cba | ||
|
|
cd066bfeba | ||
|
|
c10edb0998 | ||
|
|
32880ff42a | ||
|
|
0c85869c26 | ||
|
|
b99f0776d6 | ||
|
|
8014e1cc9d | ||
|
|
bd05816fd8 | ||
|
|
3c21483c88 | ||
|
|
e0956bb572 | ||
|
|
c04cf127f7 | ||
|
|
9c0e05552e | ||
|
|
176654791e | ||
|
|
60dbd8161c | ||
|
|
b7ca93ba37 | ||
|
|
608be966d7 | ||
|
|
67b22760d9 | ||
|
|
f5e8e8b53d | ||
|
|
f5eab912ed | ||
|
|
8696f882a9 | ||
|
|
56d2dcb184 | ||
|
|
d1ff22b983 | ||
|
|
2c9586be0c | ||
|
|
6e3caf23b6 | ||
|
|
19f49db96f | ||
|
|
8d630362b7 | ||
|
|
e4cf175163 | ||
|
|
5ba6607181 | ||
|
|
2fb2e286ee | ||
|
|
3eb9838dca | ||
|
|
f5b31e218d | ||
|
|
31c28d0dd2 | ||
|
|
fce150f094 | ||
|
|
323c088356 | ||
|
|
9f77df2590 | ||
|
|
cafabf2055 | ||
|
|
f5498168ae | ||
|
|
6e041b9c61 | ||
|
|
eb5600acd2 | ||
|
|
42f8b6c530 | ||
|
|
f319087372 | ||
|
|
74bbb13008 | ||
|
|
549d11225a | ||
|
|
724c2ed9b4 | ||
|
|
2cff0d1f39 | ||
|
|
44f2a82a56 | ||
|
|
946cf8b453 | ||
|
|
f2adb4b9cc | ||
|
|
484ca68228 | ||
|
|
1d366db764 | ||
|
|
b5d7f69b51 | ||
|
|
b780b69c62 | ||
|
|
9cd3529108 | ||
|
|
66d44c72c3 | ||
|
|
72d8adfd1e | ||
|
|
1946f729fd | ||
|
|
56057bcecd | ||
|
|
4ed579cafc | ||
|
|
9e663a624b | ||
|
|
98c32d8df1 | ||
|
|
3583e2b449 | ||
|
|
5536228359 | ||
|
|
f9b80e7217 | ||
|
|
5ead026967 | ||
|
|
d632e44c8c | ||
|
|
1f9806875c | ||
|
|
63ce8baa55 | ||
|
|
3a935fd72b | ||
|
|
b063b1b722 | ||
|
|
43cf913048 | ||
|
|
0161d3f733 | ||
|
|
3b0d2330b6 | ||
|
|
6896847210 | ||
|
|
9cd5471202 | ||
|
|
9f11e0284c | ||
|
|
d87ab3ed20 | ||
|
|
587a64d80c | ||
|
|
96f313fb41 | ||
|
|
423ab029b2 | ||
|
|
489017995e | ||
|
|
a489c9fa52 | ||
|
|
3a9ad9f2b1 | ||
|
|
143d4ec043 | ||
|
|
829effc1fe | ||
|
|
37ff663b02 | ||
|
|
a964f098b3 | ||
|
|
8055ed24ff | ||
|
|
774a6e8199 | ||
|
|
c825c419d4 | ||
|
|
182b1405d9 | ||
|
|
2bf18950ab | ||
|
|
ac5f2762b7 | ||
|
|
6fbc87301f | ||
|
|
c1e8bd6add | ||
|
|
3c9daf322a | ||
|
|
4b7a0a5b39 | ||
|
|
ab8425f1b5 | ||
|
|
3028a620af | ||
|
|
ad60f0691c | ||
|
|
5580773191 | ||
|
|
d015f746cc | ||
|
|
dacb5324e8 | ||
|
|
bf9dd4f4cf | ||
|
|
e8031b1152 | ||
|
|
fbfb48cce0 | ||
|
|
1a00d1bdaf | ||
|
|
a07ac6312f | ||
|
|
53c535a0c1 | ||
|
|
55dec02ca1 | ||
|
|
7243101135 | ||
|
|
9613f00877 | ||
|
|
5d487ef40e | ||
|
|
a9061714f2 | ||
|
|
aebbb2359d | ||
|
|
0a549fd1f2 | ||
|
|
a80ba8fc6e | ||
|
|
e48cbff10d | ||
|
|
7a04eb3a8b | ||
|
|
2f873a119f | ||
|
|
a93e9e6e9b | ||
|
|
aa72884a6e | ||
|
|
46360f18b4 | ||
|
|
e229b831fa | ||
|
|
a553ab82e0 | ||
|
|
3a46212dd8 | ||
|
|
fc31da1114 | ||
|
|
3a3ab3391f | ||
|
|
e5ae7a07d1 | ||
|
|
6ee2af5e2d | ||
|
|
d801f85963 | ||
|
|
8d3a92fc4a | ||
|
|
44369d536a | ||
|
|
b641571098 | ||
|
|
eeef4e630a | ||
|
|
9969c06cb5 | ||
|
|
427c80119a | ||
|
|
55ac2f4c23 | ||
|
|
b640b3b0d6 | ||
|
|
2e5e689a7f | ||
|
|
b381cad399 | ||
|
|
9090065e9f | ||
|
|
4eb798dbdc | ||
|
|
1fb9b299d4 | ||
|
|
d26d9d5b81 | ||
|
|
c6a5c74208 | ||
|
|
aa9202260d | ||
|
|
8c02dd971b | ||
|
|
3847c08f7e | ||
|
|
71e19baf69 | ||
|
|
4cc1c2627e | ||
|
|
75a0d46edf | ||
|
|
a81763c237 | ||
|
|
bc22641002 | ||
|
|
eded90bf87 | ||
|
|
27a84fd021 | ||
|
|
67a3c5a16a | ||
|
|
5b7dd553d3 | ||
|
|
df768e7d8f | ||
|
|
3c13c9e3e9 | ||
|
|
a768df83cb | ||
|
|
c36773bffb | ||
|
|
9c71bff5e8 | ||
|
|
9deb23aa47 | ||
|
|
0519ef0802 | ||
|
|
3ec3872730 | ||
|
|
6bdbe3299e | ||
|
|
bc75eb2c64 | ||
|
|
d82bcdeea1 | ||
|
|
c90e26dfa6 | ||
|
|
96bbda5d48 | ||
|
|
f98f4ac7ea | ||
|
|
8bf596bd4c | ||
|
|
056561df93 | ||
|
|
cce4931342 | ||
|
|
8b5e51c9aa | ||
|
|
bf0c809ff2 | ||
|
|
9ac9649183 | ||
|
|
9bf5d4331c | ||
|
|
0139762a96 | ||
|
|
2ecb124e42 | ||
|
|
f56968ba0b | ||
|
|
2d2cd628c6 | ||
|
|
84b59d58fb | ||
|
|
06e2afe8e0 | ||
|
|
af939c158a | ||
|
|
3d5be2ea4b | ||
|
|
e5b4bf22d4 | ||
|
|
42fb7c14b0 | ||
|
|
61fbd0aa59 | ||
|
|
254b68fe2c | ||
|
|
870bfd08f5 | ||
|
|
5ddf52d58e | ||
|
|
213e94bce2 | ||
|
|
a40458405a | ||
|
|
951b25163e | ||
|
|
ea13a77dcb | ||
|
|
ab9d5eb38d | ||
|
|
8653cedee4 | ||
|
|
26208a5c2f | ||
|
|
9b6be0ae0f | ||
|
|
af3bf6c956 | ||
|
|
a44ef27897 | ||
|
|
d338e4d875 | ||
|
|
25b980dddb | ||
|
|
ddaef1a60c | ||
|
|
49d4ed4d3f | ||
|
|
1407afad73 | ||
|
|
45e738876a | ||
|
|
d43d4e4219 | ||
|
|
d8d76cd2ba | ||
|
|
e8d2cf4fb5 | ||
|
|
50cbca4c55 | ||
|
|
3cb5517ddb | ||
|
|
d332fcb8fa | ||
|
|
43940d59ed | ||
|
|
b2c1cd7eda | ||
|
|
d556dc1865 | ||
|
|
9b5c1a5e77 | ||
|
|
272d4a5167 | ||
|
|
07d33849b0 | ||
|
|
a3e8cb1e44 | ||
|
|
cf5284cdf2 | ||
|
|
0bd54392b7 | ||
|
|
ce82015d5f | ||
|
|
cef1de89d0 | ||
|
|
d52deeb15a | ||
|
|
d6d48e63fb | ||
|
|
2ef7175b42 | ||
|
|
7f94ca950e | ||
|
|
5f6aabccbe | ||
|
|
ec9aa4f468 | ||
|
|
906a24fa81 | ||
|
|
ee253991d4 | ||
|
|
8dbb305e8e | ||
|
|
55e810d512 | ||
|
|
d5017e2788 | ||
|
|
7db0113b53 | ||
|
|
191df5e17d | ||
|
|
f2ecf8d510 | ||
|
|
74cd6cb4fc | ||
|
|
bfcf570d68 | ||
|
|
c0d9058e25 | ||
|
|
dffb4c63dc | ||
|
|
d6b0fbd771 | ||
|
|
cb7844c8d4 | ||
|
|
07db08e39d | ||
|
|
ca0e308105 | ||
|
|
65b8f3821b | ||
|
|
c447d75916 | ||
|
|
cf0b9eb37c | ||
|
|
e8d677620c | ||
|
|
0fcdfdeed6 | ||
|
|
acac2adfc8 | ||
|
|
49823a4939 | ||
|
|
68bb75c847 | ||
|
|
52a37913c1 | ||
|
|
77b9a41f1f | ||
|
|
e09c144674 | ||
|
|
33056046a3 | ||
|
|
d5141c4e03 | ||
|
|
03fc4d31d0 | ||
|
|
65b36642f8 | ||
|
|
acb91b1b3f | ||
|
|
fc326b3dde | ||
|
|
2067619a26 | ||
|
|
07fe8d28be | ||
|
|
517b4f4cd4 | ||
|
|
72a750e0eb | ||
|
|
bb561baf9e | ||
|
|
fcf6d127fd | ||
|
|
8daadd2c8c | ||
|
|
c40ea1f0fd | ||
|
|
1358bd9319 | ||
|
|
001f26b642 | ||
|
|
348004c34f | ||
|
|
3e58b3a5d4 | ||
|
|
c3229e1b34 | ||
|
|
2abf3d258d | ||
|
|
d6955f25b2 | ||
|
|
f6f2246f59 | ||
|
|
ee53f7d813 | ||
|
|
d619ba2685 | ||
|
|
6b1967ed33 | ||
|
|
d777cef837 | ||
|
|
e3f7b69105 | ||
|
|
0e5bcdf695 | ||
|
|
0dedb3e139 | ||
|
|
ab4549d2bc | ||
|
|
80f9473fb4 | ||
|
|
c75f5a376b | ||
|
|
366fae684c | ||
|
|
f4c625d3a1 | ||
|
|
3019713402 | ||
|
|
606a4362b3 | ||
|
|
ccef14e2b2 | ||
|
|
b3154b2120 | ||
|
|
b0fd8f2d74 | ||
|
|
389376c40e | ||
|
|
e78bdd654d | ||
|
|
8ae113ff36 | ||
|
|
2e98437392 | ||
|
|
6d862b2916 | ||
|
|
11ac75edcb | ||
|
|
4d5566a6b7 | ||
|
|
8489673cea | ||
|
|
fb8a07660a | ||
|
|
3c40933713 | ||
|
|
a3ec805c97 | ||
|
|
b30ca652ae | ||
|
|
e10f730478 | ||
|
|
e2ab78d876 | ||
|
|
a644d8cb93 | ||
|
|
693865a649 | ||
|
|
9903305dda | ||
|
|
14df753086 | ||
|
|
2ecfda80ac | ||
|
|
bb47009656 | ||
|
|
3286325044 | ||
|
|
7d5c336c56 | ||
|
|
71d06ef1b2 | ||
|
|
d89d8fe852 | ||
|
|
70e7a465d8 | ||
|
|
935b120949 | ||
|
|
1410e79e7f | ||
|
|
e4389f7d23 | ||
|
|
bdc9889d3a | ||
|
|
321f9140d1 | ||
|
|
23114aeb81 | ||
|
|
1667ed9d1c | ||
|
|
93839e2f73 | ||
|
|
ad21a4f07b | ||
|
|
b682a1961a | ||
|
|
a0a3b23e35 | ||
|
|
95d793456b | ||
|
|
d016b572e3 | ||
|
|
84926b1d5a | ||
|
|
c575c5d5f6 | ||
|
|
6b1a4f30a8 | ||
|
|
ab7bfa86e2 | ||
|
|
241168926d | ||
|
|
cb6454118c | ||
|
|
eeab4141db | ||
|
|
cb9dc56630 | ||
|
|
f2e630a05e | ||
|
|
0b602ae101 | ||
|
|
dc11131656 | ||
|
|
d6b9327c11 | ||
|
|
aa6e8e9325 | ||
|
|
5490a664f5 | ||
|
|
cee34f7290 | ||
|
|
884ad75cb8 | ||
|
|
18e456d38d | ||
|
|
6742026568 | ||
|
|
04bdff4115 | ||
|
|
ccbd045f02 | ||
|
|
1104054d73 | ||
|
|
217e0efd20 | ||
|
|
849dea92a8 | ||
|
|
a2b0260f0f | ||
|
|
a4cdffdd69 | ||
|
|
ddcbf80f23 | ||
|
|
c411e7eb0d | ||
|
|
83105590a0 | ||
|
|
4163c1a514 | ||
|
|
ea9eb2fc8f | ||
|
|
afdd4803f8 | ||
|
|
d3d6be8210 | ||
|
|
beab9733f8 | ||
|
|
5a74b12b45 | ||
|
|
f38570ac55 | ||
|
|
17494099a9 | ||
|
|
140caf99b8 | ||
|
|
10590c2f80 | ||
|
|
e4ee607fc8 | ||
|
|
bae8f82ba8 | ||
|
|
c5e5cc5e9f | ||
|
|
54bd124665 | ||
|
|
5fbfbde532 | ||
|
|
378f354939 | ||
|
|
65045ba54b | ||
|
|
09a2bee8aa | ||
|
|
115abf9c53 | ||
|
|
0780913848 | ||
|
|
39732838b4 | ||
|
|
53bd0b55cb | ||
|
|
722d186ca0 | ||
|
|
1718eff54a | ||
|
|
f5c210d33d | ||
|
|
d948c6e867 | ||
|
|
c437bb08f1 | ||
|
|
8323a08642 | ||
|
|
4d99f9d96a | ||
|
|
6286afd456 | ||
|
|
1a6f2b29b8 | ||
|
|
bc06406d7d | ||
|
|
66f83d33e6 | ||
|
|
84ed9b5a63 | ||
|
|
215eee4fe5 | ||
|
|
ff51e7322d | ||
|
|
809b232fa2 | ||
|
|
f79a5a9dee | ||
|
|
c37d3ae97d | ||
|
|
4fb2134f00 | ||
|
|
b220a825a7 | ||
|
|
1933d5d6fb | ||
|
|
8bce5370c7 | ||
|
|
64d629ba2a | ||
|
|
8584d3697d | ||
|
|
06949ae510 | ||
|
|
d882717d98 | ||
|
|
4f883d5971 | ||
|
|
fe9f088d60 | ||
|
|
b6aae2b322 | ||
|
|
7391e23332 | ||
|
|
5d5cd1332d | ||
|
|
53b8c3bd66 | ||
|
|
1b6bc19427 | ||
|
|
2ebfe90be9 | ||
|
|
69d0ed5791 | ||
|
|
d32c4efc77 | ||
|
|
bc1ba998b2 | ||
|
|
bad225dc04 | ||
|
|
0f7d82bab1 | ||
|
|
d783400330 | ||
|
|
72af8e0f02 | ||
|
|
7e8c073fba | ||
|
|
0c01099f17 | ||
|
|
eafd62308e | ||
|
|
e25d2ae4a2 | ||
|
|
f417408df1 | ||
|
|
3d7f2c1fde | ||
|
|
a9c98a0e47 | ||
|
|
9f85d3a9cb | ||
|
|
e2e7b1d705 | ||
|
|
67996c2b66 | ||
|
|
9c8d9d282f | ||
|
|
e3aac59637 | ||
|
|
f580247581 | ||
|
|
073857646b | ||
|
|
fe4fc2883b | ||
|
|
2a61c9a939 | ||
|
|
b3efbc6e6e | ||
|
|
3b2690ab02 | ||
|
|
679e4602fe | ||
|
|
beb51c2d58 | ||
|
|
d10f29ae2e | ||
|
|
dcfde2317f | ||
|
|
d5379ee9d6 | ||
|
|
8d5bea073b | ||
|
|
9651ceb36b | ||
|
|
b213a89ef5 | ||
|
|
86ee74731e | ||
|
|
ae1271b2ae | ||
|
|
650d4313c4 | ||
|
|
530a13ab6c | ||
|
|
12fded46c2 | ||
|
|
aefc2f7cf9 | ||
|
|
72fdb6bab3 | ||
|
|
8b837dc3ad | ||
|
|
d1ceaf5550 | ||
|
|
d62f4df0b7 | ||
|
|
fa772c31bf | ||
|
|
8e18e48d49 | ||
|
|
4668c71a75 | ||
|
|
59e76e5fdf | ||
|
|
509ee44611 | ||
|
|
f8abe12a9c | ||
|
|
7680b64aa6 | ||
|
|
8c11220042 | ||
|
|
d0c96ee83e | ||
|
|
49e107cea9 | ||
|
|
92069f1422 | ||
|
|
05dc79e78d | ||
|
|
18f1af2dca | ||
|
|
74a04aed55 | ||
|
|
509e1cf2bd | ||
|
|
e3debc796d | ||
|
|
d55f44edba | ||
|
|
6a3207391f | ||
|
|
77efcad1df | ||
|
|
e3fc9aa35f | ||
|
|
136860e8bb | ||
|
|
66de50f5f8 | ||
|
|
ada85d5585 | ||
|
|
607c1e58d9 | ||
|
|
3e81745e81 | ||
|
|
aa80e448e2 | ||
|
|
9953213513 | ||
|
|
0966bdcbc4 | ||
|
|
e40a3eef04 | ||
|
|
199613a416 | ||
|
|
32e38fee74 | ||
|
|
59cf217e77 | ||
|
|
2a2e8c314e | ||
|
|
7ecb8b4af5 | ||
|
|
409a0632af | ||
|
|
0f14977b5d | ||
|
|
6dc9553aa5 | ||
|
|
a15e570d3b | ||
|
|
66966dbd69 | ||
|
|
933d833ec8 | ||
|
|
d1c9517903 | ||
|
|
e2b8fc4f17 | ||
|
|
b71c2b8651 | ||
|
|
a317bb4991 | ||
|
|
acf5ae3083 | ||
|
|
ba1919c1eb | ||
|
|
0987ed2a18 | ||
|
|
6483285bc5 | ||
|
|
f8c52c9c29 | ||
|
|
3671c63cde | ||
|
|
593d5375ea | ||
|
|
f0dbe61692 | ||
|
|
2d3317a35b | ||
|
|
cd9868f442 | ||
|
|
97f6396b25 | ||
|
|
0e25f66c09 | ||
|
|
ad12b9b46b | ||
|
|
b5537dde7f | ||
|
|
8f0bbdcc9b | ||
|
|
d05b23941d | ||
|
|
a77f8c6dd5 | ||
|
|
0456caf0ad | ||
|
|
dfe18ac633 | ||
|
|
b0a8ce59bd | ||
|
|
62ce937540 | ||
|
|
a82be36d5d | ||
|
|
00d24a8219 | ||
|
|
56f1e17a25 | ||
|
|
0b2d686160 | ||
|
|
a98f21ec5e | ||
|
|
db30650731 | ||
|
|
aae4c67e5d | ||
|
|
9de730b2bf | ||
|
|
c2553f9888 | ||
|
|
e9de321ac0 | ||
|
|
952a1bc9d5 | ||
|
|
67613bf5bd | ||
|
|
bd6d032628 | ||
|
|
1561e61df7 | ||
|
|
b37bfeffeb | ||
|
|
5573ef62c6 | ||
|
|
846bd24eb9 | ||
|
|
834ea7fcea | ||
|
|
c64199941e | ||
|
|
5be2559eda | ||
|
|
6964e1a95a | ||
|
|
ccf65c5397 | ||
|
|
865ee5985f | ||
|
|
a4b0148365 | ||
|
|
cc0a60453f | ||
|
|
65c5227c29 | ||
|
|
577aeb4aa9 | ||
|
|
6a8b906318 | ||
|
|
66d2b48b59 | ||
|
|
60f1376798 | ||
|
|
fd15b1495a | ||
|
|
11b411a872 | ||
|
|
f1347f783d | ||
|
|
0bda22367b | ||
|
|
1b921b246b | ||
|
|
aa9d329560 | ||
|
|
c93538e9f3 | ||
|
|
0af22549a6 | ||
|
|
fc55f1da01 | ||
|
|
b328fb4dc9 | ||
|
|
42ffa58e35 | ||
|
|
72b086b90d | ||
|
|
a1a5367380 | ||
|
|
b7e15a65e3 | ||
|
|
f891416e70 | ||
|
|
e4ecade8d4 | ||
|
|
eee1b7c50c | ||
|
|
e85feb2545 | ||
|
|
79835590e3 | ||
|
|
131d216afa | ||
|
|
9c62c47579 | ||
|
|
9bae413901 | ||
|
|
f2224755ad | ||
|
|
aae02827c0 | ||
|
|
64c493ad82 | ||
|
|
b826bf4194 | ||
|
|
2cc950d67e | ||
|
|
16432376ab | ||
|
|
74900f7a70 | ||
|
|
6dafb90c01 | ||
|
|
5ce5ff8e9b | ||
|
|
15d68cb496 | ||
|
|
8a24ff94d1 | ||
|
|
094e6d81a5 | ||
|
|
244b9a8257 | ||
|
|
955a7f0ae9 | ||
|
|
aadcf08913 | ||
|
|
4237c3d9f8 | ||
|
|
624986d423 | ||
|
|
e2aa635e70 | ||
|
|
67b205fd45 | ||
|
|
d1c6687ecd | ||
|
|
048dbf6eca | ||
|
|
e05e95cf97 | ||
|
|
22ebbc091f | ||
|
|
32de09f5c5 | ||
|
|
9c2bfa2ab3 | ||
|
|
bd3ec66a78 | ||
|
|
4dfbae0e5c | ||
|
|
fbcdf5eaeb | ||
|
|
e5c0b490c8 | ||
|
|
fbdbe53290 | ||
|
|
14e2b11195 | ||
|
|
4685c7d59f | ||
|
|
62fa028155 | ||
|
|
09485f63e9 | ||
|
|
a35abce1ac | ||
|
|
76d4cfb064 | ||
|
|
4195757585 | ||
|
|
03b01e2500 | ||
|
|
db85ca93c4 | ||
|
|
9660996cc3 | ||
|
|
39c8aed8ba | ||
|
|
2106fa26b1 | ||
|
|
17ed0f815c | ||
|
|
6d2aff03bd | ||
|
|
63a146d424 | ||
|
|
665ac1e4d0 | ||
|
|
2243f72523 | ||
|
|
47d5fcbbcc | ||
|
|
c83109c0ae | ||
|
|
64f007580b | ||
|
|
aed1d17a2d | ||
|
|
8c40f0c6c7 | ||
|
|
b04e0c0cbb | ||
|
|
065e9c3d66 | ||
|
|
71df1f7f57 | ||
|
|
902167fa78 | ||
|
|
a26fdf6b68 | ||
|
|
be7d1dfb3c | ||
|
|
8f686aa449 | ||
|
|
f38c81cdde | ||
|
|
3b5dec4b13 | ||
|
|
c43793aa1e | ||
|
|
e486326910 | ||
|
|
e5ea9d200f | ||
|
|
8c57cadbe7 | ||
|
|
fed68f29af | ||
|
|
bf7d0ba859 | ||
|
|
12854f1909 | ||
|
|
25e2ca8896 | ||
|
|
fd8a76493b | ||
|
|
c8d24a6412 | ||
|
|
566d05006d | ||
|
|
6b521b6df2 | ||
|
|
20761b88e0 | ||
|
|
603e136e87 | ||
|
|
03fa05ab59 | ||
|
|
ed720194d2 | ||
|
|
d05e832f29 | ||
|
|
63f4c9bdb9 | ||
|
|
b143441251 | ||
|
|
dde009efdf | ||
|
|
2992112da0 | ||
|
|
1367df2875 | ||
|
|
d960d448fa | ||
|
|
68e6650df7 | ||
|
|
e7e896e7d7 | ||
|
|
55f4744e54 | ||
|
|
5abf5bc8a7 | ||
|
|
cbea385ed7 | ||
|
|
6837252fba | ||
|
|
5379c115c8 | ||
|
|
9c058091e9 | ||
|
|
c7ec6c68e7 | ||
|
|
480a3d3d0c | ||
|
|
47ee149dfd | ||
|
|
8c0ec81a19 | ||
|
|
48c1f32b3e | ||
|
|
568cfe7caa | ||
|
|
1a0f4dedad | ||
|
|
e0ab8acf19 | ||
|
|
4b2af6ab48 | ||
|
|
1ea222e6fc | ||
|
|
8299ac121d | ||
|
|
3de0c85d41 | ||
|
|
cedc158106 | ||
|
|
5616581eb1 | ||
|
|
8a8eae8d97 | ||
|
|
c51e27d11d | ||
|
|
90ba77ea0f | ||
|
|
2421f3a47d | ||
|
|
f9a090b2cf | ||
|
|
8eaac0dab3 | ||
|
|
444725ae9a | ||
|
|
8c9f90153e | ||
|
|
fc10101b06 | ||
|
|
05518d6add | ||
|
|
d4fde91222 | ||
|
|
a431013eb7 | ||
|
|
bd7f5848f1 | ||
|
|
fbf1c9b496 | ||
|
|
0fff79c24b | ||
|
|
c36efd3106 | ||
|
|
3349eb0020 | ||
|
|
a264030526 | ||
|
|
42f9921482 | ||
|
|
921685d12f | ||
|
|
1b8973eb1c | ||
|
|
aa4cd2e861 | ||
|
|
edb21f349a | ||
|
|
4d3a9930c5 | ||
|
|
053438a3aa | ||
|
|
3b3029c4bf | ||
|
|
d13f76b7da | ||
|
|
229b26b02c | ||
|
|
0ee34eb784 | ||
|
|
ffdbc1f42c | ||
|
|
8d8f257384 | ||
|
|
5b49fccf80 | ||
|
|
d86f25ab63 | ||
|
|
fb4e0b105b | ||
|
|
48a15d1c7e | ||
|
|
3fa9aeb5c7 | ||
|
|
7e802145cc | ||
|
|
3b7c5a31a3 | ||
|
|
50b6204079 | ||
|
|
99591dc20c | ||
|
|
a5c11bf578 | ||
|
|
1d7dd0edfd | ||
|
|
383129728a | ||
|
|
1239e8eda2 | ||
|
|
7a84b03796 | ||
|
|
a2a30ff0ac | ||
|
|
e366d55bc2 | ||
|
|
7406f04029 | ||
|
|
7c54c4ed27 | ||
|
|
a65d15c905 | ||
|
|
d4795e5b8e | ||
|
|
e23677a7b2 | ||
|
|
0312c42f9d | ||
|
|
c1269c2ec1 | ||
|
|
da94e0bd27 | ||
|
|
f88adcbfd5 | ||
|
|
fdd97e649d | ||
|
|
e2aeda61ed | ||
|
|
091f742432 | ||
|
|
19d4c7c1cd | ||
|
|
7e8d2d611d | ||
|
|
cce0523a95 | ||
|
|
4c8d6df13c | ||
|
|
81edbfa665 | ||
|
|
f3fed52348 | ||
|
|
a215725df6 | ||
|
|
0d79128c8d | ||
|
|
a9861a780e | ||
|
|
cf53e502a2 | ||
|
|
e0276d2f32 | ||
|
|
4dbec774b5 | ||
|
|
928e50e724 | ||
|
|
12689f2470 | ||
|
|
9b945c13a1 | ||
|
|
9d04f47d98 | ||
|
|
f2c3b0d476 | ||
|
|
4832be52d7 | ||
|
|
86170e6a66 | ||
|
|
2ddba201c0 | ||
|
|
43bdd0bfe4 | ||
|
|
b8f8dc72f0 | ||
|
|
2ba198a624 | ||
|
|
5590c8ffd0 | ||
|
|
3fd1f32b73 | ||
|
|
117fd007a9 | ||
|
|
ae07a3e4aa | ||
|
|
20a5db03bb | ||
|
|
a2f521d34b | ||
|
|
590ce1c33e | ||
|
|
968a5d2e63 | ||
|
|
4b90cd8ead | ||
|
|
f1cdfe3dfd | ||
|
|
6f14bcaa3e | ||
|
|
39a7e7720d | ||
|
|
ae15c5af88 | ||
|
|
99af086cea | ||
|
|
d90e8fcad9 | ||
|
|
bbf80440bf | ||
|
|
b64cc9329e | ||
|
|
8a376e6beb | ||
|
|
3701869e6c | ||
|
|
e970e429b6 | ||
|
|
d82704354f | ||
|
|
779d4a17a0 | ||
|
|
b9418439b9 | ||
|
|
88314b8910 | ||
|
|
334341c632 | ||
|
|
f74278b8b1 | ||
|
|
7ba5afff01 | ||
|
|
55aedf036b | ||
|
|
e7623b5788 | ||
|
|
a426986df8 | ||
|
|
d8b983f624 | ||
|
|
eb1026d438 | ||
|
|
a5b0bf86f1 | ||
|
|
c2bdbdffaa | ||
|
|
c9d1a620d4 | ||
|
|
d550da084f | ||
|
|
c16e41e9e6 | ||
|
|
c685c7b7dd | ||
|
|
85914423a1 | ||
|
|
2fd9ba56da | ||
|
|
ad8d3150aa | ||
|
|
61181b7f24 | ||
|
|
d3c02410a8 | ||
|
|
ae1be0fa53 | ||
|
|
2deff0d9b9 | ||
|
|
6885ca606c | ||
|
|
d87257f63c | ||
|
|
ae322e0c54 | ||
|
|
d259070980 | ||
|
|
21d812d502 | ||
|
|
d3c473002a | ||
|
|
b90f54b0fc | ||
|
|
3f2a062a57 | ||
|
|
b6cd8d9cc6 | ||
|
|
9713538427 | ||
|
|
c68b7b3913 | ||
|
|
cbcb284f4a | ||
|
|
f89f7c4a82 | ||
|
|
4299e5dc8b | ||
|
|
8f14ef855d | ||
|
|
6919e87656 | ||
|
|
16da5c62d0 | ||
|
|
853a9056ac | ||
|
|
a4f9c3373f | ||
|
|
9b9b62b218 | ||
|
|
1ce97f1f6d | ||
|
|
0ca9db7051 | ||
|
|
945139e328 | ||
|
|
9c235ef821 | ||
|
|
7b9f0302d4 | ||
|
|
2566342979 | ||
|
|
1b200f3312 | ||
|
|
22771dd2dd | ||
|
|
6775a16c97 | ||
|
|
05fc761929 | ||
|
|
2e139fe50f | ||
|
|
931ab4ec40 | ||
|
|
aaaf09bda2 | ||
|
|
cf7d5a642a | ||
|
|
1da2c4f1c1 | ||
|
|
498a328148 | ||
|
|
1c0ad8bbae | ||
|
|
01d37e00af | ||
|
|
6f330f397e | ||
|
|
235facd545 | ||
|
|
645df23eb0 | ||
|
|
d74e333c0f | ||
|
|
e2db509d58 | ||
|
|
7261f48872 | ||
|
|
50fa8e01c1 | ||
|
|
a94506ada0 | ||
|
|
336a022529 | ||
|
|
f28e366b77 | ||
|
|
8b44745bc7 | ||
|
|
9644d56b42 | ||
|
|
5f8591528e | ||
|
|
230ae6a143 | ||
|
|
3e3789da85 | ||
|
|
c89649b46e | ||
|
|
bbd09a99f1 | ||
|
|
ee333f6be2 | ||
|
|
d98bc71af7 | ||
|
|
22e0691a70 | ||
|
|
4b610b333e | ||
|
|
d2647c1f19 | ||
|
|
3bb950c69a | ||
|
|
1af98519cd | ||
|
|
0c3773d724 | ||
|
|
4118199ddd | ||
|
|
4b2f6e3b2b | ||
|
|
65a004564c | ||
|
|
435ecb6b67 | ||
|
|
6dfbb39f83 | ||
|
|
68d7fcec83 | ||
|
|
d557c84a71 | ||
|
|
16f92dca44 | ||
|
|
569df3fc0c | ||
|
|
a4af975873 | ||
|
|
e0ca627033 | ||
|
|
a11eb50a3e | ||
|
|
0566badcef | ||
|
|
c2fb2f54a1 | ||
|
|
206014a957 | ||
|
|
59f7861bcb | ||
|
|
228139eae6 | ||
|
|
7dc03ce721 | ||
|
|
65270d6a96 | ||
|
|
62e2987488 | ||
|
|
9ad42d6617 | ||
|
|
fe7aea7bf6 | ||
|
|
83d42f33e1 | ||
|
|
3c76bda2d8 | ||
|
|
8f18854d4d | ||
|
|
c173a31060 | ||
|
|
e1d9046efc | ||
|
|
9b64fdbc3a | ||
|
|
50270b53a0 | ||
|
|
06fd4d7b28 | ||
|
|
40d7e12827 | ||
|
|
b9079aa1b5 | ||
|
|
9a531da861 | ||
|
|
0755fe8ba2 | ||
|
|
43ddb29f9e | ||
|
|
0ea60d506a | ||
|
|
eb2eb72720 | ||
|
|
b7dfc79988 | ||
|
|
3f6073e23a | ||
|
|
7edf5bcb7b | ||
|
|
ba100e9548 | ||
|
|
fb608938f8 | ||
|
|
35258dd50b | ||
|
|
37b15fe4cf | ||
|
|
836b0bbeee | ||
|
|
ba4c32eec5 | ||
|
|
d9154ebdf6 | ||
|
|
f07260c33f | ||
|
|
883b0c9880 | ||
|
|
8f3d313086 | ||
|
|
08e36e264e | ||
|
|
083ec9963e | ||
|
|
99ecdf59af | ||
|
|
9d98a62699 | ||
|
|
8f8c6a9bc4 | ||
|
|
a1062eec5b | ||
|
|
f5aaa2d6c0 | ||
|
|
3614e6ce0f | ||
|
|
625035a9ce | ||
|
|
1b225a2809 | ||
|
|
306f0f2135 | ||
|
|
f2e3c9896e | ||
|
|
acacee80a2 | ||
|
|
d99f1b2245 | ||
|
|
8679f671ed | ||
|
|
7d78f3476b | ||
|
|
6671c064cd | ||
|
|
325bbbc8c2 | ||
|
|
c43235dd39 | ||
|
|
613a3be167 | ||
|
|
23a876b08d | ||
|
|
439e0cdd0f | ||
|
|
fe5c308872 | ||
|
|
265161ba30 | ||
|
|
57c2f8d2f6 | ||
|
|
b76344c080 | ||
|
|
473c6d3a91 | ||
|
|
44f3a6dc3b | ||
|
|
722aba77f3 | ||
|
|
a225d2e99e | ||
|
|
6d9ec1852a | ||
|
|
19f189b4e5 | ||
|
|
2cdaf76c40 | ||
|
|
4c663b0216 | ||
|
|
4d4bf7897d | ||
|
|
0436e16fb2 | ||
|
|
d1b619be52 | ||
|
|
ec05408453 | ||
|
|
55f1f8446b | ||
|
|
4e16e699c1 | ||
|
|
a1fab8336e | ||
|
|
e978e6e782 | ||
|
|
8c5bc77fb9 | ||
|
|
1f11b0f612 | ||
|
|
f30241bda5 | ||
|
|
840ff60952 | ||
|
|
71cd681473 | ||
|
|
62e7a9c671 | ||
|
|
bfe223e120 | ||
|
|
af1950a63e | ||
|
|
0c23792344 | ||
|
|
c2c02bdc67 | ||
|
|
b337698f96 | ||
|
|
0125e009d3 | ||
|
|
76da6cc544 | ||
|
|
d10cb46783 | ||
|
|
81b632c255 | ||
|
|
e911635fb1 | ||
|
|
00e86f1c2d | ||
|
|
410b023b50 | ||
|
|
fcc5baef52 | ||
|
|
b7e938a9fb | ||
|
|
a90d99c27c | ||
|
|
d7b699ec34 | ||
|
|
9312636ee4 | ||
|
|
05fca752d6 | ||
|
|
c87b0e21be | ||
|
|
2c1205d8b1 | ||
|
|
c8e4b7c8a6 | ||
|
|
05c33833e7 | ||
|
|
524cc392f4 | ||
|
|
1f92b9a4ed | ||
|
|
582dc7ef97 | ||
|
|
a73cece360 | ||
|
|
4dfc011d86 | ||
|
|
59fda986ea | ||
|
|
63e4afc910 | ||
|
|
616651ff23 | ||
|
|
9e0d99c0c6 | ||
|
|
3f68203324 | ||
|
|
1dab44213a | ||
|
|
cd08f01bb4 | ||
|
|
7546f87949 | ||
|
|
d470a1234f | ||
|
|
683dc24e0f | ||
|
|
8db7fb226a | ||
|
|
ed8d2bc225 | ||
|
|
c7305be4d2 | ||
|
|
f973ff49ae | ||
|
|
5ac226aa93 | ||
|
|
724e9f56c8 | ||
|
|
2e1939e85c | ||
|
|
a474a7e675 | ||
|
|
f790b4bc0a | ||
|
|
a51ba6e3f6 | ||
|
|
df6bc812b5 | ||
|
|
63e0b36f8b | ||
|
|
f83361a814 | ||
|
|
212e52e485 | ||
|
|
7b6e742436 | ||
|
|
58ca3be1ec | ||
|
|
00dfaae8df | ||
|
|
299c4fed42 | ||
|
|
456cf971af | ||
|
|
5b5e322356 | ||
|
|
0e450df6a2 | ||
|
|
2578996631 | ||
|
|
8cc31d1b2e | ||
|
|
2242b98248 | ||
|
|
eef0248a1c | ||
|
|
c1e5ebbc1e | ||
|
|
02a711c4d6 | ||
|
|
a3ce8a3fcd | ||
|
|
f06c3c38b9 | ||
|
|
c82dd5129f | ||
|
|
9789c1c719 | ||
|
|
0c428a66d9 | ||
|
|
f423e54f77 | ||
|
|
8177c4334e | ||
|
|
cb46cb8480 | ||
|
|
10a25f733e | ||
|
|
24d23ce49b | ||
|
|
73022d3119 | ||
|
|
ad58b626a3 | ||
|
|
9e07df5c1b | ||
|
|
1c3d49afe0 | ||
|
|
b6747c742a | ||
|
|
023385ca59 | ||
|
|
3396671011 | ||
|
|
d58450c82a | ||
|
|
11ab017dd0 | ||
|
|
594d6f9efd | ||
|
|
7dcd0a1cff | ||
|
|
2f4b4d6076 | ||
|
|
a90cbc6339 | ||
|
|
a0dac95d25 | ||
|
|
f0cbf3d432 | ||
|
|
d8a8eec6ea | ||
|
|
186d71b361 | ||
|
|
11ef432476 | ||
|
|
2be5fe5ddf | ||
|
|
80e29492c6 | ||
|
|
dea686cf55 | ||
|
|
65a6a86d19 | ||
|
|
3cf7bac129 | ||
|
|
78ea4871f9 | ||
|
|
6faa93d787 | ||
|
|
5cc7916e69 | ||
|
|
23635c2b64 | ||
|
|
f36ddef9a7 | ||
|
|
dde941cac8 | ||
|
|
8ca3c43d73 | ||
|
|
90765b1f72 | ||
|
|
184c077c58 | ||
|
|
627348b46c | ||
|
|
77bc653524 | ||
|
|
a51b61b38c | ||
|
|
9d06d9edc8 | ||
|
|
d81649b365 | ||
|
|
41839746a2 | ||
|
|
3f71e951f1 | ||
|
|
4f184ba5da | ||
|
|
ad6baa5c9d | ||
|
|
df2f24617b | ||
|
|
428c54f2ad | ||
|
|
744bcaee61 | ||
|
|
20772492aa | ||
|
|
f57a008c58 | ||
|
|
89b1580587 | ||
|
|
52c024e260 | ||
|
|
01b01f6dfd | ||
|
|
e4acd2c40e | ||
|
|
e05c825a05 | ||
|
|
d462be6de6 | ||
|
|
39c6f65ce7 | ||
|
|
0746aff595 | ||
|
|
3c826e5d05 | ||
|
|
5a064d0e94 | ||
|
|
0945674ba2 | ||
|
|
6cb83758d7 | ||
|
|
8f57e098de | ||
|
|
6c7a17dba6 | ||
|
|
c9aed73987 | ||
|
|
74f4eb8312 | ||
|
|
9f8a96fb8a | ||
|
|
93273a4c9e | ||
|
|
584735c994 | ||
|
|
29dda871cb | ||
|
|
36b97bde9f | ||
|
|
99282a46e9 | ||
|
|
21f13f9e57 | ||
|
|
6c535081ec | ||
|
|
3c5c6d478a | ||
|
|
0535ebc4d2 | ||
|
|
bb7064cc30 | ||
|
|
cc6d41e1d3 | ||
|
|
12785583d0 | ||
|
|
c96412a78f | ||
|
|
daa712455b | ||
|
|
4c8751727a | ||
|
|
3bc179a16f | ||
|
|
646aa20b43 | ||
|
|
ac2e0afb62 | ||
|
|
57a899a412 | ||
|
|
5676b187b4 | ||
|
|
44a03ecfc9 | ||
|
|
85014cd132 | ||
|
|
8669dba5e6 | ||
|
|
472ab0cc24 | ||
|
|
b94c8defee | ||
|
|
6f8e228880 | ||
|
|
2d9b0a66fe | ||
|
|
71d3523254 | ||
|
|
dcb1f1f452 | ||
|
|
8b8ad14178 | ||
|
|
82dafbba33 | ||
|
|
a731a723e8 | ||
|
|
26cc12eaa4 | ||
|
|
72c15a5cc9 | ||
|
|
dca69efc11 | ||
|
|
56486c5c0e | ||
|
|
a6485456df | ||
|
|
e02fc4f1d6 | ||
|
|
44a697ab04 | ||
|
|
cec6e19099 | ||
|
|
9ff4e9e1e6 | ||
|
|
cea398849e | ||
|
|
4382f2124d | ||
|
|
a29adde5c0 | ||
|
|
5932df7ea1 | ||
|
|
93524c1994 | ||
|
|
0e8242180d | ||
|
|
5b3bda1c16 | ||
|
|
acda4ecb20 | ||
|
|
ab715c70d1 | ||
|
|
4dc7e64789 | ||
|
|
0dccf9ea6a | ||
|
|
2efc072fdb | ||
|
|
6ce060cfe0 | ||
|
|
9356cf648f | ||
|
|
75037493fa | ||
|
|
e8e60263c8 | ||
|
|
051303ad42 | ||
|
|
386bc71d57 | ||
|
|
2fa0a73c2c | ||
|
|
d133ad61f3 | ||
|
|
4b25543633 | ||
|
|
902c885782 | ||
|
|
1c36606886 | ||
|
|
fe91514395 | ||
|
|
8bc93c6f2b | ||
|
|
21a47b50f4 | ||
|
|
e6042a7c52 | ||
|
|
f68b4265a6 | ||
|
|
a019eebdd6 | ||
|
|
656219d867 | ||
|
|
7cbbc2af7a | ||
|
|
4d1a61335c | ||
|
|
241996d5d6 | ||
|
|
4c79dc1093 | ||
|
|
93305a2d5e | ||
|
|
adcb87f0db | ||
|
|
e3bbd70664 | ||
|
|
4f0eafce8f | ||
|
|
4a23069de9 | ||
|
|
02f0f95d40 | ||
|
|
9ec2c03c5b | ||
|
|
49f384a2ab | ||
|
|
2672120a97 | ||
|
|
5acccbacc1 | ||
|
|
1a75165f35 | ||
|
|
d1734a089a | ||
|
|
a9f94f260a | ||
|
|
31df43212c | ||
|
|
7d8a46519f | ||
|
|
6098efcc59 | ||
|
|
f6d13e2295 | ||
|
|
889fd5f71f | ||
|
|
53f0c7522a | ||
|
|
ac7e97f4fe | ||
|
|
55e9b85ad6 | ||
|
|
b6a55f0891 | ||
|
|
b852781eba | ||
|
|
c1f58a238d | ||
|
|
1be955e52a | ||
|
|
9e4c037cef | ||
|
|
568ae094f4 | ||
|
|
8b7381b626 | ||
|
|
dbe2b6f7b0 | ||
|
|
d573a2cada | ||
|
|
f04be05a14 | ||
|
|
a97624dd81 | ||
|
|
7b8bb2519e | ||
|
|
aa20b3ef7c | ||
|
|
cbdc78ec0f | ||
|
|
9d2ea5d64b | ||
|
|
2bc7f416ee | ||
|
|
38378cd0e8 | ||
|
|
3007eee22e | ||
|
|
9656a82609 | ||
|
|
749f19e502 | ||
|
|
7dc256432f | ||
|
|
d1f14202a9 | ||
|
|
b287560258 | ||
|
|
436e5b7ea3 | ||
|
|
4d533b9baa | ||
|
|
78df07ac71 | ||
|
|
8934a2c49b | ||
|
|
328edea03a | ||
|
|
aa6dacbbdf | ||
|
|
8322a79bb9 | ||
|
|
9a24c0ae3f | ||
|
|
a891af2f7a | ||
|
|
75b381cd28 | ||
|
|
433e984d1f | ||
|
|
f7857ac8a8 | ||
|
|
b756a15aba | ||
|
|
50c81ebe0d | ||
|
|
3ac135cef3 | ||
|
|
8870f9b1da | ||
|
|
bb7236a750 | ||
|
|
81d68b2180 | ||
|
|
509227fd80 | ||
|
|
c3b23974bd | ||
|
|
ea1a83ce41 | ||
|
|
9da0797e29 | ||
|
|
daf643e1ce | ||
|
|
1628a9e864 | ||
|
|
b210bdf032 | ||
|
|
c5730cf711 | ||
|
|
1cb810ff1c | ||
|
|
97e8a6ebd9 | ||
|
|
c3c264978f | ||
|
|
9fd1016bb1 | ||
|
|
045ee28c50 | ||
|
|
987597532c | ||
|
|
ff304d3767 | ||
|
|
bc45fb6b13 | ||
|
|
c352954882 | ||
|
|
ae39fbd646 | ||
|
|
8dfaf1539e | ||
|
|
837ac2fdbd | ||
|
|
785dbfc72d | ||
|
|
7308ef7809 | ||
|
|
b5b39af531 | ||
|
|
a5c6d3c7b8 | ||
|
|
a46bac3100 | ||
|
|
cfc13ed7f3 | ||
|
|
c95450016b | ||
|
|
48d7036874 | ||
|
|
53362b81cc | ||
|
|
2f192dbcd6 | ||
|
|
dd2949922b | ||
|
|
1d22609473 | ||
|
|
eaefc1e410 | ||
|
|
72281c4ff9 | ||
|
|
9d99360912 | ||
|
|
bbfbf90797 | ||
|
|
772810fb24 | ||
|
|
978f342392 | ||
|
|
fbdc5ad962 | ||
|
|
c0d694d5d3 | ||
|
|
93af8aa157 | ||
|
|
883524056b | ||
|
|
73616d721a | ||
|
|
0543362b34 | ||
|
|
c6ff39cc14 | ||
|
|
9e9e29ddf8 | ||
|
|
c79b53d406 | ||
|
|
7f1afbfd60 | ||
|
|
23760d6c14 | ||
|
|
cbcd1ed42d | ||
|
|
6689884910 | ||
|
|
ab769590a1 | ||
|
|
d603e655d3 | ||
|
|
5f77816772 | ||
|
|
8922b56b58 | ||
|
|
a6feb58837 | ||
|
|
899b4df7a3 | ||
|
|
2e43438e0c | ||
|
|
2168d6ac25 | ||
|
|
1e946d681d | ||
|
|
63fc4a8521 | ||
|
|
e5157dc63d | ||
|
|
404fc94705 | ||
|
|
4aebe3d82e | ||
|
|
51bf3c9503 | ||
|
|
e6dcfa64b0 | ||
|
|
c24dbcbfe1 | ||
|
|
e7a61de8af | ||
|
|
f894209de2 | ||
|
|
f1327fd5f9 | ||
|
|
e7570f3195 | ||
|
|
374ea49be9 | ||
|
|
34f656decd | ||
|
|
07cf2cd9c4 | ||
|
|
4c3d7083c0 | ||
|
|
b858c638ad | ||
|
|
c4467da53a | ||
|
|
9aac0c7333 | ||
|
|
d194be8e8b | ||
|
|
65ce0303f8 | ||
|
|
36452b4d6e | ||
|
|
14c03cb6f4 | ||
|
|
5dec828abc | ||
|
|
468f34104b | ||
|
|
5b45aab262 | ||
|
|
18de11c1ea | ||
|
|
703c8ac0ef | ||
|
|
28f1276286 | ||
|
|
dd19e74476 | ||
|
|
d0ac0151b6 | ||
|
|
d385b9aac7 | ||
|
|
bae1cb859c | ||
|
|
51ebdf3b7d | ||
|
|
e27fd269c1 | ||
|
|
0d8c15c01f | ||
|
|
751785fc97 | ||
|
|
3c8781e2e9 | ||
|
|
a0211f5d6c | ||
|
|
f003173752 | ||
|
|
6747225e02 | ||
|
|
bf59a4a6df | ||
|
|
fd1d590726 | ||
|
|
f10c87b442 | ||
|
|
d6df0322c2 | ||
|
|
fbc41c0e98 | ||
|
|
239902f861 | ||
|
|
ddce486360 | ||
|
|
fc32db300d | ||
|
|
79e6d890d5 | ||
|
|
419d12ca1b | ||
|
|
3b4c89e4b5 | ||
|
|
2908e76151 | ||
|
|
26dc594ebb | ||
|
|
d8eadf3796 | ||
|
|
914bb80bde | ||
|
|
6d9ea7e184 | ||
|
|
646dd5554c | ||
|
|
161ff9ff35 | ||
|
|
49ca67202f | ||
|
|
cc59ac4603 | ||
|
|
16a8edc5f0 | ||
|
|
dfd5d2fe75 | ||
|
|
67a17446f2 | ||
|
|
3c58ca181c | ||
|
|
3707078ffc | ||
|
|
e297748b22 | ||
|
|
3c2bfa5e53 | ||
|
|
42608b1925 | ||
|
|
317673fec3 | ||
|
|
8d32fd997f | ||
|
|
1913c37a91 | ||
|
|
98d48fc731 | ||
|
|
03e3011332 | ||
|
|
6b4a928145 | ||
|
|
ca577c1638 | ||
|
|
d45f19d385 | ||
|
|
224688cc3b | ||
|
|
a1a88ebabc | ||
|
|
be0e100fed | ||
|
|
04dedc7ed8 | ||
|
|
0149680f54 | ||
|
|
9515e5aefb | ||
|
|
e5ec793f7e | ||
|
|
5b85464791 | ||
|
|
7e386c7e98 | ||
|
|
9e97c13c6f | ||
|
|
1d604be671 | ||
|
|
eb212ae073 | ||
|
|
ffbf63e6af | ||
|
|
94f5204629 | ||
|
|
22a017a856 | ||
|
|
920d92aa46 | ||
|
|
b198b49d15 | ||
|
|
2057177184 | ||
|
|
e28e3bb532 | ||
|
|
d7aed2fe4f | ||
|
|
ca0def766e | ||
|
|
8291ae34f2 | ||
|
|
b08ec22fe1 | ||
|
|
fd883c909a | ||
|
|
0dd1c4458d | ||
|
|
f9cafc4001 | ||
|
|
bf9fc8ac0e | ||
|
|
eb867817b5 | ||
|
|
36262a0479 | ||
|
|
930720bbbb | ||
|
|
025118da3e | ||
|
|
beeed580b8 | ||
|
|
07ae23fe14 | ||
|
|
881529a401 | ||
|
|
ed758de80d | ||
|
|
e74a5829c7 | ||
|
|
d1dc863962 | ||
|
|
f3914a432e | ||
|
|
6d7f4f84e2 | ||
|
|
649f375494 | ||
|
|
c37b3f995a | ||
|
|
a2a672449a | ||
|
|
4d0584a828 | ||
|
|
61620cbd15 | ||
|
|
b9303b5577 | ||
|
|
6e08ddce6e | ||
|
|
23a576faf7 | ||
|
|
461c8ef834 | ||
|
|
88b6a15b47 | ||
|
|
e2df286444 | ||
|
|
91db7930dc | ||
|
|
c1f4112bdc | ||
|
|
118899357d | ||
|
|
1746749361 | ||
|
|
a446433c87 | ||
|
|
2d1233b86c | ||
|
|
eb8b758226 | ||
|
|
8bffb26c23 | ||
|
|
8c03ce4d80 | ||
|
|
c471389afb | ||
|
|
c22f8dd660 | ||
|
|
24b9c1923f | ||
|
|
bd0967ad87 | ||
|
|
d9a98b5814 | ||
|
|
13940268a2 | ||
|
|
461cb22069 | ||
|
|
35ec67885a | ||
|
|
0bc4c216ac | ||
|
|
cd7dc49527 | ||
|
|
4817c78a65 | ||
|
|
eb079959fb | ||
|
|
7bdb98c946 | ||
|
|
02474a321a | ||
|
|
cfdcf91df5 | ||
|
|
ae1a2ff16f | ||
|
|
1c13cc9b48 | ||
|
|
306f44198e | ||
|
|
966d9af98a | ||
|
|
8d5a77001e | ||
|
|
2228dff3ea | ||
|
|
cb4cb86d80 | ||
|
|
f2c0ed193d | ||
|
|
0557ab5780 | ||
|
|
61688233c7 | ||
|
|
19ba91f77a | ||
|
|
f3dbe19669 | ||
|
|
0e0f17be30 | ||
|
|
f15d7bdbf2 | ||
|
|
54c65fc3cb | ||
|
|
4953fb1c88 | ||
|
|
078627f805 | ||
|
|
5684beae90 | ||
|
|
813f9f3082 | ||
|
|
3f89bbeab5 | ||
|
|
a01473d7a5 | ||
|
|
689bc99402 | ||
|
|
92c8efdc96 | ||
|
|
2024775e07 | ||
|
|
43ff15244d | ||
|
|
b8485528b2 | ||
|
|
4d588b2d6a | ||
|
|
e0227f2110 | ||
|
|
e65a853c59 | ||
|
|
07d7e8aa1b | ||
|
|
e749945317 | ||
|
|
17d984eab3 | ||
|
|
b2cf253a13 | ||
|
|
65519263f4 | ||
|
|
8f9262f3fe | ||
|
|
007c56f453 | ||
|
|
0542b03750 | ||
|
|
2bd252b501 | ||
|
|
90fa423737 | ||
|
|
a6b7e721cf | ||
|
|
2c9775313a | ||
|
|
9c9cd54ef3 | ||
|
|
3851ffce0f | ||
|
|
5f8b2c2ff0 | ||
|
|
b17982bde9 | ||
|
|
799e3b2b40 | ||
|
|
5968a3e60e | ||
|
|
93cc3a8492 | ||
|
|
13176dfe2f | ||
|
|
424b9a83cd | ||
|
|
e75ccfd727 | ||
|
|
556abc0888 | ||
|
|
532bb3aaa1 | ||
|
|
59c98d6fd5 | ||
|
|
8c1a82c327 | ||
|
|
72f63a4980 | ||
|
|
6c3162f9c6 | ||
|
|
4431f4deb8 | ||
|
|
e7f329edb2 | ||
|
|
e84a5545e1 | ||
|
|
343c17d5b3 | ||
|
|
63bc6ade4f | ||
|
|
d504bbbfa4 | ||
|
|
716a22498f | ||
|
|
7d8c6b3f3c | ||
|
|
1d7f5be0ff | ||
|
|
eb182c08af | ||
|
|
03b48df7bb | ||
|
|
9f0907d40c | ||
|
|
9d5968e8ec | ||
|
|
4303f2e377 | ||
|
|
12c5fdfdb5 | ||
|
|
a810e585db | ||
|
|
a823b801b8 | ||
|
|
47d529aac5 | ||
|
|
aada1e698f | ||
|
|
c7513eb032 | ||
|
|
73cd34b121 | ||
|
|
fc460fff94 | ||
|
|
c4ec01d59b | ||
|
|
d4e4fe40e0 | ||
|
|
25e3e62354 | ||
|
|
a11fcd46a2 | ||
|
|
b3deadd898 | ||
|
|
a74cece6d0 | ||
|
|
8733d5a296 | ||
|
|
d3ca82d8c2 | ||
|
|
0106c3e476 | ||
|
|
3d1692d1fd | ||
|
|
c241da32e8 | ||
|
|
3af988a7f3 | ||
|
|
ca55f2927a | ||
|
|
aef9e036bf | ||
|
|
79272f98fc | ||
|
|
24eb275b99 | ||
|
|
a6563df705 | ||
|
|
bab0e975c8 | ||
|
|
83d7e95de0 | ||
|
|
6589f654b0 | ||
|
|
8ffa0b24a4 | ||
|
|
9019ea0fce | ||
|
|
60fc372211 | ||
|
|
da7c51d820 | ||
|
|
e05673a379 | ||
|
|
7a381366aa | ||
|
|
7d093edc18 | ||
|
|
472229b974 | ||
|
|
f6cc89ec7c | ||
|
|
330437ad7c | ||
|
|
168af8bacb | ||
|
|
bf5df306e1 | ||
|
|
3021058e6d | ||
|
|
bd54ce830a | ||
|
|
ff90cb409e | ||
|
|
d7f82c8ddf | ||
|
|
1bf2b1e475 | ||
|
|
241e55ef3b | ||
|
|
1f8f8c9104 | ||
|
|
cff62042ee | ||
|
|
749bc42aa9 | ||
|
|
2d749d490b | ||
|
|
08d685c97a | ||
|
|
c49844df66 | ||
|
|
304e0f8945 | ||
|
|
6a70a4fbb3 | ||
|
|
4ea7e723fe | ||
|
|
349dafa728 | ||
|
|
21e60fd3ed | ||
|
|
d81e9ce7cb | ||
|
|
5d9e16ea49 | ||
|
|
c78e1c0f23 | ||
|
|
b648999528 | ||
|
|
8db67d1647 | ||
|
|
f05bd7f082 | ||
|
|
4880ac6533 | ||
|
|
3d74ff3c87 | ||
|
|
5dc04c5201 | ||
|
|
133b38b93b | ||
|
|
93c0198b2d | ||
|
|
f0debfd2fc | ||
|
|
67a4cc610b | ||
|
|
e7b50c89b0 | ||
|
|
8d71ad37cb | ||
|
|
272f132b82 | ||
|
|
5b70d3da1c | ||
|
|
2ec65051fd | ||
|
|
9a423e9a89 | ||
|
|
d741bcf8a9 | ||
|
|
f8912bb19f | ||
|
|
e6b8207b03 | ||
|
|
89165326b4 | ||
|
|
423bf9955e | ||
|
|
377108619b | ||
|
|
47e56afeeb | ||
|
|
378867d894 | ||
|
|
8e0c107545 | ||
|
|
03d790451f | ||
|
|
7a4029d1b1 | ||
|
|
451fb16f9b | ||
|
|
3e384b60ce | ||
|
|
33752de12d | ||
|
|
38c7d53bf7 | ||
|
|
e3043d7ac7 | ||
|
|
d3ddd5ffaa | ||
|
|
0749ce92b3 | ||
|
|
7280fa1e31 | ||
|
|
4311dd13ae | ||
|
|
4aff6c1c32 | ||
|
|
4fef36966b | ||
|
|
05aa75cecf | ||
|
|
5785bbb491 | ||
|
|
299606e4ae | ||
|
|
5990266724 | ||
|
|
d3fdb44ad8 | ||
|
|
3168f0e646 | ||
|
|
9be6aa3f79 | ||
|
|
c0dd9ef9f2 | ||
|
|
da693a636e | ||
|
|
cc9cef7f7a | ||
|
|
112917cfef | ||
|
|
c30a8067ab | ||
|
|
b7053156fe | ||
|
|
f64d300cfd | ||
|
|
5a70887467 | ||
|
|
545cd8fa60 | ||
|
|
e698998343 | ||
|
|
27faeafc1b | ||
|
|
2014d38e10 | ||
|
|
694d2ebec0 | ||
|
|
9854262334 | ||
|
|
b639f1ad4b | ||
|
|
1541224a81 | ||
|
|
b2f8b4ada5 | ||
|
|
93af0365e8 | ||
|
|
852468ead7 | ||
|
|
23240f7986 | ||
|
|
d42a87cb31 | ||
|
|
2538f019d0 | ||
|
|
d168ee9bed | ||
|
|
09c8807a36 | ||
|
|
704d33c374 | ||
|
|
e6c32b3a14 | ||
|
|
b3f115fa0a | ||
|
|
ca8fdff1af | ||
|
|
8558264514 | ||
|
|
b5e92f4f90 | ||
|
|
db1ace5e82 | ||
|
|
eecb0188c0 | ||
|
|
16739264d3 | ||
|
|
a8c4174a13 | ||
|
|
38d62494ef | ||
|
|
8a6feab1c4 | ||
|
|
766faa05a9 | ||
|
|
f27c89980a | ||
|
|
338dac258b | ||
|
|
4ddb6a3a1f | ||
|
|
03bfc0d7c8 | ||
|
|
e5ee0b6f6c | ||
|
|
b939a2e88c | ||
|
|
4925f60cff | ||
|
|
3a1225e438 | ||
|
|
2ea4e74ed3 | ||
|
|
aecf0c9bb9 | ||
|
|
0891b58c30 | ||
|
|
428f164d02 | ||
|
|
693843f1fa | ||
|
|
ac6bf7226a | ||
|
|
da3a0d619c | ||
|
|
786746404b | ||
|
|
5364b92c37 | ||
|
|
34624cf399 | ||
|
|
d08597c65a | ||
|
|
3d72fe0730 | ||
|
|
33ec599ca0 | ||
|
|
dbd2189945 | ||
|
|
c46de340b7 | ||
|
|
e1fd9c08b3 | ||
|
|
6ace57e1b0 | ||
|
|
9e13d1fad5 | ||
|
|
e6cdc438fd | ||
|
|
a8764ac5d5 | ||
|
|
374f2a5e16 | ||
|
|
a0570ff1eb | ||
|
|
b13099de3f | ||
|
|
9b9350e010 | ||
|
|
d6e29e9597 | ||
|
|
e1117a8492 | ||
|
|
ea9ad4e46d | ||
|
|
ca00fed827 | ||
|
|
79796b22ad | ||
|
|
434a2dcbf2 | ||
|
|
21179f8300 | ||
|
|
c251601916 | ||
|
|
eb18ae9003 | ||
|
|
f8227abf1c | ||
|
|
ea5f91737f | ||
|
|
5c69d45f5b | ||
|
|
34160806c0 | ||
|
|
f5cfdf6efe | ||
|
|
6339b506c0 | ||
|
|
6e3519abae | ||
|
|
51d080d2c1 | ||
|
|
7035471982 | ||
|
|
6d4bc9a1f8 | ||
|
|
5bd23db0ee | ||
|
|
c6e01ebd52 | ||
|
|
571ca72824 | ||
|
|
ab709ccac1 | ||
|
|
70e4f12d2f | ||
|
|
fc5c1a28d8 | ||
|
|
399bca316a | ||
|
|
80d3ded895 | ||
|
|
053b1371c7 | ||
|
|
608f8b10da | ||
|
|
2bea1bda56 | ||
|
|
58671e1bc1 | ||
|
|
45cfb16424 | ||
|
|
c19327f1bb | ||
|
|
1dcfe193ac | ||
|
|
9644fe1839 | ||
|
|
c9bda932fe | ||
|
|
4eb41031e9 | ||
|
|
e5ca60acf5 | ||
|
|
696f8eb4c6 | ||
|
|
3217da6fa5 | ||
|
|
db031d5d76 | ||
|
|
3db35ba9be | ||
|
|
62ecc74e76 | ||
|
|
f7f8569bbf | ||
|
|
2ebf52e57d | ||
|
|
adb2ac4747 | ||
|
|
205c5fa078 | ||
|
|
90d011cc48 | ||
|
|
51c7b5d46f | ||
|
|
a19656e7cb | ||
|
|
b1cd012aa6 | ||
|
|
266086670b | ||
|
|
a718f5bdf3 | ||
|
|
61bf8478a2 | ||
|
|
7a52dfad55 | ||
|
|
f875f49caa | ||
|
|
c63cffca7f | ||
|
|
7d6c009104 | ||
|
|
582d073de1 | ||
|
|
ab8a1a2a0d | ||
|
|
f9dbd4d9f4 | ||
|
|
348b454401 | ||
|
|
a440522f84 | ||
|
|
58ed9901d7 | ||
|
|
382a5e3318 | ||
|
|
441517bbe1 | ||
|
|
b46932f0c0 | ||
|
|
49bcb5ce2d | ||
|
|
07db5638e2 | ||
|
|
c68ce8667d | ||
|
|
8190fdb260 | ||
|
|
9b519864bf | ||
|
|
887664aa61 | ||
|
|
fb044b6a64 | ||
|
|
a8638aa20d | ||
|
|
2e2fd8fd79 | ||
|
|
750cc02b3a | ||
|
|
9de8c04945 | ||
|
|
57b61491d3 | ||
|
|
4a4d832344 | ||
|
|
44239b1062 | ||
|
|
4bc4351250 | ||
|
|
303d792b9f | ||
|
|
afec16e644 | ||
|
|
f2ea8a0529 | ||
|
|
5367a1f51f | ||
|
|
0c176c677e | ||
|
|
f2d09f27bb | ||
|
|
16eb966ee3 | ||
|
|
63fd23ab1c | ||
|
|
11e68541b0 | ||
|
|
429e6ba8a6 | ||
|
|
719cd53e09 | ||
|
|
0ea9cdf4f2 | ||
|
|
7c469c0712 | ||
|
|
bfd9728cf4 | ||
|
|
c371bdc499 | ||
|
|
7c18c2ea5f | ||
|
|
9d0cf02fef | ||
|
|
2af3541880 | ||
|
|
c7bad74d8f | ||
|
|
af9b32e3b9 | ||
|
|
acb1e31374 | ||
|
|
f5f1b069ad | ||
|
|
554d849827 | ||
|
|
6f1bf5d212 | ||
|
|
1e65562d55 | ||
|
|
9dacd54a50 | ||
|
|
d178d6e921 | ||
|
|
fa432508b0 | ||
|
|
72b7331f5f | ||
|
|
6856eccc77 | ||
|
|
d5bf9e74c4 | ||
|
|
4d2f277d43 | ||
|
|
43d3d024ac | ||
|
|
ad500b01e0 | ||
|
|
f4e4c7a7c8 | ||
|
|
d743d96886 | ||
|
|
2038722c52 | ||
|
|
f887719a40 | ||
|
|
9a2dd0bc5a | ||
|
|
2c18faf3e4 | ||
|
|
42933c804a | ||
|
|
a0246c5c96 | ||
|
|
a27fa80a7e | ||
|
|
1a3d2ad275 | ||
|
|
a408209d24 | ||
|
|
5f807e37c5 | ||
|
|
3ae41e5f7f | ||
|
|
02ff12d491 | ||
|
|
3b15c88225 | ||
|
|
e753d6298f | ||
|
|
77c2d810f9 | ||
|
|
3952070800 | ||
|
|
0cd397a3f8 | ||
|
|
344ebc3bd2 | ||
|
|
094e9b1dab | ||
|
|
c37d38886c | ||
|
|
4f5e087ff4 | ||
|
|
ac368f2788 | ||
|
|
5578dccaa0 | ||
|
|
6ba8cf8405 | ||
|
|
50c55b25f7 | ||
|
|
6667a916a4 | ||
|
|
be717b3c07 | ||
|
|
f37c64ee5b | ||
|
|
cfd989d7c5 | ||
|
|
da600e5fbe | ||
|
|
742cff5f3c | ||
|
|
84de428d30 | ||
|
|
e633ce06c7 | ||
|
|
e654ea1e1a | ||
|
|
06eb46b1d4 | ||
|
|
8ac246162e | ||
|
|
048486390e | ||
|
|
6a043eee55 | ||
|
|
2c2cf5e856 | ||
|
|
d7fd78cb91 | ||
|
|
a8c446c3bc | ||
|
|
f7efac57b7 | ||
|
|
dabb75034c | ||
|
|
cf654b9a1a | ||
|
|
6a50adb4d5 | ||
|
|
5c076a6d93 | ||
|
|
a94104dbb5 | ||
|
|
554e577676 | ||
|
|
2db666e99a | ||
|
|
7e000e6af4 | ||
|
|
6c0fae15f8 | ||
|
|
a994eec513 | ||
|
|
3a99dc7c5c | ||
|
|
5295b4713d | ||
|
|
cdc61ebf53 | ||
|
|
9d923c6c03 | ||
|
|
99516572b1 | ||
|
|
f26805e862 | ||
|
|
e180b7a460 | ||
|
|
14dcad6bbc | ||
|
|
60d07f20e7 | ||
|
|
86818c9a89 | ||
|
|
95065791b3 | ||
|
|
bbb8d4c802 | ||
|
|
2b5a9be49c | ||
|
|
082d161a75 | ||
|
|
cf2922f164 | ||
|
|
cf3fd21234 | ||
|
|
5fb6dd1424 | ||
|
|
760dbbb734 | ||
|
|
cb0e826c5d | ||
|
|
f72b0a7b04 | ||
|
|
702c8acdd5 | ||
|
|
013c911a82 | ||
|
|
e89f1453ab | ||
|
|
950be70a33 | ||
|
|
760c912ab9 | ||
|
|
b91ca168fb | ||
|
|
51e0f2bee3 | ||
|
|
878f54c27b | ||
|
|
3ea6745b36 | ||
|
|
3319765034 | ||
|
|
1c41de16d4 | ||
|
|
1746a7352e | ||
|
|
048d8a0158 | ||
|
|
3a4e107b6b | ||
|
|
a5dfe08a81 | ||
|
|
19e75ccf86 | ||
|
|
4fb60e1562 | ||
|
|
7541316bb4 | ||
|
|
81211da7b4 | ||
|
|
8704e533da | ||
|
|
455592eee8 | ||
|
|
a80f2eea23 | ||
|
|
190cd0a111 | ||
|
|
0e93506985 | ||
|
|
016e46a3c0 | ||
|
|
31582caa07 | ||
|
|
41246b45f1 | ||
|
|
4626d04067 | ||
|
|
4af3d436b2 | ||
|
|
f968b41f63 | ||
|
|
e5b71af8c9 | ||
|
|
724e3f33bc | ||
|
|
959a2d2527 | ||
|
|
e43f3ac989 | ||
|
|
fc67c64b8f | ||
|
|
8afc4f8d9d | ||
|
|
eca5cc8669 | ||
|
|
e9fc7bc69c | ||
|
|
448b0a0014 | ||
|
|
5574fad69c | ||
|
|
d190c702de | ||
|
|
5e01ee8adf | ||
|
|
adb9ecf3cc | ||
|
|
39e5fabfa9 | ||
|
|
ef911a2d12 | ||
|
|
d80c4f1a6e | ||
|
|
9312ee63b0 | ||
|
|
41dfb229ec | ||
|
|
3dd04736c0 | ||
|
|
2929c9e56f | ||
|
|
10edb469bb | ||
|
|
5294fd132f | ||
|
|
0b4a46fa6c | ||
|
|
7cc2193bce | ||
|
|
729a9f55fc | ||
|
|
2b1e6829b3 | ||
|
|
615146c069 | ||
|
|
9686ffedef | ||
|
|
6d94bbf618 | ||
|
|
9bfabc1f13 | ||
|
|
cba44128d5 | ||
|
|
427df8792d | ||
|
|
8274369522 | ||
|
|
2526ac6500 | ||
|
|
db32c185ae | ||
|
|
f8156d2d2c | ||
|
|
9ecdd1f4c7 | ||
|
|
a1ce6e8ff4 | ||
|
|
5effe1590c | ||
|
|
fb6966f2b5 | ||
|
|
f163eede78 | ||
|
|
2c4e03d2cf | ||
|
|
1a827d5b68 | ||
|
|
a142fab155 | ||
|
|
b259bb4670 | ||
|
|
4ef965cc40 | ||
|
|
95b82ae5e3 | ||
|
|
9e8008c49c | ||
|
|
026e301307 | ||
|
|
68438b0d4e | ||
|
|
f2731c9f93 | ||
|
|
4b49ea1e92 | ||
|
|
2925852244 | ||
|
|
c6354fa153 | ||
|
|
3b51f5c67e | ||
|
|
f704f405af | ||
|
|
f0a8a1a853 | ||
|
|
705ea98fd3 | ||
|
|
f218eb0ddf | ||
|
|
50366b00d5 | ||
|
|
28fc8741d6 | ||
|
|
723da1d7a5 | ||
|
|
1a948cbd93 | ||
|
|
869c89d83f | ||
|
|
737561c1b3 | ||
|
|
1cf1cf8759 | ||
|
|
ea1a8d1223 | ||
|
|
4a8fd8ae92 | ||
|
|
2d75b540e2 | ||
|
|
aa97cd6e9b | ||
|
|
2b0165e90c | ||
|
|
2917d1217d | ||
|
|
69a51a426c | ||
|
|
45e73b72a5 | ||
|
|
caa5093498 | ||
|
|
c694608450 | ||
|
|
ca145643bd | ||
|
|
97d509d4d2 | ||
|
|
5bc2acc072 | ||
|
|
33a6fc70e4 | ||
|
|
d8a4db72ac | ||
|
|
99b2fc2066 | ||
|
|
498ea7512a | ||
|
|
9aff55ed1f | ||
|
|
7447979110 | ||
|
|
b6f9c333d4 | ||
|
|
2ec4113cb2 | ||
|
|
913d9e9a59 | ||
|
|
3cde4c78b2 | ||
|
|
63cc34f632 | ||
|
|
fdc5e72720 | ||
|
|
5a0f9605e3 | ||
|
|
93a6a4e1a8 | ||
|
|
af1d6acb7e | ||
|
|
933f76fda3 | ||
|
|
31e33d2acd | ||
|
|
fc9ee1a4de | ||
|
|
de5ca96654 | ||
|
|
a891d8d738 | ||
|
|
029333a8eb | ||
|
|
097a26007f | ||
|
|
8df5955da4 | ||
|
|
957bbab57f | ||
|
|
f79026acc1 | ||
|
|
502258aa5f | ||
|
|
b055d8c39c | ||
|
|
2690ce7a96 | ||
|
|
1de7c75590 | ||
|
|
15d05748df | ||
|
|
9abbcc3ee0 | ||
|
|
20008b72a8 | ||
|
|
aed0cfa3d1 | ||
|
|
f9aa1daa0d | ||
|
|
674deaf223 | ||
|
|
5595098063 | ||
|
|
2b7db90340 | ||
|
|
8b12371e45 | ||
|
|
4782acf60e | ||
|
|
0cd1e91056 | ||
|
|
09d13f186f | ||
|
|
c5632bb91b | ||
|
|
0d531d9655 | ||
|
|
69efb87d19 | ||
|
|
368c124de8 | ||
|
|
21a7b4f26d | ||
|
|
cf2193c07f | ||
|
|
a641992c1d | ||
|
|
ac168a03c8 | ||
|
|
084f2434a7 | ||
|
|
7c7ae5ebef | ||
|
|
4feffca178 | ||
|
|
c555a214d2 | ||
|
|
d568e586b7 | ||
|
|
24f9bec6f4 | ||
|
|
6d0678d963 | ||
|
|
3255712343 | ||
|
|
3d796d8040 | ||
|
|
3db5303bfe | ||
|
|
a71d2f3f40 | ||
|
|
73e32925e4 | ||
|
|
125c572d97 | ||
|
|
a5150c83a2 | ||
|
|
204199e1ce | ||
|
|
f53e0702fc | ||
|
|
6686d937fb | ||
|
|
117fc872a7 | ||
|
|
7d2e850577 | ||
|
|
03ba79f144 | ||
|
|
11f9c253e0 | ||
|
|
5cf6a062e3 | ||
|
|
6149b82119 | ||
|
|
82ef6b5242 | ||
|
|
b8bc965414 | ||
|
|
69d49a2438 | ||
|
|
9b800b7fbe | ||
|
|
d576f5408e | ||
|
|
c40cb52342 | ||
|
|
a2ac452ef9 | ||
|
|
4fa65a5c25 | ||
|
|
b3daf6b5db | ||
|
|
f58eb391aa | ||
|
|
cffd052fee | ||
|
|
79c402b052 | ||
|
|
65d0f32f82 | ||
|
|
728acf521c | ||
|
|
206866ebb3 | ||
|
|
85c6ffbe0d | ||
|
|
4e891e9fb7 | ||
|
|
de3d3b9cb1 | ||
|
|
43ea265b78 | ||
|
|
9d65e61f39 | ||
|
|
ae663a4198 | ||
|
|
d7800e7975 | ||
|
|
542efda7db | ||
|
|
438c21ad5c | ||
|
|
3cd7659924 | ||
|
|
99fcf60977 | ||
|
|
81c0a918af | ||
|
|
f206b81cf7 | ||
|
|
60e7951312 | ||
|
|
9898b96992 | ||
|
|
840289e7cc | ||
|
|
d163c4b530 | ||
|
|
90cf6a06be | ||
|
|
cdfabbc507 | ||
|
|
c846388a65 | ||
|
|
2fde60da12 | ||
|
|
6040d4080e | ||
|
|
a4e1d83599 | ||
|
|
a3b098b4be | ||
|
|
466f2761cb | ||
|
|
a993c5227d | ||
|
|
5320906b0b | ||
|
|
aeb5c623c1 | ||
|
|
5fbb2f121e | ||
|
|
1da2b2dd74 | ||
|
|
c1184552ac | ||
|
|
9e3fbcf35c | ||
|
|
d8b444c144 | ||
|
|
a2372cfab5 | ||
|
|
4d3c3d0b73 | ||
|
|
3748c28924 | ||
|
|
772298257b | ||
|
|
b27bc67271 | ||
|
|
cb8b9950af | ||
|
|
b6ba32ce75 | ||
|
|
53694ebaa1 | ||
|
|
37fff608b0 | ||
|
|
02dd621ac7 | ||
|
|
4b612f590c | ||
|
|
91b63f6d69 | ||
|
|
cff886ba12 | ||
|
|
57fac33a74 | ||
|
|
3e2a515d27 | ||
|
|
bb23286383 | ||
|
|
f125ba7eb6 | ||
|
|
dd8febca1a | ||
|
|
fb44f8e50f | ||
|
|
4c5356f77a | ||
|
|
f5b4e1ef4f | ||
|
|
6e944a413c | ||
|
|
967522b95e | ||
|
|
f4b16a3bac | ||
|
|
f9327534f8 | ||
|
|
da9f140829 | ||
|
|
824980e70e | ||
|
|
3a97de52ef | ||
|
|
24437de591 | ||
|
|
4c5ffd2349 | ||
|
|
aa7efb96bf | ||
|
|
63a91cd37a | ||
|
|
8056120195 | ||
|
|
23557f8e77 | ||
|
|
05f8e98c4a | ||
|
|
48fb4e0932 | ||
|
|
0850b38b45 | ||
|
|
000b3b3117 | ||
|
|
046a1ad331 | ||
|
|
98aba6a534 | ||
|
|
b35c3b5eb8 | ||
|
|
45c2388a58 | ||
|
|
0154e3480c | ||
|
|
082ab8fcab | ||
|
|
d1f11e9c10 | ||
|
|
dd1b503f64 | ||
|
|
bd45d0363d | ||
|
|
91fb6231b2 | ||
|
|
94e6b2976e | ||
|
|
e3948d8582 | ||
|
|
dd3ce40826 | ||
|
|
ec6ca37ed3 | ||
|
|
a52fec6ac4 | ||
|
|
1f3ad461bc | ||
|
|
bee2b5eea4 | ||
|
|
e37dd64548 | ||
|
|
8f90642eea | ||
|
|
cf0f78336b | ||
|
|
23e45fa3c4 | ||
|
|
fd78446b2b | ||
|
|
7c61bcb058 | ||
|
|
ef2531558c | ||
|
|
ca80564a78 | ||
|
|
285b868e9b | ||
|
|
eede8679e7 | ||
|
|
1f2acc33bc | ||
|
|
7f88334aa3 | ||
|
|
a038c10f66 | ||
|
|
4f32786cf7 | ||
|
|
f5f72b2009 | ||
|
|
a8aa43ce2d | ||
|
|
4793c34c53 | ||
|
|
16baa48699 | ||
|
|
02aa93a6ad | ||
|
|
fadf9eb2d7 | ||
|
|
0880031e8e | ||
|
|
0786b61ce7 | ||
|
|
47099af3ec | ||
|
|
276271e72f | ||
|
|
94cb412e45 | ||
|
|
c8718aa111 | ||
|
|
a67cf78c6b | ||
|
|
f0dd4e3fa0 | ||
|
|
b634bfe1b1 | ||
|
|
7be4857ab9 | ||
|
|
7d8b66e207 | ||
|
|
59b32c25b5 | ||
|
|
f90c075d1f | ||
|
|
9b64be0bc5 | ||
|
|
25674da90c | ||
|
|
22b897e77d | ||
|
|
d06e29846d | ||
|
|
2f837ce9b7 | ||
|
|
e48fcad615 | ||
|
|
41ec449960 | ||
|
|
9badf5dc0d | ||
|
|
7576ad7fc2 | ||
|
|
27c5692b13 | ||
|
|
a9adc2c2f6 | ||
|
|
d18d40e1d6 | ||
|
|
65f365333f | ||
|
|
d3ed0f53cd | ||
|
|
8c69adba8b | ||
|
|
ba5ff1a838 | ||
|
|
be00e421a7 | ||
|
|
fc40d56131 | ||
|
|
d29cb646e3 | ||
|
|
7bb1721f35 | ||
|
|
5f9592a523 | ||
|
|
34eaaab5fb | ||
|
|
2ea779e560 | ||
|
|
d24b1190bd | ||
|
|
e34c6827ea | ||
|
|
a9ecb975b2 | ||
|
|
d95ee0f003 | ||
|
|
80ada58818 | ||
|
|
92a0dc552a | ||
|
|
a81df268fd | ||
|
|
b49acce035 | ||
|
|
1ef1052ae1 | ||
|
|
5926c9c97b | ||
|
|
ab03a31cc9 | ||
|
|
a766dfb3b1 | ||
|
|
fd13489a8a | ||
|
|
01e207213f | ||
|
|
ec04cf27d3 | ||
|
|
dc82babe8e | ||
|
|
4d517d169a | ||
|
|
c6b0c104bb | ||
|
|
5ce7f23afa | ||
|
|
c19eb33408 | ||
|
|
a03f93bab4 | ||
|
|
9e3c41f9e8 | ||
|
|
8602461da8 | ||
|
|
118ac61e59 | ||
|
|
c35d27f77c | ||
|
|
1685cd193b | ||
|
|
7533ccfa83 | ||
|
|
9406c87a97 | ||
|
|
fa577392b2 | ||
|
|
c2fc78c3a8 | ||
|
|
001ce7a2fd | ||
|
|
c613a1ed38 | ||
|
|
f011a32771 | ||
|
|
0c95262b9e | ||
|
|
9dad534f02 | ||
|
|
4371345cbe | ||
|
|
8d0a45f5d4 | ||
|
|
56c02b7f59 | ||
|
|
3994d3b935 | ||
|
|
617993d0ea | ||
|
|
3269d8dd62 | ||
|
|
cf2c5266ed | ||
|
|
bb1a6eea88 | ||
|
|
1ce0fb336b | ||
|
|
63e135732c | ||
|
|
a61127a421 | ||
|
|
5cfdb76186 | ||
|
|
e2724c68ab | ||
|
|
9770062309 | ||
|
|
586c1e4e73 | ||
|
|
37a8d0b809 | ||
|
|
3066655727 | ||
|
|
ba8bc7ea80 | ||
|
|
f409147116 | ||
|
|
a28ccabe2a | ||
|
|
5060195e8a | ||
|
|
33912fa7e8 | ||
|
|
5a52cf6a71 | ||
|
|
b9327a4d16 | ||
|
|
8836623e0f | ||
|
|
fe4f009fdd | ||
|
|
25af9decfe | ||
|
|
1d4571b88d | ||
|
|
550f1025f0 | ||
|
|
c0000a0cdc | ||
|
|
81bc428b48 | ||
|
|
3af7fc07e7 | ||
|
|
c14000775b | ||
|
|
60adc6ff02 | ||
|
|
6e533748eb | ||
|
|
485abb023b | ||
|
|
ca6d408549 | ||
|
|
3bba7d60f3 | ||
|
|
32512332df | ||
|
|
7dacc999b9 | ||
|
|
9729528d13 | ||
|
|
d48cb6bf41 | ||
|
|
50a5bb77d2 | ||
|
|
bd8bcf06e7 | ||
|
|
1502b6ad8a | ||
|
|
7eea000f4b | ||
|
|
a7ff4f5799 | ||
|
|
b2dda096fe | ||
|
|
1e8afb66b7 | ||
|
|
50f09cc029 | ||
|
|
63257dc083 | ||
|
|
166dbada91 | ||
|
|
0918dae66e | ||
|
|
24057270a3 | ||
|
|
5079a02c90 | ||
|
|
9c3761047e | ||
|
|
1c7b9f6d5d | ||
|
|
e0d367f1fb | ||
|
|
9f8b4c5ee8 | ||
|
|
2c8c30437e | ||
|
|
6131533157 | ||
|
|
e70b44dc0b | ||
|
|
54774841ba | ||
|
|
009e3a7aa7 | ||
|
|
0c7a17a312 | ||
|
|
6d6c3b1e97 | ||
|
|
d8199b5db9 | ||
|
|
3f0a982b8c | ||
|
|
b76e173205 | ||
|
|
705801880b | ||
|
|
14ebedca27 | ||
|
|
b7feb53e8a | ||
|
|
1b6c25a5e6 | ||
|
|
202a9b06d9 | ||
|
|
91baca6abb | ||
|
|
98efc18f2c | ||
|
|
2f73dec077 | ||
|
|
04abd8d459 | ||
|
|
c009a990e4 | ||
|
|
e8e92f8969 | ||
|
|
f5d210c35c | ||
|
|
faaae7a1b2 | ||
|
|
e1e68e4c95 | ||
|
|
06ee6584fd | ||
|
|
c938273bd5 | ||
|
|
98c1265e3b | ||
|
|
68f2d95f76 | ||
|
|
d4a1154c25 | ||
|
|
36426af564 | ||
|
|
c0fe6cc34d | ||
|
|
1ed86adf9c | ||
|
|
75a58ee4b8 | ||
|
|
e334efb2a7 | ||
|
|
a886e98967 | ||
|
|
b6415dc169 | ||
|
|
60153b0e3b | ||
|
|
0efa66be0b | ||
|
|
cba9c1cf9e | ||
|
|
600c85226e | ||
|
|
81b91b3f9d | ||
|
|
2f9848ede3 | ||
|
|
450c5f0814 | ||
|
|
006dad4b52 | ||
|
|
00514857e9 | ||
|
|
c66696c507 | ||
|
|
02e91ffa02 | ||
|
|
22e18fe832 | ||
|
|
0cfb936dd1 | ||
|
|
f34c3597dc | ||
|
|
10896b9431 | ||
|
|
d47fbf791b | ||
|
|
95ea43bde4 | ||
|
|
b0b4a20930 | ||
|
|
8805e24cc7 | ||
|
|
24437fbb13 | ||
|
|
5a88e9bc4b | ||
|
|
7c274d249b | ||
|
|
c388dce2b5 | ||
|
|
09b05c9d79 | ||
|
|
1e555dfcc2 | ||
|
|
e6788bb6ae | ||
|
|
967104e1ce | ||
|
|
8875885a15 | ||
|
|
1c6e83c137 | ||
|
|
004fc55eaf | ||
|
|
82f45c3e6a | ||
|
|
6f70e5618e | ||
|
|
064e6fe60e | ||
|
|
29fb48799d | ||
|
|
0483a7df91 | ||
|
|
a34b5a2bfa | ||
|
|
96c9d715f3 | ||
|
|
ed62c621d7 | ||
|
|
efa8f20b2f | ||
|
|
8fea26aa9d | ||
|
|
2c099fd4c2 | ||
|
|
a6160916b0 | ||
|
|
776cb52629 | ||
|
|
17ef0a513b | ||
|
|
b4bf8928aa | ||
|
|
e54881c408 | ||
|
|
73ca5345e1 | ||
|
|
714d2b9bbc | ||
|
|
83555933aa | ||
|
|
85a62bbf46 | ||
|
|
e6aba99f16 | ||
|
|
6718579ccf | ||
|
|
e9b1944a67 | ||
|
|
6324b09934 | ||
|
|
172c36f517 | ||
|
|
cc4d28b73c | ||
|
|
94c7205d64 | ||
|
|
2246316605 | ||
|
|
4efaef7039 | ||
|
|
c8dfa26bc8 | ||
|
|
185dec800b | ||
|
|
297666ea14 | ||
|
|
c5d95d318b | ||
|
|
7e2fee9d56 | ||
|
|
59c558d612 | ||
|
|
be73d5cc08 | ||
|
|
2e33c3bdc2 | ||
|
|
9e93b7ccbd | ||
|
|
b91a822d7a | ||
|
|
d295f984e3 | ||
|
|
7de8a66780 | ||
|
|
1b40e9c464 | ||
|
|
1b42fba39b | ||
|
|
a22434508f | ||
|
|
c07bbd4154 | ||
|
|
d6aa127c76 | ||
|
|
79772219ae | ||
|
|
47e0ee8eff | ||
|
|
ca7d36d9ed | ||
|
|
52aec32f3a | ||
|
|
ca21367dde | ||
|
|
e0a6ee8da5 | ||
|
|
46c0b73578 | ||
|
|
dac1f6fe74 | ||
|
|
4df024d7b9 | ||
|
|
601ccded89 | ||
|
|
944b67b0b8 | ||
|
|
f8393a0908 | ||
|
|
d83a9a53e8 | ||
|
|
93ba72ea83 | ||
|
|
b561ee2738 | ||
|
|
7e43dd1d23 | ||
|
|
f606ebf8ee | ||
|
|
ca0e4b4e96 | ||
|
|
84b93d941f | ||
|
|
70be4d206e | ||
|
|
f3deb37bdf | ||
|
|
31f112cf58 | ||
|
|
2f9e42feb9 | ||
|
|
e5ae545647 | ||
|
|
6827e243a0 | ||
|
|
8735ae984b | ||
|
|
3749a746f1 | ||
|
|
c72a0610b4 | ||
|
|
13d839795c | ||
|
|
676a564610 | ||
|
|
eb13b8d985 | ||
|
|
063e957fc4 | ||
|
|
f7133e53fd | ||
|
|
fd8f433cc2 | ||
|
|
32a9db3e93 | ||
|
|
0108d5181f | ||
|
|
3a81646c9a | ||
|
|
34745b2183 | ||
|
|
9cc1d8e312 | ||
|
|
03e5369411 | ||
|
|
f1edf83720 | ||
|
|
b2bd77c40a | ||
|
|
571ced712d | ||
|
|
778e4e4c23 | ||
|
|
cae8703e0d | ||
|
|
a516856df9 | ||
|
|
727a403ba1 | ||
|
|
577659cacf | ||
|
|
0b02f9cc33 | ||
|
|
1f38761da2 | ||
|
|
04c0d9f3c3 | ||
|
|
9f89b5d876 | ||
|
|
2cdde08339 | ||
|
|
34be5d33c0 | ||
|
|
6e5f13a5c2 | ||
|
|
b7a66742dd | ||
|
|
f505a04043 | ||
|
|
bbc2e66634 | ||
|
|
31e96935f7 | ||
|
|
c94dce6b32 | ||
|
|
ce1c9c0808 | ||
|
|
12458cefc4 | ||
|
|
9a4cf11835 | ||
|
|
8949c8c0a5 | ||
|
|
817175613a | ||
|
|
233ddf80da | ||
|
|
723f2a77f6 | ||
|
|
7465ede058 | ||
|
|
e04425281d | ||
|
|
edff2c917b | ||
|
|
3e8754a38a | ||
|
|
b2a48f1a04 | ||
|
|
10a1f07684 | ||
|
|
b232f39341 | ||
|
|
9d4cfd2013 | ||
|
|
eae0aea1e0 | ||
|
|
a1a4fc277e | ||
|
|
325233b454 | ||
|
|
50b4f9cbf7 | ||
|
|
630677bec6 | ||
|
|
6b1d1a818b | ||
|
|
c1c3ca6f8a | ||
|
|
ba8dc678f5 | ||
|
|
8d9c3cc2b7 | ||
|
|
c9bbef6380 | ||
|
|
203f2923a1 | ||
|
|
55653dce63 | ||
|
|
dcfc2503c2 | ||
|
|
b338cafc65 | ||
|
|
ada90f7335 | ||
|
|
7fad26549b | ||
|
|
33f379fe88 | ||
|
|
daeff5a11a | ||
|
|
0ceec1f166 | ||
|
|
eb02f8c719 | ||
|
|
3f827758d7 | ||
|
|
bd78ca0ee3 | ||
|
|
636c3bbc4e | ||
|
|
ce5f0ec85a | ||
|
|
46e9eae159 | ||
|
|
c45514f811 | ||
|
|
cc72db2636 | ||
|
|
229a27a1c7 | ||
|
|
3f5f39576b | ||
|
|
9e699811d2 | ||
|
|
3ac581eac9 | ||
|
|
e4266d0fde | ||
|
|
49f8c8fd7b | ||
|
|
da2dc2bfa4 | ||
|
|
7b3098bbd5 | ||
|
|
e00ed10c4c | ||
|
|
10a5e4d80f | ||
|
|
6b1eddda06 | ||
|
|
ee9b8bf0f1 | ||
|
|
f65fc7ffab | ||
|
|
070cd34fe8 | ||
|
|
7f55d82fd1 | ||
|
|
90a14b4f5b | ||
|
|
51fafccc16 | ||
|
|
580b6e9089 | ||
|
|
4e2baeb3e1 | ||
|
|
60af705e6d | ||
|
|
46aae4c6e7 | ||
|
|
3356d5a72d | ||
|
|
5f87324536 | ||
|
|
272f9f65dc | ||
|
|
8181220bfd | ||
|
|
6296ab2173 | ||
|
|
72156a2029 | ||
|
|
adf168e68f | ||
|
|
0cb423b5b3 | ||
|
|
8c78f8f790 | ||
|
|
1fbb307aaf | ||
|
|
3d2b2eb1ca | ||
|
|
783ddf9691 | ||
|
|
5439358281 | ||
|
|
9e5cbf0198 | ||
|
|
348e5e3109 | ||
|
|
3986a84f77 | ||
|
|
572cf0ec95 | ||
|
|
67cc29cd3c | ||
|
|
9736c962fe | ||
|
|
6cb26c98c8 | ||
|
|
3b7b0492f8 | ||
|
|
26531f2715 | ||
|
|
02f2979760 | ||
|
|
ce48403a0b | ||
|
|
eeb4611606 | ||
|
|
3e7b24278f | ||
|
|
bacea22a26 | ||
|
|
c46189e429 | ||
|
|
a12ab611ae | ||
|
|
5c4f3e0107 | ||
|
|
014a83fe09 | ||
|
|
bc7df0188e | ||
|
|
34a261416f | ||
|
|
af2397d581 | ||
|
|
e587f0893c | ||
|
|
fd128b3c93 | ||
|
|
799360c576 | ||
|
|
d3e5a22a5d | ||
|
|
b206f70693 | ||
|
|
ec69e97bda | ||
|
|
91e28edda6 | ||
|
|
3c8a3a02ba | ||
|
|
4586acad8c | ||
|
|
497f86453e | ||
|
|
85b2e7e764 | ||
|
|
c0dddd4233 | ||
|
|
ca66574062 | ||
|
|
1344ca4b2f | ||
|
|
8dd08425fd | ||
|
|
3e3911fb81 | ||
|
|
32c607ffe2 | ||
|
|
ca1e47375c | ||
|
|
9a930ebec2 | ||
|
|
58abc66c1d | ||
|
|
72ef508d55 | ||
|
|
1adb5a6a48 | ||
|
|
3619a4cbea | ||
|
|
12d212d1b4 | ||
|
|
cc01a36363 | ||
|
|
4764710b11 | ||
|
|
4e3ee845b9 | ||
|
|
0e260c6c1d | ||
|
|
e9cf9ad3f3 | ||
|
|
26bfae58d4 | ||
|
|
1f5c432e29 | ||
|
|
732e87e83c | ||
|
|
f8e8fcb978 | ||
|
|
10124f39d9 | ||
|
|
a11e6a1022 | ||
|
|
b30b55307c | ||
|
|
1d04197f2f | ||
|
|
1f05f10346 | ||
|
|
9b0ee53b12 | ||
|
|
442669d23c | ||
|
|
5ad8f5c306 | ||
|
|
20ebe218c8 | ||
|
|
09fa34a9e1 | ||
|
|
560d366b80 | ||
|
|
e9bcb9d048 | ||
|
|
03f4891fb9 | ||
|
|
e31385ecf6 | ||
|
|
546f02c6f4 | ||
|
|
eb96d37da0 | ||
|
|
deeea98d22 | ||
|
|
a058638d11 | ||
|
|
ae1a18d0a1 | ||
|
|
12aa1b999a | ||
|
|
9d0e4ea3d5 | ||
|
|
f63e546b3e | ||
|
|
8315a8a716 | ||
|
|
4b36a542e0 | ||
|
|
81a1e69a4a | ||
|
|
12730c1303 | ||
|
|
7fb3343bda | ||
|
|
8998f31ee1 | ||
|
|
2aa22c5a5e | ||
|
|
db8ded90c2 | ||
|
|
f99d1dedae | ||
|
|
de84f57a9c | ||
|
|
ef90b49fff | ||
|
|
67a7dd9792 | ||
|
|
030c266811 | ||
|
|
b220bc7521 | ||
|
|
9fe7f53216 | ||
|
|
c0382cd8cd | ||
|
|
c81843a414 | ||
|
|
72693a7e87 | ||
|
|
aa51a02b8f | ||
|
|
46b2773e13 | ||
|
|
7258218f89 | ||
|
|
bf596fb039 | ||
|
|
ab4943e24c | ||
|
|
ca3c9baf1b | ||
|
|
a8b8d4e85e | ||
|
|
6ea2cc0293 | ||
|
|
e472a7569b | ||
|
|
200f971ef7 | ||
|
|
1ae208395c | ||
|
|
508d764d63 | ||
|
|
af15383578 | ||
|
|
33c4d45f2f | ||
|
|
f3677e077c | ||
|
|
a03e70d46c | ||
|
|
2d41c59320 | ||
|
|
5ae390e240 | ||
|
|
90af1fe5ee | ||
|
|
965b0ab53e | ||
|
|
ac41eb5871 | ||
|
|
c0b365fdb4 | ||
|
|
26d4c01660 | ||
|
|
ae2173cd52 | ||
|
|
0cb00f52d9 | ||
|
|
f0d34ca4f5 | ||
|
|
1beaef0452 | ||
|
|
6904561fd5 | ||
|
|
92389e4236 | ||
|
|
f1b6b4bdaa | ||
|
|
020ce176c4 | ||
|
|
de05b2b309 | ||
|
|
62054af6eb | ||
|
|
17dddda024 | ||
|
|
bea3ec2724 | ||
|
|
8c622a59cf | ||
|
|
c47e2abefb | ||
|
|
56c05a7015 | ||
|
|
2ee4eef25c | ||
|
|
ffed785656 | ||
|
|
88f9194168 | ||
|
|
604b804125 | ||
|
|
c869dc9745 | ||
|
|
e9acb63290 | ||
|
|
baf0bd2b24 | ||
|
|
c2b1d51f16 | ||
|
|
c272f2c84e | ||
|
|
dff2904c0f | ||
|
|
9dd5390d7d | ||
|
|
599f2ad983 | ||
|
|
358656acc3 | ||
|
|
0cb4d25431 | ||
|
|
f582f1bf4e | ||
|
|
10c1b442ca | ||
|
|
5a3a53379f | ||
|
|
afe77bd138 | ||
|
|
fdf1b8a7b8 | ||
|
|
b93a55e15f | ||
|
|
ce1638e32f | ||
|
|
49c693c85b | ||
|
|
46709ed7e0 | ||
|
|
2b112143fa | ||
|
|
7cd5eb6d42 | ||
|
|
981a610f75 | ||
|
|
4c5be9bb05 | ||
|
|
494b0eba2d | ||
|
|
2281154025 | ||
|
|
92dbf5f148 | ||
|
|
37eb6d1732 | ||
|
|
7a29f802d0 | ||
|
|
5972251b17 | ||
|
|
7239ab231c | ||
|
|
c508e9adec | ||
|
|
c4e4a0688c | ||
|
|
88407727ec | ||
|
|
6d5fcac54a | ||
|
|
1ab679b1d2 | ||
|
|
f58ba3a64e | ||
|
|
8089f73549 | ||
|
|
71d63fcafb | ||
|
|
6da97ebdd1 | ||
|
|
1587962547 | ||
|
|
bfd1e75c04 | ||
|
|
ff1f211eb4 | ||
|
|
ddbd4b73e0 | ||
|
|
9a03f758cd | ||
|
|
00b1b33816 | ||
|
|
f37ed314e0 | ||
|
|
06a02dd200 | ||
|
|
2f14eaf6a3 | ||
|
|
f9ef446fb5 | ||
|
|
64dfb46461 | ||
|
|
2e20c53c9d | ||
|
|
a10451ceed | ||
|
|
6f92ab7eed | ||
|
|
07cf75883f | ||
|
|
927524af6b | ||
|
|
1a37ebc76d | ||
|
|
8ca0b2fd68 | ||
|
|
59608086e6 | ||
|
|
6e0503eab2 | ||
|
|
2e89685154 | ||
|
|
19dde5be03 | ||
|
|
1b0acbff72 | ||
|
|
75cf17d816 | ||
|
|
7ba2ab4fb3 | ||
|
|
a90c7dbf64 | ||
|
|
aab5489962 | ||
|
|
1fe25271e4 | ||
|
|
0589884d26 | ||
|
|
4a220a8b79 | ||
|
|
9be8cb0ac9 | ||
|
|
828405cac8 | ||
|
|
8584f7e390 | ||
|
|
ebb9bd5419 | ||
|
|
d4aaa0f1c8 | ||
|
|
609c4eea32 | ||
|
|
4f14849675 | ||
|
|
6ed5252884 | ||
|
|
d4d3d92f8a | ||
|
|
3e761696a0 | ||
|
|
0e319104c2 | ||
|
|
234de3547c | ||
|
|
6c7bad8bc3 | ||
|
|
f5877aa93e | ||
|
|
33861d4e04 | ||
|
|
7aca9fe2f7 | ||
|
|
b3822b9242 | ||
|
|
5e63efc1d9 | ||
|
|
92c15f5578 | ||
|
|
eef4a54778 | ||
|
|
379f16558e | ||
|
|
811c32b85a | ||
|
|
1d2061c935 | ||
|
|
81b8fbf4d6 | ||
|
|
5d2681a105 | ||
|
|
beb346e49f | ||
|
|
381b17e6a9 | ||
|
|
a911215b0e | ||
|
|
4b9d1b9f26 | ||
|
|
0c7ba52451 | ||
|
|
cbf40f7ee9 | ||
|
|
b464887ea1 | ||
|
|
14a5d2a273 | ||
|
|
06f3c8029e | ||
|
|
a831977dee | ||
|
|
7479ff98b7 | ||
|
|
5b3e49babd | ||
|
|
df0432c7c8 | ||
|
|
df031ab100 | ||
|
|
99c4b9050a | ||
|
|
a41130f854 | ||
|
|
2c1eda9e00 | ||
|
|
fc52fc72ac | ||
|
|
be8d913484 | ||
|
|
10fab24e50 | ||
|
|
69b664b6fe | ||
|
|
a442c34a1a | ||
|
|
be0e4a4ad0 | ||
|
|
adca4a9b79 | ||
|
|
33e00b6cd6 | ||
|
|
04583d46af | ||
|
|
04376975ce | ||
|
|
931aa79d85 | ||
|
|
84ddae56a8 | ||
|
|
b8adae0785 | ||
|
|
9db5d21837 | ||
|
|
13136376ee | ||
|
|
a1ee1628e5 | ||
|
|
9b4aa5ea8b | ||
|
|
94d9def81c | ||
|
|
56f4a43535 | ||
|
|
760f29a88e | ||
|
|
4007cbfe9e | ||
|
|
27f7e3fe6f | ||
|
|
9c21191f74 | ||
|
|
51f195e698 | ||
|
|
4f1eadf41f | ||
|
|
d5fe0fb02b | ||
|
|
551752eac7 | ||
|
|
71aefc2e22 | ||
|
|
63228fc453 | ||
|
|
bf7af95db3 | ||
|
|
8dc2838d98 | ||
|
|
8fbb833de9 | ||
|
|
a98e9874db | ||
|
|
722786966a | ||
|
|
4231faf779 | ||
|
|
e0a189a481 | ||
|
|
bca67a5b79 | ||
|
|
142d8aae56 | ||
|
|
a1e2b5da70 | ||
|
|
038f82cc38 | ||
|
|
42e2dd9251 | ||
|
|
614a86a380 | ||
|
|
82fff87e16 | ||
|
|
3d8a0ab4b2 | ||
|
|
0fcec02db5 | ||
|
|
7dd0a46732 | ||
|
|
4a82e95c3e | ||
|
|
d7ee81202f | ||
|
|
34101224c4 | ||
|
|
f52a31a275 | ||
|
|
479652073b | ||
|
|
54326fb06a | ||
|
|
65996e4235 | ||
|
|
7e42c7563c | ||
|
|
b66d65f865 | ||
|
|
0b9a88d6ce | ||
|
|
2b3b7d5d7f | ||
|
|
0c9231fd04 | ||
|
|
efa578d6b0 | ||
|
|
cc92e544a5 | ||
|
|
5be07b5db2 | ||
|
|
9ea2ff950a | ||
|
|
4e4d16c92e | ||
|
|
fa5f9c2aec | ||
|
|
f536c4dccb | ||
|
|
48351fd6d5 | ||
|
|
27cbb939b2 | ||
|
|
b29b66feda | ||
|
|
8afe13b1a2 | ||
|
|
b908e38d08 | ||
|
|
a037ddbf7b | ||
|
|
2af62a5d8d | ||
|
|
fa9ff6be6e | ||
|
|
18f97c4013 | ||
|
|
01fb45b4f8 | ||
|
|
94dd39b3b7 | ||
|
|
8587c4e1ec | ||
|
|
7342d5c07a | ||
|
|
97444391e0 | ||
|
|
859fa35287 | ||
|
|
622b80974c | ||
|
|
d80877d570 | ||
|
|
9a950e3a5a | ||
|
|
105324b85b | ||
|
|
d5e5735679 | ||
|
|
8f5a576b08 | ||
|
|
419e575808 | ||
|
|
69704b93f2 | ||
|
|
61c0a10efe | ||
|
|
a5cf3a190c | ||
|
|
76da81c1de | ||
|
|
84a11cfedc | ||
|
|
32e759c928 | ||
|
|
4183a249b6 | ||
|
|
b55295ad33 | ||
|
|
d2fb3215da | ||
|
|
c66d1ac651 | ||
|
|
a31e32969f | ||
|
|
bcd050f33b | ||
|
|
44b0c186a6 | ||
|
|
f3e562e46e | ||
|
|
cfef925559 | ||
|
|
4b16fa3272 | ||
|
|
fb04dfcda8 | ||
|
|
e4fcf460e7 |
19
.editorconfig
Normal file
19
.editorconfig
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
# editorconfig.org
|
||||||
|
root = true
|
||||||
|
|
||||||
|
[{*.patch,syntax_test_*}]
|
||||||
|
trim_trailing_whitespace = false
|
||||||
|
|
||||||
|
[{*.c,*.cpp,*.h}]
|
||||||
|
charset = utf-8
|
||||||
|
|
||||||
|
[{*.c,*.cpp,*.h,Makefile}]
|
||||||
|
trim_trailing_whitespace = true
|
||||||
|
insert_final_newline = true
|
||||||
|
end_of_line = lf
|
||||||
|
indent_style = space
|
||||||
|
indent_size = 2
|
||||||
|
|
||||||
|
[{*.py,*.conf,*.sublime-project}]
|
||||||
|
indent_style = tab
|
||||||
|
indent_size = 4
|
||||||
1
.gitattributes
vendored
1
.gitattributes
vendored
@@ -17,4 +17,3 @@
|
|||||||
*.png binary
|
*.png binary
|
||||||
*.jpg binary
|
*.jpg binary
|
||||||
*.fon binary
|
*.fon binary
|
||||||
|
|
||||||
|
|||||||
4
.github/FUNDING.yml
vendored
4
.github/FUNDING.yml
vendored
@@ -1 +1,3 @@
|
|||||||
custom: http://www.thinkyhead.com/donate-to-marlin
|
github: [thinkyhead]
|
||||||
|
patreon: thinkyhead
|
||||||
|
custom: ["http://www.thinkyhead.com/donate-to-marlin"]
|
||||||
|
|||||||
7
.github/workflows/bad-target.md
vendored
Normal file
7
.github/workflows/bad-target.md
vendored
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
Thanks for your contribution! Unfortunately we can't accept PRs directed at release branches. We make patches to the bugfix branches and only later do we push them out as releases.
|
||||||
|
|
||||||
|
Please redo this PR starting with the `bugfix-2.0.x` branch and be careful to target `bugfix-2.0.x` when resubmitting the PR.
|
||||||
|
|
||||||
|
It may help to set your fork's default branch to `bugfix-2.0.x`.
|
||||||
|
|
||||||
|
See [this page](http://marlinfw.org/docs/development/getting_started_pull_requests.html) for full instructions.
|
||||||
34
.github/workflows/bump-date.yml
vendored
Normal file
34
.github/workflows/bump-date.yml
vendored
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
#
|
||||||
|
# bump-date.yml
|
||||||
|
# Bump the distribution date once per day
|
||||||
|
#
|
||||||
|
|
||||||
|
name: Bump Distribution Date
|
||||||
|
|
||||||
|
on:
|
||||||
|
schedule:
|
||||||
|
- cron: '0 0 * * *'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
bump_date:
|
||||||
|
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
|
||||||
|
- name: Check out bugfix-2.0.x
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
ref: bugfix-2.0.x
|
||||||
|
|
||||||
|
- name: Bump Distribution Date
|
||||||
|
run: |
|
||||||
|
# Inline Bump Script
|
||||||
|
[[ "$GITHUB_REPOSITORY" == "MarlinFirmware/Marlin" ]] || exit 0
|
||||||
|
DIST=$( date +"%Y-%m-%d" )
|
||||||
|
eval "sed -E -i 's/(#define +STRING_DISTRIBUTION_DATE) .*$/\1 \"$DIST\"/g' Marlin/src/inc/Version.h" && \
|
||||||
|
git config user.name "${GITHUB_ACTOR}" && \
|
||||||
|
git config user.email "${GITHUB_ACTOR}@users.noreply.github.com" && \
|
||||||
|
git add . && \
|
||||||
|
git commit -m "[cron] Bump distribution date ($DIST)" && \
|
||||||
|
git push
|
||||||
27
.github/workflows/check-pr.yml
vendored
Normal file
27
.github/workflows/check-pr.yml
vendored
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
#
|
||||||
|
# comment-pr.yml
|
||||||
|
# Add a comment to any PR directed to a release branch
|
||||||
|
#
|
||||||
|
|
||||||
|
name: PR Bad Target
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- 1.0.x
|
||||||
|
- 1.1.x
|
||||||
|
- 2.0.x
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
bad_target:
|
||||||
|
|
||||||
|
name: PR Bad Target
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v1
|
||||||
|
- uses: harupy/comment-on-pr@master
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
with:
|
||||||
|
filename: bad-target.md
|
||||||
103
.github/workflows/test-builds.yml
vendored
Normal file
103
.github/workflows/test-builds.yml
vendored
Normal file
@@ -0,0 +1,103 @@
|
|||||||
|
#
|
||||||
|
# test-builds.yml
|
||||||
|
# Do test builds to catch compile errors
|
||||||
|
#
|
||||||
|
|
||||||
|
name: CI
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- bugfix-2.0.x
|
||||||
|
- dev-2.1.x
|
||||||
|
paths-ignore:
|
||||||
|
- config/**
|
||||||
|
- data/**
|
||||||
|
- docs/**
|
||||||
|
- '**/*.md'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
test_builds:
|
||||||
|
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
test-platform:
|
||||||
|
# Base Environments
|
||||||
|
|
||||||
|
- DUE
|
||||||
|
- esp32
|
||||||
|
- linux_native
|
||||||
|
- megaatmega2560
|
||||||
|
- teensy31
|
||||||
|
- teensy35
|
||||||
|
- SAMD51_grandcentral_m4
|
||||||
|
|
||||||
|
# Extended AVR Environments
|
||||||
|
|
||||||
|
- FYSETC_F6_13
|
||||||
|
- megaatmega1280
|
||||||
|
- rambo
|
||||||
|
- sanguino_atmega1284p
|
||||||
|
- sanguino_atmega644p
|
||||||
|
|
||||||
|
# Extended STM32 Environments
|
||||||
|
|
||||||
|
- STM32F103RC_bigtree
|
||||||
|
- STM32F103RC_bigtree_USB
|
||||||
|
- STM32F103RE_bigtree
|
||||||
|
- STM32F103RE_bigtree_USB
|
||||||
|
- STM32F103RC_fysetc
|
||||||
|
- jgaurora_a5s_a1
|
||||||
|
- STM32F103VE_longer
|
||||||
|
- STM32F407VE_black
|
||||||
|
- BIGTREE_SKR_PRO
|
||||||
|
- mks_robin
|
||||||
|
- ARMED
|
||||||
|
- FYSETC_S6
|
||||||
|
|
||||||
|
# Put lengthy tests last
|
||||||
|
|
||||||
|
- LPC1768
|
||||||
|
- LPC1769
|
||||||
|
|
||||||
|
# STM32 with non-STM framework. both broken for now. they should use HAL_STM32 which is working.
|
||||||
|
|
||||||
|
#- STM32F4
|
||||||
|
#- STM32F7
|
||||||
|
|
||||||
|
# Non-working environment tests
|
||||||
|
|
||||||
|
#- BIGTREE_BTT002
|
||||||
|
#- at90usb1286_cdc
|
||||||
|
#- at90usb1286_dfu
|
||||||
|
#- STM32F103CB_malyan
|
||||||
|
#- mks_robin_lite
|
||||||
|
#- mks_robin_mini
|
||||||
|
#- mks_robin_nano
|
||||||
|
|
||||||
|
steps:
|
||||||
|
|
||||||
|
- name: Select Python 3.7
|
||||||
|
uses: actions/setup-python@v1
|
||||||
|
with:
|
||||||
|
python-version: '3.7' # Version range or exact version of a Python version to use, using semvers version range syntax.
|
||||||
|
architecture: 'x64' # optional x64 or x86. Defaults to x64 if not specified
|
||||||
|
|
||||||
|
- name: Install PlatformIO
|
||||||
|
run: |
|
||||||
|
pip install -U https://github.com/platformio/platformio-core/archive/master.zip
|
||||||
|
platformio update
|
||||||
|
|
||||||
|
- name: Check out the PR
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: Run ${{ matrix.test-platform }} Tests
|
||||||
|
run: |
|
||||||
|
# Inline tests script
|
||||||
|
[[ "$GITHUB_REPOSITORY" == "MarlinFirmware/Marlin" ]] || exit 0
|
||||||
|
chmod +x buildroot/bin/*
|
||||||
|
chmod +x buildroot/share/tests/*
|
||||||
|
export PATH=./buildroot/bin/:./buildroot/share/tests/:${PATH}
|
||||||
|
run_tests . ${{ matrix.test-platform }}
|
||||||
47
.gitignore
vendored
47
.gitignore
vendored
@@ -1,9 +1,9 @@
|
|||||||
#
|
#
|
||||||
# Marlin 3D Printer Firmware
|
# Marlin 3D Printer Firmware
|
||||||
# Copyright (C) 2017 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
# Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
||||||
#
|
#
|
||||||
# Based on Sprinter and grbl.
|
# Based on Sprinter and grbl.
|
||||||
# Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
# Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm
|
||||||
#
|
#
|
||||||
# This program is free software: you can redistribute it and/or modify
|
# This program is free software: you can redistribute it and/or modify
|
||||||
# it under the terms of the GNU General Public License as published by
|
# it under the terms of the GNU General Public License as published by
|
||||||
@@ -29,7 +29,6 @@ _Version.h
|
|||||||
applet/
|
applet/
|
||||||
*.DS_Store
|
*.DS_Store
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Misc
|
# Misc
|
||||||
#
|
#
|
||||||
@@ -120,7 +119,35 @@ tags
|
|||||||
.pio*
|
.pio*
|
||||||
.pioenvs
|
.pioenvs
|
||||||
.piolibdeps
|
.piolibdeps
|
||||||
lib/readme.txt
|
.clang_complete
|
||||||
|
.gcc-flags.json
|
||||||
|
/lib/
|
||||||
|
|
||||||
|
# Workaround for Deviot+platformio quirks
|
||||||
|
Marlin/lib
|
||||||
|
Marlin/platformio.ini
|
||||||
|
Marlin/*/platformio.ini
|
||||||
|
Marlin/*/*/platformio.ini
|
||||||
|
Marlin/*/*/*/platformio.ini
|
||||||
|
Marlin/*/*/*/*/platformio.ini
|
||||||
|
Marlin/.travis.yml
|
||||||
|
Marlin/*/.travis.yml
|
||||||
|
Marlin/*/*/.travis.yml
|
||||||
|
Marlin/*/*/*/.travis.yml
|
||||||
|
Marlin/*/*/*/*/.travis.yml
|
||||||
|
Marlin/.gitignore
|
||||||
|
Marlin/*/.gitignore
|
||||||
|
Marlin/*/*/.gitignore
|
||||||
|
Marlin/*/*/*/.gitignore
|
||||||
|
Marlin/*/*/*/*/.gitignore
|
||||||
|
Marlin/readme.txt
|
||||||
|
Marlin/*/readme.txt
|
||||||
|
Marlin/*/*/readme.txt
|
||||||
|
Marlin/*/*/*/readme.txt
|
||||||
|
Marlin/*/*/*/*/readme.txt
|
||||||
|
|
||||||
|
# Secure Credentials
|
||||||
|
Configuration_Secure.h
|
||||||
|
|
||||||
#Visual Studio
|
#Visual Studio
|
||||||
*.sln
|
*.sln
|
||||||
@@ -142,8 +169,18 @@ vc-fileutils.settings
|
|||||||
|
|
||||||
#cmake
|
#cmake
|
||||||
CMakeLists.txt
|
CMakeLists.txt
|
||||||
Marlin/CMakeLists.txt
|
src/CMakeLists.txt
|
||||||
CMakeListsPrivate.txt
|
CMakeListsPrivate.txt
|
||||||
|
|
||||||
#CLion
|
#CLion
|
||||||
cmake-build-*
|
cmake-build-*
|
||||||
|
|
||||||
|
#Eclipse
|
||||||
|
.project
|
||||||
|
.cproject
|
||||||
|
.pydevproject
|
||||||
|
.settings
|
||||||
|
.classpath
|
||||||
|
|
||||||
|
#Python
|
||||||
|
__pycache__
|
||||||
|
|||||||
389
.travis.yml
389
.travis.yml
@@ -1,389 +0,0 @@
|
|||||||
dist: bionic
|
|
||||||
sudo: true
|
|
||||||
#
|
|
||||||
language: c
|
|
||||||
#
|
|
||||||
notifications:
|
|
||||||
email: false
|
|
||||||
#
|
|
||||||
before_install:
|
|
||||||
#
|
|
||||||
# Fetch the tag information for the current branch
|
|
||||||
- git fetch origin --tags
|
|
||||||
#
|
|
||||||
# Publish the buildroot script folder
|
|
||||||
- chmod +x ${TRAVIS_BUILD_DIR}/buildroot/bin/*
|
|
||||||
- export PATH=${TRAVIS_BUILD_DIR}/buildroot/bin/:${PATH}
|
|
||||||
#
|
|
||||||
# Start fb X server
|
|
||||||
- "/sbin/start-stop-daemon --start --quiet --pidfile /tmp/custom_xvfb_1.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :1 -ac -screen 0 1280x1024x16"
|
|
||||||
- sleep 3
|
|
||||||
- export DISPLAY=:1.0
|
|
||||||
#
|
|
||||||
install:
|
|
||||||
#
|
|
||||||
# Install arduino 1.8.5
|
|
||||||
- wget http://downloads.arduino.cc/arduino-1.8.9-linux64.tar.xz
|
|
||||||
- tar xf arduino-1.8.9-linux64.tar.xz
|
|
||||||
- sudo mv arduino-1.8.9 /usr/local/share/arduino
|
|
||||||
- ln -s /usr/local/share/arduino/arduino ${TRAVIS_BUILD_DIR}/buildroot/bin/arduino
|
|
||||||
#
|
|
||||||
# Install: LiquidCrystal_I2C library
|
|
||||||
- git clone https://github.com/kiyoshigawa/LiquidCrystal_I2C.git
|
|
||||||
- mv LiquidCrystal_I2C/LiquidCrystal_I2C /usr/local/share/arduino/libraries/LiquidCrystal_I2C
|
|
||||||
#
|
|
||||||
# Install: LiquidTWI2 library
|
|
||||||
- git clone https://github.com/lincomatic/LiquidTWI2.git
|
|
||||||
- sudo mv LiquidTWI2 /usr/local/share/arduino/libraries/LiquidTWI2
|
|
||||||
#
|
|
||||||
# Install: Monochrome Graphics Library for LCDs and OLEDs
|
|
||||||
- git clone https://github.com/olikraus/U8glib_Arduino.git
|
|
||||||
- sudo mv U8glib_Arduino /usr/local/share/arduino/libraries/U8glib
|
|
||||||
#
|
|
||||||
# Install: L6470 Stepper Motor Driver library
|
|
||||||
# - git clone https://github.com/ameyer/Arduino-L6470.git
|
|
||||||
# - sudo mv Arduino-L6470/L6470 /usr/local/share/arduino/libraries/L6470
|
|
||||||
#
|
|
||||||
# Install: TMC26X Stepper Motor Controller library
|
|
||||||
# - git clone https://github.com/trinamic/TMC26XStepper.git
|
|
||||||
# - sudo mv TMC26XStepper /usr/local/share/arduino/libraries/TMC26XStepper
|
|
||||||
#
|
|
||||||
# Install: TMC2130 Stepper Motor Controller library
|
|
||||||
- git clone https://github.com/teemuatlut/TMC2130Stepper.git
|
|
||||||
- sudo mv TMC2130Stepper /usr/local/share/arduino/libraries/TMC2130Stepper
|
|
||||||
#
|
|
||||||
# Install: TMC2208 Stepper Motor Controller library
|
|
||||||
- git clone https://github.com/teemuatlut/TMC2208Stepper.git
|
|
||||||
- sudo mv TMC2208Stepper /usr/local/share/arduino/libraries/TMC2208Stepper
|
|
||||||
#
|
|
||||||
# Install: Adafruit Neopixel library
|
|
||||||
- git clone https://github.com/adafruit/Adafruit_NeoPixel.git
|
|
||||||
- sudo mv Adafruit_NeoPixel /usr/local/share/arduino/libraries/Adafruit_NeoPixel
|
|
||||||
#
|
|
||||||
before_script:
|
|
||||||
#
|
|
||||||
# Change current working directory to the build dir
|
|
||||||
- cd ${TRAVIS_BUILD_DIR}
|
|
||||||
#
|
|
||||||
# Generate custom version include
|
|
||||||
- generate_version_header_for_marlin ${TRAVIS_BUILD_DIR}/Marlin
|
|
||||||
- cat ${TRAVIS_BUILD_DIR}/Marlin/_Version.h
|
|
||||||
#
|
|
||||||
script:
|
|
||||||
#
|
|
||||||
# Backup Configuration.h, Configuration_adv.h, and pins_RAMPS.h
|
|
||||||
#
|
|
||||||
- cp Marlin/Configuration.h Marlin/Configuration.h.backup
|
|
||||||
- cp Marlin/Configuration_adv.h Marlin/Configuration_adv.h.backup
|
|
||||||
- cp Marlin/pins_RAMPS.h Marlin/pins_RAMPS.h.backup
|
|
||||||
#
|
|
||||||
# Build with the default configurations
|
|
||||||
#
|
|
||||||
- build_marlin
|
|
||||||
#
|
|
||||||
# Test 2 extruders (one MAX6675) and heated bed on basic RAMPS 1.4
|
|
||||||
# Test a "Fix Mounted" Probe with Safe Homing, some arc options,
|
|
||||||
# linear bed leveling, M48, leveling debug, and firmware retraction.
|
|
||||||
#
|
|
||||||
- opt_set MOTHERBOARD BOARD_RAMPS_14_EEB
|
|
||||||
- opt_set EXTRUDERS 2
|
|
||||||
- opt_set TEMP_SENSOR_0 -2
|
|
||||||
- opt_set TEMP_SENSOR_1 1
|
|
||||||
- opt_set TEMP_SENSOR_BED 1
|
|
||||||
- opt_set POWER_SUPPLY 1
|
|
||||||
- opt_enable PIDTEMPBED FIX_MOUNTED_PROBE Z_SAFE_HOMING
|
|
||||||
- opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER SDSUPPORT EEPROM_SETTINGS PINS_DEBUGGING
|
|
||||||
- opt_enable BLINKM PCA9632 RGB_LED NEOPIXEL_LED AUTO_POWER_CONTROL NOZZLE_PARK_FEATURE FILAMENT_RUNOUT_SENSOR
|
|
||||||
- opt_enable AUTO_BED_LEVELING_LINEAR Z_MIN_PROBE_REPEATABILITY_TEST DEBUG_LEVELING_FEATURE SKEW_CORRECTION SKEW_CORRECTION_FOR_Z SKEW_CORRECTION_GCODE
|
|
||||||
- opt_enable_adv ARC_P_CIRCLES ADVANCED_PAUSE_FEATURE CNC_WORKSPACE_PLANES CNC_COORDINATE_SYSTEMS POWER_LOSS_RECOVERY POWER_LOSS_PIN POWER_LOSS_STATE
|
|
||||||
- opt_enable_adv FWRETRACT MAX7219_DEBUG LED_CONTROL_MENU CASE_LIGHT_ENABLE CASE_LIGHT_USE_NEOPIXEL CODEPENDENT_XY_HOMING
|
|
||||||
- opt_set GRID_MAX_POINTS_X 16
|
|
||||||
- opt_set_adv FANMUX0_PIN 53
|
|
||||||
- build_marlin
|
|
||||||
#
|
|
||||||
# Test a probeless build of AUTO_BED_LEVELING_UBL, with lots of extruders
|
|
||||||
#
|
|
||||||
- restore_configs
|
|
||||||
- opt_set MOTHERBOARD BOARD_AZTEEG_X3_PRO
|
|
||||||
- opt_set EXTRUDERS 5
|
|
||||||
- opt_set TEMP_SENSOR_1 1
|
|
||||||
- opt_set TEMP_SENSOR_2 5
|
|
||||||
- opt_set TEMP_SENSOR_3 20
|
|
||||||
- opt_set TEMP_SENSOR_4 999
|
|
||||||
- opt_set TEMP_SENSOR_BED 1
|
|
||||||
- opt_enable AUTO_BED_LEVELING_UBL RESTORE_LEVELING_AFTER_G28 DEBUG_LEVELING_FEATURE G26_MESH_EDITING ENABLE_LEVELING_FADE_HEIGHT SKEW_CORRECTION
|
|
||||||
- opt_enable EEPROM_SETTINGS EEPROM_CHITCHAT REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER
|
|
||||||
- opt_enable_adv CUSTOM_USER_MENUS I2C_POSITION_ENCODERS BABYSTEPPING BABYSTEP_XY LIN_ADVANCE NANODLP_Z_SYNC QUICK_HOME JUNCTION_DEVIATION MAX7219_DEBUG
|
|
||||||
- opt_set_adv MAX7219_ROTATE 270
|
|
||||||
- build_marlin
|
|
||||||
#
|
|
||||||
# Add a Sled Z Probe, use UBL Cartesian moves, use Japanese language
|
|
||||||
#
|
|
||||||
- opt_enable Z_PROBE_SLED SKEW_CORRECTION SKEW_CORRECTION_FOR_Z SKEW_CORRECTION_GCODE S_CURVE_ACCELERATION
|
|
||||||
- opt_set LCD_LANGUAGE kana_utf8
|
|
||||||
- opt_disable SEGMENT_LEVELED_MOVES
|
|
||||||
- opt_enable_adv BABYSTEP_ZPROBE_OFFSET DOUBLECLICK_FOR_Z_BABYSTEPPING
|
|
||||||
- build_marlin
|
|
||||||
#
|
|
||||||
# Test a Servo Probe
|
|
||||||
# ...with AUTO_BED_LEVELING_3POINT, DEBUG_LEVELING_FEATURE, EEPROM_SETTINGS, EEPROM_CHITCHAT, EXTENDED_CAPABILITIES_REPORT, and AUTO_REPORT_TEMPERATURES
|
|
||||||
#
|
|
||||||
- restore_configs
|
|
||||||
- opt_enable NUM_SERVOS Z_PROBE_SERVO_NR Z_SERVO_ANGLES DEACTIVATE_SERVOS_AFTER_MOVE
|
|
||||||
- opt_set NUM_SERVOS 1
|
|
||||||
- opt_enable AUTO_BED_LEVELING_3POINT DEBUG_LEVELING_FEATURE EEPROM_SETTINGS EEPROM_CHITCHAT
|
|
||||||
- opt_enable_adv NO_VOLUMETRICS EXTENDED_CAPABILITIES_REPORT AUTO_REPORT_TEMPERATURES AUTOTEMP G38_PROBE_TARGET
|
|
||||||
- build_marlin
|
|
||||||
#
|
|
||||||
# Test MESH_BED_LEVELING feature, with LCD
|
|
||||||
#
|
|
||||||
- restore_configs
|
|
||||||
- opt_enable MESH_BED_LEVELING G26_MESH_EDITING MESH_G28_REST_ORIGIN LCD_BED_LEVELING ULTIMAKERCONTROLLER
|
|
||||||
- build_marlin
|
|
||||||
#
|
|
||||||
# Test MINIRAMBO for PWM_MOTOR_CURRENT
|
|
||||||
# PROBE_MANUALLY feature, with LCD support,
|
|
||||||
# ULTIMAKERCONTROLLER, FILAMENT_LCD_DISPLAY, FILAMENT_WIDTH_SENSOR,
|
|
||||||
# PRINTCOUNTER, NOZZLE_PARK_FEATURE, NOZZLE_CLEAN_FEATURE, PCA9632,
|
|
||||||
# Z_DUAL_ENDSTOPS, BEZIER_CURVE_SUPPORT, EXPERIMENTAL_I2CBUS,
|
|
||||||
# ADVANCED_PAUSE_FEATURE, ADVANCED_PAUSE_CONTINUOUS_PURGE, PARK_HEAD_ON_PAUSE, LCD_INFO_MENU, M114_DETAIL
|
|
||||||
# EEPROM_SETTINGS, EEPROM_CHITCHAT, M100_FREE_MEMORY_WATCHER,
|
|
||||||
# INCH_MODE_SUPPORT, TEMPERATURE_UNITS_SUPPORT
|
|
||||||
#
|
|
||||||
- restore_configs
|
|
||||||
- opt_set MOTHERBOARD BOARD_MINIRAMBO
|
|
||||||
- opt_enable PROBE_MANUALLY AUTO_BED_LEVELING_BILINEAR G26_MESH_EDITING LCD_BED_LEVELING ULTIMAKERCONTROLLER
|
|
||||||
- opt_enable EEPROM_SETTINGS EEPROM_CHITCHAT M100_FREE_MEMORY_WATCHER M100_FREE_MEMORY_DUMPER M100_FREE_MEMORY_CORRUPTOR INCH_MODE_SUPPORT TEMPERATURE_UNITS_SUPPORT
|
|
||||||
- opt_enable ULTIMAKERCONTROLLER SDSUPPORT
|
|
||||||
- opt_enable PRINTCOUNTER NOZZLE_PARK_FEATURE NOZZLE_CLEAN_FEATURE PCA9632
|
|
||||||
- opt_enable_adv BEZIER_CURVE_SUPPORT EXPERIMENTAL_I2CBUS
|
|
||||||
- opt_enable_adv ADVANCED_PAUSE_FEATURE ADVANCED_PAUSE_CONTINUOUS_PURGE FILAMENT_LOAD_UNLOAD_GCODES PARK_HEAD_ON_PAUSE LCD_INFO_MENU M114_DETAIL
|
|
||||||
- opt_set_adv PWM_MOTOR_CURRENT {1300,1300,1250}
|
|
||||||
- opt_set_adv I2C_SLAVE_ADDRESS 63
|
|
||||||
- build_marlin
|
|
||||||
#
|
|
||||||
# Mixing Extruder with 5 steppers, Cyrillic
|
|
||||||
#
|
|
||||||
- restore_configs
|
|
||||||
- opt_set MOTHERBOARD BOARD_AZTEEG_X3_PRO
|
|
||||||
- opt_enable MIXING_EXTRUDER CR10_STOCKDISPLAY
|
|
||||||
- opt_set MIXING_STEPPERS 5
|
|
||||||
- opt_set LCD_LANGUAGE ru
|
|
||||||
- build_marlin
|
|
||||||
#
|
|
||||||
# Test DUAL_X_CARRIAGE
|
|
||||||
#
|
|
||||||
- restore_configs
|
|
||||||
- opt_set MOTHERBOARD BOARD_RUMBA
|
|
||||||
- opt_set EXTRUDERS 2
|
|
||||||
- opt_set TEMP_SENSOR_1 1
|
|
||||||
- opt_enable USE_XMAX_PLUG
|
|
||||||
- opt_enable_adv DUAL_X_CARRIAGE
|
|
||||||
- build_marlin
|
|
||||||
#
|
|
||||||
# Test SPEAKER with BOARD_BQ_ZUM_MEGA_3D and BQ_LCD_SMART_CONTROLLER
|
|
||||||
#
|
|
||||||
#- restore_configs
|
|
||||||
#- opt_set MOTHERBOARD BOARD_BQ_ZUM_MEGA_3D
|
|
||||||
#- opt_set LCD_FEEDBACK_FREQUENCY_DURATION_MS 10
|
|
||||||
#- opt_set LCD_FEEDBACK_FREQUENCY_HZ 100
|
|
||||||
#- opt_enable BQ_LCD_SMART_CONTROLLER SPEAKER
|
|
||||||
#
|
|
||||||
# Test SWITCHING_EXTRUDER
|
|
||||||
#
|
|
||||||
- restore_configs
|
|
||||||
- opt_set MOTHERBOARD BOARD_RUMBA
|
|
||||||
- opt_set EXTRUDERS 2
|
|
||||||
- opt_enable NUM_SERVOS
|
|
||||||
- opt_set NUM_SERVOS 1
|
|
||||||
- opt_enable SWITCHING_EXTRUDER ULTIMAKERCONTROLLER
|
|
||||||
- build_marlin
|
|
||||||
#
|
|
||||||
# Enable COREXY
|
|
||||||
#
|
|
||||||
#- restore_configs
|
|
||||||
#- opt_enable COREXY
|
|
||||||
#- build_marlin
|
|
||||||
#
|
|
||||||
# Test many less common options
|
|
||||||
#
|
|
||||||
- restore_configs
|
|
||||||
- opt_enable COREYX
|
|
||||||
- opt_set_adv FAN_MIN_PWM 50
|
|
||||||
- opt_set_adv FAN_KICKSTART_TIME 100
|
|
||||||
- opt_set_adv XY_FREQUENCY_LIMIT 15
|
|
||||||
- opt_enable_adv SHOW_TEMP_ADC_VALUES HOME_Y_BEFORE_X EMERGENCY_PARSER FAN_KICKSTART_TIME
|
|
||||||
- opt_enable_adv ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED ADVANCED_OK
|
|
||||||
- opt_enable_adv VOLUMETRIC_DEFAULT_ON NO_WORKSPACE_OFFSETS ACTION_ON_KILL
|
|
||||||
- opt_enable_adv EXTRA_FAN_SPEED FWERETRACT Z_DUAL_STEPPER_DRIVERS Z_DUAL_ENDSTOPS
|
|
||||||
- opt_enable_adv MENU_ADDAUTOSTART SDCARD_SORT_ALPHA
|
|
||||||
- opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER BABYSTEPPING DAC_MOTOR_CURRENT_DEFAULT
|
|
||||||
- opt_enable FILAMENT_LCD_DISPLAY FILAMENT_WIDTH_SENSOR
|
|
||||||
- opt_enable ENDSTOP_INTERRUPTS_FEATURE FAN_SOFT_PWM SDSUPPORT
|
|
||||||
- opt_enable USE_XMAX_PLUG
|
|
||||||
- build_marlin
|
|
||||||
#
|
|
||||||
######## Other Standard LCD/Panels ##############
|
|
||||||
#
|
|
||||||
# ULTRA_LCD
|
|
||||||
#
|
|
||||||
#- restore_configs
|
|
||||||
#- opt_enable ULTRA_LCD
|
|
||||||
#- build_marlin
|
|
||||||
#
|
|
||||||
# DOGLCD
|
|
||||||
#
|
|
||||||
#- restore_configs
|
|
||||||
#- opt_enable DOGLCD
|
|
||||||
#- build_marlin
|
|
||||||
#
|
|
||||||
# MAKRPANEL
|
|
||||||
# Needs to use Melzi and Sanguino hardware
|
|
||||||
#
|
|
||||||
#- restore_configs
|
|
||||||
#- opt_enable MAKRPANEL
|
|
||||||
#- build_marlin
|
|
||||||
#
|
|
||||||
# REPRAP_DISCOUNT_SMART_CONTROLLER, SDSUPPORT, BABYSTEPPING, RIGIDBOARD_V2, and DAC_MOTOR_CURRENT_DEFAULT
|
|
||||||
#
|
|
||||||
#- restore_configs
|
|
||||||
#- opt_set MOTHERBOARD BOARD_RIGIDBOARD_V2
|
|
||||||
#- opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER SDSUPPORT BABYSTEPPING DAC_MOTOR_CURRENT_DEFAULT
|
|
||||||
#- build_marlin
|
|
||||||
# #
|
|
||||||
# G3D_PANEL with SDCARD_SORT_ALPHA and STATUS_MESSAGE_SCROLLING
|
|
||||||
#
|
|
||||||
#- restore_configs
|
|
||||||
#- opt_enable G3D_PANEL SDSUPPORT
|
|
||||||
#- opt_enable_adv SDCARD_SORT_ALPHA STATUS_MESSAGE_SCROLLING SCROLL_LONG_FILENAMES
|
|
||||||
#- opt_set_adv SDSORT_GCODE true
|
|
||||||
#- opt_set_adv SDSORT_USES_RAM true
|
|
||||||
#- opt_set_adv SDSORT_USES_STACK true
|
|
||||||
#- opt_set_adv SDSORT_CACHE_NAMES true
|
|
||||||
#- build_marlin
|
|
||||||
#
|
|
||||||
# REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER with LIGHTWEIGHT_UI
|
|
||||||
#
|
|
||||||
- restore_configs
|
|
||||||
- opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER SDSUPPORT
|
|
||||||
- opt_enable_adv SDCARD_SORT_ALPHA STATUS_MESSAGE_SCROLLING SCROLL_LONG_FILENAMES LIGHTWEIGHT_UI
|
|
||||||
- opt_set_adv SDSORT_GCODE true
|
|
||||||
- opt_set_adv SDSORT_USES_RAM true
|
|
||||||
- opt_set_adv SDSORT_USES_STACK true
|
|
||||||
- opt_set_adv SDSORT_CACHE_NAMES true
|
|
||||||
- build_marlin
|
|
||||||
#
|
|
||||||
# REPRAPWORLD_KEYPAD
|
|
||||||
#
|
|
||||||
# Cant find configuration details to get it to compile
|
|
||||||
#- restore_configs
|
|
||||||
#- opt_enable ULTRA_LCD REPRAPWORLD_KEYPAD REPRAPWORLD_KEYPAD_MOVE_STEP
|
|
||||||
#- build_marlin
|
|
||||||
#
|
|
||||||
# RA_CONTROL_PANEL
|
|
||||||
#
|
|
||||||
#- restore_configs
|
|
||||||
#- opt_enable RA_CONTROL_PANEL PINS_DEBUGGING
|
|
||||||
#- build_marlin
|
|
||||||
#
|
|
||||||
######## I2C LCD/PANELS ##############
|
|
||||||
#
|
|
||||||
# !!!ATTENTION!!!
|
|
||||||
# Most I2C configurations are failing at the moment because they require
|
|
||||||
# a different Liquid Crystal library "LiquidTWI2".
|
|
||||||
#
|
|
||||||
# LCD_SAINSMART_I2C_1602
|
|
||||||
#
|
|
||||||
#- restore_configs
|
|
||||||
#- opt_enable LCD_SAINSMART_I2C_1602
|
|
||||||
#- build_marlin
|
|
||||||
#
|
|
||||||
# LCD_I2C_PANELOLU2
|
|
||||||
#
|
|
||||||
#- restore_configs
|
|
||||||
#- opt_enable LCD_I2C_PANELOLU2
|
|
||||||
#- build_marlin
|
|
||||||
#
|
|
||||||
# LCD_I2C_VIKI
|
|
||||||
#
|
|
||||||
#- restore_configs
|
|
||||||
#- opt_enable LCD_I2C_VIKI
|
|
||||||
#- build_marlin
|
|
||||||
#
|
|
||||||
# LCM1602
|
|
||||||
#
|
|
||||||
#- restore_configs
|
|
||||||
#- opt_enable LCM1602
|
|
||||||
#- build_marlin
|
|
||||||
#
|
|
||||||
# Language files test with REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER
|
|
||||||
#
|
|
||||||
#- restore_configs
|
|
||||||
#- opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER SDSUPPORT
|
|
||||||
#- for lang in an bg ca zh_CN zh_TW cz da de el el-gr en es eu fi fr gl hr it jp-kana ko_KR nl pl pt pt-br ru sk tr uk test; do opt_set LCD_LANGUAGE $lang; echo "compile with language $lang ..."; build_marlin
|
|
||||||
#
|
|
||||||
#- restore_configs
|
|
||||||
#- opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER SDSUPPORT
|
|
||||||
#- for lang in an bg ca zh_CN zh_TW cz da de el el-gr en es eu fi fr gl hr it jp-kana ko_KR nl pl pt pt-br ru sk tr uk test; do opt_set LCD_LANGUAGE $lang; echo "compile with language $lang ..."; build_marlin
|
|
||||||
#
|
|
||||||
#
|
|
||||||
######## Example Configurations ##############
|
|
||||||
#
|
|
||||||
# BQ Hephestos 2
|
|
||||||
#- restore_configs
|
|
||||||
#- use_example_configs Hephestos_2
|
|
||||||
#- build_marlin
|
|
||||||
#
|
|
||||||
# Delta Config (generic) + ABL bilinear + PROBE_MANUALLY
|
|
||||||
- use_example_configs delta/generic
|
|
||||||
- opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER DELTA_CALIBRATION_MENU AUTO_BED_LEVELING_BILINEAR PROBE_MANUALLY
|
|
||||||
- build_marlin
|
|
||||||
#
|
|
||||||
# Delta Config (generic) + UBL + ALLEN_KEY + OLED_PANEL_TINYBOY2 + EEPROM_SETTINGS
|
|
||||||
#
|
|
||||||
- use_example_configs delta/generic
|
|
||||||
- opt_enable AUTO_BED_LEVELING_UBL RESTORE_LEVELING_AFTER_G28 Z_PROBE_ALLEN_KEY EEPROM_SETTINGS EEPROM_CHITCHAT
|
|
||||||
- opt_enable OLED_PANEL_TINYBOY2 MESH_EDIT_GFX_OVERLAY
|
|
||||||
- build_marlin
|
|
||||||
#
|
|
||||||
# Delta Config (FLSUN AC because it's complex)
|
|
||||||
#
|
|
||||||
- use_example_configs delta/FLSUN/auto_calibrate
|
|
||||||
- build_marlin
|
|
||||||
#
|
|
||||||
# Makibox Config need to check board type for Teensy++ 2.0
|
|
||||||
#
|
|
||||||
#- use_example_configs makibox
|
|
||||||
#- build_marlin
|
|
||||||
#
|
|
||||||
# SCARA with TMC2130
|
|
||||||
#
|
|
||||||
- use_example_configs SCARA
|
|
||||||
- opt_enable AUTO_BED_LEVELING_BILINEAR FIX_MOUNTED_PROBE USE_ZMIN_PLUG EEPROM_SETTINGS EEPROM_CHITCHAT ULTIMAKERCONTROLLER
|
|
||||||
- opt_set X_DRIVER_TYPE TMC2130
|
|
||||||
- opt_set Y_DRIVER_TYPE TMC2130
|
|
||||||
- opt_set Z_DRIVER_TYPE TMC2130
|
|
||||||
- opt_set E0_DRIVER_TYPE TMC2130
|
|
||||||
- opt_enable_adv MONITOR_DRIVER_STATUS STEALTHCHOP HYBRID_THRESHOLD SENSORLESS_HOMING
|
|
||||||
- build_marlin
|
|
||||||
#
|
|
||||||
# TMC2208 Config
|
|
||||||
#
|
|
||||||
- restore_configs
|
|
||||||
- opt_set X_DRIVER_TYPE TMC2208
|
|
||||||
- opt_set Y_DRIVER_TYPE TMC2208
|
|
||||||
- opt_set Z_DRIVER_TYPE TMC2208
|
|
||||||
- opt_set E0_DRIVER_TYPE TMC2208
|
|
||||||
- opt_enable_adv MONITOR_DRIVER_STATUS STEALTHCHOP HYBRID_THRESHOLD TMC_DEBUG
|
|
||||||
- build_marlin
|
|
||||||
#
|
|
||||||
# tvrrug Config need to check board type for sanguino atmega644p
|
|
||||||
#
|
|
||||||
#- use_example_configs tvrrug/Round2
|
|
||||||
#- build_marlin
|
|
||||||
#
|
|
||||||
#
|
|
||||||
######## Board Types #############
|
|
||||||
#
|
|
||||||
# To be added in nightly test branch
|
|
||||||
#
|
|
||||||
6
LICENSE
6
LICENSE
@@ -3,7 +3,7 @@
|
|||||||
GNU GENERAL PUBLIC LICENSE
|
GNU GENERAL PUBLIC LICENSE
|
||||||
Version 3, 29 June 2007
|
Version 3, 29 June 2007
|
||||||
|
|
||||||
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
Copyright (c) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
||||||
Everyone is permitted to copy and distribute verbatim copies
|
Everyone is permitted to copy and distribute verbatim copies
|
||||||
of this license document, but changing it is not allowed.
|
of this license document, but changing it is not allowed.
|
||||||
|
|
||||||
@@ -634,7 +634,7 @@ state the exclusion of warranty; and each file should have at least
|
|||||||
the "copyright" line and a pointer to where the full notice is found.
|
the "copyright" line and a pointer to where the full notice is found.
|
||||||
|
|
||||||
{one line to give the program's name and a brief idea of what it does.}
|
{one line to give the program's name and a brief idea of what it does.}
|
||||||
Copyright (C) {year} {name of author}
|
Copyright (c) {year} {name of author}
|
||||||
|
|
||||||
This program is free software: you can redistribute it and/or modify
|
This program is free software: you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
@@ -654,7 +654,7 @@ Also add information on how to contact you by electronic and paper mail.
|
|||||||
If the program does terminal interaction, make it output a short
|
If the program does terminal interaction, make it output a short
|
||||||
notice like this when it starts in an interactive mode:
|
notice like this when it starts in an interactive mode:
|
||||||
|
|
||||||
{project} Copyright (C) {year} {fullname}
|
{project} Copyright (c) {year} {fullname}
|
||||||
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||||
This is free software, and you are welcome to redistribute it
|
This is free software, and you are welcome to redistribute it
|
||||||
under certain conditions; type `show c' for details.
|
under certain conditions; type `show c' for details.
|
||||||
|
|||||||
@@ -1,562 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Conditionals_LCD.h
|
|
||||||
* Conditionals that need to be set before Configuration_adv.h or pins.h
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef CONDITIONALS_LCD_H // Get the LCD defines which are needed first
|
|
||||||
#define CONDITIONALS_LCD_H
|
|
||||||
|
|
||||||
#define LCD_HAS_DIRECTIONAL_BUTTONS (BUTTON_EXISTS(UP) || BUTTON_EXISTS(DWN) || BUTTON_EXISTS(LFT) || BUTTON_EXISTS(RT))
|
|
||||||
|
|
||||||
#if ENABLED(CARTESIO_UI)
|
|
||||||
|
|
||||||
#define DOGLCD
|
|
||||||
#define ULTIPANEL
|
|
||||||
#define DEFAULT_LCD_CONTRAST 90
|
|
||||||
#define LCD_CONTRAST_MIN 60
|
|
||||||
#define LCD_CONTRAST_MAX 140
|
|
||||||
|
|
||||||
#elif ENABLED(MAKRPANEL)
|
|
||||||
|
|
||||||
#define U8GLIB_ST7565_64128N
|
|
||||||
|
|
||||||
#elif ENABLED(ZONESTAR_LCD)
|
|
||||||
|
|
||||||
#define REPRAPWORLD_KEYPAD
|
|
||||||
#define REPRAPWORLD_KEYPAD_MOVE_STEP 10.0
|
|
||||||
#define ADC_KEYPAD
|
|
||||||
#define ADC_KEY_NUM 8
|
|
||||||
#define ULTIPANEL
|
|
||||||
|
|
||||||
// this helps to implement ADC_KEYPAD menus
|
|
||||||
#define ENCODER_PULSES_PER_STEP 1
|
|
||||||
#define ENCODER_STEPS_PER_MENU_ITEM 1
|
|
||||||
#define ENCODER_FEEDRATE_DEADZONE 2
|
|
||||||
#define REVERSE_MENU_DIRECTION
|
|
||||||
|
|
||||||
#elif ENABLED(ANET_FULL_GRAPHICS_LCD)
|
|
||||||
|
|
||||||
#define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER
|
|
||||||
|
|
||||||
#elif ENABLED(BQ_LCD_SMART_CONTROLLER)
|
|
||||||
|
|
||||||
#define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER
|
|
||||||
|
|
||||||
#elif ENABLED(miniVIKI) || ENABLED(VIKI2) || ENABLED(ELB_FULL_GRAPHIC_CONTROLLER)
|
|
||||||
|
|
||||||
#define ULTRA_LCD //general LCD support, also 16x2
|
|
||||||
#define DOGLCD // Support for SPI LCD 128x64 (Controller ST7565R graphic Display Family)
|
|
||||||
#define ULTIMAKERCONTROLLER //as available from the Ultimaker online store.
|
|
||||||
|
|
||||||
#if ENABLED(miniVIKI)
|
|
||||||
#define LCD_CONTRAST_MIN 75
|
|
||||||
#define LCD_CONTRAST_MAX 115
|
|
||||||
#define DEFAULT_LCD_CONTRAST 95
|
|
||||||
#define U8GLIB_ST7565_64128N
|
|
||||||
#elif ENABLED(VIKI2)
|
|
||||||
#define LCD_CONTRAST_MIN 0
|
|
||||||
#define LCD_CONTRAST_MAX 255
|
|
||||||
#define DEFAULT_LCD_CONTRAST 140
|
|
||||||
#define U8GLIB_ST7565_64128N
|
|
||||||
#elif ENABLED(ELB_FULL_GRAPHIC_CONTROLLER)
|
|
||||||
#define LCD_CONTRAST_MIN 90
|
|
||||||
#define LCD_CONTRAST_MAX 130
|
|
||||||
#define DEFAULT_LCD_CONTRAST 110
|
|
||||||
#define U8GLIB_LM6059_AF
|
|
||||||
#define SD_DETECT_INVERTED
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#elif ENABLED(OLED_PANEL_TINYBOY2)
|
|
||||||
|
|
||||||
#define U8GLIB_SSD1306
|
|
||||||
#define ULTIPANEL
|
|
||||||
#define REVERSE_ENCODER_DIRECTION
|
|
||||||
#define REVERSE_MENU_DIRECTION
|
|
||||||
|
|
||||||
#elif ENABLED(RA_CONTROL_PANEL)
|
|
||||||
|
|
||||||
#define LCD_I2C_TYPE_PCA8574
|
|
||||||
#define LCD_I2C_ADDRESS 0x27 // I2C Address of the port expander
|
|
||||||
#define ULTIPANEL
|
|
||||||
|
|
||||||
#elif ENABLED(REPRAPWORLD_GRAPHICAL_LCD)
|
|
||||||
|
|
||||||
#define DOGLCD
|
|
||||||
#define U8GLIB_ST7920
|
|
||||||
#define ULTIPANEL
|
|
||||||
|
|
||||||
#elif ENABLED(CR10_STOCKDISPLAY)
|
|
||||||
|
|
||||||
#define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER
|
|
||||||
#ifndef ST7920_DELAY_1
|
|
||||||
#define ST7920_DELAY_1 DELAY_NS(125)
|
|
||||||
#endif
|
|
||||||
#ifndef ST7920_DELAY_2
|
|
||||||
#define ST7920_DELAY_2 DELAY_NS(125)
|
|
||||||
#endif
|
|
||||||
#ifndef ST7920_DELAY_3
|
|
||||||
#define ST7920_DELAY_3 DELAY_NS(125)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#elif ENABLED(MKS_12864OLED)
|
|
||||||
|
|
||||||
#define REPRAP_DISCOUNT_SMART_CONTROLLER
|
|
||||||
#define U8GLIB_SH1106
|
|
||||||
|
|
||||||
#elif ENABLED(MKS_12864OLED_SSD1306)
|
|
||||||
|
|
||||||
#define REPRAP_DISCOUNT_SMART_CONTROLLER
|
|
||||||
#define U8GLIB_SSD1306
|
|
||||||
|
|
||||||
#elif ENABLED(MKS_MINI_12864)
|
|
||||||
|
|
||||||
#define MINIPANEL
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(MAKRPANEL) || ENABLED(MINIPANEL)
|
|
||||||
#define DOGLCD
|
|
||||||
#define ULTIPANEL
|
|
||||||
#define DEFAULT_LCD_CONTRAST 17
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(ULTI_CONTROLLER)
|
|
||||||
#define U8GLIB_SSD1309
|
|
||||||
#define REVERSE_ENCODER_DIRECTION
|
|
||||||
#define LCD_RESET_PIN LCD_PINS_D6 // This controller need a reset pin
|
|
||||||
#define LCD_CONTRAST_MIN 0
|
|
||||||
#define LCD_CONTRAST_MAX 254
|
|
||||||
#define DEFAULT_LCD_CONTRAST 127
|
|
||||||
#define ENCODER_PULSES_PER_STEP 2
|
|
||||||
#define ENCODER_STEPS_PER_MENU_ITEM 2
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Generic support for SSD1306 / SSD1309 / SH1106 OLED based LCDs.
|
|
||||||
#if ENABLED(U8GLIB_SSD1306) || ENABLED(U8GLIB_SSD1309) || ENABLED(U8GLIB_SH1106)
|
|
||||||
#define ULTRA_LCD //general LCD support, also 16x2
|
|
||||||
#define DOGLCD // Support for I2C LCD 128x64 (Controller SSD1306 / SSD1309 / SH1106 graphic Display Family)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(PANEL_ONE) || ENABLED(U8GLIB_SH1106)
|
|
||||||
|
|
||||||
#define ULTIMAKERCONTROLLER
|
|
||||||
|
|
||||||
#elif ENABLED(MAKEBOARD_MINI_2_LINE_DISPLAY_1602)
|
|
||||||
|
|
||||||
#define REPRAP_DISCOUNT_SMART_CONTROLLER
|
|
||||||
#define LCD_WIDTH 16
|
|
||||||
#define LCD_HEIGHT 2
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER) || ENABLED(LCD_FOR_MELZI) || ENABLED(SILVER_GATE_GLCD_CONTROLLER)
|
|
||||||
#define DOGLCD
|
|
||||||
#define U8GLIB_ST7920
|
|
||||||
#define REPRAP_DISCOUNT_SMART_CONTROLLER
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(ULTIMAKERCONTROLLER) \
|
|
||||||
|| ENABLED(REPRAP_DISCOUNT_SMART_CONTROLLER) \
|
|
||||||
|| ENABLED(G3D_PANEL) \
|
|
||||||
|| ENABLED(RIGIDBOT_PANEL) \
|
|
||||||
|| ENABLED(ULTI_CONTROLLER)
|
|
||||||
#define ULTIPANEL
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(REPRAPWORLD_KEYPAD)
|
|
||||||
#define NEWPANEL
|
|
||||||
#if ENABLED(ULTIPANEL) && !defined(REPRAPWORLD_KEYPAD_MOVE_STEP)
|
|
||||||
#define REPRAPWORLD_KEYPAD_MOVE_STEP 1.0
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
|
||||||
* I2C PANELS
|
|
||||||
*/
|
|
||||||
|
|
||||||
#if ENABLED(LCD_SAINSMART_I2C_1602) || ENABLED(LCD_SAINSMART_I2C_2004)
|
|
||||||
|
|
||||||
#define LCD_I2C_TYPE_PCF8575
|
|
||||||
#define LCD_I2C_ADDRESS 0x27 // I2C Address of the port expander
|
|
||||||
#define ULTRA_LCD
|
|
||||||
|
|
||||||
#if ENABLED(LCD_SAINSMART_I2C_2004)
|
|
||||||
#define LCD_WIDTH 20
|
|
||||||
#define LCD_HEIGHT 4
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#elif ENABLED(LCD_I2C_PANELOLU2)
|
|
||||||
|
|
||||||
// PANELOLU2 LCD with status LEDs, separate encoder and click inputs
|
|
||||||
|
|
||||||
#define LCD_I2C_TYPE_MCP23017
|
|
||||||
#define LCD_I2C_ADDRESS 0x20 // I2C Address of the port expander
|
|
||||||
#define LCD_USE_I2C_BUZZER // Enable buzzer on LCD (optional)
|
|
||||||
#define ULTIPANEL
|
|
||||||
|
|
||||||
#elif ENABLED(LCD_I2C_VIKI)
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Panucatt VIKI LCD with status LEDs, integrated click & L/R/U/P buttons, separate encoder inputs
|
|
||||||
*
|
|
||||||
* This uses the LiquidTWI2 library v1.2.3 or later ( https://github.com/lincomatic/LiquidTWI2 )
|
|
||||||
* Make sure the LiquidTWI2 directory is placed in the Arduino or Sketchbook libraries subdirectory.
|
|
||||||
* Note: The pause/stop/resume LCD button pin should be connected to the Arduino
|
|
||||||
* BTN_ENC pin (or set BTN_ENC to -1 if not used)
|
|
||||||
*/
|
|
||||||
#define LCD_I2C_TYPE_MCP23017
|
|
||||||
#define LCD_I2C_ADDRESS 0x20 // I2C Address of the port expander
|
|
||||||
#define LCD_USE_I2C_BUZZER // Enable buzzer on LCD (requires LiquidTWI2 v1.2.3 or later)
|
|
||||||
#define ULTIPANEL
|
|
||||||
|
|
||||||
#define ENCODER_FEEDRATE_DEADZONE 4
|
|
||||||
|
|
||||||
#define STD_ENCODER_PULSES_PER_STEP 1
|
|
||||||
#define STD_ENCODER_STEPS_PER_MENU_ITEM 2
|
|
||||||
|
|
||||||
#elif ENABLED(G3D_PANEL)
|
|
||||||
|
|
||||||
#define STD_ENCODER_PULSES_PER_STEP 2
|
|
||||||
#define STD_ENCODER_STEPS_PER_MENU_ITEM 1
|
|
||||||
|
|
||||||
#elif ENABLED(miniVIKI) || ENABLED(VIKI2) \
|
|
||||||
|| ENABLED(ELB_FULL_GRAPHIC_CONTROLLER) \
|
|
||||||
|| ENABLED(OLED_PANEL_TINYBOY2) \
|
|
||||||
|| ENABLED(BQ_LCD_SMART_CONTROLLER) \
|
|
||||||
|| ENABLED(LCD_I2C_PANELOLU2) \
|
|
||||||
|| ENABLED(REPRAP_DISCOUNT_SMART_CONTROLLER)
|
|
||||||
#define STD_ENCODER_PULSES_PER_STEP 4
|
|
||||||
#define STD_ENCODER_STEPS_PER_MENU_ITEM 1
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifndef STD_ENCODER_PULSES_PER_STEP
|
|
||||||
#define STD_ENCODER_PULSES_PER_STEP 5
|
|
||||||
#endif
|
|
||||||
#ifndef STD_ENCODER_STEPS_PER_MENU_ITEM
|
|
||||||
#define STD_ENCODER_STEPS_PER_MENU_ITEM 1
|
|
||||||
#endif
|
|
||||||
#ifndef ENCODER_PULSES_PER_STEP
|
|
||||||
#define ENCODER_PULSES_PER_STEP STD_ENCODER_PULSES_PER_STEP
|
|
||||||
#endif
|
|
||||||
#ifndef ENCODER_STEPS_PER_MENU_ITEM
|
|
||||||
#define ENCODER_STEPS_PER_MENU_ITEM STD_ENCODER_STEPS_PER_MENU_ITEM
|
|
||||||
#endif
|
|
||||||
#ifndef ENCODER_FEEDRATE_DEADZONE
|
|
||||||
#define ENCODER_FEEDRATE_DEADZONE 6
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Shift register panels
|
|
||||||
// ---------------------
|
|
||||||
// 2 wire Non-latching LCD SR from:
|
|
||||||
// https://bitbucket.org/fmalpartida/new-liquidcrystal/wiki/schematics#!shiftregister-connection
|
|
||||||
|
|
||||||
#if ENABLED(SAV_3DLCD)
|
|
||||||
#define SR_LCD_2W_NL // Non latching 2 wire shift register
|
|
||||||
#define ULTIPANEL
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(DOGLCD) // Change number of lines to match the DOG graphic display
|
|
||||||
#ifndef LCD_WIDTH
|
|
||||||
#ifdef LCD_WIDTH_OVERRIDE
|
|
||||||
#define LCD_WIDTH LCD_WIDTH_OVERRIDE
|
|
||||||
#else
|
|
||||||
#define LCD_WIDTH 22
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
#ifndef LCD_HEIGHT
|
|
||||||
#define LCD_HEIGHT 5
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(NO_LCD_MENUS)
|
|
||||||
#undef ULTIPANEL
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(ULTIPANEL)
|
|
||||||
#define NEWPANEL // Disable this if you actually have no click-encoder panel
|
|
||||||
#define ULTRA_LCD
|
|
||||||
#ifndef LCD_WIDTH
|
|
||||||
#define LCD_WIDTH 20
|
|
||||||
#endif
|
|
||||||
#ifndef LCD_HEIGHT
|
|
||||||
#define LCD_HEIGHT 4
|
|
||||||
#endif
|
|
||||||
#elif ENABLED(ULTRA_LCD) // no panel but just LCD
|
|
||||||
#ifndef LCD_WIDTH
|
|
||||||
#define LCD_WIDTH 16
|
|
||||||
#endif
|
|
||||||
#ifndef LCD_HEIGHT
|
|
||||||
#define LCD_HEIGHT 2
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(DOGLCD)
|
|
||||||
/* Custom characters defined in font dogm_font_data_Marlin_symbols.h / Marlin_symbols.fon */
|
|
||||||
// \x00 intentionally skipped to avoid problems in strings
|
|
||||||
#define LCD_STR_REFRESH "\x01"
|
|
||||||
#define LCD_STR_FOLDER "\x02"
|
|
||||||
#define LCD_STR_ARROW_RIGHT "\x03"
|
|
||||||
#define LCD_STR_UPLEVEL "\x04"
|
|
||||||
#define LCD_STR_CLOCK "\x05"
|
|
||||||
#define LCD_STR_FEEDRATE "\x06"
|
|
||||||
#define LCD_STR_BEDTEMP "\x07"
|
|
||||||
#define LCD_STR_THERMOMETER "\x08"
|
|
||||||
#define LCD_STR_DEGREE "\x09"
|
|
||||||
|
|
||||||
#define LCD_STR_SPECIAL_MAX '\x09'
|
|
||||||
// Maximum here is 0x1F because 0x20 is ' ' (space) and the normal charsets begin.
|
|
||||||
// Better stay below 0x10 because DISPLAY_CHARSET_HD44780_WESTERN begins here.
|
|
||||||
|
|
||||||
// Symbol characters
|
|
||||||
#define LCD_STR_FILAM_DIA "\xf8"
|
|
||||||
#define LCD_STR_FILAM_MUL "\xa4"
|
|
||||||
#else
|
|
||||||
// Custom characters defined in the first 8 characters of the LCD
|
|
||||||
#define LCD_BEDTEMP_CHAR 0x00 // Print only as a char. This will have 'unexpected' results when used in a string!
|
|
||||||
#define LCD_DEGREE_CHAR 0x01
|
|
||||||
#define LCD_STR_THERMOMETER "\x02" // Still used with string concatenation
|
|
||||||
#define LCD_UPLEVEL_CHAR 0x03
|
|
||||||
#define LCD_STR_REFRESH "\x04"
|
|
||||||
#define LCD_STR_FOLDER "\x05"
|
|
||||||
#define LCD_FEEDRATE_CHAR 0x06
|
|
||||||
#define LCD_CLOCK_CHAR 0x07
|
|
||||||
#define LCD_STR_ARROW_RIGHT ">" /* from the default character set */
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Default LCD contrast for dogm-like LCD displays
|
|
||||||
*/
|
|
||||||
#if ENABLED(DOGLCD)
|
|
||||||
|
|
||||||
#define HAS_LCD_CONTRAST ( \
|
|
||||||
ENABLED(MAKRPANEL) \
|
|
||||||
|| ENABLED(CARTESIO_UI) \
|
|
||||||
|| ENABLED(VIKI2) \
|
|
||||||
|| ENABLED(miniVIKI) \
|
|
||||||
|| ENABLED(ELB_FULL_GRAPHIC_CONTROLLER) \
|
|
||||||
)
|
|
||||||
|
|
||||||
#if HAS_LCD_CONTRAST
|
|
||||||
#ifndef LCD_CONTRAST_MIN
|
|
||||||
#define LCD_CONTRAST_MIN 0
|
|
||||||
#endif
|
|
||||||
#ifndef LCD_CONTRAST_MAX
|
|
||||||
#define LCD_CONTRAST_MAX 63
|
|
||||||
#endif
|
|
||||||
#ifndef DEFAULT_LCD_CONTRAST
|
|
||||||
#define DEFAULT_LCD_CONTRAST 32
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Boot screens
|
|
||||||
#if DISABLED(ULTRA_LCD)
|
|
||||||
#undef SHOW_BOOTSCREEN
|
|
||||||
#elif !defined(BOOTSCREEN_TIMEOUT)
|
|
||||||
#define BOOTSCREEN_TIMEOUT 2500
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define HAS_DEBUG_MENU (ENABLED(ULTIPANEL) && ENABLED(LCD_PROGRESS_BAR_TEST))
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Extruders have some combination of stepper motors and hotends
|
|
||||||
* so we separate these concepts into the defines:
|
|
||||||
*
|
|
||||||
* EXTRUDERS - Number of Selectable Tools
|
|
||||||
* HOTENDS - Number of hotends, whether connected or separate
|
|
||||||
* E_STEPPERS - Number of actual E stepper motors
|
|
||||||
* E_MANUAL - Number of E steppers for LCD move options
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#if ENABLED(SWITCHING_EXTRUDER) // One stepper for every two EXTRUDERS
|
|
||||||
#if EXTRUDERS > 4
|
|
||||||
#define E_STEPPERS 3
|
|
||||||
#elif EXTRUDERS > 2
|
|
||||||
#define E_STEPPERS 2
|
|
||||||
#else
|
|
||||||
#define E_STEPPERS 1
|
|
||||||
#endif
|
|
||||||
#if DISABLED(SWITCHING_NOZZLE)
|
|
||||||
#define HOTENDS E_STEPPERS
|
|
||||||
#endif
|
|
||||||
#define E_MANUAL EXTRUDERS
|
|
||||||
#elif ENABLED(MIXING_EXTRUDER)
|
|
||||||
#define E_STEPPERS MIXING_STEPPERS
|
|
||||||
#define E_MANUAL 1
|
|
||||||
#else
|
|
||||||
#define E_STEPPERS EXTRUDERS
|
|
||||||
#define E_MANUAL EXTRUDERS
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// No inactive extruders with MK2_MULTIPLEXER or SWITCHING_NOZZLE
|
|
||||||
#if ENABLED(MK2_MULTIPLEXER) || ENABLED(SWITCHING_NOZZLE)
|
|
||||||
#undef DISABLE_INACTIVE_EXTRUDER
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// MK2 Multiplexer forces SINGLENOZZLE
|
|
||||||
#if ENABLED(MK2_MULTIPLEXER)
|
|
||||||
#define SINGLENOZZLE
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(SINGLENOZZLE) || ENABLED(MIXING_EXTRUDER) // One hotend, one thermistor, no XY offset
|
|
||||||
#undef HOTENDS
|
|
||||||
#define HOTENDS 1
|
|
||||||
#undef TEMP_SENSOR_1_AS_REDUNDANT
|
|
||||||
#undef HOTEND_OFFSET_X
|
|
||||||
#undef HOTEND_OFFSET_Y
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifndef HOTENDS
|
|
||||||
#define HOTENDS EXTRUDERS
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define DO_SWITCH_EXTRUDER (ENABLED(SWITCHING_EXTRUDER) && (DISABLED(SWITCHING_NOZZLE) || SWITCHING_EXTRUDER_SERVO_NR != SWITCHING_NOZZLE_SERVO_NR))
|
|
||||||
|
|
||||||
/**
|
|
||||||
* DISTINCT_E_FACTORS affects how some E factors are accessed
|
|
||||||
*/
|
|
||||||
#if ENABLED(DISTINCT_E_FACTORS) && E_STEPPERS > 1
|
|
||||||
#define XYZE_N (XYZ + E_STEPPERS)
|
|
||||||
#if ENABLED(HANGPRINTER)
|
|
||||||
#define NUM_AXIS_N (ABCD + E_STEPPERS)
|
|
||||||
#else
|
|
||||||
#define NUM_AXIS_N (XYZ + E_STEPPERS)
|
|
||||||
#endif
|
|
||||||
#define E_AXIS_N (E_AXIS + extruder)
|
|
||||||
#else
|
|
||||||
#undef DISTINCT_E_FACTORS
|
|
||||||
#define XYZE_N XYZE
|
|
||||||
#if ENABLED(HANGPRINTER)
|
|
||||||
#define NUM_AXIS_N ABCDE
|
|
||||||
#else
|
|
||||||
#define NUM_AXIS_N XYZE
|
|
||||||
#endif
|
|
||||||
#define E_AXIS_N E_AXIS
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The BLTouch Probe emulates a servo probe
|
|
||||||
* and uses "special" angles for its state.
|
|
||||||
*/
|
|
||||||
#if ENABLED(BLTOUCH)
|
|
||||||
#ifndef Z_PROBE_SERVO_NR
|
|
||||||
#define Z_PROBE_SERVO_NR 0
|
|
||||||
#endif
|
|
||||||
#ifndef NUM_SERVOS
|
|
||||||
#define NUM_SERVOS (Z_PROBE_SERVO_NR + 1)
|
|
||||||
#endif
|
|
||||||
#undef DEACTIVATE_SERVOS_AFTER_MOVE
|
|
||||||
#if NUM_SERVOS == 1
|
|
||||||
#undef SERVO_DELAY
|
|
||||||
#define SERVO_DELAY { 50 }
|
|
||||||
#endif
|
|
||||||
#ifndef BLTOUCH_DELAY
|
|
||||||
#define BLTOUCH_DELAY 375
|
|
||||||
#endif
|
|
||||||
#undef Z_SERVO_ANGLES
|
|
||||||
#define Z_SERVO_ANGLES { BLTOUCH_DEPLOY, BLTOUCH_STOW }
|
|
||||||
#define BLTOUCH_ANGLES { BLTOUCH_DEPLOY, BLTOUCH_STOW }
|
|
||||||
|
|
||||||
#define BLTOUCH_DEPLOY 10
|
|
||||||
#define BLTOUCH_SW_MODE 60
|
|
||||||
#define BLTOUCH_STOW 90
|
|
||||||
#define BLTOUCH_SELFTEST 120
|
|
||||||
#define BLTOUCH_MODE_STORE 130
|
|
||||||
#define BLTOUCH_5V_MODE 140
|
|
||||||
#define BLTOUCH_OD_MODE 150
|
|
||||||
#define BLTOUCH_RESET 160
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The following commands require different minimum delays.
|
|
||||||
*
|
|
||||||
* 500ms required for a reliable Reset.
|
|
||||||
*
|
|
||||||
* 750ms required for Deploy/Stow, otherwise the alarm state
|
|
||||||
* will not be seen until the following move command.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef BLTOUCH_SET5V_DELAY
|
|
||||||
#define BLTOUCH_SET5V_DELAY 150
|
|
||||||
#endif
|
|
||||||
#ifndef BLTOUCH_SETOD_DELAY
|
|
||||||
#define BLTOUCH_SETOD_DELAY 150
|
|
||||||
#endif
|
|
||||||
#ifndef BLTOUCH_MODE_STORE_DELAY
|
|
||||||
#define BLTOUCH_MODE_STORE_DELAY 150
|
|
||||||
#endif
|
|
||||||
#ifndef BLTOUCH_DEPLOY_DELAY
|
|
||||||
#define BLTOUCH_DEPLOY_DELAY 750
|
|
||||||
#endif
|
|
||||||
#ifndef BLTOUCH_STOW_DELAY
|
|
||||||
#define BLTOUCH_STOW_DELAY 750
|
|
||||||
#endif
|
|
||||||
#ifndef BLTOUCH_RESET_DELAY
|
|
||||||
#define BLTOUCH_RESET_DELAY 500
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define _TEST_BLTOUCH(P) (READ(P##_PIN) != P##_ENDSTOP_INVERTING)
|
|
||||||
|
|
||||||
// Always disable probe pin inverting for BLTouch
|
|
||||||
#undef Z_MIN_PROBE_ENDSTOP_INVERTING
|
|
||||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false
|
|
||||||
|
|
||||||
#if ENABLED(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN)
|
|
||||||
#undef Z_MIN_ENDSTOP_INVERTING
|
|
||||||
#define Z_MIN_ENDSTOP_INVERTING Z_MIN_PROBE_ENDSTOP_INVERTING
|
|
||||||
#define TEST_BLTOUCH() _TEST_BLTOUCH(Z_MIN)
|
|
||||||
#else
|
|
||||||
#define TEST_BLTOUCH() _TEST_BLTOUCH(Z_MIN_PROBE)
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Set a flag for a servo probe
|
|
||||||
*/
|
|
||||||
#define HAS_Z_SERVO_PROBE (defined(Z_PROBE_SERVO_NR) && Z_PROBE_SERVO_NR >= 0)
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Set flags for enabled probes
|
|
||||||
*/
|
|
||||||
#define HAS_BED_PROBE (ENABLED(FIX_MOUNTED_PROBE) || ENABLED(Z_PROBE_ALLEN_KEY) || HAS_Z_SERVO_PROBE || ENABLED(Z_PROBE_SLED) || ENABLED(SOLENOID_PROBE))
|
|
||||||
#define PROBE_SELECTED (HAS_BED_PROBE || ENABLED(PROBE_MANUALLY) || ENABLED(MESH_BED_LEVELING))
|
|
||||||
|
|
||||||
#if !HAS_BED_PROBE
|
|
||||||
// Clear probe pin settings when no probe is selected
|
|
||||||
#undef Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN
|
|
||||||
#undef Z_MIN_PROBE_ENDSTOP
|
|
||||||
#elif ENABLED(Z_PROBE_ALLEN_KEY)
|
|
||||||
// Extra test for Allen Key Probe
|
|
||||||
#define PROBE_IS_TRIGGERED_WHEN_STOWED_TEST
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define HOMING_Z_WITH_PROBE (HAS_BED_PROBE && Z_HOME_DIR < 0 && ENABLED(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN))
|
|
||||||
|
|
||||||
#define HAS_SOFTWARE_ENDSTOPS (ENABLED(MIN_SOFTWARE_ENDSTOPS) || ENABLED(MAX_SOFTWARE_ENDSTOPS))
|
|
||||||
#define HAS_RESUME_CONTINUE (ENABLED(NEWPANEL) || ENABLED(EMERGENCY_PARSER))
|
|
||||||
#define HAS_COLOR_LEDS (ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED))
|
|
||||||
|
|
||||||
#define USE_MARLINSERIAL !(defined(__AVR__) && defined(USBCON))
|
|
||||||
|
|
||||||
#endif // CONDITIONALS_LCD_H
|
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,920 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Marlin Firmware -- G26 - Mesh Validation Tool
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include "MarlinConfig.h"
|
|
||||||
|
|
||||||
#if ENABLED(G26_MESH_VALIDATION)
|
|
||||||
|
|
||||||
#include "Marlin.h"
|
|
||||||
#include "planner.h"
|
|
||||||
#include "stepper.h"
|
|
||||||
#include "temperature.h"
|
|
||||||
#include "ultralcd.h"
|
|
||||||
#include "parser.h"
|
|
||||||
#include "serial.h"
|
|
||||||
#include "bitmap_flags.h"
|
|
||||||
|
|
||||||
#if ENABLED(MESH_BED_LEVELING)
|
|
||||||
#include "mesh_bed_leveling.h"
|
|
||||||
#elif ENABLED(AUTO_BED_LEVELING_UBL)
|
|
||||||
#include "ubl.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define EXTRUSION_MULTIPLIER 1.0
|
|
||||||
#define RETRACTION_MULTIPLIER 1.0
|
|
||||||
#define PRIME_LENGTH 10.0
|
|
||||||
#define OOZE_AMOUNT 0.3
|
|
||||||
|
|
||||||
#define INTERSECTION_CIRCLE_RADIUS 5
|
|
||||||
#define CROSSHAIRS_SIZE 3
|
|
||||||
|
|
||||||
#if CROSSHAIRS_SIZE >= INTERSECTION_CIRCLE_RADIUS
|
|
||||||
#error "CROSSHAIRS_SIZE must be less than INTERSECTION_CIRCLE_RADIUS."
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define G26_OK false
|
|
||||||
#define G26_ERR true
|
|
||||||
|
|
||||||
/**
|
|
||||||
* G26 Mesh Validation Tool
|
|
||||||
*
|
|
||||||
* G26 is a Mesh Validation Tool intended to provide support for the Marlin Unified Bed Leveling System.
|
|
||||||
* In order to fully utilize and benefit from the Marlin Unified Bed Leveling System an accurate Mesh must
|
|
||||||
* be defined. G29 is designed to allow the user to quickly validate the correctness of her Mesh. It will
|
|
||||||
* first heat the bed and nozzle. It will then print lines and circles along the Mesh Cell boundaries and
|
|
||||||
* the intersections of those lines (respectively).
|
|
||||||
*
|
|
||||||
* This action allows the user to immediately see where the Mesh is properly defined and where it needs to
|
|
||||||
* be edited. The command will generate the Mesh lines closest to the nozzle's starting position. Alternatively
|
|
||||||
* the user can specify the X and Y position of interest with command parameters. This allows the user to
|
|
||||||
* focus on a particular area of the Mesh where attention is needed.
|
|
||||||
*
|
|
||||||
* B # Bed Set the Bed Temperature. If not specified, a default of 60 C. will be assumed.
|
|
||||||
*
|
|
||||||
* C Current When searching for Mesh Intersection points to draw, use the current nozzle location
|
|
||||||
* as the base for any distance comparison.
|
|
||||||
*
|
|
||||||
* D Disable Disable the Unified Bed Leveling System. In the normal case the user is invoking this
|
|
||||||
* command to see how well a Mesh as been adjusted to match a print surface. In order to do
|
|
||||||
* this the Unified Bed Leveling System is turned on by the G26 command. The D parameter
|
|
||||||
* alters the command's normal behaviour and disables the Unified Bed Leveling System even if
|
|
||||||
* it is on.
|
|
||||||
*
|
|
||||||
* H # Hotend Set the Nozzle Temperature. If not specified, a default of 205 C. will be assumed.
|
|
||||||
*
|
|
||||||
* F # Filament Used to specify the diameter of the filament being used. If not specified
|
|
||||||
* 1.75mm filament is assumed. If you are not getting acceptable results by using the
|
|
||||||
* 'correct' numbers, you can scale this number up or down a little bit to change the amount
|
|
||||||
* of filament that is being extruded during the printing of the various lines on the bed.
|
|
||||||
*
|
|
||||||
* K Keep-On Keep the heaters turned on at the end of the command.
|
|
||||||
*
|
|
||||||
* L # Layer Layer height. (Height of nozzle above bed) If not specified .20mm will be used.
|
|
||||||
*
|
|
||||||
* O # Ooooze How much your nozzle will Ooooze filament while getting in position to print. This
|
|
||||||
* is over kill, but using this parameter will let you get the very first 'circle' perfect
|
|
||||||
* so you have a trophy to peel off of the bed and hang up to show how perfectly you have your
|
|
||||||
* Mesh calibrated. If not specified, a filament length of .3mm is assumed.
|
|
||||||
*
|
|
||||||
* P # Prime Prime the nozzle with specified length of filament. If this parameter is not
|
|
||||||
* given, no prime action will take place. If the parameter specifies an amount, that much
|
|
||||||
* will be purged before continuing. If no amount is specified the command will start
|
|
||||||
* purging filament until the user provides an LCD Click and then it will continue with
|
|
||||||
* printing the Mesh. You can carefully remove the spent filament with a needle nose
|
|
||||||
* pliers while holding the LCD Click wheel in a depressed state. If you do not have
|
|
||||||
* an LCD, you must specify a value if you use P.
|
|
||||||
*
|
|
||||||
* Q # Multiplier Retraction Multiplier. Normally not needed. Retraction defaults to 1.0mm and
|
|
||||||
* un-retraction is at 1.2mm These numbers will be scaled by the specified amount
|
|
||||||
*
|
|
||||||
* R # Repeat Prints the number of patterns given as a parameter, starting at the current location.
|
|
||||||
* If a parameter isn't given, every point will be printed unless G26 is interrupted.
|
|
||||||
* This works the same way that the UBL G29 P4 R parameter works.
|
|
||||||
*
|
|
||||||
* NOTE: If you do not have an LCD, you -must- specify R. This is to ensure that you are
|
|
||||||
* aware that there's some risk associated with printing without the ability to abort in
|
|
||||||
* cases where mesh point Z value may be inaccurate. As above, if you do not include a
|
|
||||||
* parameter, every point will be printed.
|
|
||||||
*
|
|
||||||
* S # Nozzle Used to control the size of nozzle diameter. If not specified, a .4mm nozzle is assumed.
|
|
||||||
*
|
|
||||||
* U # Random Randomize the order that the circles are drawn on the bed. The search for the closest
|
|
||||||
* undrawn cicle is still done. But the distance to the location for each circle has a
|
|
||||||
* random number of the size specified added to it. Specifying S50 will give an interesting
|
|
||||||
* deviation from the normal behaviour on a 10 x 10 Mesh.
|
|
||||||
*
|
|
||||||
* X # X Coord. Specify the starting location of the drawing activity.
|
|
||||||
*
|
|
||||||
* Y # Y Coord. Specify the starting location of the drawing activity.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// External references
|
|
||||||
|
|
||||||
extern Planner planner;
|
|
||||||
|
|
||||||
// Private functions
|
|
||||||
|
|
||||||
static uint16_t circle_flags[16], horizontal_mesh_line_flags[16], vertical_mesh_line_flags[16];
|
|
||||||
float g26_e_axis_feedrate = 0.025,
|
|
||||||
random_deviation = 0.0;
|
|
||||||
|
|
||||||
static bool g26_retracted = false; // Track the retracted state of the nozzle so mismatched
|
|
||||||
// retracts/recovers won't result in a bad state.
|
|
||||||
|
|
||||||
static float g26_extrusion_multiplier,
|
|
||||||
g26_retraction_multiplier,
|
|
||||||
g26_layer_height,
|
|
||||||
g26_prime_length,
|
|
||||||
g26_x_pos, g26_y_pos;
|
|
||||||
|
|
||||||
static int16_t g26_bed_temp,
|
|
||||||
g26_hotend_temp;
|
|
||||||
|
|
||||||
static int8_t g26_prime_flag;
|
|
||||||
|
|
||||||
#if ENABLED(ULTIPANEL)
|
|
||||||
|
|
||||||
/**
|
|
||||||
* If the LCD is clicked, cancel, wait for release, return true
|
|
||||||
*/
|
|
||||||
bool user_canceled() {
|
|
||||||
if (!is_lcd_clicked()) return false; // Return if the button isn't pressed
|
|
||||||
lcd_setstatusPGM(PSTR("Mesh Validation Stopped."), 99);
|
|
||||||
#if ENABLED(ULTIPANEL)
|
|
||||||
lcd_quick_feedback(true);
|
|
||||||
#endif
|
|
||||||
wait_for_release();
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool exit_from_g26() {
|
|
||||||
lcd_setstatusPGM(PSTR("Leaving G26"), -1);
|
|
||||||
wait_for_release();
|
|
||||||
return G26_ERR;
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
void G26_line_to_destination(const float &feed_rate) {
|
|
||||||
const float save_feedrate = feedrate_mm_s;
|
|
||||||
feedrate_mm_s = feed_rate;
|
|
||||||
prepare_move_to_destination(); // will ultimately call ubl.line_to_destination_cartesian or ubl.prepare_linear_move_to for UBL_SEGMENTED
|
|
||||||
feedrate_mm_s = save_feedrate;
|
|
||||||
}
|
|
||||||
|
|
||||||
void move_to(const float &rx, const float &ry, const float &z, const float &e_delta) {
|
|
||||||
float feed_value;
|
|
||||||
static float last_z = -999.99;
|
|
||||||
|
|
||||||
bool has_xy_component = (rx != current_position[X_AXIS] || ry != current_position[Y_AXIS]); // Check if X or Y is involved in the movement.
|
|
||||||
|
|
||||||
if (z != last_z) {
|
|
||||||
last_z = z;
|
|
||||||
feed_value = planner.max_feedrate_mm_s[Z_AXIS]/(3.0); // Base the feed rate off of the configured Z_AXIS feed rate
|
|
||||||
|
|
||||||
destination[X_AXIS] = current_position[X_AXIS];
|
|
||||||
destination[Y_AXIS] = current_position[Y_AXIS];
|
|
||||||
destination[Z_AXIS] = z; // We know the last_z==z or we wouldn't be in this block of code.
|
|
||||||
destination[E_CART] = current_position[E_CART];
|
|
||||||
|
|
||||||
G26_line_to_destination(feed_value);
|
|
||||||
set_destination_from_current();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Check if X or Y is involved in the movement.
|
|
||||||
// Yes: a 'normal' movement. No: a retract() or recover()
|
|
||||||
feed_value = has_xy_component ? PLANNER_XY_FEEDRATE() / 10.0 : planner.max_feedrate_mm_s[E_AXIS] / 1.5;
|
|
||||||
|
|
||||||
if (g26_debug_flag) SERIAL_ECHOLNPAIR("in move_to() feed_value for XY:", feed_value);
|
|
||||||
|
|
||||||
destination[X_AXIS] = rx;
|
|
||||||
destination[Y_AXIS] = ry;
|
|
||||||
destination[E_CART] += e_delta;
|
|
||||||
|
|
||||||
G26_line_to_destination(feed_value);
|
|
||||||
set_destination_from_current();
|
|
||||||
}
|
|
||||||
|
|
||||||
FORCE_INLINE void move_to(const float where[XYZE], const float &de) { move_to(where[X_AXIS], where[Y_AXIS], where[Z_AXIS], de); }
|
|
||||||
|
|
||||||
void retract_filament(const float where[XYZE]) {
|
|
||||||
if (!g26_retracted) { // Only retract if we are not already retracted!
|
|
||||||
g26_retracted = true;
|
|
||||||
move_to(where, -1.0 * g26_retraction_multiplier);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void recover_filament(const float where[XYZE]) {
|
|
||||||
if (g26_retracted) { // Only un-retract if we are retracted.
|
|
||||||
move_to(where, 1.2 * g26_retraction_multiplier);
|
|
||||||
g26_retracted = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Prime the nozzle if needed. Return true on error.
|
|
||||||
*/
|
|
||||||
inline bool prime_nozzle() {
|
|
||||||
|
|
||||||
#if ENABLED(ULTIPANEL)
|
|
||||||
float Total_Prime = 0.0;
|
|
||||||
|
|
||||||
if (g26_prime_flag == -1) { // The user wants to control how much filament gets purged
|
|
||||||
|
|
||||||
lcd_external_control = true;
|
|
||||||
lcd_setstatusPGM(PSTR("User-Controlled Prime"), 99);
|
|
||||||
lcd_chirp();
|
|
||||||
|
|
||||||
set_destination_from_current();
|
|
||||||
|
|
||||||
recover_filament(destination); // Make sure G26 doesn't think the filament is retracted().
|
|
||||||
|
|
||||||
while (!is_lcd_clicked()) {
|
|
||||||
lcd_chirp();
|
|
||||||
destination[E_CART] += 0.25;
|
|
||||||
#ifdef PREVENT_LENGTHY_EXTRUDE
|
|
||||||
Total_Prime += 0.25;
|
|
||||||
if (Total_Prime >= EXTRUDE_MAXLENGTH) return G26_ERR;
|
|
||||||
#endif
|
|
||||||
G26_line_to_destination(planner.max_feedrate_mm_s[E_AXIS] / 15.0);
|
|
||||||
set_destination_from_current();
|
|
||||||
planner.synchronize(); // Without this synchronize, the purge is more consistent,
|
|
||||||
// but because the planner has a buffer, we won't be able
|
|
||||||
// to stop as quickly. So we put up with the less smooth
|
|
||||||
// action to give the user a more responsive 'Stop'.
|
|
||||||
|
|
||||||
SERIAL_FLUSH(); // Prevent host M105 buffer overrun.
|
|
||||||
}
|
|
||||||
|
|
||||||
wait_for_release();
|
|
||||||
|
|
||||||
lcd_setstatusPGM(PSTR("Done Priming"), 99);
|
|
||||||
lcd_quick_feedback(true);
|
|
||||||
lcd_external_control = false;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
#endif
|
|
||||||
{
|
|
||||||
#if ENABLED(ULTRA_LCD)
|
|
||||||
lcd_setstatusPGM(PSTR("Fixed Length Prime."), 99);
|
|
||||||
lcd_quick_feedback(true);
|
|
||||||
#endif
|
|
||||||
set_destination_from_current();
|
|
||||||
destination[E_CART] += g26_prime_length;
|
|
||||||
G26_line_to_destination(planner.max_feedrate_mm_s[E_AXIS] / 15.0);
|
|
||||||
set_destination_from_current();
|
|
||||||
retract_filament(destination);
|
|
||||||
}
|
|
||||||
|
|
||||||
return G26_OK;
|
|
||||||
}
|
|
||||||
|
|
||||||
mesh_index_pair find_closest_circle_to_print(const float &X, const float &Y) {
|
|
||||||
float closest = 99999.99;
|
|
||||||
mesh_index_pair return_val;
|
|
||||||
|
|
||||||
return_val.x_index = return_val.y_index = -1;
|
|
||||||
|
|
||||||
for (uint8_t i = 0; i < GRID_MAX_POINTS_X; i++) {
|
|
||||||
for (uint8_t j = 0; j < GRID_MAX_POINTS_Y; j++) {
|
|
||||||
if (!is_bitmap_set(circle_flags, i, j)) {
|
|
||||||
const float mx = _GET_MESH_X(i), // We found a circle that needs to be printed
|
|
||||||
my = _GET_MESH_Y(j);
|
|
||||||
|
|
||||||
// Get the distance to this intersection
|
|
||||||
float f = HYPOT(X - mx, Y - my);
|
|
||||||
|
|
||||||
// It is possible that we are being called with the values
|
|
||||||
// to let us find the closest circle to the start position.
|
|
||||||
// But if this is not the case, add a small weighting to the
|
|
||||||
// distance calculation to help it choose a better place to continue.
|
|
||||||
f += HYPOT(g26_x_pos - mx, g26_y_pos - my) / 15.0;
|
|
||||||
|
|
||||||
// Add in the specified amount of Random Noise to our search
|
|
||||||
if (random_deviation > 1.0)
|
|
||||||
f += random(0.0, random_deviation);
|
|
||||||
|
|
||||||
if (f < closest) {
|
|
||||||
closest = f; // We found a closer location that is still
|
|
||||||
return_val.x_index = i; // un-printed --- save the data for it
|
|
||||||
return_val.y_index = j;
|
|
||||||
return_val.distance = closest;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
bitmap_set(circle_flags, return_val.x_index, return_val.y_index); // Mark this location as done.
|
|
||||||
return return_val;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* print_line_from_here_to_there() takes two cartesian coordinates and draws a line from one
|
|
||||||
* to the other. But there are really three sets of coordinates involved. The first coordinate
|
|
||||||
* is the present location of the nozzle. We don't necessarily want to print from this location.
|
|
||||||
* We first need to move the nozzle to the start of line segment where we want to print. Once
|
|
||||||
* there, we can use the two coordinates supplied to draw the line.
|
|
||||||
*
|
|
||||||
* Note: Although we assume the first set of coordinates is the start of the line and the second
|
|
||||||
* set of coordinates is the end of the line, it does not always work out that way. This function
|
|
||||||
* optimizes the movement to minimize the travel distance before it can start printing. This saves
|
|
||||||
* a lot of time and eliminates a lot of nonsensical movement of the nozzle. However, it does
|
|
||||||
* cause a lot of very little short retracement of th nozzle when it draws the very first line
|
|
||||||
* segment of a 'circle'. The time this requires is very short and is easily saved by the other
|
|
||||||
* cases where the optimization comes into play.
|
|
||||||
*/
|
|
||||||
void print_line_from_here_to_there(const float &sx, const float &sy, const float &sz, const float &ex, const float &ey, const float &ez) {
|
|
||||||
const float dx_s = current_position[X_AXIS] - sx, // find our distance from the start of the actual line segment
|
|
||||||
dy_s = current_position[Y_AXIS] - sy,
|
|
||||||
dist_start = HYPOT2(dx_s, dy_s), // We don't need to do a sqrt(), we can compare the distance^2
|
|
||||||
// to save computation time
|
|
||||||
dx_e = current_position[X_AXIS] - ex, // find our distance from the end of the actual line segment
|
|
||||||
dy_e = current_position[Y_AXIS] - ey,
|
|
||||||
dist_end = HYPOT2(dx_e, dy_e),
|
|
||||||
|
|
||||||
line_length = HYPOT(ex - sx, ey - sy);
|
|
||||||
|
|
||||||
// If the end point of the line is closer to the nozzle, flip the direction,
|
|
||||||
// moving from the end to the start. On very small lines the optimization isn't worth it.
|
|
||||||
if (dist_end < dist_start && (INTERSECTION_CIRCLE_RADIUS) < ABS(line_length))
|
|
||||||
return print_line_from_here_to_there(ex, ey, ez, sx, sy, sz);
|
|
||||||
|
|
||||||
// Decide whether to retract & bump
|
|
||||||
|
|
||||||
if (dist_start > 2.0) {
|
|
||||||
retract_filament(destination);
|
|
||||||
//todo: parameterize the bump height with a define
|
|
||||||
move_to(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS] + 0.500, 0.0); // Z bump to minimize scraping
|
|
||||||
move_to(sx, sy, sz + 0.500, 0.0); // Get to the starting point with no extrusion while bumped
|
|
||||||
}
|
|
||||||
|
|
||||||
move_to(sx, sy, sz, 0.0); // Get to the starting point with no extrusion / un-Z bump
|
|
||||||
|
|
||||||
const float e_pos_delta = line_length * g26_e_axis_feedrate * g26_extrusion_multiplier;
|
|
||||||
|
|
||||||
recover_filament(destination);
|
|
||||||
move_to(ex, ey, ez, e_pos_delta); // Get to the ending point with an appropriate amount of extrusion
|
|
||||||
}
|
|
||||||
|
|
||||||
inline bool look_for_lines_to_connect() {
|
|
||||||
float sx, sy, ex, ey;
|
|
||||||
|
|
||||||
for (uint8_t i = 0; i < GRID_MAX_POINTS_X; i++) {
|
|
||||||
for (uint8_t j = 0; j < GRID_MAX_POINTS_Y; j++) {
|
|
||||||
|
|
||||||
#if ENABLED(ULTIPANEL)
|
|
||||||
if (user_canceled()) return true; // Check if the user wants to stop the Mesh Validation
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (i < GRID_MAX_POINTS_X) { // We can't connect to anything to the right than GRID_MAX_POINTS_X.
|
|
||||||
// This is already a half circle because we are at the edge of the bed.
|
|
||||||
|
|
||||||
if (is_bitmap_set(circle_flags, i, j) && is_bitmap_set(circle_flags, i + 1, j)) { // check if we can do a line to the left
|
|
||||||
if (!is_bitmap_set(horizontal_mesh_line_flags, i, j)) {
|
|
||||||
|
|
||||||
//
|
|
||||||
// We found two circles that need a horizontal line to connect them
|
|
||||||
// Print it!
|
|
||||||
//
|
|
||||||
sx = _GET_MESH_X( i ) + (INTERSECTION_CIRCLE_RADIUS - (CROSSHAIRS_SIZE)); // right edge
|
|
||||||
ex = _GET_MESH_X(i + 1) - (INTERSECTION_CIRCLE_RADIUS - (CROSSHAIRS_SIZE)); // left edge
|
|
||||||
|
|
||||||
sx = constrain(sx, X_MIN_POS + 1, X_MAX_POS - 1);
|
|
||||||
sy = ey = constrain(_GET_MESH_Y(j), Y_MIN_POS + 1, Y_MAX_POS - 1);
|
|
||||||
ex = constrain(ex, X_MIN_POS + 1, X_MAX_POS - 1);
|
|
||||||
|
|
||||||
if (position_is_reachable(sx, sy) && position_is_reachable(ex, ey)) {
|
|
||||||
|
|
||||||
if (g26_debug_flag) {
|
|
||||||
SERIAL_ECHOPAIR(" Connecting with horizontal line (sx=", sx);
|
|
||||||
SERIAL_ECHOPAIR(", sy=", sy);
|
|
||||||
SERIAL_ECHOPAIR(") -> (ex=", ex);
|
|
||||||
SERIAL_ECHOPAIR(", ey=", ey);
|
|
||||||
SERIAL_CHAR(')');
|
|
||||||
SERIAL_EOL();
|
|
||||||
//debug_current_and_destination(PSTR("Connecting horizontal line."));
|
|
||||||
}
|
|
||||||
print_line_from_here_to_there(sx, sy, g26_layer_height, ex, ey, g26_layer_height);
|
|
||||||
}
|
|
||||||
bitmap_set(horizontal_mesh_line_flags, i, j); // Mark it as done so we don't do it again, even if we skipped it
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (j < GRID_MAX_POINTS_Y) { // We can't connect to anything further back than GRID_MAX_POINTS_Y.
|
|
||||||
// This is already a half circle because we are at the edge of the bed.
|
|
||||||
|
|
||||||
if (is_bitmap_set(circle_flags, i, j) && is_bitmap_set(circle_flags, i, j + 1)) { // check if we can do a line straight down
|
|
||||||
if (!is_bitmap_set( vertical_mesh_line_flags, i, j)) {
|
|
||||||
//
|
|
||||||
// We found two circles that need a vertical line to connect them
|
|
||||||
// Print it!
|
|
||||||
//
|
|
||||||
sy = _GET_MESH_Y( j ) + (INTERSECTION_CIRCLE_RADIUS - (CROSSHAIRS_SIZE)); // top edge
|
|
||||||
ey = _GET_MESH_Y(j + 1) - (INTERSECTION_CIRCLE_RADIUS - (CROSSHAIRS_SIZE)); // bottom edge
|
|
||||||
|
|
||||||
sx = ex = constrain(_GET_MESH_X(i), X_MIN_POS + 1, X_MAX_POS - 1);
|
|
||||||
sy = constrain(sy, Y_MIN_POS + 1, Y_MAX_POS - 1);
|
|
||||||
ey = constrain(ey, Y_MIN_POS + 1, Y_MAX_POS - 1);
|
|
||||||
|
|
||||||
if (position_is_reachable(sx, sy) && position_is_reachable(ex, ey)) {
|
|
||||||
|
|
||||||
if (g26_debug_flag) {
|
|
||||||
SERIAL_ECHOPAIR(" Connecting with vertical line (sx=", sx);
|
|
||||||
SERIAL_ECHOPAIR(", sy=", sy);
|
|
||||||
SERIAL_ECHOPAIR(") -> (ex=", ex);
|
|
||||||
SERIAL_ECHOPAIR(", ey=", ey);
|
|
||||||
SERIAL_CHAR(')');
|
|
||||||
SERIAL_EOL();
|
|
||||||
|
|
||||||
#if ENABLED(AUTO_BED_LEVELING_UBL)
|
|
||||||
debug_current_and_destination(PSTR("Connecting vertical line."));
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
print_line_from_here_to_there(sx, sy, g26_layer_height, ex, ey, g26_layer_height);
|
|
||||||
}
|
|
||||||
bitmap_set(vertical_mesh_line_flags, i, j); // Mark it as done so we don't do it again, even if skipped
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Turn on the bed and nozzle heat and
|
|
||||||
* wait for them to get up to temperature.
|
|
||||||
*/
|
|
||||||
inline bool turn_on_heaters() {
|
|
||||||
millis_t next = millis() + 5000UL;
|
|
||||||
#if HAS_HEATED_BED
|
|
||||||
#if ENABLED(ULTRA_LCD)
|
|
||||||
if (g26_bed_temp > 25) {
|
|
||||||
lcd_setstatusPGM(PSTR("G26 Heating Bed."), 99);
|
|
||||||
lcd_quick_feedback(true);
|
|
||||||
#if ENABLED(ULTIPANEL)
|
|
||||||
lcd_external_control = true;
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
thermalManager.setTargetBed(g26_bed_temp);
|
|
||||||
while (ABS(thermalManager.degBed() - g26_bed_temp) > 3) {
|
|
||||||
|
|
||||||
#if ENABLED(ULTIPANEL)
|
|
||||||
if (is_lcd_clicked()) return exit_from_g26();
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (ELAPSED(millis(), next)) {
|
|
||||||
next = millis() + 5000UL;
|
|
||||||
thermalManager.print_heaterstates();
|
|
||||||
SERIAL_EOL();
|
|
||||||
}
|
|
||||||
idle();
|
|
||||||
SERIAL_FLUSH(); // Prevent host M105 buffer overrun.
|
|
||||||
}
|
|
||||||
#if ENABLED(ULTRA_LCD)
|
|
||||||
}
|
|
||||||
lcd_setstatusPGM(PSTR("G26 Heating Nozzle."), 99);
|
|
||||||
lcd_quick_feedback(true);
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Start heating the nozzle and wait for it to reach temperature.
|
|
||||||
thermalManager.setTargetHotend(g26_hotend_temp, 0);
|
|
||||||
while (ABS(thermalManager.degHotend(0) - g26_hotend_temp) > 3) {
|
|
||||||
|
|
||||||
#if ENABLED(ULTIPANEL)
|
|
||||||
if (is_lcd_clicked()) return exit_from_g26();
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (ELAPSED(millis(), next)) {
|
|
||||||
next = millis() + 5000UL;
|
|
||||||
thermalManager.print_heaterstates();
|
|
||||||
SERIAL_EOL();
|
|
||||||
}
|
|
||||||
idle();
|
|
||||||
|
|
||||||
SERIAL_FLUSH(); // Prevent host M105 buffer overrun.
|
|
||||||
}
|
|
||||||
#if ENABLED(ULTRA_LCD)
|
|
||||||
lcd_reset_status();
|
|
||||||
lcd_quick_feedback(true);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
return G26_OK;
|
|
||||||
}
|
|
||||||
|
|
||||||
float valid_trig_angle(float d) {
|
|
||||||
while (d > 360.0) d -= 360.0;
|
|
||||||
while (d < 0.0) d += 360.0;
|
|
||||||
return d;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* G26: Mesh Validation Pattern generation.
|
|
||||||
*
|
|
||||||
* Used to interactively edit the mesh by placing the
|
|
||||||
* nozzle in a problem area and doing a G29 P4 R command.
|
|
||||||
*
|
|
||||||
* Parameters:
|
|
||||||
*
|
|
||||||
* B Bed Temperature
|
|
||||||
* C Continue from the Closest mesh point
|
|
||||||
* D Disable leveling before starting
|
|
||||||
* F Filament diameter
|
|
||||||
* H Hotend Temperature
|
|
||||||
* K Keep heaters on when completed
|
|
||||||
* L Layer Height
|
|
||||||
* O Ooze extrusion length
|
|
||||||
* P Prime length
|
|
||||||
* Q Retraction multiplier
|
|
||||||
* R Repetitions (number of grid points)
|
|
||||||
* S Nozzle Size (diameter) in mm
|
|
||||||
* U Random deviation (50 if no value given)
|
|
||||||
* X X position
|
|
||||||
* Y Y position
|
|
||||||
*/
|
|
||||||
void gcode_G26() {
|
|
||||||
SERIAL_ECHOLNPGM("G26 command started. Waiting for heater(s).");
|
|
||||||
|
|
||||||
// Don't allow Mesh Validation without homing first,
|
|
||||||
// or if the parameter parsing did not go OK, abort
|
|
||||||
if (axis_unhomed_error()) return;
|
|
||||||
|
|
||||||
g26_extrusion_multiplier = EXTRUSION_MULTIPLIER;
|
|
||||||
g26_retraction_multiplier = RETRACTION_MULTIPLIER;
|
|
||||||
g26_layer_height = MESH_TEST_LAYER_HEIGHT;
|
|
||||||
g26_prime_length = PRIME_LENGTH;
|
|
||||||
g26_bed_temp = MESH_TEST_BED_TEMP;
|
|
||||||
g26_hotend_temp = MESH_TEST_HOTEND_TEMP;
|
|
||||||
g26_prime_flag = 0;
|
|
||||||
|
|
||||||
float g26_nozzle = MESH_TEST_NOZZLE_SIZE,
|
|
||||||
g26_filament_diameter = DEFAULT_NOMINAL_FILAMENT_DIA,
|
|
||||||
g26_ooze_amount = parser.linearval('O', OOZE_AMOUNT);
|
|
||||||
|
|
||||||
bool g26_continue_with_closest = parser.boolval('C'),
|
|
||||||
g26_keep_heaters_on = parser.boolval('K');
|
|
||||||
|
|
||||||
if (parser.seenval('B')) {
|
|
||||||
g26_bed_temp = parser.value_celsius();
|
|
||||||
if (g26_bed_temp && !WITHIN(g26_bed_temp, 40, 140)) {
|
|
||||||
SERIAL_PROTOCOLLNPGM("?Specified bed temperature not plausible (40-140C).");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (parser.seenval('L')) {
|
|
||||||
g26_layer_height = parser.value_linear_units();
|
|
||||||
if (!WITHIN(g26_layer_height, 0.0, 2.0)) {
|
|
||||||
SERIAL_PROTOCOLLNPGM("?Specified layer height not plausible.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (parser.seen('Q')) {
|
|
||||||
if (parser.has_value()) {
|
|
||||||
g26_retraction_multiplier = parser.value_float();
|
|
||||||
if (!WITHIN(g26_retraction_multiplier, 0.05, 15.0)) {
|
|
||||||
SERIAL_PROTOCOLLNPGM("?Specified Retraction Multiplier not plausible.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
SERIAL_PROTOCOLLNPGM("?Retraction Multiplier must be specified.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (parser.seenval('S')) {
|
|
||||||
g26_nozzle = parser.value_float();
|
|
||||||
if (!WITHIN(g26_nozzle, 0.1, 1.0)) {
|
|
||||||
SERIAL_PROTOCOLLNPGM("?Specified nozzle size not plausible.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (parser.seen('P')) {
|
|
||||||
if (!parser.has_value()) {
|
|
||||||
#if ENABLED(ULTIPANEL)
|
|
||||||
g26_prime_flag = -1;
|
|
||||||
#else
|
|
||||||
SERIAL_PROTOCOLLNPGM("?Prime length must be specified when not using an LCD.");
|
|
||||||
return;
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
g26_prime_flag++;
|
|
||||||
g26_prime_length = parser.value_linear_units();
|
|
||||||
if (!WITHIN(g26_prime_length, 0.0, 25.0)) {
|
|
||||||
SERIAL_PROTOCOLLNPGM("?Specified prime length not plausible.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (parser.seenval('F')) {
|
|
||||||
g26_filament_diameter = parser.value_linear_units();
|
|
||||||
if (!WITHIN(g26_filament_diameter, 1.0, 4.0)) {
|
|
||||||
SERIAL_PROTOCOLLNPGM("?Specified filament size not plausible.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
g26_extrusion_multiplier *= sq(1.75) / sq(g26_filament_diameter); // If we aren't using 1.75mm filament, we need to
|
|
||||||
// scale up or down the length needed to get the
|
|
||||||
// same volume of filament
|
|
||||||
|
|
||||||
g26_extrusion_multiplier *= g26_filament_diameter * sq(g26_nozzle) / sq(0.3); // Scale up by nozzle size
|
|
||||||
|
|
||||||
if (parser.seenval('H')) {
|
|
||||||
g26_hotend_temp = parser.value_celsius();
|
|
||||||
if (!WITHIN(g26_hotend_temp, 165, 280)) {
|
|
||||||
SERIAL_PROTOCOLLNPGM("?Specified nozzle temperature not plausible.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (parser.seen('U')) {
|
|
||||||
randomSeed(millis());
|
|
||||||
// This setting will persist for the next G26
|
|
||||||
random_deviation = parser.has_value() ? parser.value_float() : 50.0;
|
|
||||||
}
|
|
||||||
|
|
||||||
int16_t g26_repeats;
|
|
||||||
#if ENABLED(ULTIPANEL)
|
|
||||||
g26_repeats = parser.intval('R', GRID_MAX_POINTS + 1);
|
|
||||||
#else
|
|
||||||
if (!parser.seen('R')) {
|
|
||||||
SERIAL_PROTOCOLLNPGM("?(R)epeat must be specified when not using an LCD.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
g26_repeats = parser.has_value() ? parser.value_int() : GRID_MAX_POINTS + 1;
|
|
||||||
#endif
|
|
||||||
if (g26_repeats < 1) {
|
|
||||||
SERIAL_PROTOCOLLNPGM("?(R)epeat value not plausible; must be at least 1.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
g26_x_pos = parser.seenval('X') ? RAW_X_POSITION(parser.value_linear_units()) : current_position[X_AXIS];
|
|
||||||
g26_y_pos = parser.seenval('Y') ? RAW_Y_POSITION(parser.value_linear_units()) : current_position[Y_AXIS];
|
|
||||||
if (!position_is_reachable(g26_x_pos, g26_y_pos)) {
|
|
||||||
SERIAL_PROTOCOLLNPGM("?Specified X,Y coordinate out of bounds.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Wait until all parameters are verified before altering the state!
|
|
||||||
*/
|
|
||||||
set_bed_leveling_enabled(!parser.seen('D'));
|
|
||||||
|
|
||||||
if (current_position[Z_AXIS] < Z_CLEARANCE_BETWEEN_PROBES) {
|
|
||||||
do_blocking_move_to_z(Z_CLEARANCE_BETWEEN_PROBES);
|
|
||||||
set_current_from_destination();
|
|
||||||
}
|
|
||||||
|
|
||||||
if (turn_on_heaters() != G26_OK) goto LEAVE;
|
|
||||||
|
|
||||||
current_position[E_CART] = 0.0;
|
|
||||||
sync_plan_position_e();
|
|
||||||
|
|
||||||
if (g26_prime_flag && prime_nozzle() != G26_OK) goto LEAVE;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Bed is preheated
|
|
||||||
*
|
|
||||||
* Nozzle is at temperature
|
|
||||||
*
|
|
||||||
* Filament is primed!
|
|
||||||
*
|
|
||||||
* It's "Show Time" !!!
|
|
||||||
*/
|
|
||||||
|
|
||||||
ZERO(circle_flags);
|
|
||||||
ZERO(horizontal_mesh_line_flags);
|
|
||||||
ZERO(vertical_mesh_line_flags);
|
|
||||||
|
|
||||||
// Move nozzle to the specified height for the first layer
|
|
||||||
set_destination_from_current();
|
|
||||||
destination[Z_AXIS] = g26_layer_height;
|
|
||||||
move_to(destination, 0.0);
|
|
||||||
move_to(destination, g26_ooze_amount);
|
|
||||||
|
|
||||||
#if ENABLED(ULTIPANEL)
|
|
||||||
lcd_external_control = true;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//debug_current_and_destination(PSTR("Starting G26 Mesh Validation Pattern."));
|
|
||||||
|
|
||||||
#if DISABLED(ARC_SUPPORT)
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Pre-generate radius offset values at 30 degree intervals to reduce CPU load.
|
|
||||||
*/
|
|
||||||
#define A_INT 30
|
|
||||||
#define _ANGS (360 / A_INT)
|
|
||||||
#define A_CNT (_ANGS / 2)
|
|
||||||
#define _IND(A) ((A + _ANGS * 8) % _ANGS)
|
|
||||||
#define _COS(A) (trig_table[_IND(A) % A_CNT] * (_IND(A) >= A_CNT ? -1 : 1))
|
|
||||||
#define _SIN(A) (-_COS((A + A_CNT / 2) % _ANGS))
|
|
||||||
#if A_CNT & 1
|
|
||||||
#error "A_CNT must be a positive value. Please change A_INT."
|
|
||||||
#endif
|
|
||||||
float trig_table[A_CNT];
|
|
||||||
for (uint8_t i = 0; i < A_CNT; i++)
|
|
||||||
trig_table[i] = INTERSECTION_CIRCLE_RADIUS * cos(RADIANS(i * A_INT));
|
|
||||||
|
|
||||||
#endif // !ARC_SUPPORT
|
|
||||||
|
|
||||||
mesh_index_pair location;
|
|
||||||
do {
|
|
||||||
location = g26_continue_with_closest
|
|
||||||
? find_closest_circle_to_print(current_position[X_AXIS], current_position[Y_AXIS])
|
|
||||||
: find_closest_circle_to_print(g26_x_pos, g26_y_pos); // Find the closest Mesh Intersection to where we are now.
|
|
||||||
|
|
||||||
if (location.x_index >= 0 && location.y_index >= 0) {
|
|
||||||
const float circle_x = _GET_MESH_X(location.x_index),
|
|
||||||
circle_y = _GET_MESH_Y(location.y_index);
|
|
||||||
|
|
||||||
// If this mesh location is outside the printable_radius, skip it.
|
|
||||||
if (!position_is_reachable(circle_x, circle_y)) continue;
|
|
||||||
|
|
||||||
// Determine where to start and end the circle,
|
|
||||||
// which is always drawn counter-clockwise.
|
|
||||||
const uint8_t xi = location.x_index, yi = location.y_index;
|
|
||||||
const bool f = yi == 0, r = xi >= GRID_MAX_POINTS_X - 1, b = yi >= GRID_MAX_POINTS_Y - 1;
|
|
||||||
|
|
||||||
#if ENABLED(ARC_SUPPORT)
|
|
||||||
|
|
||||||
#define ARC_LENGTH(quarters) (INTERSECTION_CIRCLE_RADIUS * M_PI * (quarters) / 2)
|
|
||||||
float sx = circle_x + INTERSECTION_CIRCLE_RADIUS, // default to full circle
|
|
||||||
ex = circle_x + INTERSECTION_CIRCLE_RADIUS,
|
|
||||||
sy = circle_y, ey = circle_y,
|
|
||||||
arc_length = ARC_LENGTH(4);
|
|
||||||
|
|
||||||
// Figure out where to start and end the arc - we always print counterclockwise
|
|
||||||
if (xi == 0) { // left edge
|
|
||||||
sx = f ? circle_x + INTERSECTION_CIRCLE_RADIUS : circle_x;
|
|
||||||
ex = b ? circle_x + INTERSECTION_CIRCLE_RADIUS : circle_x;
|
|
||||||
sy = f ? circle_y : circle_y - INTERSECTION_CIRCLE_RADIUS;
|
|
||||||
ey = b ? circle_y : circle_y + INTERSECTION_CIRCLE_RADIUS;
|
|
||||||
arc_length = (f || b) ? ARC_LENGTH(1) : ARC_LENGTH(2);
|
|
||||||
}
|
|
||||||
else if (r) { // right edge
|
|
||||||
sx = b ? circle_x - INTERSECTION_CIRCLE_RADIUS : circle_x;
|
|
||||||
ex = f ? circle_x - INTERSECTION_CIRCLE_RADIUS : circle_x;
|
|
||||||
sy = b ? circle_y : circle_y + INTERSECTION_CIRCLE_RADIUS;
|
|
||||||
ey = f ? circle_y : circle_y - INTERSECTION_CIRCLE_RADIUS;
|
|
||||||
arc_length = (f || b) ? ARC_LENGTH(1) : ARC_LENGTH(2);
|
|
||||||
}
|
|
||||||
else if (f) {
|
|
||||||
sx = circle_x + INTERSECTION_CIRCLE_RADIUS;
|
|
||||||
ex = circle_x - INTERSECTION_CIRCLE_RADIUS;
|
|
||||||
sy = ey = circle_y;
|
|
||||||
arc_length = ARC_LENGTH(2);
|
|
||||||
}
|
|
||||||
else if (b) {
|
|
||||||
sx = circle_x - INTERSECTION_CIRCLE_RADIUS;
|
|
||||||
ex = circle_x + INTERSECTION_CIRCLE_RADIUS;
|
|
||||||
sy = ey = circle_y;
|
|
||||||
arc_length = ARC_LENGTH(2);
|
|
||||||
}
|
|
||||||
const float arc_offset[2] = {
|
|
||||||
circle_x - sx,
|
|
||||||
circle_y - sy
|
|
||||||
};
|
|
||||||
|
|
||||||
const float dx_s = current_position[X_AXIS] - sx, // find our distance from the start of the actual circle
|
|
||||||
dy_s = current_position[Y_AXIS] - sy,
|
|
||||||
dist_start = HYPOT2(dx_s, dy_s);
|
|
||||||
const float endpoint[XYZE] = {
|
|
||||||
ex, ey,
|
|
||||||
g26_layer_height,
|
|
||||||
current_position[E_CART] + (arc_length * g26_e_axis_feedrate * g26_extrusion_multiplier)
|
|
||||||
};
|
|
||||||
|
|
||||||
if (dist_start > 2.0) {
|
|
||||||
retract_filament(destination);
|
|
||||||
//todo: parameterize the bump height with a define
|
|
||||||
move_to(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS] + 0.500, 0.0); // Z bump to minimize scraping
|
|
||||||
move_to(sx, sy, g26_layer_height + 0.500, 0.0); // Get to the starting point with no extrusion while bumped
|
|
||||||
}
|
|
||||||
|
|
||||||
move_to(sx, sy, g26_layer_height, 0.0); // Get to the starting point with no extrusion / un-Z bump
|
|
||||||
|
|
||||||
recover_filament(destination);
|
|
||||||
const float save_feedrate = feedrate_mm_s;
|
|
||||||
feedrate_mm_s = PLANNER_XY_FEEDRATE() / 10.0;
|
|
||||||
plan_arc(endpoint, arc_offset, false); // Draw a counter-clockwise arc
|
|
||||||
feedrate_mm_s = save_feedrate;
|
|
||||||
set_destination_from_current();
|
|
||||||
#if ENABLED(ULTIPANEL)
|
|
||||||
if (user_canceled()) goto LEAVE; // Check if the user wants to stop the Mesh Validation
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#else // !ARC_SUPPORT
|
|
||||||
|
|
||||||
int8_t start_ind = -2, end_ind = 9; // Assume a full circle (from 5:00 to 5:00)
|
|
||||||
if (xi == 0) { // Left edge? Just right half.
|
|
||||||
start_ind = f ? 0 : -3; // 03:00 to 12:00 for front-left
|
|
||||||
end_ind = b ? 0 : 2; // 06:00 to 03:00 for back-left
|
|
||||||
}
|
|
||||||
else if (r) { // Right edge? Just left half.
|
|
||||||
start_ind = b ? 6 : 3; // 12:00 to 09:00 for front-right
|
|
||||||
end_ind = f ? 5 : 8; // 09:00 to 06:00 for back-right
|
|
||||||
}
|
|
||||||
else if (f) { // Front edge? Just back half.
|
|
||||||
start_ind = 0; // 03:00
|
|
||||||
end_ind = 5; // 09:00
|
|
||||||
}
|
|
||||||
else if (b) { // Back edge? Just front half.
|
|
||||||
start_ind = 6; // 09:00
|
|
||||||
end_ind = 11; // 03:00
|
|
||||||
}
|
|
||||||
|
|
||||||
for (int8_t ind = start_ind; ind <= end_ind; ind++) {
|
|
||||||
|
|
||||||
#if ENABLED(ULTIPANEL)
|
|
||||||
if (user_canceled()) goto LEAVE; // Check if the user wants to stop the Mesh Validation
|
|
||||||
#endif
|
|
||||||
|
|
||||||
float rx = circle_x + _COS(ind), // For speed, these are now a lookup table entry
|
|
||||||
ry = circle_y + _SIN(ind),
|
|
||||||
xe = circle_x + _COS(ind + 1),
|
|
||||||
ye = circle_y + _SIN(ind + 1);
|
|
||||||
|
|
||||||
#if IS_KINEMATIC
|
|
||||||
// Check to make sure this segment is entirely on the bed, skip if not.
|
|
||||||
if (!position_is_reachable(rx, ry) || !position_is_reachable(xe, ye)) continue;
|
|
||||||
#else // not, we need to skip
|
|
||||||
rx = constrain(rx, X_MIN_POS + 1, X_MAX_POS - 1); // This keeps us from bumping the endstops
|
|
||||||
ry = constrain(ry, Y_MIN_POS + 1, Y_MAX_POS - 1);
|
|
||||||
xe = constrain(xe, X_MIN_POS + 1, X_MAX_POS - 1);
|
|
||||||
ye = constrain(ye, Y_MIN_POS + 1, Y_MAX_POS - 1);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
print_line_from_here_to_there(rx, ry, g26_layer_height, xe, ye, g26_layer_height);
|
|
||||||
SERIAL_FLUSH(); // Prevent host M105 buffer overrun.
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif // !ARC_SUPPORT
|
|
||||||
|
|
||||||
if (look_for_lines_to_connect()) goto LEAVE;
|
|
||||||
}
|
|
||||||
|
|
||||||
SERIAL_FLUSH(); // Prevent host M105 buffer overrun.
|
|
||||||
|
|
||||||
} while (--g26_repeats && location.x_index >= 0 && location.y_index >= 0);
|
|
||||||
|
|
||||||
LEAVE:
|
|
||||||
lcd_setstatusPGM(PSTR("Leaving G26"), -1);
|
|
||||||
|
|
||||||
retract_filament(destination);
|
|
||||||
destination[Z_AXIS] = Z_CLEARANCE_BETWEEN_PROBES;
|
|
||||||
|
|
||||||
//debug_current_and_destination(PSTR("ready to do Z-Raise."));
|
|
||||||
move_to(destination, 0); // Raise the nozzle
|
|
||||||
//debug_current_and_destination(PSTR("done doing Z-Raise."));
|
|
||||||
|
|
||||||
destination[X_AXIS] = g26_x_pos; // Move back to the starting position
|
|
||||||
destination[Y_AXIS] = g26_y_pos;
|
|
||||||
//destination[Z_AXIS] = Z_CLEARANCE_BETWEEN_PROBES; // Keep the nozzle where it is
|
|
||||||
|
|
||||||
move_to(destination, 0); // Move back to the starting position
|
|
||||||
//debug_current_and_destination(PSTR("done doing X/Y move."));
|
|
||||||
|
|
||||||
#if ENABLED(ULTIPANEL)
|
|
||||||
lcd_external_control = false; // Give back control of the LCD Panel!
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (!g26_keep_heaters_on) {
|
|
||||||
#if HAS_HEATED_BED
|
|
||||||
thermalManager.setTargetBed(0);
|
|
||||||
#endif
|
|
||||||
thermalManager.setTargetHotend(0, 0);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif // G26_MESH_VALIDATION
|
|
||||||
File diff suppressed because it is too large
Load Diff
765
Marlin/Makefile
765
Marlin/Makefile
File diff suppressed because it is too large
Load Diff
647
Marlin/Marlin.h
647
Marlin/Marlin.h
@@ -1,647 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#ifndef MARLIN_H
|
|
||||||
#define MARLIN_H
|
|
||||||
|
|
||||||
#include <math.h>
|
|
||||||
#include <stdio.h>
|
|
||||||
#include <stdlib.h>
|
|
||||||
#include <string.h>
|
|
||||||
#include <inttypes.h>
|
|
||||||
|
|
||||||
#include <util/delay.h>
|
|
||||||
#include <avr/eeprom.h>
|
|
||||||
#include <avr/interrupt.h>
|
|
||||||
|
|
||||||
#include "MarlinConfig.h"
|
|
||||||
|
|
||||||
#ifdef DEBUG_GCODE_PARSER
|
|
||||||
#include "parser.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include "enum.h"
|
|
||||||
#include "types.h"
|
|
||||||
#include "fastio.h"
|
|
||||||
#include "utility.h"
|
|
||||||
#include "serial.h"
|
|
||||||
|
|
||||||
void idle(
|
|
||||||
#if ENABLED(ADVANCED_PAUSE_FEATURE)
|
|
||||||
bool no_stepper_sleep = false // pass true to keep steppers from disabling on timeout
|
|
||||||
#endif
|
|
||||||
);
|
|
||||||
|
|
||||||
void manage_inactivity(const bool ignore_stepper_queue=false);
|
|
||||||
|
|
||||||
extern const char axis_codes[XYZE];
|
|
||||||
|
|
||||||
#if ENABLED(DUAL_X_CARRIAGE) || ENABLED(DUAL_NOZZLE_DUPLICATION_MODE)
|
|
||||||
extern bool extruder_duplication_enabled;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if HAS_X2_ENABLE
|
|
||||||
#define enable_X() do{ X_ENABLE_WRITE( X_ENABLE_ON); X2_ENABLE_WRITE( X_ENABLE_ON); }while(0)
|
|
||||||
#define disable_X() do{ X_ENABLE_WRITE(!X_ENABLE_ON); X2_ENABLE_WRITE(!X_ENABLE_ON); CBI(axis_known_position, X_AXIS); }while(0)
|
|
||||||
#elif HAS_X_ENABLE
|
|
||||||
#define enable_X() X_ENABLE_WRITE( X_ENABLE_ON)
|
|
||||||
#define disable_X() do{ X_ENABLE_WRITE(!X_ENABLE_ON); CBI(axis_known_position, X_AXIS); }while(0)
|
|
||||||
#else
|
|
||||||
#define enable_X() NOOP
|
|
||||||
#define disable_X() NOOP
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if HAS_Y2_ENABLE
|
|
||||||
#define enable_Y() do{ Y_ENABLE_WRITE( Y_ENABLE_ON); Y2_ENABLE_WRITE(Y_ENABLE_ON); }while(0)
|
|
||||||
#define disable_Y() do{ Y_ENABLE_WRITE(!Y_ENABLE_ON); Y2_ENABLE_WRITE(!Y_ENABLE_ON); CBI(axis_known_position, Y_AXIS); }while(0)
|
|
||||||
#elif HAS_Y_ENABLE
|
|
||||||
#define enable_Y() Y_ENABLE_WRITE( Y_ENABLE_ON)
|
|
||||||
#define disable_Y() do{ Y_ENABLE_WRITE(!Y_ENABLE_ON); CBI(axis_known_position, Y_AXIS); }while(0)
|
|
||||||
#else
|
|
||||||
#define enable_Y() NOOP
|
|
||||||
#define disable_Y() NOOP
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if HAS_Z2_ENABLE
|
|
||||||
#define enable_Z() do{ Z_ENABLE_WRITE( Z_ENABLE_ON); Z2_ENABLE_WRITE(Z_ENABLE_ON); }while(0)
|
|
||||||
#define disable_Z() do{ Z_ENABLE_WRITE(!Z_ENABLE_ON); Z2_ENABLE_WRITE(!Z_ENABLE_ON); CBI(axis_known_position, Z_AXIS); }while(0)
|
|
||||||
#elif HAS_Z_ENABLE
|
|
||||||
#define enable_Z() Z_ENABLE_WRITE( Z_ENABLE_ON)
|
|
||||||
#define disable_Z() do{ Z_ENABLE_WRITE(!Z_ENABLE_ON); CBI(axis_known_position, Z_AXIS); }while(0)
|
|
||||||
#else
|
|
||||||
#define enable_Z() NOOP
|
|
||||||
#define disable_Z() NOOP
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(MIXING_EXTRUDER)
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Mixing steppers synchronize their enable (and direction) together
|
|
||||||
*/
|
|
||||||
#if MIXING_STEPPERS > 4
|
|
||||||
#define enable_E0() { E0_ENABLE_WRITE( E_ENABLE_ON); E1_ENABLE_WRITE( E_ENABLE_ON); E2_ENABLE_WRITE( E_ENABLE_ON); E3_ENABLE_WRITE( E_ENABLE_ON); E4_ENABLE_WRITE( E_ENABLE_ON); }
|
|
||||||
#define disable_E0() { E0_ENABLE_WRITE(!E_ENABLE_ON); E1_ENABLE_WRITE(!E_ENABLE_ON); E2_ENABLE_WRITE(!E_ENABLE_ON); E3_ENABLE_WRITE(!E_ENABLE_ON); E4_ENABLE_WRITE(!E_ENABLE_ON); }
|
|
||||||
#elif MIXING_STEPPERS > 3
|
|
||||||
#define enable_E0() { E0_ENABLE_WRITE( E_ENABLE_ON); E1_ENABLE_WRITE( E_ENABLE_ON); E2_ENABLE_WRITE( E_ENABLE_ON); E3_ENABLE_WRITE( E_ENABLE_ON); }
|
|
||||||
#define disable_E0() { E0_ENABLE_WRITE(!E_ENABLE_ON); E1_ENABLE_WRITE(!E_ENABLE_ON); E2_ENABLE_WRITE(!E_ENABLE_ON); E3_ENABLE_WRITE(!E_ENABLE_ON); }
|
|
||||||
#elif MIXING_STEPPERS > 2
|
|
||||||
#define enable_E0() { E0_ENABLE_WRITE( E_ENABLE_ON); E1_ENABLE_WRITE( E_ENABLE_ON); E2_ENABLE_WRITE( E_ENABLE_ON); }
|
|
||||||
#define disable_E0() { E0_ENABLE_WRITE(!E_ENABLE_ON); E1_ENABLE_WRITE(!E_ENABLE_ON); E2_ENABLE_WRITE(!E_ENABLE_ON); }
|
|
||||||
#else
|
|
||||||
#define enable_E0() { E0_ENABLE_WRITE( E_ENABLE_ON); E1_ENABLE_WRITE( E_ENABLE_ON); }
|
|
||||||
#define disable_E0() { E0_ENABLE_WRITE(!E_ENABLE_ON); E1_ENABLE_WRITE(!E_ENABLE_ON); }
|
|
||||||
#endif
|
|
||||||
#define enable_E1() NOOP
|
|
||||||
#define disable_E1() NOOP
|
|
||||||
#define enable_E2() NOOP
|
|
||||||
#define disable_E2() NOOP
|
|
||||||
#define enable_E3() NOOP
|
|
||||||
#define disable_E3() NOOP
|
|
||||||
#define enable_E4() NOOP
|
|
||||||
#define disable_E4() NOOP
|
|
||||||
|
|
||||||
#else // !MIXING_EXTRUDER
|
|
||||||
|
|
||||||
#if HAS_E0_ENABLE
|
|
||||||
#define enable_E0() E0_ENABLE_WRITE( E_ENABLE_ON)
|
|
||||||
#define disable_E0() E0_ENABLE_WRITE(!E_ENABLE_ON)
|
|
||||||
#else
|
|
||||||
#define enable_E0() NOOP
|
|
||||||
#define disable_E0() NOOP
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if E_STEPPERS > 1 && HAS_E1_ENABLE
|
|
||||||
#define enable_E1() E1_ENABLE_WRITE( E_ENABLE_ON)
|
|
||||||
#define disable_E1() E1_ENABLE_WRITE(!E_ENABLE_ON)
|
|
||||||
#else
|
|
||||||
#define enable_E1() NOOP
|
|
||||||
#define disable_E1() NOOP
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if E_STEPPERS > 2 && HAS_E2_ENABLE
|
|
||||||
#define enable_E2() E2_ENABLE_WRITE( E_ENABLE_ON)
|
|
||||||
#define disable_E2() E2_ENABLE_WRITE(!E_ENABLE_ON)
|
|
||||||
#else
|
|
||||||
#define enable_E2() NOOP
|
|
||||||
#define disable_E2() NOOP
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if E_STEPPERS > 3 && HAS_E3_ENABLE
|
|
||||||
#define enable_E3() E3_ENABLE_WRITE( E_ENABLE_ON)
|
|
||||||
#define disable_E3() E3_ENABLE_WRITE(!E_ENABLE_ON)
|
|
||||||
#else
|
|
||||||
#define enable_E3() NOOP
|
|
||||||
#define disable_E3() NOOP
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if E_STEPPERS > 4 && HAS_E4_ENABLE
|
|
||||||
#define enable_E4() E4_ENABLE_WRITE( E_ENABLE_ON)
|
|
||||||
#define disable_E4() E4_ENABLE_WRITE(!E_ENABLE_ON)
|
|
||||||
#else
|
|
||||||
#define enable_E4() NOOP
|
|
||||||
#define disable_E4() NOOP
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif // !MIXING_EXTRUDER
|
|
||||||
|
|
||||||
#if ENABLED(HANGPRINTER)
|
|
||||||
|
|
||||||
#define enable_A() enable_X()
|
|
||||||
#define enable_B() enable_Y()
|
|
||||||
#define enable_C() enable_Z()
|
|
||||||
#define __D_ENABLE(p) E##p##_ENABLE_WRITE(E_ENABLE_ON)
|
|
||||||
#define _D_ENABLE(p) __D_ENABLE(p)
|
|
||||||
#define enable_D() _D_ENABLE(EXTRUDERS)
|
|
||||||
|
|
||||||
// Don't allow any axes to be disabled
|
|
||||||
#undef disable_X
|
|
||||||
#undef disable_Y
|
|
||||||
#undef disable_Z
|
|
||||||
#define disable_X() NOOP
|
|
||||||
#define disable_Y() NOOP
|
|
||||||
#define disable_Z() NOOP
|
|
||||||
|
|
||||||
#if EXTRUDERS >= 1
|
|
||||||
#undef disable_E1
|
|
||||||
#define disable_E1() NOOP
|
|
||||||
#if EXTRUDERS >= 2
|
|
||||||
#undef disable_E2
|
|
||||||
#define disable_E2() NOOP
|
|
||||||
#if EXTRUDERS >= 3
|
|
||||||
#undef disable_E3
|
|
||||||
#define disable_E3() NOOP
|
|
||||||
#if EXTRUDERS >= 4
|
|
||||||
#undef disable_E4
|
|
||||||
#define disable_E4() NOOP
|
|
||||||
#endif // EXTRUDERS >= 4
|
|
||||||
#endif // EXTRUDERS >= 3
|
|
||||||
#endif // EXTRUDERS >= 2
|
|
||||||
#endif // EXTRUDERS >= 1
|
|
||||||
|
|
||||||
#endif // HANGPRINTER
|
|
||||||
|
|
||||||
#if ENABLED(G38_PROBE_TARGET)
|
|
||||||
extern bool G38_move, // flag to tell the interrupt handler that a G38 command is being run
|
|
||||||
G38_endstop_hit; // flag from the interrupt handler to indicate if the endstop went active
|
|
||||||
#endif
|
|
||||||
|
|
||||||
void enable_all_steppers();
|
|
||||||
void disable_e_stepper(const uint8_t e);
|
|
||||||
void disable_e_steppers();
|
|
||||||
void disable_all_steppers();
|
|
||||||
|
|
||||||
void sync_plan_position();
|
|
||||||
void sync_plan_position_e();
|
|
||||||
|
|
||||||
#if IS_KINEMATIC
|
|
||||||
void sync_plan_position_kinematic();
|
|
||||||
#define SYNC_PLAN_POSITION_KINEMATIC() sync_plan_position_kinematic()
|
|
||||||
#else
|
|
||||||
#define SYNC_PLAN_POSITION_KINEMATIC() sync_plan_position()
|
|
||||||
#endif
|
|
||||||
|
|
||||||
void flush_and_request_resend();
|
|
||||||
void ok_to_send();
|
|
||||||
|
|
||||||
void kill(const char*);
|
|
||||||
|
|
||||||
void quickstop_stepper();
|
|
||||||
|
|
||||||
extern uint8_t marlin_debug_flags;
|
|
||||||
#define DEBUGGING(F) (marlin_debug_flags & (DEBUG_## F))
|
|
||||||
|
|
||||||
extern bool Running;
|
|
||||||
inline bool IsRunning() { return Running; }
|
|
||||||
inline bool IsStopped() { return !Running; }
|
|
||||||
|
|
||||||
bool enqueue_and_echo_command(const char* cmd); // Add a single command to the end of the buffer. Return false on failure.
|
|
||||||
void enqueue_and_echo_commands_P(const char * const cmd); // Set one or more commands to be prioritized over the next Serial/SD command.
|
|
||||||
void clear_command_queue();
|
|
||||||
|
|
||||||
#if ENABLED(M100_FREE_MEMORY_WATCHER) || ENABLED(POWER_LOSS_RECOVERY)
|
|
||||||
extern char command_queue[BUFSIZE][MAX_CMD_SIZE];
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define HAS_LCD_QUEUE_NOW (ENABLED(MALYAN_LCD) || (ENABLED(ULTIPANEL) && (ENABLED(AUTO_BED_LEVELING_UBL) || ENABLED(PID_AUTOTUNE_MENU) || ENABLED(ADVANCED_PAUSE_FEATURE))))
|
|
||||||
#define HAS_QUEUE_NOW (ENABLED(SDSUPPORT) || HAS_LCD_QUEUE_NOW)
|
|
||||||
#if HAS_QUEUE_NOW
|
|
||||||
// Return only when commands are actually enqueued
|
|
||||||
void enqueue_and_echo_command_now(const char* cmd);
|
|
||||||
#if HAS_LCD_QUEUE_NOW
|
|
||||||
void enqueue_and_echo_commands_now_P(const char * const cmd);
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
extern millis_t previous_move_ms;
|
|
||||||
inline void reset_stepper_timeout() { previous_move_ms = millis(); }
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Feedrate scaling and conversion
|
|
||||||
*/
|
|
||||||
extern float feedrate_mm_s;
|
|
||||||
extern int16_t feedrate_percentage;
|
|
||||||
|
|
||||||
#define MMS_SCALED(MM_S) ((MM_S)*feedrate_percentage*0.01f)
|
|
||||||
|
|
||||||
extern bool axis_relative_modes[XYZE];
|
|
||||||
|
|
||||||
extern uint8_t axis_homed, axis_known_position;
|
|
||||||
|
|
||||||
constexpr uint8_t xyz_bits = _BV(X_AXIS) | _BV(Y_AXIS) | _BV(Z_AXIS);
|
|
||||||
FORCE_INLINE bool all_axes_homed() { return (axis_homed & xyz_bits) == xyz_bits; }
|
|
||||||
FORCE_INLINE bool all_axes_known() { return (axis_known_position & xyz_bits) == xyz_bits; }
|
|
||||||
|
|
||||||
extern volatile bool wait_for_heatup;
|
|
||||||
|
|
||||||
#if HAS_RESUME_CONTINUE
|
|
||||||
extern volatile bool wait_for_user;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if HAS_AUTO_REPORTING || ENABLED(HOST_KEEPALIVE_FEATURE)
|
|
||||||
extern bool suspend_auto_report;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
extern float current_position[XYZE], destination[XYZE];
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Workspace offsets
|
|
||||||
*/
|
|
||||||
#if HAS_WORKSPACE_OFFSET
|
|
||||||
#if HAS_HOME_OFFSET
|
|
||||||
extern float home_offset[XYZ];
|
|
||||||
#endif
|
|
||||||
#if HAS_POSITION_SHIFT
|
|
||||||
extern float position_shift[XYZ];
|
|
||||||
#endif
|
|
||||||
#if HAS_HOME_OFFSET && HAS_POSITION_SHIFT
|
|
||||||
extern float workspace_offset[XYZ];
|
|
||||||
#define WORKSPACE_OFFSET(AXIS) workspace_offset[AXIS]
|
|
||||||
#elif HAS_HOME_OFFSET
|
|
||||||
#define WORKSPACE_OFFSET(AXIS) home_offset[AXIS]
|
|
||||||
#elif HAS_POSITION_SHIFT
|
|
||||||
#define WORKSPACE_OFFSET(AXIS) position_shift[AXIS]
|
|
||||||
#endif
|
|
||||||
#define NATIVE_TO_LOGICAL(POS, AXIS) ((POS) + WORKSPACE_OFFSET(AXIS))
|
|
||||||
#define LOGICAL_TO_NATIVE(POS, AXIS) ((POS) - WORKSPACE_OFFSET(AXIS))
|
|
||||||
#else
|
|
||||||
#define NATIVE_TO_LOGICAL(POS, AXIS) (POS)
|
|
||||||
#define LOGICAL_TO_NATIVE(POS, AXIS) (POS)
|
|
||||||
#endif
|
|
||||||
#define LOGICAL_X_POSITION(POS) NATIVE_TO_LOGICAL(POS, X_AXIS)
|
|
||||||
#define LOGICAL_Y_POSITION(POS) NATIVE_TO_LOGICAL(POS, Y_AXIS)
|
|
||||||
#define LOGICAL_Z_POSITION(POS) NATIVE_TO_LOGICAL(POS, Z_AXIS)
|
|
||||||
#define RAW_X_POSITION(POS) LOGICAL_TO_NATIVE(POS, X_AXIS)
|
|
||||||
#define RAW_Y_POSITION(POS) LOGICAL_TO_NATIVE(POS, Y_AXIS)
|
|
||||||
#define RAW_Z_POSITION(POS) LOGICAL_TO_NATIVE(POS, Z_AXIS)
|
|
||||||
|
|
||||||
// Hotend Offsets
|
|
||||||
#if HOTENDS > 1
|
|
||||||
extern float hotend_offset[XYZ][HOTENDS];
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Software Endstops
|
|
||||||
extern float soft_endstop_min[XYZ], soft_endstop_max[XYZ];
|
|
||||||
|
|
||||||
#if HAS_SOFTWARE_ENDSTOPS
|
|
||||||
extern bool soft_endstops_enabled;
|
|
||||||
void clamp_to_software_endstops(float target[XYZ]);
|
|
||||||
#else
|
|
||||||
#define soft_endstops_enabled false
|
|
||||||
#define clamp_to_software_endstops(x) NOOP
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if HAS_WORKSPACE_OFFSET || ENABLED(DUAL_X_CARRIAGE)
|
|
||||||
void update_software_endstops(const AxisEnum axis);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define MAX_COORDINATE_SYSTEMS 9
|
|
||||||
#if ENABLED(CNC_COORDINATE_SYSTEMS)
|
|
||||||
extern float coordinate_system[MAX_COORDINATE_SYSTEMS][XYZ];
|
|
||||||
bool select_coordinate_system(const int8_t _new);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
void tool_change(const uint8_t tmp_extruder, const float fr_mm_s=0.0, bool no_move=false);
|
|
||||||
|
|
||||||
void home_all_axes();
|
|
||||||
|
|
||||||
void report_current_position();
|
|
||||||
|
|
||||||
#if IS_KINEMATIC
|
|
||||||
#if ENABLED(HANGPRINTER)
|
|
||||||
extern float line_lengths[ABCD];
|
|
||||||
#else
|
|
||||||
extern float delta[ABC];
|
|
||||||
#endif
|
|
||||||
void inverse_kinematics(const float raw[XYZ]);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(DELTA)
|
|
||||||
extern float delta_height,
|
|
||||||
delta_endstop_adj[ABC],
|
|
||||||
delta_radius,
|
|
||||||
delta_tower_angle_trim[ABC],
|
|
||||||
delta_tower[ABC][2],
|
|
||||||
delta_diagonal_rod,
|
|
||||||
delta_calibration_radius,
|
|
||||||
delta_diagonal_rod_2_tower[ABC],
|
|
||||||
delta_segments_per_second,
|
|
||||||
delta_clip_start_height;
|
|
||||||
|
|
||||||
void recalc_delta_settings();
|
|
||||||
float delta_safe_distance_from_top();
|
|
||||||
|
|
||||||
// Macro to obtain the Z position of an individual tower
|
|
||||||
#define DELTA_Z(V,T) V[Z_AXIS] + SQRT( \
|
|
||||||
delta_diagonal_rod_2_tower[T] - HYPOT2( \
|
|
||||||
delta_tower[T][X_AXIS] - V[X_AXIS], \
|
|
||||||
delta_tower[T][Y_AXIS] - V[Y_AXIS] \
|
|
||||||
) \
|
|
||||||
)
|
|
||||||
|
|
||||||
#define DELTA_IK(V) do { \
|
|
||||||
delta[A_AXIS] = DELTA_Z(V, A_AXIS); \
|
|
||||||
delta[B_AXIS] = DELTA_Z(V, B_AXIS); \
|
|
||||||
delta[C_AXIS] = DELTA_Z(V, C_AXIS); \
|
|
||||||
}while(0)
|
|
||||||
|
|
||||||
#elif ENABLED(HANGPRINTER)
|
|
||||||
|
|
||||||
// Don't collect anchor positions in array because there are no A_x, D_x or D_y
|
|
||||||
extern float anchor_A_y,
|
|
||||||
anchor_A_z,
|
|
||||||
anchor_B_x,
|
|
||||||
anchor_B_y,
|
|
||||||
anchor_B_z,
|
|
||||||
anchor_C_x,
|
|
||||||
anchor_C_y,
|
|
||||||
anchor_C_z,
|
|
||||||
anchor_D_z,
|
|
||||||
delta_segments_per_second,
|
|
||||||
line_lengths_origin[ABCD];
|
|
||||||
|
|
||||||
void recalc_hangprinter_settings();
|
|
||||||
|
|
||||||
#define HANGPRINTER_IK(V) do { \
|
|
||||||
line_lengths[A_AXIS] = SQRT(sq(anchor_A_z - V[Z_AXIS]) \
|
|
||||||
+ sq(anchor_A_y - V[Y_AXIS]) \
|
|
||||||
+ sq( V[X_AXIS])); \
|
|
||||||
line_lengths[B_AXIS] = SQRT(sq(anchor_B_z - V[Z_AXIS]) \
|
|
||||||
+ sq(anchor_B_y - V[Y_AXIS]) \
|
|
||||||
+ sq(anchor_B_x - V[X_AXIS])); \
|
|
||||||
line_lengths[C_AXIS] = SQRT(sq(anchor_C_z - V[Z_AXIS]) \
|
|
||||||
+ sq(anchor_C_y - V[Y_AXIS]) \
|
|
||||||
+ sq(anchor_C_x - V[X_AXIS])); \
|
|
||||||
line_lengths[D_AXIS] = SQRT(sq( V[X_AXIS]) \
|
|
||||||
+ sq( V[Y_AXIS]) \
|
|
||||||
+ sq(anchor_D_z - V[Z_AXIS])); \
|
|
||||||
}while(0)
|
|
||||||
|
|
||||||
// Inverse kinematics at origin
|
|
||||||
#define HANGPRINTER_IK_ORIGIN(LL) do { \
|
|
||||||
LL[A_AXIS] = SQRT(sq(anchor_A_z) \
|
|
||||||
+ sq(anchor_A_y)); \
|
|
||||||
LL[B_AXIS] = SQRT(sq(anchor_B_z) \
|
|
||||||
+ sq(anchor_B_y) \
|
|
||||||
+ sq(anchor_B_x)); \
|
|
||||||
LL[C_AXIS] = SQRT(sq(anchor_C_z) \
|
|
||||||
+ sq(anchor_C_y) \
|
|
||||||
+ sq(anchor_C_x)); \
|
|
||||||
LL[D_AXIS] = anchor_D_z; \
|
|
||||||
}while(0)
|
|
||||||
|
|
||||||
#elif IS_SCARA
|
|
||||||
void forward_kinematics_SCARA(const float &a, const float &b);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(G26_MESH_VALIDATION)
|
|
||||||
extern bool g26_debug_flag;
|
|
||||||
#elif ENABLED(AUTO_BED_LEVELING_UBL)
|
|
||||||
constexpr bool g26_debug_flag = false;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(AUTO_BED_LEVELING_BILINEAR)
|
|
||||||
#define _GET_MESH_X(I) (bilinear_start[X_AXIS] + (I) * bilinear_grid_spacing[X_AXIS])
|
|
||||||
#define _GET_MESH_Y(J) (bilinear_start[Y_AXIS] + (J) * bilinear_grid_spacing[Y_AXIS])
|
|
||||||
#elif ENABLED(AUTO_BED_LEVELING_UBL)
|
|
||||||
#define _GET_MESH_X(I) ubl.mesh_index_to_xpos(I)
|
|
||||||
#define _GET_MESH_Y(J) ubl.mesh_index_to_ypos(J)
|
|
||||||
#elif ENABLED(MESH_BED_LEVELING)
|
|
||||||
#define _GET_MESH_X(I) mbl.index_to_xpos[I]
|
|
||||||
#define _GET_MESH_Y(J) mbl.index_to_ypos[J]
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(AUTO_BED_LEVELING_BILINEAR)
|
|
||||||
extern int bilinear_grid_spacing[2], bilinear_start[2];
|
|
||||||
extern float bilinear_grid_factor[2],
|
|
||||||
z_values[GRID_MAX_POINTS_X][GRID_MAX_POINTS_Y];
|
|
||||||
float bilinear_z_offset(const float raw[XYZ]);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(MESH_BED_LEVELING)
|
|
||||||
typedef float (*element_2d_fn)(const uint8_t, const uint8_t);
|
|
||||||
void print_2d_array(const uint8_t sx, const uint8_t sy, const uint8_t precision, const element_2d_fn fn);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if HAS_LEVELING
|
|
||||||
bool leveling_is_valid();
|
|
||||||
void set_bed_leveling_enabled(const bool enable=true);
|
|
||||||
void reset_bed_level();
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(ENABLE_LEVELING_FADE_HEIGHT)
|
|
||||||
void set_z_fade_height(const float zfh, const bool do_report=true);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if HAS_BED_PROBE
|
|
||||||
extern float zprobe_zoffset;
|
|
||||||
bool set_probe_deployed(const bool deploy);
|
|
||||||
#ifdef Z_AFTER_PROBING
|
|
||||||
void move_z_after_probing();
|
|
||||||
#endif
|
|
||||||
enum ProbePtRaise : unsigned char {
|
|
||||||
PROBE_PT_NONE, // No raise or stow after run_z_probe
|
|
||||||
PROBE_PT_STOW, // Do a complete stow after run_z_probe
|
|
||||||
PROBE_PT_RAISE, // Raise to "between" clearance after run_z_probe
|
|
||||||
PROBE_PT_BIG_RAISE // Raise to big clearance after run_z_probe
|
|
||||||
};
|
|
||||||
float probe_pt(const float &rx, const float &ry, const ProbePtRaise raise_after=PROBE_PT_NONE, const uint8_t verbose_level=0, const bool probe_relative=true);
|
|
||||||
#define DEPLOY_PROBE() set_probe_deployed(true)
|
|
||||||
#define STOW_PROBE() set_probe_deployed(false)
|
|
||||||
#else
|
|
||||||
#define DEPLOY_PROBE()
|
|
||||||
#define STOW_PROBE()
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(HOST_KEEPALIVE_FEATURE)
|
|
||||||
extern MarlinBusyState busy_state;
|
|
||||||
#define KEEPALIVE_STATE(n) do{ busy_state = n; }while(0)
|
|
||||||
#else
|
|
||||||
#define KEEPALIVE_STATE(n) NOOP
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if FAN_COUNT > 0
|
|
||||||
extern int16_t fanSpeeds[FAN_COUNT];
|
|
||||||
#if ENABLED(EXTRA_FAN_SPEED)
|
|
||||||
extern int16_t old_fanSpeeds[FAN_COUNT],
|
|
||||||
new_fanSpeeds[FAN_COUNT];
|
|
||||||
#endif
|
|
||||||
#if ENABLED(PROBING_FANS_OFF)
|
|
||||||
extern bool fans_paused;
|
|
||||||
extern int16_t paused_fanSpeeds[FAN_COUNT];
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(USE_CONTROLLER_FAN)
|
|
||||||
extern int controllerFanSpeed;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(BARICUDA)
|
|
||||||
extern uint8_t baricuda_valve_pressure, baricuda_e_to_p_pressure;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(FILAMENT_WIDTH_SENSOR)
|
|
||||||
extern bool filament_sensor; // Flag that filament sensor readings should control extrusion
|
|
||||||
extern float filament_width_nominal, // Theoretical filament diameter i.e., 3.00 or 1.75
|
|
||||||
filament_width_meas; // Measured filament diameter
|
|
||||||
extern uint8_t meas_delay_cm; // Delay distance
|
|
||||||
extern int8_t measurement_delay[MAX_MEASUREMENT_DELAY + 1], // Ring buffer to delay measurement
|
|
||||||
filwidth_delay_index[2]; // Ring buffer indexes. Used by planner, temperature, and main code
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(ADVANCED_PAUSE_FEATURE)
|
|
||||||
extern int8_t did_pause_print;
|
|
||||||
extern AdvancedPauseMenuResponse advanced_pause_menu_response;
|
|
||||||
extern float filament_change_unload_length[EXTRUDERS],
|
|
||||||
filament_change_load_length[EXTRUDERS];
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if HAS_POWER_SWITCH
|
|
||||||
extern bool powersupply_on;
|
|
||||||
#define PSU_PIN_ON() do{ OUT_WRITE(PS_ON_PIN, PS_ON_AWAKE); powersupply_on = true; }while(0)
|
|
||||||
#define PSU_PIN_OFF() do{ OUT_WRITE(PS_ON_PIN, PS_ON_ASLEEP); powersupply_on = false; }while(0)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Handling multiple extruders pins
|
|
||||||
extern uint8_t active_extruder;
|
|
||||||
|
|
||||||
#if ENABLED(MIXING_EXTRUDER)
|
|
||||||
extern float mixing_factor[MIXING_STEPPERS];
|
|
||||||
#endif
|
|
||||||
|
|
||||||
inline void set_current_from_destination() { COPY(current_position, destination); }
|
|
||||||
inline void set_destination_from_current() { COPY(destination, current_position); }
|
|
||||||
void prepare_move_to_destination();
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Blocking movement and shorthand functions
|
|
||||||
*/
|
|
||||||
void do_blocking_move_to(const float rx, const float ry, const float rz, const float &fr_mm_s=0);
|
|
||||||
void do_blocking_move_to_x(const float &rx, const float &fr_mm_s=0);
|
|
||||||
void do_blocking_move_to_z(const float &rz, const float &fr_mm_s=0);
|
|
||||||
void do_blocking_move_to_xy(const float &rx, const float &ry, const float &fr_mm_s=0);
|
|
||||||
|
|
||||||
#if ENABLED(ARC_SUPPORT)
|
|
||||||
void plan_arc(const float(&cart)[XYZE], const float(&offset)[2], const bool clockwise);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define HAS_AXIS_UNHOMED_ERR ( \
|
|
||||||
ENABLED(Z_PROBE_ALLEN_KEY) \
|
|
||||||
|| ENABLED(Z_PROBE_SLED) \
|
|
||||||
|| HAS_PROBING_PROCEDURE \
|
|
||||||
|| HOTENDS > 1 \
|
|
||||||
|| ENABLED(NOZZLE_CLEAN_FEATURE) \
|
|
||||||
|| ENABLED(NOZZLE_PARK_FEATURE) \
|
|
||||||
|| (ENABLED(ADVANCED_PAUSE_FEATURE) && ENABLED(HOME_BEFORE_FILAMENT_CHANGE)) \
|
|
||||||
|| HAS_M206_COMMAND \
|
|
||||||
) || ENABLED(NO_MOTION_BEFORE_HOMING)
|
|
||||||
|
|
||||||
#if HAS_AXIS_UNHOMED_ERR
|
|
||||||
bool axis_unhomed_error(const bool x=true, const bool y=true, const bool z=true);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
|
||||||
* position_is_reachable family of functions
|
|
||||||
*/
|
|
||||||
|
|
||||||
#if IS_KINEMATIC // (DELTA or SCARA)
|
|
||||||
|
|
||||||
#if IS_SCARA
|
|
||||||
extern const float L1, L2;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Return true if the given point is within the printable area
|
|
||||||
inline bool position_is_reachable(const float &rx, const float &ry, const float inset=0) {
|
|
||||||
#if ENABLED(DELTA)
|
|
||||||
return HYPOT2(rx, ry) <= sq(DELTA_PRINTABLE_RADIUS - inset);
|
|
||||||
#elif ENABLED(HANGPRINTER)
|
|
||||||
// TODO: This is over simplified. Hangprinter's build volume is _not_ cylindrical.
|
|
||||||
return HYPOT2(rx, ry) <= sq(HANGPRINTER_PRINTABLE_RADIUS - inset);
|
|
||||||
#elif IS_SCARA
|
|
||||||
const float R2 = HYPOT2(rx - SCARA_OFFSET_X, ry - SCARA_OFFSET_Y);
|
|
||||||
return (
|
|
||||||
R2 <= sq(L1 + L2) - inset
|
|
||||||
#if MIDDLE_DEAD_ZONE_R > 0
|
|
||||||
&& R2 >= sq(float(MIDDLE_DEAD_ZONE_R))
|
|
||||||
#endif
|
|
||||||
);
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
#if HAS_BED_PROBE
|
|
||||||
// Return true if the both nozzle and the probe can reach the given point.
|
|
||||||
// Note: This won't work on SCARA since the probe offset rotates with the arm.
|
|
||||||
inline bool position_is_reachable_by_probe(const float &rx, const float &ry) {
|
|
||||||
return position_is_reachable(rx - (X_PROBE_OFFSET_FROM_EXTRUDER), ry - (Y_PROBE_OFFSET_FROM_EXTRUDER))
|
|
||||||
&& position_is_reachable(rx, ry, ABS(MIN_PROBE_EDGE));
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#else // CARTESIAN
|
|
||||||
|
|
||||||
// Return true if the given position is within the machine bounds.
|
|
||||||
inline bool position_is_reachable(const float &rx, const float &ry) {
|
|
||||||
// Add 0.001 margin to deal with float imprecision
|
|
||||||
return WITHIN(rx, X_MIN_POS - 0.001f, X_MAX_POS + 0.001f)
|
|
||||||
&& WITHIN(ry, Y_MIN_POS - 0.001f, Y_MAX_POS + 0.001f);
|
|
||||||
}
|
|
||||||
|
|
||||||
#if HAS_BED_PROBE
|
|
||||||
/**
|
|
||||||
* Return whether the given position is within the bed, and whether the nozzle
|
|
||||||
* can reach the position required to put the probe at the given position.
|
|
||||||
*
|
|
||||||
* Example: For a probe offset of -10,+10, then for the probe to reach 0,0 the
|
|
||||||
* nozzle must be be able to reach +10,-10.
|
|
||||||
*/
|
|
||||||
inline bool position_is_reachable_by_probe(const float &rx, const float &ry) {
|
|
||||||
return position_is_reachable(rx - (X_PROBE_OFFSET_FROM_EXTRUDER), ry - (Y_PROBE_OFFSET_FROM_EXTRUDER))
|
|
||||||
&& WITHIN(rx, MIN_PROBE_X - 0.001f, MAX_PROBE_X + 0.001f)
|
|
||||||
&& WITHIN(ry, MIN_PROBE_Y - 0.001f, MAX_PROBE_Y + 0.001f);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif // CARTESIAN
|
|
||||||
|
|
||||||
#if !HAS_BED_PROBE
|
|
||||||
FORCE_INLINE bool position_is_reachable_by_probe(const float &rx, const float &ry) { return position_is_reachable(rx, ry); }
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif // MARLIN_H
|
|
||||||
@@ -3,17 +3,17 @@
|
|||||||
|
|
||||||
Marlin Firmware
|
Marlin Firmware
|
||||||
|
|
||||||
(c) 2011-2018 MarlinFirmware
|
(c) 2011-2019 MarlinFirmware
|
||||||
Portions of Marlin are (c) by their respective authors.
|
Portions of Marlin are (c) by their respective authors.
|
||||||
All code complies with GPLv2 and/or GPLv3
|
All code complies with GPLv2 and/or GPLv3
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
|
|
||||||
Greetings! Thank you for choosing Marlin as your 3D printer firmware.
|
Greetings! Thank you for choosing Marlin 2 as your 3D printer firmware.
|
||||||
|
|
||||||
To configure Marlin you must edit Configuration.h and Configuration_adv.h
|
To configure Marlin you must edit Configuration.h and Configuration_adv.h
|
||||||
located in the root 'Marlin' folder. Check the example_configurations folder to
|
located in the root 'Marlin' folder. Check the config/examples folder to see if
|
||||||
see if there's a more suitable starting-point for your specific hardware.
|
there's a more suitable starting-point for your specific hardware.
|
||||||
|
|
||||||
Before diving in, we recommend the following essential links:
|
Before diving in, we recommend the following essential links:
|
||||||
|
|
||||||
|
|||||||
@@ -1,184 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* MarlinSerial.h - Hardware serial library for Wiring
|
|
||||||
* Copyright (c) 2006 Nicholas Zambetti. All right reserved.
|
|
||||||
*
|
|
||||||
* Modified 28 September 2010 by Mark Sproul
|
|
||||||
* Modified 14 February 2016 by Andreas Hardtung (added tx buffer)
|
|
||||||
* Modified 01 October 2017 by Eduardo José Tagle (added XON/XOFF)
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef _MARLINSERIAL_H_
|
|
||||||
#define _MARLINSERIAL_H_
|
|
||||||
|
|
||||||
#include "MarlinConfig.h"
|
|
||||||
|
|
||||||
#ifndef SERIAL_PORT
|
|
||||||
#define SERIAL_PORT 0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// The presence of the UBRRH register is used to detect a UART.
|
|
||||||
#define UART_PRESENT(port) ((port == 0 && (defined(UBRRH) || defined(UBRR0H))) || \
|
|
||||||
(port == 1 && defined(UBRR1H)) || (port == 2 && defined(UBRR2H)) || \
|
|
||||||
(port == 3 && defined(UBRR3H)))
|
|
||||||
|
|
||||||
// These are macros to build serial port register names for the selected SERIAL_PORT (C preprocessor
|
|
||||||
// requires two levels of indirection to expand macro values properly)
|
|
||||||
#define SERIAL_REGNAME(registerbase,number,suffix) SERIAL_REGNAME_INTERNAL(registerbase,number,suffix)
|
|
||||||
#if SERIAL_PORT == 0 && (!defined(UBRR0H) || !defined(UDR0)) // use un-numbered registers if necessary
|
|
||||||
#define SERIAL_REGNAME_INTERNAL(registerbase,number,suffix) registerbase##suffix
|
|
||||||
#else
|
|
||||||
#define SERIAL_REGNAME_INTERNAL(registerbase,number,suffix) registerbase##number##suffix
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Registers used by MarlinSerial class (expanded depending on selected serial port)
|
|
||||||
#define M_UCSRxA SERIAL_REGNAME(UCSR,SERIAL_PORT,A) // defines M_UCSRxA to be UCSRnA where n is the serial port number
|
|
||||||
#define M_UCSRxB SERIAL_REGNAME(UCSR,SERIAL_PORT,B)
|
|
||||||
#define M_RXENx SERIAL_REGNAME(RXEN,SERIAL_PORT,)
|
|
||||||
#define M_TXENx SERIAL_REGNAME(TXEN,SERIAL_PORT,)
|
|
||||||
#define M_TXCx SERIAL_REGNAME(TXC,SERIAL_PORT,)
|
|
||||||
#define M_RXCIEx SERIAL_REGNAME(RXCIE,SERIAL_PORT,)
|
|
||||||
#define M_UDREx SERIAL_REGNAME(UDRE,SERIAL_PORT,)
|
|
||||||
#define M_FEx SERIAL_REGNAME(FE,SERIAL_PORT,)
|
|
||||||
#define M_DORx SERIAL_REGNAME(DOR,SERIAL_PORT,)
|
|
||||||
#define M_UPEx SERIAL_REGNAME(UPE,SERIAL_PORT,)
|
|
||||||
#define M_UDRIEx SERIAL_REGNAME(UDRIE,SERIAL_PORT,)
|
|
||||||
#define M_UDRx SERIAL_REGNAME(UDR,SERIAL_PORT,)
|
|
||||||
#define M_UBRRxH SERIAL_REGNAME(UBRR,SERIAL_PORT,H)
|
|
||||||
#define M_UBRRxL SERIAL_REGNAME(UBRR,SERIAL_PORT,L)
|
|
||||||
#define M_RXCx SERIAL_REGNAME(RXC,SERIAL_PORT,)
|
|
||||||
#define M_USARTx_RX_vect SERIAL_REGNAME(USART,SERIAL_PORT,_RX_vect)
|
|
||||||
#define M_U2Xx SERIAL_REGNAME(U2X,SERIAL_PORT,)
|
|
||||||
#define M_USARTx_UDRE_vect SERIAL_REGNAME(USART,SERIAL_PORT,_UDRE_vect)
|
|
||||||
|
|
||||||
#define DEC 10
|
|
||||||
#define HEX 16
|
|
||||||
#define OCT 8
|
|
||||||
#define BIN 2
|
|
||||||
#define BYTE 0
|
|
||||||
|
|
||||||
// Define constants and variables for buffering serial data.
|
|
||||||
// Use only 0 or powers of 2 greater than 1
|
|
||||||
// : [0, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, ...]
|
|
||||||
#ifndef RX_BUFFER_SIZE
|
|
||||||
#define RX_BUFFER_SIZE 128
|
|
||||||
#endif
|
|
||||||
// 256 is the max TX buffer limit due to uint8_t head and tail.
|
|
||||||
#ifndef TX_BUFFER_SIZE
|
|
||||||
#define TX_BUFFER_SIZE 32
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if USE_MARLINSERIAL
|
|
||||||
|
|
||||||
#if RX_BUFFER_SIZE > 256
|
|
||||||
typedef uint16_t ring_buffer_pos_t;
|
|
||||||
#else
|
|
||||||
typedef uint8_t ring_buffer_pos_t;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(SERIAL_STATS_DROPPED_RX)
|
|
||||||
extern uint8_t rx_dropped_bytes;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(SERIAL_STATS_RX_BUFFER_OVERRUNS)
|
|
||||||
extern uint8_t rx_buffer_overruns;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(SERIAL_STATS_RX_FRAMING_ERRORS)
|
|
||||||
extern uint8_t rx_framing_errors;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(SERIAL_STATS_MAX_RX_QUEUED)
|
|
||||||
extern ring_buffer_pos_t rx_max_enqueued;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
class MarlinSerial {
|
|
||||||
|
|
||||||
public:
|
|
||||||
MarlinSerial() {};
|
|
||||||
static void begin(const long);
|
|
||||||
static void end();
|
|
||||||
static int peek(void);
|
|
||||||
static int read(void);
|
|
||||||
static void flush(void);
|
|
||||||
static ring_buffer_pos_t available(void);
|
|
||||||
static void write(const uint8_t c);
|
|
||||||
static void flushTX(void);
|
|
||||||
|
|
||||||
#if ENABLED(SERIAL_STATS_DROPPED_RX)
|
|
||||||
FORCE_INLINE static uint32_t dropped() { return rx_dropped_bytes; }
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(SERIAL_STATS_RX_BUFFER_OVERRUNS)
|
|
||||||
FORCE_INLINE static uint32_t buffer_overruns() { return rx_buffer_overruns; }
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(SERIAL_STATS_RX_FRAMING_ERRORS)
|
|
||||||
FORCE_INLINE static uint32_t framing_errors() { return rx_framing_errors; }
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(SERIAL_STATS_MAX_RX_QUEUED)
|
|
||||||
FORCE_INLINE static ring_buffer_pos_t rxMaxEnqueued() { return rx_max_enqueued; }
|
|
||||||
#endif
|
|
||||||
|
|
||||||
FORCE_INLINE static void write(const char* str) { while (*str) write(*str++); }
|
|
||||||
FORCE_INLINE static void write(const uint8_t* buffer, size_t size) { while (size--) write(*buffer++); }
|
|
||||||
FORCE_INLINE static void print(const String& s) { for (int i = 0; i < (int)s.length(); i++) write(s[i]); }
|
|
||||||
FORCE_INLINE static void print(const char* str) { write(str); }
|
|
||||||
|
|
||||||
static void print(char, int = BYTE);
|
|
||||||
static void print(unsigned char, int = BYTE);
|
|
||||||
static void print(int, int = DEC);
|
|
||||||
static void print(unsigned int, int = DEC);
|
|
||||||
static void print(long, int = DEC);
|
|
||||||
static void print(unsigned long, int = DEC);
|
|
||||||
static void print(double, int = 2);
|
|
||||||
|
|
||||||
static void println(const String& s);
|
|
||||||
static void println(const char[]);
|
|
||||||
static void println(char, int = BYTE);
|
|
||||||
static void println(unsigned char, int = BYTE);
|
|
||||||
static void println(int, int = DEC);
|
|
||||||
static void println(unsigned int, int = DEC);
|
|
||||||
static void println(long, int = DEC);
|
|
||||||
static void println(unsigned long, int = DEC);
|
|
||||||
static void println(double, int = 2);
|
|
||||||
static void println(void);
|
|
||||||
operator bool() { return true; }
|
|
||||||
|
|
||||||
private:
|
|
||||||
static void printNumber(unsigned long, const uint8_t);
|
|
||||||
static void printFloat(double, uint8_t);
|
|
||||||
};
|
|
||||||
|
|
||||||
extern MarlinSerial customizedSerial;
|
|
||||||
|
|
||||||
#endif // USE_MARLINSERIAL
|
|
||||||
|
|
||||||
// Use the UART for Bluetooth in AT90USB configurations
|
|
||||||
#if !USE_MARLINSERIAL && ENABLED(BLUETOOTH)
|
|
||||||
extern HardwareSerial bluetoothSerial;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif // _MARLINSERIAL_H_
|
|
||||||
15558
Marlin/Marlin_main.cpp
15558
Marlin/Marlin_main.cpp
File diff suppressed because it is too large
Load Diff
1705
Marlin/SanityCheck.h
1705
Marlin/SanityCheck.h
File diff suppressed because it is too large
Load Diff
@@ -1,91 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Arduino SdFat Library
|
|
||||||
* Copyright (C) 2008 by William Greiman
|
|
||||||
*
|
|
||||||
* This file is part of the Arduino Sd2Card Library
|
|
||||||
*/
|
|
||||||
#include "MarlinConfig.h"
|
|
||||||
|
|
||||||
#if ENABLED(SDSUPPORT)
|
|
||||||
|
|
||||||
#include "SdFatUtil.h"
|
|
||||||
#include "serial.h"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Amount of free RAM
|
|
||||||
* \return The number of free bytes.
|
|
||||||
*/
|
|
||||||
#ifdef __arm__
|
|
||||||
extern "C" char* sbrk(int incr);
|
|
||||||
int SdFatUtil::FreeRam() {
|
|
||||||
char top;
|
|
||||||
return &top - reinterpret_cast<char*>(sbrk(0));
|
|
||||||
}
|
|
||||||
#else // __arm__
|
|
||||||
extern char* __brkval;
|
|
||||||
extern char __bss_end;
|
|
||||||
/**
|
|
||||||
* Amount of free RAM
|
|
||||||
* \return The number of free bytes.
|
|
||||||
*/
|
|
||||||
int SdFatUtil::FreeRam() {
|
|
||||||
char top;
|
|
||||||
return __brkval ? &top - __brkval : &top - &__bss_end;
|
|
||||||
}
|
|
||||||
#endif // __arm
|
|
||||||
|
|
||||||
/**
|
|
||||||
* %Print a string in flash memory.
|
|
||||||
*
|
|
||||||
* \param[in] pr Print object for output.
|
|
||||||
* \param[in] str Pointer to string stored in flash memory.
|
|
||||||
*/
|
|
||||||
void SdFatUtil::print_P(PGM_P str) {
|
|
||||||
for (uint8_t c; (c = pgm_read_byte(str)); str++) SERIAL_CHAR(c);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* %Print a string in flash memory followed by a CR/LF.
|
|
||||||
*
|
|
||||||
* \param[in] pr Print object for output.
|
|
||||||
* \param[in] str Pointer to string stored in flash memory.
|
|
||||||
*/
|
|
||||||
void SdFatUtil::println_P(PGM_P str) { print_P(str); SERIAL_EOL(); }
|
|
||||||
|
|
||||||
/**
|
|
||||||
* %Print a string in flash memory to Serial.
|
|
||||||
*
|
|
||||||
* \param[in] str Pointer to string stored in flash memory.
|
|
||||||
*/
|
|
||||||
void SdFatUtil::SerialPrint_P(PGM_P str) { print_P(str); }
|
|
||||||
|
|
||||||
/**
|
|
||||||
* %Print a string in flash memory to Serial followed by a CR/LF.
|
|
||||||
*
|
|
||||||
* \param[in] str Pointer to string stored in flash memory.
|
|
||||||
*/
|
|
||||||
void SdFatUtil::SerialPrintln_P(PGM_P str) { println_P(str); }
|
|
||||||
|
|
||||||
#endif // SDSUPPORT
|
|
||||||
112
Marlin/Version.h
112
Marlin/Version.h
@@ -1,9 +1,9 @@
|
|||||||
/**
|
/**
|
||||||
* Marlin 3D Printer Firmware
|
* Marlin 3D Printer Firmware
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
* Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
||||||
*
|
*
|
||||||
* Based on Sprinter and grbl.
|
* Based on Sprinter and grbl.
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
* Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm
|
||||||
*
|
*
|
||||||
* This program is free software: you can redistribute it and/or modify
|
* This program is free software: you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU General Public License as published by
|
* it under the terms of the GNU General Public License as published by
|
||||||
@@ -19,76 +19,58 @@
|
|||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
////////////////////////////
|
||||||
|
// VENDOR VERSION EXAMPLE //
|
||||||
|
////////////////////////////
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This file is the standard Marlin version identifier file, all fields can be
|
* Marlin release version identifier
|
||||||
* overriden by the ones defined on _Version.h by using the Configuration.h
|
|
||||||
* directive USE_AUTOMATIC_VERSIONING.
|
|
||||||
*/
|
*/
|
||||||
|
//#define SHORT_BUILD_VERSION "2.0.4"
|
||||||
|
|
||||||
#if ENABLED(USE_AUTOMATIC_VERSIONING)
|
/**
|
||||||
|
* Verbose version identifier which should contain a reference to the location
|
||||||
|
* from where the binary was downloaded or the source code was compiled.
|
||||||
|
*/
|
||||||
|
//#define DETAILED_BUILD_VERSION SHORT_BUILD_VERSION " (Github)"
|
||||||
|
|
||||||
#include "_Version.h"
|
/**
|
||||||
|
* The STRING_DISTRIBUTION_DATE represents when the binary file was built,
|
||||||
|
* here we define this default string as the date where the latest release
|
||||||
|
* version was tagged.
|
||||||
|
*/
|
||||||
|
//#define STRING_DISTRIBUTION_DATE "2020-01-31"
|
||||||
|
|
||||||
#else
|
/**
|
||||||
|
* Defines a generic printer name to be output to the LCD after booting Marlin.
|
||||||
|
*/
|
||||||
|
//#define MACHINE_NAME "3D Printer"
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Marlin release version identifier
|
* The SOURCE_CODE_URL is the location where users will find the Marlin Source
|
||||||
*/
|
* Code which is installed on the device. In most cases —unless the manufacturer
|
||||||
#define SHORT_BUILD_VERSION "1.1.9.2"
|
* has a distinct Github fork— the Source Code URL should just be the main
|
||||||
|
* Marlin repository.
|
||||||
|
*/
|
||||||
|
//#define SOURCE_CODE_URL "https://github.com/MarlinFirmware/Marlin"
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Verbose version identifier which should contain a reference to the location
|
* Default generic printer UUID.
|
||||||
* from where the binary was downloaded or the source code was compiled.
|
*/
|
||||||
*/
|
//#define DEFAULT_MACHINE_UUID "cede2a2f-41a2-4748-9b12-c55c62f367ff"
|
||||||
#define DETAILED_BUILD_VERSION SHORT_BUILD_VERSION " (Github)"
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The STRING_DISTRIBUTION_DATE represents when the binary file was built,
|
* The WEBSITE_URL is the location where users can get more information such as
|
||||||
* here we define this default string as the date where the latest release
|
* documentation about a specific Marlin release.
|
||||||
* version was tagged.
|
*/
|
||||||
*/
|
//#define WEBSITE_URL "http://marlinfw.org"
|
||||||
#define STRING_DISTRIBUTION_DATE "2023-07-18"
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Required minimum Configuration.h and Configuration_adv.h file versions.
|
* Set the vendor info the serial USB interface, if changable
|
||||||
*
|
* Currently only supported by DUE platform
|
||||||
* You must increment this version number for every significant change such as,
|
*/
|
||||||
* but not limited to: ADD, DELETE RENAME OR REPURPOSE any directive/option on
|
//#define USB_DEVICE_VENDOR_ID 0x0000
|
||||||
* the configuration files.
|
//#define USB_DEVICE_PRODUCT_ID 0x0000
|
||||||
*/
|
//#define USB_DEVICE_MANUFACTURE_NAME WEBSITE_URL
|
||||||
#define REQUIRED_CONFIGURATION_H_VERSION 010109
|
|
||||||
#define REQUIRED_CONFIGURATION_ADV_H_VERSION 010109
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The protocol for communication to the host. Protocol indicates communication
|
|
||||||
* standards such as the use of ASCII, "echo:" and "error:" line prefixes, etc.
|
|
||||||
* (Other behaviors are given by the firmware version and capabilities report.)
|
|
||||||
*/
|
|
||||||
#define PROTOCOL_VERSION "1.0"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Defines a generic printer name to be output to the LCD after booting Marlin.
|
|
||||||
*/
|
|
||||||
#define MACHINE_NAME "3D Printer"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The SOURCE_CODE_URL is the location where users will find the Marlin Source
|
|
||||||
* Code which is installed on the device. In most cases —unless the manufacturer
|
|
||||||
* has a distinct Github fork— the Source Code URL should just be the main
|
|
||||||
* Marlin repository.
|
|
||||||
*/
|
|
||||||
#define SOURCE_CODE_URL "https://github.com/MarlinFirmware/Marlin"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Default generic printer UUID.
|
|
||||||
*/
|
|
||||||
#define DEFAULT_MACHINE_UUID "cede2a2f-41a2-4748-9b12-c55c62f367ff"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The WEBSITE_URL is the location where users can get more information such as
|
|
||||||
* documentation about a specific Marlin release.
|
|
||||||
*/
|
|
||||||
#define WEBSITE_URL "http://marlinfw.org"
|
|
||||||
|
|
||||||
#endif // USE_AUTOMATIC_VERSIONING
|
|
||||||
|
|||||||
@@ -1,38 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016, 2017 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef _BITMAP_FLAGS_H_
|
|
||||||
#define _BITMAP_FLAGS_H_
|
|
||||||
|
|
||||||
#include "macros.h"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* These support functions allow the use of large bit arrays of flags that take very
|
|
||||||
* little RAM. Currently they are limited to being 16x16 in size. Changing the declaration
|
|
||||||
* to unsigned long will allow us to go to 32x32 if higher resolution meshes are needed
|
|
||||||
* in the future.
|
|
||||||
*/
|
|
||||||
FORCE_INLINE void bitmap_clear(uint16_t bits[16], const uint8_t x, const uint8_t y) { CBI(bits[y], x); }
|
|
||||||
FORCE_INLINE void bitmap_set(uint16_t bits[16], const uint8_t x, const uint8_t y) { SBI(bits[y], x); }
|
|
||||||
FORCE_INLINE bool is_bitmap_set(uint16_t bits[16], const uint8_t x, const uint8_t y) { return TEST(bits[y], x); }
|
|
||||||
|
|
||||||
#endif // _BITMAP_FLAGS_H_
|
|
||||||
162
Marlin/boards.h
162
Marlin/boards.h
@@ -1,162 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef BOARDS_H
|
|
||||||
#define BOARDS_H
|
|
||||||
|
|
||||||
#define BOARD_UNKNOWN -1
|
|
||||||
|
|
||||||
//
|
|
||||||
// RAMPS 1.3 / 1.4 - ATmega1280, ATmega2560
|
|
||||||
//
|
|
||||||
|
|
||||||
#define BOARD_RAMPS_OLD 3 // MEGA/RAMPS up to 1.2
|
|
||||||
|
|
||||||
#define BOARD_RAMPS_13_EFB 33 // RAMPS 1.3 (Power outputs: Hotend, Fan, Bed)
|
|
||||||
#define BOARD_RAMPS_13_EEB 34 // RAMPS 1.3 (Power outputs: Hotend0, Hotend1, Bed)
|
|
||||||
#define BOARD_RAMPS_13_EFF 35 // RAMPS 1.3 (Power outputs: Hotend, Fan0, Fan1)
|
|
||||||
#define BOARD_RAMPS_13_EEF 36 // RAMPS 1.3 (Power outputs: Hotend0, Hotend1, Fan)
|
|
||||||
#define BOARD_RAMPS_13_SF 38 // RAMPS 1.3 (Power outputs: Spindle, Controller Fan)
|
|
||||||
|
|
||||||
#define BOARD_RAMPS_14_EFB 43 // RAMPS 1.4 (Power outputs: Hotend, Fan, Bed)
|
|
||||||
#define BOARD_RAMPS_14_EEB 44 // RAMPS 1.4 (Power outputs: Hotend0, Hotend1, Bed)
|
|
||||||
#define BOARD_RAMPS_14_EFF 45 // RAMPS 1.4 (Power outputs: Hotend, Fan0, Fan1)
|
|
||||||
#define BOARD_RAMPS_14_EEF 46 // RAMPS 1.4 (Power outputs: Hotend0, Hotend1, Fan)
|
|
||||||
#define BOARD_RAMPS_14_SF 48 // RAMPS 1.4 (Power outputs: Spindle, Controller Fan)
|
|
||||||
|
|
||||||
#define BOARD_RAMPS_PLUS_EFB 143 // RAMPS Plus 3DYMY (Power outputs: Hotend, Fan, Bed)
|
|
||||||
#define BOARD_RAMPS_PLUS_EEB 144 // RAMPS Plus 3DYMY (Power outputs: Hotend0, Hotend1, Bed)
|
|
||||||
#define BOARD_RAMPS_PLUS_EFF 145 // RAMPS Plus 3DYMY (Power outputs: Hotend, Fan0, Fan1)
|
|
||||||
#define BOARD_RAMPS_PLUS_EEF 146 // RAMPS Plus 3DYMY (Power outputs: Hotend0, Hotend1, Fan)
|
|
||||||
#define BOARD_RAMPS_PLUS_SF 148 // RAMPS Plus 3DYMY (Power outputs: Spindle, Controller Fan)
|
|
||||||
|
|
||||||
//
|
|
||||||
// RAMPS Derivatives - ATmega1280, ATmega2560
|
|
||||||
//
|
|
||||||
|
|
||||||
#define BOARD_3DRAG 77 // 3Drag Controller
|
|
||||||
#define BOARD_K8200 78 // Velleman K8200 Controller (derived from 3Drag Controller)
|
|
||||||
#define BOARD_K8400 79 // Velleman K8400 Controller (derived from 3Drag Controller)
|
|
||||||
#define BOARD_BAM_DICE 401 // 2PrintBeta BAM&DICE with STK drivers
|
|
||||||
#define BOARD_BAM_DICE_DUE 402 // 2PrintBeta BAM&DICE Due with STK drivers
|
|
||||||
#define BOARD_MKS_BASE 40 // MKS BASE v1.0
|
|
||||||
#define BOARD_MKS_BASE_15 405 // MKS v1.5 with Allegro A4982 stepper drivers
|
|
||||||
#define BOARD_MKS_BASE_HEROIC 41 // MKS BASE 1.0 with Heroic HR4982 stepper drivers
|
|
||||||
#define BOARD_MKS_GEN_13 47 // MKS GEN v1.3 or 1.4
|
|
||||||
#define BOARD_MKS_GEN_L 53 // MKS GEN L
|
|
||||||
#define BOARD_MKS_GEN_L_V2 54 // MKS GEN L V2
|
|
||||||
#define BOARD_ZRIB_V20 504 // zrib V2.0 control board (Chinese knock off RAMPS replica)
|
|
||||||
#define BOARD_FELIX2 37 // Felix 2.0+ Electronics Board (RAMPS like)
|
|
||||||
#define BOARD_RIGIDBOARD 42 // Invent-A-Part RigidBoard
|
|
||||||
#define BOARD_RIGIDBOARD_V2 52 // Invent-A-Part RigidBoard V2
|
|
||||||
#define BOARD_SAINSMART_2IN1 49 // Sainsmart 2-in-1 board
|
|
||||||
#define BOARD_ULTIMAKER 7 // Ultimaker
|
|
||||||
#define BOARD_ULTIMAKER_OLD 71 // Ultimaker (Older electronics. Pre 1.5.4. This is rare)
|
|
||||||
#define BOARD_AZTEEG_X3 67 // Azteeg X3
|
|
||||||
#define BOARD_AZTEEG_X3_PRO 68 // Azteeg X3 Pro
|
|
||||||
#define BOARD_ULTIMAIN_2 72 // Ultimainboard 2.x (Uses TEMP_SENSOR 20)
|
|
||||||
#define BOARD_RUMBA 80 // Rumba
|
|
||||||
#define BOARD_BQ_ZUM_MEGA_3D 503 // bq ZUM Mega 3D
|
|
||||||
#define BOARD_MAKEBOARD_MINI 431 // MakeBoard Mini v2.1.2 is a control board sold by MicroMake
|
|
||||||
#define BOARD_TRIGORILLA_13 343 // TriGorilla Anycubic version 1.3 based on RAMPS EFB
|
|
||||||
#define BOARD_TRIGORILLA_14 443 // TriGorilla Anycubic version 1.4 based on RAMPS EFB
|
|
||||||
#define BOARD_RAMPS_ENDER_4 243 // Creality: Ender-4, CR-8
|
|
||||||
|
|
||||||
//
|
|
||||||
// Other ATmega1280, ATmega2560
|
|
||||||
//
|
|
||||||
|
|
||||||
#define BOARD_CNCONTROLS_11 111 // Cartesio CN Controls V11
|
|
||||||
#define BOARD_CNCONTROLS_12 112 // Cartesio CN Controls V12
|
|
||||||
#define BOARD_CHEAPTRONIC 2 // Cheaptronic v1.0
|
|
||||||
#define BOARD_CHEAPTRONIC_V2 21 // Cheaptronic v2.0
|
|
||||||
#define BOARD_MIGHTYBOARD_REVE 200 // Makerbot Mightyboard Revision E
|
|
||||||
#define BOARD_MEGATRONICS 70 // Megatronics
|
|
||||||
#define BOARD_MEGATRONICS_2 701 // Megatronics v2.0
|
|
||||||
#define BOARD_MEGATRONICS_3 703 // Megatronics v3.0
|
|
||||||
#define BOARD_MEGATRONICS_31 704 // Megatronics v3.1
|
|
||||||
#define BOARD_RAMBO 301 // Rambo
|
|
||||||
#define BOARD_MINIRAMBO 302 // Mini-Rambo
|
|
||||||
#define BOARD_MINIRAMBO_10A 303 // Mini-Rambo 1.0a
|
|
||||||
#define BOARD_EINSY_RAMBO 304 // Einsy Rambo
|
|
||||||
#define BOARD_EINSY_RETRO 305 // Einsy Retro
|
|
||||||
#define BOARD_ELEFU_3 21 // Elefu Ra Board (v3)
|
|
||||||
#define BOARD_LEAPFROG 999 // Leapfrog
|
|
||||||
#define BOARD_MEGACONTROLLER 310 // Mega controller
|
|
||||||
#define BOARD_SCOOVO_X9H 321 // abee Scoovo X9H
|
|
||||||
#define BOARD_GT2560_REV_A 74 // Geeetech GT2560 Rev. A
|
|
||||||
#define BOARD_GT2560_REV_A_PLUS 75 // Geeetech GT2560 Rev. A+ (with auto level probe)
|
|
||||||
|
|
||||||
//
|
|
||||||
// ATmega1281, ATmega2561
|
|
||||||
//
|
|
||||||
|
|
||||||
#define BOARD_MINITRONICS 702 // Minitronics v1.0/1.1
|
|
||||||
#define BOARD_SILVER_GATE 25 // Silvergate v1.0
|
|
||||||
|
|
||||||
//
|
|
||||||
// Sanguinololu and Derivatives - ATmega644P, ATmega1284P
|
|
||||||
//
|
|
||||||
|
|
||||||
#define BOARD_SANGUINOLOLU_11 6 // Sanguinololu < 1.2
|
|
||||||
#define BOARD_SANGUINOLOLU_12 62 // Sanguinololu 1.2 and above
|
|
||||||
#define BOARD_MELZI 63 // Melzi
|
|
||||||
#define BOARD_MELZI_MAKR3D 66 // Melzi with ATmega1284 (MaKr3d version)
|
|
||||||
#define BOARD_MELZI_CREALITY 89 // Melzi Creality3D board (for CR-10 etc)
|
|
||||||
#define BOARD_MELZI_MALYAN 92 // Melzi Malyan M150 board
|
|
||||||
#define BOARD_MELZI_TRONXY 505 // Tronxy X5S
|
|
||||||
#define BOARD_STB_11 64 // STB V1.1
|
|
||||||
#define BOARD_AZTEEG_X1 65 // Azteeg X1
|
|
||||||
#define BOARD_ANET_10 69 // Anet 1.0 (Melzi clone)
|
|
||||||
|
|
||||||
//
|
|
||||||
// Other ATmega644P, ATmega644, ATmega1284P
|
|
||||||
//
|
|
||||||
|
|
||||||
#define BOARD_GEN3_MONOLITHIC 22 // Gen3 Monolithic Electronics
|
|
||||||
#define BOARD_GEN3_PLUS 9 // Gen3+
|
|
||||||
#define BOARD_GEN6 5 // Gen6
|
|
||||||
#define BOARD_GEN6_DELUXE 51 // Gen6 deluxe
|
|
||||||
#define BOARD_GEN7_CUSTOM 10 // Gen7 custom (Alfons3 Version) "https://github.com/Alfons3/Generation_7_Electronics"
|
|
||||||
#define BOARD_GEN7_12 11 // Gen7 v1.1, v1.2
|
|
||||||
#define BOARD_GEN7_13 12 // Gen7 v1.3
|
|
||||||
#define BOARD_GEN7_14 13 // Gen7 v1.4
|
|
||||||
#define BOARD_OMCA_A 90 // Alpha OMCA board
|
|
||||||
#define BOARD_OMCA 91 // Final OMCA board
|
|
||||||
#define BOARD_SETHI 20 // Sethi 3D_1
|
|
||||||
|
|
||||||
//
|
|
||||||
// Teensyduino - AT90USB1286, AT90USB1286P
|
|
||||||
//
|
|
||||||
|
|
||||||
#define BOARD_TEENSYLU 8 // Teensylu
|
|
||||||
#define BOARD_PRINTRBOARD 81 // Printrboard (AT90USB1286)
|
|
||||||
#define BOARD_PRINTRBOARD_REVF 811 // Printrboard Revision F (AT90USB1286)
|
|
||||||
#define BOARD_BRAINWAVE 82 // Brainwave (AT90USB646)
|
|
||||||
#define BOARD_BRAINWAVE_PRO 85 // Brainwave Pro (AT90USB1286)
|
|
||||||
#define BOARD_SAV_MKI 83 // SAV Mk-I (AT90USB1286)
|
|
||||||
#define BOARD_TEENSY2 84 // Teensy++2.0 (AT90USB1286) - CLI compile: HARDWARE_MOTHERBOARD=84 make
|
|
||||||
#define BOARD_5DPRINT 88 // 5DPrint D8 Driver Board
|
|
||||||
|
|
||||||
#define MB(board) (defined(BOARD_##board) && MOTHERBOARD==BOARD_##board)
|
|
||||||
|
|
||||||
#endif // __BOARDS_H
|
|
||||||
146
Marlin/buzzer.h
146
Marlin/buzzer.h
@@ -1,146 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef __BUZZER_H__
|
|
||||||
#define __BUZZER_H__
|
|
||||||
|
|
||||||
#include "types.h"
|
|
||||||
#include "fastio.h"
|
|
||||||
#include "circularqueue.h"
|
|
||||||
#include "temperature.h"
|
|
||||||
|
|
||||||
#include "MarlinConfig.h"
|
|
||||||
|
|
||||||
#define TONE_QUEUE_LENGTH 4
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Tone structure
|
|
||||||
* @details Simple abstraction of a tone based on a duration and a frequency.
|
|
||||||
*/
|
|
||||||
struct tone_t {
|
|
||||||
uint16_t duration;
|
|
||||||
uint16_t frequency;
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Buzzer class
|
|
||||||
*/
|
|
||||||
class Buzzer {
|
|
||||||
private:
|
|
||||||
struct state_t {
|
|
||||||
tone_t tone;
|
|
||||||
uint32_t endtime;
|
|
||||||
} state;
|
|
||||||
|
|
||||||
protected:
|
|
||||||
CircularQueue<tone_t, TONE_QUEUE_LENGTH> buffer;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Inverts the sate of a digital PIN
|
|
||||||
* @details This will invert the current state of an digital IO pin.
|
|
||||||
*/
|
|
||||||
void invert() {
|
|
||||||
TOGGLE(BEEPER_PIN);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Turn off a digital PIN
|
|
||||||
* @details Alias of digitalWrite(PIN, LOW) using FastIO
|
|
||||||
*/
|
|
||||||
void off() {
|
|
||||||
WRITE(BEEPER_PIN, LOW);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Turn on a digital PIN
|
|
||||||
* @details Alias of digitalWrite(PIN, HIGH) using FastIO
|
|
||||||
*/
|
|
||||||
void on() {
|
|
||||||
WRITE(BEEPER_PIN, HIGH);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Resets the state of the class
|
|
||||||
* @details Brings the class state to a known one.
|
|
||||||
*/
|
|
||||||
void reset() {
|
|
||||||
this->off();
|
|
||||||
this->state.endtime = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public:
|
|
||||||
/**
|
|
||||||
* @brief Class constructor
|
|
||||||
*/
|
|
||||||
Buzzer() {
|
|
||||||
SET_OUTPUT(BEEPER_PIN);
|
|
||||||
this->reset();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Add a tone to the queue
|
|
||||||
* @details Adds a tone_t structure to the ring buffer, will block IO if the
|
|
||||||
* queue is full waiting for one slot to get available.
|
|
||||||
*
|
|
||||||
* @param duration Duration of the tone in milliseconds
|
|
||||||
* @param frequency Frequency of the tone in hertz
|
|
||||||
*/
|
|
||||||
void tone(const uint16_t &duration, const uint16_t &frequency=0) {
|
|
||||||
while (buffer.isFull()) {
|
|
||||||
this->tick();
|
|
||||||
thermalManager.manage_heater();
|
|
||||||
}
|
|
||||||
tone_t tone = { duration, frequency };
|
|
||||||
this->buffer.enqueue(tone);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Loop function
|
|
||||||
* @details This function should be called at loop, it will take care of
|
|
||||||
* playing the tones in the queue.
|
|
||||||
*/
|
|
||||||
virtual void tick() {
|
|
||||||
const millis_t now = millis();
|
|
||||||
|
|
||||||
if (!this->state.endtime) {
|
|
||||||
if (this->buffer.isEmpty()) return;
|
|
||||||
|
|
||||||
this->state.tone = this->buffer.dequeue();
|
|
||||||
this->state.endtime = now + this->state.tone.duration;
|
|
||||||
|
|
||||||
if (this->state.tone.frequency > 0) {
|
|
||||||
#if ENABLED(SPEAKER)
|
|
||||||
CRITICAL_SECTION_START;
|
|
||||||
::tone(BEEPER_PIN, this->state.tone.frequency, this->state.tone.duration);
|
|
||||||
CRITICAL_SECTION_END;
|
|
||||||
#else
|
|
||||||
this->on();
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else if (ELAPSED(now, this->state.endtime)) this->reset();
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
extern Buzzer buzzer;
|
|
||||||
|
|
||||||
#endif
|
|
||||||
@@ -1,987 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include "MarlinConfig.h"
|
|
||||||
|
|
||||||
#if ENABLED(SDSUPPORT)
|
|
||||||
|
|
||||||
#include "cardreader.h"
|
|
||||||
|
|
||||||
#include "ultralcd.h"
|
|
||||||
#include "stepper.h"
|
|
||||||
#include "language.h"
|
|
||||||
#include "printcounter.h"
|
|
||||||
|
|
||||||
#if ENABLED(POWER_LOSS_RECOVERY)
|
|
||||||
#include "power_loss_recovery.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
CardReader::CardReader() {
|
|
||||||
#if ENABLED(SDCARD_SORT_ALPHA)
|
|
||||||
sort_count = 0;
|
|
||||||
#if ENABLED(SDSORT_GCODE)
|
|
||||||
sort_alpha = true;
|
|
||||||
sort_folders = FOLDER_SORTING;
|
|
||||||
//sort_reverse = false;
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
sdprinting = cardOK = saving = logging = false;
|
|
||||||
filesize = 0;
|
|
||||||
sdpos = 0;
|
|
||||||
file_subcall_ctr = 0;
|
|
||||||
|
|
||||||
workDirDepth = 0;
|
|
||||||
ZERO(workDirParents);
|
|
||||||
|
|
||||||
// Disable autostart until card is initialized
|
|
||||||
autostart_index = -1;
|
|
||||||
|
|
||||||
//power to SD reader
|
|
||||||
#if SDPOWER > -1
|
|
||||||
OUT_WRITE(SDPOWER, HIGH);
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
char *createFilename(char *buffer, const dir_t &p) { //buffer > 12characters
|
|
||||||
char *pos = buffer;
|
|
||||||
for (uint8_t i = 0; i < 11; i++) {
|
|
||||||
if (p.name[i] == ' ') continue;
|
|
||||||
if (i == 8) *pos++ = '.';
|
|
||||||
*pos++ = p.name[i];
|
|
||||||
}
|
|
||||||
*pos++ = 0;
|
|
||||||
return buffer;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Dive into a folder and recurse depth-first to perform a pre-set operation lsAction:
|
|
||||||
* LS_Count - Add +1 to nrFiles for every file within the parent
|
|
||||||
* LS_GetFilename - Get the filename of the file indexed by nrFile_index
|
|
||||||
* LS_SerialPrint - Print the full path and size of each file to serial output
|
|
||||||
*/
|
|
||||||
|
|
||||||
uint16_t nrFile_index;
|
|
||||||
|
|
||||||
void CardReader::lsDive(const char *prepend, SdFile parent, const char * const match/*=NULL*/) {
|
|
||||||
dir_t p;
|
|
||||||
uint8_t cnt = 0;
|
|
||||||
|
|
||||||
// Read the next entry from a directory
|
|
||||||
while (parent.readDir(&p, longFilename) > 0) {
|
|
||||||
|
|
||||||
// If the entry is a directory and the action is LS_SerialPrint
|
|
||||||
if (DIR_IS_SUBDIR(&p) && lsAction != LS_Count && lsAction != LS_GetFilename) {
|
|
||||||
|
|
||||||
// Get the short name for the item, which we know is a folder
|
|
||||||
char dosFilename[FILENAME_LENGTH];
|
|
||||||
createFilename(dosFilename, p);
|
|
||||||
|
|
||||||
// Allocate enough stack space for the full path to a folder, trailing slash, and nul
|
|
||||||
const bool prepend_is_empty = (!prepend || prepend[0] == '\0');
|
|
||||||
const int len = (prepend_is_empty ? 1 : strlen(prepend)) + strlen(dosFilename) + 1 + 1;
|
|
||||||
char path[len];
|
|
||||||
|
|
||||||
// Append the FOLDERNAME12/ to the passed string.
|
|
||||||
// It contains the full path to the "parent" argument.
|
|
||||||
// We now have the full path to the item in this folder.
|
|
||||||
strcpy(path, prepend_is_empty ? "/" : prepend); // root slash if prepend is empty
|
|
||||||
strcat(path, dosFilename); // FILENAME_LENGTH-1 characters maximum
|
|
||||||
strcat(path, "/"); // 1 character
|
|
||||||
|
|
||||||
// Serial.print(path);
|
|
||||||
|
|
||||||
// Get a new directory object using the full path
|
|
||||||
// and dive recursively into it.
|
|
||||||
SdFile dir;
|
|
||||||
if (!dir.open(&parent, dosFilename, O_READ)) {
|
|
||||||
if (lsAction == LS_SerialPrint) {
|
|
||||||
SERIAL_ECHO_START();
|
|
||||||
SERIAL_ECHOPGM(MSG_SD_CANT_OPEN_SUBDIR);
|
|
||||||
SERIAL_ECHOLN(dosFilename);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
lsDive(path, dir);
|
|
||||||
// close() is done automatically by destructor of SdFile
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
uint8_t pn0 = p.name[0];
|
|
||||||
if (pn0 == DIR_NAME_FREE) break;
|
|
||||||
if (pn0 == DIR_NAME_DELETED || pn0 == '.') continue;
|
|
||||||
if (longFilename[0] == '.') continue;
|
|
||||||
|
|
||||||
if (!DIR_IS_FILE_OR_SUBDIR(&p) || (p.attributes & DIR_ATT_HIDDEN)) continue;
|
|
||||||
|
|
||||||
filenameIsDir = DIR_IS_SUBDIR(&p);
|
|
||||||
|
|
||||||
if (!filenameIsDir && (p.name[8] != 'G' || p.name[9] == '~')) continue;
|
|
||||||
|
|
||||||
switch (lsAction) { // 1 based file count
|
|
||||||
case LS_Count:
|
|
||||||
nrFiles++;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case LS_SerialPrint:
|
|
||||||
createFilename(filename, p);
|
|
||||||
if (prepend) SERIAL_PROTOCOL(prepend);
|
|
||||||
SERIAL_PROTOCOL(filename);
|
|
||||||
SERIAL_PROTOCOLCHAR(' ');
|
|
||||||
SERIAL_PROTOCOLLN(p.fileSize);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case LS_GetFilename:
|
|
||||||
createFilename(filename, p);
|
|
||||||
if (match != NULL) {
|
|
||||||
if (strcasecmp(match, filename) == 0) return;
|
|
||||||
}
|
|
||||||
else if (cnt == nrFile_index) return; // 0 based index
|
|
||||||
cnt++;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
} // while readDir
|
|
||||||
}
|
|
||||||
|
|
||||||
void CardReader::ls() {
|
|
||||||
lsAction = LS_SerialPrint;
|
|
||||||
root.rewind();
|
|
||||||
lsDive(NULL, root);
|
|
||||||
}
|
|
||||||
|
|
||||||
#if ENABLED(LONG_FILENAME_HOST_SUPPORT)
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get a long pretty path based on a DOS 8.3 path
|
|
||||||
*/
|
|
||||||
void CardReader::printLongPath(char *path) {
|
|
||||||
lsAction = LS_GetFilename;
|
|
||||||
|
|
||||||
int i, pathLen = strlen(path);
|
|
||||||
|
|
||||||
// SERIAL_ECHOPGM("Full Path: "); SERIAL_ECHOLN(path);
|
|
||||||
|
|
||||||
// Zero out slashes to make segments
|
|
||||||
for (i = 0; i < pathLen; i++) if (path[i] == '/') path[i] = '\0';
|
|
||||||
|
|
||||||
SdFile diveDir = root; // start from the root for segment 1
|
|
||||||
for (i = 0; i < pathLen;) {
|
|
||||||
|
|
||||||
if (path[i] == '\0') i++; // move past a single nul
|
|
||||||
|
|
||||||
char *segment = &path[i]; // The segment after most slashes
|
|
||||||
|
|
||||||
// If a segment is empty (extra-slash) then exit
|
|
||||||
if (!*segment) break;
|
|
||||||
|
|
||||||
// Go to the next segment
|
|
||||||
while (path[++i]) { }
|
|
||||||
|
|
||||||
// SERIAL_ECHOPGM("Looking for segment: "); SERIAL_ECHOLN(segment);
|
|
||||||
|
|
||||||
// Find the item, setting the long filename
|
|
||||||
diveDir.rewind();
|
|
||||||
lsDive(NULL, diveDir, segment);
|
|
||||||
|
|
||||||
// Print /LongNamePart to serial output
|
|
||||||
SERIAL_PROTOCOLCHAR('/');
|
|
||||||
SERIAL_PROTOCOL(longFilename[0] ? longFilename : "???");
|
|
||||||
|
|
||||||
// If the filename was printed then that's it
|
|
||||||
if (!filenameIsDir) break;
|
|
||||||
|
|
||||||
// SERIAL_ECHOPGM("Opening dir: "); SERIAL_ECHOLN(segment);
|
|
||||||
|
|
||||||
// Open the sub-item as the new dive parent
|
|
||||||
SdFile dir;
|
|
||||||
if (!dir.open(&diveDir, segment, O_READ)) {
|
|
||||||
SERIAL_EOL();
|
|
||||||
SERIAL_ECHO_START();
|
|
||||||
SERIAL_ECHOPGM(MSG_SD_CANT_OPEN_SUBDIR);
|
|
||||||
SERIAL_ECHO(segment);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
diveDir.close();
|
|
||||||
diveDir = dir;
|
|
||||||
|
|
||||||
} // while i<pathLen
|
|
||||||
|
|
||||||
SERIAL_EOL();
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif // LONG_FILENAME_HOST_SUPPORT
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Echo the DOS 8.3 filename (and long filename, if any)
|
|
||||||
*/
|
|
||||||
void CardReader::printFilename() {
|
|
||||||
if (file.isOpen()) {
|
|
||||||
char dosFilename[FILENAME_LENGTH];
|
|
||||||
file.getFilename(dosFilename);
|
|
||||||
SERIAL_ECHO(dosFilename);
|
|
||||||
#if ENABLED(LONG_FILENAME_HOST_SUPPORT)
|
|
||||||
getfilename(0, dosFilename);
|
|
||||||
if (longFilename[0]) {
|
|
||||||
SERIAL_ECHO(' ');
|
|
||||||
SERIAL_ECHO(longFilename);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
else
|
|
||||||
SERIAL_ECHOPGM("(no file)");
|
|
||||||
|
|
||||||
SERIAL_EOL();
|
|
||||||
}
|
|
||||||
|
|
||||||
void CardReader::initsd() {
|
|
||||||
cardOK = false;
|
|
||||||
if (root.isOpen()) root.close();
|
|
||||||
|
|
||||||
#ifndef SPI_SPEED
|
|
||||||
#define SPI_SPEED SPI_FULL_SPEED
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (!sd2card.init(SPI_SPEED, SDSS)
|
|
||||||
#if defined(LCD_SDSS) && (LCD_SDSS != SDSS)
|
|
||||||
&& !sd2card.init(SPI_SPEED, LCD_SDSS)
|
|
||||||
#endif
|
|
||||||
) {
|
|
||||||
//if (!sd2card.init(SPI_HALF_SPEED,SDSS))
|
|
||||||
SERIAL_ECHO_START();
|
|
||||||
SERIAL_ECHOLNPGM(MSG_SD_INIT_FAIL);
|
|
||||||
}
|
|
||||||
else if (!volume.init(&sd2card)) {
|
|
||||||
SERIAL_ERROR_START();
|
|
||||||
SERIAL_ERRORLNPGM(MSG_SD_VOL_INIT_FAIL);
|
|
||||||
}
|
|
||||||
else if (!root.openRoot(&volume)) {
|
|
||||||
SERIAL_ERROR_START();
|
|
||||||
SERIAL_ERRORLNPGM(MSG_SD_OPENROOT_FAIL);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
cardOK = true;
|
|
||||||
SERIAL_ECHO_START();
|
|
||||||
SERIAL_ECHOLNPGM(MSG_SD_CARD_OK);
|
|
||||||
}
|
|
||||||
setroot();
|
|
||||||
}
|
|
||||||
|
|
||||||
void CardReader::release() {
|
|
||||||
sdprinting = false;
|
|
||||||
cardOK = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
void CardReader::openAndPrintFile(const char *name) {
|
|
||||||
char cmd[4 + strlen(name) + 1]; // Room for "M23 ", filename, and null
|
|
||||||
sprintf_P(cmd, PSTR("M23 %s"), name);
|
|
||||||
for (char *c = &cmd[4]; *c; c++) *c = tolower(*c);
|
|
||||||
enqueue_and_echo_command_now(cmd);
|
|
||||||
enqueue_and_echo_commands_P(PSTR("M24"));
|
|
||||||
}
|
|
||||||
|
|
||||||
void CardReader::startFileprint() {
|
|
||||||
if (cardOK) {
|
|
||||||
sdprinting = true;
|
|
||||||
#if SD_RESORT
|
|
||||||
flush_presort();
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void CardReader::stopSDPrint(
|
|
||||||
#if SD_RESORT
|
|
||||||
const bool re_sort/*=false*/
|
|
||||||
#endif
|
|
||||||
) {
|
|
||||||
#if ENABLED(ADVANCED_PAUSE_FEATURE)
|
|
||||||
did_pause_print = 0;
|
|
||||||
#endif
|
|
||||||
sdprinting = abort_sd_printing = false;
|
|
||||||
if (isFileOpen()) file.close();
|
|
||||||
#if SD_RESORT
|
|
||||||
if (re_sort) presort();
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
void CardReader::openLogFile(char * const path) {
|
|
||||||
logging = true;
|
|
||||||
openFile(path, false);
|
|
||||||
}
|
|
||||||
|
|
||||||
void appendAtom(SdFile &file, char *& dst, uint8_t &cnt) {
|
|
||||||
file.getFilename(dst);
|
|
||||||
while (*dst && cnt < MAXPATHNAMELENGTH) { dst++; cnt++; }
|
|
||||||
if (cnt < MAXPATHNAMELENGTH) { *dst = '/'; dst++; cnt++; }
|
|
||||||
}
|
|
||||||
|
|
||||||
void CardReader::getAbsFilename(char *t) {
|
|
||||||
*t++ = '/'; // Root folder
|
|
||||||
uint8_t cnt = 1;
|
|
||||||
|
|
||||||
for (uint8_t i = 0; i < workDirDepth; i++) // Loop to current work dir
|
|
||||||
appendAtom(workDirParents[i], t, cnt);
|
|
||||||
|
|
||||||
if (cnt < MAXPATHNAMELENGTH - (FILENAME_LENGTH)) {
|
|
||||||
appendAtom(file, t, cnt);
|
|
||||||
--t;
|
|
||||||
}
|
|
||||||
*t = '\0';
|
|
||||||
}
|
|
||||||
|
|
||||||
void CardReader::openFile(char * const path, const bool read, const bool subcall/*=false*/) {
|
|
||||||
|
|
||||||
if (!cardOK) return;
|
|
||||||
|
|
||||||
uint8_t doing = 0;
|
|
||||||
if (isFileOpen()) { // Replacing current file or doing a subroutine
|
|
||||||
if (subcall) {
|
|
||||||
if (file_subcall_ctr > SD_PROCEDURE_DEPTH - 1) {
|
|
||||||
SERIAL_ERROR_START();
|
|
||||||
SERIAL_ERRORPGM("trying to call sub-gcode files with too many levels. MAX level is:");
|
|
||||||
SERIAL_ERRORLN((int)SD_PROCEDURE_DEPTH);
|
|
||||||
kill(PSTR(MSG_KILLED));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Store current filename (based on workDirParents) and position
|
|
||||||
getAbsFilename(proc_filenames[file_subcall_ctr]);
|
|
||||||
filespos[file_subcall_ctr] = sdpos;
|
|
||||||
|
|
||||||
SERIAL_ECHO_START();
|
|
||||||
SERIAL_ECHOPAIR("SUBROUTINE CALL target:\"", path);
|
|
||||||
SERIAL_ECHOPAIR("\" parent:\"", proc_filenames[file_subcall_ctr]);
|
|
||||||
SERIAL_ECHOLNPAIR("\" pos", sdpos);
|
|
||||||
file_subcall_ctr++;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
doing = 1;
|
|
||||||
}
|
|
||||||
else if (subcall) { // Returning from a subcall?
|
|
||||||
SERIAL_ECHO_START();
|
|
||||||
SERIAL_ECHOLNPGM("END SUBROUTINE");
|
|
||||||
}
|
|
||||||
else { // Opening fresh file
|
|
||||||
doing = 2;
|
|
||||||
file_subcall_ctr = 0; // Reset procedure depth in case user cancels print while in procedure
|
|
||||||
}
|
|
||||||
|
|
||||||
if (doing) {
|
|
||||||
SERIAL_ECHO_START();
|
|
||||||
SERIAL_ECHOPGM("Now ");
|
|
||||||
serialprintPGM(doing == 1 ? PSTR("doing") : PSTR("fresh"));
|
|
||||||
SERIAL_ECHOLNPAIR(" file: ", path);
|
|
||||||
}
|
|
||||||
|
|
||||||
stopSDPrint();
|
|
||||||
|
|
||||||
SdFile *curDir;
|
|
||||||
const char * const fname = diveToFile(curDir, path, false);
|
|
||||||
if (!fname) return;
|
|
||||||
|
|
||||||
if (read) {
|
|
||||||
if (file.open(curDir, fname, O_READ)) {
|
|
||||||
filesize = file.fileSize();
|
|
||||||
sdpos = 0;
|
|
||||||
SERIAL_PROTOCOLPAIR(MSG_SD_FILE_OPENED, fname);
|
|
||||||
SERIAL_PROTOCOLLNPAIR(MSG_SD_SIZE, filesize);
|
|
||||||
SERIAL_PROTOCOLLNPGM(MSG_SD_FILE_SELECTED);
|
|
||||||
|
|
||||||
getfilename(0, fname);
|
|
||||||
lcd_setstatus(longFilename[0] ? longFilename : fname);
|
|
||||||
//if (longFilename[0]) {
|
|
||||||
// SERIAL_PROTOCOLPAIR(MSG_SD_FILE_LONG_NAME, longFilename);
|
|
||||||
//}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
SERIAL_PROTOCOLPAIR(MSG_SD_OPEN_FILE_FAIL, fname);
|
|
||||||
SERIAL_PROTOCOLCHAR('.');
|
|
||||||
SERIAL_EOL();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else { //write
|
|
||||||
if (!file.open(curDir, fname, O_CREAT | O_APPEND | O_WRITE | O_TRUNC)) {
|
|
||||||
SERIAL_PROTOCOLPAIR(MSG_SD_OPEN_FILE_FAIL, fname);
|
|
||||||
SERIAL_PROTOCOLCHAR('.');
|
|
||||||
SERIAL_EOL();
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
saving = true;
|
|
||||||
SERIAL_PROTOCOLLNPAIR(MSG_SD_WRITE_TO_FILE, path);
|
|
||||||
lcd_setstatus(fname);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void CardReader::removeFile(const char * const name) {
|
|
||||||
if (!cardOK) return;
|
|
||||||
|
|
||||||
stopSDPrint();
|
|
||||||
|
|
||||||
SdFile *curDir;
|
|
||||||
const char * const fname = diveToFile(curDir, name, false);
|
|
||||||
if (!fname) return;
|
|
||||||
|
|
||||||
if (file.remove(curDir, fname)) {
|
|
||||||
SERIAL_PROTOCOLPGM("File deleted:");
|
|
||||||
SERIAL_PROTOCOLLN(fname);
|
|
||||||
sdpos = 0;
|
|
||||||
#if ENABLED(SDCARD_SORT_ALPHA)
|
|
||||||
presort();
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
SERIAL_PROTOCOLPGM("Deletion failed, File: ");
|
|
||||||
SERIAL_PROTOCOL(fname);
|
|
||||||
SERIAL_PROTOCOLCHAR('.');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void CardReader::getStatus() {
|
|
||||||
if (cardOK && sdprinting) {
|
|
||||||
SERIAL_PROTOCOLPGM(MSG_SD_PRINTING_BYTE);
|
|
||||||
SERIAL_PROTOCOL(sdpos);
|
|
||||||
SERIAL_PROTOCOLCHAR('/');
|
|
||||||
SERIAL_PROTOCOLLN(filesize);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
SERIAL_PROTOCOLLNPGM(MSG_SD_NOT_PRINTING);
|
|
||||||
}
|
|
||||||
|
|
||||||
void CardReader::write_command(char *buf) {
|
|
||||||
char* begin = buf;
|
|
||||||
char* npos = NULL;
|
|
||||||
char* end = buf + strlen(buf) - 1;
|
|
||||||
|
|
||||||
file.writeError = false;
|
|
||||||
if ((npos = strchr(buf, 'N')) != NULL) {
|
|
||||||
begin = strchr(npos, ' ') + 1;
|
|
||||||
end = strchr(npos, '*') - 1;
|
|
||||||
}
|
|
||||||
end[1] = '\r';
|
|
||||||
end[2] = '\n';
|
|
||||||
end[3] = '\0';
|
|
||||||
file.write(begin);
|
|
||||||
if (file.writeError) {
|
|
||||||
SERIAL_ERROR_START();
|
|
||||||
SERIAL_ERRORLNPGM(MSG_SD_ERR_WRITE_TO_FILE);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//
|
|
||||||
// Run the next autostart file. Called:
|
|
||||||
// - On boot after successful card init
|
|
||||||
// - After finishing the previous autostart file
|
|
||||||
// - From the LCD command to run the autostart file
|
|
||||||
//
|
|
||||||
|
|
||||||
void CardReader::checkautostart() {
|
|
||||||
|
|
||||||
if (autostart_index < 0 || sdprinting) return;
|
|
||||||
|
|
||||||
if (!cardOK) initsd();
|
|
||||||
|
|
||||||
if (cardOK
|
|
||||||
#if ENABLED(POWER_LOSS_RECOVERY)
|
|
||||||
&& !jobRecoverFileExists() // Don't run auto#.g when a resume file exists
|
|
||||||
#endif
|
|
||||||
) {
|
|
||||||
char autoname[10];
|
|
||||||
sprintf_P(autoname, PSTR("auto%i.g"), int(autostart_index));
|
|
||||||
dir_t p;
|
|
||||||
root.rewind();
|
|
||||||
while (root.readDir(&p, NULL) > 0) {
|
|
||||||
for (int8_t i = (int8_t)strlen((char*)p.name); i--;) p.name[i] = tolower(p.name[i]);
|
|
||||||
if (p.name[9] != '~' && strncmp((char*)p.name, autoname, 5) == 0) {
|
|
||||||
openAndPrintFile(autoname);
|
|
||||||
autostart_index++;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
autostart_index = -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
void CardReader::beginautostart() {
|
|
||||||
autostart_index = 0;
|
|
||||||
setroot();
|
|
||||||
}
|
|
||||||
|
|
||||||
void CardReader::closefile(const bool store_location) {
|
|
||||||
file.sync();
|
|
||||||
file.close();
|
|
||||||
saving = logging = false;
|
|
||||||
|
|
||||||
if (store_location) {
|
|
||||||
//future: store printer state, filename and position for continuing a stopped print
|
|
||||||
// so one can unplug the printer and continue printing the next day.
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get the name of a file in the current directory by index
|
|
||||||
* with optional name to match.
|
|
||||||
*/
|
|
||||||
void CardReader::getfilename(uint16_t nr, const char * const match/*=NULL*/) {
|
|
||||||
#if ENABLED(SDSORT_CACHE_NAMES)
|
|
||||||
if (match != NULL) {
|
|
||||||
while (nr < sort_count) {
|
|
||||||
if (strcasecmp(match, sortshort[nr]) == 0) break;
|
|
||||||
nr++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (nr < sort_count) {
|
|
||||||
strcpy(filename, sortshort[nr]);
|
|
||||||
strcpy(longFilename, sortnames[nr]);
|
|
||||||
filenameIsDir = TEST(isDir[nr>>3], nr & 0x07);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
#endif // SDSORT_CACHE_NAMES
|
|
||||||
lsAction = LS_GetFilename;
|
|
||||||
nrFile_index = nr;
|
|
||||||
workDir.rewind();
|
|
||||||
lsDive(NULL, workDir, match);
|
|
||||||
}
|
|
||||||
|
|
||||||
uint16_t CardReader::getnrfilenames() {
|
|
||||||
lsAction = LS_Count;
|
|
||||||
nrFiles = 0;
|
|
||||||
workDir.rewind();
|
|
||||||
lsDive(NULL, workDir);
|
|
||||||
//SERIAL_ECHOLN(nrFiles);
|
|
||||||
return nrFiles;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Dive to the given file path, with optional echo.
|
|
||||||
* On exit set curDir and return the name part of the path.
|
|
||||||
* A NULL result indicates an unrecoverable error.
|
|
||||||
*/
|
|
||||||
const char* CardReader::diveToFile(SdFile*& curDir, const char * const path, const bool echo) {
|
|
||||||
SdFile myDir;
|
|
||||||
if (path[0] != '/') { curDir = &workDir; return path; }
|
|
||||||
|
|
||||||
curDir = &root;
|
|
||||||
const char *dirname_start = &path[1];
|
|
||||||
while (dirname_start) {
|
|
||||||
char * const dirname_end = strchr(dirname_start, '/');
|
|
||||||
if (dirname_end <= dirname_start) break;
|
|
||||||
const uint8_t len = dirname_end - dirname_start;
|
|
||||||
char dosSubdirname[len + 1];
|
|
||||||
strncpy(dosSubdirname, dirname_start, len);
|
|
||||||
dosSubdirname[len] = 0;
|
|
||||||
|
|
||||||
if (echo) SERIAL_ECHOLN(dosSubdirname);
|
|
||||||
|
|
||||||
if (!myDir.open(curDir, dosSubdirname, O_READ)) {
|
|
||||||
SERIAL_PROTOCOLPAIR(MSG_SD_OPEN_FILE_FAIL, dosSubdirname);
|
|
||||||
SERIAL_PROTOCOLCHAR('.');
|
|
||||||
SERIAL_EOL();
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
curDir = &myDir;
|
|
||||||
dirname_start = dirname_end + 1;
|
|
||||||
}
|
|
||||||
return dirname_start;
|
|
||||||
}
|
|
||||||
|
|
||||||
void CardReader::chdir(const char * relpath) {
|
|
||||||
SdFile newDir;
|
|
||||||
SdFile *parent = workDir.isOpen() ? &workDir : &root;
|
|
||||||
|
|
||||||
if (newDir.open(parent, relpath, O_READ)) {
|
|
||||||
workDir = newDir;
|
|
||||||
if (workDirDepth < MAX_DIR_DEPTH)
|
|
||||||
workDirParents[workDirDepth++] = workDir;
|
|
||||||
#if ENABLED(SDCARD_SORT_ALPHA)
|
|
||||||
presort();
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
SERIAL_ECHO_START();
|
|
||||||
SERIAL_ECHOPGM(MSG_SD_CANT_ENTER_SUBDIR);
|
|
||||||
SERIAL_ECHOLN(relpath);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
int8_t CardReader::updir() {
|
|
||||||
if (workDirDepth > 0) { // At least 1 dir has been saved
|
|
||||||
workDir = --workDirDepth ? workDirParents[workDirDepth - 1] : root; // Use parent, or root if none
|
|
||||||
#if ENABLED(SDCARD_SORT_ALPHA)
|
|
||||||
presort();
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
return workDirDepth;
|
|
||||||
}
|
|
||||||
|
|
||||||
void CardReader::setroot() {
|
|
||||||
/*if (!workDir.openRoot(&volume)) {
|
|
||||||
SERIAL_ECHOLNPGM(MSG_SD_WORKDIR_FAIL);
|
|
||||||
}*/
|
|
||||||
workDir = root;
|
|
||||||
#if ENABLED(SDCARD_SORT_ALPHA)
|
|
||||||
presort();
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
#if ENABLED(SDCARD_SORT_ALPHA)
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get the name of a file in the current directory by sort-index
|
|
||||||
*/
|
|
||||||
void CardReader::getfilename_sorted(const uint16_t nr) {
|
|
||||||
getfilename(
|
|
||||||
#if ENABLED(SDSORT_GCODE)
|
|
||||||
sort_alpha &&
|
|
||||||
#endif
|
|
||||||
(nr < sort_count) ? sort_order[nr] : nr
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Read all the files and produce a sort key
|
|
||||||
*
|
|
||||||
* We can do this in 3 ways...
|
|
||||||
* - Minimal RAM: Read two filenames at a time sorting along...
|
|
||||||
* - Some RAM: Buffer the directory just for this sort
|
|
||||||
* - Most RAM: Buffer the directory and return filenames from RAM
|
|
||||||
*/
|
|
||||||
void CardReader::presort() {
|
|
||||||
|
|
||||||
// Throw away old sort index
|
|
||||||
flush_presort();
|
|
||||||
|
|
||||||
// Sorting may be turned off
|
|
||||||
#if ENABLED(SDSORT_GCODE)
|
|
||||||
if (!sort_alpha) return;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// If there are files, sort up to the limit
|
|
||||||
uint16_t fileCnt = getnrfilenames();
|
|
||||||
if (fileCnt > 0) {
|
|
||||||
|
|
||||||
// Never sort more than the max allowed
|
|
||||||
// If you use folders to organize, 20 may be enough
|
|
||||||
if (fileCnt > SDSORT_LIMIT) fileCnt = SDSORT_LIMIT;
|
|
||||||
|
|
||||||
// Sort order is always needed. May be static or dynamic.
|
|
||||||
#if ENABLED(SDSORT_DYNAMIC_RAM)
|
|
||||||
sort_order = new uint8_t[fileCnt];
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Use RAM to store the entire directory during pre-sort.
|
|
||||||
// SDSORT_LIMIT should be set to prevent over-allocation.
|
|
||||||
#if ENABLED(SDSORT_USES_RAM)
|
|
||||||
|
|
||||||
// If using dynamic ram for names, allocate on the heap.
|
|
||||||
#if ENABLED(SDSORT_CACHE_NAMES)
|
|
||||||
#if ENABLED(SDSORT_DYNAMIC_RAM)
|
|
||||||
sortshort = new char*[fileCnt];
|
|
||||||
sortnames = new char*[fileCnt];
|
|
||||||
#endif
|
|
||||||
#elif ENABLED(SDSORT_USES_STACK)
|
|
||||||
char sortnames[fileCnt][SORTED_LONGNAME_MAXLEN];
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Folder sorting needs 1 bit per entry for flags.
|
|
||||||
#if HAS_FOLDER_SORTING
|
|
||||||
#if ENABLED(SDSORT_DYNAMIC_RAM)
|
|
||||||
isDir = new uint8_t[(fileCnt + 7) >> 3];
|
|
||||||
#elif ENABLED(SDSORT_USES_STACK)
|
|
||||||
uint8_t isDir[(fileCnt + 7) >> 3];
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#else // !SDSORT_USES_RAM
|
|
||||||
|
|
||||||
// By default re-read the names from SD for every compare
|
|
||||||
// retaining only two filenames at a time. This is very
|
|
||||||
// slow but is safest and uses minimal RAM.
|
|
||||||
char name1[LONG_FILENAME_LENGTH + 1];
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (fileCnt > 1) {
|
|
||||||
|
|
||||||
// Init sort order.
|
|
||||||
for (uint16_t i = 0; i < fileCnt; i++) {
|
|
||||||
sort_order[i] = i;
|
|
||||||
// If using RAM then read all filenames now.
|
|
||||||
#if ENABLED(SDSORT_USES_RAM)
|
|
||||||
getfilename(i);
|
|
||||||
#if ENABLED(SDSORT_DYNAMIC_RAM)
|
|
||||||
// Use dynamic method to copy long filename
|
|
||||||
sortnames[i] = strdup(longest_filename());
|
|
||||||
#if ENABLED(SDSORT_CACHE_NAMES)
|
|
||||||
// When caching also store the short name, since
|
|
||||||
// we're replacing the getfilename() behavior.
|
|
||||||
sortshort[i] = strdup(filename);
|
|
||||||
#endif
|
|
||||||
#else
|
|
||||||
// Copy filenames into the static array
|
|
||||||
#if SORTED_LONGNAME_MAXLEN != LONG_FILENAME_LENGTH
|
|
||||||
strncpy(sortnames[i], longest_filename(), SORTED_LONGNAME_MAXLEN);
|
|
||||||
sortnames[i][SORTED_LONGNAME_MAXLEN - 1] = '\0';
|
|
||||||
#else
|
|
||||||
strncpy(sortnames[i], longest_filename(), SORTED_LONGNAME_MAXLEN);
|
|
||||||
#endif
|
|
||||||
#if ENABLED(SDSORT_CACHE_NAMES)
|
|
||||||
strcpy(sortshort[i], filename);
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
// char out[30];
|
|
||||||
// sprintf_P(out, PSTR("---- %i %s %s"), i, filenameIsDir ? "D" : " ", sortnames[i]);
|
|
||||||
// SERIAL_ECHOLN(out);
|
|
||||||
#if HAS_FOLDER_SORTING
|
|
||||||
const uint16_t bit = i & 0x07, ind = i >> 3;
|
|
||||||
if (bit == 0) isDir[ind] = 0x00;
|
|
||||||
if (filenameIsDir) isDir[ind] |= _BV(bit);
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
// Bubble Sort
|
|
||||||
for (uint16_t i = fileCnt; --i;) {
|
|
||||||
bool didSwap = false;
|
|
||||||
for (uint16_t j = 0; j < i; ++j) {
|
|
||||||
const uint16_t o1 = sort_order[j], o2 = sort_order[j + 1];
|
|
||||||
|
|
||||||
// Compare names from the array or just the two buffered names
|
|
||||||
#if ENABLED(SDSORT_USES_RAM)
|
|
||||||
#define _SORT_CMP_NODIR() (strcasecmp(sortnames[o1], sortnames[o2]) > 0)
|
|
||||||
#else
|
|
||||||
#define _SORT_CMP_NODIR() (strcasecmp(name1, name2) > 0)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if HAS_FOLDER_SORTING
|
|
||||||
#if ENABLED(SDSORT_USES_RAM)
|
|
||||||
// Folder sorting needs an index and bit to test for folder-ness.
|
|
||||||
const uint8_t ind1 = o1 >> 3, bit1 = o1 & 0x07,
|
|
||||||
ind2 = o2 >> 3, bit2 = o2 & 0x07;
|
|
||||||
#define _SORT_CMP_DIR(fs) \
|
|
||||||
(((isDir[ind1] & _BV(bit1)) != 0) == ((isDir[ind2] & _BV(bit2)) != 0) \
|
|
||||||
? _SORT_CMP_NODIR() \
|
|
||||||
: (isDir[fs > 0 ? ind1 : ind2] & (fs > 0 ? _BV(bit1) : _BV(bit2))) != 0)
|
|
||||||
#else
|
|
||||||
#define _SORT_CMP_DIR(fs) ((dir1 == filenameIsDir) ? _SORT_CMP_NODIR() : (fs > 0 ? dir1 : !dir1))
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// The most economical method reads names as-needed
|
|
||||||
// throughout the loop. Slow if there are many.
|
|
||||||
#if DISABLED(SDSORT_USES_RAM)
|
|
||||||
getfilename(o1);
|
|
||||||
strcpy(name1, longest_filename()); // save (or getfilename below will trounce it)
|
|
||||||
#if HAS_FOLDER_SORTING
|
|
||||||
bool dir1 = filenameIsDir;
|
|
||||||
#endif
|
|
||||||
getfilename(o2);
|
|
||||||
char *name2 = longest_filename(); // use the string in-place
|
|
||||||
#endif // !SDSORT_USES_RAM
|
|
||||||
|
|
||||||
// Sort the current pair according to settings.
|
|
||||||
if (
|
|
||||||
#if HAS_FOLDER_SORTING
|
|
||||||
#if ENABLED(SDSORT_GCODE)
|
|
||||||
sort_folders ? _SORT_CMP_DIR(sort_folders) : _SORT_CMP_NODIR()
|
|
||||||
#else
|
|
||||||
_SORT_CMP_DIR(FOLDER_SORTING)
|
|
||||||
#endif
|
|
||||||
#else
|
|
||||||
_SORT_CMP_NODIR()
|
|
||||||
#endif
|
|
||||||
) {
|
|
||||||
sort_order[j] = o2;
|
|
||||||
sort_order[j + 1] = o1;
|
|
||||||
didSwap = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (!didSwap) break;
|
|
||||||
}
|
|
||||||
// Using RAM but not keeping names around
|
|
||||||
#if ENABLED(SDSORT_USES_RAM) && DISABLED(SDSORT_CACHE_NAMES)
|
|
||||||
#if ENABLED(SDSORT_DYNAMIC_RAM)
|
|
||||||
for (uint16_t i = 0; i < fileCnt; ++i) free(sortnames[i]);
|
|
||||||
#if HAS_FOLDER_SORTING
|
|
||||||
free(isDir);
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
sort_order[0] = 0;
|
|
||||||
#if ENABLED(SDSORT_USES_RAM) && ENABLED(SDSORT_CACHE_NAMES)
|
|
||||||
getfilename(0);
|
|
||||||
#if ENABLED(SDSORT_DYNAMIC_RAM)
|
|
||||||
sortnames = new char*[1];
|
|
||||||
sortnames[0] = strdup(longest_filename()); // malloc
|
|
||||||
#if ENABLED(SDSORT_CACHE_NAMES)
|
|
||||||
sortshort = new char*[1];
|
|
||||||
sortshort[0] = strdup(filename); // malloc
|
|
||||||
#endif
|
|
||||||
isDir = new uint8_t[1];
|
|
||||||
#else
|
|
||||||
#if SORTED_LONGNAME_MAXLEN != LONG_FILENAME_LENGTH
|
|
||||||
strncpy(sortnames[0], longest_filename(), SORTED_LONGNAME_MAXLEN);
|
|
||||||
sortnames[0][SORTED_LONGNAME_MAXLEN - 1] = '\0';
|
|
||||||
#else
|
|
||||||
strncpy(sortnames[0], longest_filename(), SORTED_LONGNAME_MAXLEN);
|
|
||||||
#endif
|
|
||||||
#if ENABLED(SDSORT_CACHE_NAMES)
|
|
||||||
strcpy(sortshort[0], filename);
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
isDir[0] = filenameIsDir ? 0x01 : 0x00;
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
sort_count = fileCnt;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void CardReader::flush_presort() {
|
|
||||||
if (sort_count > 0) {
|
|
||||||
#if ENABLED(SDSORT_DYNAMIC_RAM)
|
|
||||||
delete sort_order;
|
|
||||||
#if ENABLED(SDSORT_CACHE_NAMES)
|
|
||||||
for (uint8_t i = 0; i < sort_count; ++i) {
|
|
||||||
free(sortshort[i]); // strdup
|
|
||||||
free(sortnames[i]); // strdup
|
|
||||||
}
|
|
||||||
delete sortshort;
|
|
||||||
delete sortnames;
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
sort_count = 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif // SDCARD_SORT_ALPHA
|
|
||||||
|
|
||||||
uint16_t CardReader::get_num_Files() {
|
|
||||||
return
|
|
||||||
#if ENABLED(SDCARD_SORT_ALPHA) && SDSORT_USES_RAM && SDSORT_CACHE_NAMES
|
|
||||||
nrFiles // no need to access the SD card for filenames
|
|
||||||
#else
|
|
||||||
getnrfilenames()
|
|
||||||
#endif
|
|
||||||
;
|
|
||||||
}
|
|
||||||
|
|
||||||
void CardReader::printingHasFinished() {
|
|
||||||
planner.synchronize();
|
|
||||||
file.close();
|
|
||||||
if (file_subcall_ctr > 0) { // Heading up to a parent file that called current as a procedure.
|
|
||||||
file_subcall_ctr--;
|
|
||||||
openFile(proc_filenames[file_subcall_ctr], true, true);
|
|
||||||
setIndex(filespos[file_subcall_ctr]);
|
|
||||||
startFileprint();
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
sdprinting = false;
|
|
||||||
|
|
||||||
#if ENABLED(POWER_LOSS_RECOVERY)
|
|
||||||
removeJobRecoveryFile();
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(SD_FINISHED_STEPPERRELEASE) && defined(SD_FINISHED_RELEASECOMMAND)
|
|
||||||
planner.finish_and_disable();
|
|
||||||
#endif
|
|
||||||
print_job_timer.stop();
|
|
||||||
if (print_job_timer.duration() > 60)
|
|
||||||
enqueue_and_echo_commands_P(PSTR("M31"));
|
|
||||||
#if ENABLED(SDCARD_SORT_ALPHA)
|
|
||||||
presort();
|
|
||||||
#endif
|
|
||||||
#if ENABLED(ULTRA_LCD) && ENABLED(LCD_SET_PROGRESS_MANUALLY)
|
|
||||||
progress_bar_percent = 0;
|
|
||||||
#endif
|
|
||||||
#if ENABLED(SD_REPRINT_LAST_SELECTED_FILE)
|
|
||||||
lcd_reselect_last_file();
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#if ENABLED(AUTO_REPORT_SD_STATUS)
|
|
||||||
uint8_t CardReader::auto_report_sd_interval = 0;
|
|
||||||
millis_t CardReader::next_sd_report_ms;
|
|
||||||
|
|
||||||
void CardReader::auto_report_sd_status() {
|
|
||||||
millis_t current_ms = millis();
|
|
||||||
if (auto_report_sd_interval && ELAPSED(current_ms, next_sd_report_ms)) {
|
|
||||||
next_sd_report_ms = current_ms + 1000UL * auto_report_sd_interval;
|
|
||||||
getStatus();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif // AUTO_REPORT_SD_STATUS
|
|
||||||
|
|
||||||
#if ENABLED(POWER_LOSS_RECOVERY)
|
|
||||||
|
|
||||||
char job_recovery_file_name[4] = "bin";
|
|
||||||
|
|
||||||
void CardReader::openJobRecoveryFile(const bool read) {
|
|
||||||
if (!cardOK) return;
|
|
||||||
if (jobRecoveryFile.isOpen()) return;
|
|
||||||
if (!jobRecoveryFile.open(&root, job_recovery_file_name, read ? O_READ : O_CREAT | O_WRITE | O_TRUNC | O_SYNC)) {
|
|
||||||
SERIAL_PROTOCOLPAIR(MSG_SD_OPEN_FILE_FAIL, job_recovery_file_name);
|
|
||||||
SERIAL_PROTOCOLCHAR('.');
|
|
||||||
SERIAL_EOL();
|
|
||||||
}
|
|
||||||
else if (!read)
|
|
||||||
SERIAL_PROTOCOLLNPAIR(MSG_SD_WRITE_TO_FILE, job_recovery_file_name);
|
|
||||||
}
|
|
||||||
|
|
||||||
void CardReader::closeJobRecoveryFile() { jobRecoveryFile.close(); }
|
|
||||||
|
|
||||||
bool CardReader::jobRecoverFileExists() {
|
|
||||||
const bool exists = jobRecoveryFile.open(&root, job_recovery_file_name, O_READ);
|
|
||||||
if (exists) jobRecoveryFile.close();
|
|
||||||
return exists;
|
|
||||||
}
|
|
||||||
|
|
||||||
int16_t CardReader::saveJobRecoveryInfo() {
|
|
||||||
jobRecoveryFile.seekSet(0);
|
|
||||||
const int16_t ret = jobRecoveryFile.write(&job_recovery_info, sizeof(job_recovery_info));
|
|
||||||
#if ENABLED(DEBUG_POWER_LOSS_RECOVERY)
|
|
||||||
if (ret == -1) SERIAL_PROTOCOLLNPGM("Power-loss file write failed.");
|
|
||||||
#endif
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
int16_t CardReader::loadJobRecoveryInfo() {
|
|
||||||
return jobRecoveryFile.read(&job_recovery_info, sizeof(job_recovery_info));
|
|
||||||
}
|
|
||||||
|
|
||||||
void CardReader::removeJobRecoveryFile() {
|
|
||||||
job_recovery_info.valid_head = job_recovery_info.valid_foot = job_recovery_commands_count = 0;
|
|
||||||
if (jobRecoverFileExists()) {
|
|
||||||
closefile();
|
|
||||||
removeFile(job_recovery_file_name);
|
|
||||||
#if ENABLED(DEBUG_POWER_LOSS_RECOVERY)
|
|
||||||
SERIAL_PROTOCOLPGM("Power-loss file delete");
|
|
||||||
serialprintPGM(jobRecoverFileExists() ? PSTR(" failed.\n") : PSTR("d.\n"));
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif // POWER_LOSS_RECOVERY
|
|
||||||
|
|
||||||
#endif // SDSUPPORT
|
|
||||||
@@ -1,230 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef _CARDREADER_H_
|
|
||||||
#define _CARDREADER_H_
|
|
||||||
|
|
||||||
#include "MarlinConfig.h"
|
|
||||||
|
|
||||||
#if ENABLED(SDSUPPORT)
|
|
||||||
|
|
||||||
#define SD_RESORT ENABLED(SDCARD_SORT_ALPHA) && ENABLED(SDSORT_DYNAMIC_RAM)
|
|
||||||
|
|
||||||
#define MAX_DIR_DEPTH 10 // Maximum folder depth
|
|
||||||
|
|
||||||
#include "SdFile.h"
|
|
||||||
|
|
||||||
class CardReader {
|
|
||||||
public:
|
|
||||||
CardReader();
|
|
||||||
|
|
||||||
void initsd();
|
|
||||||
void write_command(char *buf);
|
|
||||||
|
|
||||||
void beginautostart();
|
|
||||||
void checkautostart();
|
|
||||||
|
|
||||||
void openFile(char * const path, const bool read, const bool subcall=false);
|
|
||||||
void openLogFile(char * const path);
|
|
||||||
void removeFile(const char * const name);
|
|
||||||
void closefile(const bool store_location=false);
|
|
||||||
void release();
|
|
||||||
void openAndPrintFile(const char *name);
|
|
||||||
void startFileprint();
|
|
||||||
void stopSDPrint(
|
|
||||||
#if SD_RESORT
|
|
||||||
const bool re_sort=false
|
|
||||||
#endif
|
|
||||||
);
|
|
||||||
void getStatus();
|
|
||||||
void printingHasFinished();
|
|
||||||
void printFilename();
|
|
||||||
|
|
||||||
#if ENABLED(LONG_FILENAME_HOST_SUPPORT)
|
|
||||||
void printLongPath(char *path);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
void getfilename(uint16_t nr, const char* const match=NULL);
|
|
||||||
uint16_t getnrfilenames();
|
|
||||||
|
|
||||||
void getAbsFilename(char *t);
|
|
||||||
|
|
||||||
void ls();
|
|
||||||
void chdir(const char *relpath);
|
|
||||||
int8_t updir();
|
|
||||||
void setroot();
|
|
||||||
|
|
||||||
const char* diveToFile(SdFile*& curDir, const char * const path, const bool echo);
|
|
||||||
|
|
||||||
uint16_t get_num_Files();
|
|
||||||
|
|
||||||
#if ENABLED(SDCARD_SORT_ALPHA)
|
|
||||||
void presort();
|
|
||||||
void getfilename_sorted(const uint16_t nr);
|
|
||||||
#if ENABLED(SDSORT_GCODE)
|
|
||||||
FORCE_INLINE void setSortOn(bool b) { sort_alpha = b; presort(); }
|
|
||||||
FORCE_INLINE void setSortFolders(int i) { sort_folders = i; presort(); }
|
|
||||||
//FORCE_INLINE void setSortReverse(bool b) { sort_reverse = b; }
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(POWER_LOSS_RECOVERY)
|
|
||||||
void openJobRecoveryFile(const bool read);
|
|
||||||
void closeJobRecoveryFile();
|
|
||||||
bool jobRecoverFileExists();
|
|
||||||
int16_t saveJobRecoveryInfo();
|
|
||||||
int16_t loadJobRecoveryInfo();
|
|
||||||
void removeJobRecoveryFile();
|
|
||||||
#endif
|
|
||||||
|
|
||||||
FORCE_INLINE void pauseSDPrint() { sdprinting = false; }
|
|
||||||
FORCE_INLINE bool isFileOpen() { return file.isOpen(); }
|
|
||||||
FORCE_INLINE bool eof() { return sdpos >= filesize; }
|
|
||||||
FORCE_INLINE int16_t get() { sdpos = file.curPosition(); return (int16_t)file.read(); }
|
|
||||||
FORCE_INLINE void setIndex(const uint32_t index) { sdpos = index; file.seekSet(index); }
|
|
||||||
FORCE_INLINE uint32_t getIndex() { return sdpos; }
|
|
||||||
FORCE_INLINE uint8_t percentDone() { return (isFileOpen() && filesize) ? sdpos / ((filesize + 99) / 100) : 0; }
|
|
||||||
FORCE_INLINE char* getWorkDirName() { workDir.getFilename(filename); return filename; }
|
|
||||||
|
|
||||||
#if ENABLED(AUTO_REPORT_SD_STATUS)
|
|
||||||
void auto_report_sd_status(void);
|
|
||||||
FORCE_INLINE void set_auto_report_interval(uint8_t v) {
|
|
||||||
NOMORE(v, 60);
|
|
||||||
auto_report_sd_interval = v;
|
|
||||||
next_sd_report_ms = millis() + 1000UL * v;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
FORCE_INLINE char* longest_filename() { return longFilename[0] ? longFilename : filename; }
|
|
||||||
|
|
||||||
public:
|
|
||||||
bool saving, logging, sdprinting, cardOK, filenameIsDir, abort_sd_printing;
|
|
||||||
char filename[FILENAME_LENGTH], longFilename[LONG_FILENAME_LENGTH];
|
|
||||||
int8_t autostart_index;
|
|
||||||
private:
|
|
||||||
SdFile root, workDir, workDirParents[MAX_DIR_DEPTH];
|
|
||||||
uint8_t workDirDepth;
|
|
||||||
|
|
||||||
// Sort files and folders alphabetically.
|
|
||||||
#if ENABLED(SDCARD_SORT_ALPHA)
|
|
||||||
uint16_t sort_count; // Count of sorted items in the current directory
|
|
||||||
#if ENABLED(SDSORT_GCODE)
|
|
||||||
bool sort_alpha; // Flag to enable / disable the feature
|
|
||||||
int sort_folders; // Flag to enable / disable folder sorting
|
|
||||||
//bool sort_reverse; // Flag to enable / disable reverse sorting
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// By default the sort index is static
|
|
||||||
#if ENABLED(SDSORT_DYNAMIC_RAM)
|
|
||||||
uint8_t *sort_order;
|
|
||||||
#else
|
|
||||||
uint8_t sort_order[SDSORT_LIMIT];
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(SDSORT_USES_RAM) && ENABLED(SDSORT_CACHE_NAMES) && DISABLED(SDSORT_DYNAMIC_RAM)
|
|
||||||
#define SORTED_LONGNAME_MAXLEN ((SDSORT_CACHE_VFATS) * (FILENAME_LENGTH) + 1)
|
|
||||||
#else
|
|
||||||
#define SORTED_LONGNAME_MAXLEN LONG_FILENAME_LENGTH
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Cache filenames to speed up SD menus.
|
|
||||||
#if ENABLED(SDSORT_USES_RAM)
|
|
||||||
|
|
||||||
// If using dynamic ram for names, allocate on the heap.
|
|
||||||
#if ENABLED(SDSORT_CACHE_NAMES)
|
|
||||||
#if ENABLED(SDSORT_DYNAMIC_RAM)
|
|
||||||
char **sortshort, **sortnames;
|
|
||||||
#else
|
|
||||||
char sortshort[SDSORT_LIMIT][FILENAME_LENGTH];
|
|
||||||
char sortnames[SDSORT_LIMIT][SORTED_LONGNAME_MAXLEN];
|
|
||||||
#endif
|
|
||||||
#elif DISABLED(SDSORT_USES_STACK)
|
|
||||||
char sortnames[SDSORT_LIMIT][SORTED_LONGNAME_MAXLEN];
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Folder sorting uses an isDir array when caching items.
|
|
||||||
#if HAS_FOLDER_SORTING
|
|
||||||
#if ENABLED(SDSORT_DYNAMIC_RAM)
|
|
||||||
uint8_t *isDir;
|
|
||||||
#elif ENABLED(SDSORT_CACHE_NAMES) || DISABLED(SDSORT_USES_STACK)
|
|
||||||
uint8_t isDir[(SDSORT_LIMIT+7)>>3];
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif // SDSORT_USES_RAM
|
|
||||||
|
|
||||||
#endif // SDCARD_SORT_ALPHA
|
|
||||||
|
|
||||||
Sd2Card sd2card;
|
|
||||||
SdVolume volume;
|
|
||||||
SdFile file;
|
|
||||||
|
|
||||||
#if ENABLED(POWER_LOSS_RECOVERY)
|
|
||||||
SdFile jobRecoveryFile;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define SD_PROCEDURE_DEPTH 1
|
|
||||||
#define MAXPATHNAMELENGTH (FILENAME_LENGTH*MAX_DIR_DEPTH + MAX_DIR_DEPTH + 1)
|
|
||||||
uint8_t file_subcall_ctr;
|
|
||||||
uint32_t filespos[SD_PROCEDURE_DEPTH];
|
|
||||||
char proc_filenames[SD_PROCEDURE_DEPTH][MAXPATHNAMELENGTH];
|
|
||||||
uint32_t filesize, sdpos;
|
|
||||||
|
|
||||||
LsAction lsAction; //stored for recursion.
|
|
||||||
uint16_t nrFiles; //counter for the files in the current directory and recycled as position counter for getting the nrFiles'th name in the directory.
|
|
||||||
char* diveDirName;
|
|
||||||
void lsDive(const char *prepend, SdFile parent, const char * const match=NULL);
|
|
||||||
|
|
||||||
#if ENABLED(SDCARD_SORT_ALPHA)
|
|
||||||
void flush_presort();
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if ENABLED(AUTO_REPORT_SD_STATUS)
|
|
||||||
static uint8_t auto_report_sd_interval;
|
|
||||||
static millis_t next_sd_report_ms;
|
|
||||||
#endif
|
|
||||||
};
|
|
||||||
|
|
||||||
#if PIN_EXISTS(SD_DETECT)
|
|
||||||
#if ENABLED(SD_DETECT_INVERTED)
|
|
||||||
#define IS_SD_INSERTED() READ(SD_DETECT_PIN)
|
|
||||||
#else
|
|
||||||
#define IS_SD_INSERTED() !READ(SD_DETECT_PIN)
|
|
||||||
#endif
|
|
||||||
#else
|
|
||||||
// No card detect line? Assume the card is inserted.
|
|
||||||
#define IS_SD_INSERTED() true
|
|
||||||
#endif
|
|
||||||
|
|
||||||
extern CardReader card;
|
|
||||||
|
|
||||||
#endif // SDSUPPORT
|
|
||||||
|
|
||||||
#if ENABLED(SDSUPPORT)
|
|
||||||
#define IS_SD_PRINTING() card.sdprinting
|
|
||||||
#define IS_SD_FILE_OPEN() card.isFileOpen()
|
|
||||||
#else
|
|
||||||
#define IS_SD_PRINTING() false
|
|
||||||
#define IS_SD_FILE_OPEN() false
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif // _CARDREADER_H_
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1,66 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Arduino library for MicroChip MCP4728 I2C D/A converter.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef DAC_MCP4728_H
|
|
||||||
#define DAC_MCP4728_H
|
|
||||||
|
|
||||||
#include "MarlinConfig.h"
|
|
||||||
|
|
||||||
#if ENABLED(DAC_STEPPER_CURRENT)
|
|
||||||
#include "Wire.h"
|
|
||||||
|
|
||||||
#define defaultVDD DAC_STEPPER_MAX //was 5000 but differs with internal Vref
|
|
||||||
#define BASE_ADDR 0x60
|
|
||||||
#define RESET 0B00000110
|
|
||||||
#define WAKE 0B00001001
|
|
||||||
#define UPDATE 0B00001000
|
|
||||||
#define MULTIWRITE 0B01000000
|
|
||||||
#define SINGLEWRITE 0B01011000
|
|
||||||
#define SEQWRITE 0B01010000
|
|
||||||
#define VREFWRITE 0B10000000
|
|
||||||
#define GAINWRITE 0B11000000
|
|
||||||
#define POWERDOWNWRITE 0B10100000
|
|
||||||
#define GENERALCALL 0B00000000
|
|
||||||
#define GAINWRITE 0B11000000
|
|
||||||
|
|
||||||
// This is taken from the original lib, makes it easy to edit if needed
|
|
||||||
// DAC_OR_ADDRESS defined in pins_BOARD.h file
|
|
||||||
#define DAC_DEV_ADDRESS (BASE_ADDR | DAC_OR_ADDRESS)
|
|
||||||
|
|
||||||
|
|
||||||
void mcp4728_init();
|
|
||||||
uint8_t mcp4728_analogWrite(uint8_t channel, uint16_t value);
|
|
||||||
uint8_t mcp4728_eepromWrite();
|
|
||||||
uint8_t mcp4728_setVref_all(uint8_t value);
|
|
||||||
uint8_t mcp4728_setGain_all(uint8_t value);
|
|
||||||
uint16_t mcp4728_getValue(uint8_t channel);
|
|
||||||
uint8_t mcp4728_fastWrite();
|
|
||||||
uint8_t mcp4728_simpleCommand(byte simpleCommand);
|
|
||||||
uint8_t mcp4728_getDrvPct(uint8_t channel);
|
|
||||||
void mcp4728_setDrvPct(uint8_t pct[XYZE]);
|
|
||||||
|
|
||||||
#endif
|
|
||||||
#endif // DAC_MCP4728_H
|
|
||||||
@@ -1,77 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* AVR busy wait delay Cycles routines:
|
|
||||||
*
|
|
||||||
* DELAY_CYCLES(count): Delay execution in cycles
|
|
||||||
* DELAY_NS(count): Delay execution in nanoseconds
|
|
||||||
* DELAY_US(count): Delay execution in microseconds
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef MARLIN_DELAY_H
|
|
||||||
#define MARLIN_DELAY_H
|
|
||||||
|
|
||||||
#define nop() __asm__ __volatile__("nop;\n\t":::)
|
|
||||||
|
|
||||||
FORCE_INLINE static void __delay_4cycles(uint8_t cy) {
|
|
||||||
__asm__ __volatile__(
|
|
||||||
L("1")
|
|
||||||
A("dec %[cnt]")
|
|
||||||
A("nop")
|
|
||||||
A("brne 1b")
|
|
||||||
: [cnt] "+r"(cy) // output: +r means input+output
|
|
||||||
: // input:
|
|
||||||
: "cc" // clobbers:
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ---------------- Delay in cycles */
|
|
||||||
FORCE_INLINE static void DELAY_CYCLES(uint16_t x) {
|
|
||||||
|
|
||||||
if (__builtin_constant_p(x)) {
|
|
||||||
#define MAXNOPS 4
|
|
||||||
|
|
||||||
if (x <= (MAXNOPS)) {
|
|
||||||
switch (x) { case 4: nop(); case 3: nop(); case 2: nop(); case 1: nop(); }
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
const uint32_t rem = (x) % (MAXNOPS);
|
|
||||||
switch (rem) { case 3: nop(); case 2: nop(); case 1: nop(); }
|
|
||||||
if ((x = (x) / (MAXNOPS)))
|
|
||||||
__delay_4cycles(x); // if need more then 4 nop loop is more optimal
|
|
||||||
}
|
|
||||||
|
|
||||||
#undef MAXNOPS
|
|
||||||
}
|
|
||||||
else
|
|
||||||
__delay_4cycles(x / 4);
|
|
||||||
}
|
|
||||||
#undef nop
|
|
||||||
|
|
||||||
/* ---------------- Delay in nanoseconds */
|
|
||||||
#define DELAY_NS(x) DELAY_CYCLES( (x) * (F_CPU/1000000L) / 1000L )
|
|
||||||
|
|
||||||
/* ---------------- Delay in microseconds */
|
|
||||||
#define DELAY_US(x) DELAY_CYCLES( (x) * (F_CPU/1000000L) )
|
|
||||||
|
|
||||||
#endif // MARLIN_DELAY_H
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1,194 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
Fontname: HD44780_C v1.2
|
|
||||||
Copyright: A. Hardtung, public domain
|
|
||||||
Capital A Height: 7, '1' Height: 7
|
|
||||||
Calculated Max Values w= 5 h= 8 x= 2 y= 7 dx= 6 dy= 0 ascent= 8 len= 8
|
|
||||||
Font Bounding box w= 6 h= 9 x= 0 y=-2
|
|
||||||
Calculated Min Values x= 0 y=-1 dx= 0 dy= 0
|
|
||||||
Pure Font ascent = 7 descent=-1
|
|
||||||
X Font ascent = 7 descent=-1
|
|
||||||
Max Font ascent = 8 descent=-1
|
|
||||||
*/
|
|
||||||
#include <U8glib.h>
|
|
||||||
const u8g_fntpgm_uint8_t HD44780_C_5x7[2522] U8G_SECTION(".progmem.HD44780_C_5x7") = {
|
|
||||||
0, 6, 9, 0, 254, 7, 1, 145, 3, 34, 32, 255, 255, 8, 255, 7,
|
|
||||||
255, 0, 0, 0, 6, 0, 0, 1, 7, 7, 6, 2, 0, 128, 128, 128,
|
|
||||||
128, 128, 0, 128, 3, 2, 2, 6, 1, 5, 160, 160, 5, 7, 7, 6,
|
|
||||||
0, 0, 80, 80, 248, 80, 248, 80, 80, 5, 7, 7, 6, 0, 0, 32,
|
|
||||||
120, 160, 112, 40, 240, 32, 5, 7, 7, 6, 0, 0, 192, 200, 16, 32,
|
|
||||||
64, 152, 24, 5, 7, 7, 6, 0, 0, 96, 144, 160, 64, 168, 144, 104,
|
|
||||||
2, 3, 3, 6, 1, 4, 192, 64, 128, 3, 7, 7, 6, 1, 0, 32,
|
|
||||||
64, 128, 128, 128, 64, 32, 3, 7, 7, 6, 1, 0, 128, 64, 32, 32,
|
|
||||||
32, 64, 128, 5, 5, 5, 6, 0, 1, 32, 168, 112, 168, 32, 5, 5,
|
|
||||||
5, 6, 0, 1, 32, 32, 248, 32, 32, 2, 3, 3, 6, 2, 255, 192,
|
|
||||||
64, 128, 5, 1, 1, 6, 0, 3, 248, 2, 2, 2, 6, 2, 0, 192,
|
|
||||||
192, 5, 5, 5, 6, 0, 1, 8, 16, 32, 64, 128, 5, 7, 7, 6,
|
|
||||||
0, 0, 112, 136, 152, 168, 200, 136, 112, 3, 7, 7, 6, 1, 0, 64,
|
|
||||||
192, 64, 64, 64, 64, 224, 5, 7, 7, 6, 0, 0, 112, 136, 8, 112,
|
|
||||||
128, 128, 248, 5, 7, 7, 6, 0, 0, 248, 16, 32, 16, 8, 8, 240,
|
|
||||||
5, 7, 7, 6, 0, 0, 16, 48, 80, 144, 248, 16, 16, 5, 7, 7,
|
|
||||||
6, 0, 0, 248, 128, 240, 8, 8, 136, 112, 5, 7, 7, 6, 0, 0,
|
|
||||||
48, 64, 128, 240, 136, 136, 112, 5, 7, 7, 6, 0, 0, 248, 8, 16,
|
|
||||||
32, 32, 32, 32, 5, 7, 7, 6, 0, 0, 112, 136, 136, 112, 136, 136,
|
|
||||||
112, 5, 7, 7, 6, 0, 0, 112, 136, 136, 120, 8, 16, 96, 2, 5,
|
|
||||||
5, 6, 2, 0, 192, 192, 0, 192, 192, 2, 6, 6, 6, 2, 255, 192,
|
|
||||||
192, 0, 192, 64, 128, 4, 7, 7, 6, 0, 0, 16, 32, 64, 128, 64,
|
|
||||||
32, 16, 5, 3, 3, 6, 0, 2, 248, 0, 248, 4, 7, 7, 6, 1,
|
|
||||||
0, 128, 64, 32, 16, 32, 64, 128, 5, 7, 7, 6, 0, 0, 112, 136,
|
|
||||||
8, 16, 32, 0, 32, 5, 6, 6, 6, 0, 0, 112, 136, 8, 104, 168,
|
|
||||||
112, 5, 7, 7, 6, 0, 0, 112, 136, 136, 248, 136, 136, 136, 5, 7,
|
|
||||||
7, 6, 0, 0, 240, 136, 136, 240, 136, 136, 240, 5, 7, 7, 6, 0,
|
|
||||||
0, 112, 136, 128, 128, 128, 136, 112, 5, 7, 7, 6, 0, 0, 224, 144,
|
|
||||||
136, 136, 136, 144, 224, 5, 7, 7, 6, 0, 0, 248, 128, 128, 240, 128,
|
|
||||||
128, 248, 5, 7, 7, 6, 0, 0, 248, 128, 128, 240, 128, 128, 128, 5,
|
|
||||||
7, 7, 6, 0, 0, 112, 136, 128, 184, 136, 136, 112, 5, 7, 7, 6,
|
|
||||||
0, 0, 136, 136, 136, 248, 136, 136, 136, 1, 7, 7, 6, 2, 0, 128,
|
|
||||||
128, 128, 128, 128, 128, 128, 5, 7, 7, 6, 0, 0, 56, 16, 16, 16,
|
|
||||||
16, 144, 96, 5, 7, 7, 6, 0, 0, 136, 144, 160, 192, 160, 144, 136,
|
|
||||||
5, 7, 7, 6, 0, 0, 128, 128, 128, 128, 128, 128, 248, 5, 7, 7,
|
|
||||||
6, 0, 0, 136, 216, 168, 136, 136, 136, 136, 5, 7, 7, 6, 0, 0,
|
|
||||||
136, 136, 200, 168, 152, 136, 136, 5, 7, 7, 6, 0, 0, 112, 136, 136,
|
|
||||||
136, 136, 136, 112, 5, 7, 7, 6, 0, 0, 240, 136, 136, 240, 128, 128,
|
|
||||||
128, 5, 7, 7, 6, 0, 0, 112, 136, 136, 136, 168, 144, 104, 5, 7,
|
|
||||||
7, 6, 0, 0, 240, 136, 136, 240, 160, 144, 136, 5, 7, 7, 6, 0,
|
|
||||||
0, 120, 128, 128, 112, 8, 8, 240, 5, 7, 7, 6, 0, 0, 248, 32,
|
|
||||||
32, 32, 32, 32, 32, 5, 7, 7, 6, 0, 0, 136, 136, 136, 136, 136,
|
|
||||||
136, 112, 5, 7, 7, 6, 0, 0, 136, 136, 136, 136, 136, 80, 32, 5,
|
|
||||||
7, 7, 6, 0, 0, 136, 136, 136, 136, 136, 168, 80, 5, 7, 7, 6,
|
|
||||||
0, 0, 136, 136, 80, 32, 80, 136, 136, 5, 7, 7, 6, 0, 0, 136,
|
|
||||||
136, 136, 80, 32, 32, 32, 5, 7, 7, 6, 0, 0, 248, 8, 16, 32,
|
|
||||||
64, 128, 248, 3, 7, 7, 6, 1, 0, 224, 128, 128, 128, 128, 128, 224,
|
|
||||||
5, 7, 7, 6, 0, 0, 32, 112, 160, 160, 168, 112, 32, 3, 7, 7,
|
|
||||||
6, 1, 0, 224, 32, 32, 32, 32, 32, 224, 5, 3, 3, 6, 0, 4,
|
|
||||||
32, 80, 136, 5, 1, 1, 6, 0, 0, 248, 2, 2, 2, 6, 2, 5,
|
|
||||||
128, 64, 5, 5, 5, 6, 0, 0, 112, 8, 120, 136, 120, 5, 7, 7,
|
|
||||||
6, 0, 0, 128, 128, 176, 200, 136, 136, 240, 5, 5, 5, 6, 0, 0,
|
|
||||||
112, 128, 128, 136, 112, 5, 7, 7, 6, 0, 0, 8, 8, 104, 152, 136,
|
|
||||||
136, 120, 5, 5, 5, 6, 0, 0, 112, 136, 248, 128, 112, 5, 7, 7,
|
|
||||||
6, 0, 0, 48, 72, 224, 64, 64, 64, 64, 5, 6, 6, 6, 0, 255,
|
|
||||||
112, 136, 136, 120, 8, 112, 5, 7, 7, 6, 0, 0, 128, 128, 176, 200,
|
|
||||||
136, 136, 136, 1, 7, 7, 6, 2, 0, 128, 0, 128, 128, 128, 128, 128,
|
|
||||||
3, 8, 8, 6, 1, 255, 32, 0, 32, 32, 32, 32, 160, 64, 4, 7,
|
|
||||||
7, 6, 0, 0, 128, 128, 144, 160, 192, 160, 144, 3, 7, 7, 6, 1,
|
|
||||||
0, 192, 64, 64, 64, 64, 64, 224, 5, 5, 5, 6, 0, 0, 208, 168,
|
|
||||||
168, 168, 168, 5, 5, 5, 6, 0, 0, 176, 200, 136, 136, 136, 5, 5,
|
|
||||||
5, 6, 0, 0, 112, 136, 136, 136, 112, 5, 6, 6, 6, 0, 255, 240,
|
|
||||||
136, 136, 240, 128, 128, 5, 6, 6, 6, 0, 255, 120, 136, 136, 120, 8,
|
|
||||||
8, 5, 5, 5, 6, 0, 0, 176, 200, 128, 128, 128, 5, 5, 5, 6,
|
|
||||||
0, 0, 112, 128, 112, 8, 240, 5, 7, 7, 6, 0, 0, 64, 64, 224,
|
|
||||||
64, 64, 72, 48, 5, 5, 5, 6, 0, 0, 136, 136, 136, 152, 104, 5,
|
|
||||||
5, 5, 6, 0, 0, 136, 136, 136, 80, 32, 5, 5, 5, 6, 0, 0,
|
|
||||||
136, 136, 168, 168, 80, 5, 5, 5, 6, 0, 0, 136, 80, 32, 80, 136,
|
|
||||||
5, 6, 6, 6, 0, 255, 136, 136, 136, 120, 8, 112, 5, 5, 5, 6,
|
|
||||||
0, 0, 248, 16, 32, 64, 248, 5, 5, 5, 6, 0, 2, 184, 168, 168,
|
|
||||||
168, 184, 5, 5, 5, 6, 0, 2, 184, 136, 184, 160, 184, 5, 5, 5,
|
|
||||||
6, 0, 2, 184, 160, 184, 136, 184, 5, 6, 6, 6, 0, 1, 8, 40,
|
|
||||||
72, 248, 64, 32, 5, 5, 5, 6, 0, 0, 56, 112, 224, 136, 240, 0,
|
|
||||||
0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0,
|
|
||||||
0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0,
|
|
||||||
6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0,
|
|
||||||
0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0,
|
|
||||||
0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0,
|
|
||||||
6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0,
|
|
||||||
0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0,
|
|
||||||
0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0,
|
|
||||||
6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0,
|
|
||||||
0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0,
|
|
||||||
0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0,
|
|
||||||
6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 5,
|
|
||||||
7, 7, 6, 0, 0, 248, 136, 128, 240, 136, 136, 240, 5, 7, 7, 6,
|
|
||||||
0, 0, 248, 136, 128, 128, 128, 128, 128, 5, 7, 7, 6, 0, 0, 80,
|
|
||||||
0, 248, 128, 240, 128, 248, 5, 7, 7, 6, 0, 0, 168, 168, 168, 112,
|
|
||||||
168, 168, 168, 5, 7, 7, 6, 0, 0, 240, 8, 8, 112, 8, 8, 240,
|
|
||||||
5, 7, 7, 6, 0, 0, 136, 136, 152, 168, 200, 136, 136, 5, 8, 8,
|
|
||||||
6, 0, 0, 80, 32, 136, 152, 168, 168, 200, 136, 5, 7, 7, 6, 0,
|
|
||||||
0, 120, 40, 40, 40, 40, 168, 72, 5, 7, 7, 6, 0, 0, 248, 136,
|
|
||||||
136, 136, 136, 136, 136, 5, 7, 7, 6, 0, 0, 136, 136, 136, 80, 32,
|
|
||||||
64, 128, 5, 7, 7, 6, 0, 0, 32, 112, 168, 168, 168, 112, 32, 5,
|
|
||||||
7, 7, 6, 0, 0, 136, 136, 136, 120, 8, 8, 8, 5, 7, 7, 6,
|
|
||||||
0, 0, 168, 168, 168, 168, 168, 168, 248, 5, 7, 7, 6, 0, 0, 192,
|
|
||||||
64, 64, 112, 72, 72, 112, 5, 7, 7, 6, 0, 0, 136, 136, 136, 200,
|
|
||||||
168, 168, 200, 5, 7, 7, 6, 0, 0, 112, 136, 8, 56, 8, 136, 112,
|
|
||||||
5, 7, 7, 6, 0, 0, 144, 168, 168, 232, 168, 168, 144, 5, 7, 7,
|
|
||||||
6, 0, 0, 120, 136, 136, 120, 40, 72, 136, 5, 7, 7, 6, 0, 0,
|
|
||||||
24, 96, 128, 240, 136, 136, 112, 4, 5, 5, 6, 0, 0, 224, 144, 224,
|
|
||||||
144, 224, 5, 5, 5, 6, 0, 0, 248, 136, 128, 128, 128, 5, 7, 7,
|
|
||||||
6, 0, 0, 80, 0, 112, 136, 248, 128, 112, 5, 5, 5, 6, 0, 0,
|
|
||||||
168, 168, 112, 168, 168, 5, 5, 5, 6, 0, 0, 240, 8, 48, 8, 240,
|
|
||||||
5, 5, 5, 6, 0, 0, 136, 152, 168, 200, 136, 5, 7, 7, 6, 0,
|
|
||||||
0, 80, 32, 136, 152, 168, 200, 136, 4, 5, 5, 6, 0, 0, 144, 160,
|
|
||||||
192, 160, 144, 5, 5, 5, 6, 0, 0, 248, 40, 40, 168, 72, 5, 5,
|
|
||||||
5, 6, 0, 0, 136, 216, 168, 136, 136, 5, 5, 5, 6, 0, 0, 136,
|
|
||||||
136, 248, 136, 136, 5, 5, 5, 6, 0, 0, 248, 136, 136, 136, 136, 5,
|
|
||||||
5, 5, 6, 0, 0, 248, 32, 32, 32, 32, 5, 5, 5, 6, 0, 0,
|
|
||||||
136, 136, 120, 8, 8, 5, 5, 5, 6, 0, 0, 168, 168, 168, 168, 248,
|
|
||||||
5, 5, 5, 6, 0, 0, 192, 64, 112, 72, 112, 5, 5, 5, 6, 0,
|
|
||||||
0, 136, 136, 200, 168, 200, 4, 5, 5, 6, 0, 0, 128, 128, 224, 144,
|
|
||||||
224, 5, 5, 5, 6, 0, 0, 112, 136, 56, 136, 112, 5, 5, 5, 6,
|
|
||||||
0, 0, 144, 168, 232, 168, 144, 5, 5, 5, 6, 0, 0, 120, 136, 120,
|
|
||||||
40, 72, 5, 5, 5, 6, 0, 1, 32, 72, 144, 72, 32, 5, 5, 5,
|
|
||||||
6, 0, 1, 32, 144, 72, 144, 32, 5, 3, 3, 6, 0, 0, 72, 144,
|
|
||||||
216, 5, 3, 3, 6, 0, 4, 216, 72, 144, 5, 7, 7, 6, 0, 0,
|
|
||||||
144, 208, 176, 144, 56, 40, 56, 5, 7, 7, 6, 0, 0, 32, 0, 32,
|
|
||||||
64, 128, 136, 112, 5, 7, 7, 6, 0, 0, 24, 32, 32, 112, 32, 32,
|
|
||||||
192, 5, 7, 7, 6, 0, 0, 32, 80, 64, 240, 64, 64, 120, 1, 2,
|
|
||||||
2, 6, 2, 0, 128, 128, 1, 4, 4, 6, 2, 0, 128, 128, 128, 128,
|
|
||||||
3, 5, 5, 6, 1, 0, 160, 160, 160, 0, 224, 3, 5, 5, 6, 1,
|
|
||||||
0, 160, 160, 160, 0, 160, 5, 7, 7, 6, 0, 0, 160, 0, 232, 16,
|
|
||||||
32, 64, 128, 5, 5, 5, 6, 0, 1, 216, 112, 32, 112, 216, 5, 7,
|
|
||||||
7, 6, 0, 0, 160, 64, 168, 16, 32, 64, 128, 3, 6, 6, 6, 1,
|
|
||||||
1, 224, 64, 64, 64, 64, 224, 5, 6, 6, 6, 0, 1, 248, 80, 80,
|
|
||||||
80, 80, 248, 5, 7, 7, 6, 0, 0, 32, 112, 168, 32, 32, 32, 32,
|
|
||||||
5, 7, 7, 6, 0, 0, 32, 32, 32, 32, 168, 112, 32, 5, 7, 7,
|
|
||||||
6, 0, 0, 128, 144, 176, 248, 176, 144, 128, 5, 7, 7, 6, 0, 0,
|
|
||||||
8, 72, 104, 248, 104, 72, 8, 5, 7, 7, 6, 0, 0, 128, 136, 168,
|
|
||||||
248, 168, 136, 128, 5, 7, 7, 6, 0, 0, 128, 224, 136, 16, 32, 64,
|
|
||||||
128, 2, 2, 2, 6, 2, 2, 192, 192, 5, 8, 8, 6, 0, 255, 120,
|
|
||||||
40, 40, 40, 72, 136, 248, 136, 5, 8, 8, 6, 0, 255, 136, 136, 136,
|
|
||||||
136, 136, 136, 248, 8, 5, 8, 8, 6, 0, 255, 168, 168, 168, 168, 168,
|
|
||||||
168, 248, 8, 5, 6, 6, 6, 0, 255, 120, 40, 72, 136, 248, 136, 5,
|
|
||||||
7, 7, 6, 0, 255, 32, 32, 112, 168, 168, 112, 32, 5, 6, 6, 6,
|
|
||||||
0, 255, 136, 136, 136, 136, 248, 8, 5, 6, 6, 6, 0, 255, 168, 168,
|
|
||||||
168, 168, 248, 8, 2, 2, 2, 6, 2, 6, 64, 128, 3, 1, 1, 6,
|
|
||||||
1, 7, 160, 5, 2, 2, 6, 0, 6, 72, 176, 5, 8, 8, 6, 0,
|
|
||||||
0, 16, 32, 0, 112, 136, 248, 128, 112, 5, 6, 6, 6, 0, 255, 112,
|
|
||||||
128, 136, 112, 32, 96, 3, 7, 7, 6, 1, 0, 160, 0, 160, 160, 160,
|
|
||||||
32, 192, 5, 6, 6, 6, 0, 1, 32, 112, 112, 112, 248, 32, 5, 5,
|
|
||||||
5, 6, 0, 1, 80, 0, 136, 0, 80, 5, 5, 5, 6, 0, 1, 112,
|
|
||||||
136, 136, 136, 112, 5, 7, 7, 6, 0, 0, 136, 144, 168, 88, 184, 8,
|
|
||||||
8, 5, 7, 7, 6, 0, 0, 136, 144, 184, 72, 184, 8, 56, 5, 7,
|
|
||||||
7, 6, 0, 0, 136, 144, 184, 72, 152, 32, 56, 5, 8, 8, 6, 0,
|
|
||||||
0, 192, 64, 192, 72, 216, 56, 8, 8, 5, 7, 7, 6, 0, 0, 136,
|
|
||||||
248, 136, 248, 136, 248, 136, 4, 5, 5, 6, 0, 2, 192, 0, 48, 0,
|
|
||||||
96, 5, 8, 8, 6, 0, 0, 64, 160, 224, 168, 8, 40, 120, 32, 5,
|
|
||||||
8, 8, 6, 0, 0, 64, 112, 64, 120, 64, 112, 64, 224, 5, 8, 8,
|
|
||||||
6, 0, 0, 32, 112, 32, 248, 32, 112, 32, 112, 5, 7, 7, 6, 0,
|
|
||||||
0, 104, 0, 232, 0, 104, 16, 56, 5, 8, 8, 6, 0, 0, 16, 112,
|
|
||||||
16, 240, 16, 112, 16, 56, 5, 7, 7, 6, 0, 1, 32, 112, 32, 248,
|
|
||||||
32, 112, 32, 5, 8, 8, 6, 0, 0, 16, 144, 80, 48, 80, 144, 16,
|
|
||||||
56, 5, 8, 8, 6, 0, 0, 48, 72, 32, 80, 80, 32, 144, 96, 5,
|
|
||||||
7, 7, 6, 0, 0, 120, 168, 168, 120, 40, 40, 40, 5, 8, 8, 6,
|
|
||||||
0, 0, 248, 248, 248, 248, 248, 248, 248, 248
|
|
||||||
};
|
|
||||||
@@ -1,192 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
Fontname: HD44780_J
|
|
||||||
Copyright: A. Hardtung, public domain
|
|
||||||
Capital A Height: 7, '1' Height: 7
|
|
||||||
Calculated Max Values w= 6 h=10 x= 2 y= 5 dx= 6 dy= 0 ascent= 8 len= 8
|
|
||||||
Font Bounding box w= 6 h= 9 x= 0 y=-2
|
|
||||||
Calculated Min Values x= 0 y=-2 dx= 0 dy= 0
|
|
||||||
Pure Font ascent = 7 descent=-1
|
|
||||||
X Font ascent = 7 descent=-1
|
|
||||||
Max Font ascent = 8 descent=-2
|
|
||||||
*/
|
|
||||||
#include <U8glib.h>
|
|
||||||
const u8g_fntpgm_uint8_t HD44780_J_5x7[2492] U8G_SECTION(".progmem.HD44780_J_5x7") = {
|
|
||||||
0, 6, 9, 0, 254, 7, 1, 145, 3, 34, 32, 255, 255, 8, 254, 7,
|
|
||||||
255, 0, 0, 0, 6, 0, 0, 1, 7, 7, 6, 2, 0, 128, 128, 128,
|
|
||||||
128, 128, 0, 128, 3, 2, 2, 6, 1, 5, 160, 160, 5, 7, 7, 6,
|
|
||||||
0, 0, 80, 80, 248, 80, 248, 80, 80, 5, 7, 7, 6, 0, 0, 32,
|
|
||||||
120, 160, 112, 40, 240, 32, 5, 7, 7, 6, 0, 0, 192, 200, 16, 32,
|
|
||||||
64, 152, 24, 5, 7, 7, 6, 0, 0, 96, 144, 160, 64, 168, 144, 104,
|
|
||||||
2, 3, 3, 6, 1, 4, 192, 64, 128, 3, 7, 7, 6, 1, 0, 32,
|
|
||||||
64, 128, 128, 128, 64, 32, 3, 7, 7, 6, 1, 0, 128, 64, 32, 32,
|
|
||||||
32, 64, 128, 5, 5, 5, 6, 0, 1, 32, 168, 112, 168, 32, 5, 5,
|
|
||||||
5, 6, 0, 1, 32, 32, 248, 32, 32, 2, 3, 3, 6, 2, 255, 192,
|
|
||||||
64, 128, 5, 1, 1, 6, 0, 3, 248, 2, 2, 2, 6, 2, 0, 192,
|
|
||||||
192, 5, 5, 5, 6, 0, 1, 8, 16, 32, 64, 128, 5, 7, 7, 6,
|
|
||||||
0, 0, 112, 136, 152, 168, 200, 136, 112, 3, 7, 7, 6, 1, 0, 64,
|
|
||||||
192, 64, 64, 64, 64, 224, 5, 7, 7, 6, 0, 0, 112, 136, 8, 112,
|
|
||||||
128, 128, 248, 5, 7, 7, 6, 0, 0, 248, 16, 32, 16, 8, 8, 240,
|
|
||||||
5, 7, 7, 6, 0, 0, 16, 48, 80, 144, 248, 16, 16, 5, 7, 7,
|
|
||||||
6, 0, 0, 248, 128, 240, 8, 8, 136, 112, 5, 7, 7, 6, 0, 0,
|
|
||||||
48, 64, 128, 240, 136, 136, 112, 5, 7, 7, 6, 0, 0, 248, 8, 16,
|
|
||||||
32, 32, 32, 32, 5, 7, 7, 6, 0, 0, 112, 136, 136, 112, 136, 136,
|
|
||||||
112, 5, 7, 7, 6, 0, 0, 112, 136, 136, 120, 8, 16, 96, 2, 5,
|
|
||||||
5, 6, 2, 0, 192, 192, 0, 192, 192, 2, 6, 6, 6, 2, 255, 192,
|
|
||||||
192, 0, 192, 64, 128, 4, 7, 7, 6, 0, 0, 16, 32, 64, 128, 64,
|
|
||||||
32, 16, 5, 3, 3, 6, 0, 2, 248, 0, 248, 4, 7, 7, 6, 1,
|
|
||||||
0, 128, 64, 32, 16, 32, 64, 128, 5, 7, 7, 6, 0, 0, 112, 136,
|
|
||||||
8, 16, 32, 0, 32, 5, 6, 6, 6, 0, 0, 112, 136, 8, 104, 168,
|
|
||||||
112, 5, 7, 7, 6, 0, 0, 112, 136, 136, 248, 136, 136, 136, 5, 7,
|
|
||||||
7, 6, 0, 0, 240, 136, 136, 240, 136, 136, 240, 5, 7, 7, 6, 0,
|
|
||||||
0, 112, 136, 128, 128, 128, 136, 112, 5, 7, 7, 6, 0, 0, 224, 144,
|
|
||||||
136, 136, 136, 144, 224, 5, 7, 7, 6, 0, 0, 248, 128, 128, 240, 128,
|
|
||||||
128, 248, 5, 7, 7, 6, 0, 0, 248, 128, 128, 240, 128, 128, 128, 5,
|
|
||||||
7, 7, 6, 0, 0, 112, 136, 128, 184, 136, 136, 112, 5, 7, 7, 6,
|
|
||||||
0, 0, 136, 136, 136, 248, 136, 136, 136, 1, 7, 7, 6, 2, 0, 128,
|
|
||||||
128, 128, 128, 128, 128, 128, 5, 7, 7, 6, 0, 0, 56, 16, 16, 16,
|
|
||||||
16, 144, 96, 5, 7, 7, 6, 0, 0, 136, 144, 160, 192, 160, 144, 136,
|
|
||||||
5, 7, 7, 6, 0, 0, 128, 128, 128, 128, 128, 128, 248, 5, 7, 7,
|
|
||||||
6, 0, 0, 136, 216, 168, 136, 136, 136, 136, 5, 7, 7, 6, 0, 0,
|
|
||||||
136, 136, 200, 168, 152, 136, 136, 5, 7, 7, 6, 0, 0, 112, 136, 136,
|
|
||||||
136, 136, 136, 112, 5, 7, 7, 6, 0, 0, 240, 136, 136, 240, 128, 128,
|
|
||||||
128, 5, 7, 7, 6, 0, 0, 112, 136, 136, 136, 168, 144, 104, 5, 7,
|
|
||||||
7, 6, 0, 0, 240, 136, 136, 240, 160, 144, 136, 5, 7, 7, 6, 0,
|
|
||||||
0, 120, 128, 128, 112, 8, 8, 240, 5, 7, 7, 6, 0, 0, 248, 32,
|
|
||||||
32, 32, 32, 32, 32, 5, 7, 7, 6, 0, 0, 136, 136, 136, 136, 136,
|
|
||||||
136, 112, 5, 7, 7, 6, 0, 0, 136, 136, 136, 136, 136, 80, 32, 5,
|
|
||||||
7, 7, 6, 0, 0, 136, 136, 136, 136, 136, 168, 80, 5, 7, 7, 6,
|
|
||||||
0, 0, 136, 136, 80, 32, 80, 136, 136, 5, 7, 7, 6, 0, 0, 136,
|
|
||||||
136, 136, 80, 32, 32, 32, 5, 7, 7, 6, 0, 0, 248, 8, 16, 32,
|
|
||||||
64, 128, 248, 3, 7, 7, 6, 1, 0, 224, 128, 128, 128, 128, 128, 224,
|
|
||||||
5, 7, 7, 6, 0, 0, 136, 80, 248, 32, 248, 32, 32, 3, 7, 7,
|
|
||||||
6, 1, 0, 224, 32, 32, 32, 32, 32, 224, 5, 3, 3, 6, 0, 4,
|
|
||||||
32, 80, 136, 5, 1, 1, 6, 0, 0, 248, 2, 2, 2, 6, 2, 5,
|
|
||||||
128, 64, 5, 5, 5, 6, 0, 0, 112, 8, 120, 136, 120, 5, 7, 7,
|
|
||||||
6, 0, 0, 128, 128, 176, 200, 136, 136, 240, 5, 5, 5, 6, 0, 0,
|
|
||||||
112, 128, 128, 136, 112, 5, 7, 7, 6, 0, 0, 8, 8, 104, 152, 136,
|
|
||||||
136, 120, 5, 5, 5, 6, 0, 0, 112, 136, 248, 128, 112, 5, 7, 7,
|
|
||||||
6, 0, 0, 48, 72, 224, 64, 64, 64, 64, 5, 6, 6, 6, 0, 255,
|
|
||||||
112, 136, 136, 120, 8, 112, 5, 7, 7, 6, 0, 0, 128, 128, 176, 200,
|
|
||||||
136, 136, 136, 1, 7, 7, 6, 2, 0, 128, 0, 128, 128, 128, 128, 128,
|
|
||||||
3, 8, 8, 6, 1, 255, 32, 0, 32, 32, 32, 32, 160, 64, 4, 7,
|
|
||||||
7, 6, 0, 0, 128, 128, 144, 160, 192, 160, 144, 3, 7, 7, 6, 1,
|
|
||||||
0, 192, 64, 64, 64, 64, 64, 224, 5, 5, 5, 6, 0, 0, 208, 168,
|
|
||||||
168, 168, 168, 5, 5, 5, 6, 0, 0, 176, 200, 136, 136, 136, 5, 5,
|
|
||||||
5, 6, 0, 0, 112, 136, 136, 136, 112, 5, 6, 6, 6, 0, 255, 240,
|
|
||||||
136, 136, 240, 128, 128, 5, 6, 6, 6, 0, 255, 120, 136, 136, 120, 8,
|
|
||||||
8, 5, 5, 5, 6, 0, 0, 176, 200, 128, 128, 128, 5, 5, 5, 6,
|
|
||||||
0, 0, 112, 128, 112, 8, 240, 5, 7, 7, 6, 0, 0, 64, 64, 224,
|
|
||||||
64, 64, 72, 48, 5, 5, 5, 6, 0, 0, 136, 136, 136, 152, 104, 5,
|
|
||||||
5, 5, 6, 0, 0, 136, 136, 136, 80, 32, 5, 5, 5, 6, 0, 0,
|
|
||||||
136, 136, 168, 168, 80, 5, 5, 5, 6, 0, 0, 136, 80, 32, 80, 136,
|
|
||||||
5, 6, 6, 6, 0, 255, 136, 136, 136, 120, 8, 112, 5, 5, 5, 6,
|
|
||||||
0, 0, 248, 16, 32, 64, 248, 3, 7, 7, 6, 1, 0, 32, 64, 64,
|
|
||||||
128, 64, 64, 32, 1, 7, 7, 6, 2, 0, 128, 128, 128, 128, 128, 128,
|
|
||||||
128, 3, 7, 7, 6, 1, 0, 128, 64, 64, 32, 64, 64, 128, 5, 5,
|
|
||||||
5, 6, 0, 1, 32, 16, 248, 16, 32, 5, 5, 5, 6, 0, 1, 32,
|
|
||||||
64, 248, 64, 32, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0,
|
|
||||||
0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6,
|
|
||||||
0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0,
|
|
||||||
0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0,
|
|
||||||
0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6,
|
|
||||||
0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0,
|
|
||||||
0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0,
|
|
||||||
0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6,
|
|
||||||
0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0,
|
|
||||||
0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0,
|
|
||||||
0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6,
|
|
||||||
0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0,
|
|
||||||
0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 3, 3, 3, 6, 0, 0,
|
|
||||||
224, 160, 224, 3, 4, 4, 6, 2, 3, 224, 128, 128, 128, 3, 4, 4,
|
|
||||||
6, 0, 0, 32, 32, 32, 224, 3, 3, 3, 6, 0, 0, 128, 64, 32,
|
|
||||||
2, 2, 2, 6, 1, 2, 192, 192, 5, 6, 6, 6, 0, 0, 248, 8,
|
|
||||||
248, 8, 16, 32, 5, 5, 5, 6, 0, 0, 248, 8, 48, 32, 64, 4,
|
|
||||||
5, 5, 6, 0, 0, 16, 32, 96, 160, 32, 5, 5, 5, 6, 0, 0,
|
|
||||||
32, 248, 136, 8, 48, 5, 4, 4, 6, 0, 0, 248, 32, 32, 248, 5,
|
|
||||||
5, 5, 6, 0, 0, 16, 248, 48, 80, 144, 5, 5, 5, 6, 0, 0,
|
|
||||||
64, 248, 72, 80, 64, 5, 4, 4, 6, 0, 0, 112, 16, 16, 248, 4,
|
|
||||||
5, 5, 6, 0, 0, 240, 16, 240, 16, 240, 5, 4, 4, 6, 0, 0,
|
|
||||||
168, 168, 8, 48, 5, 1, 1, 6, 0, 3, 248, 5, 7, 7, 6, 0,
|
|
||||||
0, 248, 8, 40, 48, 32, 32, 64, 5, 7, 7, 6, 0, 0, 8, 16,
|
|
||||||
32, 96, 160, 32, 32, 5, 7, 7, 6, 0, 0, 32, 248, 136, 136, 8,
|
|
||||||
16, 32, 5, 6, 6, 6, 0, 0, 248, 32, 32, 32, 32, 248, 5, 7,
|
|
||||||
7, 6, 0, 0, 16, 248, 16, 48, 80, 144, 16, 5, 7, 7, 6, 0,
|
|
||||||
0, 64, 248, 72, 72, 72, 72, 144, 5, 7, 7, 6, 0, 0, 32, 248,
|
|
||||||
32, 248, 32, 32, 32, 5, 6, 6, 6, 0, 0, 120, 72, 136, 8, 16,
|
|
||||||
96, 5, 7, 7, 6, 0, 0, 64, 120, 144, 16, 16, 16, 32, 5, 6,
|
|
||||||
6, 6, 0, 0, 248, 8, 8, 8, 8, 248, 5, 7, 7, 6, 0, 0,
|
|
||||||
80, 248, 80, 80, 16, 32, 64, 5, 6, 6, 6, 0, 0, 192, 8, 200,
|
|
||||||
8, 16, 224, 5, 6, 6, 6, 0, 0, 248, 8, 16, 32, 80, 136, 5,
|
|
||||||
7, 7, 6, 0, 0, 64, 248, 72, 80, 64, 64, 56, 5, 6, 6, 6,
|
|
||||||
0, 0, 136, 136, 72, 8, 16, 96, 5, 6, 6, 6, 0, 0, 120, 72,
|
|
||||||
168, 24, 16, 96, 5, 7, 7, 6, 0, 0, 16, 224, 32, 248, 32, 32,
|
|
||||||
64, 5, 6, 6, 6, 0, 0, 168, 168, 168, 8, 16, 32, 5, 7, 7,
|
|
||||||
6, 0, 0, 112, 0, 248, 32, 32, 32, 64, 3, 7, 7, 6, 1, 0,
|
|
||||||
128, 128, 128, 192, 160, 128, 128, 5, 7, 7, 6, 0, 0, 32, 32, 248,
|
|
||||||
32, 32, 64, 128, 5, 6, 6, 6, 0, 0, 112, 0, 0, 0, 0, 248,
|
|
||||||
5, 6, 6, 6, 0, 0, 248, 8, 80, 32, 80, 128, 5, 7, 7, 6,
|
|
||||||
0, 0, 32, 248, 16, 32, 112, 168, 32, 3, 7, 7, 6, 1, 0, 32,
|
|
||||||
32, 32, 32, 32, 64, 128, 5, 6, 6, 6, 0, 0, 32, 16, 136, 136,
|
|
||||||
136, 136, 5, 7, 7, 6, 0, 0, 128, 128, 248, 128, 128, 128, 120, 5,
|
|
||||||
6, 6, 6, 0, 0, 248, 8, 8, 8, 16, 96, 5, 5, 5, 6, 0,
|
|
||||||
1, 64, 160, 16, 8, 8, 5, 7, 7, 6, 0, 0, 32, 248, 32, 32,
|
|
||||||
168, 168, 32, 5, 6, 6, 6, 0, 0, 248, 8, 8, 80, 32, 16, 4,
|
|
||||||
6, 6, 6, 1, 0, 224, 0, 224, 0, 224, 16, 5, 6, 6, 6, 0,
|
|
||||||
0, 32, 64, 128, 136, 248, 8, 5, 6, 6, 6, 0, 0, 8, 8, 80,
|
|
||||||
32, 80, 128, 5, 6, 6, 6, 0, 0, 248, 64, 248, 64, 64, 56, 5,
|
|
||||||
7, 7, 6, 0, 0, 64, 64, 248, 72, 80, 64, 64, 5, 7, 7, 6,
|
|
||||||
0, 0, 112, 16, 16, 16, 16, 16, 248, 5, 6, 6, 6, 0, 0, 248,
|
|
||||||
8, 248, 8, 8, 248, 5, 7, 7, 6, 0, 0, 112, 0, 248, 8, 8,
|
|
||||||
16, 32, 4, 7, 7, 6, 0, 0, 144, 144, 144, 144, 16, 32, 64, 5,
|
|
||||||
6, 6, 6, 0, 0, 32, 160, 160, 168, 168, 176, 5, 7, 7, 6, 0,
|
|
||||||
0, 128, 128, 128, 136, 144, 160, 192, 5, 6, 6, 6, 0, 0, 248, 136,
|
|
||||||
136, 136, 136, 248, 5, 6, 6, 6, 0, 0, 248, 136, 136, 8, 16, 32,
|
|
||||||
5, 6, 6, 6, 0, 0, 192, 0, 8, 8, 16, 224, 4, 3, 3, 6,
|
|
||||||
0, 4, 32, 144, 64, 3, 3, 3, 6, 0, 4, 224, 160, 224, 5, 5,
|
|
||||||
5, 6, 0, 1, 72, 168, 144, 144, 104, 5, 7, 7, 6, 0, 0, 80,
|
|
||||||
0, 112, 8, 120, 136, 120, 4, 8, 8, 6, 1, 255, 96, 144, 144, 224,
|
|
||||||
144, 144, 224, 128, 5, 5, 5, 6, 0, 0, 112, 128, 96, 136, 112, 5,
|
|
||||||
6, 6, 6, 0, 255, 136, 136, 152, 232, 136, 128, 5, 5, 5, 6, 0,
|
|
||||||
0, 120, 160, 144, 136, 112, 5, 7, 7, 6, 0, 254, 48, 72, 136, 136,
|
|
||||||
240, 128, 128, 5, 8, 8, 6, 0, 254, 120, 136, 136, 136, 120, 8, 8,
|
|
||||||
112, 5, 5, 5, 6, 0, 1, 56, 32, 32, 160, 64, 4, 3, 3, 6,
|
|
||||||
0, 3, 16, 208, 16, 4, 8, 8, 6, 0, 255, 16, 0, 48, 16, 16,
|
|
||||||
16, 144, 96, 3, 3, 3, 6, 0, 4, 160, 64, 160, 5, 7, 7, 6,
|
|
||||||
0, 0, 32, 112, 160, 160, 168, 112, 32, 5, 7, 7, 6, 0, 0, 64,
|
|
||||||
64, 224, 64, 224, 64, 120, 5, 7, 7, 6, 0, 0, 112, 0, 176, 200,
|
|
||||||
136, 136, 136, 5, 7, 7, 6, 0, 0, 80, 0, 112, 136, 136, 136, 112,
|
|
||||||
5, 7, 7, 6, 0, 255, 176, 200, 136, 136, 240, 128, 128, 5, 7, 7,
|
|
||||||
6, 0, 255, 104, 152, 136, 136, 120, 8, 8, 5, 6, 6, 6, 0, 0,
|
|
||||||
112, 136, 248, 136, 136, 112, 5, 3, 3, 6, 0, 2, 88, 168, 208, 5,
|
|
||||||
5, 5, 6, 0, 0, 112, 136, 136, 80, 216, 5, 7, 7, 6, 0, 0,
|
|
||||||
80, 0, 136, 136, 136, 152, 104, 5, 7, 7, 6, 0, 0, 248, 128, 64,
|
|
||||||
32, 64, 128, 248, 5, 5, 5, 6, 0, 0, 248, 80, 80, 80, 152, 5,
|
|
||||||
7, 7, 6, 0, 0, 248, 0, 136, 80, 32, 80, 136, 5, 7, 7, 6,
|
|
||||||
0, 255, 136, 136, 136, 136, 120, 8, 112, 5, 6, 6, 6, 0, 0, 8,
|
|
||||||
240, 32, 248, 32, 32, 5, 5, 5, 6, 0, 0, 248, 64, 120, 72, 136,
|
|
||||||
5, 5, 5, 6, 0, 0, 248, 168, 248, 136, 136, 5, 5, 5, 6, 0,
|
|
||||||
1, 32, 0, 248, 0, 32, 0, 0, 0, 6, 0, 0, 6, 10, 10, 6,
|
|
||||||
0, 254, 252, 252, 252, 252, 252, 252, 252, 252, 252, 252
|
|
||||||
};
|
|
||||||
@@ -1,226 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
Fontname: HD44780_W
|
|
||||||
Copyright: A.Hardtung, public domain
|
|
||||||
Capital A Height: 7, '1' Height: 7
|
|
||||||
Calculated Max Values w= 5 h= 9 x= 2 y= 5 dx= 6 dy= 0 ascent= 8 len= 9
|
|
||||||
Font Bounding box w= 6 h= 9 x= 0 y=-2
|
|
||||||
Calculated Min Values x= 0 y=-1 dx= 0 dy= 0
|
|
||||||
Pure Font ascent = 7 descent=-1
|
|
||||||
X Font ascent = 7 descent=-1
|
|
||||||
Max Font ascent = 8 descent=-1
|
|
||||||
*/
|
|
||||||
#include <U8glib.h>
|
|
||||||
const u8g_fntpgm_uint8_t HD44780_W_5x7[3034] U8G_SECTION(".progmem.HD44780_W_5x7") = {
|
|
||||||
0, 6, 9, 0, 254, 7, 2, 79, 3, 222, 16, 255, 255, 8, 255, 7,
|
|
||||||
255, 4, 7, 7, 6, 0, 0, 16, 48, 112, 240, 112, 48, 16, 4, 7,
|
|
||||||
7, 6, 1, 0, 128, 192, 224, 240, 224, 192, 128, 5, 3, 3, 6, 0,
|
|
||||||
4, 216, 72, 144, 5, 3, 3, 6, 0, 4, 216, 144, 72, 5, 7, 7,
|
|
||||||
6, 0, 0, 32, 112, 248, 0, 32, 112, 248, 5, 7, 7, 6, 0, 0,
|
|
||||||
248, 112, 32, 0, 248, 112, 32, 5, 5, 5, 6, 0, 1, 112, 248, 248,
|
|
||||||
248, 112, 5, 7, 7, 6, 0, 0, 8, 8, 40, 72, 248, 64, 32, 5,
|
|
||||||
7, 7, 6, 0, 0, 32, 112, 168, 32, 32, 32, 32, 5, 7, 7, 6,
|
|
||||||
0, 0, 32, 32, 32, 32, 168, 112, 32, 5, 5, 5, 6, 0, 1, 32,
|
|
||||||
64, 248, 64, 32, 5, 5, 5, 6, 0, 1, 32, 16, 248, 16, 32, 5,
|
|
||||||
7, 7, 6, 0, 0, 16, 32, 64, 32, 16, 0, 248, 5, 7, 7, 6,
|
|
||||||
0, 0, 64, 32, 16, 32, 64, 0, 248, 5, 5, 5, 6, 0, 1, 32,
|
|
||||||
32, 112, 112, 248, 5, 5, 5, 6, 0, 0, 248, 112, 112, 32, 32, 0,
|
|
||||||
0, 0, 6, 0, 0, 1, 7, 7, 6, 2, 0, 128, 128, 128, 128, 128,
|
|
||||||
0, 128, 3, 2, 2, 6, 1, 5, 160, 160, 5, 7, 7, 6, 0, 0,
|
|
||||||
80, 80, 248, 80, 248, 80, 80, 5, 7, 7, 6, 0, 0, 32, 120, 160,
|
|
||||||
112, 40, 240, 32, 5, 7, 7, 6, 0, 0, 192, 200, 16, 32, 64, 152,
|
|
||||||
24, 5, 7, 7, 6, 0, 0, 96, 144, 160, 64, 168, 144, 104, 2, 3,
|
|
||||||
3, 6, 1, 4, 192, 64, 128, 3, 7, 7, 6, 1, 0, 32, 64, 128,
|
|
||||||
128, 128, 64, 32, 3, 7, 7, 6, 1, 0, 128, 64, 32, 32, 32, 64,
|
|
||||||
128, 5, 5, 5, 6, 0, 1, 32, 168, 112, 168, 32, 5, 5, 5, 6,
|
|
||||||
0, 1, 32, 32, 248, 32, 32, 2, 3, 3, 6, 2, 255, 192, 64, 128,
|
|
||||||
5, 1, 1, 6, 0, 3, 248, 2, 2, 2, 6, 2, 0, 192, 192, 5,
|
|
||||||
5, 5, 6, 0, 1, 8, 16, 32, 64, 128, 5, 7, 7, 6, 0, 0,
|
|
||||||
112, 136, 152, 168, 200, 136, 112, 3, 7, 7, 6, 1, 0, 64, 192, 64,
|
|
||||||
64, 64, 64, 224, 5, 7, 7, 6, 0, 0, 112, 136, 8, 112, 128, 128,
|
|
||||||
248, 5, 7, 7, 6, 0, 0, 248, 16, 32, 16, 8, 8, 240, 5, 7,
|
|
||||||
7, 6, 0, 0, 16, 48, 80, 144, 248, 16, 16, 5, 7, 7, 6, 0,
|
|
||||||
0, 248, 128, 240, 8, 8, 136, 112, 5, 7, 7, 6, 0, 0, 48, 64,
|
|
||||||
128, 240, 136, 136, 112, 5, 7, 7, 6, 0, 0, 248, 8, 16, 32, 32,
|
|
||||||
32, 32, 5, 7, 7, 6, 0, 0, 112, 136, 136, 112, 136, 136, 112, 5,
|
|
||||||
7, 7, 6, 0, 0, 112, 136, 136, 120, 8, 16, 96, 2, 5, 5, 6,
|
|
||||||
2, 0, 192, 192, 0, 192, 192, 2, 6, 6, 6, 2, 255, 192, 192, 0,
|
|
||||||
192, 64, 128, 4, 7, 7, 6, 0, 0, 16, 32, 64, 128, 64, 32, 16,
|
|
||||||
5, 3, 3, 6, 0, 2, 248, 0, 248, 4, 7, 7, 6, 1, 0, 128,
|
|
||||||
64, 32, 16, 32, 64, 128, 5, 7, 7, 6, 0, 0, 112, 136, 8, 16,
|
|
||||||
32, 0, 32, 5, 6, 6, 6, 0, 0, 112, 136, 8, 104, 168, 112, 5,
|
|
||||||
7, 7, 6, 0, 0, 112, 136, 136, 248, 136, 136, 136, 5, 7, 7, 6,
|
|
||||||
0, 0, 240, 136, 136, 240, 136, 136, 240, 5, 7, 7, 6, 0, 0, 112,
|
|
||||||
136, 128, 128, 128, 136, 112, 5, 7, 7, 6, 0, 0, 224, 144, 136, 136,
|
|
||||||
136, 144, 224, 5, 7, 7, 6, 0, 0, 248, 128, 128, 240, 128, 128, 248,
|
|
||||||
5, 7, 7, 6, 0, 0, 248, 128, 128, 240, 128, 128, 128, 5, 7, 7,
|
|
||||||
6, 0, 0, 112, 136, 128, 184, 136, 136, 112, 5, 7, 7, 6, 0, 0,
|
|
||||||
136, 136, 136, 248, 136, 136, 136, 1, 7, 7, 6, 2, 0, 128, 128, 128,
|
|
||||||
128, 128, 128, 128, 5, 7, 7, 6, 0, 0, 56, 16, 16, 16, 16, 144,
|
|
||||||
96, 5, 7, 7, 6, 0, 0, 136, 144, 160, 192, 160, 144, 136, 5, 7,
|
|
||||||
7, 6, 0, 0, 128, 128, 128, 128, 128, 128, 248, 5, 7, 7, 6, 0,
|
|
||||||
0, 136, 216, 168, 136, 136, 136, 136, 5, 7, 7, 6, 0, 0, 136, 136,
|
|
||||||
200, 168, 152, 136, 136, 5, 7, 7, 6, 0, 0, 112, 136, 136, 136, 136,
|
|
||||||
136, 112, 5, 7, 7, 6, 0, 0, 240, 136, 136, 240, 128, 128, 128, 5,
|
|
||||||
7, 7, 6, 0, 0, 112, 136, 136, 136, 168, 144, 104, 5, 7, 7, 6,
|
|
||||||
0, 0, 240, 136, 136, 240, 160, 144, 136, 5, 7, 7, 6, 0, 0, 120,
|
|
||||||
128, 128, 112, 8, 8, 240, 5, 7, 7, 6, 0, 0, 248, 32, 32, 32,
|
|
||||||
32, 32, 32, 5, 7, 7, 6, 0, 0, 136, 136, 136, 136, 136, 136, 112,
|
|
||||||
5, 7, 7, 6, 0, 0, 136, 136, 136, 136, 136, 80, 32, 5, 7, 7,
|
|
||||||
6, 0, 0, 136, 136, 136, 136, 136, 168, 80, 5, 7, 7, 6, 0, 0,
|
|
||||||
136, 136, 80, 32, 80, 136, 136, 5, 7, 7, 6, 0, 0, 136, 136, 136,
|
|
||||||
80, 32, 32, 32, 5, 7, 7, 6, 0, 0, 248, 8, 16, 32, 64, 128,
|
|
||||||
248, 3, 7, 7, 6, 1, 0, 224, 128, 128, 128, 128, 128, 224, 5, 5,
|
|
||||||
5, 6, 0, 1, 128, 64, 32, 16, 8, 3, 7, 7, 6, 1, 0, 224,
|
|
||||||
32, 32, 32, 32, 32, 224, 5, 3, 3, 6, 0, 4, 32, 80, 136, 5,
|
|
||||||
1, 1, 6, 0, 0, 248, 2, 2, 2, 6, 2, 5, 128, 64, 5, 5,
|
|
||||||
5, 6, 0, 0, 112, 8, 120, 136, 120, 5, 7, 7, 6, 0, 0, 128,
|
|
||||||
128, 176, 200, 136, 136, 240, 5, 5, 5, 6, 0, 0, 112, 128, 128, 136,
|
|
||||||
112, 5, 7, 7, 6, 0, 0, 8, 8, 104, 152, 136, 136, 120, 5, 5,
|
|
||||||
5, 6, 0, 0, 112, 136, 248, 128, 112, 5, 7, 7, 6, 0, 0, 48,
|
|
||||||
72, 224, 64, 64, 64, 64, 5, 6, 6, 6, 0, 255, 112, 136, 136, 120,
|
|
||||||
8, 112, 5, 7, 7, 6, 0, 0, 128, 128, 176, 200, 136, 136, 136, 1,
|
|
||||||
7, 7, 6, 2, 0, 128, 0, 128, 128, 128, 128, 128, 3, 8, 8, 6,
|
|
||||||
1, 255, 32, 0, 32, 32, 32, 32, 160, 64, 4, 7, 7, 6, 0, 0,
|
|
||||||
128, 128, 144, 160, 192, 160, 144, 3, 7, 7, 6, 1, 0, 192, 64, 64,
|
|
||||||
64, 64, 64, 224, 5, 5, 5, 6, 0, 0, 208, 168, 168, 168, 168, 5,
|
|
||||||
5, 5, 6, 0, 0, 176, 200, 136, 136, 136, 5, 5, 5, 6, 0, 0,
|
|
||||||
112, 136, 136, 136, 112, 5, 6, 6, 6, 0, 255, 240, 136, 136, 240, 128,
|
|
||||||
128, 5, 6, 6, 6, 0, 255, 120, 136, 136, 120, 8, 8, 5, 5, 5,
|
|
||||||
6, 0, 0, 176, 200, 128, 128, 128, 5, 5, 5, 6, 0, 0, 112, 128,
|
|
||||||
112, 8, 240, 5, 7, 7, 6, 0, 0, 64, 64, 224, 64, 64, 72, 48,
|
|
||||||
5, 5, 5, 6, 0, 0, 136, 136, 136, 152, 104, 5, 5, 5, 6, 0,
|
|
||||||
0, 136, 136, 136, 80, 32, 5, 5, 5, 6, 0, 0, 136, 136, 168, 168,
|
|
||||||
80, 5, 5, 5, 6, 0, 0, 136, 80, 32, 80, 136, 5, 6, 6, 6,
|
|
||||||
0, 255, 136, 136, 136, 120, 8, 112, 5, 5, 5, 6, 0, 0, 248, 16,
|
|
||||||
32, 64, 248, 3, 7, 7, 6, 1, 0, 32, 64, 64, 128, 64, 64, 32,
|
|
||||||
1, 7, 7, 6, 2, 0, 128, 128, 128, 128, 128, 128, 128, 3, 7, 7,
|
|
||||||
6, 1, 0, 128, 64, 64, 32, 64, 64, 128, 5, 6, 6, 6, 0, 1,
|
|
||||||
8, 40, 72, 248, 64, 32, 5, 7, 7, 6, 0, 0, 32, 80, 136, 136,
|
|
||||||
136, 136, 248, 5, 7, 7, 6, 0, 0, 248, 136, 128, 240, 136, 136, 240,
|
|
||||||
5, 8, 8, 6, 0, 255, 120, 40, 40, 40, 72, 136, 248, 136, 5, 7,
|
|
||||||
7, 6, 0, 0, 168, 168, 168, 112, 168, 168, 168, 5, 7, 7, 6, 0,
|
|
||||||
0, 240, 8, 8, 112, 8, 8, 240, 5, 7, 7, 6, 0, 0, 136, 136,
|
|
||||||
152, 168, 200, 136, 136, 5, 8, 8, 6, 0, 0, 80, 32, 136, 152, 168,
|
|
||||||
168, 200, 136, 5, 7, 7, 6, 0, 0, 120, 40, 40, 40, 40, 168, 72,
|
|
||||||
5, 7, 7, 6, 0, 0, 248, 136, 136, 136, 136, 136, 136, 5, 7, 7,
|
|
||||||
6, 0, 0, 136, 136, 136, 80, 32, 64, 128, 5, 8, 8, 6, 0, 255,
|
|
||||||
136, 136, 136, 136, 136, 136, 248, 8, 5, 7, 7, 6, 0, 0, 136, 136,
|
|
||||||
136, 120, 8, 8, 8, 5, 7, 7, 6, 0, 0, 168, 168, 168, 168, 168,
|
|
||||||
168, 248, 5, 8, 8, 6, 0, 255, 168, 168, 168, 168, 168, 168, 248, 8,
|
|
||||||
5, 7, 7, 6, 0, 0, 192, 64, 64, 112, 72, 72, 112, 5, 7, 7,
|
|
||||||
6, 0, 0, 136, 136, 136, 200, 168, 168, 200, 5, 7, 7, 6, 0, 0,
|
|
||||||
112, 136, 40, 80, 8, 136, 112, 5, 5, 5, 6, 0, 0, 64, 160, 144,
|
|
||||||
144, 104, 5, 7, 7, 6, 0, 0, 32, 48, 40, 40, 32, 224, 224, 5,
|
|
||||||
7, 7, 6, 0, 0, 248, 136, 128, 128, 128, 128, 128, 5, 5, 5, 6,
|
|
||||||
0, 0, 248, 80, 80, 80, 152, 5, 7, 7, 6, 0, 0, 248, 128, 64,
|
|
||||||
32, 64, 128, 248, 5, 5, 5, 6, 0, 0, 120, 144, 144, 144, 96, 5,
|
|
||||||
7, 7, 6, 0, 0, 48, 40, 56, 40, 200, 216, 24, 5, 6, 6, 6,
|
|
||||||
0, 0, 8, 112, 160, 32, 32, 16, 5, 6, 6, 6, 0, 1, 32, 112,
|
|
||||||
112, 112, 248, 32, 5, 7, 7, 6, 0, 0, 112, 136, 136, 248, 136, 136,
|
|
||||||
112, 5, 5, 5, 6, 0, 0, 112, 136, 136, 80, 216, 5, 7, 7, 6,
|
|
||||||
0, 0, 48, 72, 32, 80, 136, 136, 112, 5, 3, 3, 6, 0, 2, 88,
|
|
||||||
168, 208, 5, 6, 6, 6, 0, 0, 80, 248, 248, 248, 112, 32, 5, 5,
|
|
||||||
5, 6, 0, 0, 112, 128, 96, 136, 112, 5, 7, 7, 6, 0, 0, 112,
|
|
||||||
136, 136, 136, 136, 136, 136, 5, 7, 7, 6, 0, 0, 216, 216, 216, 216,
|
|
||||||
216, 216, 216, 1, 7, 7, 6, 2, 0, 128, 0, 128, 128, 128, 128, 128,
|
|
||||||
5, 7, 7, 6, 0, 0, 32, 112, 160, 160, 168, 112, 32, 5, 7, 7,
|
|
||||||
6, 0, 0, 48, 64, 64, 224, 64, 80, 168, 5, 5, 5, 6, 0, 0,
|
|
||||||
136, 112, 80, 112, 136, 5, 7, 7, 6, 0, 0, 136, 80, 248, 32, 248,
|
|
||||||
32, 32, 1, 7, 7, 6, 2, 0, 128, 128, 128, 0, 128, 128, 128, 5,
|
|
||||||
8, 8, 6, 0, 0, 48, 72, 32, 80, 80, 32, 144, 96, 5, 7, 7,
|
|
||||||
6, 0, 0, 24, 32, 32, 112, 32, 32, 192, 5, 7, 7, 6, 0, 0,
|
|
||||||
248, 136, 184, 184, 184, 136, 248, 5, 7, 7, 6, 0, 0, 112, 8, 120,
|
|
||||||
136, 120, 0, 248, 5, 5, 5, 6, 0, 1, 40, 80, 160, 80, 40, 5,
|
|
||||||
7, 7, 6, 0, 0, 144, 168, 168, 232, 168, 168, 144, 5, 7, 7, 6,
|
|
||||||
0, 0, 120, 136, 136, 120, 40, 72, 136, 5, 7, 7, 6, 0, 0, 248,
|
|
||||||
136, 168, 136, 152, 168, 248, 2, 3, 3, 6, 2, 4, 64, 128, 192, 4,
|
|
||||||
5, 5, 6, 0, 3, 96, 144, 144, 144, 96, 5, 7, 7, 6, 0, 0,
|
|
||||||
32, 32, 248, 32, 32, 0, 248, 4, 5, 5, 6, 0, 3, 96, 144, 32,
|
|
||||||
64, 240, 3, 5, 5, 6, 0, 3, 224, 32, 224, 32, 224, 5, 8, 8,
|
|
||||||
6, 0, 0, 224, 144, 224, 128, 144, 184, 144, 24, 5, 8, 8, 6, 0,
|
|
||||||
255, 136, 136, 136, 136, 152, 232, 128, 128, 5, 7, 7, 6, 0, 0, 120,
|
|
||||||
152, 152, 120, 24, 24, 24, 2, 2, 2, 6, 2, 2, 192, 192, 5, 5,
|
|
||||||
5, 6, 0, 0, 80, 136, 168, 168, 80, 3, 5, 5, 6, 0, 3, 64,
|
|
||||||
192, 64, 64, 224, 5, 7, 7, 6, 0, 0, 112, 136, 136, 136, 112, 0,
|
|
||||||
248, 5, 5, 5, 6, 0, 1, 160, 80, 40, 80, 160, 5, 7, 7, 6,
|
|
||||||
0, 0, 136, 144, 168, 88, 184, 8, 8, 5, 7, 7, 6, 0, 0, 136,
|
|
||||||
144, 184, 72, 152, 32, 56, 5, 8, 8, 6, 0, 0, 192, 64, 192, 72,
|
|
||||||
216, 56, 8, 8, 5, 7, 7, 6, 0, 0, 32, 0, 32, 64, 128, 136,
|
|
||||||
112, 5, 8, 8, 6, 0, 0, 64, 32, 32, 80, 136, 248, 136, 136, 5,
|
|
||||||
8, 8, 6, 0, 0, 16, 32, 32, 80, 136, 248, 136, 136, 5, 8, 8,
|
|
||||||
6, 0, 0, 32, 80, 0, 112, 136, 248, 136, 136, 5, 8, 8, 6, 0,
|
|
||||||
0, 104, 144, 0, 112, 136, 248, 136, 136, 5, 8, 8, 6, 0, 0, 80,
|
|
||||||
0, 32, 80, 136, 248, 136, 136, 5, 8, 8, 6, 0, 0, 32, 80, 32,
|
|
||||||
112, 136, 248, 136, 136, 5, 7, 7, 6, 0, 0, 56, 96, 160, 184, 224,
|
|
||||||
160, 184, 5, 8, 8, 6, 0, 255, 112, 136, 128, 128, 136, 112, 32, 96,
|
|
||||||
5, 8, 8, 6, 0, 0, 64, 32, 0, 248, 128, 240, 128, 248, 5, 8,
|
|
||||||
8, 6, 0, 0, 8, 16, 0, 248, 128, 240, 128, 248, 5, 8, 8, 6,
|
|
||||||
0, 0, 32, 80, 0, 248, 128, 240, 128, 248, 5, 7, 7, 6, 0, 0,
|
|
||||||
80, 0, 248, 128, 240, 128, 248, 3, 8, 8, 6, 1, 0, 128, 64, 0,
|
|
||||||
224, 64, 64, 64, 224, 3, 8, 8, 6, 1, 0, 32, 64, 0, 224, 64,
|
|
||||||
64, 64, 224, 3, 8, 8, 6, 1, 0, 64, 160, 0, 224, 64, 64, 64,
|
|
||||||
224, 3, 7, 7, 6, 1, 0, 160, 0, 224, 64, 64, 64, 224, 5, 7,
|
|
||||||
7, 6, 0, 0, 112, 72, 72, 232, 72, 72, 112, 5, 8, 8, 6, 0,
|
|
||||||
0, 104, 144, 0, 136, 200, 168, 152, 136, 5, 8, 8, 6, 0, 0, 64,
|
|
||||||
32, 112, 136, 136, 136, 136, 112, 5, 8, 8, 6, 0, 0, 16, 32, 112,
|
|
||||||
136, 136, 136, 136, 112, 5, 8, 8, 6, 0, 0, 32, 80, 0, 112, 136,
|
|
||||||
136, 136, 112, 5, 8, 8, 6, 0, 0, 104, 144, 0, 112, 136, 136, 136,
|
|
||||||
112, 5, 8, 8, 6, 0, 0, 80, 0, 112, 136, 136, 136, 136, 112, 5,
|
|
||||||
5, 5, 6, 0, 1, 136, 80, 32, 80, 136, 5, 7, 7, 6, 0, 0,
|
|
||||||
112, 32, 112, 168, 112, 32, 112, 5, 8, 8, 6, 0, 0, 64, 32, 136,
|
|
||||||
136, 136, 136, 136, 112, 5, 8, 8, 6, 0, 0, 16, 32, 136, 136, 136,
|
|
||||||
136, 136, 112, 5, 8, 8, 6, 0, 0, 32, 80, 0, 136, 136, 136, 136,
|
|
||||||
112, 5, 8, 8, 6, 0, 0, 80, 0, 136, 136, 136, 136, 136, 112, 5,
|
|
||||||
8, 8, 6, 0, 0, 16, 32, 136, 80, 32, 32, 32, 32, 5, 8, 8,
|
|
||||||
6, 0, 0, 192, 64, 112, 72, 72, 112, 64, 224, 5, 7, 7, 6, 0,
|
|
||||||
0, 48, 72, 72, 112, 72, 72, 176, 5, 8, 8, 6, 0, 0, 64, 32,
|
|
||||||
0, 112, 8, 120, 136, 120, 5, 8, 8, 6, 0, 0, 16, 32, 0, 112,
|
|
||||||
8, 120, 136, 120, 5, 8, 8, 6, 0, 0, 32, 80, 0, 112, 8, 120,
|
|
||||||
136, 120, 5, 8, 8, 6, 0, 0, 104, 144, 0, 112, 8, 120, 136, 120,
|
|
||||||
5, 7, 7, 6, 0, 0, 80, 0, 112, 8, 120, 136, 120, 5, 8, 8,
|
|
||||||
6, 0, 0, 32, 80, 32, 112, 8, 120, 136, 120, 5, 6, 6, 6, 0,
|
|
||||||
0, 208, 40, 120, 160, 168, 80, 5, 6, 6, 6, 0, 255, 112, 128, 136,
|
|
||||||
112, 32, 96, 5, 8, 8, 6, 0, 0, 64, 32, 0, 112, 136, 248, 128,
|
|
||||||
112, 5, 8, 8, 6, 0, 0, 16, 32, 0, 112, 136, 248, 128, 112, 5,
|
|
||||||
8, 8, 6, 0, 0, 32, 80, 0, 112, 136, 248, 128, 112, 5, 7, 7,
|
|
||||||
6, 0, 0, 80, 0, 112, 136, 248, 128, 112, 3, 8, 8, 6, 1, 0,
|
|
||||||
128, 64, 0, 64, 192, 64, 64, 224, 3, 8, 8, 6, 1, 0, 32, 64,
|
|
||||||
0, 64, 192, 64, 64, 224, 3, 8, 8, 6, 1, 0, 64, 160, 0, 64,
|
|
||||||
192, 64, 64, 224, 3, 7, 7, 6, 1, 0, 160, 0, 64, 192, 64, 64,
|
|
||||||
224, 5, 7, 7, 6, 0, 0, 160, 64, 160, 16, 120, 136, 112, 5, 8,
|
|
||||||
8, 6, 0, 0, 104, 144, 0, 176, 200, 136, 136, 136, 5, 8, 8, 6,
|
|
||||||
0, 0, 64, 32, 0, 112, 136, 136, 136, 112, 5, 8, 8, 6, 0, 0,
|
|
||||||
16, 32, 0, 112, 136, 136, 136, 112, 5, 8, 8, 6, 0, 0, 32, 80,
|
|
||||||
0, 112, 136, 136, 136, 112, 5, 8, 8, 6, 0, 0, 104, 144, 0, 112,
|
|
||||||
136, 136, 136, 112, 5, 7, 7, 6, 0, 0, 80, 0, 112, 136, 136, 136,
|
|
||||||
112, 5, 5, 5, 6, 0, 1, 32, 0, 248, 0, 32, 5, 7, 7, 6,
|
|
||||||
0, 0, 16, 32, 112, 168, 112, 32, 64, 5, 8, 8, 6, 0, 0, 64,
|
|
||||||
32, 0, 136, 136, 136, 152, 104, 5, 8, 8, 6, 0, 0, 16, 32, 0,
|
|
||||||
136, 136, 136, 152, 104, 5, 8, 8, 6, 0, 0, 32, 80, 0, 136, 136,
|
|
||||||
136, 152, 104, 5, 7, 7, 6, 0, 0, 80, 0, 136, 136, 136, 152, 104,
|
|
||||||
5, 9, 9, 6, 0, 255, 16, 32, 0, 136, 136, 136, 248, 8, 112, 4,
|
|
||||||
7, 7, 6, 1, 0, 192, 64, 96, 80, 96, 64, 224, 5, 8, 8, 6,
|
|
||||||
0, 255, 80, 0, 136, 136, 136, 248, 8, 112
|
|
||||||
};
|
|
||||||
@@ -1,286 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
Fontname: ISO10646-1
|
|
||||||
Copyright: A.Hardtung, public domain
|
|
||||||
Capital A Height: 7, '1' Height: 7
|
|
||||||
Calculated Max Values w= 5 h= 9 x= 2 y= 7 dx= 6 dy= 0 ascent= 8 len= 9
|
|
||||||
Font Bounding box w= 6 h= 9 x= 0 y=-2
|
|
||||||
Calculated Min Values x= 0 y=-1 dx= 0 dy= 0
|
|
||||||
Pure Font ascent = 7 descent=-1
|
|
||||||
X Font ascent = 7 descent=-1
|
|
||||||
Max Font ascent = 8 descent=-1
|
|
||||||
*/
|
|
||||||
#include <U8glib.h>
|
|
||||||
|
|
||||||
#if defined(__AVR__) && ENABLED(NOT_EXTENDED_ISO10646_1_5X7)
|
|
||||||
|
|
||||||
//
|
|
||||||
// Reduced font (only symbols 32 - 127) - About 1400 bytes smaller
|
|
||||||
//
|
|
||||||
const u8g_fntpgm_uint8_t ISO10646_1_5x7[] U8G_SECTION(".progmem.ISO10646_1_5x7") = {
|
|
||||||
0,6,9,0,254,7,1,146,3,33,32,127,255,7,255,7,
|
|
||||||
255,0,0,0,6,0,0,1,7,7,6,2,0,128,128,128,
|
|
||||||
128,128,0,128,3,2,2,6,1,5,160,160,5,7,7,6,
|
|
||||||
0,0,80,80,248,80,248,80,80,5,7,7,6,0,0,32,
|
|
||||||
120,160,112,40,240,32,5,7,7,6,0,0,192,200,16,32,
|
|
||||||
64,152,24,5,7,7,6,0,0,96,144,160,64,168,144,104,
|
|
||||||
2,3,3,6,1,4,192,64,128,3,7,7,6,1,0,32,
|
|
||||||
64,128,128,128,64,32,3,7,7,6,1,0,128,64,32,32,
|
|
||||||
32,64,128,5,5,5,6,0,1,32,168,112,168,32,5,5,
|
|
||||||
5,6,0,1,32,32,248,32,32,2,3,3,6,2,255,192,
|
|
||||||
64,128,5,1,1,6,0,3,248,2,2,2,6,2,0,192,
|
|
||||||
192,5,5,5,6,0,1,8,16,32,64,128,5,7,7,6,
|
|
||||||
0,0,112,136,136,136,136,136,112,3,7,7,6,1,0,64,
|
|
||||||
192,64,64,64,64,224,5,7,7,6,0,0,112,136,8,112,
|
|
||||||
128,128,248,5,7,7,6,0,0,248,16,32,16,8,8,240,
|
|
||||||
5,7,7,6,0,0,16,48,80,144,248,16,16,5,7,7,
|
|
||||||
6,0,0,248,128,240,8,8,136,112,5,7,7,6,0,0,
|
|
||||||
112,128,128,240,136,136,112,5,7,7,6,0,0,248,8,16,
|
|
||||||
32,32,32,32,5,7,7,6,0,0,112,136,136,112,136,136,
|
|
||||||
112,5,7,7,6,0,0,112,136,136,120,8,8,112,2,5,
|
|
||||||
5,6,2,0,192,192,0,192,192,2,6,6,6,2,255,192,
|
|
||||||
192,0,192,64,128,4,7,7,6,0,0,16,32,64,128,64,
|
|
||||||
32,16,5,3,3,6,0,2,248,0,248,4,7,7,6,1,
|
|
||||||
0,128,64,32,16,32,64,128,5,7,7,6,0,0,112,136,
|
|
||||||
8,16,32,0,32,5,7,7,6,0,0,112,136,8,104,168,
|
|
||||||
168,112,5,7,7,6,0,0,112,136,136,248,136,136,136,5,
|
|
||||||
7,7,6,0,0,240,136,136,240,136,136,240,5,7,7,6,
|
|
||||||
0,0,112,136,128,128,128,136,112,5,7,7,6,0,0,240,
|
|
||||||
136,136,136,136,136,240,5,7,7,6,0,0,248,128,128,240,
|
|
||||||
128,128,248,5,7,7,6,0,0,248,128,128,240,128,128,128,
|
|
||||||
5,7,7,6,0,0,112,136,128,184,136,136,112,5,7,7,
|
|
||||||
6,0,0,136,136,136,248,136,136,136,1,7,7,6,2,0,
|
|
||||||
128,128,128,128,128,128,128,5,7,7,6,0,0,56,16,16,
|
|
||||||
16,16,144,96,5,7,7,6,0,0,136,144,160,192,160,144,
|
|
||||||
136,5,7,7,6,0,0,128,128,128,128,128,128,248,5,7,
|
|
||||||
7,6,0,0,136,216,168,136,136,136,136,5,7,7,6,0,
|
|
||||||
0,136,136,200,168,152,136,136,5,7,7,6,0,0,112,136,
|
|
||||||
136,136,136,136,112,5,7,7,6,0,0,240,136,136,240,128,
|
|
||||||
128,128,5,7,7,6,0,0,112,136,136,136,168,144,104,5,
|
|
||||||
7,7,6,0,0,240,136,136,240,160,144,136,5,7,7,6,
|
|
||||||
0,0,120,128,128,112,8,8,240,5,7,7,6,0,0,248,
|
|
||||||
32,32,32,32,32,32,5,7,7,6,0,0,136,136,136,136,
|
|
||||||
136,136,112,5,7,7,6,0,0,136,136,136,136,136,80,32,
|
|
||||||
5,7,7,6,0,0,136,136,136,136,136,168,80,5,7,7,
|
|
||||||
6,0,0,136,136,80,32,80,136,136,5,7,7,6,0,0,
|
|
||||||
136,136,136,80,32,32,32,5,7,7,6,0,0,248,8,16,
|
|
||||||
32,64,128,248,3,7,7,6,1,0,224,128,128,128,128,128,
|
|
||||||
224,5,5,5,6,0,1,128,64,32,16,8,3,7,7,6,
|
|
||||||
1,0,224,32,32,32,32,32,224,5,3,3,6,0,4,32,
|
|
||||||
80,136,5,1,1,6,0,0,248,2,2,2,6,2,5,128,
|
|
||||||
64,5,5,5,6,0,0,112,8,120,136,120,5,7,7,6,
|
|
||||||
0,0,128,128,176,200,136,136,240,5,5,5,6,0,0,112,
|
|
||||||
128,128,136,112,5,7,7,6,0,0,8,8,104,152,136,136,
|
|
||||||
120,5,5,5,6,0,0,112,136,248,128,112,5,7,7,6,
|
|
||||||
0,0,48,72,224,64,64,64,64,5,6,6,6,0,255,112,
|
|
||||||
136,136,120,8,112,5,7,7,6,0,0,128,128,176,200,136,
|
|
||||||
136,136,1,7,7,6,2,0,128,0,128,128,128,128,128,3,
|
|
||||||
8,8,6,1,255,32,0,32,32,32,32,160,64,4,7,7,
|
|
||||||
6,0,0,128,128,144,160,192,160,144,3,7,7,6,1,0,
|
|
||||||
192,64,64,64,64,64,224,5,5,5,6,0,0,208,168,168,
|
|
||||||
168,168,5,5,5,6,0,0,176,200,136,136,136,5,5,5,
|
|
||||||
6,0,0,112,136,136,136,112,5,6,6,6,0,255,240,136,
|
|
||||||
136,240,128,128,5,6,6,6,0,255,120,136,136,120,8,8,
|
|
||||||
5,5,5,6,0,0,176,200,128,128,128,5,5,5,6,0,
|
|
||||||
0,112,128,112,8,240,4,7,7,6,0,0,64,64,224,64,
|
|
||||||
64,64,48,5,5,5,6,0,0,136,136,136,152,104,5,5,
|
|
||||||
5,6,0,0,136,136,136,80,32,5,5,5,6,0,0,136,
|
|
||||||
136,168,168,80,5,5,5,6,0,0,136,80,32,80,136,5,
|
|
||||||
6,6,6,0,255,136,136,136,120,8,112,5,5,5,6,0,
|
|
||||||
0,248,16,32,64,248,3,7,7,6,1,0,32,64,64,128,
|
|
||||||
64,64,32,1,7,7,6,2,0,128,128,128,128,128,128,128,
|
|
||||||
3,7,7,6,1,0,128,64,64,32,64,64,128,5,2,2,
|
|
||||||
6,0,2,104,144,0,0,0,6,0,0};
|
|
||||||
|
|
||||||
#else
|
|
||||||
|
|
||||||
//
|
|
||||||
// Extended (original) font (symbols 32 - 255)
|
|
||||||
//
|
|
||||||
const u8g_fntpgm_uint8_t ISO10646_1_5x7[] U8G_SECTION(".progmem.ISO10646_1_5x7") = {
|
|
||||||
0, 6, 9, 0, 254, 7, 1, 146, 3, 33, 32, 255, 255, 8, 255, 7,
|
|
||||||
255, 0, 0, 0, 6, 0, 0, 1, 7, 7, 6, 2, 0, 128, 128, 128,
|
|
||||||
128, 128, 0, 128, 3, 2, 2, 6, 1, 5, 160, 160, 5, 7, 7, 6,
|
|
||||||
0, 0, 80, 80, 248, 80, 248, 80, 80, 5, 7, 7, 6, 0, 0, 32,
|
|
||||||
120, 160, 112, 40, 240, 32, 5, 7, 7, 6, 0, 0, 192, 200, 16, 32,
|
|
||||||
64, 152, 24, 5, 7, 7, 6, 0, 0, 96, 144, 160, 64, 168, 144, 104,
|
|
||||||
2, 3, 3, 6, 1, 4, 192, 64, 128, 3, 7, 7, 6, 1, 0, 32,
|
|
||||||
64, 128, 128, 128, 64, 32, 3, 7, 7, 6, 1, 0, 128, 64, 32, 32,
|
|
||||||
32, 64, 128, 5, 5, 5, 6, 0, 1, 32, 168, 112, 168, 32, 5, 5,
|
|
||||||
5, 6, 0, 1, 32, 32, 248, 32, 32, 2, 3, 3, 6, 2, 255, 192,
|
|
||||||
64, 128, 5, 1, 1, 6, 0, 3, 248, 2, 2, 2, 6, 2, 0, 192,
|
|
||||||
192, 5, 5, 5, 6, 0, 1, 8, 16, 32, 64, 128, 5, 7, 7, 6,
|
|
||||||
0, 0, 112, 136, 136, 136, 136, 136, 112, 3, 7, 7, 6, 1, 0, 64,
|
|
||||||
192, 64, 64, 64, 64, 224, 5, 7, 7, 6, 0, 0, 112, 136, 8, 112,
|
|
||||||
128, 128, 248, 5, 7, 7, 6, 0, 0, 248, 16, 32, 16, 8, 8, 240,
|
|
||||||
5, 7, 7, 6, 0, 0, 16, 48, 80, 144, 248, 16, 16, 5, 7, 7,
|
|
||||||
6, 0, 0, 248, 128, 240, 8, 8, 136, 112, 5, 7, 7, 6, 0, 0,
|
|
||||||
112, 128, 128, 240, 136, 136, 112, 5, 7, 7, 6, 0, 0, 248, 8, 16,
|
|
||||||
32, 32, 32, 32, 5, 7, 7, 6, 0, 0, 112, 136, 136, 112, 136, 136,
|
|
||||||
112, 5, 7, 7, 6, 0, 0, 112, 136, 136, 120, 8, 8, 112, 2, 5,
|
|
||||||
5, 6, 2, 0, 192, 192, 0, 192, 192, 2, 6, 6, 6, 2, 255, 192,
|
|
||||||
192, 0, 192, 64, 128, 4, 7, 7, 6, 0, 0, 16, 32, 64, 128, 64,
|
|
||||||
32, 16, 5, 3, 3, 6, 0, 2, 248, 0, 248, 4, 7, 7, 6, 1,
|
|
||||||
0, 128, 64, 32, 16, 32, 64, 128, 5, 7, 7, 6, 0, 0, 112, 136,
|
|
||||||
8, 16, 32, 0, 32, 5, 7, 7, 6, 0, 0, 112, 136, 8, 104, 168,
|
|
||||||
168, 112, 5, 7, 7, 6, 0, 0, 112, 136, 136, 248, 136, 136, 136, 5,
|
|
||||||
7, 7, 6, 0, 0, 240, 136, 136, 240, 136, 136, 240, 5, 7, 7, 6,
|
|
||||||
0, 0, 112, 136, 128, 128, 128, 136, 112, 5, 7, 7, 6, 0, 0, 240,
|
|
||||||
136, 136, 136, 136, 136, 240, 5, 7, 7, 6, 0, 0, 248, 128, 128, 240,
|
|
||||||
128, 128, 248, 5, 7, 7, 6, 0, 0, 248, 128, 128, 240, 128, 128, 128,
|
|
||||||
5, 7, 7, 6, 0, 0, 112, 136, 128, 184, 136, 136, 112, 5, 7, 7,
|
|
||||||
6, 0, 0, 136, 136, 136, 248, 136, 136, 136, 1, 7, 7, 6, 2, 0,
|
|
||||||
128, 128, 128, 128, 128, 128, 128, 5, 7, 7, 6, 0, 0, 56, 16, 16,
|
|
||||||
16, 16, 144, 96, 5, 7, 7, 6, 0, 0, 136, 144, 160, 192, 160, 144,
|
|
||||||
136, 5, 7, 7, 6, 0, 0, 128, 128, 128, 128, 128, 128, 248, 5, 7,
|
|
||||||
7, 6, 0, 0, 136, 216, 168, 136, 136, 136, 136, 5, 7, 7, 6, 0,
|
|
||||||
0, 136, 136, 200, 168, 152, 136, 136, 5, 7, 7, 6, 0, 0, 112, 136,
|
|
||||||
136, 136, 136, 136, 112, 5, 7, 7, 6, 0, 0, 240, 136, 136, 240, 128,
|
|
||||||
128, 128, 5, 7, 7, 6, 0, 0, 112, 136, 136, 136, 168, 144, 104, 5,
|
|
||||||
7, 7, 6, 0, 0, 240, 136, 136, 240, 160, 144, 136, 5, 7, 7, 6,
|
|
||||||
0, 0, 120, 128, 128, 112, 8, 8, 240, 5, 7, 7, 6, 0, 0, 248,
|
|
||||||
32, 32, 32, 32, 32, 32, 5, 7, 7, 6, 0, 0, 136, 136, 136, 136,
|
|
||||||
136, 136, 112, 5, 7, 7, 6, 0, 0, 136, 136, 136, 136, 136, 80, 32,
|
|
||||||
5, 7, 7, 6, 0, 0, 136, 136, 136, 136, 136, 168, 80, 5, 7, 7,
|
|
||||||
6, 0, 0, 136, 136, 80, 32, 80, 136, 136, 5, 7, 7, 6, 0, 0,
|
|
||||||
136, 136, 136, 80, 32, 32, 32, 5, 7, 7, 6, 0, 0, 248, 8, 16,
|
|
||||||
32, 64, 128, 248, 3, 7, 7, 6, 1, 0, 224, 128, 128, 128, 128, 128,
|
|
||||||
224, 5, 5, 5, 6, 0, 1, 128, 64, 32, 16, 8, 3, 7, 7, 6,
|
|
||||||
1, 0, 224, 32, 32, 32, 32, 32, 224, 5, 3, 3, 6, 0, 4, 32,
|
|
||||||
80, 136, 5, 1, 1, 6, 0, 0, 248, 2, 2, 2, 6, 2, 5, 128,
|
|
||||||
64, 5, 5, 5, 6, 0, 0, 112, 8, 120, 136, 120, 5, 7, 7, 6,
|
|
||||||
0, 0, 128, 128, 176, 200, 136, 136, 240, 5, 5, 5, 6, 0, 0, 112,
|
|
||||||
128, 128, 136, 112, 5, 7, 7, 6, 0, 0, 8, 8, 104, 152, 136, 136,
|
|
||||||
120, 5, 5, 5, 6, 0, 0, 112, 136, 248, 128, 112, 5, 7, 7, 6,
|
|
||||||
0, 0, 48, 72, 224, 64, 64, 64, 64, 5, 6, 6, 6, 0, 255, 112,
|
|
||||||
136, 136, 120, 8, 112, 5, 7, 7, 6, 0, 0, 128, 128, 176, 200, 136,
|
|
||||||
136, 136, 1, 7, 7, 6, 2, 0, 128, 0, 128, 128, 128, 128, 128, 3,
|
|
||||||
8, 8, 6, 1, 255, 32, 0, 32, 32, 32, 32, 160, 64, 4, 7, 7,
|
|
||||||
6, 0, 0, 128, 128, 144, 160, 192, 160, 144, 3, 7, 7, 6, 1, 0,
|
|
||||||
192, 64, 64, 64, 64, 64, 224, 5, 5, 5, 6, 0, 0, 208, 168, 168,
|
|
||||||
168, 168, 5, 5, 5, 6, 0, 0, 176, 200, 136, 136, 136, 5, 5, 5,
|
|
||||||
6, 0, 0, 112, 136, 136, 136, 112, 5, 6, 6, 6, 0, 255, 240, 136,
|
|
||||||
136, 240, 128, 128, 5, 6, 6, 6, 0, 255, 120, 136, 136, 120, 8, 8,
|
|
||||||
5, 5, 5, 6, 0, 0, 176, 200, 128, 128, 128, 5, 5, 5, 6, 0,
|
|
||||||
0, 112, 128, 112, 8, 240, 4, 7, 7, 6, 0, 0, 64, 64, 224, 64,
|
|
||||||
64, 64, 48, 5, 5, 5, 6, 0, 0, 136, 136, 136, 152, 104, 5, 5,
|
|
||||||
5, 6, 0, 0, 136, 136, 136, 80, 32, 5, 5, 5, 6, 0, 0, 136,
|
|
||||||
136, 168, 168, 80, 5, 5, 5, 6, 0, 0, 136, 80, 32, 80, 136, 5,
|
|
||||||
6, 6, 6, 0, 255, 136, 136, 136, 120, 8, 112, 5, 5, 5, 6, 0,
|
|
||||||
0, 248, 16, 32, 64, 248, 3, 7, 7, 6, 1, 0, 32, 64, 64, 128,
|
|
||||||
64, 64, 32, 1, 7, 7, 6, 2, 0, 128, 128, 128, 128, 128, 128, 128,
|
|
||||||
3, 7, 7, 6, 1, 0, 128, 64, 64, 32, 64, 64, 128, 5, 2, 2,
|
|
||||||
6, 0, 2, 104, 144, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0,
|
|
||||||
0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0,
|
|
||||||
6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0,
|
|
||||||
0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0,
|
|
||||||
0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0,
|
|
||||||
6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0,
|
|
||||||
0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0,
|
|
||||||
0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0,
|
|
||||||
6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0,
|
|
||||||
0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0,
|
|
||||||
0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0,
|
|
||||||
6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0,
|
|
||||||
0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0,
|
|
||||||
0, 1, 7, 7, 6, 2, 0, 128, 0, 128, 128, 128, 128, 128, 5, 7,
|
|
||||||
7, 6, 0, 0, 32, 112, 168, 160, 168, 112, 32, 5, 7, 7, 6, 0,
|
|
||||||
0, 48, 64, 64, 224, 64, 80, 168, 5, 5, 5, 6, 0, 0, 136, 112,
|
|
||||||
80, 112, 136, 5, 7, 7, 6, 0, 0, 136, 80, 32, 248, 32, 248, 32,
|
|
||||||
1, 7, 7, 6, 2, 0, 128, 128, 128, 0, 128, 128, 128, 5, 8, 8,
|
|
||||||
6, 0, 0, 48, 72, 32, 80, 80, 32, 144, 96, 3, 1, 1, 6, 1,
|
|
||||||
7, 160, 5, 7, 7, 6, 0, 0, 248, 136, 184, 184, 184, 136, 248, 5,
|
|
||||||
7, 7, 6, 0, 1, 112, 8, 120, 136, 120, 0, 248, 5, 5, 5, 6,
|
|
||||||
0, 1, 40, 80, 160, 80, 40, 5, 3, 3, 6, 0, 1, 248, 8, 8,
|
|
||||||
2, 2, 2, 6, 2, 6, 64, 128, 5, 7, 7, 6, 0, 0, 248, 136,
|
|
||||||
168, 136, 152, 168, 248, 5, 1, 1, 6, 0, 6, 248, 4, 4, 4, 6,
|
|
||||||
0, 3, 96, 144, 144, 96, 5, 7, 7, 6, 0, 0, 32, 32, 248, 32,
|
|
||||||
32, 0, 248, 4, 5, 5, 6, 0, 3, 96, 144, 32, 64, 240, 3, 5,
|
|
||||||
5, 6, 0, 3, 224, 32, 224, 32, 224, 2, 2, 2, 6, 2, 6, 64,
|
|
||||||
128, 5, 8, 8, 6, 0, 255, 136, 136, 136, 136, 152, 232, 128, 128, 5,
|
|
||||||
7, 7, 6, 0, 0, 120, 152, 152, 120, 24, 24, 24, 2, 2, 2, 6,
|
|
||||||
2, 2, 192, 192, 2, 2, 2, 6, 2, 255, 64, 128, 3, 5, 5, 6,
|
|
||||||
0, 3, 64, 192, 64, 64, 224, 5, 7, 7, 6, 0, 1, 112, 136, 136,
|
|
||||||
136, 112, 0, 248, 5, 5, 5, 6, 0, 1, 160, 80, 40, 80, 160, 5,
|
|
||||||
7, 7, 6, 0, 0, 136, 144, 168, 88, 184, 8, 8, 5, 7, 7, 6,
|
|
||||||
0, 0, 136, 144, 184, 72, 152, 32, 56, 5, 8, 8, 6, 0, 0, 192,
|
|
||||||
64, 192, 72, 216, 56, 8, 8, 5, 7, 7, 6, 0, 0, 32, 0, 32,
|
|
||||||
64, 128, 136, 112, 5, 8, 8, 6, 0, 0, 64, 32, 0, 112, 136, 248,
|
|
||||||
136, 136, 5, 8, 8, 6, 0, 0, 16, 32, 0, 112, 136, 248, 136, 136,
|
|
||||||
5, 8, 8, 6, 0, 0, 32, 80, 0, 112, 136, 248, 136, 136, 5, 8,
|
|
||||||
8, 6, 0, 0, 104, 144, 0, 112, 136, 248, 136, 136, 5, 8, 8, 6,
|
|
||||||
0, 0, 80, 0, 112, 136, 136, 248, 136, 136, 5, 8, 8, 6, 0, 0,
|
|
||||||
32, 80, 32, 112, 136, 248, 136, 136, 5, 7, 7, 6, 0, 0, 56, 96,
|
|
||||||
160, 184, 224, 160, 184, 5, 8, 8, 6, 0, 255, 112, 136, 128, 128, 136,
|
|
||||||
112, 32, 96, 5, 8, 8, 6, 0, 0, 64, 32, 0, 248, 128, 240, 128,
|
|
||||||
248, 5, 8, 8, 6, 0, 0, 8, 16, 0, 248, 128, 240, 128, 248, 5,
|
|
||||||
8, 8, 6, 0, 0, 32, 80, 0, 248, 128, 240, 128, 248, 5, 7, 7,
|
|
||||||
6, 0, 0, 80, 0, 248, 128, 240, 128, 248, 3, 8, 8, 6, 1, 0,
|
|
||||||
128, 64, 0, 224, 64, 64, 64, 224, 3, 8, 8, 6, 1, 0, 32, 64,
|
|
||||||
0, 224, 64, 64, 64, 224, 3, 8, 8, 6, 1, 0, 64, 160, 0, 224,
|
|
||||||
64, 64, 64, 224, 3, 7, 7, 6, 1, 0, 160, 0, 224, 64, 64, 64,
|
|
||||||
224, 5, 7, 7, 6, 0, 0, 112, 72, 72, 232, 72, 72, 112, 5, 8,
|
|
||||||
8, 6, 0, 0, 104, 144, 0, 136, 200, 168, 152, 136, 5, 8, 8, 6,
|
|
||||||
0, 0, 64, 32, 112, 136, 136, 136, 136, 112, 5, 8, 8, 6, 0, 0,
|
|
||||||
16, 32, 112, 136, 136, 136, 136, 112, 5, 8, 8, 6, 0, 0, 32, 80,
|
|
||||||
0, 112, 136, 136, 136, 112, 5, 8, 8, 6, 0, 0, 104, 144, 0, 112,
|
|
||||||
136, 136, 136, 112, 5, 8, 8, 6, 0, 0, 80, 0, 112, 136, 136, 136,
|
|
||||||
136, 112, 5, 5, 5, 6, 0, 1, 136, 80, 32, 80, 136, 5, 8, 8,
|
|
||||||
6, 0, 255, 16, 112, 168, 168, 168, 168, 112, 64, 5, 8, 8, 6, 0,
|
|
||||||
0, 64, 32, 136, 136, 136, 136, 136, 112, 5, 8, 8, 6, 0, 0, 16,
|
|
||||||
32, 136, 136, 136, 136, 136, 112, 5, 8, 8, 6, 0, 0, 32, 80, 0,
|
|
||||||
136, 136, 136, 136, 112, 5, 8, 8, 6, 0, 0, 80, 0, 136, 136, 136,
|
|
||||||
136, 136, 112, 5, 8, 8, 6, 0, 0, 16, 32, 136, 80, 32, 32, 32,
|
|
||||||
32, 5, 9, 9, 6, 0, 255, 192, 64, 112, 72, 72, 112, 64, 64, 224,
|
|
||||||
4, 8, 8, 6, 1, 255, 96, 144, 144, 160, 144, 144, 224, 128, 5, 8,
|
|
||||||
8, 6, 0, 0, 64, 32, 0, 112, 8, 120, 136, 120, 5, 8, 8, 6,
|
|
||||||
0, 0, 16, 32, 0, 112, 8, 120, 136, 120, 5, 8, 8, 6, 0, 0,
|
|
||||||
32, 80, 0, 112, 8, 120, 136, 120, 5, 8, 8, 6, 0, 0, 104, 144,
|
|
||||||
0, 112, 8, 120, 136, 120, 5, 7, 7, 6, 0, 0, 80, 0, 112, 8,
|
|
||||||
120, 136, 120, 5, 8, 8, 6, 0, 0, 32, 80, 32, 112, 8, 120, 136,
|
|
||||||
120, 5, 6, 6, 6, 0, 0, 208, 40, 120, 160, 168, 80, 5, 6, 6,
|
|
||||||
6, 0, 255, 112, 128, 136, 112, 32, 96, 5, 8, 8, 6, 0, 0, 64,
|
|
||||||
32, 0, 112, 136, 248, 128, 112, 5, 8, 8, 6, 0, 0, 16, 32, 0,
|
|
||||||
112, 136, 248, 128, 112, 5, 8, 8, 6, 0, 0, 32, 80, 0, 112, 136,
|
|
||||||
248, 128, 112, 5, 7, 7, 6, 0, 0, 80, 0, 112, 136, 248, 128, 112,
|
|
||||||
3, 8, 8, 6, 1, 0, 128, 64, 0, 64, 192, 64, 64, 224, 3, 8,
|
|
||||||
8, 6, 1, 0, 32, 64, 0, 64, 192, 64, 64, 224, 3, 8, 8, 6,
|
|
||||||
1, 0, 64, 160, 0, 64, 192, 64, 64, 224, 3, 7, 7, 6, 1, 0,
|
|
||||||
160, 0, 64, 192, 64, 64, 224, 5, 7, 7, 6, 0, 0, 160, 64, 160,
|
|
||||||
16, 120, 136, 112, 5, 8, 8, 6, 0, 0, 104, 144, 0, 176, 200, 136,
|
|
||||||
136, 136, 5, 8, 8, 6, 0, 0, 64, 32, 0, 112, 136, 136, 136, 112,
|
|
||||||
5, 8, 8, 6, 0, 0, 16, 32, 0, 112, 136, 136, 136, 112, 5, 8,
|
|
||||||
8, 6, 0, 0, 32, 80, 0, 112, 136, 136, 136, 112, 5, 8, 8, 6,
|
|
||||||
0, 0, 104, 144, 0, 112, 136, 136, 136, 112, 5, 7, 7, 6, 0, 0,
|
|
||||||
80, 0, 112, 136, 136, 136, 112, 5, 5, 5, 6, 0, 1, 32, 0, 248,
|
|
||||||
0, 32, 5, 7, 7, 6, 0, 255, 16, 112, 168, 168, 168, 112, 64, 5,
|
|
||||||
8, 8, 6, 0, 0, 64, 32, 0, 136, 136, 136, 152, 104, 5, 8, 8,
|
|
||||||
6, 0, 0, 16, 32, 0, 136, 136, 136, 152, 104, 5, 8, 8, 6, 0,
|
|
||||||
0, 32, 80, 0, 136, 136, 136, 152, 104, 5, 7, 7, 6, 0, 0, 80,
|
|
||||||
0, 136, 136, 136, 152, 104, 5, 9, 9, 6, 0, 255, 16, 32, 0, 136,
|
|
||||||
136, 136, 248, 8, 112, 4, 7, 7, 6, 1, 255, 192, 64, 96, 80, 96,
|
|
||||||
64, 224, 5, 8, 8, 6, 0, 255, 80, 0, 136, 136, 136, 120, 8, 112
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif
|
|
||||||
@@ -1,184 +0,0 @@
|
|||||||
/*
|
|
||||||
Fontname: ISO10646-1-PL
|
|
||||||
Copyright: A.Hardtung, public domain
|
|
||||||
Capital A Height: 7, '1' Height: 7
|
|
||||||
Calculated Max Values w= 5 h= 9 x= 2 y= 7 dx= 6 dy= 0 ascent= 8 len= 9
|
|
||||||
Font Bounding box w= 6 h= 9 x= 0 y=-2
|
|
||||||
Calculated Min Values x= 0 y=-2 dx= 0 dy= 0
|
|
||||||
Pure Font ascent = 7 descent=-1
|
|
||||||
X Font ascent = 7 descent=-1
|
|
||||||
Max Font ascent = 8 descent=-2
|
|
||||||
*/
|
|
||||||
#include <U8glib.h>
|
|
||||||
const u8g_fntpgm_uint8_t ISO10646_1_PL_5x7[2732] U8G_FONT_SECTION(".progmem.ISO10646_1_PL_5x7") = {
|
|
||||||
0,6,9,0,254,7,1,146,3,33,32,255,255,8,254,7,
|
|
||||||
255,0,0,0,6,0,0,1,7,7,6,2,0,128,128,128,
|
|
||||||
128,128,0,128,3,2,2,6,1,5,160,160,5,7,7,6,
|
|
||||||
0,0,80,80,248,80,248,80,80,5,7,7,6,0,0,32,
|
|
||||||
120,160,112,40,240,32,5,7,7,6,0,0,192,200,16,32,
|
|
||||||
64,152,24,5,7,7,6,0,0,96,144,160,64,168,144,104,
|
|
||||||
2,3,3,6,1,4,192,64,128,3,7,7,6,1,0,32,
|
|
||||||
64,128,128,128,64,32,3,7,7,6,1,0,128,64,32,32,
|
|
||||||
32,64,128,5,5,5,6,0,1,32,168,112,168,32,5,5,
|
|
||||||
5,6,0,1,32,32,248,32,32,2,3,3,6,2,255,192,
|
|
||||||
64,128,5,1,1,6,0,3,248,2,2,2,6,2,0,192,
|
|
||||||
192,5,5,5,6,0,1,8,16,32,64,128,5,7,7,6,
|
|
||||||
0,0,112,136,136,136,136,136,112,3,7,7,6,1,0,64,
|
|
||||||
192,64,64,64,64,224,5,7,7,6,0,0,112,136,8,112,
|
|
||||||
128,128,248,5,7,7,6,0,0,248,16,32,16,8,8,240,
|
|
||||||
5,7,7,6,0,0,16,48,80,144,248,16,16,5,7,7,
|
|
||||||
6,0,0,248,128,240,8,8,136,112,5,7,7,6,0,0,
|
|
||||||
112,128,128,240,136,136,112,5,7,7,6,0,0,248,8,16,
|
|
||||||
32,32,32,32,5,7,7,6,0,0,112,136,136,112,136,136,
|
|
||||||
112,5,7,7,6,0,0,112,136,136,120,8,8,112,2,5,
|
|
||||||
5,6,2,0,192,192,0,192,192,2,6,6,6,2,255,192,
|
|
||||||
192,0,192,64,128,4,7,7,6,0,0,16,32,64,128,64,
|
|
||||||
32,16,5,3,3,6,0,2,248,0,248,4,7,7,6,1,
|
|
||||||
0,128,64,32,16,32,64,128,5,7,7,6,0,0,112,136,
|
|
||||||
8,16,32,0,32,5,7,7,6,0,0,112,136,8,104,168,
|
|
||||||
168,112,5,7,7,6,0,0,112,136,136,248,136,136,136,5,
|
|
||||||
7,7,6,0,0,240,136,136,240,136,136,240,5,7,7,6,
|
|
||||||
0,0,112,136,128,128,128,136,112,5,7,7,6,0,0,240,
|
|
||||||
136,136,136,136,136,240,5,7,7,6,0,0,248,128,128,240,
|
|
||||||
128,128,248,5,7,7,6,0,0,248,128,128,240,128,128,128,
|
|
||||||
5,7,7,6,0,0,112,136,128,184,136,136,112,5,7,7,
|
|
||||||
6,0,0,136,136,136,248,136,136,136,1,7,7,6,2,0,
|
|
||||||
128,128,128,128,128,128,128,5,7,7,6,0,0,56,16,16,
|
|
||||||
16,16,144,96,5,7,7,6,0,0,136,144,160,192,160,144,
|
|
||||||
136,5,7,7,6,0,0,128,128,128,128,128,128,248,5,7,
|
|
||||||
7,6,0,0,136,216,168,136,136,136,136,5,7,7,6,0,
|
|
||||||
0,136,136,200,168,152,136,136,5,7,7,6,0,0,112,136,
|
|
||||||
136,136,136,136,112,5,7,7,6,0,0,240,136,136,240,128,
|
|
||||||
128,128,5,7,7,6,0,0,112,136,136,136,168,144,104,5,
|
|
||||||
7,7,6,0,0,240,136,136,240,160,144,136,5,7,7,6,
|
|
||||||
0,0,120,128,128,112,8,8,240,5,7,7,6,0,0,248,
|
|
||||||
32,32,32,32,32,32,5,7,7,6,0,0,136,136,136,136,
|
|
||||||
136,136,112,5,7,7,6,0,0,136,136,136,136,136,80,32,
|
|
||||||
5,7,7,6,0,0,136,136,136,136,136,168,80,5,7,7,
|
|
||||||
6,0,0,136,136,80,32,80,136,136,5,7,7,6,0,0,
|
|
||||||
136,136,136,80,32,32,32,5,7,7,6,0,0,248,8,16,
|
|
||||||
32,64,128,248,3,7,7,6,1,0,224,128,128,128,128,128,
|
|
||||||
224,5,5,5,6,0,1,128,64,32,16,8,3,7,7,6,
|
|
||||||
1,0,224,32,32,32,32,32,224,5,3,3,6,0,4,32,
|
|
||||||
80,136,5,1,1,6,0,0,248,2,2,2,6,2,5,128,
|
|
||||||
64,5,5,5,6,0,0,112,8,120,136,120,5,7,7,6,
|
|
||||||
0,0,128,128,176,200,136,136,240,5,5,5,6,0,0,112,
|
|
||||||
128,128,136,112,5,7,7,6,0,0,8,8,104,152,136,136,
|
|
||||||
120,5,5,5,6,0,0,112,136,248,128,112,5,7,7,6,
|
|
||||||
0,0,48,72,224,64,64,64,64,5,6,6,6,0,255,112,
|
|
||||||
136,136,120,8,112,5,7,7,6,0,0,128,128,176,200,136,
|
|
||||||
136,136,1,7,7,6,2,0,128,0,128,128,128,128,128,3,
|
|
||||||
8,8,6,1,255,32,0,32,32,32,32,160,64,4,7,7,
|
|
||||||
6,0,0,128,128,144,160,192,160,144,3,7,7,6,1,0,
|
|
||||||
192,64,64,64,64,64,224,5,5,5,6,0,0,208,168,168,
|
|
||||||
168,168,5,5,5,6,0,0,176,200,136,136,136,5,5,5,
|
|
||||||
6,0,0,112,136,136,136,112,5,6,6,6,0,255,240,136,
|
|
||||||
136,240,128,128,5,6,6,6,0,255,120,136,136,120,8,8,
|
|
||||||
5,5,5,6,0,0,176,200,128,128,128,5,5,5,6,0,
|
|
||||||
0,112,128,112,8,240,4,7,7,6,0,0,64,64,224,64,
|
|
||||||
64,64,48,5,5,5,6,0,0,136,136,136,152,104,5,5,
|
|
||||||
5,6,0,0,136,136,136,80,32,5,5,5,6,0,0,136,
|
|
||||||
136,168,168,80,5,5,5,6,0,0,136,80,32,80,136,5,
|
|
||||||
6,6,6,0,255,136,136,136,120,8,112,5,5,5,6,0,
|
|
||||||
0,248,16,32,64,248,3,7,7,6,1,0,32,64,64,128,
|
|
||||||
64,64,32,1,7,7,6,2,0,128,128,128,128,128,128,128,
|
|
||||||
3,7,7,6,1,0,128,64,64,32,64,64,128,5,2,2,
|
|
||||||
6,0,2,104,144,0,0,0,6,0,0,5,9,9,6,0,
|
|
||||||
254,112,136,136,248,136,136,136,16,32,5,7,7,6,0,254,
|
|
||||||
112,8,120,136,120,16,32,5,8,8,6,0,0,16,32,112,
|
|
||||||
136,128,128,136,112,5,7,7,6,0,0,16,32,112,128,128,
|
|
||||||
136,112,5,9,9,6,0,254,248,128,128,240,128,128,248,8,
|
|
||||||
16,5,7,7,6,0,254,112,136,248,128,112,16,32,5,7,
|
|
||||||
7,6,0,0,128,144,160,192,128,128,248,5,7,7,6,0,
|
|
||||||
0,96,40,48,96,160,32,112,5,8,8,6,0,0,16,168,
|
|
||||||
136,200,168,152,136,136,5,8,8,6,0,0,8,16,0,176,
|
|
||||||
200,136,136,136,5,8,8,6,0,0,16,32,112,136,136,136,
|
|
||||||
136,112,5,8,8,6,0,0,16,32,0,112,136,136,136,112,
|
|
||||||
5,8,8,6,0,0,16,120,128,128,112,8,8,240,5,8,
|
|
||||||
8,6,0,0,16,32,0,112,128,112,8,240,5,8,8,6,
|
|
||||||
0,0,32,248,8,16,32,64,128,248,5,8,8,6,0,0,
|
|
||||||
16,32,0,248,16,32,64,248,5,7,7,6,0,0,248,8,
|
|
||||||
16,248,64,128,248,5,8,8,6,0,0,48,48,0,248,16,
|
|
||||||
32,64,248,0,0,0,6,0,0,0,0,0,6,0,0,0,
|
|
||||||
0,0,6,0,0,0,0,0,6,0,0,0,0,0,6,0,
|
|
||||||
0,0,0,0,6,0,0,0,0,0,6,0,0,0,0,0,
|
|
||||||
6,0,0,0,0,0,6,0,0,0,0,0,6,0,0,0,
|
|
||||||
0,0,6,0,0,0,0,0,6,0,0,0,0,0,6,0,
|
|
||||||
0,0,0,0,6,0,0,0,0,0,6,0,0,1,7,7,
|
|
||||||
6,2,0,128,0,128,128,128,128,128,5,7,7,6,0,0,
|
|
||||||
32,112,168,160,168,112,32,5,7,7,6,0,0,48,64,64,
|
|
||||||
224,64,80,168,5,5,5,6,0,0,136,112,80,112,136,5,
|
|
||||||
7,7,6,0,0,136,80,32,248,32,248,32,1,7,7,6,
|
|
||||||
2,0,128,128,128,0,128,128,128,5,8,8,6,0,0,48,
|
|
||||||
72,32,80,80,32,144,96,3,1,1,6,1,7,160,5,7,
|
|
||||||
7,6,0,0,248,136,184,184,184,136,248,5,7,7,6,0,
|
|
||||||
1,112,8,120,136,120,0,248,5,5,5,6,0,1,40,80,
|
|
||||||
160,80,40,5,3,3,6,0,1,248,8,8,2,2,2,6,
|
|
||||||
2,6,64,128,5,7,7,6,0,0,248,136,168,136,152,168,
|
|
||||||
248,5,1,1,6,0,6,248,4,4,4,6,0,3,96,144,
|
|
||||||
144,96,5,7,7,6,0,0,32,32,248,32,32,0,248,4,
|
|
||||||
5,5,6,0,3,96,144,32,64,240,3,5,5,6,0,3,
|
|
||||||
224,32,224,32,224,2,2,2,6,2,6,64,128,5,8,8,
|
|
||||||
6,0,255,136,136,136,136,152,232,128,128,5,7,7,6,0,
|
|
||||||
0,120,152,152,120,24,24,24,2,2,2,6,2,2,192,192,
|
|
||||||
2,2,2,6,2,255,64,128,3,5,5,6,0,3,64,192,
|
|
||||||
64,64,224,5,7,7,6,0,1,112,136,136,136,112,0,248,
|
|
||||||
5,5,5,6,0,1,160,80,40,80,160,5,7,7,6,0,
|
|
||||||
0,136,144,168,88,184,8,8,5,7,7,6,0,0,136,144,
|
|
||||||
184,72,152,32,56,5,8,8,6,0,0,192,64,192,72,216,
|
|
||||||
56,8,8,5,7,7,6,0,0,32,0,32,64,128,136,112,
|
|
||||||
5,8,8,6,0,0,64,32,0,112,136,248,136,136,5,8,
|
|
||||||
8,6,0,0,16,32,0,112,136,248,136,136,5,8,8,6,
|
|
||||||
0,0,32,80,0,112,136,248,136,136,5,8,8,6,0,0,
|
|
||||||
104,144,0,112,136,248,136,136,5,8,8,6,0,0,80,0,
|
|
||||||
112,136,136,248,136,136,5,8,8,6,0,0,32,80,32,112,
|
|
||||||
136,248,136,136,5,7,7,6,0,0,56,96,160,184,224,160,
|
|
||||||
184,5,8,8,6,0,255,112,136,128,128,136,112,32,96,5,
|
|
||||||
8,8,6,0,0,64,32,0,248,128,240,128,248,5,8,8,
|
|
||||||
6,0,0,8,16,0,248,128,240,128,248,5,8,8,6,0,
|
|
||||||
0,32,80,0,248,128,240,128,248,5,7,7,6,0,0,80,
|
|
||||||
0,248,128,240,128,248,3,8,8,6,1,0,128,64,0,224,
|
|
||||||
64,64,64,224,3,8,8,6,1,0,32,64,0,224,64,64,
|
|
||||||
64,224,3,8,8,6,1,0,64,160,0,224,64,64,64,224,
|
|
||||||
3,7,7,6,1,0,160,0,224,64,64,64,224,5,7,7,
|
|
||||||
6,0,0,112,72,72,232,72,72,112,5,8,8,6,0,0,
|
|
||||||
104,144,0,136,200,168,152,136,5,8,8,6,0,0,64,32,
|
|
||||||
112,136,136,136,136,112,5,8,8,6,0,0,16,32,112,136,
|
|
||||||
136,136,136,112,5,8,8,6,0,0,32,80,0,112,136,136,
|
|
||||||
136,112,5,8,8,6,0,0,104,144,0,112,136,136,136,112,
|
|
||||||
5,8,8,6,0,0,80,0,112,136,136,136,136,112,5,5,
|
|
||||||
5,6,0,1,136,80,32,80,136,5,8,8,6,0,255,16,
|
|
||||||
112,168,168,168,168,112,64,5,8,8,6,0,0,64,32,136,
|
|
||||||
136,136,136,136,112,5,8,8,6,0,0,16,32,136,136,136,
|
|
||||||
136,136,112,5,8,8,6,0,0,32,80,0,136,136,136,136,
|
|
||||||
112,5,8,8,6,0,0,80,0,136,136,136,136,136,112,5,
|
|
||||||
8,8,6,0,0,16,32,136,80,32,32,32,32,5,9,9,
|
|
||||||
6,0,255,192,64,112,72,72,112,64,64,224,4,8,8,6,
|
|
||||||
1,255,96,144,144,160,144,144,224,128,5,8,8,6,0,0,
|
|
||||||
64,32,0,112,8,120,136,120,5,8,8,6,0,0,16,32,
|
|
||||||
0,112,8,120,136,120,5,8,8,6,0,0,32,80,0,112,
|
|
||||||
8,120,136,120,5,8,8,6,0,0,104,144,0,112,8,120,
|
|
||||||
136,120,5,7,7,6,0,0,80,0,112,8,120,136,120,5,
|
|
||||||
8,8,6,0,0,32,80,32,112,8,120,136,120,5,6,6,
|
|
||||||
6,0,0,208,40,120,160,168,80,5,6,6,6,0,255,112,
|
|
||||||
128,136,112,32,96,5,8,8,6,0,0,64,32,0,112,136,
|
|
||||||
248,128,112,5,8,8,6,0,0,16,32,0,112,136,248,128,
|
|
||||||
112,5,8,8,6,0,0,32,80,0,112,136,248,128,112,5,
|
|
||||||
7,7,6,0,0,80,0,112,136,248,128,112,3,8,8,6,
|
|
||||||
1,0,128,64,0,64,192,64,64,224,3,8,8,6,1,0,
|
|
||||||
32,64,0,64,192,64,64,224,3,8,8,6,1,0,64,160,
|
|
||||||
0,64,192,64,64,224,3,7,7,6,1,0,160,0,64,192,
|
|
||||||
64,64,224,5,7,7,6,0,0,160,64,160,16,120,136,112,
|
|
||||||
5,8,8,6,0,0,104,144,0,176,200,136,136,136,5,8,
|
|
||||||
8,6,0,0,64,32,0,112,136,136,136,112,5,8,8,6,
|
|
||||||
0,0,16,32,0,112,136,136,136,112,5,8,8,6,0,0,
|
|
||||||
32,80,0,112,136,136,136,112,5,8,8,6,0,0,104,144,
|
|
||||||
0,112,136,136,136,112,5,7,7,6,0,0,80,0,112,136,
|
|
||||||
136,136,112,5,5,5,6,0,1,32,0,248,0,32,5,7,
|
|
||||||
7,6,0,255,16,112,168,168,168,112,64,5,8,8,6,0,
|
|
||||||
0,64,32,0,136,136,136,152,104,5,8,8,6,0,0,16,
|
|
||||||
32,0,136,136,136,152,104,5,8,8,6,0,0,32,80,0,
|
|
||||||
136,136,136,152,104,5,7,7,6,0,0,80,0,136,136,136,
|
|
||||||
152,104,5,9,9,6,0,255,16,32,0,136,136,136,248,8,
|
|
||||||
112,4,7,7,6,1,255,192,64,96,80,96,64,224,5,8,
|
|
||||||
8,6,0,255,80,0,136,136,136,120,8,112};
|
|
||||||
@@ -1,197 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
Fontname: ISO10646-1-tr
|
|
||||||
Copyright: public domain
|
|
||||||
Capital A Height: 7, '1' Height: 7
|
|
||||||
Calculated Max Values w= 5 h= 9 x= 2 y= 7 dx= 6 dy= 0 ascent= 8 len= 9
|
|
||||||
Font Bounding box w= 6 h= 9 x= 0 y=-2
|
|
||||||
Calculated Min Values x= 0 y=-1 dx= 0 dy= 0
|
|
||||||
Pure Font ascent = 7 descent=-1
|
|
||||||
X Font ascent = 7 descent=-1
|
|
||||||
Max Font ascent = 8 descent=-1
|
|
||||||
*/
|
|
||||||
#include <U8glib.h>
|
|
||||||
const u8g_fntpgm_uint8_t ISO10646_TR[2591] U8G_SECTION(".progmem.ISO10646_TR") = {
|
|
||||||
0,6,9,0,254,7,1,146,3,33,32,255,255,8,255,7,
|
|
||||||
255,0,0,0,6,0,0,1,7,7,6,2,0,128,128,128,
|
|
||||||
128,128,0,128,3,2,2,6,1,5,160,160,5,7,7,6,
|
|
||||||
0,0,80,80,248,80,248,80,80,5,7,7,6,0,0,32,
|
|
||||||
120,160,112,40,240,32,5,7,7,6,0,0,192,200,16,32,
|
|
||||||
64,152,24,5,7,7,6,0,0,96,144,160,64,168,144,104,
|
|
||||||
2,3,3,6,1,4,192,64,128,3,7,7,6,1,0,32,
|
|
||||||
64,128,128,128,64,32,3,7,7,6,1,0,128,64,32,32,
|
|
||||||
32,64,128,5,5,5,6,0,1,32,168,112,168,32,5,5,
|
|
||||||
5,6,0,1,32,32,248,32,32,2,3,3,6,2,255,192,
|
|
||||||
64,128,5,1,1,6,0,3,248,2,2,2,6,2,0,192,
|
|
||||||
192,5,5,5,6,0,1,8,16,32,64,128,5,7,7,6,
|
|
||||||
0,0,112,136,136,136,136,136,112,3,7,7,6,1,0,64,
|
|
||||||
192,64,64,64,64,224,5,7,7,6,0,0,112,136,8,112,
|
|
||||||
128,128,248,5,7,7,6,0,0,248,16,32,16,8,8,240,
|
|
||||||
5,7,7,6,0,0,16,48,80,144,248,16,16,5,7,7,
|
|
||||||
6,0,0,248,128,240,8,8,136,112,5,7,7,6,0,0,
|
|
||||||
112,128,128,240,136,136,112,5,7,7,6,0,0,248,8,16,
|
|
||||||
32,32,32,32,5,7,7,6,0,0,112,136,136,112,136,136,
|
|
||||||
112,5,7,7,6,0,0,112,136,136,120,8,8,112,2,5,
|
|
||||||
5,6,2,0,192,192,0,192,192,2,6,6,6,2,255,192,
|
|
||||||
192,0,192,64,128,4,7,7,6,0,0,16,32,64,128,64,
|
|
||||||
32,16,5,3,3,6,0,2,248,0,248,4,7,7,6,1,
|
|
||||||
0,128,64,32,16,32,64,128,5,7,7,6,0,0,112,136,
|
|
||||||
8,16,32,0,32,5,7,7,6,0,0,112,136,8,104,168,
|
|
||||||
168,112,5,7,7,6,0,0,112,136,136,248,136,136,136,5,
|
|
||||||
7,7,6,0,0,240,136,136,240,136,136,240,5,7,7,6,
|
|
||||||
0,0,112,136,128,128,128,136,112,5,7,7,6,0,0,240,
|
|
||||||
136,136,136,136,136,240,5,7,7,6,0,0,248,128,128,240,
|
|
||||||
128,128,248,5,7,7,6,0,0,248,128,128,240,128,128,128,
|
|
||||||
5,7,7,6,0,0,112,136,128,184,136,136,112,5,7,7,
|
|
||||||
6,0,0,136,136,136,248,136,136,136,1,7,7,6,2,0,
|
|
||||||
128,128,128,128,128,128,128,5,7,7,6,0,0,56,16,16,
|
|
||||||
16,16,144,96,5,7,7,6,0,0,136,144,160,192,160,144,
|
|
||||||
136,5,7,7,6,0,0,128,128,128,128,128,128,248,5,7,
|
|
||||||
7,6,0,0,136,216,168,136,136,136,136,5,7,7,6,0,
|
|
||||||
0,136,136,200,168,152,136,136,5,7,7,6,0,0,112,136,
|
|
||||||
136,136,136,136,112,5,7,7,6,0,0,240,136,136,240,128,
|
|
||||||
128,128,5,7,7,6,0,0,112,136,136,136,168,144,104,5,
|
|
||||||
7,7,6,0,0,240,136,136,240,160,144,136,5,7,7,6,
|
|
||||||
0,0,120,128,128,112,8,8,240,5,7,7,6,0,0,248,
|
|
||||||
32,32,32,32,32,32,5,7,7,6,0,0,136,136,136,136,
|
|
||||||
136,136,112,5,7,7,6,0,0,136,136,136,136,136,80,32,
|
|
||||||
5,7,7,6,0,0,136,136,136,136,136,168,80,5,7,7,
|
|
||||||
6,0,0,136,136,80,32,80,136,136,5,7,7,6,0,0,
|
|
||||||
136,136,136,80,32,32,32,5,7,7,6,0,0,248,8,16,
|
|
||||||
32,64,128,248,3,7,7,6,1,0,224,128,128,128,128,128,
|
|
||||||
224,5,5,5,6,0,1,128,64,32,16,8,3,7,7,6,
|
|
||||||
1,0,224,32,32,32,32,32,224,5,3,3,6,0,4,32,
|
|
||||||
80,136,5,1,1,6,0,0,248,2,2,2,6,2,5,128,
|
|
||||||
64,5,5,5,6,0,0,112,8,120,136,120,5,7,7,6,
|
|
||||||
0,0,128,128,176,200,136,136,240,5,5,5,6,0,0,112,
|
|
||||||
128,128,136,112,5,7,7,6,0,0,8,8,104,152,136,136,
|
|
||||||
120,5,5,5,6,0,0,112,136,248,128,112,5,7,7,6,
|
|
||||||
0,0,48,72,224,64,64,64,64,5,6,6,6,0,255,112,
|
|
||||||
136,136,120,8,112,5,7,7,6,0,0,128,128,176,200,136,
|
|
||||||
136,136,1,7,7,6,2,0,128,0,128,128,128,128,128,3,
|
|
||||||
8,8,6,1,255,32,0,32,32,32,32,160,64,4,7,7,
|
|
||||||
6,0,0,128,128,144,160,192,160,144,3,7,7,6,1,0,
|
|
||||||
192,64,64,64,64,64,224,5,5,5,6,0,0,208,168,168,
|
|
||||||
168,168,5,5,5,6,0,0,176,200,136,136,136,5,5,5,
|
|
||||||
6,0,0,112,136,136,136,112,5,6,6,6,0,255,240,136,
|
|
||||||
136,240,128,128,5,6,6,6,0,255,120,136,136,120,8,8,
|
|
||||||
5,5,5,6,0,0,176,200,128,128,128,5,5,5,6,0,
|
|
||||||
0,112,128,112,8,240,4,7,7,6,0,0,64,64,224,64,
|
|
||||||
64,64,48,5,5,5,6,0,0,136,136,136,152,104,5,5,
|
|
||||||
5,6,0,0,136,136,136,80,32,5,5,5,6,0,0,136,
|
|
||||||
136,168,168,80,5,5,5,6,0,0,136,80,32,80,136,5,
|
|
||||||
6,6,6,0,255,136,136,136,120,8,112,5,5,5,6,0,
|
|
||||||
0,248,16,32,64,248,3,7,7,6,1,0,32,64,64,128,
|
|
||||||
64,64,32,1,7,7,6,2,0,128,128,128,128,128,128,128,
|
|
||||||
3,7,7,6,1,0,128,64,64,32,64,64,128,5,2,2,
|
|
||||||
6,0,2,104,144,0,0,0,6,0,0,0,0,0,6,0,
|
|
||||||
0,0,0,0,6,0,0,0,0,0,6,0,0,0,0,0,
|
|
||||||
6,0,0,0,0,0,6,0,0,0,0,0,6,0,0,0,
|
|
||||||
0,0,6,0,0,0,0,0,6,0,0,0,0,0,6,0,
|
|
||||||
0,0,0,0,6,0,0,0,0,0,6,0,0,0,0,0,
|
|
||||||
6,0,0,0,0,0,6,0,0,0,0,0,6,0,0,0,
|
|
||||||
0,0,6,0,0,0,0,0,6,0,0,0,0,0,6,0,
|
|
||||||
0,0,0,0,6,0,0,0,0,0,6,0,0,0,0,0,
|
|
||||||
6,0,0,0,0,0,6,0,0,0,0,0,6,0,0,0,
|
|
||||||
0,0,6,0,0,0,0,0,6,0,0,0,0,0,6,0,
|
|
||||||
0,0,0,0,6,0,0,0,0,0,6,0,0,0,0,0,
|
|
||||||
6,0,0,0,0,0,6,0,0,0,0,0,6,0,0,0,
|
|
||||||
0,0,6,0,0,0,0,0,6,0,0,0,0,0,6,0,
|
|
||||||
0,1,7,7,6,2,0,128,0,128,128,128,128,128,5,7,
|
|
||||||
7,6,0,0,32,112,168,160,168,112,32,5,7,7,6,0,
|
|
||||||
0,48,64,64,224,64,80,168,5,5,5,6,0,0,136,112,
|
|
||||||
80,112,136,5,7,7,6,0,0,136,80,32,248,32,248,32,
|
|
||||||
1,7,7,6,2,0,128,128,128,0,128,128,128,5,8,8,
|
|
||||||
6,0,0,48,72,32,80,80,32,144,96,3,1,1,6,1,
|
|
||||||
7,160,5,7,7,6,0,0,248,136,184,184,184,136,248,5,
|
|
||||||
7,7,6,0,1,112,8,120,136,120,0,248,5,5,5,6,
|
|
||||||
0,1,40,80,160,80,40,5,3,3,6,0,1,248,8,8,
|
|
||||||
2,2,2,6,2,6,64,128,5,7,7,6,0,0,248,136,
|
|
||||||
168,136,152,168,248,5,1,1,6,0,6,248,4,4,4,6,
|
|
||||||
0,3,96,144,144,96,5,7,7,6,0,0,32,32,248,32,
|
|
||||||
32,0,248,4,5,5,6,0,3,96,144,32,64,240,3,5,
|
|
||||||
5,6,0,3,224,32,224,32,224,2,2,2,6,2,6,64,
|
|
||||||
128,5,8,8,6,0,255,136,136,136,136,152,232,128,128,5,
|
|
||||||
7,7,6,0,0,120,152,152,120,24,24,24,2,2,2,6,
|
|
||||||
2,2,192,192,2,2,2,6,2,255,64,128,3,5,5,6,
|
|
||||||
0,3,64,192,64,64,224,5,7,7,6,0,1,112,136,136,
|
|
||||||
136,112,0,248,5,5,5,6,0,1,160,80,40,80,160,5,
|
|
||||||
7,7,6,0,0,136,144,168,88,184,8,8,5,7,7,6,
|
|
||||||
0,0,136,144,184,72,152,32,56,5,8,8,6,0,0,192,
|
|
||||||
64,192,72,216,56,8,8,5,7,7,6,0,0,32,0,32,
|
|
||||||
64,128,136,112,5,8,8,6,0,0,64,32,0,112,136,248,
|
|
||||||
136,136,5,8,8,6,0,0,16,32,0,112,136,248,136,136,
|
|
||||||
5,8,8,6,0,0,32,80,0,112,136,248,136,136,5,8,
|
|
||||||
8,6,0,0,104,144,0,112,136,248,136,136,5,8,8,6,
|
|
||||||
0,0,80,0,112,136,136,248,136,136,5,8,8,6,0,0,
|
|
||||||
32,80,32,112,136,248,136,136,5,7,7,6,0,0,56,96,
|
|
||||||
160,184,224,160,184,5,8,8,6,0,255,112,136,128,128,136,
|
|
||||||
112,32,96,5,8,8,6,0,0,64,32,0,248,128,240,128,
|
|
||||||
248,5,8,8,6,0,0,8,16,0,248,128,240,128,248,5,
|
|
||||||
8,8,6,0,0,32,80,0,248,128,240,128,248,5,7,7,
|
|
||||||
6,0,0,80,0,248,128,240,128,248,3,8,8,6,1,0,
|
|
||||||
128,64,0,224,64,64,64,224,3,8,8,6,1,0,32,64,
|
|
||||||
0,224,64,64,64,224,3,8,8,6,1,0,64,160,0,224,
|
|
||||||
64,64,64,224,3,7,7,6,1,0,160,0,224,64,64,64,
|
|
||||||
224,5,9,9,6,0,255,80,32,112,136,128,184,136,136,112,
|
|
||||||
5,8,8,6,0,0,104,144,0,136,200,168,152,136,5,8,
|
|
||||||
8,6,0,0,64,32,112,136,136,136,136,112,5,8,8,6,
|
|
||||||
0,0,16,32,112,136,136,136,136,112,5,8,8,6,0,0,
|
|
||||||
32,80,0,112,136,136,136,112,5,8,8,6,0,0,104,144,
|
|
||||||
0,112,136,136,136,112,5,8,8,6,0,0,80,0,112,136,
|
|
||||||
136,136,136,112,5,5,5,6,0,1,136,80,32,80,136,5,
|
|
||||||
8,8,6,0,255,16,112,168,168,168,168,112,64,5,8,8,
|
|
||||||
6,0,0,64,32,136,136,136,136,136,112,5,8,8,6,0,
|
|
||||||
0,16,32,136,136,136,136,136,112,5,8,8,6,0,0,32,
|
|
||||||
80,0,136,136,136,136,112,5,8,8,6,0,0,80,0,136,
|
|
||||||
136,136,136,136,112,1,7,7,6,2,0,128,0,128,128,128,
|
|
||||||
128,128,5,9,9,6,0,255,120,128,128,112,8,8,240,32,
|
|
||||||
96,4,8,8,6,1,255,96,144,144,160,144,144,224,128,5,
|
|
||||||
8,8,6,0,0,64,32,0,112,8,120,136,120,5,8,8,
|
|
||||||
6,0,0,16,32,0,112,8,120,136,120,5,8,8,6,0,
|
|
||||||
0,32,80,0,112,8,120,136,120,5,8,8,6,0,0,104,
|
|
||||||
144,0,112,8,120,136,120,5,7,7,6,0,0,80,0,112,
|
|
||||||
8,120,136,120,5,8,8,6,0,0,32,80,32,112,8,120,
|
|
||||||
136,120,5,6,6,6,0,0,208,40,120,160,168,80,5,7,
|
|
||||||
7,6,0,255,112,128,128,136,112,32,96,5,8,8,6,0,
|
|
||||||
0,64,32,0,112,136,248,128,112,5,8,8,6,0,0,16,
|
|
||||||
32,0,112,136,248,128,112,5,8,8,6,0,0,32,80,0,
|
|
||||||
112,136,248,128,112,5,7,7,6,0,0,80,0,112,136,248,
|
|
||||||
128,112,3,8,8,6,1,0,128,64,0,64,192,64,64,224,
|
|
||||||
3,8,8,6,1,0,32,64,0,64,192,64,64,224,3,8,
|
|
||||||
8,6,1,0,64,160,0,64,192,64,64,224,3,7,7,6,
|
|
||||||
1,0,160,0,64,192,64,64,224,5,8,8,6,0,255,80,
|
|
||||||
32,112,136,136,120,8,112,5,8,8,6,0,0,104,144,0,
|
|
||||||
176,200,136,136,136,5,8,8,6,0,0,64,32,0,112,136,
|
|
||||||
136,136,112,5,8,8,6,0,0,16,32,0,112,136,136,136,
|
|
||||||
112,5,8,8,6,0,0,32,80,0,112,136,136,136,112,5,
|
|
||||||
8,8,6,0,0,104,144,0,112,136,136,136,112,5,7,7,
|
|
||||||
6,0,0,80,0,112,136,136,136,112,5,5,5,6,0,1,
|
|
||||||
32,0,248,0,32,5,7,7,6,0,255,16,112,168,168,168,
|
|
||||||
112,64,5,8,8,6,0,0,64,32,0,136,136,136,152,104,
|
|
||||||
5,8,8,6,0,0,16,32,0,136,136,136,152,104,5,8,
|
|
||||||
8,6,0,0,32,80,0,136,136,136,152,104,5,7,7,6,
|
|
||||||
0,0,80,0,136,136,136,152,104,1,5,5,6,2,0,128,
|
|
||||||
128,128,128,128,5,7,7,6,0,255,112,128,112,8,240,32,
|
|
||||||
96,5,8,8,6,0,255,80,0,136,136,136,120,8,112};
|
|
||||||
@@ -1,196 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
Fontname: ISO10646_5_Cyrillic
|
|
||||||
Copyright: A. Hardtung, public domain
|
|
||||||
Capital A Height: 7, '1' Height: 7
|
|
||||||
Calculated Max Values w= 5 h= 9 x= 2 y= 5 dx= 6 dy= 0 ascent= 8 len= 9
|
|
||||||
Font Bounding box w= 6 h= 9 x= 0 y=-2
|
|
||||||
Calculated Min Values x= 0 y=-1 dx= 0 dy= 0
|
|
||||||
Pure Font ascent = 7 descent=-1
|
|
||||||
X Font ascent = 7 descent=-1
|
|
||||||
Max Font ascent = 8 descent=-1
|
|
||||||
*/
|
|
||||||
#include <U8glib.h>
|
|
||||||
const u8g_fntpgm_uint8_t ISO10646_5_Cyrillic_5x7[2560] U8G_SECTION(".progmem.ISO10646_5_Cyrillic_5x7") = {
|
|
||||||
0, 6, 9, 0, 254, 7, 1, 145, 3, 32, 32, 255, 255, 8, 255, 7,
|
|
||||||
255, 0, 0, 0, 6, 0, 0, 1, 7, 7, 6, 2, 0, 128, 128, 128,
|
|
||||||
128, 128, 0, 128, 3, 2, 2, 6, 1, 5, 160, 160, 5, 7, 7, 6,
|
|
||||||
0, 0, 80, 80, 248, 80, 248, 80, 80, 5, 7, 7, 6, 0, 0, 32,
|
|
||||||
120, 160, 112, 40, 240, 32, 5, 7, 7, 6, 0, 0, 192, 200, 16, 32,
|
|
||||||
64, 152, 24, 5, 7, 7, 6, 0, 0, 96, 144, 160, 64, 168, 144, 104,
|
|
||||||
2, 3, 3, 6, 1, 4, 192, 64, 128, 3, 7, 7, 6, 1, 0, 32,
|
|
||||||
64, 128, 128, 128, 64, 32, 3, 7, 7, 6, 1, 0, 128, 64, 32, 32,
|
|
||||||
32, 64, 128, 5, 5, 5, 6, 0, 1, 32, 168, 112, 168, 32, 5, 5,
|
|
||||||
5, 6, 0, 1, 32, 32, 248, 32, 32, 2, 3, 3, 6, 2, 255, 192,
|
|
||||||
64, 128, 5, 1, 1, 6, 0, 3, 248, 2, 2, 2, 6, 2, 0, 192,
|
|
||||||
192, 5, 5, 5, 6, 0, 1, 8, 16, 32, 64, 128, 5, 7, 7, 6,
|
|
||||||
0, 0, 112, 136, 152, 168, 200, 136, 112, 3, 7, 7, 6, 1, 0, 64,
|
|
||||||
192, 64, 64, 64, 64, 224, 5, 7, 7, 6, 0, 0, 112, 136, 8, 112,
|
|
||||||
128, 128, 248, 5, 7, 7, 6, 0, 0, 248, 16, 32, 16, 8, 8, 240,
|
|
||||||
5, 7, 7, 6, 0, 0, 16, 48, 80, 144, 248, 16, 16, 5, 7, 7,
|
|
||||||
6, 0, 0, 248, 128, 240, 8, 8, 136, 112, 5, 7, 7, 6, 0, 0,
|
|
||||||
48, 64, 128, 240, 136, 136, 112, 5, 7, 7, 6, 0, 0, 248, 8, 16,
|
|
||||||
32, 32, 32, 32, 5, 7, 7, 6, 0, 0, 112, 136, 136, 112, 136, 136,
|
|
||||||
112, 5, 7, 7, 6, 0, 0, 112, 136, 136, 120, 8, 16, 96, 2, 5,
|
|
||||||
5, 6, 2, 0, 192, 192, 0, 192, 192, 2, 6, 6, 6, 2, 255, 192,
|
|
||||||
192, 0, 192, 64, 128, 4, 7, 7, 6, 0, 0, 16, 32, 64, 128, 64,
|
|
||||||
32, 16, 5, 3, 3, 6, 0, 2, 248, 0, 248, 4, 7, 7, 6, 1,
|
|
||||||
0, 128, 64, 32, 16, 32, 64, 128, 5, 7, 7, 6, 0, 0, 112, 136,
|
|
||||||
8, 16, 32, 0, 32, 5, 6, 6, 6, 0, 0, 112, 136, 8, 104, 168,
|
|
||||||
112, 5, 7, 7, 6, 0, 0, 112, 136, 136, 248, 136, 136, 136, 5, 7,
|
|
||||||
7, 6, 0, 0, 240, 136, 136, 240, 136, 136, 240, 5, 7, 7, 6, 0,
|
|
||||||
0, 112, 136, 128, 128, 128, 136, 112, 5, 7, 7, 6, 0, 0, 224, 144,
|
|
||||||
136, 136, 136, 144, 224, 5, 7, 7, 6, 0, 0, 248, 128, 128, 240, 128,
|
|
||||||
128, 248, 5, 7, 7, 6, 0, 0, 248, 128, 128, 240, 128, 128, 128, 5,
|
|
||||||
7, 7, 6, 0, 0, 112, 136, 128, 184, 136, 136, 112, 5, 7, 7, 6,
|
|
||||||
0, 0, 136, 136, 136, 248, 136, 136, 136, 1, 7, 7, 6, 2, 0, 128,
|
|
||||||
128, 128, 128, 128, 128, 128, 5, 7, 7, 6, 0, 0, 56, 16, 16, 16,
|
|
||||||
16, 144, 96, 5, 7, 7, 6, 0, 0, 136, 144, 160, 192, 160, 144, 136,
|
|
||||||
5, 7, 7, 6, 0, 0, 128, 128, 128, 128, 128, 128, 248, 5, 7, 7,
|
|
||||||
6, 0, 0, 136, 216, 168, 136, 136, 136, 136, 5, 7, 7, 6, 0, 0,
|
|
||||||
136, 136, 200, 168, 152, 136, 136, 5, 7, 7, 6, 0, 0, 112, 136, 136,
|
|
||||||
136, 136, 136, 112, 5, 7, 7, 6, 0, 0, 240, 136, 136, 240, 128, 128,
|
|
||||||
128, 5, 7, 7, 6, 0, 0, 112, 136, 136, 136, 168, 144, 104, 5, 7,
|
|
||||||
7, 6, 0, 0, 240, 136, 136, 240, 160, 144, 136, 5, 7, 7, 6, 0,
|
|
||||||
0, 120, 128, 128, 112, 8, 8, 240, 5, 7, 7, 6, 0, 0, 248, 32,
|
|
||||||
32, 32, 32, 32, 32, 5, 7, 7, 6, 0, 0, 136, 136, 136, 136, 136,
|
|
||||||
136, 112, 5, 7, 7, 6, 0, 0, 136, 136, 136, 136, 136, 80, 32, 5,
|
|
||||||
7, 7, 6, 0, 0, 136, 136, 136, 136, 136, 168, 80, 5, 7, 7, 6,
|
|
||||||
0, 0, 136, 136, 80, 32, 80, 136, 136, 5, 7, 7, 6, 0, 0, 136,
|
|
||||||
136, 136, 80, 32, 32, 32, 5, 7, 7, 6, 0, 0, 248, 8, 16, 32,
|
|
||||||
64, 128, 248, 3, 7, 7, 6, 1, 0, 224, 128, 128, 128, 128, 128, 224,
|
|
||||||
5, 5, 5, 6, 0, 1, 128, 64, 32, 16, 8, 3, 7, 7, 6, 1,
|
|
||||||
0, 224, 32, 32, 32, 32, 32, 224, 5, 3, 3, 6, 0, 4, 32, 80,
|
|
||||||
136, 5, 1, 1, 6, 0, 0, 248, 2, 2, 2, 6, 2, 5, 128, 64,
|
|
||||||
5, 5, 5, 6, 0, 0, 112, 8, 120, 136, 120, 5, 7, 7, 6, 0,
|
|
||||||
0, 128, 128, 176, 200, 136, 136, 240, 5, 5, 5, 6, 0, 0, 112, 128,
|
|
||||||
128, 136, 112, 5, 7, 7, 6, 0, 0, 8, 8, 104, 152, 136, 136, 120,
|
|
||||||
5, 5, 5, 6, 0, 0, 112, 136, 248, 128, 112, 5, 7, 7, 6, 0,
|
|
||||||
0, 48, 72, 224, 64, 64, 64, 64, 5, 6, 6, 6, 0, 255, 112, 136,
|
|
||||||
136, 120, 8, 112, 5, 7, 7, 6, 0, 0, 128, 128, 176, 200, 136, 136,
|
|
||||||
136, 1, 7, 7, 6, 2, 0, 128, 0, 128, 128, 128, 128, 128, 3, 8,
|
|
||||||
8, 6, 1, 255, 32, 0, 32, 32, 32, 32, 160, 64, 4, 7, 7, 6,
|
|
||||||
0, 0, 128, 128, 144, 160, 192, 160, 144, 3, 7, 7, 6, 1, 0, 192,
|
|
||||||
64, 64, 64, 64, 64, 224, 5, 5, 5, 6, 0, 0, 208, 168, 168, 168,
|
|
||||||
168, 5, 5, 5, 6, 0, 0, 176, 200, 136, 136, 136, 5, 5, 5, 6,
|
|
||||||
0, 0, 112, 136, 136, 136, 112, 5, 6, 6, 6, 0, 255, 240, 136, 136,
|
|
||||||
240, 128, 128, 5, 6, 6, 6, 0, 255, 120, 136, 136, 120, 8, 8, 5,
|
|
||||||
5, 5, 6, 0, 0, 176, 200, 128, 128, 128, 5, 5, 5, 6, 0, 0,
|
|
||||||
112, 128, 112, 8, 240, 5, 7, 7, 6, 0, 0, 64, 64, 224, 64, 64,
|
|
||||||
72, 48, 5, 5, 5, 6, 0, 0, 136, 136, 136, 152, 104, 5, 5, 5,
|
|
||||||
6, 0, 0, 136, 136, 136, 80, 32, 5, 5, 5, 6, 0, 0, 136, 136,
|
|
||||||
168, 168, 80, 5, 5, 5, 6, 0, 0, 136, 80, 32, 80, 136, 5, 6,
|
|
||||||
6, 6, 0, 255, 136, 136, 136, 120, 8, 112, 5, 5, 5, 6, 0, 0,
|
|
||||||
248, 16, 32, 64, 248, 3, 7, 7, 6, 1, 0, 32, 64, 64, 128, 64,
|
|
||||||
64, 32, 1, 7, 7, 6, 2, 0, 128, 128, 128, 128, 128, 128, 128, 3,
|
|
||||||
7, 7, 6, 1, 0, 128, 64, 64, 32, 64, 64, 128, 5, 2, 2, 6,
|
|
||||||
0, 3, 104, 144, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0,
|
|
||||||
0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6,
|
|
||||||
0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0,
|
|
||||||
0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0,
|
|
||||||
0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6,
|
|
||||||
0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0,
|
|
||||||
0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0,
|
|
||||||
0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6,
|
|
||||||
0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0,
|
|
||||||
0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0,
|
|
||||||
0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6,
|
|
||||||
0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0,
|
|
||||||
0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 5, 8, 8, 6, 0, 0,
|
|
||||||
64, 248, 128, 128, 240, 128, 128, 248, 5, 8, 8, 6, 0, 0, 80, 248,
|
|
||||||
128, 128, 240, 128, 128, 248, 5, 7, 7, 6, 0, 0, 224, 64, 64, 112,
|
|
||||||
72, 72, 112, 5, 8, 8, 6, 0, 0, 16, 32, 248, 136, 128, 128, 128,
|
|
||||||
128, 5, 7, 7, 6, 0, 0, 48, 72, 128, 224, 128, 72, 48, 5, 7,
|
|
||||||
7, 6, 0, 0, 112, 136, 128, 112, 8, 136, 112, 3, 7, 7, 6, 1,
|
|
||||||
0, 224, 64, 64, 64, 64, 64, 224, 3, 8, 8, 6, 1, 0, 160, 0,
|
|
||||||
224, 64, 64, 64, 64, 224, 5, 7, 7, 6, 0, 0, 56, 16, 16, 16,
|
|
||||||
16, 144, 96, 5, 7, 7, 6, 0, 0, 160, 160, 160, 184, 168, 168, 184,
|
|
||||||
5, 7, 7, 6, 0, 0, 160, 160, 160, 248, 168, 168, 184, 4, 7, 7,
|
|
||||||
6, 0, 0, 224, 64, 112, 80, 80, 80, 80, 5, 8, 8, 6, 0, 0,
|
|
||||||
16, 32, 136, 144, 160, 224, 144, 136, 5, 8, 8, 6, 0, 0, 64, 32,
|
|
||||||
136, 152, 168, 200, 136, 136, 5, 9, 9, 6, 0, 255, 80, 32, 136, 136,
|
|
||||||
136, 80, 32, 32, 32, 5, 8, 8, 6, 0, 255, 136, 136, 136, 136, 136,
|
|
||||||
136, 248, 32, 5, 7, 7, 6, 0, 0, 112, 136, 136, 248, 136, 136, 136,
|
|
||||||
5, 7, 7, 6, 0, 0, 248, 128, 128, 240, 136, 136, 240, 5, 7, 7,
|
|
||||||
6, 0, 0, 240, 136, 136, 240, 136, 136, 240, 5, 7, 7, 6, 0, 0,
|
|
||||||
248, 136, 128, 128, 128, 128, 128, 5, 8, 8, 6, 0, 255, 120, 40, 40,
|
|
||||||
40, 72, 136, 248, 136, 5, 7, 7, 6, 0, 0, 248, 128, 128, 240, 128,
|
|
||||||
128, 248, 5, 7, 7, 6, 0, 0, 168, 168, 168, 112, 168, 168, 168, 5,
|
|
||||||
7, 7, 6, 0, 0, 240, 8, 8, 112, 8, 8, 240, 5, 7, 7, 6,
|
|
||||||
0, 0, 136, 136, 152, 168, 200, 136, 136, 5, 8, 8, 6, 0, 0, 80,
|
|
||||||
32, 136, 152, 168, 168, 200, 136, 5, 7, 7, 6, 0, 0, 136, 144, 160,
|
|
||||||
192, 160, 144, 136, 5, 7, 7, 6, 0, 0, 120, 40, 40, 40, 40, 168,
|
|
||||||
72, 5, 7, 7, 6, 0, 0, 136, 216, 168, 136, 136, 136, 136, 5, 7,
|
|
||||||
7, 6, 0, 0, 136, 136, 136, 248, 136, 136, 136, 5, 7, 7, 6, 0,
|
|
||||||
0, 112, 136, 136, 136, 136, 136, 112, 5, 7, 7, 6, 0, 0, 248, 136,
|
|
||||||
136, 136, 136, 136, 136, 5, 7, 7, 6, 0, 0, 240, 136, 136, 240, 128,
|
|
||||||
128, 128, 5, 7, 7, 6, 0, 0, 112, 136, 128, 128, 128, 136, 112, 5,
|
|
||||||
7, 7, 6, 0, 0, 248, 32, 32, 32, 32, 32, 32, 5, 7, 7, 6,
|
|
||||||
0, 0, 136, 136, 136, 80, 32, 64, 128, 5, 7, 7, 6, 0, 0, 32,
|
|
||||||
112, 168, 168, 168, 112, 32, 5, 7, 7, 6, 0, 0, 136, 136, 80, 32,
|
|
||||||
80, 136, 136, 5, 8, 8, 6, 0, 255, 136, 136, 136, 136, 136, 136, 248,
|
|
||||||
8, 5, 7, 7, 6, 0, 0, 136, 136, 136, 152, 104, 8, 8, 5, 7,
|
|
||||||
7, 6, 0, 0, 168, 168, 168, 168, 168, 168, 248, 5, 8, 8, 6, 0,
|
|
||||||
255, 168, 168, 168, 168, 168, 168, 248, 8, 5, 7, 7, 6, 0, 0, 192,
|
|
||||||
64, 64, 112, 72, 72, 112, 5, 7, 7, 6, 0, 0, 136, 136, 136, 200,
|
|
||||||
168, 168, 200, 5, 7, 7, 6, 0, 0, 128, 128, 128, 240, 136, 136, 240,
|
|
||||||
5, 7, 7, 6, 0, 0, 112, 136, 8, 56, 8, 136, 112, 5, 7, 7,
|
|
||||||
6, 0, 0, 144, 168, 168, 232, 168, 168, 144, 5, 7, 7, 6, 0, 0,
|
|
||||||
120, 136, 136, 120, 40, 72, 136, 5, 5, 5, 6, 0, 0, 112, 8, 120,
|
|
||||||
136, 120, 5, 7, 7, 6, 0, 0, 24, 96, 128, 240, 136, 136, 112, 4,
|
|
||||||
5, 5, 6, 0, 0, 224, 144, 224, 144, 224, 5, 5, 5, 6, 0, 0,
|
|
||||||
248, 136, 128, 128, 128, 5, 6, 6, 6, 0, 255, 120, 40, 72, 136, 248,
|
|
||||||
136, 5, 5, 5, 6, 0, 0, 112, 136, 248, 128, 112, 5, 5, 5, 6,
|
|
||||||
0, 0, 168, 168, 112, 168, 168, 5, 5, 5, 6, 0, 0, 240, 8, 48,
|
|
||||||
8, 240, 5, 5, 5, 6, 0, 0, 136, 152, 168, 200, 136, 5, 7, 7,
|
|
||||||
6, 0, 0, 80, 32, 136, 152, 168, 200, 136, 4, 5, 5, 6, 0, 0,
|
|
||||||
144, 160, 192, 160, 144, 5, 5, 5, 6, 0, 0, 248, 40, 40, 168, 72,
|
|
||||||
5, 5, 5, 6, 0, 0, 136, 216, 168, 136, 136, 5, 5, 5, 6, 0,
|
|
||||||
0, 136, 136, 248, 136, 136, 5, 5, 5, 6, 0, 0, 112, 136, 136, 136,
|
|
||||||
112, 5, 5, 5, 6, 0, 0, 248, 136, 136, 136, 136, 5, 6, 6, 6,
|
|
||||||
0, 255, 240, 136, 136, 240, 128, 128, 5, 5, 5, 6, 0, 0, 112, 128,
|
|
||||||
128, 136, 112, 5, 5, 5, 6, 0, 0, 248, 32, 32, 32, 32, 5, 6,
|
|
||||||
6, 6, 0, 255, 136, 136, 136, 120, 8, 112, 5, 6, 6, 6, 0, 0,
|
|
||||||
32, 112, 168, 168, 112, 32, 5, 5, 5, 6, 0, 0, 136, 80, 32, 80,
|
|
||||||
136, 5, 6, 6, 6, 0, 255, 136, 136, 136, 136, 248, 8, 5, 5, 5,
|
|
||||||
6, 0, 0, 136, 136, 248, 8, 8, 5, 5, 5, 6, 0, 0, 168, 168,
|
|
||||||
168, 168, 248, 5, 6, 6, 6, 0, 255, 168, 168, 168, 168, 248, 8, 5,
|
|
||||||
5, 5, 6, 0, 0, 192, 64, 112, 72, 112, 5, 5, 5, 6, 0, 0,
|
|
||||||
136, 136, 200, 168, 200, 3, 5, 5, 6, 1, 0, 128, 128, 192, 160, 192,
|
|
||||||
5, 5, 5, 6, 0, 0, 112, 136, 56, 136, 112, 5, 5, 5, 6, 0,
|
|
||||||
0, 144, 168, 232, 168, 144, 5, 5, 5, 6, 0, 0, 120, 136, 120, 40,
|
|
||||||
72, 5, 8, 8, 6, 0, 0, 64, 32, 0, 112, 136, 248, 128, 112, 5,
|
|
||||||
7, 7, 6, 0, 0, 80, 0, 112, 136, 248, 128, 112, 5, 9, 9, 6,
|
|
||||||
0, 255, 64, 224, 64, 64, 120, 72, 72, 72, 16, 5, 8, 8, 6, 0,
|
|
||||||
0, 16, 32, 0, 248, 136, 128, 128, 128, 5, 5, 5, 6, 0, 0, 112,
|
|
||||||
136, 96, 136, 112, 5, 5, 5, 6, 0, 0, 112, 128, 112, 8, 240, 1,
|
|
||||||
7, 7, 6, 2, 0, 128, 0, 128, 128, 128, 128, 128, 3, 7, 7, 6,
|
|
||||||
1, 0, 160, 0, 64, 64, 64, 64, 64, 3, 8, 8, 6, 1, 255, 32,
|
|
||||||
0, 32, 32, 32, 32, 160, 64, 5, 5, 5, 6, 0, 0, 160, 160, 184,
|
|
||||||
168, 184, 5, 5, 5, 6, 0, 0, 160, 160, 248, 168, 184, 5, 6, 6,
|
|
||||||
6, 0, 0, 64, 224, 64, 120, 72, 72, 4, 8, 8, 6, 0, 0, 16,
|
|
||||||
32, 0, 144, 160, 192, 160, 144, 5, 8, 8, 6, 0, 0, 64, 32, 0,
|
|
||||||
136, 152, 168, 200, 136, 5, 9, 9, 6, 0, 255, 80, 32, 0, 136, 136,
|
|
||||||
136, 120, 8, 112, 5, 6, 6, 6, 0, 255, 136, 136, 136, 136, 248, 32
|
|
||||||
};
|
|
||||||
@@ -1,293 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
Fontname: ISO10646_CN
|
|
||||||
Copyright: A. Hardtung, public domain
|
|
||||||
Capital A Height: 7, '1' Height: 7
|
|
||||||
Calculated Max Values w=11 h=11 x= 2 y=10 dx=12 dy= 0 ascent=10 len=22
|
|
||||||
Font Bounding box w=12 h=11 x= 0 y=-2
|
|
||||||
Calculated Min Values x= 0 y=-1 dx= 0 dy= 0
|
|
||||||
Pure Font ascent = 7 descent=-1
|
|
||||||
X Font ascent = 7 descent=-1
|
|
||||||
Max Font ascent =10 descent=-1
|
|
||||||
*/
|
|
||||||
#include <U8glib.h>
|
|
||||||
const u8g_fntpgm_uint8_t ISO10646_CN[4105] U8G_SECTION(".progmem.ISO10646_CN") = {
|
|
||||||
0, 12, 11, 0, 254, 7, 1, 146, 3, 33, 32, 255, 255, 10, 255, 7,
|
|
||||||
255, 0, 0, 0, 6, 0, 10, 1, 7, 7, 6, 2, 0, 128, 128, 128,
|
|
||||||
128, 128, 0, 128, 3, 2, 2, 6, 1, 5, 160, 160, 5, 7, 7, 6,
|
|
||||||
0, 0, 80, 80, 248, 80, 248, 80, 80, 5, 7, 7, 6, 0, 0, 32,
|
|
||||||
120, 160, 112, 40, 240, 32, 5, 7, 7, 6, 0, 0, 192, 200, 16, 32,
|
|
||||||
64, 152, 24, 5, 7, 7, 6, 0, 0, 96, 144, 160, 64, 168, 144, 104,
|
|
||||||
2, 3, 3, 6, 1, 4, 192, 64, 128, 3, 7, 7, 6, 1, 0, 32,
|
|
||||||
64, 128, 128, 128, 64, 32, 3, 7, 7, 6, 1, 0, 128, 64, 32, 32,
|
|
||||||
32, 64, 128, 5, 5, 5, 6, 0, 1, 32, 168, 112, 168, 32, 5, 5,
|
|
||||||
5, 6, 0, 1, 32, 32, 248, 32, 32, 2, 3, 3, 6, 2, 255, 192,
|
|
||||||
64, 128, 5, 1, 1, 6, 0, 3, 248, 2, 2, 2, 6, 2, 0, 192,
|
|
||||||
192, 5, 5, 5, 6, 0, 1, 8, 16, 32, 64, 128, 5, 7, 7, 6,
|
|
||||||
0, 0, 112, 136, 152, 168, 200, 136, 112, 3, 7, 7, 6, 1, 0, 64,
|
|
||||||
192, 64, 64, 64, 64, 224, 5, 7, 7, 6, 0, 0, 112, 136, 8, 112,
|
|
||||||
128, 128, 248, 5, 7, 7, 6, 0, 0, 248, 16, 32, 16, 8, 8, 240,
|
|
||||||
5, 7, 7, 6, 0, 0, 16, 48, 80, 144, 248, 16, 16, 5, 7, 7,
|
|
||||||
6, 0, 0, 248, 128, 240, 8, 8, 136, 112, 5, 7, 7, 6, 0, 0,
|
|
||||||
112, 128, 128, 240, 136, 136, 112, 5, 7, 7, 6, 0, 0, 248, 8, 16,
|
|
||||||
32, 32, 32, 32, 5, 7, 7, 6, 0, 0, 112, 136, 136, 112, 136, 136,
|
|
||||||
112, 5, 7, 7, 6, 0, 0, 112, 136, 136, 120, 8, 8, 112, 2, 5,
|
|
||||||
5, 6, 2, 0, 192, 192, 0, 192, 192, 2, 6, 6, 6, 2, 255, 192,
|
|
||||||
192, 0, 192, 64, 128, 4, 7, 7, 6, 0, 0, 16, 32, 64, 128, 64,
|
|
||||||
32, 16, 5, 3, 3, 6, 0, 2, 248, 0, 248, 4, 7, 7, 6, 0,
|
|
||||||
0, 128, 64, 32, 16, 32, 64, 128, 5, 7, 7, 6, 0, 0, 112, 136,
|
|
||||||
8, 16, 32, 0, 32, 5, 7, 7, 6, 0, 0, 112, 136, 8, 104, 168,
|
|
||||||
168, 112, 5, 7, 7, 6, 0, 0, 112, 136, 136, 248, 136, 136, 136, 5,
|
|
||||||
7, 7, 6, 0, 0, 240, 136, 136, 240, 136, 136, 240, 5, 7, 7, 6,
|
|
||||||
0, 0, 112, 136, 128, 128, 128, 136, 112, 5, 7, 7, 6, 0, 0, 240,
|
|
||||||
136, 136, 136, 136, 136, 240, 5, 7, 7, 6, 0, 0, 248, 128, 128, 240,
|
|
||||||
128, 128, 248, 5, 7, 7, 6, 0, 0, 248, 128, 128, 240, 128, 128, 128,
|
|
||||||
5, 7, 7, 6, 0, 0, 112, 136, 128, 184, 136, 136, 112, 5, 7, 7,
|
|
||||||
6, 0, 0, 136, 136, 136, 248, 136, 136, 136, 1, 7, 7, 6, 2, 0,
|
|
||||||
128, 128, 128, 128, 128, 128, 128, 5, 7, 7, 6, 0, 0, 56, 16, 16,
|
|
||||||
16, 16, 144, 96, 5, 7, 7, 6, 0, 0, 136, 144, 160, 192, 160, 144,
|
|
||||||
136, 5, 7, 7, 6, 0, 0, 128, 128, 128, 128, 128, 128, 248, 5, 7,
|
|
||||||
7, 6, 0, 0, 136, 216, 168, 136, 136, 136, 136, 5, 7, 7, 6, 0,
|
|
||||||
0, 136, 136, 200, 168, 152, 136, 136, 5, 7, 7, 6, 0, 0, 112, 136,
|
|
||||||
136, 136, 136, 136, 112, 5, 7, 7, 6, 0, 0, 240, 136, 136, 240, 128,
|
|
||||||
128, 128, 5, 7, 7, 6, 0, 0, 112, 136, 136, 136, 168, 144, 104, 5,
|
|
||||||
7, 7, 6, 0, 0, 240, 136, 136, 240, 160, 144, 136, 5, 7, 7, 6,
|
|
||||||
0, 0, 120, 128, 128, 112, 8, 8, 240, 5, 7, 7, 6, 0, 0, 248,
|
|
||||||
32, 32, 32, 32, 32, 32, 5, 7, 7, 6, 0, 0, 136, 136, 136, 136,
|
|
||||||
136, 136, 112, 5, 7, 7, 6, 0, 0, 136, 136, 136, 136, 136, 80, 32,
|
|
||||||
5, 7, 7, 6, 0, 0, 136, 136, 136, 136, 136, 168, 80, 5, 7, 7,
|
|
||||||
6, 0, 0, 136, 136, 80, 32, 80, 136, 136, 5, 7, 7, 6, 0, 0,
|
|
||||||
136, 136, 136, 80, 32, 32, 32, 5, 7, 7, 6, 0, 0, 248, 8, 16,
|
|
||||||
32, 64, 128, 248, 3, 7, 7, 6, 0, 0, 224, 128, 128, 128, 128, 128,
|
|
||||||
224, 5, 5, 5, 6, 0, 1, 128, 64, 32, 16, 8, 3, 7, 7, 6,
|
|
||||||
0, 0, 224, 32, 32, 32, 32, 32, 224, 5, 3, 3, 6, 0, 4, 32,
|
|
||||||
80, 136, 5, 1, 1, 6, 0, 0, 248, 2, 2, 2, 6, 2, 5, 128,
|
|
||||||
64, 5, 5, 5, 6, 0, 0, 112, 8, 120, 136, 120, 5, 7, 7, 6,
|
|
||||||
0, 0, 128, 128, 176, 200, 136, 136, 240, 5, 5, 5, 6, 0, 0, 112,
|
|
||||||
128, 128, 136, 112, 5, 7, 7, 6, 0, 0, 8, 8, 104, 152, 136, 136,
|
|
||||||
120, 5, 5, 5, 6, 0, 0, 112, 136, 248, 128, 112, 5, 7, 7, 6,
|
|
||||||
0, 0, 48, 72, 224, 64, 64, 64, 64, 5, 6, 6, 6, 0, 255, 112,
|
|
||||||
136, 136, 120, 8, 112, 5, 7, 7, 6, 0, 0, 128, 128, 176, 200, 136,
|
|
||||||
136, 136, 1, 7, 7, 6, 2, 0, 128, 0, 128, 128, 128, 128, 128, 3,
|
|
||||||
8, 8, 6, 1, 255, 32, 0, 32, 32, 32, 32, 160, 64, 4, 7, 7,
|
|
||||||
6, 1, 0, 128, 128, 144, 160, 192, 160, 144, 3, 7, 7, 6, 1, 0,
|
|
||||||
192, 64, 64, 64, 64, 64, 224, 5, 5, 5, 6, 0, 0, 208, 168, 168,
|
|
||||||
168, 168, 5, 5, 5, 6, 0, 0, 176, 200, 136, 136, 136, 5, 5, 5,
|
|
||||||
6, 0, 0, 112, 136, 136, 136, 112, 5, 6, 6, 6, 0, 255, 240, 136,
|
|
||||||
136, 240, 128, 128, 5, 6, 6, 6, 0, 255, 120, 136, 136, 120, 8, 8,
|
|
||||||
5, 5, 5, 6, 0, 0, 176, 200, 128, 128, 128, 5, 5, 5, 6, 0,
|
|
||||||
0, 112, 128, 112, 8, 240, 4, 7, 7, 6, 0, 0, 64, 64, 224, 64,
|
|
||||||
64, 64, 48, 5, 5, 5, 6, 0, 0, 136, 136, 136, 152, 104, 5, 5,
|
|
||||||
5, 6, 0, 0, 136, 136, 136, 80, 32, 5, 5, 5, 6, 0, 0, 136,
|
|
||||||
136, 168, 168, 80, 5, 5, 5, 6, 0, 0, 136, 80, 32, 80, 136, 5,
|
|
||||||
6, 6, 6, 0, 255, 136, 136, 136, 120, 8, 112, 5, 5, 5, 6, 0,
|
|
||||||
0, 248, 16, 32, 64, 248, 3, 7, 7, 6, 1, 0, 32, 64, 64, 128,
|
|
||||||
64, 64, 32, 1, 7, 7, 6, 2, 0, 128, 128, 128, 128, 128, 128, 128,
|
|
||||||
3, 7, 7, 6, 1, 0, 128, 64, 64, 32, 64, 64, 128, 5, 2, 2,
|
|
||||||
6, 0, 3, 104, 144, 0, 0, 0, 6, 0, 10, 0, 0, 0, 12, 0,
|
|
||||||
10, 0, 0, 0, 12, 0, 10, 0, 0, 0, 12, 0, 10, 0, 0, 0,
|
|
||||||
12, 0, 10, 0, 0, 0, 12, 0, 10, 0, 0, 0, 12, 0, 10, 0,
|
|
||||||
0, 0, 12, 0, 10, 0, 0, 0, 12, 0, 10, 0, 0, 0, 12, 0,
|
|
||||||
10, 0, 0, 0, 12, 0, 10, 0, 0, 0, 12, 0, 10, 0, 0, 0,
|
|
||||||
12, 0, 10, 0, 0, 0, 12, 0, 10, 0, 0, 0, 12, 0, 10, 0,
|
|
||||||
0, 0, 12, 0, 10, 0, 0, 0, 12, 0, 10, 0, 0, 0, 12, 0,
|
|
||||||
10, 0, 0, 0, 12, 0, 10, 0, 0, 0, 12, 0, 10, 0, 0, 0,
|
|
||||||
12, 0, 10, 0, 0, 0, 12, 0, 10, 0, 0, 0, 12, 0, 10, 0,
|
|
||||||
0, 0, 12, 0, 10, 0, 0, 0, 12, 0, 10, 0, 0, 0, 12, 0,
|
|
||||||
10, 0, 0, 0, 12, 0, 10, 0, 0, 0, 12, 0, 10, 0, 0, 0,
|
|
||||||
12, 0, 10, 0, 0, 0, 12, 0, 10, 11, 11, 22, 12, 0, 255, 255,
|
|
||||||
224, 2, 0, 2, 0, 4, 0, 13, 0, 20, 128, 36, 64, 196, 32, 4,
|
|
||||||
0, 4, 0, 4, 0, 11, 11, 22, 12, 0, 255, 249, 0, 138, 0, 171,
|
|
||||||
224, 172, 64, 170, 64, 170, 64, 170, 64, 170, 128, 33, 0, 82, 128, 140,
|
|
||||||
96, 11, 11, 22, 12, 0, 255, 36, 0, 36, 0, 63, 128, 68, 0, 132,
|
|
||||||
0, 4, 0, 255, 224, 10, 0, 17, 0, 32, 128, 192, 96, 11, 11, 22,
|
|
||||||
12, 0, 255, 36, 0, 36, 0, 63, 192, 68, 0, 4, 0, 255, 224, 9,
|
|
||||||
0, 9, 0, 17, 32, 33, 32, 64, 224, 11, 11, 22, 12, 0, 255, 32,
|
|
||||||
0, 61, 224, 81, 32, 145, 32, 17, 32, 255, 32, 17, 32, 41, 32, 37,
|
|
||||||
224, 69, 32, 128, 0, 11, 11, 22, 12, 0, 255, 32, 128, 127, 192, 8,
|
|
||||||
64, 255, 224, 17, 0, 32, 128, 95, 64, 128, 32, 63, 128, 0, 0, 127,
|
|
||||||
192, 11, 11, 22, 12, 0, 255, 34, 64, 71, 224, 148, 128, 228, 128, 47,
|
|
||||||
224, 68, 128, 244, 128, 7, 224, 52, 128, 196, 128, 7, 224, 11, 11, 22,
|
|
||||||
12, 0, 255, 4, 128, 143, 224, 73, 0, 25, 0, 47, 192, 9, 0, 9,
|
|
||||||
0, 47, 192, 73, 0, 137, 0, 15, 224, 11, 11, 22, 12, 0, 255, 16,
|
|
||||||
0, 63, 128, 81, 0, 14, 0, 49, 128, 192, 96, 63, 128, 36, 128, 63,
|
|
||||||
128, 36, 128, 63, 128, 11, 11, 22, 12, 0, 255, 34, 128, 250, 64, 7,
|
|
||||||
224, 250, 128, 138, 128, 138, 128, 250, 128, 34, 128, 178, 128, 170, 160, 100,
|
|
||||||
224, 11, 11, 22, 12, 0, 255, 34, 32, 71, 64, 146, 128, 239, 224, 34,
|
|
||||||
0, 71, 192, 236, 64, 7, 192, 52, 64, 199, 192, 4, 64, 11, 11, 22,
|
|
||||||
12, 0, 255, 8, 0, 15, 192, 8, 0, 8, 0, 255, 224, 8, 0, 14,
|
|
||||||
0, 9, 128, 8, 64, 8, 0, 8, 0, 10, 11, 22, 12, 0, 255, 255,
|
|
||||||
128, 0, 128, 0, 128, 128, 128, 128, 128, 255, 128, 128, 0, 128, 0, 128,
|
|
||||||
64, 128, 64, 127, 192, 11, 11, 22, 12, 0, 255, 71, 192, 65, 0, 239,
|
|
||||||
224, 65, 0, 69, 0, 105, 96, 201, 32, 77, 96, 73, 32, 79, 224, 200,
|
|
||||||
32, 11, 11, 22, 12, 0, 255, 8, 0, 4, 0, 4, 0, 10, 0, 10,
|
|
||||||
0, 10, 0, 17, 0, 17, 0, 32, 128, 64, 64, 128, 32, 11, 11, 22,
|
|
||||||
12, 0, 255, 34, 64, 34, 0, 247, 224, 34, 0, 35, 224, 53, 32, 229,
|
|
||||||
32, 37, 64, 40, 128, 41, 64, 114, 32, 11, 10, 20, 12, 0, 0, 68,
|
|
||||||
64, 68, 64, 68, 64, 127, 192, 4, 0, 4, 0, 132, 32, 132, 32, 132,
|
|
||||||
32, 255, 224, 11, 11, 22, 12, 0, 255, 4, 0, 0, 0, 127, 192, 4,
|
|
||||||
0, 4, 0, 4, 0, 127, 192, 4, 0, 4, 0, 4, 0, 255, 224, 11,
|
|
||||||
11, 22, 12, 0, 255, 255, 224, 17, 0, 1, 192, 254, 0, 72, 128, 37,
|
|
||||||
0, 4, 0, 255, 224, 21, 0, 36, 128, 196, 96, 11, 11, 22, 12, 0,
|
|
||||||
255, 17, 0, 127, 192, 68, 64, 127, 192, 68, 64, 127, 192, 4, 0, 255,
|
|
||||||
224, 4, 0, 4, 0, 4, 0, 9, 11, 22, 12, 0, 255, 16, 0, 255,
|
|
||||||
128, 128, 128, 128, 128, 255, 128, 128, 128, 128, 128, 255, 128, 128, 128, 128,
|
|
||||||
128, 255, 128, 11, 11, 22, 12, 0, 255, 113, 0, 1, 0, 3, 224, 249,
|
|
||||||
32, 33, 32, 65, 32, 81, 32, 137, 32, 250, 32, 2, 32, 4, 192, 11,
|
|
||||||
11, 22, 12, 0, 255, 127, 192, 17, 0, 17, 0, 17, 0, 17, 0, 255,
|
|
||||||
224, 17, 0, 17, 0, 33, 0, 33, 0, 65, 0, 11, 11, 22, 12, 0,
|
|
||||||
255, 33, 0, 34, 0, 244, 64, 87, 224, 80, 32, 87, 192, 148, 64, 84,
|
|
||||||
64, 36, 64, 87, 192, 148, 64, 11, 11, 22, 12, 0, 255, 17, 0, 10,
|
|
||||||
0, 127, 192, 4, 0, 4, 0, 255, 224, 4, 0, 10, 0, 17, 0, 32,
|
|
||||||
128, 192, 96, 10, 11, 22, 12, 0, 255, 95, 192, 0, 64, 132, 64, 132,
|
|
||||||
64, 191, 64, 132, 64, 140, 64, 148, 64, 164, 64, 140, 64, 129, 192, 11,
|
|
||||||
11, 22, 12, 0, 255, 36, 0, 39, 192, 36, 0, 36, 0, 255, 224, 0,
|
|
||||||
0, 20, 64, 36, 128, 71, 0, 12, 0, 112, 0, 11, 11, 22, 12, 0,
|
|
||||||
255, 36, 128, 4, 128, 15, 192, 228, 128, 36, 128, 63, 224, 36, 128, 36,
|
|
||||||
128, 40, 128, 80, 0, 143, 224, 11, 11, 22, 12, 0, 255, 8, 0, 8,
|
|
||||||
0, 255, 128, 136, 128, 136, 128, 255, 128, 136, 128, 136, 128, 255, 160, 136,
|
|
||||||
32, 7, 224, 11, 11, 22, 12, 0, 255, 39, 128, 36, 128, 244, 128, 36,
|
|
||||||
128, 116, 128, 108, 128, 164, 128, 36, 128, 36, 160, 40, 160, 48, 96, 10,
|
|
||||||
11, 22, 12, 0, 255, 255, 192, 128, 64, 128, 64, 158, 64, 146, 64, 146,
|
|
||||||
64, 158, 64, 128, 64, 128, 64, 255, 192, 128, 64, 11, 11, 22, 12, 0,
|
|
||||||
255, 127, 192, 68, 0, 95, 192, 80, 64, 95, 192, 80, 64, 95, 192, 66,
|
|
||||||
0, 74, 128, 82, 64, 166, 32, 11, 11, 22, 12, 0, 255, 4, 0, 7,
|
|
||||||
224, 4, 0, 127, 192, 64, 64, 64, 64, 64, 64, 127, 192, 0, 0, 82,
|
|
||||||
64, 137, 32, 11, 11, 22, 12, 0, 255, 71, 128, 36, 128, 4, 128, 4,
|
|
||||||
128, 232, 96, 32, 0, 47, 192, 36, 64, 34, 128, 49, 0, 38, 192, 11,
|
|
||||||
11, 22, 12, 0, 255, 127, 192, 74, 64, 127, 192, 4, 0, 255, 224, 4,
|
|
||||||
0, 63, 128, 32, 128, 36, 128, 36, 128, 255, 224, 11, 11, 22, 12, 0,
|
|
||||||
255, 34, 0, 79, 224, 72, 32, 79, 224, 200, 0, 79, 224, 74, 160, 90,
|
|
||||||
160, 111, 224, 74, 160, 72, 96, 11, 11, 22, 12, 0, 255, 243, 192, 36,
|
|
||||||
64, 42, 128, 241, 0, 34, 128, 101, 224, 114, 32, 165, 64, 32, 128, 35,
|
|
||||||
0, 44, 0, 11, 11, 22, 12, 0, 255, 4, 0, 255, 224, 128, 32, 0,
|
|
||||||
0, 255, 224, 4, 0, 36, 0, 39, 192, 36, 0, 84, 0, 143, 224, 11,
|
|
||||||
11, 22, 12, 0, 255, 115, 224, 16, 128, 81, 0, 35, 224, 250, 32, 42,
|
|
||||||
160, 34, 160, 34, 160, 32, 128, 33, 64, 98, 32, 11, 11, 22, 12, 0,
|
|
||||||
255, 34, 0, 247, 128, 34, 128, 54, 128, 226, 160, 37, 160, 36, 96, 104,
|
|
||||||
32, 0, 0, 82, 64, 137, 32, 11, 11, 22, 12, 0, 255, 115, 192, 66,
|
|
||||||
0, 66, 0, 123, 224, 74, 64, 74, 64, 122, 64, 74, 64, 66, 64, 68,
|
|
||||||
64, 136, 64, 11, 11, 22, 12, 0, 255, 8, 0, 255, 224, 8, 0, 31,
|
|
||||||
192, 48, 64, 95, 192, 144, 64, 31, 192, 16, 64, 16, 64, 16, 192, 11,
|
|
||||||
11, 22, 12, 0, 255, 2, 0, 127, 224, 66, 0, 66, 0, 95, 192, 66,
|
|
||||||
0, 71, 0, 74, 128, 82, 64, 98, 32, 130, 0, 11, 11, 22, 12, 0,
|
|
||||||
255, 243, 192, 150, 64, 145, 128, 166, 96, 161, 0, 151, 192, 145, 0, 149,
|
|
||||||
0, 231, 224, 129, 0, 129, 0, 11, 11, 22, 12, 0, 255, 15, 128, 136,
|
|
||||||
128, 79, 128, 8, 128, 143, 128, 64, 0, 31, 192, 53, 64, 85, 64, 149,
|
|
||||||
64, 63, 224, 11, 11, 22, 12, 0, 255, 39, 224, 32, 128, 248, 128, 32,
|
|
||||||
128, 32, 128, 56, 128, 224, 128, 32, 128, 32, 128, 32, 128, 97, 128, 11,
|
|
||||||
11, 22, 12, 0, 255, 31, 224, 145, 0, 87, 192, 20, 64, 23, 192, 148,
|
|
||||||
64, 87, 192, 17, 0, 85, 64, 153, 32, 35, 0, 11, 11, 22, 12, 0,
|
|
||||||
255, 32, 128, 39, 224, 242, 64, 33, 128, 34, 64, 52, 32, 226, 64, 34,
|
|
||||||
64, 34, 64, 34, 64, 100, 64, 11, 11, 22, 12, 0, 255, 65, 0, 65,
|
|
||||||
0, 79, 224, 233, 32, 73, 32, 73, 32, 111, 224, 201, 32, 73, 32, 73,
|
|
||||||
32, 207, 224, 11, 11, 22, 12, 0, 255, 33, 0, 241, 0, 79, 224, 169,
|
|
||||||
32, 249, 32, 47, 224, 57, 32, 233, 32, 41, 32, 47, 224, 40, 32, 11,
|
|
||||||
11, 22, 12, 0, 255, 143, 224, 73, 32, 9, 32, 203, 160, 73, 32, 79,
|
|
||||||
224, 72, 32, 75, 160, 74, 160, 107, 160, 80, 224, 11, 11, 22, 12, 0,
|
|
||||||
255, 127, 192, 4, 0, 68, 64, 36, 64, 36, 128, 4, 0, 255, 224, 4,
|
|
||||||
0, 4, 0, 4, 0, 4, 0, 11, 11, 22, 12, 0, 255, 130, 0, 66,
|
|
||||||
0, 31, 224, 194, 0, 95, 192, 82, 64, 95, 192, 71, 0, 74, 128, 82,
|
|
||||||
64, 191, 224, 11, 11, 22, 12, 0, 255, 4, 0, 127, 224, 72, 128, 127,
|
|
||||||
224, 72, 128, 79, 128, 64, 0, 95, 192, 72, 64, 71, 128, 152, 96, 11,
|
|
||||||
11, 22, 12, 0, 255, 1, 0, 239, 224, 161, 0, 164, 64, 175, 224, 164,
|
|
||||||
64, 175, 224, 169, 32, 233, 32, 2, 128, 12, 96, 11, 11, 22, 12, 0,
|
|
||||||
255, 20, 192, 246, 160, 188, 96, 167, 128, 168, 128, 191, 224, 169, 32, 239,
|
|
||||||
224, 9, 32, 15, 224, 9, 32, 11, 11, 22, 12, 0, 255, 127, 128, 64,
|
|
||||||
128, 66, 128, 98, 128, 84, 128, 72, 128, 72, 128, 84, 160, 98, 160, 64,
|
|
||||||
96, 128, 32, 11, 11, 22, 12, 0, 255, 4, 0, 127, 224, 64, 32, 127,
|
|
||||||
224, 64, 0, 125, 224, 84, 32, 76, 160, 84, 96, 100, 160, 141, 96, 11,
|
|
||||||
11, 22, 12, 0, 255, 130, 0, 95, 224, 4, 0, 8, 64, 159, 224, 64,
|
|
||||||
32, 10, 128, 10, 128, 74, 160, 146, 160, 34, 96, 11, 11, 22, 12, 0,
|
|
||||||
255, 65, 0, 79, 224, 232, 32, 66, 128, 68, 64, 104, 32, 199, 192, 65,
|
|
||||||
0, 65, 0, 65, 0, 207, 224, 11, 11, 22, 12, 0, 255, 80, 32, 125,
|
|
||||||
32, 145, 32, 255, 32, 17, 32, 125, 32, 85, 32, 85, 32, 84, 32, 92,
|
|
||||||
32, 16, 224, 11, 11, 22, 12, 0, 255, 63, 128, 32, 128, 63, 128, 32,
|
|
||||||
128, 255, 224, 72, 0, 123, 192, 73, 64, 121, 64, 72, 128, 251, 96, 11,
|
|
||||||
11, 22, 12, 0, 255, 4, 0, 4, 0, 4, 0, 36, 128, 36, 64, 68,
|
|
||||||
64, 68, 32, 132, 32, 4, 0, 4, 0, 28, 0, 11, 11, 22, 12, 0,
|
|
||||||
255, 4, 0, 4, 0, 4, 0, 255, 224, 4, 0, 10, 0, 10, 0, 17,
|
|
||||||
0, 17, 0, 32, 128, 192, 96, 9, 10, 20, 10, 0, 0, 136, 128, 73,
|
|
||||||
0, 8, 0, 255, 128, 0, 128, 0, 128, 127, 128, 0, 128, 0, 128, 255,
|
|
||||||
128, 11, 11, 22, 12, 0, 255, 33, 0, 18, 0, 255, 224, 0, 0, 120,
|
|
||||||
128, 74, 128, 122, 128, 74, 128, 122, 128, 72, 128, 89, 128, 11, 11, 22,
|
|
||||||
12, 0, 255, 39, 192, 0, 0, 0, 0, 239, 224, 33, 0, 34, 0, 36,
|
|
||||||
64, 47, 224, 32, 32, 80, 0, 143, 224, 11, 11, 22, 12, 0, 255, 32,
|
|
||||||
128, 39, 0, 249, 0, 33, 192, 119, 0, 33, 0, 249, 224, 39, 0, 113,
|
|
||||||
32, 169, 32, 32, 224, 11, 11, 22, 12, 0, 255, 16, 64, 16, 64, 253,
|
|
||||||
224, 16, 64, 56, 192, 53, 64, 82, 64, 148, 64, 16, 64, 16, 64, 16,
|
|
||||||
192, 11, 11, 22, 12, 0, 255, 0, 64, 248, 64, 11, 224, 8, 64, 136,
|
|
||||||
64, 82, 64, 81, 64, 33, 64, 80, 64, 72, 64, 137, 192, 10, 11, 22,
|
|
||||||
12, 0, 255, 132, 0, 132, 64, 132, 128, 245, 0, 134, 0, 132, 0, 132,
|
|
||||||
0, 148, 0, 164, 64, 196, 64, 131, 192, 11, 11, 22, 12, 0, 255, 17,
|
|
||||||
32, 125, 0, 17, 0, 255, 224, 41, 0, 253, 64, 73, 64, 124, 128, 8,
|
|
||||||
160, 253, 96, 10, 32, 11, 11, 22, 12, 0, 255, 23, 192, 36, 64, 36,
|
|
||||||
64, 103, 192, 161, 0, 47, 224, 33, 0, 35, 128, 37, 64, 41, 32, 33,
|
|
||||||
0, 11, 11, 22, 12, 0, 255, 8, 0, 255, 224, 16, 0, 39, 192, 32,
|
|
||||||
128, 97, 0, 175, 224, 33, 0, 33, 0, 33, 0, 35, 0, 11, 11, 22,
|
|
||||||
12, 0, 255, 36, 0, 47, 224, 180, 0, 164, 128, 164, 160, 170, 192, 42,
|
|
||||||
128, 40, 128, 41, 64, 50, 64, 36, 32, 11, 11, 22, 12, 0, 255, 127,
|
|
||||||
224, 128, 0, 63, 192, 32, 64, 63, 192, 16, 0, 31, 192, 16, 64, 40,
|
|
||||||
128, 71, 0, 56, 224, 11, 11, 22, 12, 0, 255, 127, 224, 64, 0, 64,
|
|
||||||
0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 128,
|
|
||||||
0, 11, 11, 22, 12, 0, 255, 255, 224, 4, 0, 127, 192, 68, 64, 127,
|
|
||||||
192, 68, 64, 127, 192, 68, 0, 36, 0, 24, 0, 231, 224, 11, 11, 22,
|
|
||||||
12, 0, 255, 17, 224, 253, 0, 69, 0, 41, 224, 253, 64, 17, 64, 125,
|
|
||||||
64, 17, 64, 85, 64, 146, 64, 52, 64, 11, 11, 22, 12, 0, 255, 33,
|
|
||||||
0, 95, 224, 64, 0, 207, 192, 64, 0, 79, 192, 64, 0, 79, 192, 72,
|
|
||||||
64, 79, 192, 72, 64, 11, 11, 22, 12, 0, 255, 4, 0, 127, 192, 64,
|
|
||||||
64, 127, 192, 64, 64, 127, 192, 64, 64, 127, 192, 4, 64, 82, 32, 191,
|
|
||||||
160, 11, 11, 22, 12, 0, 255, 127, 192, 68, 64, 127, 192, 68, 64, 127,
|
|
||||||
192, 4, 0, 27, 0, 224, 224, 17, 0, 17, 0, 97, 0, 11, 11, 22,
|
|
||||||
12, 0, 255, 255, 224, 4, 0, 8, 0, 127, 224, 73, 32, 79, 32, 73,
|
|
||||||
32, 79, 32, 73, 32, 73, 32, 127, 224, 11, 11, 22, 12, 0, 255, 253,
|
|
||||||
224, 86, 64, 121, 64, 56, 128, 85, 64, 146, 32, 255, 224, 4, 0, 39,
|
|
||||||
192, 36, 0, 255, 224, 11, 11, 22, 12, 0, 255, 251, 128, 82, 0, 123,
|
|
||||||
224, 18, 64, 250, 64, 20, 64, 63, 128, 32, 128, 63, 128, 32, 128, 63,
|
|
||||||
128, 11, 11, 22, 12, 0, 255, 31, 224, 32, 0, 39, 192, 100, 64, 167,
|
|
||||||
192, 32, 0, 47, 224, 40, 32, 39, 192, 33, 0, 35, 0, 11, 11, 22,
|
|
||||||
12, 0, 255, 243, 224, 130, 32, 130, 32, 250, 32, 130, 32, 130, 32, 138,
|
|
||||||
32, 178, 32, 194, 224, 2, 0, 2, 0, 11, 11, 22, 12, 0, 255, 36,
|
|
||||||
128, 70, 160, 149, 192, 228, 128, 39, 224, 68, 128, 245, 192, 6, 160, 52,
|
|
||||||
128, 196, 128, 7, 224, 11, 11, 22, 12, 0, 255, 39, 192, 65, 0, 135,
|
|
||||||
224, 224, 32, 34, 128, 69, 128, 242, 128, 15, 224, 48, 128, 193, 64, 2,
|
|
||||||
32, 11, 11, 22, 12, 0, 255, 2, 0, 2, 0, 34, 0, 35, 192, 34,
|
|
||||||
0, 34, 0, 34, 0, 34, 0, 34, 0, 34, 0, 255, 224, 9, 11, 22,
|
|
||||||
12, 0, 255, 8, 0, 8, 0, 255, 128, 136, 128, 136, 128, 136, 128, 255,
|
|
||||||
128, 136, 128, 136, 128, 136, 128, 255, 128, 11, 11, 22, 12, 0, 255, 33,
|
|
||||||
0, 83, 160, 65, 0, 247, 224, 81, 0, 83, 192, 86, 64, 83, 192, 90,
|
|
||||||
64, 83, 192, 66, 64, 11, 11, 22, 12, 0, 255, 127, 192, 4, 0, 4,
|
|
||||||
0, 4, 0, 255, 224, 10, 0, 10, 0, 18, 0, 34, 32, 66, 32, 129,
|
|
||||||
224, 11, 11, 22, 12, 0, 255, 17, 0, 33, 0, 47, 224, 97, 0, 163,
|
|
||||||
128, 35, 128, 37, 64, 37, 64, 41, 32, 33, 0, 33, 0, 11, 11, 22,
|
|
||||||
12, 0, 255, 247, 224, 148, 32, 244, 32, 151, 224, 148, 128, 244, 128, 151,
|
|
||||||
224, 148, 128, 244, 160, 150, 96, 4, 32, 11, 11, 22, 12, 0, 255, 123,
|
|
||||||
224, 148, 128, 4, 0, 127, 192, 4, 0, 255, 224, 1, 0, 255, 224, 33,
|
|
||||||
0, 17, 0, 7, 0, 11, 11, 22, 12, 0, 255, 33, 0, 71, 192, 145,
|
|
||||||
0, 47, 224, 96, 128, 175, 224, 32, 128, 36, 128, 34, 128, 32, 128, 35,
|
|
||||||
128, 11, 11, 22, 12, 0, 255, 39, 192, 36, 64, 247, 192, 46, 224, 42,
|
|
||||||
160, 62, 224, 225, 0, 47, 224, 35, 128, 37, 64, 105, 32, 11, 11, 22,
|
|
||||||
12, 0, 255, 20, 0, 39, 224, 42, 0, 98, 0, 163, 192, 34, 0, 34,
|
|
||||||
0, 35, 224, 34, 0, 34, 0, 34, 0
|
|
||||||
};
|
|
||||||
@@ -1,192 +0,0 @@
|
|||||||
/*
|
|
||||||
Fontname: ISO10646_CZ
|
|
||||||
Copyright: A. Hardtung, public domain
|
|
||||||
Modified for Czech accents by Petr Zahradnik, http://www.zahradniksebavi.cz
|
|
||||||
Capital A Height: 7, '1' Height: 7
|
|
||||||
Calculated Max Values w= 6 h= 9 x= 2 y= 7 dx= 6 dy= 0 ascent= 8 len= 9
|
|
||||||
Font Bounding box w= 6 h= 9 x= 0 y=-2
|
|
||||||
Calculated Min Values x= 0 y=-1 dx= 0 dy= 0
|
|
||||||
Pure Font ascent = 7 descent=-1
|
|
||||||
X Font ascent = 7 descent=-1
|
|
||||||
Max Font ascent = 8 descent=-1
|
|
||||||
*/
|
|
||||||
#include <U8glib.h>
|
|
||||||
const u8g_fntpgm_uint8_t ISO10646_CZ[2832] U8G_SECTION(".progmem.ISO10646_CZ") = {
|
|
||||||
0,6,9,0,254,7,1,146,3,33,32,255,255,8,255,7,
|
|
||||||
255,0,0,0,6,0,0,1,7,7,6,2,0,128,128,128,
|
|
||||||
128,128,0,128,3,2,2,6,1,5,160,160,5,7,7,6,
|
|
||||||
0,0,80,80,248,80,248,80,80,5,7,7,6,0,0,32,
|
|
||||||
120,160,112,40,240,32,5,7,7,6,0,0,192,200,16,32,
|
|
||||||
64,152,24,5,7,7,6,0,0,96,144,160,64,168,144,104,
|
|
||||||
2,3,3,6,1,4,192,64,128,3,7,7,6,1,0,32,
|
|
||||||
64,128,128,128,64,32,3,7,7,6,1,0,128,64,32,32,
|
|
||||||
32,64,128,5,5,5,6,0,1,32,168,112,168,32,5,5,
|
|
||||||
5,6,0,1,32,32,248,32,32,2,3,3,6,2,255,192,
|
|
||||||
64,128,5,1,1,6,0,3,248,2,2,2,6,2,0,192,
|
|
||||||
192,5,5,5,6,0,1,8,16,32,64,128,5,7,7,6,
|
|
||||||
0,0,112,136,136,136,136,136,112,3,7,7,6,1,0,64,
|
|
||||||
192,64,64,64,64,224,5,7,7,6,0,0,112,136,8,112,
|
|
||||||
128,128,248,5,7,7,6,0,0,248,16,32,16,8,8,240,
|
|
||||||
5,7,7,6,0,0,16,48,80,144,248,16,16,5,7,7,
|
|
||||||
6,0,0,248,128,240,8,8,136,112,5,7,7,6,0,0,
|
|
||||||
112,128,128,240,136,136,112,5,7,7,6,0,0,248,8,16,
|
|
||||||
32,32,32,32,5,7,7,6,0,0,112,136,136,112,136,136,
|
|
||||||
112,5,7,7,6,0,0,112,136,136,120,8,8,112,2,5,
|
|
||||||
5,6,2,0,192,192,0,192,192,2,6,6,6,2,255,192,
|
|
||||||
192,0,192,64,128,4,7,7,6,0,0,16,32,64,128,64,
|
|
||||||
32,16,5,3,3,6,0,2,248,0,248,4,7,7,6,1,
|
|
||||||
0,128,64,32,16,32,64,128,5,7,7,6,0,0,112,136,
|
|
||||||
8,16,32,0,32,5,7,7,6,0,0,112,136,8,104,168,
|
|
||||||
168,112,5,7,7,6,0,0,112,136,136,248,136,136,136,5,
|
|
||||||
7,7,6,0,0,240,136,136,240,136,136,240,5,7,7,6,
|
|
||||||
0,0,112,136,128,128,128,136,112,5,7,7,6,0,0,240,
|
|
||||||
136,136,136,136,136,240,5,7,7,6,0,0,248,128,128,240,
|
|
||||||
128,128,248,5,7,7,6,0,0,248,128,128,240,128,128,128,
|
|
||||||
5,7,7,6,0,0,112,136,128,184,136,136,112,5,7,7,
|
|
||||||
6,0,0,136,136,136,248,136,136,136,1,7,7,6,2,0,
|
|
||||||
128,128,128,128,128,128,128,5,7,7,6,0,0,56,16,16,
|
|
||||||
16,16,144,96,5,7,7,6,0,0,136,144,160,192,160,144,
|
|
||||||
136,5,7,7,6,0,0,128,128,128,128,128,128,248,5,7,
|
|
||||||
7,6,0,0,136,216,168,136,136,136,136,5,7,7,6,0,
|
|
||||||
0,136,136,200,168,152,136,136,5,7,7,6,0,0,112,136,
|
|
||||||
136,136,136,136,112,5,7,7,6,0,0,240,136,136,240,128,
|
|
||||||
128,128,5,7,7,6,0,0,112,136,136,136,168,144,104,5,
|
|
||||||
7,7,6,0,0,240,136,136,240,160,144,136,5,7,7,6,
|
|
||||||
0,0,120,128,128,112,8,8,240,5,7,7,6,0,0,248,
|
|
||||||
32,32,32,32,32,32,5,7,7,6,0,0,136,136,136,136,
|
|
||||||
136,136,112,5,7,7,6,0,0,136,136,136,136,136,80,32,
|
|
||||||
5,7,7,6,0,0,136,136,136,136,136,168,80,5,7,7,
|
|
||||||
6,0,0,136,136,80,32,80,136,136,5,7,7,6,0,0,
|
|
||||||
136,136,136,80,32,32,32,5,7,7,6,0,0,248,8,16,
|
|
||||||
32,64,128,248,3,7,7,6,1,0,224,128,128,128,128,128,
|
|
||||||
224,5,5,5,6,0,1,128,64,32,16,8,3,7,7,6,
|
|
||||||
1,0,224,32,32,32,32,32,224,5,3,3,6,0,4,32,
|
|
||||||
80,136,5,1,1,6,0,0,248,2,2,2,6,2,5,128,
|
|
||||||
64,5,5,5,6,0,0,112,8,120,136,120,5,7,7,6,
|
|
||||||
0,0,128,128,176,200,136,136,240,5,5,5,6,0,0,112,
|
|
||||||
128,128,136,112,5,7,7,6,0,0,8,8,104,152,136,136,
|
|
||||||
120,5,5,5,6,0,0,112,136,248,128,112,5,7,7,6,
|
|
||||||
0,0,48,72,224,64,64,64,64,5,6,6,6,0,255,112,
|
|
||||||
136,136,120,8,112,5,7,7,6,0,0,128,128,176,200,136,
|
|
||||||
136,136,1,7,7,6,2,0,128,0,128,128,128,128,128,3,
|
|
||||||
8,8,6,1,255,32,0,32,32,32,32,160,64,4,7,7,
|
|
||||||
6,0,0,128,128,144,160,192,160,144,3,7,7,6,1,0,
|
|
||||||
192,64,64,64,64,64,224,5,5,5,6,0,0,208,168,168,
|
|
||||||
168,168,5,5,5,6,0,0,176,200,136,136,136,5,5,5,
|
|
||||||
6,0,0,112,136,136,136,112,5,6,6,6,0,255,240,136,
|
|
||||||
136,240,128,128,5,6,6,6,0,255,120,136,136,120,8,8,
|
|
||||||
5,5,5,6,0,0,176,200,128,128,128,5,5,5,6,0,
|
|
||||||
0,112,128,112,8,240,4,7,7,6,0,0,64,64,224,64,
|
|
||||||
64,64,48,5,5,5,6,0,0,136,136,136,152,104,5,5,
|
|
||||||
5,6,0,0,136,136,136,80,32,5,5,5,6,0,0,136,
|
|
||||||
136,168,168,80,5,5,5,6,0,0,136,80,32,80,136,5,
|
|
||||||
6,6,6,0,255,136,136,136,120,8,112,5,5,5,6,0,
|
|
||||||
0,248,16,32,64,248,3,7,7,6,1,0,32,64,64,128,
|
|
||||||
64,64,32,1,7,7,6,2,0,128,128,128,128,128,128,128,
|
|
||||||
3,7,7,6,1,0,128,64,64,32,64,64,128,5,2,2,
|
|
||||||
6,0,2,104,144,0,0,0,6,0,0,5,8,8,6,0,
|
|
||||||
0,16,32,112,136,136,248,136,136,5,8,8,6,0,0,8,
|
|
||||||
16,248,128,128,240,128,248,3,8,8,6,1,0,32,64,224,
|
|
||||||
64,64,64,64,224,5,8,8,6,0,0,16,32,112,136,136,
|
|
||||||
136,136,112,5,8,8,6,0,0,16,32,136,136,136,136,136,
|
|
||||||
112,5,8,8,6,0,0,16,32,136,136,80,32,32,32,5,
|
|
||||||
8,8,6,0,0,16,32,0,112,8,120,136,120,5,8,8,
|
|
||||||
6,0,0,16,32,0,112,136,248,128,112,2,8,8,6,2,
|
|
||||||
0,64,128,0,128,128,128,128,128,5,8,8,6,0,0,16,
|
|
||||||
32,0,112,136,136,136,112,5,8,8,6,0,0,16,32,0,
|
|
||||||
136,136,136,152,104,5,9,9,6,0,255,16,32,0,136,136,
|
|
||||||
136,120,8,112,5,8,8,6,0,0,80,32,112,136,128,128,
|
|
||||||
136,112,5,8,8,6,0,0,80,32,0,112,128,128,136,112,
|
|
||||||
5,8,8,6,0,0,80,32,240,136,136,136,136,240,6,8,
|
|
||||||
8,6,0,0,4,20,24,112,144,144,144,112,5,8,8,6,
|
|
||||||
0,0,80,32,248,128,128,240,128,248,5,8,8,6,0,0,
|
|
||||||
80,32,0,112,136,248,128,112,5,8,8,6,0,0,80,32,
|
|
||||||
136,200,168,152,136,136,5,8,8,6,0,0,80,32,0,176,
|
|
||||||
200,136,136,136,5,8,8,6,0,0,80,32,240,136,240,160,
|
|
||||||
144,136,5,8,8,6,0,0,80,32,0,176,200,128,128,128,
|
|
||||||
5,8,8,6,0,0,80,32,120,128,128,112,8,240,5,8,
|
|
||||||
8,6,0,0,80,32,0,112,128,112,8,240,5,8,8,6,
|
|
||||||
0,0,80,32,248,32,32,32,32,32,6,8,8,6,0,0,
|
|
||||||
4,68,72,224,64,64,64,48,5,8,8,6,0,0,32,80,
|
|
||||||
168,136,136,136,136,112,5,8,8,6,0,0,32,80,32,136,
|
|
||||||
136,136,152,104,5,8,8,6,0,0,80,32,248,8,48,64,
|
|
||||||
128,248,5,8,8,6,0,0,80,32,0,248,16,32,64,248,
|
|
||||||
0,0,0,6,0,0,0,0,0,6,0,0,0,0,0,6,
|
|
||||||
0,0,1,7,7,6,2,0,128,0,128,128,128,128,128,5,
|
|
||||||
7,7,6,0,0,32,112,168,160,168,112,32,5,7,7,6,
|
|
||||||
0,0,48,64,64,224,64,80,168,5,5,5,6,0,0,136,
|
|
||||||
112,80,112,136,5,7,7,6,0,0,136,80,32,248,32,248,
|
|
||||||
32,1,7,7,6,2,0,128,128,128,0,128,128,128,5,8,
|
|
||||||
8,6,0,0,48,72,32,80,80,32,144,96,3,1,1,6,
|
|
||||||
1,7,160,5,7,7,6,0,0,248,136,184,184,184,136,248,
|
|
||||||
5,7,7,6,0,1,112,8,120,136,120,0,248,5,5,5,
|
|
||||||
6,0,1,40,80,160,80,40,5,3,3,6,0,1,248,8,
|
|
||||||
8,2,2,2,6,2,6,64,128,5,7,7,6,0,0,248,
|
|
||||||
136,168,136,152,168,248,5,1,1,6,0,6,248,4,4,4,
|
|
||||||
6,0,3,96,144,144,96,5,7,7,6,0,0,32,32,248,
|
|
||||||
32,32,0,248,4,5,5,6,0,3,96,144,32,64,240,3,
|
|
||||||
5,5,6,0,3,224,32,224,32,224,2,2,2,6,2,6,
|
|
||||||
64,128,5,8,8,6,0,255,136,136,136,136,152,232,128,128,
|
|
||||||
5,7,7,6,0,0,120,152,152,120,24,24,24,2,2,2,
|
|
||||||
6,2,2,192,192,2,2,2,6,2,255,64,128,3,5,5,
|
|
||||||
6,0,3,64,192,64,64,224,5,7,7,6,0,1,112,136,
|
|
||||||
136,136,112,0,248,5,5,5,6,0,1,160,80,40,80,160,
|
|
||||||
5,7,7,6,0,0,136,144,168,88,184,8,8,5,7,7,
|
|
||||||
6,0,0,136,144,184,72,152,32,56,5,8,8,6,0,0,
|
|
||||||
192,64,192,72,216,56,8,8,5,7,7,6,0,0,32,0,
|
|
||||||
32,64,128,136,112,5,8,8,6,0,0,64,32,0,112,136,
|
|
||||||
248,136,136,5,8,8,6,0,0,16,32,0,112,136,248,136,
|
|
||||||
136,5,8,8,6,0,0,32,80,0,112,136,248,136,136,5,
|
|
||||||
8,8,6,0,0,104,144,0,112,136,248,136,136,5,8,8,
|
|
||||||
6,0,0,80,0,112,136,136,248,136,136,5,8,8,6,0,
|
|
||||||
0,32,80,32,112,136,248,136,136,5,7,7,6,0,0,56,
|
|
||||||
96,160,184,224,160,184,5,8,8,6,0,255,112,136,128,128,
|
|
||||||
136,112,32,96,5,8,8,6,0,0,64,32,0,248,128,240,
|
|
||||||
128,248,5,8,8,6,0,0,8,16,0,248,128,240,128,248,
|
|
||||||
5,8,8,6,0,0,32,80,0,248,128,240,128,248,5,7,
|
|
||||||
7,6,0,0,80,0,248,128,240,128,248,3,8,8,6,1,
|
|
||||||
0,128,64,0,224,64,64,64,224,3,8,8,6,1,0,32,
|
|
||||||
64,0,224,64,64,64,224,3,8,8,6,1,0,64,160,0,
|
|
||||||
224,64,64,64,224,3,7,7,6,1,0,160,0,224,64,64,
|
|
||||||
64,224,5,9,9,6,0,255,80,32,112,136,128,184,136,136,
|
|
||||||
112,5,8,8,6,0,0,104,144,0,136,200,168,152,136,5,
|
|
||||||
8,8,6,0,0,64,32,112,136,136,136,136,112,5,8,8,
|
|
||||||
6,0,0,16,32,112,136,136,136,136,112,5,8,8,6,0,
|
|
||||||
0,32,80,0,112,136,136,136,112,5,8,8,6,0,0,104,
|
|
||||||
144,0,112,136,136,136,112,5,8,8,6,0,0,80,0,112,
|
|
||||||
136,136,136,136,112,5,5,5,6,0,1,136,80,32,80,136,
|
|
||||||
5,8,8,6,0,255,16,112,168,168,168,168,112,64,5,8,
|
|
||||||
8,6,0,0,64,32,136,136,136,136,136,112,5,8,8,6,
|
|
||||||
0,0,16,32,136,136,136,136,136,112,5,8,8,6,0,0,
|
|
||||||
32,80,0,136,136,136,136,112,5,8,8,6,0,0,80,0,
|
|
||||||
136,136,136,136,136,112,1,7,7,6,2,0,128,0,128,128,
|
|
||||||
128,128,128,5,9,9,6,0,255,120,128,128,112,8,8,240,
|
|
||||||
32,96,4,8,8,6,1,255,96,144,144,160,144,144,224,128,
|
|
||||||
5,8,8,6,0,0,64,32,0,112,8,120,136,120,5,8,
|
|
||||||
8,6,0,0,16,32,0,112,8,120,136,120,5,8,8,6,
|
|
||||||
0,0,32,80,0,112,8,120,136,120,5,8,8,6,0,0,
|
|
||||||
104,144,0,112,8,120,136,120,5,7,7,6,0,0,80,0,
|
|
||||||
112,8,120,136,120,5,8,8,6,0,0,32,80,32,112,8,
|
|
||||||
120,136,120,5,6,6,6,0,0,208,40,120,160,168,80,5,
|
|
||||||
7,7,6,0,255,112,128,128,136,112,32,96,5,8,8,6,
|
|
||||||
0,0,64,32,0,112,136,248,128,112,5,8,8,6,0,0,
|
|
||||||
16,32,0,112,136,248,128,112,5,8,8,6,0,0,32,80,
|
|
||||||
0,112,136,248,128,112,5,7,7,6,0,0,80,0,112,136,
|
|
||||||
248,128,112,3,8,8,6,1,0,128,64,0,64,192,64,64,
|
|
||||||
224,3,8,8,6,1,0,32,64,0,64,192,64,64,224,3,
|
|
||||||
8,8,6,1,0,64,160,0,64,192,64,64,224,3,7,7,
|
|
||||||
6,1,0,160,0,64,192,64,64,224,5,8,8,6,0,255,
|
|
||||||
80,32,112,136,136,120,8,112,5,8,8,6,0,0,104,144,
|
|
||||||
0,176,200,136,136,136,5,8,8,6,0,0,64,32,0,112,
|
|
||||||
136,136,136,112,5,8,8,6,0,0,16,32,0,112,136,136,
|
|
||||||
136,112,5,8,8,6,0,0,32,80,0,112,136,136,136,112,
|
|
||||||
5,8,8,6,0,0,104,144,0,112,136,136,136,112,5,7,
|
|
||||||
7,6,0,0,80,0,112,136,136,136,112,5,5,5,6,0,
|
|
||||||
1,32,0,248,0,32,5,7,7,6,0,255,16,112,168,168,
|
|
||||||
168,112,64,5,8,8,6,0,0,64,32,0,136,136,136,152,
|
|
||||||
104,5,8,8,6,0,0,16,32,0,136,136,136,152,104,5,
|
|
||||||
8,8,6,0,0,32,80,0,136,136,136,152,104,5,7,7,
|
|
||||||
6,0,0,80,0,136,136,136,152,104,1,5,5,6,2,0,
|
|
||||||
128,128,128,128,128,5,7,7,6,0,255,112,128,112,8,240,
|
|
||||||
32,96,5,8,8,6,0,255,80,0,136,136,136,120,8,112
|
|
||||||
};
|
|
||||||
@@ -1,205 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
Fontname: ISO10646_4_Greek
|
|
||||||
Copyright: A. Hardtung, public domain
|
|
||||||
Capital A Height: 7, '1' Height: 7
|
|
||||||
Calculated Max Values w= 5 h= 9 x= 2 y= 6 dx= 6 dy= 0 ascent= 8 len= 9
|
|
||||||
Font Bounding box w= 6 h= 9 x= 0 y=-2
|
|
||||||
Calculated Min Values x= 0 y=-1 dx= 0 dy= 0
|
|
||||||
Pure Font ascent = 7 descent=-1
|
|
||||||
X Font ascent = 7 descent=-1
|
|
||||||
Max Font ascent = 8 descent=-1
|
|
||||||
*/
|
|
||||||
#include <U8glib.h>
|
|
||||||
const u8g_fntpgm_uint8_t ISO10646_Greek_5x7[2715] U8G_SECTION(".progmem.ISO10646_Greek_5x7") = {
|
|
||||||
0,6,9,0,254,7,1,145,3,32,32,255,255,8,255,7,
|
|
||||||
255,0,0,0,6,0,0,1,7,7,6,2,0,128,128,128,
|
|
||||||
128,128,0,128,3,2,2,6,1,5,160,160,5,7,7,6,
|
|
||||||
0,0,80,80,248,80,248,80,80,5,7,7,6,0,0,32,
|
|
||||||
120,160,112,40,240,32,5,7,7,6,0,0,192,200,16,32,
|
|
||||||
64,152,24,5,7,7,6,0,0,96,144,160,64,168,144,104,
|
|
||||||
2,3,3,6,1,4,192,64,128,3,7,7,6,1,0,32,
|
|
||||||
64,128,128,128,64,32,3,7,7,6,1,0,128,64,32,32,
|
|
||||||
32,64,128,5,5,5,6,0,1,32,168,112,168,32,5,5,
|
|
||||||
5,6,0,1,32,32,248,32,32,2,3,3,6,2,255,192,
|
|
||||||
64,128,5,1,1,6,0,3,248,2,2,2,6,2,0,192,
|
|
||||||
192,5,5,5,6,0,1,8,16,32,64,128,5,7,7,6,
|
|
||||||
0,0,112,136,152,168,200,136,112,3,7,7,6,1,0,64,
|
|
||||||
192,64,64,64,64,224,5,7,7,6,0,0,112,136,8,112,
|
|
||||||
128,128,248,5,7,7,6,0,0,248,16,32,16,8,8,240,
|
|
||||||
5,7,7,6,0,0,16,48,80,144,248,16,16,5,7,7,
|
|
||||||
6,0,0,248,128,240,8,8,136,112,5,7,7,6,0,0,
|
|
||||||
48,64,128,240,136,136,112,5,7,7,6,0,0,248,8,16,
|
|
||||||
32,32,32,32,5,7,7,6,0,0,112,136,136,112,136,136,
|
|
||||||
112,5,7,7,6,0,0,112,136,136,120,8,16,96,2,5,
|
|
||||||
5,6,2,0,192,192,0,192,192,2,6,6,6,2,255,192,
|
|
||||||
192,0,192,64,128,4,7,7,6,0,0,16,32,64,128,64,
|
|
||||||
32,16,5,3,3,6,0,2,248,0,248,4,7,7,6,1,
|
|
||||||
0,128,64,32,16,32,64,128,5,7,7,6,0,0,112,136,
|
|
||||||
8,16,32,0,32,5,6,6,6,0,0,112,136,8,104,168,
|
|
||||||
112,5,7,7,6,0,0,112,136,136,248,136,136,136,5,7,
|
|
||||||
7,6,0,0,240,136,136,240,136,136,240,5,7,7,6,0,
|
|
||||||
0,112,136,128,128,128,136,112,5,7,7,6,0,0,224,144,
|
|
||||||
136,136,136,144,224,5,7,7,6,0,0,248,128,128,240,128,
|
|
||||||
128,248,5,7,7,6,0,0,248,128,128,240,128,128,128,5,
|
|
||||||
7,7,6,0,0,112,136,128,184,136,136,112,5,7,7,6,
|
|
||||||
0,0,136,136,136,248,136,136,136,1,7,7,6,2,0,128,
|
|
||||||
128,128,128,128,128,128,5,7,7,6,0,0,56,16,16,16,
|
|
||||||
16,144,96,5,7,7,6,0,0,136,144,160,192,160,144,136,
|
|
||||||
5,7,7,6,0,0,128,128,128,128,128,128,248,5,7,7,
|
|
||||||
6,0,0,136,216,168,136,136,136,136,5,7,7,6,0,0,
|
|
||||||
136,136,200,168,152,136,136,5,7,7,6,0,0,112,136,136,
|
|
||||||
136,136,136,112,5,7,7,6,0,0,240,136,136,240,128,128,
|
|
||||||
128,5,7,7,6,0,0,112,136,136,136,168,144,104,5,7,
|
|
||||||
7,6,0,0,240,136,136,240,160,144,136,5,7,7,6,0,
|
|
||||||
0,120,128,128,112,8,8,240,5,7,7,6,0,0,248,32,
|
|
||||||
32,32,32,32,32,5,7,7,6,0,0,136,136,136,136,136,
|
|
||||||
136,112,5,7,7,6,0,0,136,136,136,136,136,80,32,5,
|
|
||||||
7,7,6,0,0,136,136,136,136,136,168,80,5,7,7,6,
|
|
||||||
0,0,136,136,80,32,80,136,136,5,7,7,6,0,0,136,
|
|
||||||
136,136,80,32,32,32,5,7,7,6,0,0,248,8,16,32,
|
|
||||||
64,128,248,3,7,7,6,1,0,224,128,128,128,128,128,224,
|
|
||||||
5,5,5,6,0,1,128,64,32,16,8,3,7,7,6,1,
|
|
||||||
0,224,32,32,32,32,32,224,5,3,3,6,0,4,32,80,
|
|
||||||
136,5,1,1,6,0,0,248,2,2,2,6,2,5,128,64,
|
|
||||||
5,5,5,6,0,0,112,8,120,136,120,5,7,7,6,0,
|
|
||||||
0,128,128,176,200,136,136,240,5,5,5,6,0,0,112,128,
|
|
||||||
128,136,112,5,7,7,6,0,0,8,8,104,152,136,136,120,
|
|
||||||
5,5,5,6,0,0,112,136,248,128,112,5,7,7,6,0,
|
|
||||||
0,48,72,224,64,64,64,64,5,6,6,6,0,255,112,136,
|
|
||||||
136,120,8,112,5,7,7,6,0,0,128,128,176,200,136,136,
|
|
||||||
136,1,7,7,6,2,0,128,0,128,128,128,128,128,3,8,
|
|
||||||
8,6,1,255,32,0,32,32,32,32,160,64,4,7,7,6,
|
|
||||||
0,0,128,128,144,160,192,160,144,3,7,7,6,1,0,192,
|
|
||||||
64,64,64,64,64,224,5,5,5,6,0,0,208,168,168,168,
|
|
||||||
168,5,5,5,6,0,0,176,200,136,136,136,5,5,5,6,
|
|
||||||
0,0,112,136,136,136,112,5,6,6,6,0,255,240,136,136,
|
|
||||||
240,128,128,5,6,6,6,0,255,120,136,136,120,8,8,5,
|
|
||||||
5,5,6,0,0,176,200,128,128,128,5,5,5,6,0,0,
|
|
||||||
112,128,112,8,240,5,7,7,6,0,0,64,64,224,64,64,
|
|
||||||
72,48,5,5,5,6,0,0,136,136,136,152,104,5,5,5,
|
|
||||||
6,0,0,136,136,136,80,32,5,5,5,6,0,0,136,136,
|
|
||||||
168,168,80,5,5,5,6,0,0,136,80,32,80,136,5,6,
|
|
||||||
6,6,0,255,136,136,136,120,8,112,5,5,5,6,0,0,
|
|
||||||
248,16,32,64,248,3,7,7,6,1,0,32,64,64,128,64,
|
|
||||||
64,32,1,7,7,6,2,0,128,128,128,128,128,128,128,3,
|
|
||||||
7,7,6,1,0,128,64,64,32,64,64,128,5,2,2,6,
|
|
||||||
0,3,104,144,0,0,0,6,0,0,0,0,0,6,0,0,
|
|
||||||
0,0,0,6,0,0,0,0,0,6,0,0,0,0,0,6,
|
|
||||||
0,0,2,2,2,6,1,6,64,128,3,3,3,6,1,5,
|
|
||||||
32,64,160,5,8,8,6,0,0,64,160,80,80,136,248,136,
|
|
||||||
136,2,2,2,6,1,2,192,192,5,8,8,6,0,0,64,
|
|
||||||
128,248,128,240,128,128,248,5,8,8,6,0,0,64,128,136,
|
|
||||||
136,248,136,136,136,4,8,8,6,0,0,64,128,112,32,32,
|
|
||||||
32,32,112,0,0,0,6,0,0,5,8,8,6,0,0,64,
|
|
||||||
128,112,136,136,136,136,112,0,0,0,6,0,0,5,8,8,
|
|
||||||
6,0,0,64,128,8,136,112,32,32,32,5,8,8,6,0,
|
|
||||||
0,64,128,112,136,136,136,80,216,3,8,8,6,1,0,32,
|
|
||||||
64,160,0,64,64,64,32,5,7,7,6,0,0,32,80,136,
|
|
||||||
136,248,136,136,5,7,7,6,0,0,240,72,72,112,72,72,
|
|
||||||
240,5,7,7,6,0,0,248,128,128,128,128,128,128,5,6,
|
|
||||||
6,6,0,0,32,80,80,136,136,248,5,7,7,6,0,0,
|
|
||||||
248,128,128,240,128,128,248,5,7,7,6,0,0,248,8,16,
|
|
||||||
32,64,128,248,5,7,7,6,0,0,136,136,136,248,136,136,
|
|
||||||
136,5,7,7,6,0,0,112,136,136,168,136,136,112,3,7,
|
|
||||||
7,6,1,0,224,64,64,64,64,64,224,5,7,7,6,0,
|
|
||||||
0,136,144,160,192,160,144,136,5,7,7,6,0,0,32,80,
|
|
||||||
136,136,136,136,136,5,7,7,6,0,0,136,216,168,168,136,
|
|
||||||
136,136,5,7,7,6,0,0,136,200,200,168,152,152,136,5,
|
|
||||||
7,7,6,0,0,248,0,0,112,0,0,248,5,7,7,6,
|
|
||||||
0,0,112,136,136,136,136,136,112,5,7,7,6,0,0,248,
|
|
||||||
80,80,80,80,80,80,5,7,7,6,0,0,240,136,136,240,
|
|
||||||
128,128,128,0,0,0,6,0,0,5,7,7,6,0,0,248,
|
|
||||||
128,64,32,64,128,248,5,7,7,6,0,0,248,32,32,32,
|
|
||||||
32,32,32,5,7,7,6,0,0,136,136,80,32,32,32,32,
|
|
||||||
5,7,7,6,0,0,112,32,112,168,112,32,112,5,7,7,
|
|
||||||
6,0,0,136,136,80,32,80,136,136,5,7,7,6,0,0,
|
|
||||||
168,168,168,168,112,32,32,5,6,6,6,0,0,112,136,136,
|
|
||||||
80,80,216,3,8,8,6,1,0,160,0,224,64,64,64,64,
|
|
||||||
224,5,8,8,6,0,0,80,0,136,136,136,80,32,32,5,
|
|
||||||
8,8,6,0,0,32,64,8,104,152,144,144,104,5,8,8,
|
|
||||||
6,0,0,32,64,0,112,136,224,136,112,5,9,9,6,0,
|
|
||||||
255,32,64,0,112,136,136,136,136,8,2,8,8,6,1,0,
|
|
||||||
64,128,0,128,128,128,128,64,5,8,8,6,0,0,16,32,
|
|
||||||
80,0,136,136,136,112,5,6,6,6,0,0,8,104,152,144,
|
|
||||||
144,104,4,6,6,6,0,255,96,144,240,144,224,128,5,6,
|
|
||||||
6,6,0,255,136,72,80,32,32,64,5,6,6,6,0,0,
|
|
||||||
48,64,112,136,136,112,5,5,5,6,0,0,112,136,224,136,
|
|
||||||
112,5,8,8,6,0,255,128,112,64,128,128,112,8,112,5,
|
|
||||||
6,6,6,0,255,184,200,136,136,136,8,5,5,5,6,0,
|
|
||||||
0,112,136,248,136,112,3,5,5,6,1,0,128,128,128,128,
|
|
||||||
96,4,5,5,6,0,0,144,160,192,160,144,5,6,6,6,
|
|
||||||
0,0,64,32,32,80,80,136,5,6,6,6,0,255,136,136,
|
|
||||||
136,216,168,128,5,5,5,6,0,0,136,136,80,96,32,5,
|
|
||||||
9,9,6,0,255,128,224,128,112,32,64,240,8,112,5,5,
|
|
||||||
5,6,0,0,112,136,136,136,112,5,5,5,6,0,0,248,
|
|
||||||
80,80,80,80,5,6,6,6,0,255,112,136,136,200,176,128,
|
|
||||||
5,7,7,6,0,255,48,64,128,64,48,8,112,5,5,5,
|
|
||||||
6,0,0,104,144,144,144,96,4,5,5,6,0,0,240,64,
|
|
||||||
64,64,48,5,5,5,6,0,0,136,136,144,144,224,5,7,
|
|
||||||
7,6,0,255,32,168,168,168,112,32,32,5,6,6,6,0,
|
|
||||||
255,136,80,32,32,80,136,5,6,6,6,0,255,168,168,168,
|
|
||||||
168,112,32,5,5,5,6,0,0,80,136,136,168,112,4,7,
|
|
||||||
7,6,0,0,160,0,64,64,64,64,48,5,7,7,6,0,
|
|
||||||
0,80,0,136,136,144,144,224,4,8,8,6,0,0,32,64,
|
|
||||||
0,96,144,144,144,96,5,8,8,6,0,0,32,64,0,136,
|
|
||||||
136,144,144,96,5,8,8,6,0,0,32,64,0,80,136,136,
|
|
||||||
168,112,5,7,7,6,0,255,144,160,192,160,144,136,16,5,
|
|
||||||
8,8,6,0,0,96,144,160,128,240,136,136,112,5,7,7,
|
|
||||||
6,0,0,112,80,56,144,144,144,96,5,6,6,6,0,0,
|
|
||||||
152,80,32,32,32,32,5,8,8,6,0,0,64,128,152,80,
|
|
||||||
32,32,32,32,5,8,8,6,0,0,80,0,152,80,32,32,
|
|
||||||
32,32,5,7,7,6,0,255,48,168,168,168,168,112,32,5,
|
|
||||||
5,5,6,0,0,248,80,80,80,88,5,6,6,6,0,255,
|
|
||||||
136,80,112,80,136,16,5,7,7,6,0,255,112,136,136,136,
|
|
||||||
112,32,112,5,6,6,6,0,255,112,136,136,112,32,112,5,
|
|
||||||
6,6,6,0,0,112,136,128,112,32,112,5,7,7,6,0,
|
|
||||||
255,8,8,112,128,112,16,96,5,6,6,6,0,0,248,128,
|
|
||||||
128,240,128,128,4,5,5,6,0,0,240,128,224,128,128,5,
|
|
||||||
6,6,6,0,0,248,0,0,112,0,248,4,5,5,6,0,
|
|
||||||
0,64,128,240,16,32,5,7,7,6,0,0,224,80,40,40,
|
|
||||||
8,8,16,5,7,7,6,0,0,192,32,80,40,8,8,8,
|
|
||||||
5,7,7,6,0,255,168,168,168,168,88,8,112,5,6,6,
|
|
||||||
6,0,255,168,168,168,88,8,112,5,6,6,6,0,0,104,
|
|
||||||
136,136,120,8,8,5,6,6,6,0,255,104,136,136,120,8,
|
|
||||||
8,4,8,8,6,0,255,128,224,144,144,144,144,32,192,5,
|
|
||||||
5,5,6,0,0,104,144,112,16,224,5,6,6,6,0,0,
|
|
||||||
96,144,16,96,136,112,4,6,6,6,0,0,96,144,16,96,
|
|
||||||
128,112,5,6,6,6,0,0,136,80,32,80,136,248,5,5,
|
|
||||||
5,6,0,0,136,80,32,80,112,5,6,6,6,0,0,120,
|
|
||||||
128,240,136,136,112,4,5,5,6,0,0,240,128,224,144,96,
|
|
||||||
3,6,6,6,1,0,64,224,64,64,64,64,3,6,6,6,
|
|
||||||
1,255,64,224,64,64,64,128,5,5,5,6,0,0,136,80,
|
|
||||||
112,80,136,5,6,6,6,0,255,112,136,136,240,128,112,4,
|
|
||||||
5,5,6,0,0,112,128,128,128,112,2,8,8,6,1,255,
|
|
||||||
64,0,192,64,64,64,64,128,5,7,7,6,0,0,112,136,
|
|
||||||
136,248,136,136,112,4,5,5,6,0,0,112,128,224,128,112,
|
|
||||||
4,5,5,6,0,0,224,16,112,16,224,5,7,7,6,0,
|
|
||||||
0,128,240,136,136,136,240,128,4,7,7,6,0,255,128,224,
|
|
||||||
144,144,144,224,128,5,6,6,6,0,0,112,136,128,128,136,
|
|
||||||
112,5,6,6,6,0,0,136,216,168,136,136,136,5,6,6,
|
|
||||||
6,0,255,136,216,168,136,136,128,5,8,8,6,0,255,112,
|
|
||||||
136,136,136,112,64,224,64,5,6,6,6,0,0,112,136,8,
|
|
||||||
8,136,112,5,6,6,6,0,0,112,136,160,128,136,112,5,
|
|
||||||
6,6,6,0,0,112,136,40,8,136,112};
|
|
||||||
@@ -1,192 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
Fontname: ISO10646_Kana
|
|
||||||
Copyright: A. Hardtung, public domain
|
|
||||||
Capital A Height: 7, '1' Height: 7
|
|
||||||
Calculated Max Values w= 5 h= 8 x= 2 y= 5 dx= 6 dy= 0 ascent= 8 len= 8
|
|
||||||
Font Bounding box w= 6 h= 9 x= 0 y=-2
|
|
||||||
Calculated Min Values x= 0 y=-1 dx= 0 dy= 0
|
|
||||||
Pure Font ascent = 7 descent=-1
|
|
||||||
X Font ascent = 7 descent=-1
|
|
||||||
Max Font ascent = 8 descent=-1
|
|
||||||
*/
|
|
||||||
#include <U8glib.h>
|
|
||||||
const u8g_fntpgm_uint8_t ISO10646_Kana_5x7[2482] U8G_SECTION(".progmem.ISO10646_Kana_5x7") = {
|
|
||||||
0, 6, 9, 0, 254, 7, 1, 145, 3, 32, 32, 255, 255, 8, 255, 7,
|
|
||||||
255, 0, 0, 0, 6, 0, 0, 1, 7, 7, 6, 2, 0, 128, 128, 128,
|
|
||||||
128, 128, 0, 128, 3, 2, 2, 6, 1, 5, 160, 160, 5, 7, 7, 6,
|
|
||||||
0, 0, 80, 80, 248, 80, 248, 80, 80, 5, 7, 7, 6, 0, 0, 32,
|
|
||||||
120, 160, 112, 40, 240, 32, 5, 7, 7, 6, 0, 0, 192, 200, 16, 32,
|
|
||||||
64, 152, 24, 5, 7, 7, 6, 0, 0, 96, 144, 160, 64, 168, 144, 104,
|
|
||||||
2, 3, 3, 6, 1, 4, 192, 64, 128, 3, 7, 7, 6, 1, 0, 32,
|
|
||||||
64, 128, 128, 128, 64, 32, 3, 7, 7, 6, 1, 0, 128, 64, 32, 32,
|
|
||||||
32, 64, 128, 5, 5, 5, 6, 0, 1, 32, 168, 112, 168, 32, 5, 5,
|
|
||||||
5, 6, 0, 1, 32, 32, 248, 32, 32, 2, 3, 3, 6, 2, 255, 192,
|
|
||||||
64, 128, 5, 1, 1, 6, 0, 3, 248, 2, 2, 2, 6, 2, 0, 192,
|
|
||||||
192, 5, 5, 5, 6, 0, 1, 8, 16, 32, 64, 128, 5, 7, 7, 6,
|
|
||||||
0, 0, 112, 136, 152, 168, 200, 136, 112, 3, 7, 7, 6, 1, 0, 64,
|
|
||||||
192, 64, 64, 64, 64, 224, 5, 7, 7, 6, 0, 0, 112, 136, 8, 112,
|
|
||||||
128, 128, 248, 5, 7, 7, 6, 0, 0, 248, 16, 32, 16, 8, 8, 240,
|
|
||||||
5, 7, 7, 6, 0, 0, 16, 48, 80, 144, 248, 16, 16, 5, 7, 7,
|
|
||||||
6, 0, 0, 248, 128, 240, 8, 8, 136, 112, 5, 7, 7, 6, 0, 0,
|
|
||||||
48, 64, 128, 240, 136, 136, 112, 5, 7, 7, 6, 0, 0, 248, 8, 16,
|
|
||||||
32, 32, 32, 32, 5, 7, 7, 6, 0, 0, 112, 136, 136, 112, 136, 136,
|
|
||||||
112, 5, 7, 7, 6, 0, 0, 112, 136, 136, 120, 8, 16, 96, 2, 5,
|
|
||||||
5, 6, 2, 0, 192, 192, 0, 192, 192, 2, 6, 6, 6, 2, 255, 192,
|
|
||||||
192, 0, 192, 64, 128, 4, 7, 7, 6, 0, 0, 16, 32, 64, 128, 64,
|
|
||||||
32, 16, 5, 3, 3, 6, 0, 2, 248, 0, 248, 4, 7, 7, 6, 1,
|
|
||||||
0, 128, 64, 32, 16, 32, 64, 128, 5, 7, 7, 6, 0, 0, 112, 136,
|
|
||||||
8, 16, 32, 0, 32, 5, 6, 6, 6, 0, 0, 112, 136, 8, 104, 168,
|
|
||||||
112, 5, 7, 7, 6, 0, 0, 112, 136, 136, 248, 136, 136, 136, 5, 7,
|
|
||||||
7, 6, 0, 0, 240, 136, 136, 240, 136, 136, 240, 5, 7, 7, 6, 0,
|
|
||||||
0, 112, 136, 128, 128, 128, 136, 112, 5, 7, 7, 6, 0, 0, 224, 144,
|
|
||||||
136, 136, 136, 144, 224, 5, 7, 7, 6, 0, 0, 248, 128, 128, 240, 128,
|
|
||||||
128, 248, 5, 7, 7, 6, 0, 0, 248, 128, 128, 240, 128, 128, 128, 5,
|
|
||||||
7, 7, 6, 0, 0, 112, 136, 128, 184, 136, 136, 112, 5, 7, 7, 6,
|
|
||||||
0, 0, 136, 136, 136, 248, 136, 136, 136, 1, 7, 7, 6, 2, 0, 128,
|
|
||||||
128, 128, 128, 128, 128, 128, 5, 7, 7, 6, 0, 0, 56, 16, 16, 16,
|
|
||||||
16, 144, 96, 5, 7, 7, 6, 0, 0, 136, 144, 160, 192, 160, 144, 136,
|
|
||||||
5, 7, 7, 6, 0, 0, 128, 128, 128, 128, 128, 128, 248, 5, 7, 7,
|
|
||||||
6, 0, 0, 136, 216, 168, 136, 136, 136, 136, 5, 7, 7, 6, 0, 0,
|
|
||||||
136, 136, 200, 168, 152, 136, 136, 5, 7, 7, 6, 0, 0, 112, 136, 136,
|
|
||||||
136, 136, 136, 112, 5, 7, 7, 6, 0, 0, 240, 136, 136, 240, 128, 128,
|
|
||||||
128, 5, 7, 7, 6, 0, 0, 112, 136, 136, 136, 168, 144, 104, 5, 7,
|
|
||||||
7, 6, 0, 0, 240, 136, 136, 240, 160, 144, 136, 5, 7, 7, 6, 0,
|
|
||||||
0, 120, 128, 128, 112, 8, 8, 240, 5, 7, 7, 6, 0, 0, 248, 32,
|
|
||||||
32, 32, 32, 32, 32, 5, 7, 7, 6, 0, 0, 136, 136, 136, 136, 136,
|
|
||||||
136, 112, 5, 7, 7, 6, 0, 0, 136, 136, 136, 136, 136, 80, 32, 5,
|
|
||||||
7, 7, 6, 0, 0, 136, 136, 136, 136, 136, 168, 80, 5, 7, 7, 6,
|
|
||||||
0, 0, 136, 136, 80, 32, 80, 136, 136, 5, 7, 7, 6, 0, 0, 136,
|
|
||||||
136, 136, 80, 32, 32, 32, 5, 7, 7, 6, 0, 0, 248, 8, 16, 32,
|
|
||||||
64, 128, 248, 3, 7, 7, 6, 1, 0, 224, 128, 128, 128, 128, 128, 224,
|
|
||||||
5, 5, 5, 6, 0, 1, 128, 64, 32, 16, 8, 3, 7, 7, 6, 1,
|
|
||||||
0, 224, 32, 32, 32, 32, 32, 224, 5, 3, 3, 6, 0, 4, 32, 80,
|
|
||||||
136, 5, 1, 1, 6, 0, 0, 248, 2, 2, 2, 6, 2, 5, 128, 64,
|
|
||||||
5, 5, 5, 6, 0, 0, 112, 8, 120, 136, 120, 5, 7, 7, 6, 0,
|
|
||||||
0, 128, 128, 176, 200, 136, 136, 240, 5, 5, 5, 6, 0, 0, 112, 128,
|
|
||||||
128, 136, 112, 5, 7, 7, 6, 0, 0, 8, 8, 104, 152, 136, 136, 120,
|
|
||||||
5, 5, 5, 6, 0, 0, 112, 136, 248, 128, 112, 5, 7, 7, 6, 0,
|
|
||||||
0, 48, 72, 224, 64, 64, 64, 64, 5, 6, 6, 6, 0, 255, 112, 136,
|
|
||||||
136, 120, 8, 112, 5, 7, 7, 6, 0, 0, 128, 128, 176, 200, 136, 136,
|
|
||||||
136, 1, 7, 7, 6, 2, 0, 128, 0, 128, 128, 128, 128, 128, 3, 8,
|
|
||||||
8, 6, 1, 255, 32, 0, 32, 32, 32, 32, 160, 64, 4, 7, 7, 6,
|
|
||||||
0, 0, 128, 128, 144, 160, 192, 160, 144, 3, 7, 7, 6, 1, 0, 192,
|
|
||||||
64, 64, 64, 64, 64, 224, 5, 5, 5, 6, 0, 0, 208, 168, 168, 168,
|
|
||||||
168, 5, 5, 5, 6, 0, 0, 176, 200, 136, 136, 136, 5, 5, 5, 6,
|
|
||||||
0, 0, 112, 136, 136, 136, 112, 5, 6, 6, 6, 0, 255, 240, 136, 136,
|
|
||||||
240, 128, 128, 5, 6, 6, 6, 0, 255, 120, 136, 136, 120, 8, 8, 5,
|
|
||||||
5, 5, 6, 0, 0, 176, 200, 128, 128, 128, 5, 5, 5, 6, 0, 0,
|
|
||||||
112, 128, 112, 8, 240, 5, 7, 7, 6, 0, 0, 64, 64, 224, 64, 64,
|
|
||||||
72, 48, 5, 5, 5, 6, 0, 0, 136, 136, 136, 152, 104, 5, 5, 5,
|
|
||||||
6, 0, 0, 136, 136, 136, 80, 32, 5, 5, 5, 6, 0, 0, 136, 136,
|
|
||||||
168, 168, 80, 5, 5, 5, 6, 0, 0, 136, 80, 32, 80, 136, 5, 6,
|
|
||||||
6, 6, 0, 255, 136, 136, 136, 120, 8, 112, 5, 5, 5, 6, 0, 0,
|
|
||||||
248, 16, 32, 64, 248, 3, 7, 7, 6, 1, 0, 32, 64, 64, 128, 64,
|
|
||||||
64, 32, 1, 7, 7, 6, 2, 0, 128, 128, 128, 128, 128, 128, 128, 3,
|
|
||||||
7, 7, 6, 1, 0, 128, 64, 64, 32, 64, 64, 128, 5, 2, 2, 6,
|
|
||||||
0, 3, 104, 144, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0,
|
|
||||||
0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6,
|
|
||||||
0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0,
|
|
||||||
0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0,
|
|
||||||
0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6,
|
|
||||||
0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0,
|
|
||||||
0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0,
|
|
||||||
0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6,
|
|
||||||
0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0,
|
|
||||||
0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0,
|
|
||||||
0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6,
|
|
||||||
0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0,
|
|
||||||
0, 6, 0, 0, 0, 0, 0, 6, 0, 0, 5, 3, 3, 6, 0, 1,
|
|
||||||
248, 0, 248, 4, 4, 4, 6, 0, 0, 240, 16, 96, 64, 5, 6, 6,
|
|
||||||
6, 0, 0, 248, 8, 40, 48, 32, 64, 3, 4, 4, 6, 1, 0, 32,
|
|
||||||
64, 192, 64, 4, 6, 6, 6, 0, 0, 16, 32, 96, 160, 32, 32, 4,
|
|
||||||
4, 4, 6, 0, 0, 32, 240, 144, 32, 5, 6, 6, 6, 0, 0, 32,
|
|
||||||
248, 136, 8, 16, 32, 3, 4, 4, 6, 1, 0, 224, 64, 64, 224, 5,
|
|
||||||
5, 5, 6, 0, 0, 248, 32, 32, 32, 248, 4, 4, 4, 6, 0, 0,
|
|
||||||
32, 240, 96, 160, 5, 6, 6, 6, 0, 0, 16, 248, 48, 80, 144, 16,
|
|
||||||
5, 6, 6, 6, 0, 0, 64, 248, 72, 72, 72, 144, 5, 8, 8, 6,
|
|
||||||
0, 0, 40, 0, 64, 248, 72, 72, 72, 144, 5, 6, 6, 6, 0, 0,
|
|
||||||
32, 248, 32, 248, 32, 32, 5, 8, 8, 6, 0, 0, 40, 0, 32, 248,
|
|
||||||
32, 248, 32, 32, 4, 5, 5, 6, 0, 0, 112, 144, 16, 32, 192, 5,
|
|
||||||
7, 7, 6, 0, 0, 40, 0, 112, 144, 16, 32, 192, 5, 6, 6, 6,
|
|
||||||
0, 0, 64, 120, 144, 16, 16, 32, 5, 8, 8, 6, 0, 0, 40, 0,
|
|
||||||
64, 120, 144, 16, 16, 32, 5, 5, 5, 6, 0, 0, 248, 8, 8, 8,
|
|
||||||
248, 5, 7, 7, 6, 0, 0, 40, 0, 248, 8, 8, 8, 248, 5, 6,
|
|
||||||
6, 6, 0, 0, 80, 248, 80, 16, 32, 64, 5, 8, 8, 6, 0, 0,
|
|
||||||
40, 0, 80, 248, 80, 16, 32, 64, 5, 5, 5, 6, 0, 0, 192, 8,
|
|
||||||
200, 16, 224, 5, 7, 7, 6, 0, 0, 40, 0, 192, 8, 200, 16, 224,
|
|
||||||
5, 5, 5, 6, 0, 0, 248, 16, 32, 80, 136, 5, 7, 7, 6, 0,
|
|
||||||
0, 40, 0, 248, 16, 32, 80, 136, 5, 6, 6, 6, 0, 0, 64, 248,
|
|
||||||
72, 80, 64, 56, 5, 8, 8, 6, 0, 0, 40, 0, 64, 248, 72, 80,
|
|
||||||
64, 56, 5, 5, 5, 6, 0, 0, 136, 136, 72, 16, 96, 5, 7, 7,
|
|
||||||
6, 0, 0, 40, 0, 136, 136, 72, 16, 96, 5, 5, 5, 6, 0, 0,
|
|
||||||
120, 72, 168, 16, 96, 5, 7, 7, 6, 0, 0, 40, 0, 120, 72, 168,
|
|
||||||
16, 96, 5, 6, 6, 6, 0, 0, 16, 224, 32, 248, 32, 64, 5, 8,
|
|
||||||
8, 6, 0, 0, 40, 0, 16, 224, 32, 248, 32, 64, 5, 4, 4, 6,
|
|
||||||
0, 0, 168, 168, 8, 48, 5, 5, 5, 6, 0, 0, 168, 168, 8, 16,
|
|
||||||
32, 5, 7, 7, 6, 0, 0, 40, 0, 168, 168, 8, 16, 32, 5, 6,
|
|
||||||
6, 6, 0, 0, 112, 0, 248, 32, 32, 64, 5, 8, 8, 6, 0, 0,
|
|
||||||
40, 0, 112, 0, 248, 32, 32, 64, 3, 6, 6, 6, 1, 0, 128, 128,
|
|
||||||
192, 160, 128, 128, 4, 8, 8, 6, 1, 0, 80, 0, 128, 128, 192, 160,
|
|
||||||
128, 128, 5, 6, 6, 6, 0, 0, 32, 248, 32, 32, 64, 128, 5, 5,
|
|
||||||
5, 6, 0, 0, 112, 0, 0, 0, 248, 5, 5, 5, 6, 0, 0, 248,
|
|
||||||
8, 80, 32, 208, 5, 6, 6, 6, 0, 0, 32, 248, 16, 32, 112, 168,
|
|
||||||
3, 6, 6, 6, 1, 0, 32, 32, 32, 32, 64, 128, 5, 5, 5, 6,
|
|
||||||
0, 0, 16, 136, 136, 136, 136, 5, 7, 7, 6, 0, 0, 40, 0, 16,
|
|
||||||
136, 136, 136, 136, 5, 8, 8, 6, 0, 0, 24, 24, 0, 16, 136, 136,
|
|
||||||
136, 136, 5, 6, 6, 6, 0, 0, 128, 128, 248, 128, 128, 120, 5, 7,
|
|
||||||
7, 6, 0, 0, 40, 128, 128, 248, 128, 128, 120, 5, 7, 7, 6, 0,
|
|
||||||
0, 24, 152, 128, 248, 128, 128, 120, 5, 5, 5, 6, 0, 0, 248, 8,
|
|
||||||
8, 16, 96, 5, 7, 7, 6, 0, 0, 40, 0, 248, 8, 8, 16, 96,
|
|
||||||
5, 8, 8, 6, 0, 0, 24, 24, 0, 248, 8, 8, 16, 96, 5, 4,
|
|
||||||
4, 6, 0, 1, 64, 160, 16, 8, 5, 6, 6, 6, 0, 1, 40, 0,
|
|
||||||
64, 160, 16, 8, 5, 6, 6, 6, 0, 1, 24, 24, 64, 160, 16, 8,
|
|
||||||
5, 6, 6, 6, 0, 0, 32, 248, 32, 168, 168, 32, 5, 8, 8, 6,
|
|
||||||
0, 0, 40, 0, 32, 248, 32, 168, 168, 32, 5, 8, 8, 6, 0, 0,
|
|
||||||
24, 24, 32, 248, 32, 168, 168, 32, 5, 5, 5, 6, 0, 0, 248, 8,
|
|
||||||
80, 32, 16, 4, 5, 5, 6, 1, 0, 224, 0, 224, 0, 240, 5, 5,
|
|
||||||
5, 6, 0, 0, 32, 64, 136, 248, 8, 5, 5, 5, 6, 0, 0, 8,
|
|
||||||
40, 16, 40, 192, 5, 5, 5, 6, 0, 0, 248, 64, 248, 64, 56, 5,
|
|
||||||
4, 4, 6, 0, 0, 64, 248, 80, 64, 5, 6, 6, 6, 0, 0, 64,
|
|
||||||
248, 72, 80, 64, 64, 4, 4, 4, 6, 0, 0, 96, 32, 32, 240, 5,
|
|
||||||
5, 5, 6, 0, 0, 112, 16, 16, 16, 248, 4, 5, 5, 6, 0, 0,
|
|
||||||
240, 16, 240, 16, 240, 5, 5, 5, 6, 0, 0, 248, 8, 248, 8, 248,
|
|
||||||
5, 6, 6, 6, 0, 0, 112, 0, 248, 8, 16, 32, 4, 6, 6, 6,
|
|
||||||
0, 0, 144, 144, 144, 144, 16, 32, 5, 5, 5, 6, 0, 0, 32, 160,
|
|
||||||
168, 168, 176, 4, 5, 5, 6, 0, 0, 128, 128, 144, 160, 192, 5, 5,
|
|
||||||
5, 6, 0, 0, 248, 136, 136, 136, 248, 4, 4, 4, 6, 0, 0, 240,
|
|
||||||
144, 16, 32, 5, 5, 5, 6, 0, 0, 248, 136, 8, 16, 32, 5, 6,
|
|
||||||
6, 6, 0, 0, 16, 248, 80, 80, 248, 16, 5, 5, 5, 6, 0, 0,
|
|
||||||
248, 8, 48, 32, 248, 5, 5, 5, 6, 0, 0, 248, 8, 248, 8, 48,
|
|
||||||
5, 5, 5, 6, 0, 0, 192, 8, 8, 16, 224, 5, 8, 8, 6, 0,
|
|
||||||
0, 40, 0, 32, 248, 136, 8, 16, 32, 4, 4, 4, 6, 0, 0, 64,
|
|
||||||
240, 80, 160, 4, 4, 4, 6, 0, 0, 64, 240, 32, 64, 5, 7, 7,
|
|
||||||
6, 0, 0, 40, 0, 248, 136, 8, 16, 96, 5, 8, 8, 6, 0, 0,
|
|
||||||
40, 0, 16, 248, 80, 80, 248, 16, 5, 7, 7, 6, 0, 0, 40, 0,
|
|
||||||
248, 8, 48, 32, 248, 5, 7, 7, 6, 0, 0, 40, 0, 248, 8, 248,
|
|
||||||
8, 48, 2, 2, 2, 6, 2, 2, 192, 192, 5, 1, 1, 6, 0, 2,
|
|
||||||
248, 5, 4, 4, 6, 0, 1, 128, 96, 16, 8, 5, 5, 5, 6, 0,
|
|
||||||
1, 40, 128, 96, 16, 8, 5, 6, 6, 6, 0, 0, 248, 8, 8, 8,
|
|
||||||
8, 8
|
|
||||||
};
|
|
||||||
@@ -1,151 +0,0 @@
|
|||||||
/*
|
|
||||||
Fontname: ISO10646_SK
|
|
||||||
Copyright: A. Hardtung, modified by Roman Moravcik
|
|
||||||
Capital A Height: 7, '1' Height: 7
|
|
||||||
Calculated Max Values w= 6 h= 9 x= 2 y= 7 dx= 6 dy= 0 ascent= 8 len= 9
|
|
||||||
Font Bounding box w= 6 h= 9 x= 0 y=-2
|
|
||||||
Calculated Min Values x= 0 y=-1 dx= 0 dy= 0
|
|
||||||
Pure Font ascent = 7 descent=-1
|
|
||||||
X Font ascent = 7 descent=-1
|
|
||||||
Max Font ascent = 8 descent=-1
|
|
||||||
*/
|
|
||||||
#include <U8glib.h>
|
|
||||||
const u8g_fntpgm_uint8_t ISO10646_SK[2203] U8G_SECTION(".progmem.ISO10646_SK") = {
|
|
||||||
0,6,9,0,254,7,1,146,3,33,32,255,255,8,255,7,
|
|
||||||
255,0,0,0,6,0,0,1,7,7,6,2,0,128,128,128,
|
|
||||||
128,128,0,128,3,2,2,6,1,5,160,160,5,7,7,6,
|
|
||||||
0,0,80,80,248,80,248,80,80,5,7,7,6,0,0,32,
|
|
||||||
120,160,112,40,240,32,5,7,7,6,0,0,192,200,16,32,
|
|
||||||
64,152,24,5,7,7,6,0,0,96,144,160,64,168,144,104,
|
|
||||||
2,3,3,6,1,4,192,64,128,3,7,7,6,1,0,32,
|
|
||||||
64,128,128,128,64,32,3,7,7,6,1,0,128,64,32,32,
|
|
||||||
32,64,128,5,5,5,6,0,1,32,168,112,168,32,5,5,
|
|
||||||
5,6,0,1,32,32,248,32,32,2,3,3,6,2,255,192,
|
|
||||||
64,128,5,1,1,6,0,3,248,2,2,2,6,2,0,192,
|
|
||||||
192,5,5,5,6,0,1,8,16,32,64,128,5,7,7,6,
|
|
||||||
0,0,112,136,136,136,136,136,112,3,7,7,6,1,0,64,
|
|
||||||
192,64,64,64,64,224,5,7,7,6,0,0,112,136,8,112,
|
|
||||||
128,128,248,5,7,7,6,0,0,248,16,32,16,8,8,240,
|
|
||||||
5,7,7,6,0,0,16,48,80,144,248,16,16,5,7,7,
|
|
||||||
6,0,0,248,128,240,8,8,136,112,5,7,7,6,0,0,
|
|
||||||
112,128,128,240,136,136,112,5,7,7,6,0,0,248,8,16,
|
|
||||||
32,32,32,32,5,7,7,6,0,0,112,136,136,112,136,136,
|
|
||||||
112,5,7,7,6,0,0,112,136,136,120,8,8,112,2,5,
|
|
||||||
5,6,2,0,192,192,0,192,192,2,6,6,6,2,255,192,
|
|
||||||
192,0,192,64,128,4,7,7,6,0,0,16,32,64,128,64,
|
|
||||||
32,16,5,3,3,6,0,2,248,0,248,4,7,7,6,1,
|
|
||||||
0,128,64,32,16,32,64,128,5,7,7,6,0,0,112,136,
|
|
||||||
8,16,32,0,32,5,7,7,6,0,0,112,136,8,104,168,
|
|
||||||
168,112,5,7,7,6,0,0,112,136,136,248,136,136,136,5,
|
|
||||||
7,7,6,0,0,240,136,136,240,136,136,240,5,7,7,6,
|
|
||||||
0,0,112,136,128,128,128,136,112,5,7,7,6,0,0,240,
|
|
||||||
136,136,136,136,136,240,5,7,7,6,0,0,248,128,128,240,
|
|
||||||
128,128,248,5,7,7,6,0,0,248,128,128,240,128,128,128,
|
|
||||||
5,7,7,6,0,0,112,136,128,184,136,136,112,5,7,7,
|
|
||||||
6,0,0,136,136,136,248,136,136,136,1,7,7,6,2,0,
|
|
||||||
128,128,128,128,128,128,128,5,7,7,6,0,0,56,16,16,
|
|
||||||
16,16,144,96,5,7,7,6,0,0,136,144,160,192,160,144,
|
|
||||||
136,5,7,7,6,0,0,128,128,128,128,128,128,248,5,7,
|
|
||||||
7,6,0,0,136,216,168,136,136,136,136,5,7,7,6,0,
|
|
||||||
0,136,136,200,168,152,136,136,5,7,7,6,0,0,112,136,
|
|
||||||
136,136,136,136,112,5,7,7,6,0,0,240,136,136,240,128,
|
|
||||||
128,128,5,7,7,6,0,0,112,136,136,136,168,144,104,5,
|
|
||||||
7,7,6,0,0,240,136,136,240,160,144,136,5,7,7,6,
|
|
||||||
0,0,120,128,128,112,8,8,240,5,7,7,6,0,0,248,
|
|
||||||
32,32,32,32,32,32,5,7,7,6,0,0,136,136,136,136,
|
|
||||||
136,136,112,5,7,7,6,0,0,136,136,136,136,136,80,32,
|
|
||||||
5,7,7,6,0,0,136,136,136,136,136,168,80,5,7,7,
|
|
||||||
6,0,0,136,136,80,32,80,136,136,5,7,7,6,0,0,
|
|
||||||
136,136,136,80,32,32,32,5,7,7,6,0,0,248,8,16,
|
|
||||||
32,64,128,248,3,7,7,6,1,0,224,128,128,128,128,128,
|
|
||||||
224,5,5,5,6,0,1,128,64,32,16,8,3,7,7,6,
|
|
||||||
1,0,224,32,32,32,32,32,224,5,3,3,6,0,4,32,
|
|
||||||
80,136,5,1,1,6,0,0,248,2,2,2,6,2,5,128,
|
|
||||||
64,5,5,5,6,0,0,112,8,120,136,120,5,7,7,6,
|
|
||||||
0,0,128,128,176,200,136,136,240,5,5,5,6,0,0,112,
|
|
||||||
128,128,136,112,5,7,7,6,0,0,8,8,104,152,136,136,
|
|
||||||
120,5,5,5,6,0,0,112,136,248,128,112,5,7,7,6,
|
|
||||||
0,0,48,72,224,64,64,64,64,5,6,6,6,0,255,112,
|
|
||||||
136,136,120,8,112,5,7,7,6,0,0,128,128,176,200,136,
|
|
||||||
136,136,1,7,7,6,2,0,128,0,128,128,128,128,128,3,
|
|
||||||
8,8,6,1,255,32,0,32,32,32,32,160,64,4,7,7,
|
|
||||||
6,0,0,128,128,144,160,192,160,144,3,7,7,6,1,0,
|
|
||||||
192,64,64,64,64,64,224,5,5,5,6,0,0,208,168,168,
|
|
||||||
168,168,5,5,5,6,0,0,176,200,136,136,136,5,5,5,
|
|
||||||
6,0,0,112,136,136,136,112,5,6,6,6,0,255,240,136,
|
|
||||||
136,240,128,128,5,6,6,6,0,255,120,136,136,120,8,8,
|
|
||||||
5,5,5,6,0,0,176,200,128,128,128,5,5,5,6,0,
|
|
||||||
0,112,128,112,8,240,4,7,7,6,0,0,64,64,224,64,
|
|
||||||
64,64,48,5,5,5,6,0,0,136,136,136,152,104,5,5,
|
|
||||||
5,6,0,0,136,136,136,80,32,5,5,5,6,0,0,136,
|
|
||||||
136,168,168,80,5,5,5,6,0,0,136,80,32,80,136,5,
|
|
||||||
6,6,6,0,255,136,136,136,120,8,112,5,5,5,6,0,
|
|
||||||
0,248,16,32,64,248,3,7,7,6,1,0,32,64,64,128,
|
|
||||||
64,64,32,1,7,7,6,2,0,128,128,128,128,128,128,128,
|
|
||||||
3,7,7,6,1,0,128,64,64,32,64,64,128,5,2,2,
|
|
||||||
6,0,2,104,144,0,0,0,6,0,0,5,8,8,6,0,
|
|
||||||
0,16,32,112,136,136,248,136,136,5,8,8,6,0,0,80,
|
|
||||||
0,112,136,136,248,136,136,5,8,8,6,0,0,8,16,248,
|
|
||||||
128,128,240,128,248,3,8,8,6,1,0,32,64,224,64,64,
|
|
||||||
64,64,224,5,8,8,6,0,0,16,32,112,136,136,136,136,
|
|
||||||
112,5,8,8,6,0,0,32,80,112,136,136,136,136,112,5,
|
|
||||||
8,8,6,0,0,16,32,136,136,136,136,136,112,5,8,8,
|
|
||||||
6,0,0,16,32,136,136,80,32,32,32,5,8,8,6,0,
|
|
||||||
0,16,32,0,112,8,120,136,120,5,7,7,6,0,0,80,
|
|
||||||
0,112,8,120,136,120,5,8,8,6,0,0,16,32,0,112,
|
|
||||||
136,248,128,112,2,8,8,6,2,0,64,128,0,128,128,128,
|
|
||||||
128,128,5,8,8,6,0,0,16,32,0,112,136,136,136,112,
|
|
||||||
5,8,8,6,0,0,32,80,0,112,136,136,136,112,5,8,
|
|
||||||
8,6,0,0,16,32,0,136,136,136,152,104,5,9,9,6,
|
|
||||||
0,255,16,32,0,136,136,136,120,8,112,5,8,8,6,0,
|
|
||||||
0,80,32,112,136,128,128,136,112,5,8,8,6,0,0,80,
|
|
||||||
32,0,112,128,128,136,112,5,8,8,6,0,0,80,32,240,
|
|
||||||
136,136,136,136,240,6,8,8,6,0,0,4,20,24,112,144,
|
|
||||||
144,144,112,5,8,8,6,0,0,16,32,128,128,128,128,128,
|
|
||||||
248,3,8,8,6,1,0,32,64,0,192,64,64,64,224,5,
|
|
||||||
8,8,6,0,0,16,144,160,128,128,128,128,248,5,8,8,
|
|
||||||
6,1,0,8,200,80,64,64,64,64,224,5,8,8,6,0,
|
|
||||||
0,80,32,136,200,168,152,136,136,5,8,8,6,0,0,80,
|
|
||||||
32,0,176,200,136,136,136,5,8,8,6,0,0,16,32,240,
|
|
||||||
136,240,160,144,136,5,8,8,6,0,0,16,32,0,176,200,
|
|
||||||
128,128,128,5,8,8,6,0,0,80,32,120,128,128,112,8,
|
|
||||||
240,5,8,8,6,0,0,80,32,0,112,128,112,8,240,5,
|
|
||||||
8,8,6,0,0,80,32,248,32,32,32,32,32,6,8,8,
|
|
||||||
6,0,0,4,68,72,224,64,64,64,48,5,8,8,6,0,
|
|
||||||
0,80,32,248,8,48,64,128,248,5,8,8,6,0,0,80,
|
|
||||||
32,0,248,16,32,64,248,0,0,0,6,0,0,0,0,0,
|
|
||||||
6,0,0,0,0,0,6,0,0,0,0,0,6,0,0,0,
|
|
||||||
0,0,6,0,0,0,0,0,6,0,0,0,0,0,6,0,
|
|
||||||
0,0,0,0,6,0,0,0,0,0,6,0,0,0,0,0,
|
|
||||||
6,0,0,0,0,0,6,0,0,0,0,0,6,0,0,0,
|
|
||||||
0,0,6,0,0,0,0,0,6,0,0,0,0,0,6,0,
|
|
||||||
0,0,0,0,6,0,0,0,0,0,6,0,0,0,0,0,
|
|
||||||
6,0,0,0,0,0,6,0,0,0,0,0,6,0,0,0,
|
|
||||||
0,0,6,0,0,0,0,0,6,0,0,0,0,0,6,0,
|
|
||||||
0,0,0,0,6,0,0,0,0,0,6,0,0,0,0,0,
|
|
||||||
6,0,0,0,0,0,6,0,0,0,0,0,6,0,0,0,
|
|
||||||
0,0,6,0,0,0,0,0,6,0,0,0,0,0,6,0,
|
|
||||||
0,0,0,0,6,0,0,0,0,0,6,0,0,0,0,0,
|
|
||||||
6,0,0,0,0,0,6,0,0,0,0,0,6,0,0,0,
|
|
||||||
0,0,6,0,0,0,0,0,6,0,0,0,0,0,6,0,
|
|
||||||
0,0,0,0,6,0,0,0,0,0,6,0,0,0,0,0,
|
|
||||||
6,0,0,0,0,0,6,0,0,0,0,0,6,0,0,0,
|
|
||||||
0,0,6,0,0,0,0,0,6,0,0,0,0,0,6,0,
|
|
||||||
0,0,0,0,6,0,0,0,0,0,6,0,0,0,0,0,
|
|
||||||
6,0,0,0,0,0,6,0,0,0,0,0,6,0,0,0,
|
|
||||||
0,0,6,0,0,0,0,0,6,0,0,0,0,0,6,0,
|
|
||||||
0,0,0,0,6,0,0,0,0,0,6,0,0,0,0,0,
|
|
||||||
6,0,0,0,0,0,6,0,0,0,0,0,6,0,0,0,
|
|
||||||
0,0,6,0,0,0,0,0,6,0,0,0,0,0,6,0,
|
|
||||||
0,0,0,0,6,0,0,0,0,0,6,0,0,0,0,0,
|
|
||||||
6,0,0,0,0,0,6,0,0,0,0,0,6,0,0,0,
|
|
||||||
0,0,6,0,0,0,0,0,6,0,0,0,0,0,6,0,
|
|
||||||
0,0,0,0,6,0,0,0,0,0,6,0,0,0,0,0,
|
|
||||||
6,0,0,0,0,0,6,0,0,0,0,0,6,0,0,0,
|
|
||||||
0,0,6,0,0,0,0,0,6,0,0,0,0,0,6,0,
|
|
||||||
0,0,0,0,6,0,0,0,0,0,6,0,0,0,0,0,
|
|
||||||
6,0,0,0,0,0,6,0,0,0,0,0,6,0,0,0,
|
|
||||||
0,0,6,0,0,0,0,0,6,0,0,0,0,0,6,0,
|
|
||||||
0,0,0,0,6,0,0,0,0,0,6,0,0,0,0,0,
|
|
||||||
6,0,0,0,0,0,6,0,0,0,0,0,6,0,0,0,
|
|
||||||
0,0,6,0,0,0,0,0,6,0,0};
|
|
||||||
@@ -1,304 +0,0 @@
|
|||||||
/*
|
|
||||||
Fontname: ISO10646_ko_KR
|
|
||||||
Copyright: A. Hardtung, public domain
|
|
||||||
Korean Font : Copyright (c) 2010, NAVER Corporation (https://www.navercorp.com/) , NanumGothic, SIL OPEN FONT LICENSE
|
|
||||||
Capital A Height: 7, '1' Height: 7
|
|
||||||
Calculated Max Values w=12 h=11 x=12 y= 5 dx=13 dy= 0 ascent=10 len=22
|
|
||||||
Font Bounding box w=13 h=12 x= 0 y=-2
|
|
||||||
Calculated Min Values x= 0 y=-1 dx= 0 dy= 0
|
|
||||||
Pure Font ascent = 7 descent=-1
|
|
||||||
X Font ascent = 7 descent=-1
|
|
||||||
Max Font ascent =10 descent=-1
|
|
||||||
*/
|
|
||||||
#include <U8glib.h>
|
|
||||||
const u8g_fntpgm_uint8_t ISO10646_ko_KR[4639] U8G_SECTION(".progmem.ISO10646_ko_KR") = {
|
|
||||||
0,12,14,0,253,7,1,146,3,33,32,255,255,11,253,7,
|
|
||||||
255,0,0,0,6,5,255,1,7,7,6,2,0,128,128,128,
|
|
||||||
128,128,0,128,3,2,2,6,1,5,160,160,5,7,7,6,
|
|
||||||
0,0,80,80,248,80,248,80,80,5,7,7,6,0,0,32,
|
|
||||||
120,160,112,40,240,32,5,7,7,6,0,0,192,200,16,32,
|
|
||||||
64,152,24,5,7,7,6,0,0,96,144,160,64,168,144,104,
|
|
||||||
2,3,3,6,1,4,192,64,128,3,7,7,6,1,0,32,
|
|
||||||
64,128,128,128,64,32,3,7,7,6,1,0,128,64,32,32,
|
|
||||||
32,64,128,5,5,5,6,0,1,32,168,112,168,32,5,5,
|
|
||||||
5,6,0,1,32,32,248,32,32,2,3,3,6,2,255,192,
|
|
||||||
64,128,5,1,1,6,0,3,248,2,2,2,6,2,0,192,
|
|
||||||
192,5,5,5,6,0,1,8,16,32,64,128,5,7,7,6,
|
|
||||||
0,0,112,136,152,168,200,136,112,3,7,7,6,1,0,64,
|
|
||||||
192,64,64,64,64,224,5,7,7,6,0,0,112,136,8,112,
|
|
||||||
128,128,248,5,7,7,6,0,0,248,16,32,16,8,8,240,
|
|
||||||
5,7,7,6,0,0,16,48,80,144,248,16,16,5,7,7,
|
|
||||||
6,0,0,248,128,240,8,8,136,112,5,7,7,6,0,0,
|
|
||||||
112,128,128,240,136,136,112,5,7,7,6,0,0,248,8,16,
|
|
||||||
32,32,32,32,5,7,7,6,0,0,112,136,136,112,136,136,
|
|
||||||
112,5,7,7,6,0,0,112,136,136,120,8,8,112,2,5,
|
|
||||||
5,6,2,0,192,192,0,192,192,2,6,6,6,2,255,192,
|
|
||||||
192,0,192,64,128,4,7,7,6,0,0,16,32,64,128,64,
|
|
||||||
32,16,5,3,3,6,0,2,248,0,248,4,7,7,6,0,
|
|
||||||
0,128,64,32,16,32,64,128,5,7,7,6,0,0,112,136,
|
|
||||||
8,16,32,0,32,5,7,7,6,0,0,112,136,8,104,168,
|
|
||||||
168,112,5,7,7,6,0,0,112,136,136,248,136,136,136,5,
|
|
||||||
7,7,6,0,0,240,136,136,240,136,136,240,5,7,7,6,
|
|
||||||
0,0,112,136,128,128,128,136,112,5,7,7,6,0,0,240,
|
|
||||||
136,136,136,136,136,240,5,7,7,6,0,0,248,128,128,240,
|
|
||||||
128,128,248,5,7,7,6,0,0,248,128,128,240,128,128,128,
|
|
||||||
5,7,7,6,0,0,112,136,128,184,136,136,112,5,7,7,
|
|
||||||
6,0,0,136,136,136,248,136,136,136,1,7,7,6,2,0,
|
|
||||||
128,128,128,128,128,128,128,5,7,7,6,0,0,56,16,16,
|
|
||||||
16,16,144,96,5,7,7,6,0,0,136,144,160,192,160,144,
|
|
||||||
136,5,7,7,6,0,0,128,128,128,128,128,128,248,5,7,
|
|
||||||
7,6,0,0,136,216,168,136,136,136,136,5,7,7,6,0,
|
|
||||||
0,136,136,200,168,152,136,136,5,7,7,6,0,0,112,136,
|
|
||||||
136,136,136,136,112,5,7,7,6,0,0,240,136,136,240,128,
|
|
||||||
128,128,5,7,7,6,0,0,112,136,136,136,168,144,104,5,
|
|
||||||
7,7,6,0,0,240,136,136,240,160,144,136,5,7,7,6,
|
|
||||||
0,0,120,128,128,112,8,8,240,5,7,7,6,0,0,248,
|
|
||||||
32,32,32,32,32,32,5,7,7,6,0,0,136,136,136,136,
|
|
||||||
136,136,112,5,7,7,6,0,0,136,136,136,136,136,80,32,
|
|
||||||
5,7,7,6,0,0,136,136,136,136,136,168,80,5,7,7,
|
|
||||||
6,0,0,136,136,80,32,80,136,136,5,7,7,6,0,0,
|
|
||||||
136,136,136,80,32,32,32,5,7,7,6,0,0,248,8,16,
|
|
||||||
32,64,128,248,3,7,7,6,0,0,224,128,128,128,128,128,
|
|
||||||
224,5,5,5,6,0,1,128,64,32,16,8,3,7,7,6,
|
|
||||||
0,0,224,32,32,32,32,32,224,5,3,3,6,0,4,32,
|
|
||||||
80,136,5,1,1,6,0,0,248,2,2,2,6,2,5,128,
|
|
||||||
64,5,5,5,6,0,0,112,8,120,136,120,5,7,7,6,
|
|
||||||
0,0,128,128,176,200,136,136,240,5,5,5,6,0,0,112,
|
|
||||||
128,128,136,112,5,7,7,6,0,0,8,8,104,152,136,136,
|
|
||||||
120,5,5,5,6,0,0,112,136,248,128,112,5,7,7,6,
|
|
||||||
0,0,48,72,224,64,64,64,64,5,6,6,6,0,255,112,
|
|
||||||
136,136,120,8,112,5,7,7,6,0,0,128,128,176,200,136,
|
|
||||||
136,136,1,7,7,6,2,0,128,0,128,128,128,128,128,3,
|
|
||||||
8,8,6,1,255,32,0,32,32,32,32,160,64,4,7,7,
|
|
||||||
6,1,0,128,128,144,160,192,160,144,3,7,7,6,1,0,
|
|
||||||
192,64,64,64,64,64,224,5,5,5,6,0,0,208,168,168,
|
|
||||||
168,168,5,5,5,6,0,0,176,200,136,136,136,5,5,5,
|
|
||||||
6,0,0,112,136,136,136,112,5,6,6,6,0,255,240,136,
|
|
||||||
136,240,128,128,5,6,6,6,0,255,120,136,136,120,8,8,
|
|
||||||
5,5,5,6,0,0,176,200,128,128,128,5,5,5,6,0,
|
|
||||||
0,112,128,112,8,240,4,7,7,6,0,0,64,64,224,64,
|
|
||||||
64,64,48,5,5,5,6,0,0,136,136,136,152,104,5,5,
|
|
||||||
5,6,0,0,136,136,136,80,32,5,5,5,6,0,0,136,
|
|
||||||
136,168,168,80,5,5,5,6,0,0,136,80,32,80,136,5,
|
|
||||||
6,6,6,0,255,136,136,136,120,8,112,5,5,5,6,0,
|
|
||||||
0,248,16,32,64,248,3,7,7,6,1,0,32,64,64,128,
|
|
||||||
64,64,32,1,7,7,6,2,0,128,128,128,128,128,128,128,
|
|
||||||
3,7,7,6,1,0,128,64,64,32,64,64,128,5,2,2,
|
|
||||||
6,0,3,104,144,0,0,0,6,5,255,0,0,0,12,11,
|
|
||||||
255,0,0,0,12,11,255,10,12,24,12,1,255,0,128,248,
|
|
||||||
128,8,128,8,128,8,192,16,128,32,128,192,128,0,128,0,
|
|
||||||
128,0,128,0,128,11,12,24,12,1,255,248,128,8,128,8,
|
|
||||||
128,8,224,16,128,32,128,192,128,0,0,63,128,0,128,0,
|
|
||||||
128,0,128,11,12,24,12,1,255,248,128,8,128,8,128,8,
|
|
||||||
224,16,128,32,128,192,128,31,0,32,128,32,128,32,128,31,
|
|
||||||
0,9,11,22,12,1,0,2,128,250,128,10,128,10,128,10,
|
|
||||||
128,19,128,34,128,194,128,2,128,2,128,2,128,9,12,24,
|
|
||||||
12,1,255,0,128,252,128,4,128,4,128,5,128,8,128,16,
|
|
||||||
128,32,128,64,128,0,128,0,128,0,128,9,12,24,12,1,
|
|
||||||
255,252,128,4,128,4,128,9,128,16,128,32,128,192,128,31,
|
|
||||||
128,16,128,16,128,16,128,31,128,11,9,18,12,0,0,127,
|
|
||||||
192,0,64,0,64,0,64,4,64,4,64,4,0,4,0,255,
|
|
||||||
224,11,12,24,12,1,255,127,128,0,128,0,128,8,128,8,
|
|
||||||
128,255,224,0,0,31,0,32,128,32,128,32,128,31,0,12,
|
|
||||||
12,24,12,0,255,0,64,126,64,2,64,2,64,18,64,18,
|
|
||||||
112,18,64,16,64,255,64,0,64,0,64,0,64,11,9,18,
|
|
||||||
12,0,0,127,192,0,64,0,64,0,64,18,64,18,64,18,
|
|
||||||
0,18,0,255,224,10,12,24,12,1,255,127,128,0,128,0,
|
|
||||||
128,0,128,255,192,0,0,0,0,64,128,127,128,64,128,64,
|
|
||||||
128,127,128,9,12,24,12,1,255,0,128,252,128,4,128,4,
|
|
||||||
128,4,128,8,128,16,128,32,128,192,128,0,128,0,128,0,
|
|
||||||
128,10,12,24,12,1,255,130,64,130,64,130,64,131,192,130,
|
|
||||||
64,250,64,0,0,31,0,32,128,32,128,32,128,31,0,11,
|
|
||||||
9,18,12,0,0,32,0,32,0,32,0,32,0,63,192,4,
|
|
||||||
0,4,0,4,0,255,224,11,12,24,12,0,255,32,0,32,
|
|
||||||
0,32,0,32,0,63,192,0,0,255,224,4,0,4,0,4,
|
|
||||||
0,4,0,4,0,11,12,24,12,1,255,0,128,252,128,128,
|
|
||||||
128,128,128,128,128,128,224,128,128,254,128,0,128,0,128,0,
|
|
||||||
128,0,128,10,12,24,12,1,255,2,64,250,64,130,64,130,
|
|
||||||
64,130,64,131,192,130,64,250,64,2,64,2,64,2,64,2,
|
|
||||||
64,11,9,18,12,0,0,63,192,32,0,32,0,32,0,63,
|
|
||||||
192,4,0,4,0,4,0,255,224,11,12,24,12,0,255,63,
|
|
||||||
192,32,0,32,0,63,192,4,0,255,224,0,0,63,192,0,
|
|
||||||
64,63,192,32,0,63,192,11,12,24,12,0,255,127,192,64,
|
|
||||||
0,64,0,127,192,4,0,4,0,255,224,0,0,63,128,64,
|
|
||||||
64,64,64,63,128,9,12,24,12,1,255,0,128,254,128,128,
|
|
||||||
128,128,128,128,128,254,128,16,128,16,128,255,128,0,128,0,
|
|
||||||
128,0,128,11,9,18,12,0,0,63,192,32,0,32,0,32,
|
|
||||||
0,63,192,0,0,0,0,0,0,255,224,9,12,24,12,1,
|
|
||||||
255,252,128,128,128,128,128,128,128,128,128,252,128,0,128,31,
|
|
||||||
0,32,128,32,128,32,128,31,0,11,12,24,12,1,255,0,
|
|
||||||
128,252,128,4,128,4,128,252,128,128,224,128,128,128,128,252,
|
|
||||||
128,0,128,0,128,0,128,10,12,24,12,1,255,250,64,10,
|
|
||||||
64,10,64,251,192,130,64,130,64,250,64,0,0,63,192,0,
|
|
||||||
64,0,64,0,64,11,12,24,12,1,255,252,128,4,128,4,
|
|
||||||
224,252,128,128,224,252,128,0,128,31,0,32,128,32,128,32,
|
|
||||||
128,31,0,10,12,24,12,1,255,1,64,241,64,17,64,17,
|
|
||||||
64,247,64,129,64,129,64,129,64,241,64,1,64,1,64,1,
|
|
||||||
64,9,12,24,12,1,255,0,128,248,128,8,128,11,128,248,
|
|
||||||
128,128,128,131,128,128,128,252,128,0,128,0,128,0,128,9,
|
|
||||||
12,24,12,1,255,248,128,8,128,11,128,248,128,131,128,128,
|
|
||||||
128,248,128,0,0,63,128,0,128,0,128,0,128,11,10,20,
|
|
||||||
12,0,0,63,192,0,64,0,64,63,192,32,0,32,0,63,
|
|
||||||
192,4,0,4,0,255,224,11,10,20,12,0,0,63,192,0,
|
|
||||||
64,0,64,63,192,32,0,32,0,63,192,9,0,9,0,255,
|
|
||||||
224,11,10,20,12,0,0,63,192,0,64,0,64,63,192,32,
|
|
||||||
0,32,0,63,192,0,0,0,0,255,224,9,12,24,12,1,
|
|
||||||
255,0,128,252,128,4,128,4,128,252,128,128,128,128,128,128,
|
|
||||||
128,252,128,0,128,0,128,0,128,9,12,24,12,1,255,252,
|
|
||||||
128,4,128,4,128,252,128,128,128,128,128,252,128,0,128,32,
|
|
||||||
128,32,0,32,0,63,128,9,12,24,12,1,255,252,128,4,
|
|
||||||
128,4,128,252,128,128,128,252,128,0,128,31,0,32,128,32,
|
|
||||||
128,32,128,31,0,9,12,24,12,1,255,2,128,250,128,138,
|
|
||||||
128,138,128,142,128,138,128,138,128,250,128,2,128,2,128,2,
|
|
||||||
128,2,128,10,12,24,12,1,255,1,64,249,64,137,64,139,
|
|
||||||
64,137,64,249,64,1,64,1,64,33,64,32,0,32,0,63,
|
|
||||||
192,9,12,24,12,1,255,252,128,132,128,133,128,132,128,133,
|
|
||||||
128,252,128,0,128,0,128,32,0,32,0,32,0,63,128,11,
|
|
||||||
9,18,12,0,0,127,192,64,64,64,64,64,64,127,192,4,
|
|
||||||
0,4,0,4,0,255,224,9,12,24,12,1,255,132,128,132,
|
|
||||||
128,132,128,132,128,255,128,132,128,132,128,252,128,0,128,0,
|
|
||||||
128,0,128,0,128,10,12,24,12,1,255,1,64,137,64,137,
|
|
||||||
64,137,64,251,64,137,64,137,64,249,64,1,64,1,64,1,
|
|
||||||
64,1,64,9,12,24,12,1,255,138,128,138,128,250,128,142,
|
|
||||||
128,138,128,250,128,0,0,63,128,0,128,63,128,32,0,63,
|
|
||||||
128,11,10,20,12,0,1,32,64,32,64,63,192,32,64,32,
|
|
||||||
64,63,192,4,0,4,0,4,0,255,224,10,11,22,12,1,
|
|
||||||
0,64,128,64,128,127,128,64,128,127,128,0,0,255,192,8,
|
|
||||||
0,8,0,8,0,8,0,11,12,24,12,0,255,32,64,63,
|
|
||||||
192,32,64,32,64,63,192,0,0,255,224,2,0,34,0,32,
|
|
||||||
0,32,0,63,192,9,12,24,12,1,255,132,128,132,128,132,
|
|
||||||
128,132,128,252,128,132,128,132,128,252,128,0,128,0,128,0,
|
|
||||||
128,0,128,10,12,24,12,1,255,16,128,16,128,16,192,40,
|
|
||||||
128,68,128,130,128,0,0,64,128,127,128,64,128,64,128,127,
|
|
||||||
128,11,12,24,12,0,255,0,160,16,160,16,160,16,160,16,
|
|
||||||
160,16,224,40,160,68,160,130,160,0,160,0,160,0,160,10,
|
|
||||||
12,24,12,0,255,0,64,16,64,16,64,16,64,17,192,40,
|
|
||||||
64,68,64,130,64,0,64,0,64,0,64,0,64,10,12,24,
|
|
||||||
12,0,255,16,64,16,64,17,192,40,64,68,64,130,64,0,
|
|
||||||
0,31,192,0,64,31,192,16,0,31,192,11,12,24,12,0,
|
|
||||||
255,0,160,16,160,16,160,16,160,17,160,16,160,40,160,68,
|
|
||||||
160,130,160,0,160,0,160,0,160,11,12,24,12,0,255,16,
|
|
||||||
160,16,160,16,160,17,160,40,160,68,160,130,160,0,160,16,
|
|
||||||
160,16,0,16,0,31,224,10,12,24,12,1,255,1,64,33,
|
|
||||||
64,33,64,35,64,81,64,137,64,1,64,5,64,4,0,10,
|
|
||||||
0,17,0,32,128,11,10,20,12,0,0,4,0,4,0,4,
|
|
||||||
0,10,0,17,0,32,128,68,64,4,0,4,0,255,224,11,
|
|
||||||
12,24,12,0,255,4,0,4,0,10,0,17,0,36,128,4,
|
|
||||||
0,255,224,0,0,63,128,0,128,0,128,0,128,11,9,18,
|
|
||||||
12,0,0,4,0,4,0,10,0,17,0,32,128,64,64,128,
|
|
||||||
32,0,0,255,224,9,12,24,12,1,255,0,128,16,128,16,
|
|
||||||
128,16,128,16,128,40,128,68,128,130,128,0,128,0,128,0,
|
|
||||||
128,0,128,9,12,24,12,1,255,0,128,16,128,16,128,40,
|
|
||||||
128,68,128,130,128,0,0,63,128,0,128,63,128,32,0,63,
|
|
||||||
128,11,12,24,12,1,255,120,128,132,128,132,128,132,224,132,
|
|
||||||
128,120,128,0,0,64,128,127,128,64,128,64,128,127,128,9,
|
|
||||||
12,24,12,1,255,0,128,120,128,132,128,132,128,133,128,132,
|
|
||||||
128,132,128,132,128,120,128,0,128,0,128,0,128,10,12,24,
|
|
||||||
12,1,255,120,128,132,128,132,128,133,128,132,128,120,128,0,
|
|
||||||
128,72,0,121,0,73,0,74,128,124,64,9,12,24,12,1,
|
|
||||||
255,120,128,133,128,132,128,132,128,133,128,120,128,0,0,63,
|
|
||||||
128,0,128,63,128,32,0,63,128,10,12,24,12,1,255,1,
|
|
||||||
64,113,64,139,64,137,64,137,64,137,64,139,64,137,64,113,
|
|
||||||
64,1,64,1,64,1,64,11,9,18,12,0,0,31,0,32,
|
|
||||||
128,32,128,32,128,31,0,0,0,4,0,4,0,255,224,12,
|
|
||||||
12,24,12,0,255,31,128,32,64,32,64,32,64,31,128,4,
|
|
||||||
0,255,240,0,0,32,0,32,0,32,0,63,192,12,12,24,
|
|
||||||
12,0,255,60,64,66,64,66,64,66,64,60,112,16,64,255,
|
|
||||||
64,0,64,32,64,32,0,32,0,63,192,11,9,18,12,0,
|
|
||||||
0,31,128,32,64,32,64,32,64,31,128,0,0,16,128,16,
|
|
||||||
128,255,224,12,12,24,12,0,255,31,128,32,64,32,64,31,
|
|
||||||
128,0,0,17,0,255,240,0,0,31,128,32,64,32,64,31,
|
|
||||||
128,9,12,24,12,1,255,120,128,132,128,132,128,120,128,0,
|
|
||||||
128,255,128,16,128,23,128,16,128,64,0,64,0,127,128,10,
|
|
||||||
12,24,12,0,255,60,64,66,64,66,64,66,64,60,64,0,
|
|
||||||
64,255,192,8,64,8,64,8,64,8,64,8,64,12,9,18,
|
|
||||||
12,0,0,31,128,32,64,32,64,32,64,31,128,0,0,0,
|
|
||||||
0,0,0,255,240,12,12,24,12,0,255,31,128,32,64,32,
|
|
||||||
64,31,128,0,0,255,240,0,0,63,192,32,64,32,64,32,
|
|
||||||
64,63,192,10,12,24,12,0,255,0,64,60,64,66,64,66,
|
|
||||||
64,66,64,60,64,0,64,0,64,255,192,0,64,0,64,0,
|
|
||||||
64,9,12,24,12,1,255,0,128,120,128,132,128,132,128,132,
|
|
||||||
128,132,128,132,128,132,128,120,128,0,128,0,128,0,128,9,
|
|
||||||
12,24,12,1,255,120,128,132,128,132,128,132,128,132,128,120,
|
|
||||||
128,0,128,0,128,32,128,32,0,32,0,63,128,9,12,24,
|
|
||||||
12,1,255,120,128,132,128,132,128,132,128,132,128,120,128,0,
|
|
||||||
0,63,128,0,128,63,128,32,0,63,128,9,12,24,12,1,
|
|
||||||
255,120,128,132,128,132,128,132,128,132,128,120,128,0,0,32,
|
|
||||||
128,32,128,63,128,32,128,63,128,11,12,24,12,1,255,0,
|
|
||||||
128,248,128,8,128,8,128,16,128,40,224,68,128,130,128,0,
|
|
||||||
128,0,128,0,128,0,128,11,12,24,12,1,255,248,128,8,
|
|
||||||
128,8,128,16,224,40,128,198,128,0,128,127,0,0,128,0,
|
|
||||||
128,0,128,0,128,11,12,24,12,1,255,248,128,8,128,8,
|
|
||||||
128,16,224,40,128,198,128,0,0,31,0,32,128,32,128,32,
|
|
||||||
128,31,0,11,12,24,12,0,255,0,160,248,160,8,160,8,
|
|
||||||
160,16,160,40,224,68,160,130,160,0,160,0,160,0,160,0,
|
|
||||||
160,9,12,24,12,1,255,0,128,248,128,8,128,8,128,19,
|
|
||||||
128,40,128,68,128,130,128,0,128,0,128,0,128,0,128,9,
|
|
||||||
12,24,12,1,255,248,128,8,128,9,128,16,128,40,128,198,
|
|
||||||
128,0,0,63,128,0,128,0,128,0,128,0,128,9,12,24,
|
|
||||||
12,1,255,248,128,8,128,8,128,17,128,40,128,198,128,0,
|
|
||||||
128,0,128,32,0,32,0,32,0,63,128,9,12,24,12,1,
|
|
||||||
255,248,128,8,128,9,128,16,128,40,128,198,128,0,0,63,
|
|
||||||
128,0,128,63,128,32,0,63,128,9,12,24,12,1,255,248,
|
|
||||||
128,8,128,8,128,17,128,40,128,198,128,0,0,63,128,32,
|
|
||||||
128,32,128,32,128,63,128,9,12,24,12,1,255,248,128,8,
|
|
||||||
128,8,128,17,128,40,128,198,128,0,0,31,0,32,128,32,
|
|
||||||
128,32,128,31,0,11,12,24,12,0,255,0,160,248,160,8,
|
|
||||||
160,8,160,17,160,40,160,68,160,130,160,0,160,0,160,0,
|
|
||||||
160,0,160,11,12,24,12,0,255,63,128,4,0,10,0,17,
|
|
||||||
0,32,128,4,0,255,224,0,0,63,128,0,128,0,128,0,
|
|
||||||
128,11,12,24,12,0,255,127,192,4,0,10,0,17,0,96,
|
|
||||||
192,4,0,255,224,0,0,63,128,64,64,64,64,63,128,11,
|
|
||||||
12,24,12,0,255,0,64,127,64,8,64,28,64,34,64,65,
|
|
||||||
96,8,64,8,64,255,192,0,64,0,64,0,64,11,12,24,
|
|
||||||
10,0,255,127,192,4,0,10,0,17,0,96,192,0,0,255,
|
|
||||||
224,4,0,36,0,32,0,32,0,63,192,11,12,24,12,0,
|
|
||||||
255,63,128,4,0,10,0,49,128,0,0,255,224,4,0,0,
|
|
||||||
0,31,0,32,128,32,128,31,0,11,12,24,12,0,255,63,
|
|
||||||
128,4,0,10,0,49,128,0,0,255,224,0,0,63,128,0,
|
|
||||||
128,63,128,32,0,63,128,9,12,24,12,1,255,0,128,252,
|
|
||||||
128,4,128,8,128,16,128,40,128,68,128,130,128,0,128,0,
|
|
||||||
128,0,128,0,128,10,12,24,12,0,255,0,64,56,64,0,
|
|
||||||
64,254,64,16,192,40,64,68,64,130,64,0,64,0,64,0,
|
|
||||||
64,0,64,11,12,24,12,0,255,0,160,56,160,0,160,254,
|
|
||||||
160,16,160,41,160,68,160,130,160,0,160,0,160,0,160,0,
|
|
||||||
160,11,10,20,12,0,1,14,0,0,0,63,128,4,0,10,
|
|
||||||
0,17,0,96,192,4,0,4,0,255,224,11,12,24,12,0,
|
|
||||||
255,28,32,0,32,127,32,8,32,20,32,34,32,193,160,8,
|
|
||||||
32,255,224,0,32,0,32,0,32,11,12,24,12,0,255,14,
|
|
||||||
0,0,0,63,128,4,0,10,0,49,128,0,0,255,224,4,
|
|
||||||
0,63,128,0,128,0,128,11,12,24,12,0,255,4,0,63,
|
|
||||||
128,4,0,10,0,49,128,255,224,4,0,63,128,0,128,63,
|
|
||||||
128,32,0,63,128,11,12,24,12,0,255,4,0,63,128,4,
|
|
||||||
0,10,0,49,128,0,0,255,224,4,0,31,0,32,128,32,
|
|
||||||
128,31,0,10,12,24,12,0,255,28,64,0,64,127,64,8,
|
|
||||||
64,20,64,99,64,0,64,255,192,8,64,8,64,8,64,8,
|
|
||||||
64,11,12,24,12,0,255,28,32,0,32,127,32,8,32,20,
|
|
||||||
32,34,32,65,32,128,160,0,32,0,32,0,32,0,32,9,
|
|
||||||
12,24,12,1,255,56,128,0,128,254,128,16,128,40,128,68,
|
|
||||||
128,130,128,0,0,63,128,32,128,32,128,63,128,10,14,28,
|
|
||||||
12,1,253,0,128,248,128,8,128,8,128,248,192,16,128,32,
|
|
||||||
128,64,128,128,128,0,128,0,128,0,128,0,0,128,0,9,
|
|
||||||
12,24,12,1,255,0,128,248,128,128,128,128,128,251,128,128,
|
|
||||||
128,128,128,128,128,248,128,0,128,0,128,0,128,11,10,20,
|
|
||||||
12,0,0,63,192,32,0,32,0,63,192,32,0,32,0,63,
|
|
||||||
192,0,0,0,0,255,224,11,12,24,12,0,255,63,192,32,
|
|
||||||
0,63,192,32,0,63,192,0,0,255,224,0,0,32,0,32,
|
|
||||||
0,32,0,63,192,11,12,24,12,0,255,0,160,254,160,40,
|
|
||||||
160,40,160,40,224,40,160,40,160,254,160,0,160,0,160,0,
|
|
||||||
160,0,160,11,12,24,12,0,255,0,160,254,160,40,160,40,
|
|
||||||
224,40,160,254,160,0,160,0,160,16,160,16,0,16,0,31,
|
|
||||||
224,11,9,18,12,0,0,127,192,17,0,17,0,17,0,127,
|
|
||||||
192,0,0,4,0,4,0,255,224,11,9,18,12,0,0,127,
|
|
||||||
192,17,0,17,0,17,0,127,192,0,0,0,0,0,0,255,
|
|
||||||
224,9,12,24,12,1,255,252,128,72,128,72,128,72,128,72,
|
|
||||||
128,252,128,0,0,63,128,0,128,63,128,32,0,63,128,10,
|
|
||||||
12,24,12,1,255,56,128,0,128,254,128,0,128,124,128,130,
|
|
||||||
192,130,128,130,128,124,128,0,128,0,128,0,128,11,12,24,
|
|
||||||
12,0,255,14,0,63,128,0,0,31,0,32,128,31,0,4,
|
|
||||||
0,255,224,0,0,63,128,32,128,63,128,12,12,24,12,0,
|
|
||||||
255,28,64,0,64,127,64,0,64,62,64,65,112,62,64,0,
|
|
||||||
64,8,64,255,192,0,64,0,64,0,0,0,12,9,0,0,
|
|
||||||
0,0,12,10,0,0,0,0,12,10,2,0,0,0,12,10,
|
|
||||||
0,0,0,0,12,10,0,0,0,0,12,10,0,0,0,0,
|
|
||||||
12,10,0,0,0,0,12,10,0,0,0,0,12,10,0};
|
|
||||||
@@ -1,45 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
Fontname: Marlin_symbols
|
|
||||||
Copyright: Created with Fony 1.4.7
|
|
||||||
Capital A Height: 0, '1' Height: 0
|
|
||||||
Calculated Max Values w= 5 h=10 x= 0 y= 3 dx= 6 dy= 0 ascent= 8 len=10
|
|
||||||
Font Bounding box w= 6 h= 9 x= 0 y=-2
|
|
||||||
Calculated Min Values x= 0 y=-2 dx= 0 dy= 0
|
|
||||||
Pure Font ascent = 0 descent= 0
|
|
||||||
X Font ascent = 0 descent= 0
|
|
||||||
Max Font ascent = 8 descent=-2
|
|
||||||
*/
|
|
||||||
#include <U8glib.h>
|
|
||||||
const u8g_fntpgm_uint8_t Marlin_symbols[140] U8G_SECTION(".progmem.Marlin_symbols") = {
|
|
||||||
0, 6, 9, 0, 254, 0, 0, 0, 0, 0, 1, 9, 0, 8, 254, 0,
|
|
||||||
0, 5, 8, 8, 6, 0, 0, 64, 240, 200, 136, 136, 152, 120, 16, 5,
|
|
||||||
8, 8, 6, 0, 0, 192, 248, 136, 136, 136, 136, 136, 248, 5, 5, 5,
|
|
||||||
6, 0, 1, 32, 48, 248, 48, 32, 5, 8, 8, 6, 0, 0, 32, 112,
|
|
||||||
248, 32, 32, 32, 32, 224, 5, 9, 9, 6, 0, 255, 32, 112, 168, 168,
|
|
||||||
184, 136, 136, 112, 32, 5, 9, 9, 6, 0, 255, 224, 128, 192, 176, 168,
|
|
||||||
40, 48, 40, 40, 5, 9, 9, 6, 0, 255, 248, 168, 136, 136, 136, 136,
|
|
||||||
136, 168, 248, 5, 10, 10, 6, 0, 254, 32, 80, 80, 80, 80, 136, 168,
|
|
||||||
168, 136, 112, 3, 3, 3, 6, 0, 3, 64, 160, 64
|
|
||||||
};
|
|
||||||
@@ -1,73 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#ifndef _DRIVERS_H_
|
|
||||||
#define _DRIVERS_H_
|
|
||||||
|
|
||||||
#include "MarlinConfig.h"
|
|
||||||
|
|
||||||
#define A4988 0x001
|
|
||||||
#define DRV8825 0x002
|
|
||||||
#define LV8729 0x003
|
|
||||||
#define L6470 0x104
|
|
||||||
#define TB6560 0x005
|
|
||||||
#define TB6600 0x006
|
|
||||||
#define TMC2100 0x007
|
|
||||||
#define TMC2130 0x108
|
|
||||||
#define TMC2130_STANDALONE 0x008
|
|
||||||
#define TMC2208 0x109
|
|
||||||
#define TMC2208_STANDALONE 0x009
|
|
||||||
#define TMC26X 0x10A
|
|
||||||
#define TMC26X_STANDALONE 0x00A
|
|
||||||
#define TMC2660 0x10B
|
|
||||||
#define TMC2660_STANDALONE 0x00B
|
|
||||||
|
|
||||||
#define _AXIS_DRIVER_TYPE(A,T) ( defined(A##_DRIVER_TYPE) && (A##_DRIVER_TYPE == T) )
|
|
||||||
|
|
||||||
#define AXIS_DRIVER_TYPE_X(T) _AXIS_DRIVER_TYPE(X,T)
|
|
||||||
#define AXIS_DRIVER_TYPE_Y(T) _AXIS_DRIVER_TYPE(Y,T)
|
|
||||||
#define AXIS_DRIVER_TYPE_Z(T) _AXIS_DRIVER_TYPE(Z,T)
|
|
||||||
#define AXIS_DRIVER_TYPE_X2(T) (ENABLED(X_DUAL_STEPPER_DRIVERS) || ENABLED(DUAL_X_CARRIAGE)) && _AXIS_DRIVER_TYPE(X2,T)
|
|
||||||
#define AXIS_DRIVER_TYPE_Y2(T) (ENABLED(Y_DUAL_STEPPER_DRIVERS) && _AXIS_DRIVER_TYPE(Y2,T))
|
|
||||||
#define AXIS_DRIVER_TYPE_Z2(T) (ENABLED(Z_DUAL_STEPPER_DRIVERS) && _AXIS_DRIVER_TYPE(Z2,T))
|
|
||||||
#define AXIS_DRIVER_TYPE_E0(T) (E_STEPPERS > 0 && _AXIS_DRIVER_TYPE(E0,T))
|
|
||||||
#define AXIS_DRIVER_TYPE_E1(T) (E_STEPPERS > 1 && _AXIS_DRIVER_TYPE(E1,T))
|
|
||||||
#define AXIS_DRIVER_TYPE_E2(T) (E_STEPPERS > 2 && _AXIS_DRIVER_TYPE(E2,T))
|
|
||||||
#define AXIS_DRIVER_TYPE_E3(T) (E_STEPPERS > 3 && _AXIS_DRIVER_TYPE(E3,T))
|
|
||||||
#define AXIS_DRIVER_TYPE_E4(T) (E_STEPPERS > 4 && _AXIS_DRIVER_TYPE(E4,T))
|
|
||||||
|
|
||||||
#define AXIS_DRIVER_TYPE(A,T) AXIS_DRIVER_TYPE_##A(T)
|
|
||||||
|
|
||||||
#define HAS_DRIVER(T) (AXIS_DRIVER_TYPE_X(T) || AXIS_DRIVER_TYPE_X2(T) || \
|
|
||||||
AXIS_DRIVER_TYPE_Y(T) || AXIS_DRIVER_TYPE_Y2(T) || \
|
|
||||||
AXIS_DRIVER_TYPE_Z(T) || AXIS_DRIVER_TYPE_Z2(T) || \
|
|
||||||
AXIS_DRIVER_TYPE_E0(T) || AXIS_DRIVER_TYPE_E1(T) || \
|
|
||||||
AXIS_DRIVER_TYPE_E2(T) || AXIS_DRIVER_TYPE_E3(T) || \
|
|
||||||
AXIS_DRIVER_TYPE_E4(T) )
|
|
||||||
|
|
||||||
// Test for supported TMC drivers that require advanced configuration
|
|
||||||
// Does not match standalone configurations
|
|
||||||
#define HAS_TRINAMIC (HAS_DRIVER(TMC2130) || HAS_DRIVER(TMC2208))
|
|
||||||
|
|
||||||
#define AXIS_IS_TMC(A) ( AXIS_DRIVER_TYPE_##A(TMC2130) || \
|
|
||||||
AXIS_DRIVER_TYPE_##A(TMC2208) )
|
|
||||||
|
|
||||||
#endif // _DRIVERS_H_
|
|
||||||
@@ -1,239 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Endstop Interrupts
|
|
||||||
*
|
|
||||||
* Without endstop interrupts the endstop pins must be polled continually in
|
|
||||||
* the temperature-ISR via endstops.update(), most of the time finding no change.
|
|
||||||
* With this feature endstops.update() is called only when we know that at
|
|
||||||
* least one endstop has changed state, saving valuable CPU cycles.
|
|
||||||
*
|
|
||||||
* This feature only works when all used endstop pins can generate either an
|
|
||||||
* 'external interrupt' or a 'pin change interrupt'.
|
|
||||||
*
|
|
||||||
* Test whether pins issue interrupts on your board by flashing 'pin_interrupt_test.ino'.
|
|
||||||
* (Located in Marlin/buildroot/share/pin_interrupt_test/pin_interrupt_test.ino)
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef _ENDSTOP_INTERRUPTS_H_
|
|
||||||
#define _ENDSTOP_INTERRUPTS_H_
|
|
||||||
|
|
||||||
#include "macros.h"
|
|
||||||
|
|
||||||
// One ISR for all EXT-Interrupts
|
|
||||||
void endstop_ISR(void) { endstops.update(); }
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Patch for pins_arduino.h (...\Arduino\hardware\arduino\avr\variants\mega\pins_arduino.h)
|
|
||||||
*
|
|
||||||
* These macros for the Arduino MEGA do not include the two connected pins on Port J (D13, D14).
|
|
||||||
* So we extend them here because these are the normal pins for Y_MIN and Y_MAX on RAMPS.
|
|
||||||
* There are more PCI-enabled processor pins on Port J, but they are not connected to Arduino MEGA.
|
|
||||||
*/
|
|
||||||
#if defined(ARDUINO_AVR_MEGA2560) || defined(ARDUINO_AVR_MEGA)
|
|
||||||
#undef digitalPinToPCICR
|
|
||||||
#define digitalPinToPCICR(p) ( WITHIN(p, 10, 15) || \
|
|
||||||
WITHIN(p, 50, 53) || \
|
|
||||||
WITHIN(p, 62, 69) ? &PCICR : (uint8_t*)0 )
|
|
||||||
#undef digitalPinToPCICRbit
|
|
||||||
#define digitalPinToPCICRbit(p) ( WITHIN(p, 10, 13) || WITHIN(p, 50, 53) ? 0 : \
|
|
||||||
WITHIN(p, 14, 15) ? 1 : \
|
|
||||||
WITHIN(p, 62, 69) ? 2 : \
|
|
||||||
0 )
|
|
||||||
#undef digitalPinToPCMSK
|
|
||||||
#define digitalPinToPCMSK(p) ( WITHIN(p, 10, 13) || WITHIN(p, 50, 53) ? &PCMSK0 : \
|
|
||||||
WITHIN(p, 14, 15) ? &PCMSK1 : \
|
|
||||||
WITHIN(p, 62, 69) ? &PCMSK2 : \
|
|
||||||
(uint8_t *)0 )
|
|
||||||
#undef digitalPinToPCMSKbit
|
|
||||||
#define digitalPinToPCMSKbit(p) ( WITHIN(p, 10, 13) ? ((p) - 6) : \
|
|
||||||
(p) == 14 || (p) == 51 ? 2 : \
|
|
||||||
(p) == 15 || (p) == 52 ? 1 : \
|
|
||||||
(p) == 50 ? 3 : \
|
|
||||||
(p) == 53 ? 0 : \
|
|
||||||
WITHIN(p, 62, 69) ? ((p) - 62) : \
|
|
||||||
0 )
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
// Install Pin change interrupt for a pin. Can be called multiple times.
|
|
||||||
void pciSetup(const int8_t pin) {
|
|
||||||
SBI(*digitalPinToPCMSK(pin), digitalPinToPCMSKbit(pin)); // enable pin
|
|
||||||
SBI(PCIFR, digitalPinToPCICRbit(pin)); // clear any outstanding interrupt
|
|
||||||
SBI(PCICR, digitalPinToPCICRbit(pin)); // enable interrupt for the group
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// Handlers for pin change interrupts
|
|
||||||
#ifdef PCINT0_vect
|
|
||||||
ISR(PCINT0_vect) { endstop_ISR(); }
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef PCINT1_vect
|
|
||||||
ISR(PCINT1_vect) { endstop_ISR(); }
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef PCINT2_vect
|
|
||||||
ISR(PCINT2_vect) { endstop_ISR(); }
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef PCINT3_vect
|
|
||||||
ISR(PCINT3_vect) { endstop_ISR(); }
|
|
||||||
#endif
|
|
||||||
|
|
||||||
void setup_endstop_interrupts( void ) {
|
|
||||||
|
|
||||||
#if HAS_X_MAX
|
|
||||||
#if digitalPinToInterrupt(X_MAX_PIN) != NOT_AN_INTERRUPT // if pin has an external interrupt
|
|
||||||
attachInterrupt(digitalPinToInterrupt(X_MAX_PIN), endstop_ISR, CHANGE); // assign it
|
|
||||||
#else
|
|
||||||
// Not all used endstop/probe -pins can raise interrupts. Please deactivate ENDSTOP_INTERRUPTS or change the pin configuration!
|
|
||||||
static_assert(digitalPinToPCICR(X_MAX_PIN) != NULL, "X_MAX_PIN is not interrupt-capable"); // if pin has no pin change interrupt - error
|
|
||||||
pciSetup(X_MAX_PIN); // assign it
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if HAS_X_MIN
|
|
||||||
#if digitalPinToInterrupt(X_MIN_PIN) != NOT_AN_INTERRUPT
|
|
||||||
attachInterrupt(digitalPinToInterrupt(X_MIN_PIN), endstop_ISR, CHANGE);
|
|
||||||
#else
|
|
||||||
// Not all used endstop/probe -pins can raise interrupts. Please deactivate ENDSTOP_INTERRUPTS or change the pin configuration!
|
|
||||||
static_assert(digitalPinToPCICR(X_MIN_PIN) != NULL, "X_MIN_PIN is not interrupt-capable");
|
|
||||||
pciSetup(X_MIN_PIN);
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if HAS_Y_MAX
|
|
||||||
#if digitalPinToInterrupt(Y_MAX_PIN) != NOT_AN_INTERRUPT
|
|
||||||
attachInterrupt(digitalPinToInterrupt(Y_MAX_PIN), endstop_ISR, CHANGE);
|
|
||||||
#else
|
|
||||||
// Not all used endstop/probe -pins can raise interrupts. Please deactivate ENDSTOP_INTERRUPTS or change the pin configuration!
|
|
||||||
static_assert(digitalPinToPCICR(Y_MAX_PIN) != NULL, "Y_MAX_PIN is not interrupt-capable");
|
|
||||||
pciSetup(Y_MAX_PIN);
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if HAS_Y_MIN
|
|
||||||
#if digitalPinToInterrupt(Y_MIN_PIN) != NOT_AN_INTERRUPT
|
|
||||||
attachInterrupt(digitalPinToInterrupt(Y_MIN_PIN), endstop_ISR, CHANGE);
|
|
||||||
#else
|
|
||||||
// Not all used endstop/probe -pins can raise interrupts. Please deactivate ENDSTOP_INTERRUPTS or change the pin configuration!
|
|
||||||
static_assert(digitalPinToPCICR(Y_MIN_PIN) != NULL, "Y_MIN_PIN is not interrupt-capable");
|
|
||||||
pciSetup(Y_MIN_PIN);
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if HAS_Z_MAX
|
|
||||||
#if digitalPinToInterrupt(Z_MAX_PIN) != NOT_AN_INTERRUPT
|
|
||||||
attachInterrupt(digitalPinToInterrupt(Z_MAX_PIN), endstop_ISR, CHANGE);
|
|
||||||
#else
|
|
||||||
// Not all used endstop/probe -pins can raise interrupts. Please deactivate ENDSTOP_INTERRUPTS or change the pin configuration!
|
|
||||||
static_assert(digitalPinToPCICR(Z_MAX_PIN) != NULL, "Z_MAX_PIN is not interrupt-capable");
|
|
||||||
pciSetup(Z_MAX_PIN);
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if HAS_Z_MIN
|
|
||||||
#if digitalPinToInterrupt(Z_MIN_PIN) != NOT_AN_INTERRUPT
|
|
||||||
attachInterrupt(digitalPinToInterrupt(Z_MIN_PIN), endstop_ISR, CHANGE);
|
|
||||||
#else
|
|
||||||
// Not all used endstop/probe -pins can raise interrupts. Please deactivate ENDSTOP_INTERRUPTS or change the pin configuration!
|
|
||||||
static_assert(digitalPinToPCICR(Z_MIN_PIN) != NULL, "Z_MIN_PIN is not interrupt-capable");
|
|
||||||
pciSetup(Z_MIN_PIN);
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if HAS_X2_MAX
|
|
||||||
#if (digitalPinToInterrupt(X2_MAX_PIN) != NOT_AN_INTERRUPT)
|
|
||||||
attachInterrupt(digitalPinToInterrupt(X2_MAX_PIN), endstop_ISR, CHANGE);
|
|
||||||
#else
|
|
||||||
// Not all used endstop/probe -pins can raise interrupts. Please deactivate ENDSTOP_INTERRUPTS or change the pin configuration!
|
|
||||||
static_assert(digitalPinToPCICR(X2_MAX_PIN) != NULL, "X2_MAX_PIN is not interrupt-capable");
|
|
||||||
pciSetup(X2_MAX_PIN);
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if HAS_X2_MIN
|
|
||||||
#if (digitalPinToInterrupt(X2_MIN_PIN) != NOT_AN_INTERRUPT)
|
|
||||||
attachInterrupt(digitalPinToInterrupt(X2_MIN_PIN), endstop_ISR, CHANGE);
|
|
||||||
#else
|
|
||||||
// Not all used endstop/probe -pins can raise interrupts. Please deactivate ENDSTOP_INTERRUPTS or change the pin configuration!
|
|
||||||
static_assert(digitalPinToPCICR(X2_MIN_PIN) != NULL, "X2_MIN_PIN is not interrupt-capable");
|
|
||||||
pciSetup(X2_MIN_PIN);
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if HAS_Y2_MAX
|
|
||||||
#if (digitalPinToInterrupt(Y2_MAX_PIN) != NOT_AN_INTERRUPT)
|
|
||||||
attachInterrupt(digitalPinToInterrupt(Y2_MAX_PIN), endstop_ISR, CHANGE);
|
|
||||||
#else
|
|
||||||
// Not all used endstop/probe -pins can raise interrupts. Please deactivate ENDSTOP_INTERRUPTS or change the pin configuration!
|
|
||||||
static_assert(digitalPinToPCICR(Y2_MAX_PIN) != NULL, "Y2_MAX_PIN is not interrupt-capable");
|
|
||||||
pciSetup(Y2_MAX_PIN);
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if HAS_Y2_MIN
|
|
||||||
#if (digitalPinToInterrupt(Y2_MIN_PIN) != NOT_AN_INTERRUPT)
|
|
||||||
attachInterrupt(digitalPinToInterrupt(Y2_MIN_PIN), endstop_ISR, CHANGE);
|
|
||||||
#else
|
|
||||||
// Not all used endstop/probe -pins can raise interrupts. Please deactivate ENDSTOP_INTERRUPTS or change the pin configuration!
|
|
||||||
static_assert(digitalPinToPCICR(Y2_MIN_PIN) != NULL, "Y2_MIN_PIN is not interrupt-capable");
|
|
||||||
pciSetup(Y2_MIN_PIN);
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if HAS_Z2_MAX
|
|
||||||
#if digitalPinToInterrupt(Z2_MAX_PIN) != NOT_AN_INTERRUPT
|
|
||||||
attachInterrupt(digitalPinToInterrupt(Z2_MAX_PIN), endstop_ISR, CHANGE);
|
|
||||||
#else
|
|
||||||
// Not all used endstop/probe -pins can raise interrupts. Please deactivate ENDSTOP_INTERRUPTS or change the pin configuration!
|
|
||||||
static_assert(digitalPinToPCICR(Z2_MAX_PIN) != NULL, "Z2_MAX_PIN is not interrupt-capable");
|
|
||||||
pciSetup(Z2_MAX_PIN);
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if HAS_Z2_MIN
|
|
||||||
#if digitalPinToInterrupt(Z2_MIN_PIN) != NOT_AN_INTERRUPT
|
|
||||||
attachInterrupt(digitalPinToInterrupt(Z2_MIN_PIN), endstop_ISR, CHANGE);
|
|
||||||
#else
|
|
||||||
// Not all used endstop/probe -pins can raise interrupts. Please deactivate ENDSTOP_INTERRUPTS or change the pin configuration!
|
|
||||||
static_assert(digitalPinToPCICR(Z2_MIN_PIN) != NULL, "Z2_MIN_PIN is not interrupt-capable");
|
|
||||||
pciSetup(Z2_MIN_PIN);
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if HAS_Z_MIN_PROBE_PIN
|
|
||||||
#if digitalPinToInterrupt(Z_MIN_PROBE_PIN) != NOT_AN_INTERRUPT
|
|
||||||
attachInterrupt(digitalPinToInterrupt(Z_MIN_PROBE_PIN), endstop_ISR, CHANGE);
|
|
||||||
#else
|
|
||||||
// Not all used endstop/probe -pins can raise interrupts. Please deactivate ENDSTOP_INTERRUPTS or change the pin configuration!
|
|
||||||
static_assert(digitalPinToPCICR(Z_MIN_PROBE_PIN) != NULL, "Z_MIN_PROBE_PIN is not interrupt-capable");
|
|
||||||
pciSetup(Z_MIN_PROBE_PIN);
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// If we arrive here without raising an assertion, each pin has either an EXT-interrupt or a PCI.
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif // _ENDSTOP_INTERRUPTS_H_
|
|
||||||
175
Marlin/enum.h
175
Marlin/enum.h
@@ -1,175 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef __ENUM_H__
|
|
||||||
#define __ENUM_H__
|
|
||||||
|
|
||||||
#include "MarlinConfig.h"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Axis indices as enumerated constants
|
|
||||||
*
|
|
||||||
* - X_AXIS, Y_AXIS, and Z_AXIS should be used for axes in Cartesian space
|
|
||||||
* - A_AXIS, B_AXIS, and C_AXIS should be used for Steppers, corresponding to XYZ on Cartesians
|
|
||||||
* - X_HEAD, Y_HEAD, and Z_HEAD should be used for Steppers on Core kinematics
|
|
||||||
*/
|
|
||||||
enum AxisEnum : unsigned char {
|
|
||||||
X_AXIS = 0,
|
|
||||||
A_AXIS = 0,
|
|
||||||
Y_AXIS = 1,
|
|
||||||
B_AXIS = 1,
|
|
||||||
Z_AXIS = 2,
|
|
||||||
C_AXIS = 2,
|
|
||||||
E_CART = 3,
|
|
||||||
#if ENABLED(HANGPRINTER) // Hangprinter order: A_AXIS, B_AXIS, C_AXIS, D_AXIS, E_AXIS
|
|
||||||
D_AXIS = 3,
|
|
||||||
E_AXIS = 4,
|
|
||||||
#else
|
|
||||||
E_AXIS = 3,
|
|
||||||
#endif
|
|
||||||
X_HEAD, Y_HEAD, Z_HEAD,
|
|
||||||
ALL_AXES = 0xFE,
|
|
||||||
NO_AXIS = 0xFF
|
|
||||||
};
|
|
||||||
|
|
||||||
#define LOOP_S_LE_N(VAR, S, N) for (uint8_t VAR=S; VAR<=N; VAR++)
|
|
||||||
#define LOOP_S_L_N(VAR, S, N) for (uint8_t VAR=S; VAR<N; VAR++)
|
|
||||||
#define LOOP_LE_N(VAR, N) LOOP_S_LE_N(VAR, 0, N)
|
|
||||||
#define LOOP_L_N(VAR, N) LOOP_S_L_N(VAR, 0, N)
|
|
||||||
|
|
||||||
#define LOOP_NA(VAR) LOOP_L_N(VAR, NUM_AXIS)
|
|
||||||
#define LOOP_XYZ(VAR) LOOP_S_LE_N(VAR, X_AXIS, Z_AXIS)
|
|
||||||
#define LOOP_XYZE(VAR) LOOP_S_LE_N(VAR, X_AXIS, E_CART)
|
|
||||||
#define LOOP_XYZE_N(VAR) LOOP_S_L_N(VAR, X_AXIS, XYZE_N)
|
|
||||||
#define LOOP_MOV_AXIS(VAR) LOOP_S_L_N(VAR, A_AXIS, MOV_AXIS)
|
|
||||||
#define LOOP_NUM_AXIS(VAR) LOOP_S_L_N(VAR, A_AXIS, NUM_AXIS)
|
|
||||||
#define LOOP_NUM_AXIS_N(VAR) LOOP_S_L_N(VAR, A_AXIS, NUM_AXIS_N)
|
|
||||||
|
|
||||||
typedef enum {
|
|
||||||
LINEARUNIT_MM,
|
|
||||||
LINEARUNIT_INCH
|
|
||||||
} LinearUnit;
|
|
||||||
|
|
||||||
typedef enum {
|
|
||||||
TEMPUNIT_C,
|
|
||||||
TEMPUNIT_K,
|
|
||||||
TEMPUNIT_F
|
|
||||||
} TempUnit;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Debug flags
|
|
||||||
* Not yet widely applied
|
|
||||||
*/
|
|
||||||
enum DebugFlags : unsigned char {
|
|
||||||
DEBUG_NONE = 0,
|
|
||||||
DEBUG_ECHO = _BV(0), ///< Echo commands in order as they are processed
|
|
||||||
DEBUG_INFO = _BV(1), ///< Print messages for code that has debug output
|
|
||||||
DEBUG_ERRORS = _BV(2), ///< Not implemented
|
|
||||||
DEBUG_DRYRUN = _BV(3), ///< Ignore temperature setting and E movement commands
|
|
||||||
DEBUG_COMMUNICATION = _BV(4), ///< Not implemented
|
|
||||||
DEBUG_LEVELING = _BV(5), ///< Print detailed output for homing and leveling
|
|
||||||
DEBUG_MESH_ADJUST = _BV(6), ///< UBL bed leveling
|
|
||||||
DEBUG_ALL = 0xFF
|
|
||||||
};
|
|
||||||
|
|
||||||
#if ENABLED(ADVANCED_PAUSE_FEATURE)
|
|
||||||
enum AdvancedPauseMenuResponse : char {
|
|
||||||
ADVANCED_PAUSE_RESPONSE_WAIT_FOR,
|
|
||||||
ADVANCED_PAUSE_RESPONSE_EXTRUDE_MORE,
|
|
||||||
ADVANCED_PAUSE_RESPONSE_RESUME_PRINT
|
|
||||||
};
|
|
||||||
|
|
||||||
#if ENABLED(ULTIPANEL)
|
|
||||||
enum AdvancedPauseMessage : char {
|
|
||||||
ADVANCED_PAUSE_MESSAGE_INIT,
|
|
||||||
ADVANCED_PAUSE_MESSAGE_UNLOAD,
|
|
||||||
ADVANCED_PAUSE_MESSAGE_INSERT,
|
|
||||||
ADVANCED_PAUSE_MESSAGE_LOAD,
|
|
||||||
ADVANCED_PAUSE_MESSAGE_PURGE,
|
|
||||||
#if ENABLED(ADVANCED_PAUSE_CONTINUOUS_PURGE)
|
|
||||||
ADVANCED_PAUSE_MESSAGE_CONTINUOUS_PURGE,
|
|
||||||
#endif
|
|
||||||
ADVANCED_PAUSE_MESSAGE_OPTION,
|
|
||||||
ADVANCED_PAUSE_MESSAGE_RESUME,
|
|
||||||
ADVANCED_PAUSE_MESSAGE_STATUS,
|
|
||||||
ADVANCED_PAUSE_MESSAGE_CLICK_TO_HEAT_NOZZLE,
|
|
||||||
ADVANCED_PAUSE_MESSAGE_WAIT_FOR_NOZZLES_TO_HEAT
|
|
||||||
};
|
|
||||||
#endif
|
|
||||||
|
|
||||||
enum AdvancedPauseMode : char {
|
|
||||||
ADVANCED_PAUSE_MODE_PAUSE_PRINT,
|
|
||||||
ADVANCED_PAUSE_MODE_LOAD_FILAMENT,
|
|
||||||
ADVANCED_PAUSE_MODE_UNLOAD_FILAMENT
|
|
||||||
};
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
|
||||||
* States for managing Marlin and host communication
|
|
||||||
* Marlin sends messages if blocked or busy
|
|
||||||
*/
|
|
||||||
#if ENABLED(HOST_KEEPALIVE_FEATURE)
|
|
||||||
enum MarlinBusyState : char {
|
|
||||||
NOT_BUSY, // Not in a handler
|
|
||||||
IN_HANDLER, // Processing a GCode
|
|
||||||
IN_PROCESS, // Known to be blocking command input (as in G29)
|
|
||||||
PAUSED_FOR_USER, // Blocking pending any input
|
|
||||||
PAUSED_FOR_INPUT // Blocking pending text input (concept)
|
|
||||||
};
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
|
||||||
* SD Card
|
|
||||||
*/
|
|
||||||
enum LsAction : char { LS_SerialPrint, LS_Count, LS_GetFilename };
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Ultra LCD
|
|
||||||
*/
|
|
||||||
enum LCDViewAction : char {
|
|
||||||
LCDVIEW_NONE,
|
|
||||||
LCDVIEW_REDRAW_NOW,
|
|
||||||
LCDVIEW_CALL_REDRAW_NEXT,
|
|
||||||
LCDVIEW_CLEAR_CALL_REDRAW,
|
|
||||||
LCDVIEW_CALL_NO_REDRAW
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Dual X Carriage modes. A Dual Nozzle can also do duplication.
|
|
||||||
*/
|
|
||||||
#if ENABLED(DUAL_X_CARRIAGE) || ENABLED(DUAL_NOZZLE_DUPLICATION_MODE)
|
|
||||||
enum DualXMode : char {
|
|
||||||
DXC_FULL_CONTROL_MODE, // DUAL_X_CARRIAGE only
|
|
||||||
DXC_AUTO_PARK_MODE, // DUAL_X_CARRIAGE only
|
|
||||||
DXC_DUPLICATION_MODE
|
|
||||||
};
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Workspace planes only apply to G2/G3 moves
|
|
||||||
* (and "canned cycles" - not a current feature)
|
|
||||||
*/
|
|
||||||
#if ENABLED(CNC_WORKSPACE_PLANES)
|
|
||||||
enum WorkspacePlane : char { PLANE_XY, PLANE_ZX, PLANE_YZ };
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif // __ENUM_H__
|
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,15 +0,0 @@
|
|||||||
This is an example configuration for the CL-260 Ultimaker 2 clone.
|
|
||||||
Change Z_MAX_POS to 300 for the CL-260MAX.
|
|
||||||
|
|
||||||
(The printer is available on AliExpress; be aware that this is not a beginner's
|
|
||||||
printer -- it needs tweaking and some parts replaced before being decent.)
|
|
||||||
|
|
||||||
The printer comes with a quite old Marlin, the sources are available here:
|
|
||||||
http://www.thingiverse.com/thing:1635830/ and I recommend replacing them.
|
|
||||||
|
|
||||||
The setting "works" for my printer and the extruder using my calibration value.
|
|
||||||
You might want to tweak some settings, e.g enable EEPROM, increase default Z speed, adjust homing speeds,...
|
|
||||||
|
|
||||||
Have fun!
|
|
||||||
--
|
|
||||||
tobi
|
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,29 +0,0 @@
|
|||||||
# Example Configuration for BQ [Hephestos 2](http://www.bq.com/uk/hephestos-2)
|
|
||||||
Based on the original configuration file shipped with the heavily modified Marlin fork by BQ.
|
|
||||||
The forked firmware and configuration files can be found at the [BQ Github repository](https://github.com/bq/Marlin).
|
|
||||||
|
|
||||||
NOTE: The look and feel of the LCD menu will change dramatically when using the original Marlin firmware.
|
|
||||||
|
|
||||||
## Changelog
|
|
||||||
* 2018/05/30 - Configuration updated to the latest Marlin version (43a55a9af).
|
|
||||||
ABL Bilinear 5x5 is active by default.
|
|
||||||
|
|
||||||
* 2017/07/06 - Configuration updated to the latest Marlin version and added support for the
|
|
||||||
official BQ heated bed upgrade kit.
|
|
||||||
|
|
||||||
* 2016/12/13 - Configuration updated to the latest Marlin version.
|
|
||||||
|
|
||||||
* 2016/07/13 - Configuration updated to the latest Marlin version.
|
|
||||||
|
|
||||||
* 2016/06/21 - Disabled heated bed related options, activated software endstops and SD printing now
|
|
||||||
disables the heater when finishes printing.
|
|
||||||
|
|
||||||
* 2016/03/21 - Activated 4-point auto leveling by default and updated miscellaneous z-probe values.
|
|
||||||
|
|
||||||
* 2016/03/01 - The first release of Marlin's configuration file for the
|
|
||||||
BQ Hephestos 2 3D printer.
|
|
||||||
|
|
||||||
|
|
||||||
## Support
|
|
||||||
This configuration should work easily with the stock Hephestos 2, nevertheless if you encounter any
|
|
||||||
issues you may contact me on [Github](https://github.com/jbrazio), [Twitter](https://twitter.com/jbrazio) or by mail.
|
|
||||||
@@ -1,100 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Custom Boot Screen bitmap
|
|
||||||
*
|
|
||||||
* Place this file in the root with your configuration files
|
|
||||||
* and enable SHOW_CUSTOM_BOOTSCREEN in Configuration.h.
|
|
||||||
*
|
|
||||||
* Use the Marlin Bitmap Converter to make your own:
|
|
||||||
* http://marlinfw.org/tools/u8glib/converter.html
|
|
||||||
*/
|
|
||||||
|
|
||||||
#define CUSTOM_BOOTSCREEN_BMPWIDTH 64
|
|
||||||
|
|
||||||
const unsigned char custom_start_bmp[] PROGMEM = {
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000011,B11110000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000111,B11111000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000111,B11111000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00001111,B11111100,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00001111,B11111100,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000111,B11111000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B11111000,B00000111,B11111000,B00000111,B11000000,B00000000,
|
|
||||||
B00000000,B00000001,B11111100,B00000011,B11110000,B00001111,B11100000,B00000000,
|
|
||||||
B00000000,B00000011,B11111110,B00000000,B11000000,B00011111,B11110000,B00000000,
|
|
||||||
B00000000,B00000011,B11111110,B00000000,B00000000,B00011111,B11110000,B00000000,
|
|
||||||
B00000000,B00000011,B11111110,B00000000,B00000000,B00011111,B11110000,B00000000,
|
|
||||||
B00000000,B00000011,B11111110,B00000000,B00000000,B00011111,B11110000,B00000000,
|
|
||||||
B00000000,B00000011,B11111100,B00000000,B00000000,B00001111,B11100000,B00000000,
|
|
||||||
B00000000,B00000001,B11111000,B00000000,B00000000,B00001111,B11100000,B00000000,
|
|
||||||
B00000000,B00000000,B01110000,B00000000,B00000000,B00000011,B10000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B01100000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000001,B11111000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000011,B11111100,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000011,B11111100,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B11111100,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B11111100,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000011,B11111100,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000011,B11111100,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000001,B11111000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B01000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
|
|
||||||
B00001111,B10000000,B00000000,B00000000,B01110000,B00000000,B00000000,B00000000,
|
|
||||||
B00011111,B11000000,B00000000,B00000000,B01111000,B00000000,B00000000,B00000000,
|
|
||||||
B00111111,B11000000,B00000000,B00000000,B01111000,B00000000,B00000000,B00000000,
|
|
||||||
B00111111,B11100000,B00000000,B00000000,B01111000,B00000000,B00000000,B00000000,
|
|
||||||
B00111111,B11100000,B00000000,B00000000,B01111000,B00000000,B00000000,B00000000,
|
|
||||||
B00111111,B11100000,B00000000,B00000000,B01111011,B11000000,B00001111,B00000000,
|
|
||||||
B00111111,B11000000,B00000000,B00000000,B01111111,B11110000,B00111111,B11000000,
|
|
||||||
B00011111,B10000000,B00000000,B00000000,B01111111,B11111000,B01111111,B11100000,
|
|
||||||
B00001111,B00000000,B00000000,B00000000,B01111110,B11111100,B11111001,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B01111000,B00111100,B11100000,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B01111000,B00011101,B11100000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B01111000,B00011101,B11100000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B01111000,B00011101,B11100000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B01111000,B00011101,B11100000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B01111000,B00011101,B11100000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B01111000,B00111100,B11100000,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B01111100,B01111100,B11111001,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00011111,B11111000,B11111111,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00001111,B11110000,B01111111,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000111,B11100000,B00011111,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000
|
|
||||||
};
|
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,100 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Custom Boot Screen bitmap
|
|
||||||
*
|
|
||||||
* Place this file in the root with your configuration files
|
|
||||||
* and enable SHOW_CUSTOM_BOOTSCREEN in Configuration.h.
|
|
||||||
*
|
|
||||||
* Use the Marlin Bitmap Converter to make your own:
|
|
||||||
* http://marlinfw.org/tools/u8glib/converter.html
|
|
||||||
*/
|
|
||||||
|
|
||||||
#define CUSTOM_BOOTSCREEN_BMPWIDTH 64
|
|
||||||
|
|
||||||
const unsigned char custom_start_bmp[] PROGMEM = {
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000111,B11000000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00111111,B11111100,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000011,B11111111,B11111111,B11000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00011111,B11111111,B11111111,B11110000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B01111111,B11111111,B11111111,B11111100,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B11111111,B11111111,B11111111,B11111111,B00000000,B00000000,
|
|
||||||
B00000000,B00000011,B11111111,B11111111,B11111111,B11111111,B10000000,B00000000,
|
|
||||||
B00000000,B00000111,B11111111,B11111111,B11111111,B11111111,B11000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000111,B11000000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000111,B11000000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000111,B11000000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00001111,B00000111,B10000111,B11111111,B11111111,B11100000,B00000000,
|
|
||||||
B00000000,B00011111,B10001111,B11000111,B11111111,B11111111,B11110001,B00000000,
|
|
||||||
B00000001,B00011111,B10001111,B11000111,B11111111,B11111111,B11110001,B10000000,
|
|
||||||
B00000011,B00011111,B10001111,B11000111,B11111111,B11111111,B11110001,B10000000,
|
|
||||||
B00000111,B00011111,B10001111,B11000111,B11111111,B11111111,B11100001,B11000000,
|
|
||||||
B00000111,B00011111,B10001111,B11000111,B11000000,B00000000,B00000001,B11100000,
|
|
||||||
B00001111,B00011111,B10001111,B11000111,B11000000,B00000000,B00000001,B11100000,
|
|
||||||
B00001111,B00011111,B10001111,B11000111,B11000000,B00000000,B00000001,B11110000,
|
|
||||||
B00011111,B00011111,B10001111,B11000111,B11000000,B00000000,B00000001,B11110000,
|
|
||||||
B00011111,B00011111,B10001111,B11000111,B11111111,B11111111,B11100001,B11110000,
|
|
||||||
B00111111,B00011111,B10001111,B11000111,B11111111,B11111111,B11110001,B11111000,
|
|
||||||
B00111111,B00011111,B10001111,B11000111,B11111111,B11111111,B11110001,B11111000,
|
|
||||||
B00111111,B00011111,B10001111,B11000111,B11111111,B11111111,B11110001,B11111000,
|
|
||||||
B00111111,B00011111,B10001111,B11000111,B11111111,B11111111,B11100001,B11111000,
|
|
||||||
B01111111,B00011111,B10001111,B11000111,B11000000,B00000000,B00000001,B11111100,
|
|
||||||
B01111111,B00011111,B10001111,B11000111,B11000000,B00000000,B00000001,B11111100,
|
|
||||||
B01111111,B00011111,B10001111,B11000111,B11000000,B00000000,B00000001,B11111100,
|
|
||||||
B01111111,B00011111,B10001111,B11000111,B11000000,B00000000,B00000001,B11111100,
|
|
||||||
B01111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111100,
|
|
||||||
B01111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111100,
|
|
||||||
B01111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111100,
|
|
||||||
B01111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111100,
|
|
||||||
B01111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111100,
|
|
||||||
B01111111,B00000000,B00000000,B00000111,B11000111,B11100011,B11110001,B11111100,
|
|
||||||
B01111111,B00000000,B00000000,B00000111,B11000111,B11100011,B11110001,B11111100,
|
|
||||||
B01111111,B00000000,B00000000,B00000111,B11000111,B11100011,B11110001,B11111100,
|
|
||||||
B00111111,B00001111,B11111111,B11111111,B11000111,B11100011,B11110001,B11111000,
|
|
||||||
B00111111,B00011111,B11111111,B11111111,B11000111,B11100011,B11110001,B11111000,
|
|
||||||
B00111111,B00011111,B11111111,B11111111,B11000111,B11100011,B11110001,B11111000,
|
|
||||||
B00111111,B00011111,B11111111,B11111111,B11000111,B11100011,B11110001,B11111000,
|
|
||||||
B00011111,B00011111,B11111111,B11111111,B11000111,B11100011,B11110001,B11110000,
|
|
||||||
B00011111,B00001111,B11111111,B11111111,B11000111,B11100011,B11110001,B11110000,
|
|
||||||
B00011111,B00000000,B00000000,B00000111,B11000111,B11100011,B11110001,B11100000,
|
|
||||||
B00001111,B00000000,B00000000,B00000111,B11000111,B11100011,B11110001,B11100000,
|
|
||||||
B00001111,B00000000,B00000000,B00000111,B11000111,B11100011,B11110001,B11000000,
|
|
||||||
B00000111,B00001111,B11111111,B11111111,B11000111,B11100011,B11110001,B11000000,
|
|
||||||
B00000011,B00011111,B11111111,B11111111,B11000111,B11100011,B11110001,B10000000,
|
|
||||||
B00000011,B00011111,B11111111,B11111111,B11000111,B11100011,B11110001,B00000000,
|
|
||||||
B00000001,B00011111,B11111111,B11111111,B11000111,B11100011,B11110000,B00000000,
|
|
||||||
B00000000,B00011111,B11111111,B11111111,B11000111,B11100011,B11110000,B00000000,
|
|
||||||
B00000000,B00001111,B11111111,B11111111,B11000011,B11000001,B11100000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000111,B11000000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000111,B11000000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000111,B11000000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000111,B11111111,B11111111,B11111111,B11111111,B11000000,B00000000,
|
|
||||||
B00000000,B00000011,B11111111,B11111111,B11111111,B11111111,B10000000,B00000000,
|
|
||||||
B00000000,B00000001,B11111111,B11111111,B11111111,B11111110,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B01111111,B11111111,B11111111,B11111100,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00011111,B11111111,B11111111,B11110000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000111,B11111111,B11111111,B10000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B01111111,B11111000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000
|
|
||||||
};
|
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,55 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Custom Boot Screen bitmap
|
|
||||||
*
|
|
||||||
* Place this file in the root with your configuration files
|
|
||||||
* and enable SHOW_CUSTOM_BOOTSCREEN in Configuration.h.
|
|
||||||
*
|
|
||||||
* Use the Marlin Bitmap Converter to make your own:
|
|
||||||
* http://marlinfw.org/tools/u8glib/converter.html
|
|
||||||
*/
|
|
||||||
|
|
||||||
#define CUSTOM_BOOTSCREEN_TIMEOUT 1000
|
|
||||||
#define CUSTOM_BOOTSCREEN_BMPWIDTH 128
|
|
||||||
|
|
||||||
const unsigned char custom_start_bmp[] PROGMEM = {
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B11111100,B00000000,B00000000,
|
|
||||||
B00001111,B11110000,B00000000,B00000000,B00000000,B00000000,B00000111,B11100000,B00000000,B00000000,B00000000,B00000000,B00000001,B10000110,B00011111,B11000000,
|
|
||||||
B00011000,B01110000,B00000000,B00000000,B00000000,B00000000,B00000000,B01100000,B00111100,B00001100,B00000000,B00000000,B00000001,B10000011,B00001100,B01100000,
|
|
||||||
B00010000,B00110000,B00000000,B00000000,B00000000,B00000000,B00000000,B01100000,B00111100,B00001100,B00000000,B00000000,B00000001,B10000011,B00001100,B00110000,
|
|
||||||
B00110000,B00110000,B00000000,B00000000,B00000000,B00000000,B00000000,B01100000,B00000000,B00001100,B00000000,B00000000,B00000000,B00000011,B00001100,B00011000,
|
|
||||||
B00110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B01100000,B00000000,B00111111,B00001111,B00111100,B00000000,B00000011,B00001100,B00001100,
|
|
||||||
B01100000,B00000001,B11011111,B00001111,B11100000,B11111110,B00000000,B01100000,B00011100,B00011100,B00000110,B00011000,B00000000,B00000110,B00001100,B00001100,
|
|
||||||
B01100000,B00000000,B11110011,B00011000,B00110001,B10000011,B00000000,B01100000,B00001100,B00001100,B00000011,B00011000,B00000000,B00011110,B00001100,B00001100,
|
|
||||||
B01100000,B00000000,B11100000,B00110000,B00111001,B10000011,B00000000,B01100000,B00001100,B00001100,B00000011,B00110000,B00000000,B00000011,B00001100,B00001100,
|
|
||||||
B01100000,B00000000,B11000000,B00110000,B00111000,B00001111,B00000000,B01100000,B00001100,B00001100,B00000011,B00110000,B00000000,B00000001,B10001100,B00001100,
|
|
||||||
B01100000,B00000000,B11000000,B00111111,B11111000,B11111011,B00000000,B01100000,B00001100,B00001100,B00000011,B00110000,B00000000,B00000001,B10001100,B00001100,
|
|
||||||
B01100000,B00110000,B11000000,B00110000,B00000001,B10000011,B00000000,B01100000,B00001100,B00001100,B00000001,B11110000,B00000001,B10000001,B10001100,B00001100,
|
|
||||||
B01100000,B00110000,B11000000,B00110000,B00000001,B10000011,B00000000,B01100000,B00001100,B00001100,B00000000,B11100000,B00000001,B10000001,B10001100,B00011000,
|
|
||||||
B00110000,B00110000,B11000000,B00011000,B00110001,B10000011,B00000000,B01100000,B00001100,B00001100,B01000000,B11100000,B00000001,B10000011,B10001100,B00110000,
|
|
||||||
B00011000,B01100000,B11000000,B00001100,B01100001,B10000111,B11000000,B11100000,B00011100,B00001100,B11000000,B01100000,B00000000,B11000011,B00001100,B01100000,
|
|
||||||
B00001111,B11000011,B11110000,B00000111,B11000000,B11111111,B11000111,B11111100,B01111111,B00000111,B10000001,B11000000,B00000000,B01111110,B00011111,B11000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B00000000,B00000000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B00000000,B00000000,B00000000,B00000000,B00000000
|
|
||||||
};
|
|
||||||
@@ -1,80 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Custom Status Screen bitmap
|
|
||||||
*
|
|
||||||
* Place this file in the root with your configuration files
|
|
||||||
* and enable CUSTOM_STATUS_SCREEN_IMAGE in Configuration.h.
|
|
||||||
*
|
|
||||||
* Use the Marlin Bitmap Converter to make your own:
|
|
||||||
* http://marlinfw.org/tools/u8glib/converter.html
|
|
||||||
*/
|
|
||||||
|
|
||||||
#define STATUS_SCREENWIDTH 128
|
|
||||||
#define STATUS_SCREEN_HOTEND_TEXT_X(E) 38
|
|
||||||
#define STATUS_SCREEN_BED_TEXT_X 73
|
|
||||||
|
|
||||||
//============================================
|
|
||||||
|
|
||||||
const unsigned char status_screen0_bmp[] PROGMEM = {
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110000,B11111100,B00110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B11111100,B00010000,
|
|
||||||
B00000000,B00111110,B00001111,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B00000000,B11000001,B10000110,B00011000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B00000000,B11000001,B10000110,B00001100,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101100,B00000000,B11010000,
|
|
||||||
B00000000,B00000001,B10000110,B00000100,B00000000,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00101110,B00110001,B11010000,
|
|
||||||
B00000000,B00000011,B00000110,B00000100,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00101111,B01111011,B11010000,
|
|
||||||
B00000000,B00011111,B00000110,B00000100,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00101111,B01111011,B11010000,
|
|
||||||
B00000000,B00000011,B00000110,B00000100,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00101110,B00110001,B11010000,
|
|
||||||
B00000000,B00000001,B10000110,B00000100,B00000000,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00101100,B00000000,B11010000,
|
|
||||||
B00000000,B11000001,B10000110,B00001100,B00000000,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B00000000,B11000001,B10000110,B00011000,B00000000,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B00000000,B00111110,B00001111,B11110000,B00000000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00100000,B11111100,B00010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00110000,B11111100,B00110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00000000,B00000000,B00000000
|
|
||||||
};
|
|
||||||
const unsigned char status_screen1_bmp[] PROGMEM = {
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110011,B10000111,B00110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100111,B10000111,B10010000,
|
|
||||||
B00000000,B00111110,B00001111,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B00000000,B11000001,B10000110,B00011000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B00000000,B11000001,B10000110,B00001100,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B00000011,B11010000,
|
|
||||||
B00000000,B00000001,B10000110,B00000100,B00000000,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B00000000,B00000011,B00000110,B00000100,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B00000000,B00011111,B00000110,B00000100,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B00000000,B00000011,B00000110,B00000100,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B00000000,B00000001,B10000110,B00000100,B00000000,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00101111,B00000011,B11010000,
|
|
||||||
B00000000,B11000001,B10000110,B00001100,B00000000,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B00000000,B11000001,B10000110,B00011000,B00000000,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B00000000,B00111110,B00001111,B11110000,B00000000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00100111,B10000111,B10010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00110011,B10000111,B00110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00000000,B00000000,B00000000
|
|
||||||
};
|
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,55 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Custom Boot Screen bitmap
|
|
||||||
*
|
|
||||||
* Place this file in the root with your configuration files
|
|
||||||
* and enable SHOW_CUSTOM_BOOTSCREEN in Configuration.h.
|
|
||||||
*
|
|
||||||
* Use the Marlin Bitmap Converter to make your own:
|
|
||||||
* http://marlinfw.org/tools/u8glib/converter.html
|
|
||||||
*/
|
|
||||||
|
|
||||||
#define CUSTOM_BOOTSCREEN_TIMEOUT 1000
|
|
||||||
#define CUSTOM_BOOTSCREEN_BMPWIDTH 128
|
|
||||||
|
|
||||||
const unsigned char custom_start_bmp[] PROGMEM = {
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B11111100,B00000000,B00000000,
|
|
||||||
B00001111,B11110000,B00000000,B00000000,B00000000,B00000000,B00000111,B11100000,B00000000,B00000000,B00000000,B00000000,B00000001,B10000110,B00011111,B11000000,
|
|
||||||
B00011000,B01110000,B00000000,B00000000,B00000000,B00000000,B00000000,B01100000,B00111100,B00001100,B00000000,B00000000,B00000001,B10000011,B00001100,B01100000,
|
|
||||||
B00010000,B00110000,B00000000,B00000000,B00000000,B00000000,B00000000,B01100000,B00111100,B00001100,B00000000,B00000000,B00000001,B10000011,B00001100,B00110000,
|
|
||||||
B00110000,B00110000,B00000000,B00000000,B00000000,B00000000,B00000000,B01100000,B00000000,B00001100,B00000000,B00000000,B00000000,B00000011,B00001100,B00011000,
|
|
||||||
B00110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B01100000,B00000000,B00111111,B00001111,B00111100,B00000000,B00000011,B00001100,B00001100,
|
|
||||||
B01100000,B00000001,B11011111,B00001111,B11100000,B11111110,B00000000,B01100000,B00011100,B00011100,B00000110,B00011000,B00000000,B00000110,B00001100,B00001100,
|
|
||||||
B01100000,B00000000,B11110011,B00011000,B00110001,B10000011,B00000000,B01100000,B00001100,B00001100,B00000011,B00011000,B00000000,B00011110,B00001100,B00001100,
|
|
||||||
B01100000,B00000000,B11100000,B00110000,B00111001,B10000011,B00000000,B01100000,B00001100,B00001100,B00000011,B00110000,B00000000,B00000011,B00001100,B00001100,
|
|
||||||
B01100000,B00000000,B11000000,B00110000,B00111000,B00001111,B00000000,B01100000,B00001100,B00001100,B00000011,B00110000,B00000000,B00000001,B10001100,B00001100,
|
|
||||||
B01100000,B00000000,B11000000,B00111111,B11111000,B11111011,B00000000,B01100000,B00001100,B00001100,B00000011,B00110000,B00000000,B00000001,B10001100,B00001100,
|
|
||||||
B01100000,B00110000,B11000000,B00110000,B00000001,B10000011,B00000000,B01100000,B00001100,B00001100,B00000001,B11110000,B00000001,B10000001,B10001100,B00001100,
|
|
||||||
B01100000,B00110000,B11000000,B00110000,B00000001,B10000011,B00000000,B01100000,B00001100,B00001100,B00000000,B11100000,B00000001,B10000001,B10001100,B00011000,
|
|
||||||
B00110000,B00110000,B11000000,B00011000,B00110001,B10000011,B00000000,B01100000,B00001100,B00001100,B01000000,B11100000,B00000001,B10000011,B10001100,B00110000,
|
|
||||||
B00011000,B01100000,B11000000,B00001100,B01100001,B10000111,B11000000,B11100000,B00011100,B00001100,B11000000,B01100000,B00000000,B11000011,B00001100,B01100000,
|
|
||||||
B00001111,B11000011,B11110000,B00000111,B11000000,B11111111,B11000111,B11111100,B01111111,B00000111,B10000001,B11000000,B00000000,B01111110,B00011111,B11000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B00000000,B00000000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B00000000,B00000000,B00000000,B00000000,B00000000
|
|
||||||
};
|
|
||||||
@@ -1,452 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Custom Status Screen bitmap
|
|
||||||
*
|
|
||||||
* Place this file in the root with your configuration files
|
|
||||||
* and enable CUSTOM_STATUS_SCREEN_IMAGE in Configuration.h.
|
|
||||||
*
|
|
||||||
* Use the Marlin Bitmap Converter to make your own:
|
|
||||||
* http://marlinfw.org/tools/u8glib/converter.html
|
|
||||||
*/
|
|
||||||
|
|
||||||
#define STATUS_SCREENWIDTH 128
|
|
||||||
|
|
||||||
#define STATUS_SCREEN_HOTEND_TEXT_X(E) (38 + (E) * 20)
|
|
||||||
|
|
||||||
#define STATUS_SCREEN_BED_TEXT_X (HOTENDS > 1 ? 81 : 73)
|
|
||||||
|
|
||||||
// Can also be overridden in Configuration.h
|
|
||||||
#ifndef FAN_ANIM_FRAMES
|
|
||||||
#define FAN_ANIM_FRAMES 3
|
|
||||||
#endif
|
|
||||||
#define STATUS_SCREEN_FAN_TEXT_X (FAN_ANIM_FRAMES == 3 ? 103 : 105)
|
|
||||||
#define STATUS_SCREEN_FAN_TEXT_Y (FAN_ANIM_FRAMES > 2 ? 28 : 27)
|
|
||||||
|
|
||||||
//============================================
|
|
||||||
|
|
||||||
#if HOTENDS < 2
|
|
||||||
|
|
||||||
#if FAN_ANIM_FRAMES <= 2
|
|
||||||
|
|
||||||
const unsigned char status_screen0_bmp[] PROGMEM = {
|
|
||||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110000,B11111100,B00110000,
|
|
||||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B11111100,B00010000,
|
|
||||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101100,B00000000,B11010000,
|
|
||||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00101110,B00110001,B11010000,
|
|
||||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00101111,B01111011,B11010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00101111,B01111011,B11010000,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00101110,B00110001,B11010000,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00101100,B00000000,B11010000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00100000,B11111100,B00010000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00110000,B11111100,B00110000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00000000,B00000000,B00000000
|
|
||||||
};
|
|
||||||
const unsigned char status_screen1_bmp[] PROGMEM = {
|
|
||||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110011,B10000111,B00110000,
|
|
||||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100111,B10000111,B10010000,
|
|
||||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B00000011,B11010000,
|
|
||||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00101111,B00000011,B11010000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00100111,B10000111,B10010000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00110011,B10000111,B00110000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00000000,B00000000,B00000000
|
|
||||||
};
|
|
||||||
|
|
||||||
#elif FAN_ANIM_FRAMES == 3
|
|
||||||
|
|
||||||
const unsigned char status_screen0_bmp[] PROGMEM = {
|
|
||||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B11111111,B11111111,
|
|
||||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B11000000,B00011111,
|
|
||||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B00100000,B00100111,
|
|
||||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,B11110000,B01111011,
|
|
||||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,B11110000,B01111011,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000101,B11111000,B11111101,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000100,B11111000,B11111001,
|
|
||||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00000100,B00111111,B11100001,
|
|
||||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00000100,B00001111,B10000001,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00000100,B00001111,B10000001,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00000100,B00001111,B10000001,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00000100,B00111111,B11100001,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00000100,B11111000,B11111001,
|
|
||||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00000101,B11111000,B11111101,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00000110,B11110000,B01111011,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00000110,B11110000,B01111011,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B00100000,B00100111,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00000111,B11000000,B00011111,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00000111,B11111111,B11111111
|
|
||||||
};
|
|
||||||
const unsigned char status_screen1_bmp[] PROGMEM = {
|
|
||||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B11111111,B11111111,
|
|
||||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B11000110,B00011111,
|
|
||||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B00111110,B00000111,
|
|
||||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,B00111110,B00000011,
|
|
||||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,B00011110,B00000011,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000100,B00011110,B00001101,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000100,B00000110,B00111101,
|
|
||||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00000100,B00000111,B00111101,
|
|
||||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00000100,B00001111,B11111111,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00000111,B11111111,B11111111,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00000111,B11111111,B10000001,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00000101,B11100111,B00000001,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00000101,B11000011,B00000001,
|
|
||||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00000101,B10000011,B11000001,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00000110,B00000011,B11000011,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00000110,B00000011,B11100011,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B00000011,B11100111,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00000111,B11000011,B00011111,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00000111,B11111111,B11111111
|
|
||||||
};
|
|
||||||
const unsigned char status_screen2_bmp[] PROGMEM = {
|
|
||||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B11111111,B11111111,
|
|
||||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B11000011,B00011111,
|
|
||||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B00000011,B11100111,
|
|
||||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,B00000011,B11110011,
|
|
||||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,B10000011,B11100011,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000101,B11000011,B11000001,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000101,B11100011,B10000001,
|
|
||||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00000101,B11110111,B00000001,
|
|
||||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00000111,B11111111,B10000001,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00000111,B11111111,B11111111,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00000100,B00001111,B11111111,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00000100,B00000111,B01111101,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00000100,B00001110,B00111101,
|
|
||||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00000100,B00011110,B00011101,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00000110,B00111110,B00001011,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00000110,B01111110,B00000011,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B00111110,B00000111,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00000111,B11000110,B00011111,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00000111,B11111111,B11111111
|
|
||||||
};
|
|
||||||
|
|
||||||
#elif FAN_ANIM_FRAMES == 4
|
|
||||||
|
|
||||||
const unsigned char status_screen0_bmp[] PROGMEM = {
|
|
||||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111000,
|
|
||||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111110,B00000000,B11111000,
|
|
||||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00111111,B00111000,
|
|
||||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110000,B01111110,B00011000,
|
|
||||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110000,B01111100,B00011000,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101000,B01111100,B00001000,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101100,B00111000,B00001000,
|
|
||||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00101111,B00111001,B11001000,
|
|
||||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00101111,B11111111,B11101000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00101111,B11000111,B11101000,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00101111,B11111111,B11101000,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00100111,B00111001,B11101000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00100000,B00111000,B01101000,
|
|
||||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00100000,B01111100,B00101000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00110000,B01111100,B00011000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00110000,B11111100,B00011000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111001,B11111000,B00111000,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111110,B00000000,B11111000,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111111,B11111111,B11111000
|
|
||||||
};
|
|
||||||
const unsigned char status_screen1_bmp[] PROGMEM = {
|
|
||||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111000,
|
|
||||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111110,B00000000,B11111000,
|
|
||||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00001111,B00111000,
|
|
||||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110100,B00011111,B11011000,
|
|
||||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110110,B00011111,B10011000,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B00011111,B00001000,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10011110,B00001000,
|
|
||||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00101111,B11111100,B00001000,
|
|
||||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00101111,B11011100,B00001000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00100111,B11101111,B11001000,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00100000,B01110111,B11101000,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00100000,B01111111,B11101000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00100000,B11110011,B11101000,
|
|
||||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00100001,B11110001,B11101000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00110011,B11110000,B11011000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00110111,B11110000,B01011000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111001,B11100000,B00111000,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111110,B00000000,B11111000,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111111,B11111111,B11111000
|
|
||||||
};
|
|
||||||
const unsigned char status_screen2_bmp[] PROGMEM = {
|
|
||||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111000,
|
|
||||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111110,B10000000,B11111000,
|
|
||||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111001,B10000000,B00111000,
|
|
||||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110111,B10000001,B11011000,
|
|
||||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110111,B11000011,B11011000,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100111,B11000111,B11101000,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100011,B11000111,B11111000,
|
|
||||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00100001,B11111111,B10001000,
|
|
||||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00100000,B01101100,B00001000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00100000,B01101100,B00001000,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00100000,B01101100,B00001000,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00100011,B11111111,B00001000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00111111,B11000111,B10001000,
|
|
||||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00101111,B11000111,B11001000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00110111,B10000111,B11011000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00110111,B00000011,B11011000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000011,B00111000,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111110,B00000010,B11111000,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111111,B11111111,B11111000
|
|
||||||
};
|
|
||||||
const unsigned char status_screen3_bmp[] PROGMEM = {
|
|
||||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111000,
|
|
||||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111110,B00000000,B11111000,
|
|
||||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111001,B11110000,B00111000,
|
|
||||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110001,B11100000,B00011000,
|
|
||||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110001,B11100000,B00011000,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100001,B11100001,B11101000,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B11110011,B11101000,
|
|
||||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00100000,B01111111,B11101000,
|
|
||||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00100000,B01110111,B11101000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00101000,B11101110,B00101000,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00101111,B11011100,B00001000,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00101111,B11111100,B00001000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00101111,B10011110,B00001000,
|
|
||||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00101111,B00001111,B00001000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00110000,B00001111,B00011000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00110000,B00001111,B00011000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00011111,B00111000,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111110,B00000000,B11111000,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111111,B11111111,B11111000
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#else // HOTENDS >= 2
|
|
||||||
|
|
||||||
#if FAN_ANIM_FRAMES <= 2
|
|
||||||
|
|
||||||
const unsigned char status_screen0_bmp[] PROGMEM = {
|
|
||||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110000,B11111100,B00110000,
|
|
||||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B11111100,B00010000,
|
|
||||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101100,B00000000,B11010000,
|
|
||||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000001,B11111110,B00000000,B00001000,B00100000,B10000000,B00101110,B00110001,B11010000,
|
|
||||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111110,B11110000,B00000011,B11001111,B00000000,B00000100,B00010000,B01000000,B00101111,B01111011,B11010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111100,B11110000,B00000011,B10110111,B00000000,B00000100,B00010000,B01000000,B00101111,B01111011,B11010000,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111010,B11110000,B00000011,B11110111,B00000000,B00001000,B00100000,B10000000,B00101110,B00110001,B11010000,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11101110,B00000000,B00010000,B01000001,B00000000,B00101100,B00000000,B11010000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11011110,B00000000,B00100000,B10000010,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10111111,B00000000,B00100000,B10000010,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10000111,B00000000,B00010000,B01000001,B00000000,B00100000,B11111100,B00010000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000011,B11111111,B00000000,B00001000,B00100000,B10000000,B00110000,B11111100,B00110000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B11111100,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B01111000,B00000000,B11111111,B11111111,B11000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00110000,B00000000,B11111111,B11111111,B11000000,B00000000,B00000000,B00000000
|
|
||||||
};
|
|
||||||
const unsigned char status_screen1_bmp[] PROGMEM = {
|
|
||||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110011,B10000111,B00110000,
|
|
||||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100111,B10000111,B10010000,
|
|
||||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B00000011,B11010000,
|
|
||||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000001,B11111110,B00000000,B00001000,B00100000,B10000000,B00100000,B00110000,B00010000,
|
|
||||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111110,B11110000,B00000011,B11001111,B00000000,B00000100,B00010000,B01000000,B00100000,B01111000,B00010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111100,B11110000,B00000011,B10110111,B00000000,B00000100,B00010000,B01000000,B00100000,B01111000,B00010000,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111010,B11110000,B00000011,B11110111,B00000000,B00001000,B00100000,B10000000,B00100000,B00110000,B00010000,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11101110,B00000000,B00010000,B01000001,B00000000,B00101111,B00000011,B11010000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11011110,B00000000,B00100000,B10000010,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10111111,B00000000,B00100000,B10000010,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10000111,B00000000,B00010000,B01000001,B00000000,B00100111,B10000111,B10010000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000011,B11111111,B00000000,B00001000,B00100000,B10000000,B00110011,B10000111,B00110000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B11111100,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B01111000,B00000000,B11111111,B11111111,B11000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00110000,B00000000,B11111111,B11111111,B11000000,B00000000,B00000000,B00000000
|
|
||||||
};
|
|
||||||
|
|
||||||
#elif FAN_ANIM_FRAMES == 3
|
|
||||||
|
|
||||||
const unsigned char status_screen0_bmp[] PROGMEM = {
|
|
||||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B11111111,B11111111,
|
|
||||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B11000000,B00011111,
|
|
||||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B00100000,B00100111,
|
|
||||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,B11110000,B01111011,
|
|
||||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,B11110000,B01111011,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000101,B11111000,B11111101,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000100,B11111000,B11111001,
|
|
||||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000001,B11111110,B00000000,B00001000,B00100000,B10000000,B00000100,B00111111,B11100001,
|
|
||||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111110,B11110000,B00000011,B11001111,B00000000,B00000100,B00010000,B01000000,B00000100,B00001111,B10000001,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111100,B11110000,B00000011,B10110111,B00000000,B00000100,B00010000,B01000000,B00000100,B00001111,B10000001,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111010,B11110000,B00000011,B11110111,B00000000,B00001000,B00100000,B10000000,B00000100,B00001111,B10000001,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11101110,B00000000,B00010000,B01000001,B00000000,B00000100,B00111111,B11100001,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11011110,B00000000,B00100000,B10000010,B00000000,B00000100,B11111000,B11111001,
|
|
||||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10111111,B00000000,B00100000,B10000010,B00000000,B00000101,B11111000,B11111101,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10000111,B00000000,B00010000,B01000001,B00000000,B00000110,B11110000,B01111011,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000011,B11111111,B00000000,B00001000,B00100000,B10000000,B00000110,B11110000,B01111011,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B11111100,B00000000,B00000000,B00000000,B00000000,B00000111,B00100000,B00100111,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B01111000,B00000000,B11111111,B11111111,B11000000,B00000111,B11000000,B00011111,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00110000,B00000000,B11111111,B11111111,B11000000,B00000111,B11111111,B11111111
|
|
||||||
};
|
|
||||||
const unsigned char status_screen1_bmp[] PROGMEM = {
|
|
||||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B11111111,B11111111,
|
|
||||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B11000110,B00011111,
|
|
||||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B00111110,B00000111,
|
|
||||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,B00111110,B00000011,
|
|
||||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,B00011110,B00000011,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000100,B00011110,B00001101,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000100,B00000110,B00111101,
|
|
||||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000001,B11111110,B00000000,B00001000,B00100000,B10000000,B00000100,B00000111,B00111101,
|
|
||||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111110,B11110000,B00000011,B11001111,B00000000,B00000100,B00010000,B01000000,B00000100,B00001111,B11111111,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111100,B11110000,B00000011,B10110111,B00000000,B00000100,B00010000,B01000000,B00000111,B11111111,B11111111,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111010,B11110000,B00000011,B11110111,B00000000,B00001000,B00100000,B10000000,B00000111,B11111111,B10000001,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11101110,B00000000,B00010000,B01000001,B00000000,B00000101,B11100111,B00000001,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11011110,B00000000,B00100000,B10000010,B00000000,B00000101,B11000011,B00000001,
|
|
||||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10111111,B00000000,B00100000,B10000010,B00000000,B00000101,B10000011,B11000001,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10000111,B00000000,B00010000,B01000001,B00000000,B00000110,B00000011,B11000011,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000011,B11111111,B00000000,B00001000,B00100000,B10000000,B00000110,B00000011,B11100011,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B11111100,B00000000,B00000000,B00000000,B00000000,B00000111,B00000011,B11100111,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B01111000,B00000000,B11111111,B11111111,B11000000,B00000111,B11000011,B00011111,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00110000,B00000000,B11111111,B11111111,B11000000,B00000111,B11111111,B11111111
|
|
||||||
};
|
|
||||||
const unsigned char status_screen2_bmp[] PROGMEM = {
|
|
||||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B11111111,B11111111,
|
|
||||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B11000011,B00011111,
|
|
||||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B00000011,B11100111,
|
|
||||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,B00000011,B11110011,
|
|
||||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000110,B10000011,B11100011,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000101,B11000011,B11000001,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000101,B11100011,B10000001,
|
|
||||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000001,B11111110,B00000000,B00001000,B00100000,B10000000,B00000101,B11110111,B00000001,
|
|
||||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111110,B11110000,B00000011,B11001111,B00000000,B00000100,B00010000,B01000000,B00000111,B11111111,B10000001,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111100,B11110000,B00000011,B10110111,B00000000,B00000100,B00010000,B01000000,B00000111,B11111111,B11111111,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111010,B11110000,B00000011,B11110111,B00000000,B00001000,B00100000,B10000000,B00000100,B00001111,B11111111,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11101110,B00000000,B00010000,B01000001,B00000000,B00000100,B00000111,B01111101,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11011110,B00000000,B00100000,B10000010,B00000000,B00000100,B00001110,B00111101,
|
|
||||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10111111,B00000000,B00100000,B10000010,B00000000,B00000100,B00011110,B00011101,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10000111,B00000000,B00010000,B01000001,B00000000,B00000110,B00111110,B00001011,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000011,B11111111,B00000000,B00001000,B00100000,B10000000,B00000110,B01111110,B00000011,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B11111100,B00000000,B00000000,B00000000,B00000000,B00000111,B00111110,B00000111,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B01111000,B00000000,B11111111,B11111111,B11000000,B00000111,B11000110,B00011111,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00110000,B00000000,B11111111,B11111111,B11000000,B00000111,B11111111,B11111111
|
|
||||||
};
|
|
||||||
|
|
||||||
#elif FAN_ANIM_FRAMES == 4
|
|
||||||
|
|
||||||
const unsigned char status_screen0_bmp[] PROGMEM = {
|
|
||||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111000,
|
|
||||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111110,B00000000,B11111000,
|
|
||||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00111111,B00111000,
|
|
||||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110000,B01111110,B00011000,
|
|
||||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110000,B01111100,B00011000,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101000,B01111100,B00001000,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101100,B00111000,B00001000,
|
|
||||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000001,B11111110,B00000000,B00001000,B00100000,B10000000,B00101111,B00111001,B11001000,
|
|
||||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111110,B11110000,B00000011,B11001111,B00000000,B00000100,B00010000,B01000000,B00101111,B11111111,B11101000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111100,B11110000,B00000011,B10110111,B00000000,B00000100,B00010000,B01000000,B00101111,B11000111,B11101000,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111010,B11110000,B00000011,B11110111,B00000000,B00001000,B00100000,B10000000,B00101111,B11111111,B11101000,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11101110,B00000000,B00010000,B01000001,B00000000,B00100111,B00111001,B11101000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11011110,B00000000,B00100000,B10000010,B00000000,B00100000,B00111000,B01101000,
|
|
||||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10111111,B00000000,B00100000,B10000010,B00000000,B00100000,B01111100,B00101000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10000111,B00000000,B00010000,B01000001,B00000000,B00110000,B01111100,B00011000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000011,B11111111,B00000000,B00001000,B00100000,B10000000,B00110000,B11111100,B00011000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B11111100,B00000000,B00000000,B00000000,B00000000,B00111001,B11111000,B00111000,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B01111000,B00000000,B11111111,B11111111,B11000000,B00111110,B00000000,B11111000,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00110000,B00000000,B11111111,B11111111,B11000000,B00111111,B11111111,B11111000
|
|
||||||
};
|
|
||||||
const unsigned char status_screen1_bmp[] PROGMEM = {
|
|
||||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111000,
|
|
||||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111110,B00000000,B11111000,
|
|
||||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00001111,B00111000,
|
|
||||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110100,B00011111,B11011000,
|
|
||||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110110,B00011111,B10011000,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B00011111,B00001000,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10011110,B00001000,
|
|
||||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000001,B11111110,B00000000,B00001000,B00100000,B10000000,B00101111,B11111100,B00001000,
|
|
||||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111110,B11110000,B00000011,B11001111,B00000000,B00000100,B00010000,B01000000,B00101111,B11011100,B00001000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111100,B11110000,B00000011,B10110111,B00000000,B00000100,B00010000,B01000000,B00100111,B11101111,B11001000,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111010,B11110000,B00000011,B11110111,B00000000,B00001000,B00100000,B10000000,B00100000,B01110111,B11101000,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11101110,B00000000,B00010000,B01000001,B00000000,B00100000,B01111111,B11101000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11011110,B00000000,B00100000,B10000010,B00000000,B00100000,B11110011,B11101000,
|
|
||||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10111111,B00000000,B00100000,B10000010,B00000000,B00100001,B11110001,B11101000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10000111,B00000000,B00010000,B01000001,B00000000,B00110011,B11110000,B11011000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000011,B11111111,B00000000,B00001000,B00100000,B10000000,B00110111,B11110000,B01011000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B11111100,B00000000,B00000000,B00000000,B00000000,B00111001,B11100000,B00111000,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B01111000,B00000000,B11111111,B11111111,B11000000,B00111110,B00000000,B11111000,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00110000,B00000000,B11111111,B11111111,B11000000,B00111111,B11111111,B11111000
|
|
||||||
};
|
|
||||||
const unsigned char status_screen2_bmp[] PROGMEM = {
|
|
||||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111000,
|
|
||||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111110,B10000000,B11111000,
|
|
||||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111001,B10000000,B00111000,
|
|
||||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110111,B10000001,B11011000,
|
|
||||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110111,B11000011,B11011000,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100111,B11000111,B11101000,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100011,B11000111,B11111000,
|
|
||||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000001,B11111110,B00000000,B00001000,B00100000,B10000000,B00100001,B11111111,B10001000,
|
|
||||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111110,B11110000,B00000011,B11001111,B00000000,B00000100,B00010000,B01000000,B00100000,B01101100,B00001000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111100,B11110000,B00000011,B10110111,B00000000,B00000100,B00010000,B01000000,B00100000,B01101100,B00001000,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111010,B11110000,B00000011,B11110111,B00000000,B00001000,B00100000,B10000000,B00100000,B01101100,B00001000,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11101110,B00000000,B00010000,B01000001,B00000000,B00100011,B11111111,B00001000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11011110,B00000000,B00100000,B10000010,B00000000,B00111111,B11000111,B10001000,
|
|
||||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10111111,B00000000,B00100000,B10000010,B00000000,B00101111,B11000111,B11001000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10000111,B00000000,B00010000,B01000001,B00000000,B00110111,B10000111,B11011000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000011,B11111111,B00000000,B00001000,B00100000,B10000000,B00110111,B00000011,B11011000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B11111100,B00000000,B00000000,B00000000,B00000000,B00111000,B00000011,B00111000,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B01111000,B00000000,B11111111,B11111111,B11000000,B00111110,B00000010,B11111000,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00110000,B00000000,B11111111,B11111111,B11000000,B00111111,B11111111,B11111000
|
|
||||||
};
|
|
||||||
const unsigned char status_screen3_bmp[] PROGMEM = {
|
|
||||||
B00111101,B11110000,B00000010,B00111000,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111000,
|
|
||||||
B01000100,B10001000,B00000110,B01000101,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111110,B00000000,B11111000,
|
|
||||||
B10000000,B10001000,B00000010,B01000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111001,B11110000,B00111000,
|
|
||||||
B10000000,B11110000,B00000010,B01000100,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110001,B11100000,B00011000,
|
|
||||||
B10000000,B10100011,B11110010,B01000100,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110001,B11100000,B00011000,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100001,B11100001,B11101000,
|
|
||||||
B10000000,B10010000,B00000010,B01000100,B00010000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B11110011,B11101000,
|
|
||||||
B01000100,B10001000,B00000010,B01000101,B00010000,B00011111,B11100000,B00000001,B11111110,B00000000,B00001000,B00100000,B10000000,B00100000,B01111111,B11101000,
|
|
||||||
B00111001,B11001100,B00000111,B00111001,B11100000,B00111110,B11110000,B00000011,B11001111,B00000000,B00000100,B00010000,B01000000,B00100000,B01110111,B11101000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111100,B11110000,B00000011,B10110111,B00000000,B00000100,B00010000,B01000000,B00101000,B11101110,B00101000,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00111010,B11110000,B00000011,B11110111,B00000000,B00001000,B00100000,B10000000,B00101111,B11011100,B00001000,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11101110,B00000000,B00010000,B01000001,B00000000,B00101111,B11111100,B00001000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00011110,B11100000,B00000001,B11011110,B00000000,B00100000,B10000010,B00000000,B00101111,B10011110,B00001000,
|
|
||||||
B00000000,B00011000,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10111111,B00000000,B00100000,B10000010,B00000000,B00101111,B00001111,B00001000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111110,B11110000,B00000011,B10000111,B00000000,B00010000,B01000001,B00000000,B00110000,B00001111,B00011000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00111111,B11110000,B00000011,B11111111,B00000000,B00001000,B00100000,B10000000,B00110000,B00001111,B00011000,
|
|
||||||
B00000000,B00000100,B10001001,B00010000,B00000000,B00001111,B11000000,B00000000,B11111100,B00000000,B00000000,B00000000,B00000000,B00111000,B00011111,B00111000,
|
|
||||||
B00000000,B01000100,B10001001,B00010000,B00000000,B00000111,B10000000,B00000000,B01111000,B00000000,B11111111,B11111111,B11000000,B00111110,B00000000,B11111000,
|
|
||||||
B00000000,B00111000,B01110000,B11100000,B00000000,B00000011,B00000000,B00000000,B00110000,B00000000,B11111111,B11111111,B11000000,B00111111,B11111111,B11111000
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif // HOTENDS >= 2
|
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,55 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Custom Boot Screen bitmap
|
|
||||||
*
|
|
||||||
* Place this file in the root with your configuration files
|
|
||||||
* and enable SHOW_CUSTOM_BOOTSCREEN in Configuration.h.
|
|
||||||
*
|
|
||||||
* Use the Marlin Bitmap Converter to make your own:
|
|
||||||
* http://marlinfw.org/tools/u8glib/converter.html
|
|
||||||
*/
|
|
||||||
|
|
||||||
#define CUSTOM_BOOTSCREEN_TIMEOUT 1000
|
|
||||||
#define CUSTOM_BOOTSCREEN_BMPWIDTH 128
|
|
||||||
|
|
||||||
const unsigned char custom_start_bmp[] PROGMEM = {
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B11111100,B00000000,B00000000,
|
|
||||||
B00001111,B11110000,B00000000,B00000000,B00000000,B00000000,B00000111,B11100000,B00000000,B00000000,B00000000,B00000000,B00000001,B10000110,B00011111,B11000000,
|
|
||||||
B00011000,B01110000,B00000000,B00000000,B00000000,B00000000,B00000000,B01100000,B00111100,B00001100,B00000000,B00000000,B00000001,B10000011,B00001100,B01100000,
|
|
||||||
B00010000,B00110000,B00000000,B00000000,B00000000,B00000000,B00000000,B01100000,B00111100,B00001100,B00000000,B00000000,B00000001,B10000011,B00001100,B00110000,
|
|
||||||
B00110000,B00110000,B00000000,B00000000,B00000000,B00000000,B00000000,B01100000,B00000000,B00001100,B00000000,B00000000,B00000000,B00000011,B00001100,B00011000,
|
|
||||||
B00110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B01100000,B00000000,B00111111,B00001111,B00111100,B00000000,B00000011,B00001100,B00001100,
|
|
||||||
B01100000,B00000001,B11011111,B00001111,B11100000,B11111110,B00000000,B01100000,B00011100,B00011100,B00000110,B00011000,B00000000,B00000110,B00001100,B00001100,
|
|
||||||
B01100000,B00000000,B11110011,B00011000,B00110001,B10000011,B00000000,B01100000,B00001100,B00001100,B00000011,B00011000,B00000000,B00011110,B00001100,B00001100,
|
|
||||||
B01100000,B00000000,B11100000,B00110000,B00111001,B10000011,B00000000,B01100000,B00001100,B00001100,B00000011,B00110000,B00000000,B00000011,B00001100,B00001100,
|
|
||||||
B01100000,B00000000,B11000000,B00110000,B00111000,B00001111,B00000000,B01100000,B00001100,B00001100,B00000011,B00110000,B00000000,B00000001,B10001100,B00001100,
|
|
||||||
B01100000,B00000000,B11000000,B00111111,B11111000,B11111011,B00000000,B01100000,B00001100,B00001100,B00000011,B00110000,B00000000,B00000001,B10001100,B00001100,
|
|
||||||
B01100000,B00110000,B11000000,B00110000,B00000001,B10000011,B00000000,B01100000,B00001100,B00001100,B00000001,B11110000,B00000001,B10000001,B10001100,B00001100,
|
|
||||||
B01100000,B00110000,B11000000,B00110000,B00000001,B10000011,B00000000,B01100000,B00001100,B00001100,B00000000,B11100000,B00000001,B10000001,B10001100,B00011000,
|
|
||||||
B00110000,B00110000,B11000000,B00011000,B00110001,B10000011,B00000000,B01100000,B00001100,B00001100,B01000000,B11100000,B00000001,B10000011,B10001100,B00110000,
|
|
||||||
B00011000,B01100000,B11000000,B00001100,B01100001,B10000111,B11000000,B11100000,B00011100,B00001100,B11000000,B01100000,B00000000,B11000011,B00001100,B01100000,
|
|
||||||
B00001111,B11000011,B11110000,B00000111,B11000000,B11111111,B11000111,B11111100,B01111111,B00000111,B10000001,B11000000,B00000000,B01111110,B00011111,B11000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B00000000,B00000000,B00000000,B00000000,B00000000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B00000000,B00000000,B00000000,B00000000,B00000000
|
|
||||||
};
|
|
||||||
@@ -1,80 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Custom Status Screen bitmap
|
|
||||||
*
|
|
||||||
* Place this file in the root with your configuration files
|
|
||||||
* and enable CUSTOM_STATUS_SCREEN_IMAGE in Configuration.h.
|
|
||||||
*
|
|
||||||
* Use the Marlin Bitmap Converter to make your own:
|
|
||||||
* http://marlinfw.org/tools/u8glib/converter.html
|
|
||||||
*/
|
|
||||||
|
|
||||||
#define STATUS_SCREENWIDTH 128
|
|
||||||
#define STATUS_SCREEN_HOTEND_TEXT_X(E) 38
|
|
||||||
#define STATUS_SCREEN_BED_TEXT_X 73
|
|
||||||
|
|
||||||
//============================================
|
|
||||||
|
|
||||||
const unsigned char status_screen0_bmp[] PROGMEM = {
|
|
||||||
B00000111,B11001111,B10000000,B00110001,B11100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B00001111,B11001111,B11000000,B01110011,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00001100,B00001100,B01000000,B01110011,B00110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110000,B11111100,B00110000,
|
|
||||||
B00001100,B00001100,B11000000,B00110011,B00110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B11111100,B00010000,
|
|
||||||
B00001100,B00001111,B11001111,B00110011,B00110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B00001100,B00001101,B10001111,B00110011,B00110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B00001100,B00001100,B11000000,B00110011,B00110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101100,B00000000,B11010000,
|
|
||||||
B00001111,B11001100,B11000000,B00110011,B11110000,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00101110,B00110001,B11010000,
|
|
||||||
B00000111,B11001100,B11000000,B00110001,B11100000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00101111,B01111011,B11010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00101111,B01111011,B11010000,
|
|
||||||
B00000001,B10000011,B00110000,B00000011,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00101110,B00110001,B11010000,
|
|
||||||
B00000001,B10000011,B00110010,B00000011,B00000000,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00101100,B00000000,B11010000,
|
|
||||||
B00000001,B11000111,B00000010,B11100000,B00000000,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B00000001,B11000111,B00110011,B11110011,B00000000,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B00000001,B11101111,B00110011,B00110011,B00000000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00100000,B11111100,B00010000,
|
|
||||||
B00000001,B10111011,B00110011,B00110011,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00110000,B11111100,B00110000,
|
|
||||||
B00000001,B10010011,B00110011,B00110011,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000001,B10010011,B00110011,B00110011,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000001,B10000011,B00110011,B00110011,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00000000,B00000000,B00000000
|
|
||||||
};
|
|
||||||
const unsigned char status_screen1_bmp[] PROGMEM = {
|
|
||||||
B00000111,B11001111,B10000000,B00110001,B11100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B00001111,B11001111,B11000000,B01110011,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00001100,B00001100,B01000000,B01110011,B00110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110011,B10000111,B00110000,
|
|
||||||
B00001100,B00001100,B11000000,B00110011,B00110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100111,B10000111,B10010000,
|
|
||||||
B00001100,B00001111,B11001111,B00110011,B00110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B00001100,B00001101,B10001111,B00110011,B00110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B00001100,B00001100,B11000000,B00110011,B00110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B00000011,B11010000,
|
|
||||||
B00001111,B11001100,B11000000,B00110011,B11110000,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B00000111,B11001100,B11000000,B00110001,B11100000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B00000001,B10000011,B00110000,B00000011,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B00000001,B10000011,B00110010,B00000011,B00000000,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00101111,B00000011,B11010000,
|
|
||||||
B00000001,B11000111,B00000010,B11100000,B00000000,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B00000001,B11000111,B00110011,B11110011,B00000000,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B00000001,B11101111,B00110011,B00110011,B00000000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00100111,B10000111,B10010000,
|
|
||||||
B00000001,B10111011,B00110011,B00110011,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00110011,B10000111,B00110000,
|
|
||||||
B00000001,B10010011,B00110011,B00110011,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000001,B10010011,B00110011,B00110011,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000001,B10000011,B00110011,B00110011,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00000000,B00000000,B00000000
|
|
||||||
};
|
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,18 +0,0 @@
|
|||||||
# Creality Ender Support
|
|
||||||
|
|
||||||
This branch is a reverse-engineered version based on the unpublished firmware from Creality. It is **not** the authoritative source, but has been carefully re-built by looking at their firmware and inferring the base version and configuration they used. The basis is the firmware version from "Jul 31 2017 10:16:30". It is based on Marlin 1.0.1, because
|
|
||||||
|
|
||||||
* 1.0.0 had very different serial output in `setup()` and overall code structure.
|
|
||||||
* 1.0.2 changed the `VERSION_STRING` to include a leading space, and `lcd_init` uses `SET_INPUT` instead of `pinMode`.
|
|
||||||
|
|
||||||
Configurations were found by seeing what code was compiled into the firmware, and constants used there.
|
|
||||||
|
|
||||||
For U8Glib, at least version 1.14 and at most 1.17 is used, because
|
|
||||||
|
|
||||||
* 1.12 didn't have the extra speed argument to u8g_InitCom.
|
|
||||||
* 1.13 didn't have the soft reset instruction for UC1701 initialization.
|
|
||||||
* 1.18 has a new directory structure.
|
|
||||||
|
|
||||||
## Bitmaps
|
|
||||||
|
|
||||||
The bootscreen and custom status screens come from Creality's firmware.
|
|
||||||
@@ -1,96 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Custom Boot Screen bitmap
|
|
||||||
*
|
|
||||||
* Place this file in the root with your configuration files
|
|
||||||
* and enable SHOW_CUSTOM_BOOTSCREEN in Configuration.h.
|
|
||||||
*
|
|
||||||
* Use the Marlin Bitmap Converter to make your own:
|
|
||||||
* http://marlinfw.org/tools/u8glib/converter.html
|
|
||||||
*/
|
|
||||||
|
|
||||||
#define CUSTOM_BOOTSCREEN_TIMEOUT 1000
|
|
||||||
#define CUSTOM_BOOTSCREEN_BMPWIDTH 81
|
|
||||||
#define CUSTOM_BOOTSCREEN_INVERTED
|
|
||||||
|
|
||||||
const unsigned char custom_start_bmp[] PROGMEM = {
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11101111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11101111,B11101111,B11111111,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11100111,B11011111,B11111111,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11100111,B11011111,B11111111,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11100011,B11011111,B11111111,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11110011,B11001111,B11111111,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11100001,B11100001,B11001111,B11111111,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111110,B01111000,B00000000,B00000000,B00000011,B11011101,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111110,B11111111,B10000000,B01111110,B00000000,B00000001,B11101110,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111110,B01111101,B11001111,B11111100,B00000000,B00000000,B11110111,B01111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B10001110,B00000110,B00000000,B00000000,B00000000,B01111011,B10111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11000000,B00000000,B00000000,B00000000,B00000000,B01111101,B11011111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111100,B00000001,B11111110,B00000000,B00000000,B00111110,B11100111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111100,B00000000,B00000011,B00011111,B01110011,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111000,B00000000,B00000001,B10001111,B10000001,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11100000,B00000000,B00000000,B10000011,B11111001,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B00000000,B11111100,B00000000,B00000000,B11110000,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11100000,B00001111,B11111111,B11000000,B00000000,B00000000,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111110,B00000011,B11111111,B11111111,B11000000,B00000000,B00000000,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111001,B00000000,B00000000,B00000000,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111100,B00000000,B00000111,B11000000,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B00000000,B00000111,B11100000,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11100000,B00000111,B11110001,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11111100,B00000111,B11111001,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B00000011,B11111001,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B10000011,B11111001,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11000011,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11100001,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11110000,B10111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11111011,B11111000,B00111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11111001,B11111000,B00111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B01111110,B11110000,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B10001110,B00000011,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11100000,B00011111,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B01111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B00000000,B00000000,B01111111,B11111111,B11111111,B11111000,B01111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B10000000,B00000000,B01111111,B11111111,B11111111,B11100000,B01111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11000011,B11111100,B11111111,B11111111,B11111111,B11111000,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11000011,B11111100,B11111111,B11111111,B11111111,B11111000,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B10000111,B11111101,B11111111,B11111111,B11111111,B11110001,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B10000111,B11111111,B11111111,B11111111,B11111111,B11110001,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B00001111,B11100111,B11110011,B00001111,B11111100,B00100011,B11111100,B00111111,B11111111,B11111111,
|
|
||||||
B11111111,B00001111,B11101111,B10000000,B00000111,B11110000,B00000011,B11110000,B00011110,B00000000,B01111111,
|
|
||||||
B11111110,B00011111,B11001111,B10000001,B10000111,B11000111,B10000111,B11000111,B00001100,B00000000,B01111111,
|
|
||||||
B11111110,B00000000,B00011111,B11000111,B11000111,B10001111,B11000111,B10011111,B00001111,B00001100,B11111111,
|
|
||||||
B11111110,B00000000,B00011111,B10000111,B10001111,B00011111,B10001111,B00011111,B00001111,B00011111,B11111111,
|
|
||||||
B11111100,B00111111,B10011111,B10001111,B10001111,B00011111,B10001110,B00000000,B00011110,B00111111,B11111111,
|
|
||||||
B11111100,B01111111,B00111111,B00001111,B00011110,B00111111,B00011110,B00111111,B11111110,B00111111,B11111111,
|
|
||||||
B11111000,B01111111,B11111111,B00011111,B00011100,B00111111,B00011100,B01111111,B11111100,B01111111,B11111111,
|
|
||||||
B11111000,B11111111,B11111111,B00011110,B00011100,B01111110,B00011100,B01111111,B11111100,B01111111,B11111111,
|
|
||||||
B11110000,B11111111,B11001110,B00111110,B00111100,B01111110,B00111100,B01111111,B10111000,B11111111,B11111111,
|
|
||||||
B11110000,B11111111,B10011110,B00111100,B00111000,B01111100,B00111000,B01111110,B01111000,B11111111,B11111111,
|
|
||||||
B11100001,B11111111,B00111100,B01111100,B01111000,B01111100,B01111000,B00111100,B11110001,B11111111,B11111111,
|
|
||||||
B11100001,B11111000,B00111000,B01111000,B01111000,B00010000,B00011000,B00000001,B11110001,B11111111,B11111111,
|
|
||||||
B00000000,B00000000,B01100000,B00100000,B00111100,B00000000,B01111100,B00000111,B10000000,B01111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111110,B00011111,B11111110,B00011111,B11111111,B11111111,B11111111
|
|
||||||
};
|
|
||||||
@@ -1,130 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Custom Status Screen bitmap
|
|
||||||
*
|
|
||||||
* Place this file in the root with your configuration files
|
|
||||||
* and enable CUSTOM_STATUS_SCREEN_IMAGE in Configuration.h.
|
|
||||||
*
|
|
||||||
* Use the Marlin Bitmap Converter to make your own:
|
|
||||||
* http://marlinfw.org/tools/u8glib/converter.html
|
|
||||||
*/
|
|
||||||
|
|
||||||
#define STATUS_SCREENWIDTH 128
|
|
||||||
#define STATUS_SCREEN_HOTEND_TEXT_X(E) (38 + (E) * 20)
|
|
||||||
#define STATUS_SCREEN_BED_TEXT_X (HOTENDS > 1 ? 81 : 73)
|
|
||||||
#define STATUS_SCREEN_FAN_TEXT_X 103
|
|
||||||
|
|
||||||
//============================================
|
|
||||||
|
|
||||||
#if HOTENDS < 2
|
|
||||||
|
|
||||||
const unsigned char status_screen0_bmp[] PROGMEM = {
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110000,B11111100,B00110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B11111100,B00010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B00000000,B00000000,B00000110,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101100,B00000000,B11010000,
|
|
||||||
B11111110,B00000000,B00000010,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00101110,B00110001,B11010000,
|
|
||||||
B01000010,B00000000,B00000010,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00101111,B01111011,B11010000,
|
|
||||||
B01001000,B00000000,B00000010,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00101111,B01111011,B11010000,
|
|
||||||
B01001000,B11011100,B00111110,B00111100,B11101110,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00101110,B00110001,B11010000,
|
|
||||||
B01111000,B01100010,B01000010,B01000010,B00110010,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00101100,B00000000,B11010000,
|
|
||||||
B01001000,B01000010,B01000010,B01000010,B00100000,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B01001000,B01000010,B01000010,B01111110,B00100000,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B01000000,B01000010,B01000010,B01000000,B00100000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00100000,B11111100,B00010000,
|
|
||||||
B01000010,B01000010,B01000110,B01000010,B00100000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00110000,B11111100,B00110000,
|
|
||||||
B11111110,B11100111,B00111011,B00111100,B11111000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00000000,B00000000,B00000000
|
|
||||||
};
|
|
||||||
const unsigned char status_screen1_bmp[] PROGMEM = {
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110011,B10000111,B00110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100111,B10000111,B10010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B00000000,B00000000,B00000110,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B00000011,B11010000,
|
|
||||||
B11111110,B00000000,B00000010,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B01000010,B00000000,B00000010,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B01001000,B00000000,B00000010,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B01001000,B11011100,B00111110,B00111100,B11101110,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B01111000,B01100010,B01000010,B01000010,B00110010,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00101111,B00000011,B11010000,
|
|
||||||
B01001000,B01000010,B01000010,B01000010,B00100000,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B01001000,B01000010,B01000010,B01111110,B00100000,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B01000000,B01000010,B01000010,B01000000,B00100000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00100111,B10000111,B10010000,
|
|
||||||
B01000010,B01000010,B01000110,B01000010,B00100000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00110011,B10000111,B00110000,
|
|
||||||
B11111110,B11100111,B00111011,B00111100,B11111000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00000000,B00000000,B00000000
|
|
||||||
};
|
|
||||||
|
|
||||||
#else // HOTENDS >= 2
|
|
||||||
|
|
||||||
const unsigned char status_screen0_bmp[] PROGMEM = {
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110000,B11111100,B00110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B11111100,B00010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B00000000,B00000000,B00000110,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101100,B00000000,B11010000,
|
|
||||||
B11111110,B00000000,B00000010,B00000000,B00000000,B00011111,B11100000,B00000001,B11111110,B00000000,B00001000,B00100000,B10000000,B00101110,B00110001,B11010000,
|
|
||||||
B01000010,B00000000,B00000010,B00000000,B00000000,B00111110,B11110000,B00000011,B11001111,B00000000,B00000100,B00010000,B01000000,B00101111,B01111011,B11010000,
|
|
||||||
B01001000,B00000000,B00000010,B00000000,B00000000,B00111100,B11110000,B00000011,B10110111,B00000000,B00000100,B00010000,B01000000,B00101111,B01111011,B11010000,
|
|
||||||
B01001000,B11011100,B00111110,B00111100,B11101110,B00111010,B11110000,B00000011,B11110111,B00000000,B00001000,B00100000,B10000000,B00101110,B00110001,B11010000,
|
|
||||||
B01111000,B01100010,B01000010,B01000010,B00110010,B00011110,B11100000,B00000001,B11101110,B00000000,B00010000,B01000001,B00000000,B00101100,B00000000,B11010000,
|
|
||||||
B01001000,B01000010,B01000010,B01000010,B00100000,B00011110,B11100000,B00000001,B11011110,B00000000,B00100000,B10000010,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B01001000,B01000010,B01000010,B01111110,B00100000,B00111110,B11110000,B00000011,B10111111,B00000000,B00100000,B10000010,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B01000000,B01000010,B01000010,B01000000,B00100000,B00111110,B11110000,B00000011,B10000111,B00000000,B00010000,B01000001,B00000000,B00100000,B11111100,B00010000,
|
|
||||||
B01000010,B01000010,B01000110,B01000010,B00100000,B00111111,B11110000,B00000011,B11111111,B00000000,B00001000,B00100000,B10000000,B00110000,B11111100,B00110000,
|
|
||||||
B11111110,B11100111,B00111011,B00111100,B11111000,B00001111,B11000000,B00000000,B11111100,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B10000000,B00000000,B01111000,B00000000,B11111111,B11111111,B11000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000011,B00000000,B00000000,B00110000,B00000000,B11111111,B11111111,B11000000,B00000000,B00000000,B00000000
|
|
||||||
};
|
|
||||||
const unsigned char status_screen1_bmp[] PROGMEM = {
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110011,B10000111,B00110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100111,B10000111,B10010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B00000000,B00000000,B00000110,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B00000011,B11010000,
|
|
||||||
B11111110,B00000000,B00000010,B00000000,B00000000,B00011111,B11100000,B00000001,B11111110,B00000000,B00001000,B00100000,B10000000,B00100000,B00110000,B00010000,
|
|
||||||
B01000010,B00000000,B00000010,B00000000,B00000000,B00111110,B11110000,B00000011,B11001111,B00000000,B00000100,B00010000,B01000000,B00100000,B01111000,B00010000,
|
|
||||||
B01001000,B00000000,B00000010,B00000000,B00000000,B00111100,B11110000,B00000011,B10110111,B00000000,B00000100,B00010000,B01000000,B00100000,B01111000,B00010000,
|
|
||||||
B01001000,B11011100,B00111110,B00111100,B11101110,B00111010,B11110000,B00000011,B11110111,B00000000,B00001000,B00100000,B10000000,B00100000,B00110000,B00010000,
|
|
||||||
B01111000,B01100010,B01000010,B01000010,B00110010,B00011110,B11100000,B00000001,B11101110,B00000000,B00010000,B01000001,B00000000,B00101111,B00000011,B11010000,
|
|
||||||
B01001000,B01000010,B01000010,B01000010,B00100000,B00011110,B11100000,B00000001,B11011110,B00000000,B00100000,B10000010,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B01001000,B01000010,B01000010,B01111110,B00100000,B00111110,B11110000,B00000011,B10111111,B00000000,B00100000,B10000010,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B01000000,B01000010,B01000010,B01000000,B00100000,B00111110,B11110000,B00000011,B10000111,B00000000,B00010000,B01000001,B00000000,B00100111,B10000111,B10010000,
|
|
||||||
B01000010,B01000010,B01000110,B01000010,B00100000,B00111111,B11110000,B00000011,B11111111,B00000000,B00001000,B00100000,B10000000,B00110011,B10000111,B00110000,
|
|
||||||
B11111110,B11100111,B00111011,B00111100,B11111000,B00001111,B11000000,B00000000,B11111100,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B10000000,B00000000,B01111000,B00000000,B11111111,B11111111,B11000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000011,B00000000,B00000000,B00110000,B00000000,B11111111,B11111111,B11000000,B00000000,B00000000,B00000000
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif // HOTENDS >= 2
|
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,18 +0,0 @@
|
|||||||
# Creality Ender Support
|
|
||||||
|
|
||||||
This branch is a reverse-engineered version based on the unpublished firmware from Creality. It is **not** the authoritative source, but has been carefully re-built by looking at their firmware and inferring the base version and configuration they used. The basis is the firmware version from "Jul 31 2017 10:16:30". It is based on Marlin 1.0.1, because
|
|
||||||
|
|
||||||
* 1.0.0 had very different serial output in `setup()` and overall code structure.
|
|
||||||
* 1.0.2 changed the `VERSION_STRING` to include a leading space, and `lcd_init` uses `SET_INPUT` instead of `pinMode`.
|
|
||||||
|
|
||||||
Configurations were found by seeing what code was compiled into the firmware, and constants used there.
|
|
||||||
|
|
||||||
For U8Glib, at least version 1.14 and at most 1.17 is used, because
|
|
||||||
|
|
||||||
* 1.12 didn't have the extra speed argument to u8g_InitCom.
|
|
||||||
* 1.13 didn't have the soft reset instruction for UC1701 initialization.
|
|
||||||
* 1.18 has a new directory structure.
|
|
||||||
|
|
||||||
## Bitmaps
|
|
||||||
|
|
||||||
The bootscreen and custom status screens come from Creality's firmware.
|
|
||||||
@@ -1,96 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Custom Boot Screen bitmap
|
|
||||||
*
|
|
||||||
* Place this file in the root with your configuration files
|
|
||||||
* and enable SHOW_CUSTOM_BOOTSCREEN in Configuration.h.
|
|
||||||
*
|
|
||||||
* Use the Marlin Bitmap Converter to make your own:
|
|
||||||
* http://marlinfw.org/tools/u8glib/converter.html
|
|
||||||
*/
|
|
||||||
|
|
||||||
#define CUSTOM_BOOTSCREEN_TIMEOUT 1000
|
|
||||||
#define CUSTOM_BOOTSCREEN_BMPWIDTH 81
|
|
||||||
#define CUSTOM_BOOTSCREEN_INVERTED
|
|
||||||
|
|
||||||
const unsigned char custom_start_bmp[] PROGMEM = {
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11101111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11101111,B11101111,B11111111,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11100111,B11011111,B11111111,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11100111,B11011111,B11111111,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11100011,B11011111,B11111111,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11110011,B11001111,B11111111,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11100001,B11100001,B11001111,B11111111,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111110,B01111000,B00000000,B00000000,B00000011,B11011101,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111110,B11111111,B10000000,B01111110,B00000000,B00000001,B11101110,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111110,B01111101,B11001111,B11111100,B00000000,B00000000,B11110111,B01111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B10001110,B00000110,B00000000,B00000000,B00000000,B01111011,B10111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11000000,B00000000,B00000000,B00000000,B00000000,B01111101,B11011111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111100,B00000001,B11111110,B00000000,B00000000,B00111110,B11100111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111100,B00000000,B00000011,B00011111,B01110011,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111000,B00000000,B00000001,B10001111,B10000001,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11100000,B00000000,B00000000,B10000011,B11111001,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B00000000,B11111100,B00000000,B00000000,B11110000,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11100000,B00001111,B11111111,B11000000,B00000000,B00000000,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111110,B00000011,B11111111,B11111111,B11000000,B00000000,B00000000,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111001,B00000000,B00000000,B00000000,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111100,B00000000,B00000111,B11000000,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B00000000,B00000111,B11100000,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11100000,B00000111,B11110001,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11111100,B00000111,B11111001,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B00000011,B11111001,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B10000011,B11111001,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11000011,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11100001,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11110000,B10111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11111011,B11111000,B00111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11111001,B11111000,B00111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B01111110,B11110000,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B10001110,B00000011,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11100000,B00011111,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B01111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B00000000,B00000000,B01111111,B11111111,B11111111,B11111000,B01111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B10000000,B00000000,B01111111,B11111111,B11111111,B11100000,B01111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11000011,B11111100,B11111111,B11111111,B11111111,B11111000,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B11000011,B11111100,B11111111,B11111111,B11111111,B11111000,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B10000111,B11111101,B11111111,B11111111,B11111111,B11110001,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B10000111,B11111111,B11111111,B11111111,B11111111,B11110001,B11111111,B11111111,B11111111,B11111111,
|
|
||||||
B11111111,B00001111,B11100111,B11110011,B00001111,B11111100,B00100011,B11111100,B00111111,B11111111,B11111111,
|
|
||||||
B11111111,B00001111,B11101111,B10000000,B00000111,B11110000,B00000011,B11110000,B00011110,B00000000,B01111111,
|
|
||||||
B11111110,B00011111,B11001111,B10000001,B10000111,B11000111,B10000111,B11000111,B00001100,B00000000,B01111111,
|
|
||||||
B11111110,B00000000,B00011111,B11000111,B11000111,B10001111,B11000111,B10011111,B00001111,B00001100,B11111111,
|
|
||||||
B11111110,B00000000,B00011111,B10000111,B10001111,B00011111,B10001111,B00011111,B00001111,B00011111,B11111111,
|
|
||||||
B11111100,B00111111,B10011111,B10001111,B10001111,B00011111,B10001110,B00000000,B00011110,B00111111,B11111111,
|
|
||||||
B11111100,B01111111,B00111111,B00001111,B00011110,B00111111,B00011110,B00111111,B11111110,B00111111,B11111111,
|
|
||||||
B11111000,B01111111,B11111111,B00011111,B00011100,B00111111,B00011100,B01111111,B11111100,B01111111,B11111111,
|
|
||||||
B11111000,B11111111,B11111111,B00011110,B00011100,B01111110,B00011100,B01111111,B11111100,B01111111,B11111111,
|
|
||||||
B11110000,B11111111,B11001110,B00111110,B00111100,B01111110,B00111100,B01111111,B10111000,B11111111,B11111111,
|
|
||||||
B11110000,B11111111,B10011110,B00111100,B00111000,B01111100,B00111000,B01111110,B01111000,B11111111,B11111111,
|
|
||||||
B11100001,B11111111,B00111100,B01111100,B01111000,B01111100,B01111000,B00111100,B11110001,B11111111,B11111111,
|
|
||||||
B11100001,B11111000,B00111000,B01111000,B01111000,B00010000,B00011000,B00000001,B11110001,B11111111,B11111111,
|
|
||||||
B00000000,B00000000,B01100000,B00100000,B00111100,B00000000,B01111100,B00000111,B10000000,B01111111,B11111111,
|
|
||||||
B11111111,B11111111,B11111111,B11111111,B11111110,B00011111,B11111110,B00011111,B11111111,B11111111,B11111111
|
|
||||||
};
|
|
||||||
@@ -1,130 +0,0 @@
|
|||||||
/**
|
|
||||||
* Marlin 3D Printer Firmware
|
|
||||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
|
||||||
*
|
|
||||||
* Based on Sprinter and grbl.
|
|
||||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Custom Status Screen bitmap
|
|
||||||
*
|
|
||||||
* Place this file in the root with your configuration files
|
|
||||||
* and enable CUSTOM_STATUS_SCREEN_IMAGE in Configuration.h.
|
|
||||||
*
|
|
||||||
* Use the Marlin Bitmap Converter to make your own:
|
|
||||||
* http://marlinfw.org/tools/u8glib/converter.html
|
|
||||||
*/
|
|
||||||
|
|
||||||
#define STATUS_SCREENWIDTH 128
|
|
||||||
#define STATUS_SCREEN_HOTEND_TEXT_X(E) (38 + (E) * 20)
|
|
||||||
#define STATUS_SCREEN_BED_TEXT_X (HOTENDS > 1 ? 81 : 73)
|
|
||||||
#define STATUS_SCREEN_FAN_TEXT_X 103
|
|
||||||
|
|
||||||
//============================================
|
|
||||||
|
|
||||||
#if HOTENDS < 2
|
|
||||||
|
|
||||||
const unsigned char status_screen0_bmp[] PROGMEM = {
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110000,B11111100,B00110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B11111100,B00010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101100,B00000000,B11010000,
|
|
||||||
B11111000,B00000001,B10000000,B00000000,B00001100,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00101110,B00110001,B11010000,
|
|
||||||
B01001000,B00000000,B10000000,B00000000,B00010010,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00101111,B01111011,B11010000,
|
|
||||||
B01000011,B11000011,B10001100,B11010000,B00000010,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00101111,B01111011,B11010000,
|
|
||||||
B01110001,B00100100,B10010010,B01100111,B11001100,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00101110,B00110001,B11010000,
|
|
||||||
B01000001,B00100100,B10011110,B01000000,B00000010,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00101100,B00000000,B11010000,
|
|
||||||
B01001001,B00100100,B10010000,B01000000,B00010010,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B11111011,B10110011,B11001110,B11100000,B00001100,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00100000,B11111100,B00010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00110000,B11111100,B00110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00000000,B00000000,B00000000
|
|
||||||
};
|
|
||||||
const unsigned char status_screen1_bmp[] PROGMEM = {
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110011,B10000111,B00110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100111,B10000111,B10010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B00000011,B11010000,
|
|
||||||
B11111000,B00000001,B10000000,B00000000,B00001100,B00011111,B11100000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B01001000,B00000000,B10000000,B00000000,B00010010,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B01000011,B11000011,B10001100,B11010000,B00000010,B00111111,B11110000,B00000000,B00000000,B00000100,B00010000,B01000000,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B01110001,B00100100,B10010010,B01100111,B11001100,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B01000001,B00100100,B10011110,B01000000,B00000010,B00011111,B11100000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00101111,B00000011,B11010000,
|
|
||||||
B01001001,B00100100,B10010000,B01000000,B00010010,B00011111,B11100000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B11111011,B10110011,B11001110,B11100000,B00001100,B00111111,B11110000,B00000000,B00000000,B00100000,B10000010,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00010000,B01000001,B00000000,B00000000,B00100111,B10000111,B10010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00001000,B00100000,B10000000,B00000000,B00110011,B10000111,B00110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B10000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000011,B00000000,B00000000,B00000000,B11111111,B11111111,B11000000,B00000000,B00000000,B00000000,B00000000
|
|
||||||
};
|
|
||||||
|
|
||||||
#else // HOTENDS >= 2
|
|
||||||
|
|
||||||
const unsigned char status_screen0_bmp[] PROGMEM = {
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110000,B11111100,B00110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B11111100,B00010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101100,B00000000,B11010000,
|
|
||||||
B11111000,B00000001,B10000000,B00000000,B00001100,B00011111,B11100000,B00000001,B11111110,B00000000,B00001000,B00100000,B10000000,B00101110,B00110001,B11010000,
|
|
||||||
B01001000,B00000000,B10000000,B00000000,B00010010,B00111110,B11110000,B00000011,B11001111,B00000000,B00000100,B00010000,B01000000,B00101111,B01111011,B11010000,
|
|
||||||
B01000011,B11000011,B10001100,B11010000,B00000010,B00111100,B11110000,B00000011,B10110111,B00000000,B00000100,B00010000,B01000000,B00101111,B01111011,B11010000,
|
|
||||||
B01110001,B00100100,B10010010,B01100111,B11001100,B00111010,B11110000,B00000011,B11110111,B00000000,B00001000,B00100000,B10000000,B00101110,B00110001,B11010000,
|
|
||||||
B01000001,B00100100,B10011110,B01000000,B00000010,B00011110,B11100000,B00000001,B11101110,B00000000,B00010000,B01000001,B00000000,B00101100,B00000000,B11010000,
|
|
||||||
B01001001,B00100100,B10010000,B01000000,B00010010,B00011110,B11100000,B00000001,B11011110,B00000000,B00100000,B10000010,B00000000,B00100000,B00110000,B00010000,
|
|
||||||
B11111011,B10110011,B11001110,B11100000,B00001100,B00111110,B11110000,B00000011,B10111111,B00000000,B00100000,B10000010,B00000000,B00100000,B01111000,B00010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111110,B11110000,B00000011,B10000111,B00000000,B00010000,B01000001,B00000000,B00100000,B11111100,B00010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11110000,B00000011,B11111111,B00000000,B00001000,B00100000,B10000000,B00110000,B11111100,B00110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00001111,B11000000,B00000000,B11111100,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B10000000,B00000000,B01111000,B00000000,B11111111,B11111111,B11000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000011,B00000000,B00000000,B00110000,B00000000,B11111111,B11111111,B11000000,B00000000,B00000000,B00000000
|
|
||||||
};
|
|
||||||
const unsigned char status_screen1_bmp[] PROGMEM = {
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00110011,B10000111,B00110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100111,B10000111,B10010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00101111,B00000011,B11010000,
|
|
||||||
B11111000,B00000001,B10000000,B00000000,B00001100,B00011111,B11100000,B00000001,B11111110,B00000000,B00001000,B00100000,B10000000,B00100000,B00110000,B00010000,
|
|
||||||
B01001000,B00000000,B10000000,B00000000,B00010010,B00111110,B11110000,B00000011,B11001111,B00000000,B00000100,B00010000,B01000000,B00100000,B01111000,B00010000,
|
|
||||||
B01000011,B11000011,B10001100,B11010000,B00000010,B00111100,B11110000,B00000011,B10110111,B00000000,B00000100,B00010000,B01000000,B00100000,B01111000,B00010000,
|
|
||||||
B01110001,B00100100,B10010010,B01100111,B11001100,B00111010,B11110000,B00000011,B11110111,B00000000,B00001000,B00100000,B10000000,B00100000,B00110000,B00010000,
|
|
||||||
B01000001,B00100100,B10011110,B01000000,B00000010,B00011110,B11100000,B00000001,B11101110,B00000000,B00010000,B01000001,B00000000,B00101111,B00000011,B11010000,
|
|
||||||
B01001001,B00100100,B10010000,B01000000,B00010010,B00011110,B11100000,B00000001,B11011110,B00000000,B00100000,B10000010,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B11111011,B10110011,B11001110,B11100000,B00001100,B00111110,B11110000,B00000011,B10111111,B00000000,B00100000,B10000010,B00000000,B00101111,B10000111,B11010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111110,B11110000,B00000011,B10000111,B00000000,B00010000,B01000001,B00000000,B00100111,B10000111,B10010000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11110000,B00000011,B11111111,B00000000,B00001000,B00100000,B10000000,B00110011,B10000111,B00110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00001111,B11000000,B00000000,B11111100,B00000000,B00000000,B00000000,B00000000,B00111000,B00000000,B01110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B10000000,B00000000,B01111000,B00000000,B11111111,B11111111,B11000000,B00111111,B11111111,B11110000,
|
|
||||||
B00000000,B00000000,B00000000,B00000000,B00000000,B00000011,B00000000,B00000000,B00110000,B00000000,B11111111,B11111111,B11000000,B00000000,B00000000,B00000000
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif // HOTENDS >= 2
|
|
||||||
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user